电源之家的笔记 https://bbs.21ic.com/?684002 [收藏] [复制] [RSS]

日志

JESD204B:如何计算确定性延迟?

已有 284 次阅读2015-12-21 16:16 |系统分类:电源技术

 

作者:Ken C  

 

在我的前一篇博客中,我解释了如何在发送 (TX) 和接收 (RX) 器件上对齐 LMFC 信号, 并采用释放缓冲器延迟
(RBD), 将数据释放点设定为跟随最新到达线道的预期抵达来实现确定性延迟。在本篇博客中,我将向您介绍怎样采用 TX 和 RX 器件的参数来计算预计的链路延迟。

 

总延迟为模数转换器 (ADC) 内核延迟与链路延迟相加之和。ADC 内核延迟通常可在 ADC
的产品数据表中找到。链路延迟则被定义为样本进入 TX 串化器、横越 SERDES 线道、穿过 RX 解串器并从弹性缓冲器输出的时间。这示于图 1。

 



1:从信号输入至并行输出 (S2PO)
的总延迟概要。其由 ADC 内核延迟和 JESD204B
链路延迟组成。您可以调节弹性缓冲器以优化链路延迟。


您可以采用下面的信息来计算链路延迟,这些信息应该能从 TX 和 RX 器件供应商那里获得:

·  
确定 TX RX 局部多帧时钟 (LMFC) 相对于
SYSREF
之到达的对齐(子类 1)。TX 和 RX LMFC 之间的任何偏移都将作为一个固定延迟。用于
TX 和 RX 的器件数据表通常把该参数提供为某个数量的帧时钟周期。差异由 tRX_LMFC -
tTX_LMFC 给出。

·  
计算引起系统变化的预期链路延迟。链路延迟开始于 TX LMFC 边沿并终止于 RX 解串器输出。链路延迟是 TX 串化器延迟 tTX
SER、线道延迟 tlane和 RX 解串器延迟 tRX SER 之和。

·  
选择用于提供针对延迟变化之裕度的弹性缓冲器释放点。通常,弹性缓冲器释放点被设定在最后一个线道到达之后的下一个 LMFC 边沿上。在该场合中,RBD
按默认被设定为距离前一个 LMFC 边沿 K 个帧(一个多帧)。这导致数据在最后一个线道到达之后, 在下一个 LMFC
边沿上释放。然而,如果所有的线道(包括系统变化)在 LMFC 边界之间的某个点上到达,则可把 RBD 设定为小于 K 以优化链路延迟。

 

 


2:链路延迟始于 TX LMFC
并终止于数据从弹性缓冲器释放之时。可采用 RBD < K 以优化链路延迟。


完成此操作后,您就能把链路延迟作为从数据进入 TX 串化器时的 TX LMFC
边沿到数据从弹性缓冲器输出时的延迟之复合来计算。这包括了器件 TX-RX LMFC 边沿之间的差异、涵盖链路延迟的多帧的某一整数倍、以及弹性缓冲器中的 RBD
数目的帧。这样,总延迟将为固定的 ADC 内核延迟 + 链路延迟。在下式中可将此作为帧周期的一个函数表达:


 

    链路延迟 = (N * K + RBD)
* Tframe + (tRX LMFC
tTX
LMFC)
           (1)


            
总延迟ADC = TLAT ADC +
链路延迟                        (2)


N = 覆盖链路延迟的全部 RX 多帧的最小整数倍


K = 一个多帧中的帧数量


RBD = 弹性缓冲器中的帧数量,最坏情况延迟假设 RBD = K


您可以通过满足下式的要求来决定参数 N,该式规定:链路延迟(TX 串化器延迟 + 线道延迟 + RX 串化器延迟)减去
TX-RX 延迟必须控制在 N 个完整的 RX 多帧 + 弹性缓冲器的 RBD 个帧的时间范围内:



    N * K + RBD
tTX SER + tlane + tRX SER

(tRX LMFC tTX LMFC)        (3)


  

作为实例,我们来看看图 3,该图给出了用于 LM97937 ADC 和 Kintex 7 FPGA 的参数 (K =
32)。



器件


一般性名称


数据表参数


数值
[
帧时钟周期]



LM97937 或 ADC16DX370 (TX)




……


……





……



Xilinx Kintex 7(JESD204 IP 内核
v5.1)




……


……




其他




……


3:用于
LM97937
Kintex 7 FPGA 的链路延迟参数实例


对于设定得小于 K 的 RBD(假设 RBD = 24),(3) 式将产生下面的不等式:


N * 32 + 24 ≥ (6 ± 1) + (±1) + (92
± 2) - (28 - 3.5)


N * 32 ≥ 49.5 ± 4


N ≥ 1.4 至 1.6


最小整数解由 N = 2 给出,而且由此产生的链路延迟((1) 式)和总延迟((2) 式)将为:

 

链路延迟 = (2 * 32 + 24) + (28
3.5) = 112.5 Tframe


总延迟LM97937 = (tLAT
ADC
+ 112.5)Tframe = 127 Tframe


 

2月份我将在我的下一篇博客帖子详细介绍如何选择 RBD 值, 以及一种用于测量和验证总延迟计算值的方法。


  


 其他资源:


·  
在此次培训演示中更深入地探讨 JESD204B 子类和确定性延迟。


·  下载我们的
JESD204B 白皮书,以此您可以在过渡到使用 JESD204B 时,获得关于必要知识的相关小贴士。


·  阅读更多的
JESD204B 博客。


·  了解 TI
的 JESD204B ADC、DAC、时钟和工具。


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)