Pdev diagnostics

05aug10

Terminology
Intro
The diagnostics
Running the tests
Diagnostics results
FPGA test signals. PNcode and noise src (with amplitudes), pncode

Terminology

  • configuration files:
    • Used to configure the registers in the spectrometer/fpga. look in /dump/pdev/files on pdevs1.
  • DLPF:
    • Digital low pass filter. This reduces the bandwidth of the input data.
  • File server:
    • The spectrometer connects to the file server via Ethernet.
  • pfb
    • polyPhase filter bank
  • sp
    • spectral code in fpga. include complex mixing, dlpf,pfb,ff

  • spectrometer
    • The box containing the A/D, fpga, and power pc. connects to file server via Ethernet

Intro.

   The pnet spectrometer control program written by jeff mock contains options to perform diagnostics on the spectrometer boxes and attached file servers. The diagnostics make use of a pncode generator built into the fpga as well as noise and cw tone sources built into the spectrometer fpga. The tests include:

    A debugging method would be:

The tests:


Running the tests:

    Config files to run the tests are on pdevs1.

Some things that can cause the tests to fail:


fpga test signals:

    The fpga contains a pncode generator, noise generator, as well as cw generator.

Pncode generator:

    Used by --ltest,--rtest, --rcomp. It does not pass through the fpga sp code. I'm not sure what the levels are.

Noise source generator:

    The noise source is enabled with the   TS_NOISE_A,TS_NOISE_B keywords. The value determines the strength of the noise source (0 to 65535). The table below shows the mean value of the output spectrum (average channels 2000-6000 in an 8K spectrum) for various settings of the noise generator and spectrometer configuration:

TS_NOISE_X
 value
hr_shft
decimation
Fcnt
time Rec
secs
spc Mean
counts
spcMean
1 spc
65535
12
2
21000
2
2.4e8
11428
65535 12
2
10500
1
1.2e8
11428
65535
11
2
10500
1
3.1e7
2952
32767
12
2
10500
1
3.1e7
2952
32767
11
4
10500
2
1.33e7
1266
32767
11
4
5200
1
6.6e6
1269
32767
-
full bandwidth
21000
1
6.5e7
3095


Diagnostics results:



Dates:


ltest table

   
bsg
pdevNum
maxI/o
PMAX
MAXREAD
DATE
b0s0g0
110
110
40880
327680
100806
b0s1g0
110
110
41072


group 0 both bands
b0s0g0
b0s1g0
b1s0g0
b1s1g0
b2s0g0
b2s1g0
b3s0g0
b3s1g0
b4s0g0
b4s1g0
b5s0g0
b5s1g0
b6s0g0
b6s1g0
110

103

107

118

116

104

113
55
4496
39728
4560
39952
4544
40192
5040
40512
5088
40224
4768
40080
4640
40224

131072
131072
100806
group 1 both bands
b0s0g1
b0s1g1
b1s0g1
b1s1g1
b2s0g1
b2s1g1
b3s0g1
b3s1g1
b4s0g1
b4s1g1
b5s0g1
b5s1g1
b6s0g1
b6s1g1
119

108

122

106

115

117

120
55
same as
above

100806
   
   

rtest table

    Pmax

bsg
devnum
MaxI/O(perfpga)
Mb/Sec
Pmax
maxRead
date
b0s0g0
110
50
512
62390272
100805
group 0 two bands
b0s0g0
b0s1g0
b1s0g0
b1s1g0
b2s0g0
b2s1g0
b3s0g0
b3s1g0
b4s0g0
b4s1g0
b5s0g0
b5s1g0
b6s0g0
b6s1g0
110

103

107

118

116

104

113
35

40

40

40

45

40

