JPL digital backend
05aug16
Intro
The jpl
backend is an voltage recording system assembled by jpl and located
in the computer room. It is mainly used for planetary
radar xband,cband experiments (where jpl
transmits, and AO receives).
Some basic info
- xband transmits at 8650 MHz.
- the ao datataking routines:
- located in the standard sband locations (astro/sband).
- xbinit is used to do the setup
- this calls xbconfig.. which does the configuration.
- the ifsetup:
- done by xbconfig
- It is also possible to setup the if/lo independent of the
sband routines
- vxWorks routine: xbjplsetup (in
/home/online/Tcl/Proc/gen)
- This is always available from the vw% prompt.
- It just sets up the AO if/lo. it does not move the turret
(eg. turpos xb)
- The setup is:
- rf cfr 8560
- 2-12 GHz mixer used
- lo side 1st lo..
- mixes 8560 to 1500 MHz 1st IF
- 2nd lo mixing:
- use band 4
- mix 8495 MHz to 260 MHz with low side lo
- rf center of 260 MHz band is 8495 MHz. the band is
unflipped.
- The device wants an IF freq of 325MHz.
- 325MHz is 65 MHz above 260 MHz
- adding 65 MHz to the rf freq of 260IF gives 8560
(the freq of the xmiter)
- There is no doppler correction done at AO.
- the output of band 4 is sent to the dig rcvr in the computer
room.
- one cable for polA, 1 cable for polB
- From jpl results.. our PolA is rcp, our PolB is lcp
- In the computer room:
- signal -> 325 Mhz bandpass filter (about 100 Mhz bw)
=>
- PolB (lcp) -> variable attn (adr 18) -> 23db amp ->
A/D system 1st channel
- PolA (rcp) -> variable attn (adr 29) -> 23db amp ->
A/D system 2nd channel
- The attnenuators are powered through port 5 of the netbooter
power switch.
- Note: polA,polB cables were moved to this position on
04nov16. prior to this date:
- polA (rcp) -> attn (18) --> amp -> a/d 1st chan
- polB (lcp) -> attn (29) --> amp -> a/d 2nd
chan
- The max input signal is .7 V pkToPk (according to the label on
the front panel, and the values reported by cwcDRVC)
- We measured the rms voltage at the input to the a/d (using a
scope).
- measured 140mVolts
- cwcDRCV reported 100 mVolts rms. So there is a 3db
difference (maybe a pad inside).
- I think the digitizers are 8 bits
- 1 level is 2.7 milliVolts at the digitizer (.7/256).
- the control computer is jpldrx (at AO).
Variable attenuators:
Variable attenuators were
added(161025) after the IF filters, before the amp in the jpl
rack.
- mini circuits 0 to 63 db 1 db step programmable attens.
accessible via ethernet.
- the fixed atten (2db) between the filter and the amp
was removed and replaced by these variable attens.
- At 325 MHz, the data sheet says the insertion loss is 2 db.
- polB (lcp) ->serial num ending in 18 .. ipAddress:
192.168.1.18
- polA (rcp)-> serial num ending in 29 .. ipAddress:
192.168.1.29
- prior to 04nov16 we had..
- polA serial num ending in 18 .. ipAddress: 192.168.1.18
- polB serial num ending in 29 .. ipAddress: 192.168.1.29
- I increased the default downstairs power by 8 db
- in setup scripts: adjpwrif2 -e 2 ->
adjpwrif2 -e 10
- Dana and i looked at the input at the curtiss wright front
panel
- The values were about 2db higher than what the cwcDRVC
reported. So there must be a 2db pad in the a/d.
- 0 db attenuation now gives about -2dbm at the curtiss
wright input (-4db reported by histogram).
- Running the cwcDRCV histogram after doing the xband setup:
- note: below levels were run prior to 04nov16.. on 04nov15
pola,b swapped at input to variable attenuators.
- if/lo power levels:
- if1 -33.0 , -34.61
- if2 -25.8 -26.4
- histogram gave:
- I1:{mean:0.27 3sig:116.77 Vrms:106.43 mV Pavg:-6.45 dBm}
- Q1:{mean:-0.20 3sig:116.63 Vrms:106.31 mV Pavg:-6.46
dBm}
- I2:{mean:-0.03 3sig:113.42 Vrms:103.38 mV Pavg:-6.70
dBm}
- Q2:{mean:0.15 3sig:112.93 Vrms:102.93 mV Pavg:-6.74 dBm}
- Low level access:
- to query: curl http://192.168.1.18/Att?
- to set : curl
http://192.168.1.18/SetAtt=6
- jplattn script
- i wrote a script: ./bin/jplattn to set,query the
attenuators:
- jplattn
Usage:jplattn -h -q -s attnA attnB
ARGS:
-h
help. print this message
-q
query atten values. return polA polB in db
-s attnA attnB
set atten values. integer values 0 to 63 in 1 db
steps
DESCRIPTION:
Set,query the variable
attenuators. If -q and -s are supplied together, then
the query is done after the set. Even though -q
returns x.0, you should enter integers.
- Examples:
- jplattn -s 6 6
- Sets polA,polB to 6,6 db atten
- jplattn -q
- jplattn -s 5 5 -q
- 5.0 5.0
- sets and then queries..
160817:xband tone to check backend
An xband tone transmitted from the control room
was recorded (through the xband receiver) on the jpl backend.
The setup was:
- Using xband helical antenna, transmit 8651 MHz from the
control room toward the gregorian dome. ampl=15dbm
- on spectrum analyzer in control room saw tone 15 db above
the noise floor in 1kHz rbw.
- Use vxWorks routine: xbjplsetup to setup the AO
iflo
- 2nd IF at 325 MHz (sky cfr 8650 MHz) sent to the jpl rcvr.
The band was in increasing frequency.
- Power levels at IF2 sent to backend were adjusted via:
- adjpwrif2 -e 2
- AO readback was:
- if2mp -34 -34
- attn if2 setting: if2 -7 -3 (neg
atten is gain)
- Setup the jpl backend to mode 16 (2x80MHz).
- run histogram function. The output was:
- I1:{mean:-1.02 3sig:105.20 Vrms:95.92 mV Pavg:-7.35
dBm}
- Q1:{mean:-0.92 3sig:104.66 Vrms:95.43 mV Pavg:-7.40
dBm}
- add 0.56 dB
- I2:{mean:-1.01 3sig:112.64 Vrms:102.70 mV Pavg:-6.76
dBm}
- Q2:{mean:-1.04 3sig:113.45 Vrms:103.44 mV Pavg:-6.70
dBm}
- add -0.03 dB
- Take 10 seconds of data (3.4 Gbytes) to file
data20160817135835.000.
Processing the data:
- Extract the file to the jpl computer filesystem
(/home/clement)
- copy the file to ao computer
- Read in 100 records of 2^20 complex points (1.3 seconds)
- compute the mean and rms for each i,q digitizer
- compute the spectral density for the 100 records using a 1
megapoint transform (removing DC before transforming). and
then average each pol separately.
The plots show the results of
the measurement (.ps) (.pdf)
- Page 1: voltages
- top Frame: PolA Idig, Qdig voltages.
- only displayed 100 usecs (8000 samples)
- rms: 1 sigma=35 counts. (computed over the entire
1.3 seconds)
- Middle Frame: PolB Idig, Qdig voltages
- Bottom frame:
- histogram of the voltages
- black:polAdigI, red:polA digQ, green:polB digI, blue:polB
digQ
- Page 2: Averaged spectra:
- Black polA, red:PolB
- Yscale: spectral density. db above Tsys (0=Tsys).
- top Frame: Showing all freq, amplitudes.
- smoothed to 2.3Khz (so the output file didn't get too big)
- middle frame: blowup showing the tone at 8561 MHz
- channel resolution: 76 hz
- (DC was removed before computing the spectra)
- Bottom frame: blowup showing the bandpass ripple
- smoothed to 2.3 Khz
- there is a 1 to 2 db variation across the band.
SUMMARY:
- an xband tone transmitted into the dome from the control room
appeared at the correct position in the spectral output of the
jpl backend.
- the band input to the jpl backend is in increasing frequency
order. I checked the tone location on the spectrum analyzer at
the backend input. RfCfr 8560 (325 MHz at IF2), tone at 8561,
appeared at 326 MHz in the IF2 input to the backend.
- The optimum histogram setting is giving an output with
1sigma=36 counts. This is more than is needed for optimum noise
statistics. A sigma of 20 counts for the 8 bit digitizer would
give more headroom.
Notes on doing the tone experiment:
- vw%: turpos xb
- vw%: xbjplsetup
- if2mp (should be around -34)
- if not adjpwrif2 -e 2 increase 2 to add
more power, decrease for less power.
- tone:
- xb helix. connect to 20 GHz hp synth. freq: 8561, amp:15 dbm
- Check on spectrum analyzer in control room
- 1st IF output (through 40 db amp to spectrum analyzer).
- cfr 1501, span 100 kHz.
- web browser:
- turn on power to rcver, amp
- got to synth page and turn on rf for synth
- login to jpl cpu
- run datataking program
- 17 .. get hist
- adjust power via ao vxworks
- 1 take data
- -1 exit
- Use FCB routines to extract file, send to ao computers
- Use idl to process data.
processing:x101/160817/jplrcvr.pro
160922: xband tone to check digital
receiver.
Clement modified the fpga code to support IF's of
260 and 325 MHz. On 22sep16 i rechecked the system by generating an
xband tone and receiving with the xband receiver. It was then passed
to the jpl digital receiver.
The setup was similar to that of 160817 (see above)
- turpos xb
- xbjplsetup
- measured atten values:
- if1: -34 -34
- if2: -34 -34
- histogram readback:
- I1:{mean:0.03 3sig:108.31 Vrms:98.72 mV Pavg:-7.10 dBm}
- Q1:{mean:-0.17 3sig:108.30 Vrms:98.71 mV Pavg:-7.10 dBm}
- add 0.31 dB
- I2:{mean:0.10 3sig:116.95 Vrms:106.60 mV Pavg:-6.43 dBm}
- Q2:{mean:-0.03 3sig:117.42 Vrms:107.02 mV Pavg:-6.40 dBm
10 second of data was written to data20160922130808.000
and then xfered to an AO machine
The plots show the rms, histogram,
and averaged spectra with the 8651 MHz tone (.ps) (.pdf)
- The are similar to what was seen on 17aug16.
- Note: The internet was down when i did the test.
- When logging into the jpl cpu : ssh
clement@192.231.95.51 i had to wait for many
minutes before the password prompt appeared. After entering
the password things worked normally. There was probably
something hanging on trying to access the nameserver.
processing: x101/160922/jplrcvr.pro
161027: testing the backend linearity
The variable attenuators were used to test the
linearity of the digital backend. The setup was:
- xband receiver setup to give power level requested by cwcDRVC
program when 6 db of attenuation was installed.
- The attenuators were stepped 0 to 21 db in 3 db steps.
- At each setting the cwcDRCV program was used to measure the
power.
- The attenuator data sheet quotes the attenuation accuracy as
- 1-15 db .05 db typical, .35 Max
- 16-63 db .2 db typical .8 max
- I did a linear fit (dbm vs db) for the attenuation values 5 to
21 db.
The plots show the measured power
vs the attenuation (.ps) (.pdf):
- Frames 1,2: measured power (dbm) vs attenuation (db)
- * black are the measured points
- * green are the points
used for a linear fit
- red Linear fit to
the green points
- vertical line: level
requested by the cwcDRCV program.
- Frame 3: compression vs attenuation
- black polA, red polB
- the system starts to compress above 6 db attenuation (-7
dbm).
- Bottom: rms in A/D counts vs attenuation.
- I assumed the a/d pk to pk Voltage was .7 Volts.
- the blue line shows the value requested by the program.
- It has an rms of about 40 counts..
- 1 sigma of 9 counts needs an integration time of 1.04
times a perfect sampler..
- so a sigma of 20 counts would be plenty. This would also
move us 6db away from the start of compression.
Summary:
- The test assumed that the 1db steps of the attenuator were
perfect. The nominal error is .05 db.
- Compression was seen above -7 dbm. This is the location that
cwcDRCV program sets the power levels,
- 1 db compression occurred at -3dbm..
- You want to stay well below the 1db compression point
- The current power level of -7dbm as 40 a/d counts in 1
sigma.
- Reducing the power level to 20 a/d counts in 1 sigma would
give 6db more db before the onset of compression.
- a sigma of 20 counts is well above the level where
digitization noise occurs (say 6db).
processing: x101/161027/jplattens.pro
<-
page up
home_~phil