完整版请参考:

  • https://mazhaoxin.github.io/2018/10/20/Jitter_Basics/
  • http://483v7j.coding-pages.com/2018/10/20/Jitter_Basics/

自从加入M记后,开始比较密集的接触关于jitter的相关内容,并且发现有很多同事并不能很清楚的认识到jitter的分类和应用。通过查询各方面的资料,整理本文如下,以备不时之需。

概述

Jitter(抖动)是从时域评价时钟信号质量的重要参数。

  • 首先要明确的是它是一个统计量,因此有标准差(均方根,rms)和范围(峰峰值,p2p);
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-d4ApqniR-1584194539279)(/img/in-post/{{page.id | replace:’/’,’-’}}/jitter_measurement.jpg)]
  • 然后根据样本的类型可以划分成不同的分类,如Jabs(absolute jitter)、Jp(period jitter)、Jc2c(cycle-to-cycle jitter)等;
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cNW6OLMj-1584194539282)(/img/in-post/{{page.id | replace:’/’,’-’}}/jitter_types.jpg)]
  • 再次是对于同一次统计又可以从中拆分出不同的构成(成分),如bounded jitter和unbounded jitter。其中一般认为unbounded jitter是呈高斯分布的,因此在计算峰峰值时会根据误码率(BER)将均方根值乘以一个系数。
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CiL8yvvA-1584194539284)(/img/in-post/{{page.id | replace:’/’,’-’}}/jitter_components.jpg)]

另外,要明确的是在jitter的分类中,存在着一定的歧义或别名,如absolute jitter也被称为phase jitter,period jitter也被称为cycle jitter等等。

与相位噪声的关系

Phase noise(相位噪声)是从频域评价时钟信号质量的重要参数。因此对于同一个时钟信号既可以用相噪来进行描述,也可以用jitter来进行描述。一般来说phase noise曲线包含的信息量更大,也更方便与设计进行比对,但出于方便应用的目的,通常需要根据应用转换为相应类型的jitter。

理论上讲,jitter只关注了时钟跳变沿的噪声情况,phase noise则应当关注全频带的噪声,但目前的应用中基本上都是用类方波信号作为时钟源,所以二者所关注的噪声范围并没有太多的差异。

Phase noise到jitter的转换是通过积分相噪(IPN)进行的,具体的可以参考之前的文章由相位噪声曲线计算积分相噪和Jitter的方法。

绝对抖动(absolute jitter, Jabs)

Jabs所统计的对象是实际时钟跳变沿出现的时刻与理想时钟跳变沿出现的时刻之间的差,因此也叫phase jitter,如下图所示。(注:实际测试中没有所谓的理想时钟,一般指的是被测信号的线性回归值,下同)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8h5Kw8Kc-1584194539285)(/img/in-post/{{page.id | replace:’/’,’-’}}/phase_jitter.jpg)]

一般ADC、DAC应用关心这类jitter的rms值。

通过Phase noise曲线计算Jabs时,只需要把曲线下方的面积计算出来换算即可。

Jabsrms2=1(2πfc)2∫0∞2L(f)dfJabs_{rms}^2=\frac{1}{(2\pi f_c)^2}\int_0^\infty{2L(f)df} Jabsrms2​=(2πfc​)21​∫0∞​2L(f)df

其中L(f)L(f)L(f)为单边带相位噪声(SSB Phase Noise)。

另外,从定义也很容易得出,对于主要能量集中于低频偏部分的场景(一般情况下都能满足),经过分频的时钟的Jabs是不变的。

周期抖动(period jitter, Jp)

Jp所统计的对象是相邻两个实际时钟跳变沿出现的时间间隔与理论值的差实际时钟周期与理想时钟周期的差,在测试中所谓理想时钟周期即是平均时钟周期,如下图所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-waANNbnO-1584194539288)(/img/in-post/{{page.id | replace:’/’,’-’}}/period_jitter.jpg)]

一般在数字电路(如MCU、CPU)应用中关心这类jitter的峰峰值。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QZ6mDv0n-1584194539290)(/img/in-post/{{page.id | replace:’/’,’-’}}/sta.jpg)]

以上图所示的电路为例(为方便计算,假设clk1、clk2均为理想的clk),则有

