在Xilinx FPGA上快速实现 JESD204B
时间:07-22
来源:互联网
点击:
FPGA上的JESD204项目设计考虑因素
来自JESD204 接收器输出到发送器的同步、低电平有效SYNC信号用于表示同步状态。正常工作时,链路重新初始化将导致样本数据混乱,因此必须实时监测链路状态。具体而言,SYNC上的连续低电平表示接收器在接收到的数据流中无法识别出至少四个连续K28.5符号。如果发生这种情况,请检查发送器/接收器SERDES 配置,或确保发送器正在发送K28.5。SYNC上的连续高电平表示链路已建立,且保持稳定。若SYNC从高电平变为低电平然后返回高电平,则必须记录低电平状态的持续时间。如果持续时间长于5个帧加9 个字节,则表示接收器检测到了较大的错误,并将发送请求以重新初始化JESD204链路。如果持续时间等于两个帧时钟,则表示接收器检测到了较小的错误,但不会触发链路重新初始化。这个功能可极大地简化系统调试,并为进一步的链路监测提供便利。因此,用户应当在设计中包含这个功能。
8B/10B解码错误可能导致JESD204B链路重新初始化,但这并非是唯一的原因;因此,用户在设计时应能够对各通道的解码错误进行计数,从而确定链路重新同步的原因。此外,可通过8B/10B解码错误状态实时确定SERDES链路质量。
伪随机位序列(PRBS)提供了一个测量高速链路中信号质量和抖动容差的有用资源。大部分FPGA 中的SERDES收发器都内置了PRBS发生器和检查器,无需额外的FPGA资源。因此,不要忘了实例化此功能,在评估比特误码率(BER)或眼图时会使用到这个功能。
SERDES收发器中通常会使用一个缓冲器,来改变内部时钟域。如果发送器和接收器的时钟设计不佳或者时钟数据恢复模块(CDR)设置错误,那么就会导致缓冲器上溢或下溢。此时可能会发生某些链路错误,因此有必要监测缓冲器状态。缓冲器上溢或下溢的中断记录对于系统调试而言是很有用的,所以同样应当监测用户逻辑中不允许发生下溢或上溢的其它内部缓冲器的状态。
结论
本文讨论了如何在Xilinx FPGA上快速实现JESD204模块,实现方法同样可用于其它FPGA。首先,应了解FPGA供应商提供的JESD204逻辑核和收发器的功能以及接口,然后将其实例化并与您的逻辑整合。其次,从全局角度出发设计FPGA时钟树,和整个工程的复位顺序。然后,仔细定义JESD204逻辑核、用户逻辑和收发器之间的接口。最后,加入必要的调试资源。遵循这些步骤有助于您快速、成功地设计JESD204接口。
参考文献
JESD204B 应用指南
作者
Haijiao Fan [haijiao.fan@analog.com] 是ADI中国北京公司的应用工程师,从事JESD204协议评估和集成RF收发器应用与支持工作。他曾就读于中国西北工业大学,并分别于2003年和2006 年获得电子工程学士和电子工程硕士学位。2012 年7 月加入ADI 公司,此前Haijiao拥有超过6年的FPGA和系统工程师工作经验。
来自JESD204 接收器输出到发送器的同步、低电平有效SYNC信号用于表示同步状态。正常工作时,链路重新初始化将导致样本数据混乱,因此必须实时监测链路状态。具体而言,SYNC上的连续低电平表示接收器在接收到的数据流中无法识别出至少四个连续K28.5符号。如果发生这种情况,请检查发送器/接收器SERDES 配置,或确保发送器正在发送K28.5。SYNC上的连续高电平表示链路已建立,且保持稳定。若SYNC从高电平变为低电平然后返回高电平,则必须记录低电平状态的持续时间。如果持续时间长于5个帧加9 个字节,则表示接收器检测到了较大的错误,并将发送请求以重新初始化JESD204链路。如果持续时间等于两个帧时钟,则表示接收器检测到了较小的错误,但不会触发链路重新初始化。这个功能可极大地简化系统调试,并为进一步的链路监测提供便利。因此,用户应当在设计中包含这个功能。
8B/10B解码错误可能导致JESD204B链路重新初始化,但这并非是唯一的原因;因此,用户在设计时应能够对各通道的解码错误进行计数,从而确定链路重新同步的原因。此外,可通过8B/10B解码错误状态实时确定SERDES链路质量。
伪随机位序列(PRBS)提供了一个测量高速链路中信号质量和抖动容差的有用资源。大部分FPGA 中的SERDES收发器都内置了PRBS发生器和检查器,无需额外的FPGA资源。因此,不要忘了实例化此功能,在评估比特误码率(BER)或眼图时会使用到这个功能。
SERDES收发器中通常会使用一个缓冲器,来改变内部时钟域。如果发送器和接收器的时钟设计不佳或者时钟数据恢复模块(CDR)设置错误,那么就会导致缓冲器上溢或下溢。此时可能会发生某些链路错误,因此有必要监测缓冲器状态。缓冲器上溢或下溢的中断记录对于系统调试而言是很有用的,所以同样应当监测用户逻辑中不允许发生下溢或上溢的其它内部缓冲器的状态。
结论
本文讨论了如何在Xilinx FPGA上快速实现JESD204模块,实现方法同样可用于其它FPGA。首先,应了解FPGA供应商提供的JESD204逻辑核和收发器的功能以及接口,然后将其实例化并与您的逻辑整合。其次,从全局角度出发设计FPGA时钟树,和整个工程的复位顺序。然后,仔细定义JESD204逻辑核、用户逻辑和收发器之间的接口。最后,加入必要的调试资源。遵循这些步骤有助于您快速、成功地设计JESD204接口。
参考文献
JESD204B 应用指南
JESD204 数据转换器串行接口JEDEC标准
高速模数转换器
高速数模转换器
集成式收发器、发射机和接收机
联盟计划和FPGA参考设计
解密JESD204B高速数据转换器转FPGA接口
Ian Beavers,"JESD204B转换器内确定性延迟解密" ElectronicDesign,2014年2月25日。
Ian Beavers,"原型开发系统:JESD204B转换器和FPGA"Electronic Design,2014 年1 月23 日。
Ian Beavers和Jeffrey Ugalde,"设计JESD204B转换器系统,实现低BER(第一部分)" EDN,2014年10月22日。
Ian Beavers 和Jeffrey Ugalde,"设计JESD204B转换器系统,实现低BER(第二部分)" EDN,2014年10月28日。
Jonathan Harris,"了解JESD204B规范中的层级:从高速ADC的角度出发(第一部分)" EDN,2014年9月24日。
Jonathan Harris,"了解JESD204B规范中的层级:从高速ADC的角度出发(第二部分)" EDN,2014年10月2日。
Del Jones,"JESD204B 子类(第一部分):JESD204B子类简介与确定性延迟" EDN,2014年6月18日。
Del Jones,"JESD204B子类(第二部分):子类1与子类2的系统考虑因素" EDN,2014年6月25日。
作者
Haijiao Fan [haijiao.fan@analog.com] 是ADI中国北京公司的应用工程师,从事JESD204协议评估和集成RF收发器应用与支持工作。他曾就读于中国西北工业大学,并分别于2003年和2006 年获得电子工程学士和电子工程硕士学位。2012 年7 月加入ADI 公司,此前Haijiao拥有超过6年的FPGA和系统工程师工作经验。
ADC DAC ADI 收发器 FPGA CMOS Xilinx 编码器 解码器 Verilog 电子 相关文章:
- 基于Virtex-5 FPGA设计Gbps无线通信基站(05-12)
- Virtex-5推动超宽带通信和测距的发展(01-06)
- 基于CPLD与单片机的高速数据采集系统(04-08)
- 在低成本FPGA中实现动态相位调整(03-25)
- 利用FPGA和CPLD数字逻辑实现ADC(06-04)
- SDH中E1接口分接复用器VHDL设计及FPGA实现(06-23)