
为了从 10Gbps 信号得到稳定的 2.5Gbps 数据流,Andres 用 4 个连续1(或十六进制的单个 F)得到了 2.5Gbps 的单个的1比特,2.5Gbps 的单个 0 比特则是由 10Gbps 的 4 个连续的 0 比特得到的。然后,他移动边沿时序来创建抖动。
Andres 说:“借助 10Gbps 模式,就能把任何上升沿或下降沿的时序改变 0.25 个单位间隔(UI)。利用两个边沿,就能为信号添加 0.5 UI 的抖动。还可以在模式中改变最差情形抖动的位置。测试人员可以检查许多不同位置,然后向设计师提供反馈,说明模式中的弱点出现在何处。DUT 在一个方向能处理的抖动比另一个方向高得多。”
图 1 展现的是Andres 做法。上方的轨迹表明 2.5Gbps 的 4 个比特(1010),没有添加抖动(边沿未移动)。在 10Gbps 时,模式是由十六进制 F0F0 表示的。下方的轨迹是 2.5Gbps 的一系列 4 比特(1,0,0,1),但 0 比特和随后的 1 比特之间的上升沿提前 0.25 UI 出现了。
Andres 的实现方法是在 10Gbps 利用十六进制 1(二进制 0001)来代替二进制 0000 后接十六进制 F(二进制 1111)。通过反复改变比特模式,Andres 能在 2.5Gbps 流中创建抖动。
表 1 列出了 Andres 用于开发 PRBS7 模式的代码。Pattern Data Line0002 中带有下划线的 4 个数字表示被缩短或延长 0.25 UI 的比特。例如,“8”表示前一个比特的延迟下降沿,而“E”表示后一个比特的提前下降沿。
过采样过程没有为 Andres 提供足够的抖动以达到测试 PCIe 接收器所需的 0.65 UI 抖动。图 2 表明当比特边沿侵入眼图模板(钻石)时,就会出现误码。Andres 利用混频来添加正弦抖动(Sj),以便覆盖其余部分。事实上,他能产生足够的时序变化来完全闭合眼图。
图 2 中标明闭合眼图宽度的光标对应于比特边沿之间的 39 皮秒时间,并表示眼图闭合。波形上方的直方图表明边沿时序的分布。抖动覆盖大约 53 皮秒的范围,抖动的其余 14 皮秒来自数据相关抖动(DDj)和随机抖动(Rj)。Andres 说:“我不喜欢随机抖动,因为它很难量化和调试。随机抖动随着测量时间的延长而增加。”