tsetup=tn+1−(tn+tck−q+tcomb)=Tclk−tjitter_p2p−tck−q−tcombt_{setup}=t_{n+1}-(t_n+t_{ck-q}+t_{comb})=T_{clk}-t_{jitter\_p2p}-t_{ck-q}-t_{comb} tsetup​=tn+1​−(tn​+tck−q​+tcomb​)=Tclk​−tjitter_p2p​−tck−q​−tcomb​

因此Jp的峰峰值会造成tsetupt_{setup}tsetup​的减小。

对于随机抖动(random jitter),一般认为其呈高斯分布,那么峰峰值与RMS值的关系为

Jitterp2p=αJitterrmsJitter_{p2p}=\alpha Jitter_{rms} Jitterp2p​=αJitterrms​

其中α\alphaα由12erfc(α2(2))=BER\frac{1}{2}erfc(\frac{\alpha}{2\sqrt(2)})=BER21​erfc(2(​2)α​)=BER确定,常见的取值见下表:

BER α\alphaα
10−310^{-3}10−3 6.180
10−410^{-4}10−4 7.438
10−510^{-5}10−5 8.530
10−610^{-6}10−6 9.507
10−710^{-7}10−7 10.399
10−810^{-8}10−8 11.224
10−910^{-9}10−9 11.996
10−1010^{-10}10−10 12.723
10−1110^{-11}10−11 13.412
10−1210^{-12}10−12 14.069
10−1310^{-13}10−13 14.698
10−1410^{-14}10−14 15.301
10−1510^{-15}10−15 15.883
10−1610^{-16}10−16 16.444

通过Phase noise曲线计算Jabs时,需要考虑tn−tn−1t_n-t_{n-1}tn​−tn−1​带来的影响,因此需要在原始的曲线上叠加一个权重曲线。

Jprms2=1(πfc)2∫0∞2L(f)sin⁡2(πf/fc)dfJp_{rms}^2=\frac{1}{(\pi f_c)^2}\int_0^\infty{2L(f) \sin^2(\pi f/f_c)df} Jprms2​=(πfc​)21​∫0∞​2L(f)sin2(πf/fc​)df

在计算时可以发现,这条权重曲线几乎抑制了所有的低频噪声,使得Jp由底噪所主导。

相邻周期抖动(cycle-to-cycle jitter, Jc2c)

Jc2c所统计的对象是相邻两个实际时钟周期之间的差,如下图所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qqChKMgo-1584194539291)(/img/in-post/{{page.id | replace:’/’,’-’}}/cycle2cycle_jitter.jpg)]

显然这类jitter不需要参考理想时钟,一般在并行接口应用中关心它的峰峰值。

通过Phase noise曲线计算Jc2c时,需要考虑两次差分带来的影响,即:

Jc2crms2=4(πfc)2∫0∞2L(f)sin⁡4(πf/fc)dfJc2c_{rms}^2=\frac{4}{(\pi f_c)^2}\int_0^\infty{2L(f) \sin^4(\pi f/f_c)df} Jc2crms2​=(πfc​)24​∫0∞​2L(f)sin4(πf/fc​)df

与Jp相类似的,两次差分引入的权重曲线进一步抑制了低频噪声,使得Jc2c也是由底噪所主导。

累计抖动(accumulating jitter, Jacc)

Jacc所统计的对象是相距k个时钟跳变沿的时间间隔与理论值的差,显然当k=1时即是Jp,当k=∞时即是Jabs。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iSy28gQ1-1584194539294)(/img/in-post/{{page.id | replace:’/’,’-’}}/acc_jitter.jpg)]

对于提供同步时钟,但时钟频率低于数据速率的场景会关心累计抖动。

通过Phase noise曲线计算k个周期的Jacc的公式如下:

Jaccrms(k)2=1(πfc)2∫0∞2L(f)sin⁡2(kπf/fc)dfJacc_{rms}(k)^2=\frac{1}{(\pi f_c)^2}\int_0^\infty{2L(f) \sin^2(k\pi f/f_c)df} Jaccrms​(k)2=(πfc​)21​∫0∞​2L(f)sin2(kπf/fc​)df

CDR后的抖动

对于给SerDes Tx提供驱动的时钟来说,其jitter大小要把CDR的影响考虑进来。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YTFTAMnD-1584194539297)(/img/in-post/{{page.id | replace:’/’,’-’}}/cdr.jpg)]

具体的在此不做详述,后续再写一篇梳理一下常见标准的CDR参数。

