Serdes系列总结——Xilinx ibert IP使用
IP设置
IBERT ip的设置非常简单,只要设置好serdes管脚对应的信息即可,生成的example直接是可以生成bit,上板调试的。下面以zynq 7035的GTX为例 当然有几个地方要注意下 (1)图一中的DataWidth 可选32/40。这个参数影响图三的RXOUTCLK的Frequency数值。 Frequency * DataWidth = LineRate
(2) RXOUTCLK 主要是用作时钟的同步,例如反馈给本地晶振。不一定需要用到 (3)如果是接光模块,则光模块的管脚必须设置正确,如果不设置,有可能输出不出来 (4)最好在有最小系统的工程下,直接把ibert example 工程中的内容 以及里面的约束直接拷贝到那个最小系统的工程下,这样,既可以支持打指令,又可以支持ibert。有时候需要对外围芯片进行配置之后才能开始测眼图,例如外围的JESD芯片,通过指令控制其工作。
设置好后,即可进行上板测试。
测试界面
通过JTAG进行连接后。按照下图所示进行配置,配置好码型,极性等。 每次对任意参数进行修改后,记得TX_reset/ RX_reset/Ibert_reset 分别按一下,消除因为参数修改带来的可能不稳定的现象 主要设置的参量为 接收端一个参量 RXTERM 发送端三个参量 TXDIFFSWING 、TXPOST、TXPRE 其他参量: DFE Enabled (不要勾选),TX和RX极性反相都勾选(如果是xilinx与intel对测)
Xilinx FPGA Sweep 设置,根据xilinx FAE的说法,水平垂直精细度设置为2比较好。BER设置为10-12次方。
Xilinx FPGA Sweep RXTERM设置 Xilinx FPGA Sweep TXDIFFSWING设置 Xilinx FPGA Sweep TXPOST设置 Xilinx FPGA Sweep TXPRE设置
总结的测试步骤 1、如果要测试设备作为主设备(发送串化数据给从设备做同步) (1)接收/发射通过光纤环回,先在发送参量为默认的情况下,扫描一下接收参数,从中选择一个最佳参数。 (2)然后固定好这个最佳接收参数,扫描三个发射参量,得到一组最优发射参量值。 (3)固定好这组最优发射值参数,重新在扫描一次接收参数,与之前设置的接收参数对比是否有变化,一般来说不会有变化。 (4)这样就自己对自己做参考,生成了一组接收发射的最优参数了。
2、如果要测试设备作为从设备(先接收主设备串化数据后,同步主设备时钟在发送串化数据回主设备或者下一级设备) 首先我们认为主设备的发射已经调好了。 (1) 用光纤对主从设备进行连接,扫描一下接收参数,从中选择一个最佳参数。 (2) 从设备两个光口通过光纤环回,扫描一下接收参数,从中选择一个最佳发射参数。 (3) 如果主设备可以进行配合扫描,那么主设备对接收端进行扫描,确认下当前接收参数和之前调好的参数的眼图的差异,如果差异不大不需要进行调整。
眼图质量的评判
通过本文得出的眼图,可以通过以下几点来判别是否符合要求:
- 蓝色区域内干净无其他颜色混杂(即BER<10-12);
- 横轴xilinx 软件界面为一个UI
根据具体的信号规范来确定眼宽要大于多少UI,一般来说大于0.3UI就没什么问题。(±0.15) - 纵轴xilinx软件界面为一个code 1.5mv(默认)左右
根据具体的信号规范来确定眼高大于多少个code,建议xilinx眼高大于60个code(±30)
|