深入浅出聊抖动(Jitter)

来源:EETOP论坛 及 不忘初心的模拟小牛牛公众号

作者:131v1vv

抖动(上)

内容提要: 

1、概述

2、抖动基本概念

3、抖动分类

4、抖动时域表示

5、抖动频域表示

6、抖动和相噪转化

7、抖动容限和浴盆曲线

1、概述

先举个例子,假如你每天早上要去赶一趟8点钟始发的地铁,出门要走5分钟的路。假如地铁只有30秒钟的开门时间。为了不等待,也不错过。那么你出门的时间就必须卡在7:54'30''到7:55'00"之间。那如果在赶路的过程中出现了意外,比如今天走慢了,就可能赶不上了。当然你也不希望这班地铁来早了,你也可能错过这趟车。人生处处是意外,处处是惊喜。我们把这种时间的不确定性,形象的理解为时间抖动(Jitter)。这里边就有着描述时间的两个基本概念,时间点(八点钟)和时间段(30秒钟),需要区分开这两个基本概念。

我们通过图1,简单回顾一下总相位φ,超量相位φe,频率f,角频率ω的概念。图1 为基本的正弦波为相位的函数,而相位又是角频率和时间的函数。准确地说相位为角频率对时间的积分。角频率(rad/s)是频率(Hz)的2π倍。比如大家都了解的锁相环(PLL)就是通过负反馈,保证反馈时钟的相位跟踪锁定输入时钟的相位,得到需要的输出时钟频率的目的。

图1

如果存在超量相位(Excess Phase)是时间的函数,其对时间的二阶微分不等于0,那么表现在频率上就是频率随时间的变化,也就是其周期会随时间的变化。如图2所示,黑色为固定角频率的总相位-时间曲线,红色为包含了随时间变化的超量相位的总相位-时间曲线。那么经过整形后,分别对应如图的理想时钟和抖动时钟。

图2

图2的例子说明随时间变化的超量相位的存在(相位噪声)可能会引起频率的变化,从而带来抖动,两者内在是相互统一的。后边会详细讨论相位噪声、抖动及相互关系。

2、抖动基本概念

我们先回顾几个描述时钟抖动(Clock Jitter)的几个基本概念,如图3。

绝对抖动(Absolute Jitter),绝对抖动就是一个衡量时间点的不确定性概念,参考为理想时钟的时间点,该相对偏差量可能表示为一个离散时间的随机变量。

图3

绝对抖动造成的时间点不确定性可能会对很多采样电路有影响,比如说数据时钟恢复电路(CDR)中,需要利用时钟沿对数据的中心和数据变化的沿进行采样,采样时钟的绝对抖动对于CDR的抖动容限有直接影响。

如图4,时钟Clk半速率采样非理想的数据Data,如果时钟clk偏离中间采样位置,该抖动会造成采样后数据的错误。且该抖动越大,数据的误码率就越高。

图4

周期抖动(Period Jitter)是一个衡量时间段不确定性的概念,定义为实际时钟和理想时钟的周期偏差,同样可以表示为离散事件随机变量。如图3

其实周期抖动的概念应该是大家最熟悉的。考虑图5中的简单数字同步电路模型。由于时钟树网络的非理想,根时钟CK经过不同的时钟buffer到达图中触发器的时钟端分别为CK1和CK2,并且都和CK存在不同的歪斜时间(Skew time),将CK的第一个上升沿作为初始时刻0。可以得到数据D1到D2的变化所需时间。如图分别计算了数据满足建立时间的最晚时刻t1,以及实际到达时刻t2。

图5

注意t1表达式包含了时钟周期Tclk,存在非理想因素。在数字电路的综合过程中,需要提前设置时钟的不确定性(Clock uncertainty)来约束时序,其中时钟不确定性就包含了时钟的skew周期抖动jitter和裕量margin。即如果时钟CK非理想,图中t1时间需要在减去时钟抖动的分量,比如周期抖动的峰峰值(给定BER的条件下)。当然通常还会多加一些裕量。

图6

图6给出了满足高斯分布的随机抖动(RJ)均方根值和峰峰值满足不同误码率的转换关系。如果你是CK时钟源的设计者。那么所设计OSC的周期抖动就是一个重要设计指标。需要提前和数字人员沟通协商好,双方都留好余量。避免设计不满足要求的情况出现。