Jitter的基本知识相关推荐

  1. jitter单位_Jitter知识

    Jitter知识 Charles Altmann Chapter 1:什么是jitter 1) 什么是jitter 所谓jitter就是一种抖动.具体如何解释呢?让我们来看一个例子.假如你有个女友,你 ...

  2. Jitter知识--时基/时基抖动

    什么是JitterJitter知识 原著:Charles Altmann 编译:王轩骞(hotpoint) Chapter 1:什么是jitter Episode 1:什么是jitter 所谓jitt ...

  3. 示波器基础知识100问

    www.EET-china.com 点击打开链接 编者注: 本文件为电子工程专辑网站编辑部原创,电子工程专辑享有本文章完全著作权, 如需转载该文章,必须经过电子工程专辑网站编辑部同意.联系电子工程专辑 ...

  4. Serdes基础知识汇总

    Serdes基础知识汇总 从知乎https://zhuanlan.zhihu.com/p/423321485转载 在开始了解高速接口的时候,必然会涉及到SerDes.serdes的知识点实际上非常多, ...

  5. 时钟抖动(Jitter)的基本概念

    随着通信系统中的时钟速率迈入GHz级,抖动这个在模拟设计中十分关键的因素,也开始在数字设计领域中日益得到人们的重视.在高速系统中,时钟或振荡器波形的时序误差会限制一个数字I/O接口的最大速率.不仅如此 ...

  6. DVD区域码相关知识

    DVD区域码相关知识 什么是D5.D9.D10和D18 DVD光盘由上下两片片基组成,每片片基上最多可以容纳两层数据,DVD光头能够通过调整焦距来读取这两层数据. D5 ,DVD-5 的简写,即单面单 ...

  7. jitter in fMRI design

    首先,最初的实验设计中并没有加入jitter,但是power已经足够. TR为2.4s,实验程序是miniblock design 但后面参考一些lecture,如果要提高efficiency,应该要 ...

  8. 时钟抖动(Jitter)的基本概念 【转载】

    时钟抖动(Jitter)的基本概念 李倩 发表于 2018-03-13 10:21:08 电子说 随着通信系统中的时钟速率迈入GHz级,抖动这个在模拟设计中十分关键的因素,也开始在数字设计领域中日益得 ...

  9. 时间抖动(jitter)--学习笔记

    时间抖动:在理想情况下,一个频率固定的完美的脉冲信号(以1MHz为例)的持续时间应该恰好是1us,每500ns有一个跳变沿.但不幸的是,这种信号并不存在. 信号周期的长度总会有一定变化,从而导致下一个 ...

最新文章

  1. Java IO 流 学习 总结
  2. python查询mysql表名字动态日期_Python之路day11作业-MySQL表查询
  3. js转json工具_菜鸟丨Egert3D微信小游戏发布与Unity工具使用
  4. openstack部署中的错误总结
  5. 云计算迈向100%的虚拟化
  6. MVC三层架构在各框架中的特征
  7. 实战 Nginx 与 PHP(FastCGI)的安装、配置与优化
  8. discuz开启url伪静态
  9. 智能优化算法的常用改进方法
  10. Pika 2.3.5 升级 3.0.16
  11. 2012 windows 端口聚合_如何在WindowsServer2012中实现NIC组合
  12. 关于Ultraiso无法写入硬盘映像的相关解决办法
  13. CIE 1931 颜色空间(来自维基百科)
  14. input自动填充后背景颜色被覆盖的问题
  15. Udesk全场景客服系统FAQ分享(202010期)
  16. GMSL部分问题解答/含官方FAE解答
  17. Cesium入门(五):加载WMTS瓦片地图服务
  18. Java读取MARC元数据 代码
  19. shell脚本文本三剑客之awk
  20. 用python给小孩随机生成一组10以内加减法

热门文章

  1. java类中获取tomcat下的webap路径方法
  2. Sentinel 2 MSI 波段组合
  3. 光功率P和振幅E的平方成正比关系
  4. 区块链被中央点名了!腾讯研究院这份白皮书告诉你为什么
  5. Dynamics 365 Online和On-premises在开发方式上的差别
  6. 【记录十七】Sling JCR Resources
  7. Linux内核安装后reboot选择,Linux内核配置选项 参考(3)
  8. 红色警戒2:罗曼诺夫的复仇(openRA) Linux安装指南
  9. Spring Boot 集成 Swagger2,构建强大的 API 文档
  10. 计算机网络CPT实验