译自:SiT-AN10007Rev1.2January2014ClockJitterDefinitionsandMeasurementMethods时钟抖动的定义与测量方式[译]懒兔子1简介抖动是实际信号的一组边沿与理想信号之间的偏差(兔子:说白了,抖动就是实际情况和理想情况不一样,差别越大抖动越大)。时钟信号的抖动通常由系统中的噪声或其他干扰因素引起。影响因素包括热噪声、电源变化(波动)、负载的状况(负载也可以反过来影响时钟信号)、设备噪声和临近电路耦合进来的干扰。2抖动的分类抖动可以通过许多方式测量(不同方式测量到的抖动被分别加以定义),以下是主要的抖动分类:1.周期抖动(PeriodJitter)2.相邻周期间的抖动(CycletoCyclePeriodJitter)3.长时间抖动(LongTermJitter)4.相位抖动(PhaseJitter)5.单位时间间隔抖动(TIE,TimeIntervalError)2.1周期抖动周期抖动是时钟信号的实际周期长度与理想周期长度之间的偏差,测量样本为数目不定(随机)的一组周期。如果给定一定数目的单个时钟周期,我们就可以通过测量每个周期的长度并计算平均的周期长度,以及这些时钟周期的标准差和峰峰值(peak-to-peakvalue)。这里所说的标准差和峰峰值也分别被称为RMS抖动和Pk-Pk周期抖动。许多文献将周期抖动直接定义为被测时钟周期与理想周期之间的误差。但是真实情况下很难对理想周期进行量化。如果我们用示波器观察一个标称100MHz的晶振,测得的平均时钟周期却可能是9.998ns,而不是理想的10ns。所以退而求其次,通常将平均周期作为理想周期看待(兔子:因为实际周期都是在理想值周围按照一定规律分布的,如果测量时间足够长,得到的平均值就可以非常接近理想值)。2.1.1周期抖动的应用周期抖动对于计算数字系统的时序裕量十分有用。假设在一个基于微处理器的系统中(上升沿采样),处理器要求1ns的数据建立时间(即数据需要在时钟上升沿1ns前保持稳定有效)。当时钟的某个周期抖动为-1.5ns时,上升沿会出现在数据有效之前,如此处理器将会采集到错误的数据。如图1所示:图1时钟抖动造成的数据建立错误类似的,如果另一个处理器需要2ns的数据保持时间,但是时钟某一个周期的抖动是+1.5ns,那么实际有效的数据保持时间只有0.5ns,处理器也会采到错误的数据。如图2:图2时钟抖动造成的数据保持错误2.1.2由RMS抖动计算Pk-Pk抖动由于时钟的周期抖动是随机的,并遵循高斯分布。因此周期抖动完全可以用统计学中的均方根(RMS,RootMeanSquare,别说不会算)来表示,单位为皮秒(ps)。但是呢,峰峰值却和计算建立保持时间裕量有更大的联系(峰峰值表示了最大误差,超过建立保持时间要求,数据采样就有可能出错)。要将10000个时钟周期的RMS抖动换算成Pk-Pk抖动,可遵循以下等式:Pk-Pk周期抖动=7.44xRMS抖动*等式1例如:若RMS抖动为3ps,则Pk-Pk周期抖动为7.44x3=±11.16ps。等式1其实是由高斯概率密度函数表(PDF,GaussianProbabilityDensityFunction)推导出来的。比如当样本个数为100时,从统计学的平均情况来讲,其中99个会落在有效值周围的±2.327σ范围内,只有1个会落在该范围之外。根据JEDEC标准的要求,某司测量RMS周期抖动时设定的样本数为10000。样本数σ10±1.282100±2.3271,000±3.09010,000±3.719100,000±4.2651,000,000±4.75410,000,000±5.200100,000,000±5.6121,000,000,000±5.99810,000,000,000±6.362100,000,000,000±6.7061,000,000,000,000±7.035表1高斯概率密度函数表(PDF)2.1.3周期抖动测量方式JEDECStandard65B中将周期抖动定义为某一随机数量的时钟周期与理想周期之间的偏差(由定义了一次,生怕大家忘了)。JEDEC标准进一步地指定了测周期抖动需要测量10000个信号周期(多一个少一个应该也无所谓吧)。某司推荐的测试步骤如下:1.测量一个时钟周期(一个上升沿到下一个上升沿之间)的长度,即一个样本2.等待随机个时钟周期3.重复1、2两步10000次4.通过测到的10000个样本,计算平均值,标准差(σ),和峰峰值5.重复1-4步骤25次,通过这25组结果,计算平均峰峰值10000个随机样本计算出的标准差(σ),即均方根(RMS,也有人认为均方根和标准差并非等同)已经很精确了,RMS的误差可以通过如下等式计算:*等式2等式中的σn为样本的RMS,N为样本数。例如:样本数为10000,RMS误差为0.0071σn。这种误差是随机的,并且遵从高斯分布,通常用±3xRMS误差来计算最大测量误差。又例如:如果从10000个样本中计算出RMS为10ps,则RMS误差为0.071ps,所有RMS值都会落在10±0.213ps(RMS±3xRMS误差)的范围内。在实际应用中,若只有10000样本,RMS误差可以忽略不计。Q:为什么要用均方根来计算峰峰值?A:一定数量的随机样本就能够精确计算出均方根,但是想要测量实际的峰峰值却非常困难。由于周期抖动的随机性,样本数量越大则越有可能测量到落在高斯分布曲线远端的样本,换言之峰峰值随采样数量增加发散,而非收敛。Q:为什么需要步骤5(重复25次)?A:每测量10000个样本,就可以算出一个标准差(均方根)和峰峰值。而随机地重复该步骤25次,我们就可以计算很高精度的的平均峰峰值。这增加了峰峰值测量的一致性和可重复性。(兔子:就是说每次直接测250000个数据计算出的峰峰值一致性不好,这样分开测就好啦?有待验证……)图3为某125MHz晶振的周期抖动直方图,同时显示了10000个样本中测得的RMS和Pk-Pk抖动。图310000个样本的周期抖动直方图2.2相邻周期抖动JEDEC65B标准将相邻周期抖动(C2C,Cycletocycle)定义为信号相邻周期之间的时间长度变化,前提也是测量不定数量(随机)的相邻周期长度差,综合后得到的结果。JEDEC标准也进一步指定了每个样本集的样本数应该大于或等于1000(就是采集1000对相邻周期)。需要注意的是C2C抖动只关注两个连续周期之间的周期长度变化,并不参考任何理想时钟。C2C抖动一般用峰值表示,有时候也用均方根表示,单位是ps。该参数定义了一个时钟信号的任意两个连续周期间长度变化的最大值(以上升沿为标准)。此类抖动常被用于体现带有扩频(SSC,spreadspectrumclock)特性时钟的稳定性,原因是周期抖动对扩频(频率值会发生变化)很敏感,C2C抖动则不然。2.2.1相邻周期抖动测量方式1.测量某时钟的两个相邻周期的长度:T1和T22.计算T1-T2,取绝对值3.等待随机个时钟周期4.重复1-3步骤1000次5.计算标这1000个样本的准差(σ)和峰值,峰值为|T1-T2|的最大值6.重复1-5步骤25次,计算25个峰值的平均值与周期抖动的峰峰值类似,C2C抖动的峰值也是随样本数发散的。第6步用于获取平均峰值(以增加测试结果的一致性和可重复性)。图4为某时钟C2C抖动的直方图,这里抖动峰值为25.66ps(正负峰值21.22ps和-25.66ps中取最大值)。图4C2C抖动直方图2.3长期抖动长期都懂用于测量一组连续时钟周期中实际时钟与理想四种的差异。实际需要测量多少个周期由应用场合决定。长期抖动与周期抖动、相邻周期抖动不同,它表示一段长时间、连续的时钟信号流中存在的抖动累积效应,因此长期抖动也被称为累计抖动。长期抖动的典型应用为图片及视频显示、远程遥感勘测及测距仪。某司推荐的测量长期抖动方法如下(以10000个时钟周期为例):1.测量10000个周期的总时间长度,如图5所示2.等待随机个时钟周期3.重复1-2步骤1000次4.计算这1000个样本的有效值、标准差和峰峰值5重复1-4步骤25次,取25次峰峰值的平均值图5测量10000个时钟周期的总时长同理,我们需要通过步骤5来克服峰峰值的无边界分布特性。2.4相位抖动相位噪声通常被描述为在不同频率下的一组噪声值(如-60dBc/Hz@20KHz和-95dBc/Hz@10MHz),或者表示为一段连续频率范围内的噪声图。相位抖动则是一段特定频谱中相位噪声综合的结果,其单位是秒。对于方波而言,其主要能量集中在载波频率上,但一些能量仍会在载波频率两侧的一定频率范围内“泄露”(leaked-out)出去。相位抖动就是与载波频率fc相关的两个指定频率之间的相位噪声能量总和。图6是一个未经滤波的相噪图,阴影区域即表示f1至f2频率之间的相位抖动。图6相噪图频率f1与f2之间的RMS相位抖动可以用等式3表示:*等式3其中表示fc一侧f1-f2之间的噪声功率。在通信领域中,通信接口的发送端PLL和接收端PLL存在带通滤波效,因此在实际情况下我们需要根据滤波器的特性计算滤波后的RMS相位抖动。以下为常见通信接口对应带通滤波器的带宽(拐点频率),这些带宽是综合了发送和接收端PLL特性得到的结果:1.光纤接口:637KHz~10MHz2.10GEXAUI接口:1.875MHz~20MHz3.SATA/SAS接口:900KHz~7.5MHz假设滤波器函数为H(f),则滤波后的RMS相位抖动可以用等式4计算:*等式43单位时间间隔误差单位时间间隔误差(TIE,TimeIntervalError)是指在拥有参考点(兔子:用于参考的时钟边沿,在该点实际时钟与理想时钟边沿对齐)的情况下,信号的某个实际边沿与理想边沿间的时间差。事实上,TIE是相位噪声在离散时间域上的表现,单位为秒或皮秒。图7形象地描述了TIE的基本概念。理想信号通常是由软件对被测信号的周期进行平均估计得到的。图7测量单个信号边沿的TIE3.1绘制时域TIE图图8的最上面一行是一组时钟的的波形,红色表示周期为1000ps的理想时钟,黑色表示带有抖动的实际时钟。为了方便表示,只画出了时钟的上升沿。在时钟序列的开始,理想边沿与实际边沿重合(以此作为参考点),之后由于抖动,黑色的实际时钟边沿开始随着时间漂移,时而领先时而落后于红色的理想时钟。图中的ClockPeriod曲线表示所测得黑色时钟的各个周期长度。本例中黑色时钟不是990ps就是1010ps(为了方便理解,理想化了,和第一行也不太对的上,凑合看吧)。PeriodChange曲线则描述了每个时钟周期与前一个周期的变化量。如果黑色时钟的两个相邻周期长度相同,那么PeriodChange曲线就会保持平坦,反之就会发生变化。例如:……(兔子就不举例了都能看懂)总而言之该曲线描绘了时钟周期的变化。TIE曲线则记录了理想边沿和实际边沿之间的累计误差。此一例中,TIE曲线开始时向下增长,这是由于最初的四个时钟周期里每个实际周期都比理想周期长度要少10ps。在累积了-40ps的抖动误差后,曲线从第5个周期开始向上增长,这也是由于第5个时钟的实际周期比理想周期多10ps。TIE测量在检验数据流(通常是串行通信接口)的特性时非常有用,这些传输接口的时钟通常由时钟数据恢复(CDR,Clock/DataRecovery)电路从数据信号中恢复出来。比如较大的TIE值可能就说明了CDR中PLL的响应速度太慢了跟不上数据流的数据变化速率。图8TIE图4采用实时示波器测量抖动4.1示波器设置指导测量时钟抖动最通用的设备当属实时数字示波器,本章将为大家介绍如果设置示波器以达到更高的测量精度。数字示波器采用内部时间基准来定期采样输入的数据,其采样率可由1Gsps到40Gsps不等。图9列举了数字示波器采样和显示信号的方式。图底部的箭头表示采样点,实线是实际的信号,黑点为采样得到的数据,而示波器显示出的图像(虚线)为根据采样数据经过优