前段时间,一款国产3A大作《黑神话:悟空》横空出世,斩获了2000多万份的总销量。3A游戏不贵,但需要进行身临其境的完美体验需要动辄上万的高端CPU、显卡。在这基础上,将另一块技术推到了大众视野——云传输,顾名思义,庞大的图形计算在服务器中进行,通过云技术将处理后的数据以视频的形式独立传输。技术一旦成熟推广,用户端可用低端千元机、电脑享受数十倍性能的机器。
然而目前的技术仍然无法做到高清高帧,本质还是因为传输速率还远远不够,更别谈老生常谈的元宇宙构想,信号传输的速度一直是限制大家想象力的瓶颈。那么您是否对庞大的信号流传输产生过好奇?高速数字信号是如何在各个设备之间流转?为什么高速信号与传统数字信号传输不同?为什么要研究高速并行、串行传输方式?Serdes和GT收发器是什么?高速收发器又引入了哪些新的技术?笔者在《浅谈射频收发机》一文中简要介绍了无线传输的信号流动,本文将在数据传输的速度上进一步讨论。
高速并行传输
并行传输原理其实很简单且粗暴,即一根线传一位数据(1bit), 十根线传十位数据(10bits),此外辅佐控制线发号施令开始/结束传输,地址位指明具体设备传输,时钟线边沿判定传输数据的周期。如此看来,高速并行总线技术是一个一力降十会,同时也是符合逻辑与数学美感的技术。FPGA内部进行高速数据交互时便通常采用并行总线,可以达到同时几百甚至几千条线的传输;DDR通常也采用高速并行信号在板间传输。
然而高速并行传输却有三大问题:延迟问题,从布线、换层、拐弯、封装都需精确等长;速率问题,传输速度靠近射频信号时,匹配、干扰、串扰、功耗问题接踵而至;空间问题,平面板材连接使目前最高总线仅能最多达到64位。这三大问题显然很难通过数字系统本身的协议、编码来解决,都需要物理电路甚至材料层面的突破来解决,更别说板间并行线缆连接是更大的难题。工程是权衡的艺术,用户端希望得到更好的技术以满足更高的需求;供应端则是围绕降本增效的目标进行展开。
在这种条件下,提高单根线缆传输信号的速率便自然的被提上议程。这便是高速串行总线技术,延迟、功耗、空间问题得到缓解;而采用差分线传输信号,串扰、干扰等问题也得到改善。工业界综合成本考虑,于是乎使用串行总线进行高速数据传输应用越来越多。
高速串行传输
在现代的高速数据交互场景中,并行传输一般用于芯片内部和部分板内互联,串行传输一般用于板间的传输。例如在Xilinx 的ZYNQ芯片内,PS和PL直接的高速数据交互采样并行传输,而PCIE、USB、SATA、雷电HDMI、DisplayPort等广泛使用的接口则采用高速串行传输。
以PCIE为例,PCIe主要是由应用层,事务层,数据链路层和物理层构成。应用层定义了类型功能;事务层主要职责是TLP的发送和接收;数据链路层的主要职责是DLLP的发送和接收;物理层的主要职责是负责所有的包数据物理传输。对于接口电路的设计者而言,我们主要关注物理层,可以细分为逻辑物理层和电气物理层。逻辑物理层是纯数字逻辑,连接到数据链路层,主要职责是实现对数据在数字逻辑层面的操作。物理电气子层连接到通道链路接口,主要职责是实现功能包括串并转换,时钟恢复和差分驱动器等。
SerDes的全称是SERializer(串行器)/DESerializer(解串器)。实际上PCIE,JESD204B等复杂协议都是基于SerDes协议。常见的SerDes收发器更接近物理层,所以其通常又被称之为物理层(PHY)器件。在SerDes内部包括高速串并转换电路、时钟数据恢复电路、数据编解码电路、时钟纠正和通道绑定电路。主流的8B/10B编码SerDes则主要由物理介质相关子层、物理媒介适配层和物理编码子层所组成,且收发器的TX端和RX端功能独立。
笔者认为,并行传输本质是一种实现形式,串行传输本质是一种协议方案,两者并不冲突。比如USB 3.0物理上还是在USB 2.0上新增了线缆;PCIE x1/x4/x8/x16更是直白的成倍增加传输速率;SFP28也是四个单通道25Gb/s拼接成100Gb/s等等。串行传输的技术也能直白的通过添加引脚数来拓展速率,这何尝不是一种串并结合技术。
Serdes与GT收发器
GT本质上是基于SerDes技术的高速串行收发器,它是FPGA内部的底层电路,也叫做吉比特收发器简称为GT。目前Xilinx公司FPGA中有多种速率的GT收发器,速率大小满足为:GTP < GPX < GTH < GTZ < GTY < GTM,下图给出了各芯片型号支持的GT收发器类型及其最高速率。
GT收发器一般以Quad形式集成在芯片内部,含有4个GT TX/RX channel。每个GT收发器都包括一个独立的发射器,它由物理编码子层和物理媒介适配层组成。高速串行传输有两个技术要点,再定时技术与再整形技术。再定时技术对应CDR,即时钟数据恢复技术,这是由于高速传输时钟线很难保证质量从而导致误码,后来便不再需要时钟线,接收端根据接收到的差分数据信号进行CDR处理,恢复出时钟和数据。
上图展示了CDR块的架构。为了清晰起见,时钟路径用虚线表示。传入的数据首先经过接收均衡阶段。均衡后的数据被边沿和数据采样器捕获。数据采样器捕获的数据被送入CDR状态机和下游收发器模块。CDR状态机使用来自边沿和数据采样器的数据来确定传入数据流的相位,并控制相位插值器。边沿采样器的相位被锁定在数据流的转换区域,而数据采样器的相位则定位在数据眼图的中间位置。
再整形技术本质也是一种"数字预失真"原理,即预加重技术和去加重技术。可以说,吉比特驱动器的最重要特性也许正是其执行预加重的能力。射频电路在传输模拟信号时,非线性表现为增益压缩、IMD3、ACPR等现象;射频电路在传输数字信号时,非线性表现为符号间干扰、过冲、振铃、回钩等现象。本质都是一样的,两者均可通过预矫正的方法改善通道的非线性特性。
如上图便可以看到一段数据传输受到了严重的影响,这时通过对该数据电平进行预先的人为过冲,使其能够在真实电路中刚好回到标准电平。当然这只是举其中一些例子,实际应用时情况和数字预失真一样要复杂许多,需要对整个通道特性进行建模,从而采用合适的参数。下面是使用预加重后的眼图对比,可见其轮廓变得清晰可见(左),在高速传输时预加尤为重要。可见不论是射频模拟电路,还是射频数字电路,预失真技术都是提高电路系统性能的好帮手。
GTY传输效果展示
本文将使用安谱力的矢量信号收发器进行GTY实时传输大带宽信号进行实验。实验模块分为基带模块和射频模块两部分,基带模块主要处理基带编码,射频模块主要是进行基带—中频转换并运行射频算法如通道矫正、数字预失真等。基带模块与射频模块的传输使用Xilinx的GTY收发器,通过极细同轴线进行数据传输。射频模块没有外接控制,一直等待基带模块传过来的实时数据,基带模块通过JTAG连接到电脑进行控制。
基带模块发送编写并下载好的信号,进行传输。
分别实验了无数据传输、20MHz信号、160MHz信号和320MHz下的数据流实时传输。
静距离观测320MHz信号时的频谱分布
小结
我们可以看到,随着数据传输越来越快,串行传输和并行传输在逐渐融合,数字电路和模拟电路在逐渐融合并均靠向射频电路。越往后,系统集成的概念越突出,如何行之有效的在各学科间取其精华,去其糟粕并有机的融合在一起将是未来发展的主流趋势。当数据传输速度不再是瓶颈,人与人的接触便能打破空间甚至时间限制,进一步推动科技与社会的发展。