摘要:在实时示波器上测量高速数字信号的眼图时,常规的眼图测量方法很难测到10个比特的眼图,力科的ISOBER技术可在实时示波器上快速测量与分析很低误码率时的眼图轮廓,为高速串行信号设计提供了更好的分析与验证方法。本文为笔者于2009年3月在美国力科公司时写的文章。
关键词:BER, 常规眼图测量,BER EyeContour,ISOBER,实时示波器
常规的眼图测量
眼图测试是高速串行信号物理层测试的一个重要项目。眼图是由多个比特的波形叠加后的图形,从眼图中可以看到:数字信号1电平、0电平,信号是否存在过冲、振铃?抖动是否很大?眼图的信噪比?上升下降时间是否对称(占空比)?眼图反映了大数据量时的信号质量,可以最直观的描述高速数字信号的质量与性能。如图1所示为某1.25G信号的眼图。可以看到该信号的抖动较大。另外,在很多高速数字信号的标准中,定义了不同测量点的眼图模板。图1的深蓝色部分是眼图模板,测量到的眼图不能触碰到该模板。
图1:某串行数字信号的眼图测量结果 |
在实时示波器中,通常使用连续比特位的眼图生成方法。力科于2002年在业界最早采用连续比特位的眼图测试方法,使用软件CDR恢复时钟,能快速测量眼图和抖动。如下图2所示,第一步示波器采集到一长串连续的数据波形;第二步,使用软件CDR恢复时钟,用恢复的时钟切割每个比特的波形,从第1个、第2个、第3个、一直到第n-1个、第n个比特;最后一步是把所有比特重叠,得到眼图。在测量中需要注意的是当前的眼图是多少个比特生成的眼图?
图2:连续比特位的眼图生成方法
什么是BER?
在数字电路系统中,发送端发送出多个比特的数据,由于多种因素的影响,接收端可能会接收到一些错误的比特(即误码)。错误的比特数与总的比特数之比称为误码率,即BitError Ratio,简称BER。误码率是描述数字电路系统性能的最重要的参数。在GHz比特率的通信电路系统中(比如FibreChannel、PCIe、SONET、SATA),通常要求BER小于或等于 。BER= 指的是发送/接收了10个比特,只允许1个比特出错。误码率较大时,通信系统的效率低、性能不稳定。影响误码率的因素包括抖动、噪声以及信号的速率。
基于误码率的眼图轮廓测试(BER EyeContour)-力科称为ISOBER
在上文中提到眼图是多个比特位的信号叠加得到的测量结果,所以测试中需要注意眼图是由多少个比特组成的?
使用常规的实时示波器来测量高速串行信号的眼图,在几秒钟内可以生成1万个比特叠加的眼图。力科示波器使用了创新的XStream专利技术,可以快速的生成眼图,以SDA816Zi测量3.125Gbps的XAUI信号为例,大概几秒就可以得到上百万个比特的眼图。即使如此速度,也很难直接测量到10个比特的数据叠加得到的眼图,与误码率联系在一起,即BER=10 时的眼图轮廓。假设每5秒测量到1M个比特的眼图,测量10的眼图需要5*10 秒 = 1388.8小时,可见对于示波器来说,测量BER=10的眼图是很有挑战性的。如图3所示为叠加了282万个比特的眼图。
图3:力科示波器的眼图测量结果
力科在2008年10月推出了新一代的串行数据分析选件——SDAII,SDAII可以测量某误码率的眼图轮廓,是目前实时示波器中唯一可以测量误码率眼图的解决方案。在力科示波器的操作界面如图4所示,在测量到眼图后,选择“ShowIsoBER”,点击Start IsoBERScan即可得到多个误码率下的眼图轮廓。缺省的误码率是从10的-6次方扫描到10的-12次方,起始BER和结束BER可自定义。基于误码率的眼图轮廓测试在力科SDAII中称为ISOBER。
图4:力科SDA2选件实现基于误码率的眼图测量
在力科示波器中,测量到一定数量比特叠加的眼图后,以眼的中心为原点,以若干条对角线对眼图进行切割,如图5所示的红色直线是对眼图进行切割,计算出眼图在每条切割线上的直方图,如图5中红色抛物线所示。使用MJSQ文档的Dual-Dirac模型对直方图的尾部进行拟合与外插值,推算出更多统计样本时的直方图分布,即低误码率时的直方图的极值。把每条切割线上的直方图在同一误码率的极值的座标用直线连接,得到图5下部分所示为各个误码率的眼图轮廓。为了保证直方图外插值的精度,通常需要累积上百万个比特的眼图后再进行ISOBERscan。(关于Dual-Dirac模型的详细介绍,参考MJSQ文档)
图5:力科ISOBER的原理
ISOBER的应用
ISOBER可以快速测量出低误码率时的眼图轮廓,对于高速串行信号的分析与验证非常实用。如下图6所示是用力科示波器测量两个3.125Gbps信号的ISOBER图。可见,在同样测量了140万个比特的眼图后,两者的眼图非常接近,眼高与眼宽也比较接近。但是,使用ISOBER扫描后,BER=10 的眼图轮廓相差较大。在BER=10时,左半部分的眼图轮廓远小于右半部分的眼图轮廓,说明右半部分的高速串行信号的整体性能优于左半部分的。
图6:两个串行数据ISOBER结果比较图
如果我们同时对两路串行信号进行抖动分析,抖动分解结果如表1所示。可以发现前者的随机抖动Rj较大(高达10.11ps),后者的周期性抖动较大(36.37ps)。由于BER=10的总体抖动Tj(1e-12) = Dj + 14.07 * Rj,随机抖动Rj对于总体抖动Tj的影响很大。尽管后者的Pj大于前者,但是前者的Rj大于后者,最终前者的Tj(1e-12)大于后者,所以不难理解为何前者的BER=10的眼图轮廓小于后者了。
| Tj(1e-12) | Rj(RMS) | Dj | Pj |
左半部分的串行数据 | 148.69ps | 10.11ps | 10.47ps | 5.82ps |
右半部分的串行数据 | 91.8ps | 4.1ps | 36.5ps | 36.37ps |
表1:两个串行数据信号的抖动对比 |
在串行数据链路中,随机抖动通常来自于高速收发器的时钟,参考时钟经过锁相环倍频后为高速收发器提供时钟,如果PLL的输入时钟的随机抖动较大时,经过PLL倍频后成比例增大(抖动放大倍数是PLL的倍数的平方)。对于左半部分的串行数据链路,需要测量和分析参考时钟和PLL。而周期性抖动通常来自于开关电源噪声和串扰,对于右半部分的串行数据链路,需要测量和分析高速收发器的电源噪声、PLL的电源噪声与抖动。
结语:在力科开发ISOBER之前,业界只能使用BERT或者采样示波器来测量基于误码率的眼图,而BERT和采样示波器的普及率较低。实时示波器作为电子工程师最频繁使用的通用仪器,力科的串行数据分析选件的ISOBER功能可以快速的测量低误码率下的眼图轮廓,为高速串行数据的分析和验证提供了更好的方法。
参考文献
1, Fibre Channel – Method Jitter andSignal Quality Specification – MJSQ, T11.2/Project 1315-DT/Rev14.1, June 5, 2005.