Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Script: https://github.com/slac-lcls/lcls2/blob/master/psdaq/psdaq/pyxpm/pyxpm_hsrepeater.py

Tests result

In order to validate the theory, the script was tested on XPM10, XPM6 and XPM5. First goal was to fix non working links on XPM6 (AMC1 port 3, 4 and 5)

...

The scan reports errors for equalizer value of 0x2F (default value), which is a good sign. By moving to other values, we started getting data and link ready up. Therefore, additional tests, on different links/XPM have been made to find a common working point:

EqualizerXPM6
link 12
XPM6
link 11
XPM6
link 10
XPM5
link 13
XPM5
link 12
XPM6
link 13
XPM10 link 7
0x00✔️✔️✔️✔️✔️✔️✔️
0x01✔️✔️✔️✔️✔️✔️
0x02✔️✔️✔️✔️✔️✔️✔️
0x03✔️✔️✔️✔️✔️✔️✔️
0x07✔️✔️✔️✔️✔️✔️✔️
0x15✔️✔️
✔️✔️✔️✔️
0x0B✔️✔️✔️✔️✔️✔️✔️
0x0F✔️✔️✔️✔️✔️✔️✔️
0x55





✔️
0x1F
✔️✔️✔️
✔️✔️
0x2F
✔️
✔️
✔️✔️
0x3F


✔️
✔️✔️
0xAA





✔️
0x7F






0xBF






0xFF






Low values sound to be the best settings, even if it does not provide a 100% guarantee. Setting an initial value of 0x03 with a way to execute a scan in case of issue sounds to be a good deal. Additional tests were carried out to ensure that the configuration is consistent over scans and hard reboot. The scans was run 3 times in a row for XPM 13, link 6:

...

Configuration showed a small amount of errors with setting 0x01 before being rebooted but disappeared after. However, according to the really small number, this difference is negligible and can be ignored.

Summary 

Setting good valued to the high speed repeater equalizer fix the issue. Nevertheless, it is difficult to guarantee a unique value that will guarantee a working link. However, the default one (0x2F) sounds to be one of the worst we could set according to the statistics we got. Therefore, it is recommended to initialize the repeater with 0x03 and run the scan script to optimize it in case of link issue.

...