【UCIe】UCIe 信号线修复(Lane Repair/Remapping)

简介: 【UCIe】UCIe 信号线修复(Lane Repair/Remapping)

1. Lane Repair 简介


 为了提升良率,先进封装的 UCIe Module 支持 Lane Repair,即信号线修复。在链路初始化及训练过程中对 UCIe Link 上的信号线功能进行检测,若检测到 短路、短路或速率不达标 的信号线(Bad Lane),则剔除存在问题的信号线并启用提前预留的冗余信号线(Redundant Lane),称为 Lane Repair。


 UCIe 采用 Redundancy Remapping 的策略进行 Lane Repair,弃用存在问题的 Physical Lane,将其对应的 Logical Lane 映射到其他没有问题的 Physical Lane 上。无论是 UCIe Lane Repair 还是 Lane Reversal,其本质都是 Logical Lane 到 Physical Lane 的重映射。


 标准封装的 UCIe 不支持 Lane Repair,当检测到 Bad Lane 后,只能通过 Degrade 来解决。即将 X16 减宽为 X8(Lane0~7 或 Lane 8~15)。协议中并未表明可以减宽为 X4、X2、X1。




2. Lane Repair 方案


 先进封装的 UCIe Mainband 及 Sideband 均支持 Lane Repair。如之前的博文 《UCIe PHY 接口信号》 所述,Mainband 的 Data、Clock、Track 及 Valid Lane 均预留有 Redundant Lane。其中,32 根为一组 Data Lane 配有两根 Redundant Lane, 差分 Clock 与 Track 共用一条 Redundant Lane,Valid Lane 专用一根 Redundant Lane。Sideband 每一条 Clock、Data Lane 都有一条专门的 Redundant Lane。




2.1 Sideband Lane Repair


 Sideband Tx 及 Rx 的 Clock、Data Lane 都备用冗余 Lane,以 RD 作为信号名后缀,如下:


   TXCKSB -> TXCKSBRD


   TXDATASB -> TXDATASBRD


   RXCKSB -> RXCKSBRD


   RXDATASB -> RXDATASBRD


 Sideband Lane Repair 发生于 Mainband Lane Repair 之前,这是毋庸置疑的——毕竟绝大部分 Mainband 初始化及训练相关的状态都需要用 Sideband 来传递、交换 Msg。

 Sideband Lane Repair 发生于 SBINIT 期间。Sideband 是在 Clock、Data Lane (Normal & Redundant for Advanced) 上同时发送 Test Pattern,根据 Rx 接收结果按照一定的优先级选出可用的 Sideband Data 及 Clock Lane 组合。





2.2 Mainband Lane Repair


 Mainband Lane Repair 发生于链路初始化的 MBINIT 及 MBTRAIN 阶段,一发生于切速之前,一发生于切速之后。


 MBINIT 状态时,即 UCIe 切速之前、Mainband 处于最低速 4GT/s 时,对包括 Redundant Lane 在内的 Clock/Track、Valid、Data 这 3 类 Lane 先后依次进行功能检测及修复(较为详细的检测过程请参考《UCIe PHY LSM 介绍》)。MBINIT 状态下检测到的 Bad Lane 多是 UCIe Lane 的短路或短路问题。


 MBTRAIN 状态时也存在 Lane Repair 的时间窗,但仅限于切速失败后。如果初次切速即训练成功,则不会也无需进入 MBTRAIN.REPAIR 状态。如果在 MBTRAIN 状态时启动了 Lane Repair,说明在 MBTRAIN.LINKSPEED 状态链路稳定性测试没有通过,需要进入 MBTRAIN.REPAIR 进行 Lane Repair 或 Degrade。MBTRAIN.REPAIR 时肯定会修复 Data Lane,至于是否涉及到 Clock、Valid Lane Repair,这一点尚不明确。



2.2.1 Clock and Track Lane Repair


 以 Tx 为例,单个 UCIe Module Tx 中有一对 Clock 差分线及 一根 Track 线,三根线共享一根 Redundant Lane TRDCK_P。如图 1 所示,TRDCK_P 位于 TCKP_P/RCKN_P 及 TTRK_P 的中间,无论哪一根 Lane 坏掉了,都向中间的 TRDCK_P 移位。Rx 跟 Tx 是对称的。



2763a3dffaad4f05a9fcc4dccac854af.png