当周期抖动的概念扩展到N个周期,就是N周期抖动(N-Period Jitter)。这里N并不特指具体数字,可根据需要得到特定的正整数。比如N分频器,如果分频器是理想的,其实关注的是分频前N个周期的抖动。

相邻周期间抖动(Cycle-to-Cycle Jitter),定义为相邻周期的周期差值。可通过周期抖动进行转换。如图3。为了降低EMI,很多时钟都通过展频功能。将信号能量分散到一定的频段内。比如说通过周期锯齿波调制的展频,对于其噪声抖动特性,就可以通过邻周期间抖动来衡量。

除了以上大家熟知描述时钟的PJ,CCJ等概念,实际上还有一些其他常见概念,这里进行了汇总如下图7,包括相同或相似概念的不同表述。比如TIE和Phase jitter等。

图7

3、抖动分类

目前最常见的抖动分类如图8所示。总体抖动(TJ)可以根据抖动的幅度是否有界分为两大类,确定性抖动(DJ)和随机抖动(RJ)。

图8

其中随机抖动RJ是包含了所有具有无界(Unbounded)PDF的抖动。比如常说的具有高斯分布PDF的高斯抖动,具有各频点相等PDF的热噪声引起的抖动。

因其分布有无界的特点,理论上说其抖动值概率上可能为无穷大。在描述该类型抖动时需要提供概率界限(如BER)。所以,下次当你告诉别人你设计的100MHz振荡器的周期抖动的峰峰值为50ps@BER=1E-6时,顺便告诉别人是在什么样的概率下,方便判断设计的性能指标。

确定性抖动DJ包含的是具有有界(Bounded)PDF的抖动分量。可粗略地分为和数据相关的抖动DDJ,周期性抖动(Periodic Jitter,PJ),和有界不相关抖动BUJ。

注:Periodic jitter和Period jitter是两个不同的概念,虽然都简称为PJ,要注意区分。

DDJ抖动常见的为串行通信中的码间干扰ISI,信号的低通特性及数据的前后相关会造成数据的抖动现象。

DCD抖动是由于时钟的占空比失真造成的抖动。

SJ(Sinusiodal Jitter),正弦抖动,因为该抖动仅在一个频点上,经常用了验证和测试电路的性能,不如时钟数据恢复电路CDR的抖动容限(Jitter tolerance)。

还有有界不相关抖动BUJ,这里主要有由电源或相邻信道的串扰等引起的,可以是周期的(Periodic),也可以是非周期的(non-periodic)。

图9

如图9和10,可以从不同维度对抖动的是否有界和是否和数据相关进行划分以及抖动来源进行总结。

图10

4、抖动时域表示

既然抖动量可近似为随机过程,那么统计学的很多指标都可以用。比如说期望,方差,标准差,峰峰值等等。可以根据需要选择使用。

如图11通过统计不同幅度区间的jitter频数得到的直方图,可直观的观察到抖动分布趋势,如图中红色轮廓。或通过数学近似得到概率密度函数(PDF),来描述其不同抖动的分布。

图11

图12列出了几个不同类型抖动的样本点和统计直方图,比较直观地表现几种不同抖动的所具有的PDF特点。比如正弦抖动SJ的时域幅度会比较集中在两个边界之间。

图12

图13补充了包含了几个不同单一抖动类型的眼图。实际上在高速接口的测试中,可通过误码率测试仪BERT,可以方便的添加一种或多种抖动类型,通过抖动注入验证系统对抖动的性能。或者测量分析抖动的组成及分量比重。

图13

现实中碰到的一个现象就是统计的抖动的轮廓会有着复杂的形状,不能简单地使用图12中的一种来表示。也就是现实中的抖动通常是包含了不同类型抖动的叠加。比如在高速串行接口中,TX发送数据的抖动,是时钟,TX发送器,电源和相邻信道串扰等,不同源头、类型抖动综合影响的结果。

基于概率论的知识,对于相互独立的不同抖动通过卷积运算可以得到总体抖动。如图11,直方图可以等效为具有高斯分布的RJ和具有狄拉克分布的DJ经过卷积的结果。

对于测量仪器,在测量得到抖动PDF,通常需要将抖动分解,给出不同类型的抖动的计算结果方便技术人员分析各部分抖动的分量和比例。分析原因优化设计。

