Jitter 寻根溯源

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Jitter寻根溯源
-译自《Finding Sources of Jitter with Real-Time Jitter Analysis》
Agilent Application Note 1448-2
邵鹏IBM集成电路设计中心2009年
前言:
工作于高速设计领域十年有余,工作的时间越长,觉得要学习的东西就越多。

这十年间,从PCI到PCIExpress2.0,USB到USB3.0,SDRAM 到DDR3,从几十MHz的并行总线到6.25GHz,甚至12GHz的高速差分连接,新的总线、接口形式层出不穷。

尤其在高速系统设计中需要考虑的因素越来越多,相应的测试仪器和测试手段也不断推陈出新,测试的项目和仪器功能也越来越单一化和专项化。

这就需要我们在高速系统设计中具有扎实的理论基础,不论是在设计还是测试过程中始终要保持清醒的头脑,对系统中出现的各种现象和相关因素有比较清晰的分析脉络。

抖动(Jitter)对高速系统的性能影响越来越大。

在众多的介绍抖动测量的技术文章中,译者认为这篇文章结构清晰流畅,内容详实完整,对于设计工作有比较大的指导价值,推荐给各位同行。

本文原文为英文版本,译者初次阅读时感觉比较吃力,所以于工作闲暇之余,将之翻译成中文,抛砖给各位同行,希望能节省一些您的时间。

不过,如果读者有能力,还是推荐读原文,以免在我的翻译(包括非正规的术语,笔误等)误导您。

因为这毕竟不是正规出版物,仅仅是出于个人爱好,用于技术交流之用。

本文从抖动的外在表现形式出发,结合仪器的使用,着重于对抖动的来源进行分析和测量,并没有过多介绍抖动内在物理参数的数学理论分析,对于这部分内容,可以参照本文的姊妹篇《Measuring Jitter in Digital Systems-AN1448-1》。

由于时间的关系,先翻译姊妹篇的后一篇,也是因为这篇文章具有更强的实际指导意义,如果大家反映比较好,随后再翻译第一篇。

声明 :
本译文译自Agilent科技公司的应用文档。

本译文仅从技术交流的目的出发,不用于任何出版等商业目的。

如果Agilent公司认为此行为影响到该公司的商业利益,请联系本人解决,谢谢。

Email: Shaopeng@
随着数据速率的提高,抖动(Jitter )对系统的影响变得越来越重要,抖动余度的设计空间也越来越紧张。

类似于误码率测试仪BERT (BitErrorRatioTester )等测试仪器用来测量高速数字系统中全部抖动(以下简称TJ )和眼图睁开的最坏情况,并依据工业标准给出符合性测试结果。

另外,一些实时的仪器可以分辨随机性和确定性抖动成份,并以此来推测最坏情况的TJ 和基于一定误码率(BitErrorRatio )下的眼图睁开情况,通常要求误码率在10-12。

但是,如果符合性测试结果不能满足其中某个特殊的测试项或者余度太小以至于对系统稳定性并不放心,那么仅仅得到全部抖动TJ 的测试结果并不够,还需要进一步的测试以找到抖动的真正来源。

本文着眼于使用具有抖动分析功能的实时示波器的工作方法和技巧,以及使用高速Pulse/Pattern 信号发生器帮助分离抖动,并采用时间相关技术观察、识别和测量系统性时间错误。