▲图 1:UCIe Clock and Track Lane Repair Scheme



举个例子:比如 TCKP_P 坏掉了(图 1(a)),则 TCKN_P 充当 TCKP_P 与 TCKP_L 相连,TRDCK_P 充当 TCKN_P 与 TCKN_L 相连,TTRK_P 与 TTRK_L 相连保持不变,Rx 端对称进行 Remapping,如图 2 所示。TCKN_P 及 TTRK_P 的修复以此类推。



27077da0c70e4849ab4d94e59126b4f6.png

▲图 2:UCIe Mainband CKP LaneRepair



2.2.2 Valid Lane Repair


  Valid Lane 专用一根 Redundant Lane,在链路初始化及训练过程中检测到 Valid Lane 坏掉后,直接用用其 Redundant Lane 进行替代即可,如图 3 所示。


ea5bb5cc59de45108d4cd395dcd86f6c.png



▲图 3:UCIe Mainband Valid Lane Repair



2.2.3 Data Lane Repair


2.2.3.1 修复原理

 先进封装的 UCIe Module 有两组常规 Data Lane,TD_P[31:0] 及 RD_P[31:0] 为一组,TD_P[63:32] 及 RD_P[63:32] 为一组。每组 Data Lane 配有两对 Redundant Lane(图 4),TRD_P[1:0]/RRD_P[1:0] 及 TRD_P[3:2]/RRD_P[3:2],两组 Lane 独立进行修复及 Remapping。Group 1 不能用 Group 2 的 Redundant Lane,Group 2 也不能用 Group 1 的 Redundant Lane。


077639aef9cf4514853742135b8e9d7c.png



▲图 4:UCIe Mainband Data Lane Repair Scheme


 当某组 Data Lane 出现 Bad Lane 时进行 Remapping,Remapping 时不是直接拿 Redundant Lane 替换为坏 Lane,而是进行左移或右移的方式进行 Remapping。左移就是指 Logical Data Lane TD_L[n] 接到 Physical Data Lane TD_P[n-1] 上, 左移就是指 Logical Data Lane TD_L[n] 接到 Physical Data Lane TD_P[n+1] 上。


 如图 5 所示,电路逻辑上,Physical Data Lane TD_P[n] 前置一个 Mux,TD_L[n-1]、TD_L[n] 及 TD_L[n+1] 均接在这条 Lane 上。从 Logical Data Lane 角度讲,当该条 Lane TD_P[n] 坏掉时,通过左移或右移,可以将 Logical Data Lane TD_L[n] 映射到 TD_P[n-1] 或 TD_P[n+1] 上,从而达到链路修复的目的。



0b9ca336a0cc42ccb8f9546da6463442.png


▲图 5:UCIe Mainband Data Lane Remapping Mux Chain


 Remapping 完成之后,原来的 Tx 坏 Lane 处于三态状态,其对端的 Rx 也对应关闭。也就是说,本端的 TD_P[n] 坏了,对端的 RD_P[n] 也是坏的,也要做 Lane Remapping。



2.2.3.2 单 Lane 修复


 以 Lane Group 1 为例,若当前 Lane Group 中只有一条 Lane TD_P[n] 需要修复,则启用 TRD_P[0] 及 RRD_P[0](Group 2 对应 TRD_P[2] 及 RRD_P[2]),采用左移的方式进行修复。即,所有 Lane ID 大于 n 的 TD_L[i] 到 TD_P[i] 的映射关系维持原状不变,Lane ID 小于等于 n 且大于等于 1 的 TD_L[i] 映射到 TD_P[i-1],TD_L[0] 映射到 TRD_P[0]。同理,所有 Lane ID 大于 n 的 RD_L[i] 到 RD_P[i] 的映射关系维持原状不变,Lane ID 小于等于 n 且大于等于 1 的 RD_L[i] 映射到 RD_P[i-1],RD_L[0] 映射到 RRD_P[0]。



201ca59ec87c49a7a12c15ffd09134f8.png


▲图 6:UCIe Mainband Single Data Lane Repair


 单 Lane 修复中, 必须采用左移的方式,因此只用到了序号较小的 Redundant Lane,另外一条 Lane 没有用到。



