You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

6.9 KiB

如需调试模块,请先备份参数。

  1. 备份参数: python3 ocsdiag.py -i 10.57.216.95 -e 4,6 -s all -c reg-save --sl_file ./main_data/bak_regs/95_bak.yaml python3 ocsdiag.py -i 10.57.216.96 -e 4,6 -s all -c reg-save --sl_file ./main_data/bak_regs/96_bak.yaml python3 ocsdiag.py -i 10.57.216.97 -e 4,6 -s all -c reg-save --sl_file ./main_data/bak_regs/97_bak.yaml python3 ocsdiag.py -i 10.57.216.98 -e 4,6 -s all -c reg-save --sl_file ./main_data/bak_regs/98_bak.yaml

    python3 ocsdiag.py -i 10.57.216.98 -e 2 -s all -c reg-save --sl_file ./main_data/bak_regs/98_bak.yaml

  2. 恢复参数: python3 ocsdiag.py -i 10.57.216.95 -e 2 -s all -c reg-load --sl_file ./main_data/bak_regs/95_bak.yaml python3 ocsdiag.py -i 10.57.216.98 -e 4 -s all -c reg-load --sl_file ./main_data/bak_regs/98_bak.yaml python3 ocsdiag.py -i 10.57.216.96 -e 4 -s all -c reg-load --sl_file ./main_data/bak_regs/96_bak.yaml

  3. 根据需求对节点执行 power cycle ipmitool power cycle

  4. 设置topo python3 ocsdiag.py -i 10.57.216.95,10.57.216.96,10.57.216.97,10.57.216.98 -e 2,4,6,8 -c topo-config -p 32

  5. ocs link reset ocs_link_reset -i 10.57.216.95,10.57.216.96,10.57.216.97,10.57.216.98 -e 2,4,6,8

  6. 设置high freq(根据PCB走线) python3 ocsdiag.py -i 10.57.216.96 -e 8 -c highfreq-tune

    python3 ocsdiag.py -i 10.57.216.96,10.57.216.98 -e 4 -c highfreq-tune

  7. 设置low freq python3 ocsdiag.py -i 10.57.216.98 -e 8 -c rtmr-prbs python3 ocsdiag.py -i 10.57.216.98 -e 8 -s all -c lowfreq-auto-tune

    python3 ocsdiag.py -i 10.57.216.98 -e 8 -s all -c reg-wt -p lowfreq_eq -v 128

    python3 ocsdiag.py -i 10.57.216.96 -e 4 -c rtmr-prbs python3 ocsdiag.py -i 10.57.216.96 -e 4 -s all -c lowfreq-auto-tune python3 ocsdiag.py -i 10.57.216.98 -e 4 -s all -c lowfreq-auto-tune

    python3 ocsdiag.py -i 10.57.216.98 -e 4 -c rtmr-prbs python3 ocsdiag.py -i 10.57.216.98 -e 4 -s all -c lowfreq-auto-tune

  8. 设置tia_peak(根据PCB走线) python3 ocsdiag.py -i 10.57.216.98 -e 8 -s all -c tia-peak-tune

    python3 ocsdiag.py -i 10.57.216.98,10.57.216.96 -e 4 -s all -c tia-peak-tune

  9. 校准ibias (onoc) python3 ocsdiag.py -i 10.57.216.98 -e 8 -s all -c ibias-auto-tune

  10. 校准ibias (onet) python3 ocsdiag.py -i 10.57.216.98 -e 4 -s all -c ibias-auto-tune -p 10.57.216.96 python3 ocsdiag.py -i 10.57.216.96 -e 4 -s all -c ibias-auto-tune -p 10.57.216.98

  11. 校准mgc onoc python3 ocsdiag.py -i 10.57.216.98 -e 8 -c rtmr-prbs python3 ocsdiag.py -i 10.57.216.98 -e 8 -s all -c mgc-auto-tune

8.1 校准mgc onet tx端: python3 ocsdiag.py -i 10.57.216.98,10.57.216.96 -e 4 -c rtmr-prbs rx端: python3 ocsdiag.py -i 10.57.216.96 -e 4 -s all -c mgc-auto-tune python3 ocsdiag.py -i 10.57.216.98 -e 4 -s all -c mgc-auto-tune

  1. 查看retimer 误码情况 python3 ocsdiag.py -i 10.57.216.97 -e 8 -c vcmd -p "rtmr all"

  2. 查看眼图情况 python3 ocsdiag.py -i 10.57.216.97 -e 8 -c vcmd -p "rtmr 1 eye 1 a" python3 ocsdiag.py -i 10.57.216.97 -e 8 -c vcmd -p "rtmr 2 eye 1 a" python3 ocsdiag.py -i 10.57.216.97 -e 8 -c vcmd -p "rtmr 3 eye 1 a" python3 ocsdiag.py -i 10.57.216.97 -e 8 -c vcmd -p "rtmr 4 eye 1 a"

    如果眼偏下,则op_current需要调小。

  3. 保存配置

