芯片功能的增加和数据吞吐量的要求,促使芯片行业从较低数据率的并行连接,转向较高速度的串行连接。
SERDES(Serializer-Dese rializer,)是经高速差分对,而不是经较低速度的并行总线传输串行化的数据。
一个实例是用单个PCI-Express通道,替代传统的32位、64MHz PCI总线(可达到2.112Gb/s),仅用4条线(运行在2.5GHz),可达到4Gb/s 总数据率。
简言之,SERDES协议允许用较少的引脚数传输较高的数据率。
典型的SERDES的FPGA实现
图1给出在复杂的FPGA实现中各种可能的SERDES接口,包括数据通路(芯片到芯片,SPI 4.2,PCI-Express,SGM11)、背板(GbE/GSM11,PCI Express/AS,专用)接口、存储器接口(DDR1/ⅡSDRAM,QDRⅡSRAM)。
可由FPGA实现的芯片包括存储器控制器、帧调节器/MAC、DSP协处理器、控制板接口和背板驱动器。
SERDES接口有两类:源同步(SS)接口和时钟数据恢复(CDR)接口。
这两类接口的基本差别是如何实现同步。
源同步接口有一个伴随传输数据的分离时钟信号。
CDR没有分离的时钟信号,代之以嵌入在数据开关转换中的时钟。
这就是说,CDR接收机将锁相数据信号本身来得到时钟。
表1给出这两类接口的基本差别。
CDR接口通常运行在较高的速度和较长的距离,因而会带来较大的设计问题。
基于此原因,本文主要集中在CDR方面。
图1 典型的SERDES应用
时钟数据恢复
时钟数据恢复(CDR)接收机必须恢复来自数据的嵌入式时钟。
更确切地说,时钟起源于数据信令的开关转换。
CDR发送到串行化数据开始,然后,变换数据为8b/10b(或类似的编码方法)。
编码取8位数据,并变换此数据为10位符号。
8b/10b编码在
数据线上提供一个相等“0”和“1”传输。
这会减弱符号间干扰,并提供足够的数据沿,使接收机锁相在输入数据流。
发送器将增加系统时钟到发送位率,并以此位率发送8b/10b数据到TX差分对。
CDR接收器的工作从在RX差分位流上锁相开始。
然后,接收器在每个恢复时钟位校准数据。
下一步,数据在接收器的参考时钟校准字。
最后,数据是8b/10b译码,准备用于系统。
在CDR系统中,发送和接收系统,通常具有独立的系统时钟。
两个时钟都处在特定的变化要求内,这是关键。
此阈值是几百PPM(百万分率)量级。
CDR接口的主要设计问题是抖动。
抖动是实际数据传输布局的相对理想状况。
总抖动(TJ)是由确定性抖动和随机抖动组成。
大部分抖动是确定性的,其分量包括符号间干扰、占空比失真和同期抖动(即来自开关电源的干扰)。
随机抖动往往是半导体热问题的副产物,而难断定。
发送参考时钟、发送PLL、串行器和高速输出缓冲器,都对发送抖动有贡献。
发送抖动通常标定为给定位周期或数据眼图的单位间隔(UI)百分比。
例如,抖动.2UI表示抖动为位周期20%。
对于发送抖动,U1数越小越好,这表明抖动较小。
表1 源同步和时钟数据恢复
同样,CDR接收器标定在给定的位率所允许的最大抖动值。
典型的误码率标准是1e-12(每1e 12位一个误差)。
接收抖动也标定为U1。
U1越大,表明接收机可以允许更大抖动。
典型接收机指标是.8U1,这意味着位周期的80%可以是噪声,而接收机仍然能够可靠地接收数据。
抖动通常用统计bell分布量化表示。
SERDES测试和眼图
由于抖动是SERDES系统中的主要解决的问题,所以,抖动也是测试测量的一个焦点。
测量抖动是用高性能示波器连接SERDES 信号,观测“数据眼图”。
对于给定差分对r的眼图是很多状态过渡的重叠。
取样窗口足够的宽,能保证包含图中的两个交叉点。
这种合成图看起来象一个眼睛,此图提供信号质量和抖动的直观目测方法。
总之,眼睛打开越宽,信号越好。
图2示出在示波器上看到的典型眼图。
在此眼图中,V量测对1.2V总电压摆幅(从逻辑O到逻辑1)的眼打开的高度。
有3个宽度(或时间)测量:U1量测全位周期,H量测共模电压下全打开,T量测最小和最大解扣电压间的宽度。
H、T和V值越大,表明眼睛越宽、因而,信号越好,抖动越小。
图2 数据眼图
抖动测量装置
为了检测发送抖动,由误码率测试器(GERT)产生测试图形,并送到评估板的SERDES接收端口。
同样,时钟产生器连接到评估板的SERDES时钟。
把FPGA配置为内部环回被测信道。
这样,被接收的测试图形在TX引脚发送。
示波器连接到TX SERDES 连接器,这样可以分析发送抖动眼图。
所有评估板SERDES连接都用50? SMA连接。
图3示出这种配置。
用FPGA SERDES接收端口处的施感抖动和监控环回SERDES输出的误码,来测量接收抖动容限。
连接抖动产生器到BERT 图形产生器(见图3)。
BERT产生器送一个伪随时机图形序列到评估板的SERDES SMA输入。
这种配置可使工程师在控制状态下,引入抖动到SERDES RX端口。
配置FPGA用于环回,SERDES TX端口连接BERT上的误码检测器端口,工程师引入抖动,并观察FPGA所产生的误码率(BER)。
当BER超出技术要求时,就可知道已超出抖动容限阈值。
对于FPGA,此数值就等于或大于特定的接收抖动容限。
图3 抖动测试设备配置
背板性能测量
通过一个背板配置驱动FPGA的TX信号,可以测量FPGA的SERDES链路发送特性,并可以分析背板输出的眼图。
此装置首先用BERT图形产生器,把PRBS位流馈入FPGA评估板的SMA RX端口。
用环回配置的TPGA,PRBS将呈现在评估板TX 端口,并驱动馈入背板的同轴缆线。
系统要求决定测试参量,如PRBS图形选择,背板和FPGA评估板线长、用轴缆线长度、预矫和均衡设置、工作温度和Vcc。
图4示出用Lattice SC FPGA,此测试装置采样的9个眼图。
每个眼图下面的数字是测量的眼高(由图2测量V)。
注意,增加预矫可改善每个位率下的眼图。
预矫是发生在缆线和背板中信号衰减的SERDES发送器补偿。
这种Lattice SC FPGA,所需的眼高度是85mV,所以,16%预矫,在3.8Gb/s取晴图仅仅是取样,这不能满足要求。
图4 在不同SERDES数据率增加预加重
结语
本文给出了SERDES接口的FPGA实现方法在选择FPGA时,应该考虑可能的信道数、信道的配置灵活性、接口速度、SERDES IP、传输性能指标和电气性能要求。
FPGA产品和SERDES的速度和市场占有率正在增大。
了解它们的能力和所遇到的问题,设计人员可以增加其产品的可靠性功能,以及加快上市时间。