文献标识码: A
DOI:10.16157/j.issn.0258-7998.173847
中文引用格式: 吕志鹏,马小兵,禹卫东. JESD204B Subclass1模式时钟设计与调试[J].电子技术应用,2018,44(4):56-60.
英文引用格式: Lv Zhipeng,Ma Xiaobing,Yu Weidong. The design and debug of timing-clock for JESD204B Subclass1 mode[J]. Application of Electronic Technique,2018,44(4):56-60.
传统的数据转换器采用CMOS和LVDS等并行传输接口,随着数据传输速率的不断提高,并行传输总线逐渐暴露出信号同步难、偏移大、抗干扰能力弱、布局布线面积大、成本高等问题[1]。而高速串行传输总线在以上方面则表现出巨大的优势。JESD204B协议是国际组织JEDEC提出的一种高速串行协议,用于数据转换器与FPGA/ASIC之间的数据传输。该协议的最高传输速率为12.5 Gbit/s,具有确定性延时功能,能够保持各通道数据的同步传输[2-3]。
Subclass1模式是JESD204B协议完成确定性延时功能的重要模式,如TI、ADI等主流半导体厂商的JESD204B接口数据转换器产品都具备Subclass1模式。因此正确理解Subclass1确定性延时机制有助于JESD204B接口数据转换器的开发,而正确的时钟关系是完成Subclass1模式的重中之重。本文分析了Subclass1模式的工作原理以及时钟设计需求,并根据该设计需求总结出Subclass1时钟调试方法,利用Xilinx Virtex-7系列FPGA XC7VX690T搭建的JESD204B协议自收发回路验证该方法的有效性[4]。
1 JESD204B确定性延时原理
JESD204B协议将确定性延时定义为数据从发射端的并行端口输入到从接收端并行端口输出所经历的时间。该确定性延时具有两层含义:(1)延时具有可重复性,不随时间或再同步事件而改变;(2)JESD204B的各个通道之间具有相同的确定性延时,从而保证多通道数据的同步传输。
JESD204B协议确定性延时以多帧(Multi Frame)为处理单元,相应的时钟信号为本地多帧时钟(Local Multi Frame Clock,LMFC)。图1和图2分别是JESD204B协议数据发射和接收过程的时序图。当发射端检测到来自接收端的~SYNC信号的上升沿时,在下一个LMFC的上升沿开始发射ILA(Initial Lane Alignment)数据以及后续的用户数据。由于各通道数据到达接收端的时间不同,接收端通过数据缓存器对先到达的数据进行缓存,并在某一特定时刻进行释放。该释放时刻通过RBD(Rx Buffer Delay)来描述,该参数以帧的个数为计量单位,是指缓存器从接收端的某一LMFC上升沿开始所经历的缓存时间。当缓存时间等于RBD帧的持续时间时,缓存器对数据进行释放,从而完成各通道之间的同步输出。
由此可见,LMFC是JESD204B完成确定性延时功能的时钟参考。为了完成多通道数据的同步传输,各通道之间的LMFC必须同步且边沿对齐。
2 Subclass1 LMFC对齐机制
Subclass1模式由一个外部的SYSREF信号给各通道LMFC提供统一的边沿对齐参考,用器件时钟(Device Clock)去采集SYSREF信号的上升沿来确定LMFC的对齐时刻[2,5]。器件时钟针对数据转换器指的是采样时钟,针对FPGA指的是JESD204B逻辑模块的全局工作时钟,或者是串行收发器(GTH)的参考时钟。器件时钟一方面驱动数据转换器工作,另一方面产生JESD204B协议的各级时钟,如图3所示。
SYSREF信号有3种模式:脉冲模式、周期模式和间隙性周期模式。脉冲模式只在链路初始同步阶段对LMFC进行对齐。如图4所示,在某一时刻,器件时钟的上升沿采集到SYSREF信号的低电平,当器件时钟在接下来的某一时刻第一次采集到SYSREF信号的高电平时,该时刻就作为LMFC对齐的参考基准。
周期性模式是指器件时钟在每一次捕捉到SYSREF信号的上升沿时都会被判定为一次LMFC对齐事件,如图5所示,对齐时刻是在每一个SYSREF周期内器件时钟第一次采集到SYSREF高电平的时刻,且采集时刻要呈周期性重复。该模式能够保持链路的稳定工作。
在间隙性周期模式下SYSREF信号不是时刻存在的,而是依据链路是否发出同步请求而定。当链路发出再同步请求时,数据的发射端和接收端都可以向时钟器件发出请求以产生SYSREF信号,使得链路再次达到同步状态。
由以上阐述可知,JESD204B Subclass1的时钟设计必须满足以下要求:
(1)为了使器件时钟能够采集到SYSREF信号的上升沿,SYSREF与器件时钟之间必须留有足够的建立保持时间。
(2)对于SYSREF周期模式,SYSREF与器件时钟必须保持同步关系,从而在每个SYSREF周期内,器件时钟都可以在同一时刻采集到SYSREF信号的高电平,进而使LMFC保持固定的对齐边沿。
3 时钟调试方法
3.1 时钟解决方案
TI公司开发的可配置时钟芯片LMK04828B是一款低抖动时钟芯片,该时钟芯片支持多路同步输出,共有7组/14路时钟输出端口,每组包含两路时钟输出,分别输出器件时钟和SYSREF。该芯片具备数字延时和模拟延时调节功能,能够调节各路时钟之间的延时差,从而使器件时钟能够容易地捕捉到SYSREF信号的上升沿。
3.2 调试方法
3.2.1 SYSREF频率设置
SYSREF在脉冲模式下对频率没有特定要求。在周期性模式下,频率必须与LMFC之间呈整数倍关系。根据图3可得LMFC与SYSREF的计算公式如下:
其中,F表示一帧数据中的字节数,K表示一个多帧数据中帧的个数,R表示LMFC与SYSREF的频率倍数关系。
3.2.2 SYSREF建立保持时间调节
利用LMK04828B的数字延时功能调整SYSREF与器件时钟之间的延时关系来满足建立保持时间要求,还可以通过增加SYSREF信号的高电平持续时间来实现。如图6所示,用器件时钟的上升沿采集SYSREF信号的上升沿。SYSREF的高电平最小持续时间如式(3)所示,其中T表示器件时钟的周期,Tsu表示建立时间要求,Th表示保持时间要求。此时SYSREF高电平范围内有两个器件时钟上升沿,即便第一个器件时钟上升沿与SYSREF上升沿之间的延时不满足建立时间要求,第二个器件时钟上升沿依然能够采集到SYSREF的高电平。
通常情况下可以结合以上两种方法来使SYSREF满足建立保持时间要求。首先利用LMK04828B的数字延时功能调节器件时钟与SYSREF的延时,将器件时钟上升沿滞后于SYSREF,并保持一段较长的时间间隔。然后通过增加SYSREF的高电平持续时间来进一步保证建立保持时间。
3.2.3 SYSREF占空比调节
SYSREF的高电平持续时间并不是越长越好,当SYSREF高电平持续时间过长时,即使器件时钟采集到SYSREF的高电平,但是由于不易采集到SYSREF的低电平而无法被判定为采集到SYSREF的上升沿事件。通常由LMK04828B直接输出占空比为50%的SYSREF信号即可。
4 实验验证方案
本实验搭建FPGA串行数据自收发链路,通过调整接收端的SYSREF信号与器件时钟之间的延时关系以及SYSREF信号高电平持续时间来验证以上调试方法[4]。自收发链路结构图如图7所示。
自收发回路由一片FPGA和一片LMK04828B构成。FPGA选取Xilinx公司Virtex-7系列产品XC7VX690T[6]。该片FPGA上集成的高速串行收发器(GTH)的最高传输速率为13.1 Gbit/s。串行数据的发射与接收通过JESD-204B IP core来完成。该IP core的工作需要全局时钟(TX/RXGLBCLK)、GTH的参考时钟(TX/RXREFCLK)以及SYSREF信号,其中TX/RXGLBCLK作为器件时钟来捕捉SYSREF的上升沿。时钟信号均由LMK04828B提供。FPGA自收发回路之间通过4个lane传输数据,在串行速率4.8 Gbit/s条件下进行测试。JESD204B链路参数设置如表1所示。
根据Xilinx JESD204B IP core用户手册[7],全局时钟和参考时钟的频率计算公式为:
根据表1中的参数配置可计算出链路的LMFC以及SYSREF的频率:
为了能够产生高电平持续时间可控的SYSREF信号,由LMK04828B产生一路与RXGLBCLK同步且频率是RXGLBCLK 2倍的时钟信号,即图7中的CLK_GEN_SYSREF的频率为240 MHz。FPGA对该时钟进行分频产生接收端的SYSREF信号,并利用计数逻辑控制SYSREF信号的高电平持续时间。
5 实验结果
实验通过JESD204B IP core的sync、tx_tready、rx_tvalid信号来观察链路的同步状态和数据收发状态,其状态及意义如表2所示。图8~图11是SYSREF与RXGLBCLK的延时关系图,分别与实验1~实验4相对应。SYSREF与RXGLBCLK之间的数据关系如表3所示。延时关系中符号为负表示RXGLBCLK上升沿超前于SYSREF的上升沿,符号为正表示RXGLBCLK的上升沿滞后于SYSREF的上升沿。图12与图13是通过FPGA的ILA(Integrated Logic Analyzer)抓取的JESD204B接收端数据以及链路状态信号。
实验1对应的链路状态图如图12所示,此时sync、tx_tready、rx_tvalid信号均处于低电平状态,表明链路处于同步请求状态。由图2可知,接收端只有在连续接收到正确的/K/字符且LMFC对齐时接收端才会拉高sync以撤销同步请求。所以此时链路不通的原因可能有两个:(1)数据传输出现问题,接收端没有接收到正确的/K/字符;(2)LMFC没有达到对齐状态。
与实验1相比,实验2保持SYSREF的高电平持续时间不变,将RXGLBCLK的上升沿滞后于SYSREF上升沿2.49 ns。实验3、实验4保持RXGLBCLK与SYSREF的延时关系不变,增加SYSREF的高电平持续时间。实验2、实验3、实验4对应的链路状态图如图13所示,此时sync、tx_tready、rx_tvalid信号均处于高电平状态,表明链路已达同步状态,数据收发正常。从而证明实验1中链路不通是由于LMFC没有达到对齐状态所致,同时也证明了通过调节器件时钟与SYSREF的延时关系或者增加SYSREF的高电平持续时间均可使器件时钟捕捉到SYSREF的上升沿。实际调试中,可同时结合这两种方法进行调试。
6 结论
相比于并行传输总线,JESD204B高速串行协议在传输速率、信号同步性、抗干扰性能以及设计成本方面具有巨大优势,已逐渐成为数据转换器接口设计的主流方案,而Subclass1模式在JESD204B协议完成确定性延时功能方面具有重要作用。本文分析了JESD204B协议Subclass1确定性延时机制及其时钟设计要求,总结出Subclass1模式时钟调试方法,并设计实验验证了该方法的有效性,为JESD204B数据转换器的开发提供一定的技术参考。
参考文献
[1] 焦喜香,吴兵,李武建,等.基于JESD204B协议的高速雷达数字接收机设计[J].信息通信,2016(6):42-44.
[2] JEDEC.Serial interface for data converters JESD204B.01[S].2011.
[3] HARRIS J.What is JESD204B and why should we pay attention to it?[J/OL].JESD204B Survival Guide,2013[2017-09-04].www.analog.com/media/en/technical-docu-mentation/technical-articles/JESD204B-Surviual-Guide.pdf.
[4] 刘安,禹卫东,马小兵,等.基于FPGA的高速串行数据收发接口设计[J].电子技术应用,2017,43(6):48-51.
[5] JONES D. JESD204B子类:简介和确定性延迟[J].中国电子商情(基础电子),2015(3):24-29.
[6] Xilinx.All programmable 7 series product tables and productselection guide[Z].2015.
[7] Xilinx.JESD204 v6.1.LogiCORE IP product guide[Z].2015.
作者信息:
吕志鹏1,2,马小兵1,禹卫东1
(1.中国科学院电子学研究所,北京100190;2.中国科学院大学 电子电气与通信工程学院,北京100039)