10.57.216.98/96: port 4

  1. 设置high freq(根据PCB走线) python3 ocsdiag.py -i 10.57.216.96,10.57.216.98 -e 4 -c highfreq-tune

  2. 设置low freq python3 ocsdiag.py -i 10.57.216.96,10.57.216.98 -e 4 -c rtmr-prbs python3 ocsdiag.py -i 10.57.216.96 -e 4 -s all -c lowfreq-auto-tune python3 ocsdiag.py -i 10.57.216.98 -e 4 -s all -c lowfreq-auto-tune

  3. 设置tia_peak(根据PCB走线) python3 ocsdiag.py -i 10.57.216.98,10.57.216.96 -e 4 -s all -c tia-peak-tune

  4. 校准ibias (onet) python3 ocsdiag.py -i 10.57.216.98 -e 4 -s all -c ibias-auto-tune -p 10.57.216.96 python3 ocsdiag.py -i 10.57.216.96 -e 4 -s all -c ibias-auto-tune -p 10.57.216.98

8.1 校准mgc onet tx端: python3 ocsdiag.py -i 10.57.216.98,10.57.216.96 -e 4 -c rtmr-prbs rx端: python3 ocsdiag.py -i 10.57.216.96 -e 4 -s all -c mgc-auto-tune python3 ocsdiag.py -i 10.57.216.98 -e 4 -s all -c mgc-auto-tune

  1. ocs link reset ocs_link_reset -i 10.57.216.96,10.57.216.98 -e 4

先用vgc = 255,校准,然后手动改为200,发现recovery没增加了。

如何筛选模块:

  1. 通过ibias筛选分光不均匀的。

写一个精修程序,针对有问题的lane,特定修。

针对几种眼型。 眼过小的: 先解决眼小的问题 先增加ibias (< 3200 , step 100, 如果整个眼都很小,那就可以考虑直接设置2800,如果还不行,按step 100往上加)。方案2,如果增加ibias到3200还不行,那就增加op,最高190,step 10。 #备选方案3, 增加mgc( < 相对值+10)。

如果眼偏(垂直): 先调tia_peak。默认应该为中间值, 可以先设置200和0两个极端值,确认是否有改善,从而决定方向。如果发现降低有改善,但改善效果没达到,那就调highfreq,适当减小(默认是0,step 20, 不超过150)。

ibias 门限值:3200, rssi门限值:+0.5 (注意一个ibias对应两个rssi) 如果眼过小,且没超过ibias和rssi的门限值,那就先增加ibias(2000-2500: step 300, 2500-3200: step 150), 每次增加都要判断ibias和rssi是否超过门限值, 如果超出要恢复设置上一次的值。每次增加后要判断eye是否 不是过小了。

要把触发器和执行器解耦。

触发器: 眼小: 第一步: ibias调节(从小到大),如果没用,恢复默认值。可以直接设置一个较大的值,用来节省时间。 第二步: op调节(从小到大), 如果没用,恢复默认值。 第三步: 调节mgc(从小到大)。 如果还是没用,精修失败。

执行器:

ibias调节: ibias range: [2000,3200], rssi range: [-2.0, +0.5] (注意一个ibias对应两个rssi) ,rssi是调节ibias的反馈值 从小到大: ibias 上门限值:3200, rssi上门限值:+0.5 增加ibias(2000-2500: step 300, 2500-3200: step 150), 每次增加后都要判断rssi是否超过上门限值, 如果超出要恢复设置上一次的值。 从大到小: ibias 门限下值: 2000, rssi门限下值: -2.0 减少ibias(2000-2500: step 300, 2500-3200: step 150),每次减少后都要判断rssi是否超过下门限值, 如果超出要恢复设置上一次的值。

应该恢复的值: 让rssi处于默认值的ibias值。

highfreq调节: highfreq range:[0,100], step:20 从小到大:

op调节: range: [0, 190], step: 10 从小到大: 从大到小:

mgc调节: range: 相对值 ±10, step: 2

先减小( < 200, step 20)。 眼偏上: 眼偏下:

眼偏上: 整体EQ过大。调eq,先调high freq,值调大(eq变小,不超过200,步进20); 再调tia_peak,值调大(eq变小,不超过200,步进20)。 眼偏下: 先调tia_peak。 op太大,需调小(最小100, step 10)

改了以后,可能需要ocs_link_reset。