40
5248
16896
44544
112768
15360
458752
41344
102528
50816
192384
44928
114304
44928
97536
19857408
12976128
20054016
15990784
786432
589824
589824
655360
7733248
1114112
655360
655360
655360
720896
100805
group 1 two bands
b0s0g1
b0s1g1
b1s0g1
b1s1g1
b2s0g1
b2s1g1
b3s0g1
b3s1g1
b4s0g1
b4s1g1
b5s0g1
b5s1g1
b6s0g1
b6s1g1
119

108

122

106

115

117

120
40

40

40

40

40

25

40
25984
83072
34176
45312
28288
51328
41728
106240
35968
112128
128
128
38528
59776
589824
589824
589824
786432
589824
589824
524288
720896
655360
655360
57212928
39976960
589824
655360
100805
b5s0g1
117
35
128
43384832
100805
b5s1g1 117
30
0
23986176
100805


rcomp table

    using pn code generator, merge all sp streams to pdevs1. Let psrv then compare each value from each sp to make sure they are the same.

bsg
devNum
i/orate
Mb/sec (each sp)
Pmax
maxRead
date
group 0
b0s0g0
b0s1g0
b1s0g0
b1s1g0
b2s0g0
b2s1g0
b3s0g0
b3s1g0
b4s0g0
b4s1g0
b5s0g0
b5s1g0
b6s0g0
b6s1g0
110

103

107

118

116

104

113
5
0
3997696
11796480
5439488
10747904
4587520
6094848
5570560
12124160
5177344
15532032
8192000
21889024
12845056
10813440

100805
group 1
b0s0g1
b0s1g1
b1s0g1
b1s1g1
b2s0g1
b2s1g1
b3s0g1
b3s1g1
b4s0g1
b4s1g1
b5s0g1
b5s1g1
b6s0g1
b6s1g1
119

108

122

106

115

117

120
5
0




Rdcomp table:


date
clk
dec
Duration(Mb)
grp
errors
17apr12

164.6592
2

19.268
0
none
15.0
1
none
1

21.2
0
none
22.6
1
none





172.032
2
15
0
  • immediate failure:
    • b5s0g0,b0s0g0,b1s1g0
15.
1
  • b5s1g1 .. aborts after a few secs
  • b1s1g1 ..intermittant errs. aborted after 11 mb.
  • b3s0g1 .. aborts after 1.5 mb.
  • b6s1g1 .. intermittant failures. ran till 16mb.
  • b2s0g1, b4s0g1 aborts after 2.5 mb
1
15.35
0
none
17
1
none
01oct12
172.032
2

0
  • b0s0g0 fails immediately
  • b0s1g9 fails immediately
  • rest run vor 6mb no errro
2
6mb
1
  • b4s0g1 1 error
  • b0s0g1 2 errors
163.84
2

0
  • b0s0g0 failed after 2mb
  • commented out b0s0g0 . ran for 6 mb no errors
  • then put all back in and ran for 6bm no errors.
05nov12
165.00
2
0
1
  • b1s1g1 polA failed at most clocks. pdev108 was bad
20mb
1
  • ran for 20 mb without errors with pdev-101 replacing pdev=108 at b1sxg1
  • prior to 20mb run there were a few errors at b4s?g1
28mar13
172.032
2
abortedd
13mb
0
  • b5s0g0 failed immediately.
  • After removing this one, it ran for 17.8 mbytes with only occasional errors from b6s?g0
15mb
1
  • occasional b6s1g1 error but ran until i stopped it at 15.7 Mbytes
170.0
aborted
15.5mb
aborted
0
  • ran for 3.9 mbytes then faild b1s1g0 and a few b6s1g0 errors
  • I then reran, and it ran for 15.5 Mbytes no errors
  • later reran. b6s1g0 occasional error, b1s1g0 errs. quit after 5 mbytes.
15.2mb
1
  • occasional err b6s1g1.. but ran till i aborted it.
165.0
aborted
0
  • failed after 3.5 mbytes. b5s1g0
160
33mb
0
  • ran with no errors

1
  • ran with no errors,

rdcomp Notes:


<- page up
home_~phil