PS Module Testing in the FNAL Burnin Box
Thank you to Younes Otarid for instructions!
Software - Firmware - Instructions
Install the branch of Ph2_ACF that Younes has prepared for us:
git clone --recursive https://gitlab.cern.ch/yotarid/Ph2_ACF.git Ph2_ACF_PSYounes
cd Ph2_ACF_Younes
Compile it:
cd Ph2_ACF_Younes
source setup.sh
mkdir build; cd build; cmake ..
make -j8
For PS Module with CIC 1:
Use the image d19c_ps_5g_cic1_lpgbt0_2h_l12quad_l8dio5_withbend_nostubdebug_nofastcounters.bin from this page:
https://udtc-ot-firmware.web.cern.ch/
fpgaconfig -c settings/FNAL_BurnIn_PSModule.xml -i d19c_ps_5g_cic1_lpgbt0_2h_l12quad_l8dio5_withbend_nostubdebug_nofastcounters.bin
For PS2201, the FEH are CIC1 and SSA1, and the ROHs are 5G.
For PS2202, the FEH are CIC2 and SSA1, and the ROHs are 10G.
For the PS2202 the firmware is /afs/cern.ch/user/y/yotarid/public/for_PS/ps_10g_cic2_2h_l12quad_l8dio5_withbend_nostubdebug_nofastcounters.bin
NB: Before running on the PS-10G module, make sure to change the CDCE clock rate to 640 and reconfigure the CDCE by setting configuration setting to 1, just for the first run
https://gitlab.cern.ch/cms_tk_ph2/Ph2_ACF/-/blob/Dev/settings/PS_FullModule.xml#L7
Also change the clock frequency for both hybrids to 640 and replace CIC2 where necessary. Trying branch
https://gitlab.cern.ch/yotarid/Ph2_ACF/-/tree/ps_module_dev
Skeleton test
So far for the skeleton testing only this works!!!
Install the branch of Ph2_ACF that Younes has prepared for us:
git clone --recursive https://gitlab.cern.ch/yotarid/Ph2_ACF.git Ph2_ACF_FirstPSModule
cd Ph2_ACF_FirstPSModule/
git checkout ps_module_test_temp
Compile it:
source setup.sh
mkdir build; cd build; cmake ..
make -j8
Use the image firmware/d19c/PS5G2hCIC1_TEMP.bin
fpgaconfig -c settings/FNAL_PSskeleton.xml -f firmware/d19c/PS5G2hCIC1_TEMP.bin -i FW_2022-03-15_PSskeleton
fpgaconfig -c settings/FNAL_PSskeleton.xml -i FW_2022-03-15_PSskeleton
To test SSA
I2C communication :
To test uplink by generating internal pattern on the lpGBT :
To test CIC-lpGBT communication :
- We could perform CIC-lpGBT alignment, but since this branch is quite old, the implementation for that is not included. Of course I can include it at some point for you to test.
To run a noise measurement on the SSAs only just to make sure that the whole procedure works :
Noise measurement
On the full module. So far, cannot test MPA and SSA together.
Run the following command :
ot_module_test -f settings/PS_SSAonly.xml -t -m -a --moduleId SSAonly -b --reconfigure
ot_module_test -f settings/PS_MPAonly.xml -t -m -a --moduleId MPAonly -b --reconfigure
Every run will produce a folder called ps_module_test_WHATEVER_FILE_EXTENSION_runXXX in the /Results folder, with a corresponding root result file called ps_module_result.root. You will find noise plots and SCurves in the latter, but you can also use it to make your own plots. In order to change the injected charge you can change the two settings called
PedestalEqualizationPulseAmplitude and
PedeNoisePulseAmplitude in the xml. The value is given in Cal_DAC units. The conversion to electrons is (SSA : 243 e- , MPA : 220 e-).
--
JennetElizabethDickinson - 2022-03-10