Spectral jumps vs A/D and PSHIFT levels

18mar08

PSHIFT fixed, change A/D signal levels
A/D signal levels fixed, change PSHIFT
Table of levels within computing pipeline
Conclusions.

Introduction

    Jumps have been seen in spectral band passes that are spaced by power of two (in channels). These occur when the A/D rms input levels are small (10-30 A/D counts). The power of two spacing points to the butterfly stages of the FFT.
    PSHIFT is a parameter that specifies when the downshifts in the butterfly stages of the FFT should occur. It is 13 bits long with the leftmost bit being the first butterfly stage and the rightmost  bit being the last butterfly stage (for and 8K transform). The rms of a noise like signal should increase as sqrt(N) addititions so every two butterfly stages we should down shift by 1. The initial 12 bit data is placed in the uppermost bits of the 18 bit data registers. We should be able to do 6 shifts without losing

To investigate this problem the following data sets were taken:
For each scan of data taken, the setup was:
The processing steps for each scan were:


PSHIFT fixed, change A/D signal levels  (top)

  Jumps have been seen in spectra spaced by power of two when then A/D rms input levels are small (10-30 A/D counts). To quantify this, data was taken on 13mar08 with the following setup:
    The processing steps were:
    The plots show the spectra for different A/D rms counts (.ps) (.pdf):


A/D signal level fixed, change PSHIFT.

    The A/D input signal level was set to an rms of 15 count. 120 second scans were then taken with:
The plots show the spectra vs pshift value for fixed A/D input level (.ps) (.pdf):



Table of levels within computing pipeline (top)

    The table below shows the computed data levels during the processing pipeline. It takes the output spectrum and the pdev configuration and computes backwards to the A/D sigmas at the input. The computation gets an a/dSigV too small by sqrt(2). The correct value (measured by pnet --sigstat) is shown in a/dSigCorV. The error is between the 1accumP and a/dSigCor. The computations are done for a noise like signal.

Table columns description:


LEVELS WITHIN PDEV COMPUTING PIPELINE
spcOutP

1accumP

fftOutV

BflyMax/Min

fftinpV

dlpfOutV

dlpfInV

a/dSigV

a/dsigCorV

ashift

dshift

jump
WB
pshift/
totshifts



PSHIFT FIXED=0x1ff5, CHANGE A/D LEVEL





6.10e+05 7.52e+03 43.4 693.7/ 43.4 981.0 20.4 20.4 20.4 28.9 0 0 yes
0x1ff5/11
3.06e+05 3.77e+03 30.7 491.4/ 30.7 695.0 14.5 14.5 14.5 20.5 0 0 yes
0x1ff5/11
1.52e+05 1.87e+03 21.6 345.9/ 21.6 489.1 10.2 10.2 10.2 14.4 0 0 yes
0x1ff5/11
7.51e+04 926. 15.2 243.5/ 15.2 344.3 7.2 7.2 7.2 10.1 0 0 yes
0x1ff5/11
1.95e+04 240. 7.8 124.0/ 7.8 175.4 3.7 3.7 3.7 5.2 0 0 yes
0x1ff5/11



A/D LEVEL FIXED rms=15, CHANGE PSHIFT ON RIGHT





1.54e+04 1.90e+03 21.8 349.2/ 21.8 493.8 10.3 10.3 10.3 14.5 0 0 yes
0x1ff5/11
6.17e+04 7.61e+03 43.6 349.0/ 21.8 493.5 10.3 10.3 10.3 14.5 0 0 yes
0x1ff4/10
2.47e+05 3.05e+04 87.3 349.3/ 21.8 493.9 10.3 10.3 10.3 14.6 0 0 yes
0x1ff0/9
9.91e+05 1.22e+05 174.9 349.7/ 30.9 494.6 10.3 10.3 10.3 14.6 0 0 yes
0x1fe0/8
3.97e+06 4.90e+05 350.1 350.1/ 61.9 495.2 10.3 10.3 10.3 14.6 0 0 no
0x1fa0/7
1.59e+07 1.96e+06 700.4 700.4/ 61.9 495.3 10.3 10.3 10.3 14.6 0 0 no
0x1f80/6
1.59e+07 7.85e+06 1400.7 1400.7/ 87.5 495.2 10.3 10.3 10.3 14.6 0 2 no
0x1f00/5



A/D LEVEL FIXED rms=15, CHANGE PSHIFT ON LEFT





6.20e+04 7.64e+03 43.7 699.4/ 43.7 494.6 10.3 10.3 10.3 14.6 0 0 yes
0x0ff5/10
2.48e+05 3.06e+04 87.5 989.6/ 87.5 494.8 10.3 10.3 10.3 14.6 0 0 no
0x07f5/9
9.92e+05 1.22e+05 174.9 699.8/ 174.9 494.8 10.3 10.3 10.3 14.6 0 0 no
0x0af5/8
3.97e+06 4.90e+05 350.1 1400.3/ 350.1 495.1 10.3 10.3 10.3 14.6 0 0 no
0x02f5/7
7.96e+06 7.85e+06 1401.3 3963.4/ 700.6 495.4 10.3 10.3 10.3 14.6 0 3 no
0x0075/5
 

Conclusions:

processing: x101/080313/chklvl.pro, 080317/pshift.pro

<- page up
home_~phil