第一部分第一部分::理论篇
认识认识抖动抖动抖动((Jitter )
抖动就是信号相对于其理想时间位置的偏离。

传统上,对抖动的测量就是依靠示波器上的眼图采样,如图1所示。

从这个合成的眼图上来看,也许你会认为抖动的最坏情况就是眼图中的信号上升沿/下降沿的宽度,或者你会认为被测量信号都是在同样的范围内抖动着。

然而,这些猜测很可能是不正确的。

抖动的构成比较复杂,由确定性抖动(以下简称DJ )和随机性抖动(以下简称RJ )两大部分构成。

RJ 在理论上是无界,呈高斯分布。

简单讲,“无界”就是如果你测量的时间足够长,那么抖动的峰峰值理论上是无限大的。

从这个意义上讲,你任何时候测量到的眼图都不是“最坏”情况(译者注:因为不可能进行无限长时间的测量)。

如果在系统中只是
具有RJ 成份,那么眼图的上升沿和下降沿应该具有同样的定时误差特性。

DJ 是有界的,并且DJ 并不遵循任何可预期的分布。

DJ 由一些其他成份构成,通常是由于高速设计时的系统错误引起。

正是由于这个原因,DJ 通常又被称为系统抖动。

如果你能观察信号中的每个边沿,你可以看到这些边沿是如何对时间错误(也就是抖动)产生影响的。

依赖于不同的数据模式,相对于信号的理想时间位置,有些信号的边沿总是向右偏移(或称为正向时间错误,positive timing error ),有些信号的边沿却总是向左偏移(负向时间错误,negative timing error )。

而RJ 会在DJ 的基础上使得这些信号边沿随机的抖动。

根据眼图,你可以快速判断系统中的抖动是由RJ 还是由DJ 主导,或者是由这两种抖动的共同作用。

使用可变余辉或者色彩分级示波器,你可以在眼图中观察到由于长余辉留下的一些明亮的轨迹。

参看图1,可以看到一些明显的高亮轨迹(译者著:无论是上升沿,还是下降沿都有两条高亮的信号轨迹)。

这就意味着在这个系统中,存在确定性抖动DJ 。

这些高亮轨迹分布在信号边沿的不同位置上。

实时示波器能够让我们逐个观察这些信号边沿,在本文稍后部分,我们再讨论这个问题。

另外的一个来确定RJ 和DJ 的方法是使用示波器的直方图功能,图1中下方的直方图可以告诉我们,这个边沿分布情况是来源于RJ 和DJ 的共同作用。

如果概率分布函数ProbabilityDistributionFunction (PDF )是高斯分布(典型的钟形曲线),那么系统中主要由RJ 构成。

图1中这种双模(Bi-modal )曲线分布预示着系统中存在明显的DJ 成份。

实时实时抖动抖动抖动分析分析
使用BERT 和实时的RJ/DJ 分离技术来测量系统的TJ ,可以知道系统中Jitter/Timing 设计余度是否满足规范。

使用直方图,可以直观的了解系统中抖动类型和大小。

但是这两种测量/观察,都不足以让你知道如何去分辨、观察,以至于如何减小某种抖动成份。

这也正是实时示波器存在的原因。

使用实时示波器进行抖动分析的一个主要原因是,它能够在一个相对较长数据流内对每个数据或者时钟脉冲进行采样、存储和分析。

实时示波器和抖动分析功能能够对特定的时间相关抖动进行分析,以确定特定的数据或者信号是否对系统抖动构成影响。

图2中描述了实时抖动分析的一种方法,通常称为时间间隔错误TimeIntervalError (TIE ),或者相位抖动测量。

实时示波器首先对要测量的NRZ信号进行存储,然后用软件从存储的数据中恢复出理想时钟。

基于用户的选择,软件恢复的理想时钟可以是固定频率的,也可以是在一定频带内摆动的PLL类型时钟。

然后抖动分析软件采样最佳匹配算法(Best-Fit)来对齐采样数据和理想恢复(虚)时钟的边沿。

如图2中蓝色的Clock信号,就是恢复出来的理想时钟,通常这个时钟是不会在示波器上显示出来的。

它仅仅是示波器计算的一个功能,用来做为TIE测量的一个理想时钟参考。

实时示波器中的抖动分析软件通过对比数据边沿和理想时钟边沿的时间,在指定的判决门限下,进行时间误差测量。

对恢复的时钟信号,无需指定判决门限,因为它是理想参考时钟。

对所有的采样数据进行测量之后,可以通过三种方式来观察时间误差的测量结果。

在图2中的Trend波形中,横轴是示波器的时间轴,纵轴是采样数据和理想时钟之间的时间误差大小,也就是时间误差量vs时间。

Trend曲线给出了每个数据时间相关错误的观察结果。

在数据依赖抖动分析中,Trend曲线是分析和特定数据比特位相关的时间相关错误的有利工具。

在周期性抖动PeriodicJitter(以下简称PJ)分析中,Trend曲线可以用来和示波器上的其他信号进行时间相关分析。

PJ的特性将在本文的后部讨论。

(译者注:图2中的Trend曲线只是示意图,它并不是真正由图2中Data波形和Clock波形计算而来。

因为根据Trend曲线的定义,图2中的Trend曲线是错误的。

比如按着图2的波形,在第一个Clock曲线上升沿,Data波形滞后,Trend值为正,这个是对的。

但是在第二个Clock 曲线上升沿,Data波形还是滞后,Trend值也为正,那么Trend曲线上应该是个增量,而不是如图中所示向下变化。

在这个Trend曲线中,还有几处类似的错误。

译者和Agilent的工程师讨论过这个问题,确认这个图只是个示意图,Trend曲线并不是由本图中的Data波形和Clock波形计算而来。

切记!以免误导。


另外一个观察抖动的方法是频域分析。

对TIE 的Trend 波形进行FFT 计算可以得到相应的频率分量。

在图2的例子中,Spectrum 曲线既是频率及其对应幅度的表示。

频域分析方法对于非相关的PJ ,和数据信号非时间相关的PJ ,非常有帮助。

直方图的方法是显示抖动(包含所有的TIE 结果)的概率分布,横轴是时间误差值,纵轴是相应的时间误差值出现的次数。

实时的直方图结果应该和眼图测量结果中的直方图密切相关。

然而,实时采样的数据是由一个信号的多次采样结果构成。

换句话说,你可以观察到抖动在一个采样的分布。

进一步,由多个重复的实时采样构成的实时抖动直方图分析能更准确完整地表达抖动概率分布。

(译者注:此处翻译有些拗口难懂。

实在看不懂的话,可以参看实时示波器和采样示波器的技术文档,弄清楚实时示波器和采样示波器的原理,这里自然就明白了。


抖动抖动各分量的典型特征各分量的典型特征
为了更好地解释测量结果和实时抖动分析所用的方法,必须先了解抖动的各个构成部分和特征。

仅仅知道RJ 呈高斯分布,DJ 是非高斯分布是不够的。

正如前面所讲,TJ 是由DJ 和RJ 构成。

RJ 是无界的,因此RJ 通常用RMS (RootMeanSquare ,均方根)来衡量。

并且RJ 在分布上是可预期的,其PDF 通常是高斯分布。

然而,RJ 产生的原因非常复杂,不在本文的讨论之内。

RJ 通常有半导体的热效应引起,需要对物理学有足够的了解。

一个建议就是要非常注意系统中的VerticalNoise ,(译者注:第一次看到这个名词,猜测应该是指系统中的EMI 。

待确认。

)随机的VerticalNoise 会直接导致随机时间抖动。

DJ 是有界的,因此会用Peak-to-Peak 值来测量。

尽管DJ 的分布是不可预期的,但是DJ 的各个构成成份和特征是可预期的。

如图3所示,DJ 通常由占空比失真DuctyCycleDistrotion (DCD ),码间干扰InterSymbolInterference (ISI ),和周期抖动PJ 等构成。

下面我们将详细讨论DJ 的各个分量产生原因和特征。

DCD 的产生有两个基本的原因。

假设信号发送端的输入数据是完美
的,但是由于发送端的判决门限偏离理想位置,那么发送端的输出信号中就会产生占空比失真DCD,这种失真是输入信号边沿斜率的函数。

参看图4所示,点虚线是理想的输出波形,50%的占空比;绿色实线是判决门限提高后的输出波形,随着判决门限的提高,输出信号的占空比会减小,小于50%;相反,如果判决门限降低,那么输出信号的占空比就会大于50%。

这个信号的TIE测量结果中,在上升沿会有个正向时间错误,在下降沿会有个负向时间错误。

TIE最后的表现出数据信号一半的变化频率。

TIE 曲线的相位依赖于信号判决门限是升高还是降低。

如果在这个系统中没有其他的抖动源,那么这个DCD 抖动的峰峰值是个常数。

不幸的是,其他的抖动源,例如ISI,通常是存在的,这使得很难分离DCD中的各个分量。

但是有一个方法,你可以尝试在系统中重复发送1010…模式的数据。

这样可以消除ISI分量,从而使得在时域和频域分析DCD更加容易一些。

通过对DCD的频谱分析,在相当于数据速率一半的频点上应该会出现一个峰值。

产生DCD的另外一个原因就是上升沿和下降沿的不对称性。

在发送1010…模式的数据时,如果下降沿相对于上升沿缓慢的话,就会产生一个大于50%的占空比,相反,如果上升沿相对于下降沿缓慢的话,就会产生一个小于50%的占空比。

尽管本文中没有图形显示这种情况,但是抖动分析结果和TIE曲线和图4中的例子是一致的。

码间干扰有时称为数据依赖型抖动,通常是由于发送端或者传输信号的物理介质的带宽有限性引起。

如果减小发送端或者物理介质的传输带宽,信号的上升和下降时间就受到限制,结果引起传输信号幅度的改变,这种改变不仅依赖于重复发送的比特位长度,也会依赖于先前的发送信号。

进一步,不恰当的终端阻抗,或者物理介质的不连续性都会引起信号反射,从而表现在码间干扰上。

尽管我们在文章中会将这两种现象(带
宽限制和反射)对码间干扰造成的抖动分开来讨论,但实际上由于反射而引起的波形失真也是带宽受限的一种形式。

图5展示了一种由于带宽受限问题而引起的码间干扰型抖动。

由于传输带宽受限,影响了信号的边沿变化速率,而受到限制的边沿变化速率会引起高速信号的幅度发生变化,信号的幅度发生变化最终会造成信号的传输时间错误。

现在让我们进一步来考察一下这个例子。

当发送一个长的连‘1’比特串后,信号幅度会达到一个稳定的高电位,如图5中所示的A点。

当随后的信号状态变为‘0’时,那么信号需要相对比较长的时间才能从高电位达到‘0’的判决门限,这样在图中紫色的Trend曲线B点就会有个正向的时间错误(译者注:信号转换时间滞后于理想时间位置)。

需要注意的是,Trend曲线上的这个B点位置是和信号的状态转换时间对齐的。

长‘1’比特串之后的‘0’信号峰值幅度由于两个原因而造成衰减的:第一,由于先前的长‘1’比特串的存在,使得信号需要更长的时间从相对较高的电平转换到低电平;第二,跟随在‘0’之后的‘1’信号使得信号在真正到达低电平状态前就开始向相反的方向变化。

这样的信号幅度变化就使得Trend曲线在随后的‘1’比特信号上产生了一个负向时间错误,因为信号用了很短的时间从‘0’变成了‘1’,如图中的C点所示。

在图5中的D点,发生了正向的时间错误,其产生的原因和先前讨论的B点情况一样。

在一个长‘0’比特串后,信号有足够的时间达到稳定的低电平状态,当信号随后想恢复高电平状态时,它同样需要较长的转换时间,从而产生了一个正向时间错误。

一旦理解了带宽受限对码间干扰型时间错误的影响,就很容易地理解由于码间干扰而引起的Trend曲线特征,也能理解Trend曲线和被测信号的时间相关性。

除了带宽受限,另外一种常见的引起的码间干扰的原因是物理介质的
阻抗不连续,或者不恰当的终端匹配。

如图6所示,信号的反射会引起信号幅度上的形变。

依赖于物理介质的阻抗不连续点之间的距离,一个脉冲所引起的反射会出现在随后一连串信号中的某个比特位上。

在图6中,箭头指示的起止位置就是产生反射的信号和反射最终所影响的比特位置。

如果发射所引起的信号幅度畸变,恰好发生在靠近或正好是数据状态转换的边沿,那么就会引发一个时间错误。

如图6中A点所示,当反射发生靠近在信号状态转换边沿,引起信号幅度的负向衰减,那么就会使得信号有较短的“距离”进行状态转换,从而引发一个负向时间错误。

而如果反射引起信号状态的增强,那么信号就有用更长的时间进行状态转换,从而引发一个正向的时间错误,如图中的B点所示。

所以,由于信号反射而引起码间干扰是很难区分和识别的。

不管怎样,如果你的系统中有信号反射问题,也就意味着系统中存在带宽受限问题。

周期性抖动PJ通常是由于交叉耦合或者EMI问题引起,可能和信号相关,也可能和信号非相关。

一个和信号非相关的PJ例子就是系统中的开关电源切换信号耦合到数据或者系统时钟信号中。

因为开关电源切换信号是在一个不同的时钟域上,信号和数据或者系统时钟是无关的,所以这种情况被认为是非相关周期抖动。

如果周期性抖动是由于周边同时钟域或者相同频率的信号耦合引起的,那么这样的周期性抖动就是相关的周期性抖动。

图7给出了一个容性耦合的例子,“侵害”信号是最上面的那个曲线,耦合到中间的高速串行信号当中。

这种耦合明显引起信号幅度的变化。

类似于由于反射而引起的码间干扰的例子,如果这种幅度的变化发生在信号转换的边沿,那么同样会引起时间错误。

由于大多数的周期性抖动PJ都是和数据信号本身非相关的,所以任何试图对Trend曲线和数据信号之间的相关性分析都是徒劳的。

在本文的稍后部分将指出,对于非相关的周期性抖动,通过抖动频谱分析的方法都能检测到。

第二部分部分::实践实践篇篇
在现实中分离在现实中分离抖动抖动抖动成份成份
在上一篇中,我们已经通过例子说明了抖动的各个组成成份,并且理论上通过Trand 和抖动的频谱分析可以观察抖动的组成。

但是在现实世界中,抖动的各个成份并不是独立存在的。

如果在你的系统中存在多种抖动成份,那么这些成份通常纠结在一起共同构成系统中总的抖动TJ ,你所观察到的是最后的综合结果,而且很难解释清楚。

如果你熟悉游戏厅中“打地鼠”游戏,可以用这个做个类比。

在这个游戏中,某个时间会有一个地鼠冒出头来,你要用一个锤子把它打回去。

这和我们想对付抖动一样。

如果“地鼠”(抖动)是一个一个单独地冒出头来,那么我们可以马上看到它并把它“打”回去。

但不幸的是,在一个现实的系统中,所有的“抖动地鼠们”会同时冒出头来,这就很难分辨出它们从哪里冒出来的,并决定先把哪个“地鼠”打回去。

但是我们有一些激励-响应技术,可以使得我们能够分离、测量并观察不同的抖动分量。

一旦你成功地分离了各个抖动分量,那么你可以将最坏抖动情况和特定的数据转换关联起来,然后采用典型的调试技术来解决抖动问题,把这些“抖动分量-地鼠”一个个打回去。

分离抖动分量的基本工具就是具有灵敏的抖动分析功能实时示波器,类似于图8中的Agilent 6Ghz 54855A 。

另外,高速的Pulse/Pattern 信号发生器,如图9中的Agilent 3.35Gb/s 81134A ,用来产生确定的差分信号序列,也是非常必须的。

好,现在我们可以开始使用这两台仪器进行实际的抖动测量展示。

分离并测量分离并测量占空比失真抖动占空比失真抖动DCD
前面已经讲过一种测量DCD 抖动方法,就是在系统中输入‘1010…’模式比特流。

这种激励模式可以消除大部分的码间干扰的影响。

不过,尽管用这种模式消除了码间干扰,信号中仍然存在随机抖动RJ 和周期抖
动PJ成份,它们仍然使得测量结果很复杂。

这里介绍一种方法来消除随即抖动RJ和非相关周期抖动PJ。

如图10所示,绿色为被测信号,重复1010…模式,下面黄色的为Trend曲线。

为了消除RJ和非相关PJ,我们对Trend曲线求均值。

在均值运算前,由于有随机成份,Trend曲线在屏幕上下垂直抖动。

取均值会消除随机成份的影响,使得Trend曲线会相对稳定,单周期(Cycle-to-Cycle)抖动的峰峰值大致保持一个常量。

然后我们可以使用示波器的手动标注功能(Marker)或者自动参数测量功能来测量DCD的峰峰值。

在这个例子中,DCD的测量结果(译者注:均值)为10ps。

为了进一步研究DCD,我们可以从测量结果中搜集到更多的信息。

还是在这个例子中,我们可以看到,数据信号和DCD的Trend波形是时间相关的,Trend波形和数据信号同相,这就意味着数据信号中占空比小于50%。

信号的上升沿总是滞后(+error),而下降沿总是提前(-error)。

也许是因为发送端的判决门限提高,也许是由于发送端的输出信号时,和下降沿相比,信号上升沿的变缓。

分析到这一步,如果我们觉得DCD 的值超出了预期,可以通过其他的特征测试来测量数据流中每个脉冲的占空比。

进一步,如果怀疑占空比失真是由于上升沿和下降沿的不对称引起,我们还可以分析数据流中每个脉冲的上升沿和下降沿特征。

使用波形求均值的方法进行测量的一个关键因素是,对于波形获取和抖动分析能力,示波器的必须有足够灵敏度来进行快速测量和显示。

一些抖动分析功能包为单脉冲或者统计功能进行了特别的优化。

均值计算就需要以很高的速率多次采样。

由于具备深度存储空间,Agilent的MegaZoom技术能够提供示波器行业中最快数据显示和计算测量结果。

分离并测量分离并测量码间干扰抖动码间干扰抖动ISI
图11给出了一个由于系统带宽受限而产生的码间干扰的例子。

使用高速脉冲/模式信号发生器,为被测系统提供高速PRBS (伪随机信号)测试信号。

激励可以加载在发送端上,也可以加载在接收器之前的传输线上。

使用示波器的其中一个通道,在被测点上捕获信号,并使用抖动分析功能来进行Trend 分析显示。

通过同步触发机制,实时捕获信号,你可以观察到TIE 的Trend 波形(图中下面黄色曲线)在屏幕上,上下跳动。

这种跳动主要是由于随机抖动RJ 引起。

如果示波器的刷新速率足够高,你可以看到一些重复出现的确定性抖动成份。

为了消除随机抖动成份,我们还是采用对Trend 波形求均值的方法。

在足够的采用下,通过求均值的方法,Trend 波形仅包含确定性抖动成份,会变得比较稳定。

一旦得到了比较稳定的Trend 波形,就可以用时间相关的方式,对比Trend 波形和原始的数据信号波形。

TIE 的Trend 波形信号会显示出独特的对原始数据依赖的特征。

比如这个例子中,由于系统带宽受限的原因,在原始数据中出现的连‘1’或者连‘0’串之后,Trend 波形一定会出现一个时间相关的正向峰值;而在单个的‘1’和‘0’之后,Trend 波形会出现一个明显的时间相关的负向变化。

在对Trend 波形求均值的基础上,选择自动峰峰值测量,就可以得到全部的确定性抖动。

在最小的时间相关周期性抖动下,这种测量方法得到的结果包含了系统中所有的DCD 和ISI 抖动成份。

这个例子中,我们测量到44ps 的抖动,上一节的测试结果,我们使用重复的‘1010…’信。

相关文档
最新文档