目前抖动分解最常用的一种是高斯尾部拟合(tail fit)分离算法。既然抖动可以看做RJ和不同类型的(有界)DJ的卷积合成而来,那么在远离DJ的界限的范围,其PDF会很接近高斯分布的尾部。且在左右尾部的高斯分布会有着相同的标准差σ,也即将RJ分离出,然后结合下一节会学习到的频域的细节进一步将DJ分解。

如图14左为一个非高斯分布通过尾部拟合,得到两个高斯分布都具有相同的标准差σ=1ps,右图为使用尾部拟合分离得到的概率分布和实际的分布误差比较小。

图14


抖动(下)

内容提要: 

1、概述

2、抖动基本概念

3、抖动分类

4、抖动时域表示

5、抖动频域表示

6、抖动和相噪转化

7、抖动容限和浴盆曲线

5、抖动频域表示

我们比较详细的介绍了功率谱密度的概念,抖动在频域主要是用相位噪声(Phase Noise)来表示,也就是相位功率谱密度的单边带信息(频率大于0的部分)。

系统级我们常用时域的抖动描述。但对于电路级会更广泛的使用频域表示。对于像周期性信号,比如时钟电路。使用相位噪声是一种常用性能评价方式。

相位噪声的产生和电路中热噪声,闪烁噪声等相关。表现出的边带功率会是指数衰减。在相位噪声图中呈现为1/f^2或1/f^3的特性。如图1所示。随着频偏增大,热噪声会占主导地位。PSD频谱表现为底噪(floor noise)。

图1

那么从相位噪声曲线能够得到哪些信息那?如图2是某信道发送器Clock Pattern的相噪曲线。该图中比较明显的观察到相位噪声随频偏衰减的信息,另外也显示了载波频率,载波功率,输入衰减倍数,频偏扫描范围等信息。

比如载波频率为6.25GHz,载波功率为-5.25dBm,输入衰减为5dB。简单计算得到发送器输出方波的幅度约为500mVppd。

图2

在相噪曲线上,还观察到在若干个频点处有比较大的杂散(spurious)分量,实际上需要根据定位对抖动贡献较大的spur的频点及其出现的原因,从而优化设计,提高性能。

如果spur的位置在积分频段内,可能会使所计算的RJ抖动的RMS值偏大。spur通常对应为DJ分量,因此需要将引入较大误差的spur从RJ中去除,从而得到比较准确的RJ。

6、抖动和相噪转化    

相位噪声比较直观的反应了相位功率在频域的分布。但在很多时候,更关心对应时域的抖动值。这就需要根据相位噪声,得到所关心频率范围内的积分功率,从而得到抖动值。

图3为一个实际发送器的相位噪声,分别为双对数坐标和对数-线性坐标的表示。可以看到双对数坐标能够比较清楚的反应功率分布,并且可分段近似为直线段。

图3

低频偏出近似为1/f^2的噪声,但在1Mhz频偏附近处存在尖峰,存在随着频率增加,噪声功率也增加的频段。可以猜测该部分会对总抖动有较大的贡献量。

图4给出了图3各频段归一化后的抖动贡献比例。也验证了我们的猜测。

图4

其实知道了相位噪声的曲线,按照图5公式,也就是对功率谱密度积分得到单边带功率的一半,乘以2得到积分频段的总相位噪声功率。维纳-辛钦定理说明了,该总噪声功率和对应的超量相位φe方差的关系(超量相位φe可近似为宽平稳随机过程,均值为0),进而得到标准差。最后再转化为时域的RJ的均方根值。

需要注意的是相位噪声L(f)如果是dBc/Hz的对数表示形式,需要先转化为线性坐标形式。对数坐标是不能直接积分成功率值的。

图5

在很多时候为了简单估算抖动,常会使用折线图粗略近似相位噪声曲线。也就是利用有限个频率点的数据,采用分段统计累加计算。

如果是图6所示的线性-线性坐标中的折线图。两个频率点的区间实际上就是梯形区域。可用梯形的求面积公式,得到该区域的积分值,分别计算后再累加得到总的积分功率。

图6

如果是图7所示的对数-对数坐标中的折线图。其在线性坐标中实际上是,表示为指数(a,b,c等)和常量(ha,hb,hc等)的分段指数函数。需要根据折线段的首尾两点数据。计算出表示该折线段的函数参数(指数和常量)。利用定积分得到各区域面积,再累加得到所关心频段的总噪声功率。

在双对数坐标中,根据折线段的首尾数据,可方便的得到指数计算值。转化为对数坐标后,仅仅是数据值的减法操作,在很多地方都能找到这种算法的工具,用于计算相位噪声到抖动的转化值。