2.2.3.3 双 Lane 修复


 以 Lane Group 1 为例,若当前 Lane Group 中有两条 Lane TD_P[m] 及 TD_P[n] 需要修复,则启用 TRD_P[0] / RRD_P[0] 及 TRD_P[1] / RRD_P[1] (Group 2 对应 TRD_P[2] / RRD_P[2] 及 TRD_P[3] / RRD_P[3]),采用左移+右移的方式进行修复。


即,两条坏 Lane 中间的好 Lane 保持 TD_L[i] 到 TD_P[i] 的映射关系维持原状不变,以坏 Lane 为起点向两侧移动,TD_L[0] 映射到 TRD_P[0],TD_L[31] 映射到 TRD_P[1]。同理,两条坏 Lane 中间的好 Lane 保持 RD_L[i] 到 RD_P[i] 的映射关系维持原状不变,以坏 Lane 为起点向两侧移动,RD_L[0] 映射到 RRD_P[0],RD_L[31] 映射到 RRD_P[1]。


c0da7e4e493b4b6ea25461804cdfebbe.png


▲图 7:UCIe Mainband Two Data Lanes Repair


 修复 TD_P[31] 能够用到 TRD_P[0],但修复 TD_P[0] 绝不会用到 TRD_P[1],因为用到 TRD_P[1] 表明有 2 根 Lane 需要修复,而 TD_P[0] 不可能是靠近 TRD_P[1] 的那一根。



2.2.3.4 多(3+) Lane Repair -> Degrade

 若当前 Lane Group 中有三条或以上的 Data Lane 坏掉了,则超出了 UCIe Lane Repair 的能力,此时只能像 Standard Package 一样进行 Degrade 操作。




3. 参考


   UCIe Spec r1.0, Chapter 4,5


   UCIe PHY 接口信号


   UCIe PHY LSM 介绍


   什么是repair?什么是soft repair、hard repair、lane repair?  



目录
相关文章
【PCIe 协议】听说你做 PCIe 很多年,还不知道 PCIe Hierarchy ID 是什么 ???
【PCIe 协议】听说你做 PCIe 很多年,还不知道 PCIe Hierarchy ID 是什么 ???
711 0
【PCIe 协议】听说你做 PCIe 很多年,还不知道 PCIe Hierarchy ID 是什么 ???
|
7月前
|
网络协议
GE通用电气 SR469-P5-LO-A20-T 继电器保护装置模块
SR469-P5-LO-A20-T在基本单元上安装了5安培电流互感器二次线圈。 它是一个低控制功率装置,额定电压为24-60伏直流电或20-48伏交流电@ 48-62赫兹。 虽然该装置有一个可选的以太网端口,但它不包括可选的DeviceNet或增强型前面板。
GE通用电气 SR469-P5-LO-A20-T 继电器保护装置模块
|
7月前
GE Fanuc IC200PWR002模块 Versamax系列的扩展电源单元(PSU)
GE Fanuc IC200PWR002模块 Versamax系列的扩展电源单元(PSU)
|
7月前
|
监控 网络协议 安全
GE通用电气 IC695ETM001 PACSystem Rx31模块 以太网模块
GE通用电气 IC695ETM001 PACSystem Rx31模块 以太网模块
PADS Logic原理图添加总线
原理图总线在连线很多的时候或者是连线信号可以归类的时候(比如存储器的数据信号),很适合使用,可以使原理图变得简洁,提高可读性,下面我们就看一下如何在原理图中添加总线。
563 0
|
算法 调度
MOTOROLA VME172PA-652SE 控制单元使用电子逻辑阵列
MOTOROLA VME172PA-652SE 控制单元使用电子逻辑阵列
115 0
MOTOROLA VME172PA-652SE   控制单元使用电子逻辑阵列
|
数据格式 流计算
【UCIe】UCIe 支持的协议及操作模式
【UCIe】UCIe 支持的协议及操作模式
2101 1
【UCIe】UCIe 支持的协议及操作模式
|
芯片 流计算 内存技术
【UCIe】初识 UCIe
【UCIe】初识 UCIe
2394 3
【UCIe】初识 UCIe
|
数据格式 流计算
【UCIe】UCIe 协议层介绍
【UCIe】UCIe 协议层介绍
1351 0
【UCIe】UCIe 协议层介绍
|
编解码
SATA系列专题之二: 2.2 Link layer链路层加扰/解扰/CRC解析
资料在进行8b/10b 编码之前,必须先行资料加扰(Scramble)的处理,目的是為了降低EMI(Electromagnetic Interference,电磁干扰)。