JESD204C 的确定性延迟框架和要求与 JESD204B 标准类似。JESD204C 文档中的图 5 准确描述了实现确定性延迟这一终极目标。请注意,虽然该图中描述的是在 8B/10B 编码下运行的情况,但缓冲区释放的相同原则也适用于在 64B/66B 和 64B/80B 编码下运行的情况。下文总结了实现确定性延迟所需执行的步骤。
- 系统设计人员将多帧 (8B/10B) 或扩展多块 (64B/66B) 的长度设置为大于整个链路中 J-RX 通道可能的最大延迟变化。
- 链路 J-RX 通道中缓冲区的大小也必须大于延迟变化,才能吸收 J-RX 通道的延迟。一旦所有 J-RX 通道都接收到每个通道的时间戳,便会将缓冲区释放。缓冲区主要吸收 J-RX 通道中接收到的数据之间的延迟差异。
- 每个通道都有其各自的缓冲区。较早到达的通道使用的缓冲区较多,而较晚到达的通道使用的缓冲区较少。收到时间戳信号后,所有缓冲区都会同时释放。
- 系统设计人员可以对释放点进行微调。对释放点进行调整主要会将释放点从“不确定性”区域移走。
JESD204C 引入了以下这些可以改善确定性延迟设置的新功能:
- 目前,RBD(释放缓冲区延迟)在 JESD204B 8B/10B 编码中被定义为调整步骤,而非固定帧周期。
- 每个多帧的帧数上限 (K) 目前从 32 增加到 256。这表示必须在 J-RX IP 中采用更长的缓冲区(主要是指将用于 64B/66B 编码 IP 的缓冲区重新用于 8B/10B 选项)。
注意,尽管对这三种编码选项而言,释放缓冲区延迟的原理和用以实现确定性延迟的缓冲区的运行是相同的,但系统开发人员必须知道其定义中存在的一些差异。待释放的缓冲区的时间戳指示器如下:
- 8B/10B 链路:最后一个 /K/ 字符到第一个位数据或初始通道对齐序列起始位置之间的位转换的最早通道和最晚通道时间差。
- 64B/66B 或 64B/80B 链路:多块中第一个块的同步报头内的位转换的最早通道和最晚通道时间差。
此外,存在偏移预算的完整修订版本。JESD204C 规范的第 4.3 节包含详细的分析和设计实施建议。解释规范时,请牢记以下方向差异定义:
- 转换方向:规范专门针对生成的偏移。
- 接收方向:规范专门针对偏移容限。