图7

再举个例子,如图8所示的双对数坐标中的折线段表示的相位噪声。利用图7中的计算方法。可分别得到各梯形(线性坐标中实际为指数函数,如图9中的对比)区域的抖动值。根据总功率和抖动有效值关系,各折线分段计算出的抖动(转化为时间单位s)和总积分抖动的满足RSS关系。

图8

图9给出了图8相位噪声不同坐标表示的对比,从线性-线性坐标中看到100KHz以下的噪声功率有比较大的分量。实际上,100~100K范围的抖动占了100~4.5G总抖动的97%以上。

图9

图10显示了图8所示相位噪声在各频段抖动相对于总抖动的归一化占比。极本符合以上的结果。

图10

7、抖动容限和浴盆曲线

在高速串行通信中,时钟恢复电路(CDR)能够跟踪一定的数据抖动,也就是当数据和时钟的抖动小于一定的范围时,CDR能够正确的恢复出数据来。抖动容限(Jitter Tolerance)就是CDR的一个重要指标。CDR环路和PLL环路模型比较相近。

在实际测试中,会使用误码率测试仪(BERT)对CDR的抖动容限进行测试。通过在数据上增加固定频率的可调幅度的PJ,分别得到满足一定误码率要求时不同频点对应的最大PJ幅度。

常见的CDR抖动容限曲线如图11所示。对于低频抖动,CDR能够完全响应,且随着抖动频率降低,能够容忍抖动的幅度会增加,并且超过1UI。而对于高频抖动(超过了CDR的闭环带宽),CDR就无法响应该高频抖动,理论上这时候抖动的最大幅度约为1UI。并且CDR环路的阻尼系数也会影响带宽处的JT值。

图11

实际的数据抖动还包含RJ和DJ的分量,在一般的应用中,对于总体抖动的要求为0.2UI~0.7UI,这样可以达到比较好的性能和功耗折衷。

     在高速串行通信的各种协议规范中,为保证正常的通信,都会对抖动有规格要求。其中用mUI作为单位描述不同类型抖动是常见的方式。前边我们提到CDR的抖动容限,也就是理论上满足一定BER条件时,TJpp值小于等于1UI即可。

而TJ是由有DJ和RJ构成,其近似关系可以表示为如下的公式:

TJpp≈DJpp+α*RJrms

其中参数α由误码率决定,如抖动(上)所述。实际上TJpp最大值会在不同协议的不同速率上都会有规格说明。有时也会把指标分解到发送器,信道、接收器和参考时钟等部分。

比如PCIe Gen1中对发送器(Tx)的最大TJ规定0.15UI,而接收器输入最大TJ规定为0.3UI,Serial RapidIO level2中发送器(Tx)的最大TJ规定0.3UI,而接收器输入最大TJ规定为0.55UI。

误码率(Bit Error Ratio,BER)是用于衡量数据传输准确度的指标,是传输错误码元和总传输码元的比值。比如BER=1E-12,代表每一万亿比特数据中错误少于等于1比特。如果是用10Gbps的速率传输,可以简单地理解为平均100s的时间内错误小于等于1比特。

抖动幅度噪声都会使数据的传输存在出错的概率,而抖动对误码率的影响关系通常用浴盆曲线(Bathtub Curve)描述。

如图10,对于抖动,浴盆曲线反映了采样位置和对应的采样结果错误概率的关系。可以看到,满足高斯分布的RJ,理论上一定存在错误(概率大小问题)的可能。所以减小RJ的标准差对提高误码率的重要性不言而喻。

图10

同样,幅度的噪声其实包含了热噪声和各种干扰、ISI等因素。图10中仅考虑幅度满足高斯分布的热噪声。对于差分信号,判断的幅度阈值通常为0,当幅度阈值变化时,也同样有近似的概率分布函数(CDF)。

幅度噪声和时间抖动构成了二维尺度的影响因素,综合起来就是二维的误码率分布图,也就是我们常用的眼图(Eye Diagram)。如图11所示为开启DFE功能的内部数据眼图。不同颜色色环代表不同的误码率分布。

图11

希望通过这两期【抖动(上,下)】内容,大家能够增强大家对与抖动的相关关的概念的有更多理解和收获。欢迎大家前往论坛讨论:http://bbs.eetop.cn/thread-840734-1-1.html

(0)

相关推荐