Jumps in hi res data
- hi-res mode.
- When the digital low pass filter in the fpga is
enabled. It is used whenever the bandwidth is reduced
- code in fpga that does the spectral computations:
- pseudo noise code generated in the fpga. This data is
then sent directly out of the fpga. It does not pass
thru the "sp" fpga code
- The mock spectrometer consists of a mock box (fpga,
powerpc (ppc) spectrometer) connected to a file server
- The fpga contains the pncode and sp code. It inputs
the data, computes the spectra and outputs to the ppc
(which runs in the mock box.
- spectrometer: this usually refers to the ppc code
running on the mock box (the prun program). It inputs
data from the fpga and sends it to the file server.
- the file server connects to the mock box via gigabit
- pnet runs on a fileserver and controls all of the mock
spectrometers in use.
- prun runs on the power pc in the mock box. It controls
the fpga. Pnet talks to prun.
- psrv runs on the files server. It gets the data from
prun and either verifies the data or writes it to disc.
- normally refers to the power pc portion of the mock
box. The fpga sends data to spectrometer which passes it
on to the file server:
The mock spectrometer has occasionally had bit
flipping errors when running in high resolution mode (when the
bandwidth is reduced from the clock frequency using the digital
filter). The errors show up as single channel spikes in the spectra
with sizes that are a power of 2 larger or smaller than adjacent
The Mock diagnostics show that the problem only
occurs when the fpga computes the spectra. The jumps are not seen
when pure i/o tests are done from the spectrometer to the
The errors are intermittent. They will
remain for a few hours and then disappear.
The rdcomp diagnostic is used to test for the
- A digital noise source is used as the input rather than the
- This noise is routed through the spectrometer and out to
- The results from all spectrometers in group0 or group one are
compare with the first spectrometer.
- A bit by bit compare of the data is done
- The test is normally run so that each spectrometer box
generates 5 MBytes/sec of spectral data.
- The errors that occur tend to be single bit differences.
Examples of when this problem has occurred.
Summary of the problem and how to avoid it:
- Bit flips occur in the fpga when it computes the spectra
- The problem only occurs when the bandwidth is reduced from the
clock frequency (via the digital filters).
- If you run at the full clock rate (say 172.032 Mhz the
problem does not occur).
- This points to the digital filter code as the problem (this
was added by jeff after the spectrometer was delivered)l
- The problem is intermittent. It will occur for a few
hours and then disappear for a long time.
- To insure that the problem does not occur:
- If you do not reduce the bandwidth with the digital fitlers
then the problem will not occur.
- If you reduce the bandwidth with the digital filters:
- reduce the clock frequency to around 163Mhz and the
problem will not occur.
- I suggest: 163.840 Mhz. this will make a number of
fftlengths divisible into 1 second.
- The fpga time report says that the fpga should run at
178Mhz. When the problem is not present, it does run at 178
Mhz without a problem.