概述
当使用现代宽带数据转换器时,管理产生的高速串行数据流是一个巨大的挑战。ESIstream是一个开源的串行数据接口协议,成本极低,支持多种FPGA架构的简单硬件实现,并占用最小的资源。简单来说,它是JEDEC的JESD204B子集1和2标准的开源替代方案。另外,ESIstream可为用户带来很多好处,这里将讨论其中的一些,包括低复杂度、低链接延迟和实现确定性延迟的简单方案。
本文将仅阐述ESIstream的架构,因为当前有很多文档已很好地描述了JESD204B的标准。然后我们将揭示这两种协议之间的细微区别,并介绍Teledyne e2v,ESIstream协议的开发者,已决定发布自己的ESIstream VHDL IP,以进一步简化用户的使用。
串行的历史
新千年以来,数据转换器技术和CMOS工艺的发展开始到达功能的瓶颈。起初,高速ADC和DAC(fs > 10 MHz)采用并行数据接口,这意味着在印刷电路板(PCB)上需从每个数据转换器上引出/引入大量的布线(图1)。随着采样率和输出数据速率的提高,PCB设计变得越来越有挑战性。而串行化接口,起初使用LVDS(低压差分型号),最近则使用串行器/解串器(SERDES)接口(时钟嵌入在数据流中),为这种数据传送的挑战提供了一种解决方案,并可简化PCB布线,大大推进形状参数的发展。这种接口的简化对链接的两端都有利(图1)。Serdes链接进一步简化了PCB的设计,因为无需保证数据线长度匹配。
图 1 串行链接如何降低互联负荷.
然而,经过了很多年,才有了一种串行方案解决了宽带数据转换器带来的所有系统级挑战。实现确定性延迟是同时采样的前提,人们付出了很多努力研究它。下表(表1)展示了过去12年甚至更长时间里JESD204标准的发展和开源ESIstream的发展。
串行数据的一个显著的优点是,当分辨率提高时,器件的封装无需包含额外的数据线,这可以帮助限制引脚数的增加。但是,串行化的缺点是由于引入了编码/解码流程,且通过某些额外的接收路径弹性缓冲器补偿路径之间的对齐度,导致增加了额外的传递延迟。
图 2 串行化引入互联延迟.
串行化也可帮助管理数据转换器的电源需求,因为它能降低单个器件需要的特定输出驱动器的数目。而且,通过实现差分串行线,可帮助减少复杂系统中产生的电气噪声,以保证良好的动态范围。另外,编码方案也可分散频谱噪声,而且差分信号可降低串扰。
事实上,直到现在,早期串行接口依然不能很好地支持多个并行通道的应用,设计师依然会面临板级设计的挑战。
ESIstream具体实现
现在让我们看一下ESIstream的核心要素。ESIstream使用14b/16b的数据编码算法,低有效位优先,支持超过13 Gbps的线路速率。它支持12位和14位的转换器。协议使用线性回馈移位寄存器加扰技术,为每个数据字加入不均等位和时钟同步位(2个bit的额外负担),如图3。通过这种方式,它的编码效率高达87.5%,比JESD204B(8b/10b的编码流)略高。不均等位(DB)可在CLK位切换使能同步监控时,保持数据链间的DC平衡。
图 3 ESIstream基本数据帧
ESIstream发射端(Tx)和接收端(Rx)核心的上层框图如图4和图5所示。
图 4 ESIstream的Tx路径
图 5 ESIstream的Rx路径
ESIstream编码算法被设计成可减少串行接口的物理限制。最重要的是,发射端和接收端之间的链接需要AC耦合。考虑到这一点,发射的数据要确保DC平衡,否则链接耦合电容可能漂移,导致数据眼图闭合,破坏接收的数据。
在接收端,时钟和数据恢复(CDR)模块通常使用PLL锁到发射的信号,这样无需使用独立的时钟线。但是,为了使得CDR锁定并保持锁定状态,需保证传送的信号经过特定的变换次数。
为发送的数据加扰是为了维持DC平衡,确保链接保持锁定。ESIstream的开发者希望限制数字设计的复杂度,于是采用附加的算法最小化错误传递。这种算法基于斐波那契数列,长度为217-1。此外还应用了14位的移位。转换流程输出的有用数据和线性反馈移位寄存器数据(伪随机码)进行异或操作,如图6。
图 6 通过与LSFR码异或实现数据加扰
加扰之后,14位的数据结果被编码成16位的数据帧。第一个附加位时钟位,随着每个连续帧切换。第二个附加位不均等位根据不均等计数器(RDC)的当前状态设置。两种RDC状态可导致:
1. RDC小于+/-16,不均等位设置为‘0’。
2. RDC大于+/-16,不均等位设置为‘1’,数据反向(按位非运算)。
这个操作可满足Rx PLL锁定的最小转换次数的要求,并满足链接DC平衡的需要。在正常操作下,接收端首先检查不均等位。如果它为高,则在去扰前反向接收的数据。如果它为低,则直接对数据进行去扰操作。
对于确定性操作,ESIstream要求链接同步,即发射端和接收端的数据帧对齐,链接两端的加扰引擎在同样的初始化状态。同步分两步,帧对齐和伪随机位序列(PRBS)初始化。
图 7 ESIstream链接同步帧
接收端通过使能SYNC启动流程。这个脉冲应该持续至少一个帧周期。然后发射端发送一个32帧的对齐样式(图7)。在接收端,这个保留的序列绕过加扰和不均等的处理,使接收端和发射端时序对齐。在对齐帧之后,发射端立刻发送一个32帧的PRBS数据——包含14位的PRBS以及时钟和不均等信息。经过正确地处理,接收端LFSR由接收端的PRBS字初始化。这时链接已同步(图8)。用户可在接收端通过观察时钟位,连续监控同步状态。如果时钟位在某一帧没有切换,则出现了同步问题,需复位链接重新同步。
图 8 ESIstream接收端线路同步序列
通过加扰以及时钟位和不均等位的处理,ESIstream可保证确定的数据传输。
同步GHz采样系统——不适合胆小者
在无线电系统中应用数字波束成形,需要同时采样天线阵列的低层信号。这需要保存信号到达每个天线节点的空间信息。 虽然这种方案复杂度较高,会带来额外的功耗,但其也具有一些显著的优点:
今天,很多应用使用波束成形,或者至少需要同步采样。但是,在GHz频率下工作时, IC和板级的信号的传播时间都非常重要。PCB走线被用于传输线,因此需保证信号线长度匹配以保持相位信息。每厘米的线长将增加60到75ps的传递时间。将其与6GHz采样时钟的166ps时钟周期相比,可以看出板级的效应会极大影响设计。这解释了为什么在高速采样系统中PCB布线是一个关键的因素。但是,还有另外一个因素会使设计变得困难,这个因素和时域有关,称为亚稳态。
同步链为ESIstream带来确定的延迟
亚稳态描述了数字电路中的一种不确定的状态,随着采样率的提高,它成为了潜在的系统时序问题的一个重要原因。用户需用同步的方法对抗亚稳态,这正是引入同步链的方案的原因。
用户需要一种可靠且简单的同步时序实现方法。在Teledyne e2v,确定性同步围绕着一对事件驱动的差分电信号建立:同步和同步输出信号(SYNCTRIG和SYNCO)。这些信号保证目标转换器的时序系统可被复位,并且所有的数字子系统都被恰当地锁定到主参考时钟。另外,这种同步方案可扩展到大系统中的多个ADC。
这种方案的优点在于非常简单——它无需额外的时钟信号,可保证系统生命周期内多个并行通道的同步。一旦设计完成准备生产,可使用一个训练序列建立正确的系统同步。如果环境条件变化,比如温度或电压变化,系统时序参数保持不变。同步链提供了一个非常可靠的同步源,这对产品量产是一个巨大的优势。
然后,为了实现确定性延迟,在ESIstream链路的接收端有一个简单的计数器和接收弹性缓冲,用于补偿传递过程的最大线路延迟不确定度。
图 9 ESIstream 接收器中的帧计数器的位置
FPGA 内部的计数器模块计算 SYNCTRIG 上升沿事件和“所有线路接收准备好”事件之间的 Rx 的时钟数。这些信息和弹性接收缓冲允许整个系统的接收数据对齐。这样,利用ESIstream 的产品带有的信号链功能,将确定性行为扩展到整个使用 ESIstream 的系统中的方法是可行的。
ESIstream VHDL 模块——发展的目标
为了使 ESIstream 更加易于使用,Teledyne e2v 的提出者 Teledyne e2v 在 2018 年底启动了一个项目,研发ESIstream Tx 和 Rx 的 IP 模块,用于行业内 FPGA 厂家(包括 Xilinx 和 Intel)提供的通用 FPGA。IP 将支持不同的运行速度,且适用于包括宇航级在内的不同等级的应用。毋庸置疑,IP 的重点在于为 Teledyne e2v 现有的产品系列提供匹配的性能。为了实现这个固定功能的 IP,Teledyne e2v 在底层做了很多工作以动态定义可配置的线速率模块,包含一系列广泛的数据转换器采样频率,并支持更多可定义的功能。
串行化的未来
Teledyne e2v 未来的开发计划还包括用于 ESIstream 物理层的光纤应用。光纤允许转换器被放置在距离 FPGA 很远的地方,而不是基于铜线的接口(PCB 走线或同轴电缆)。通过将两块 Xilinx VC709 评估板使用四个 SFP (小型可插拔) 光线路连接并运行在 6Gsps 的速度,证明了上述的特性。
图 9 使用物理层的光纤演示 ESIstream Tx 和 Rx
在经过完整的测试和认证后,VHDL 代码模块将被放置在网站上,供用户免费下载。
ESIstream 和 JEDEC 对比
ESIstream 的系统级优点可简单概括如下:
无需每个器件的 LMFC 时钟,无需 LMFC 时钟的对齐操作。
仅需要一次系统的训练。一旦得到延迟参数,对于给定的设计这些延迟参数将维持不变。这意味着 ESIstream是一种易于量产化的接口。
结语
JESD204B 子集 1 和 2 里描述的 JEDEC 数据串行化方法似乎解决了多通道数据转换器系统的确定性操作的挑战。这在一定程度上无疑是正确的,但是通常被忽视的是设计师在处理复杂传输和规格物理层需求时遇到的众多挑战。工程师通常认为用于信号处理 SoC(FPGA 或 ASIC)的 JESD204B 许可证和核心 IP 可帮助解决大多数设计上的问题。但是,据报道,很多事实和经验表明,JESD204B 引入的多域时钟复杂度的时序约束,给 PCB 的设计带来了很大的麻烦。
还有另外一个方法。ESIStream。ESIStream 是一个开源免费的协议。它与 JESD204B 的性能等级相同,但能带来更好的用户体验。低复杂度,易于设计,低功耗。现在,随着用于工业标准 FPGA 的 Rx 和 Tx 的 IP 模块和 VHDL代码模块的发布,大大降低了 ESIstream 的使用难度。目前 IP 模块在开发阶段,会支持 Teledyne e2v 新数据转换器的规格。另外,用户可免费下载适用于自己的高速串行项目的 VHDL 代码模块。
关于 Teledyne e2v
Teledyne e2v 的创新引领着医疗、生命科学、宇航、运输、国防、安全和工业市场的发展。Teledyne e2v 特有的方法包括了解市场和用户应用的挑战,然后与用户合作,提供创新的标准化、半定制或全定制的解决方案,为用户的系统带来价值增长。Teledyne e2v 拥有世界领先的再设计和向上筛选的商业技术,与 NXP 有超过 30 年的战略合作关系,开发 NXP 商业处理器的宇航级、军级和工业级版本。Teledyne e2v 可获取原始测试向量,保证基于QorIQ® Power® 架构系列产品的高可靠性,而且其正在研发基于 NXP Layerscape 系列的解决方案。
更多信息,请访问: http://bit.ly/ESIstream