Setup for reading the ITkPixV1 quad module with YARR
Physical components:
The module
Power adapter
There are a few different types of data adapters. This is the one where all 4 chips are read through one DP adapter, so you'll need to use the 16x1 configuration in both software and firmware (you can check the firmware with ./bin/specComTest, and reflash the firmware if needed)
Power supply. Set to 2V (possibly more depending on loss in the wires) and 6.1A (1.526A per chip)
Running digital scans
Use the following tool to pull the config cards from the production database:
https://gitlab.cern.ch/berkeleylab/itk-pixel-module-software/itkpix-itkdb
python scripts/generateYARRConfig.py -sn 20UPGR91101015 -p L2
With fan + thermal pad, the module runs very hot at 36 - 38 C after configuration.
Digital scan:
bin/scanConsole -r configs/controller/specCfg-rd53b-16x1.json -c configs/20UPGR91101015/20UPGR91101015_L2_warm.json -s configs/scans/rd53b/std_digitalscan.json -p -n 1
Data transmission errors like the following:
[12:14:11:372][ error ][Rd53bDataProcessor][14352]: Expect new stream while NS = 0: 0100111001000110000100011100100100000010100111001001010001000011. Skipping block...
Can be solved by boosting the amplitude and preemphasis of the CMD driver. According to Timon, the default ones are sufficient for the SCC but not for the quad module because of the additional flex + adapter card. Timon's recommended quad settings are:
"CmlBias0": 800,
"CmlBias1": 200,
"SerEnTap": 1,
"SerInvTap": 1,
From tests, 3 chips on this module work pretty consistently with these settings while the last one (0x15448) always has some issues (only tested digital scans so far).
Additional information:
The following page has some information on how the connectivity should be done: https://atlaswiki.lbl.gov/pixels/rd53bQuad/index
Also note that broadcast mode is chipID 16 for ITkPix instead of 8 for RD53A