科普 | 眼图

news/2024/5/18 23:20:35 标签: 硬件

本文简要说明眼图相关的知识,参考是德科技的文章 1


科普 | 眼图

  • 基本知识
    • 串扰
    • 眼图
      • 眼图的产生原理及作用
      • 创建眼图 - 眼图波形的采样过程
      • 眼图的产生原理及作用
      • 眼图可以看出哪些性能指标?
      • 如何评判眼图质量?
      • 眼图测试模板
      • 眼图与存储深度
      • 实时的眼图表现
      • 眼图轮廓 Eye Contour - 误码率眼图
      • 眼图和误码率 BER
  • 示波器实时眼图分析操作步骤
  • 附录
    • 缩略语词汇表
  • 参考链接


高速信号需要测量眼图。那眼图代表着什么? 示波器眼图怎么调出来?该如何分析眼图的好与坏?以及从眼图各种形状上,我们能知道哪些信息呢?现代的眼图分析软件又有哪些新的功能?今天是德科技示给大家一 一解答关于眼图测试的问题并介绍眼图模板和快速眼图测试的方法。

基本知识

串扰

串扰 是一种失真,主要来自与数据码型无关的幅度干扰。

工程师希望信号是 串扰 极小或完全没有 串扰 的干净信号,如此才能获得张开的眼图,并进行准确无误的数据传输。

然而,由于耦合效应,一个干净的信号(我们称为 受扰信号 )可能受到 干扰信号串扰 影响进而发生变形,或者说其眼图闭合。

上图展示了受扰信号在有 `串扰` 下的眼图和无 `串扰` 的眼图。
  • 如果 受扰信号 中存在 串扰,那么这种干扰会导致眼图闭合,从而使得设计裕量变得很小甚至测量结果错误。
    串扰 还会降低 受扰信号 的垂直幅度和水平抖动性能,导致通信链路中的互操作性问题愈发严重。

串扰 会导致 眼图 闭合,从而降低设计裕量并可能造成设计的性能达不到技术指标。


眼图

数字信号眼图 中包含了丰富的信息,可以体现 数字信号 的整体特征,能够很好地评估 数字信号 的质量,因而 眼图 的分析是数字系统信号完整性分析的关键之一。

在这里插入图片描述
眼图( Eye Diagram )是用余辉方式累积叠加显示采集到的串行信号的比特位的结果,叠加后的图形形状看起来和眼睛很像,故名 眼图

眼图 是一系列 数字信号 在示波器上累积而显示的图形,它包含了丰富的信息,从 眼图 上可以观察出 码间串扰噪声 的影响,体现了 数字信号 整体的特征,从而估计系统优劣程度。


眼图的产生原理及作用

眼图 实际上就是数字信号的一系列不同二进制码按一定的规律在示波器屏幕上累积后的显示,简单地说,由于示波器具有余辉功能,只要将捕获的所有波形按每三个比特分别地叠加累积,从而就形成了眼图。

8 种比特跳变组合及其层叠形成的眼图眼图是查看抖动的最常用方式之一。可能的比特跳变组合总共有 8 种(见下图)。

眼图使用颜色分级来显示信号通过图中不同区域的频次高低,这提供了另一种查看时间间隔误差 TIE 频次的方法。通过眼图测试的张开度,可以大致查看有多少抖动:

  • 眼图张开度越大,信号中的抖动就越小;
  • 眼图张开度越小,信号中的抖动就越多。

下图中显示了这样的一个例子。直方图中的着色区说明这个眼图有明显的计时误差,图中还表现出误差发生的大致频次。实时眼图软件可以在仪器上自动生成这个眼图,使人可以很容易地看到随机抖动 RJ 和确定性抖动 DJ(或 PJ)对您的器件有何影响。

什么是随机抖动 RJ

谈到随机抖动(RJ)时,我们喜欢使用 “发生抖动” 这一表述方式。随机抖动终究是不可避免的,但我们可以对它进行表征。
随机抖动呈现高斯分布(无界),它由三个原因共同造成:

  1. 热噪声会引起随机抖动,可以描述为噪声 = kTB,其中 k 是玻尔兹曼常数,T 是开尔文温度,B 是系统带宽;
  2. 散粒噪声(或泊松噪声)可导致 RJ。散粒噪声是由电子和空穴的量化造成的固有噪声,并且收到偏置电流的影响。
  3. 粉红噪声会引起 RJ,它与频率成反比( 1/f )。所有系统将具有某种程度的随机抖动。

什么是确定性抖动( DJ )?

确定性抖动是非随机的、有界的抖动,它由设计中的次序出现引起。此外,确定性抖动可以分成多个子分量,如:周期性抖动( PJ )、数据相关抖动( DDJ )、有界不相关抖动( BUJ )。

下图所示为一个具有确定性抖动的系统实例。与随机抖动不同的是,确定性抖动的 PDF 通常由一个以上的峰。

在这里插入图片描述
图中所示为一个具有确定性抖动的系统实例。与随机抖动不同的是,确定性抖动的 PDF 通常有一个以上的峰。

由于此 PDF 有两个峰(双峰),由此我们可以判断,这个系统中同时存在 DJRJ

在这里插入图片描述
上图为实时眼图软件可以自动生成信号的眼图。

为什么捕获脉冲的时间越长,眼图 “填充得就越满” ?
眼图随着时间延长累积数据增加,这就是为什么看起来捕获脉冲的时间越长,眼图 “填充得就越满”。就会看到眼图的张开度随着时间推移逐渐缩小,这是因为它正在捕获更多的抖动实例。但是,如果设计非常稳健,则应该不会看到太多变化。


创建眼图 - 眼图波形的采样过程

眼图是一种信号显示模式。这种模式不需要重复的波形,有助于确定噪声、抖动、失真、信号强度以及许多其他测量结果。它能够给出系统性能的总体视图,因为它查看的是比特流中每个比特组合的叠加结果。这种模式需要的是同步时钟信号触发。每当触发事件时(允许示波器重新准备触发),示波器会对数据进行采样,并且在屏幕上构建所有可能的 10 组合。全频始终和分频时钟均可用于触发,但是,如果码型的长度是时钟分频比的偶数倍,则眼图会缺少组合,因而不完整。此外,如果将数据用作自身的触发信号,则眼图看起来可能完整,但示波器只会在数据码型的上升沿上触发。想要得到精确的眼图测试结果,我们应当避免采用这种方式。

显示眼图的触发过程如图所示:

在这里插入图片描述


眼图的产生原理及作用

眼图在反映的是链路是传输的所有数字信号的整体特性。

在这里插入图片描述

  • 实时波形能够反映波形的细节信息,如观察上升/下降边沿、过冲、单调性等。
  • 眼图能够体现信号的整体特征。
  • 实时波形很好,不等于信号品质无问题,只能代表某些比特ok。
  • 眼图很好,等于信号品质无问题,因为其代表数字信号的整体特性。

眼图可以看出哪些性能指标?

在对于一个眼图进行好和坏的评估时,通常都有一些常见的衡量指标,比如眼高、眼宽、抖动、占空比等,如下图。

在这里插入图片描述

在这里插入图片描述

通过对眼睛不同部位的表征,可以快速地判断和定性信号的问题。
比如,眼图跳变沿交叉点的上下区域可以代表占空比,如果上下区域比例不对称,则代表占空比的结果可能存在问题。

不同的眼图可以反映不同的信号质量。对于有经验的工程师可以从眼图上发现信号是否存在阻抗不匹配导致的反射,以及是否某种抖动成分偏大,甚至如何优化眼图质量。

总体来说:

  1. 眼图的张开度与抖动和误码率 BER 相关联;
  2. 眼图张开越大,表明对噪声和抖动的容许误差越大;
  3. 眼图张开越大,表明接收器判断灵敏度越好;
  4. 眼顶、眼底和转换区域宽表明接收器判断灵敏度降低;

“张开” 的眼图,从以下几个方面考虑:

  1. 考虑PCB走线长度:短走线并非始终能够满足。短走线意味着低损耗。
  2. 考虑PCB走线宽度:宽走线可以降低趋肤效应。
  3. 减小板材的介电常数:降低介电损耗( Dielectric Loss ),但将增加成本。
  4. 信号预加重和均衡处理:通过对跳变位预加重( Pre-Emphasis )处理,补偿线路上因信号跳变产生的针对高频分量的损耗。
  5. 阻抗不连续造成的反射,阻抗匹配减少反射。

如何评判眼图质量?

其实在评价眼图的质量时,一般遵循两个重要原则:

  1. 眼睛要大。如果配合上有眼图模板的话,那么以眼图模板当作瞳孔,则眼白( Margin )就必须要足够多。
  2. 如下图中红绿色圆圈中交叉的部分必须要越小越好,最好是一个点。因为这里代表的是抖动。如果太大就会造成误码率( BER )增加,越小则代表信号质量越好,发生误码的机率越低。
    在这里插入图片描述

眼图测试模板

所谓的眼图测试模板主要是用在判断眼图是否符合规范的要求,
在这里插入图片描述
在这里插入图片描述
有时候为了能简单、直观地判断眼图指标是否符合要求,可以将规范的定义的要求制作成一个模板,然后通过示波器来调用,便可以直接观察到眼图是否有接触到模板。

  • 如果没有接触到则表示眼图的指标符合规范要求。
  • 如果有接触到模板,可以根据接触的位置进行针对性的改善,而非像传统的测试方法一样去一一地测量眼图指标了。

眼图的测试主要是用来检测高速串行传输的信号质量,不论是 SATAPCIe 还是 USB,标准都有提供眼图模板的标准给工程师作为眼图测试的准则。
如下图所示,是 USB 2.0 TX 的眼图模板。图中 ABCDEF 6点所围成的六边形红色区域以及 GH 以上,IJ 以下区域代表所谓的 禁止区域

在这里插入图片描述
如果眼图有任何信号波形位进入这些红色区域,则表示信号传输不满足协议规范的要求。如下图的绿色圆圈处所示:

在这里插入图片描述

每个信号完整性工程师都会跑眼图模拟,看信号在特定测试情境下是否可以张开。最常见的问题就是怎么样叫眼睛张的够开。


眼图与存储深度

通常眼图是由若干个比特( UI )组成。考虑到眼图测试的精度和稳定性,一般都要求累积到足够的 UI 数再分析,这个就涉及到示波器的存储深度。

越高的存储深度,示波器一次分析的 UI 数就会越多,测试结果也就越精准。因此,在测量高速信号的眼图和抖动中,尽量采用高的存储深度。当然,存储深度越高,示波器的分析速度相对也会变慢。

下图是 Keysight 实时示波器动态显示实时眼图的累积情况。眼图的左上角会显示累积的 UI 数以及示波器捕获的波形数,满足等式:

UI数 = 存储深度 / 采样率 * 信号速率 * 波形数

在这里插入图片描述


实时的眼图表现

眼图既然是实时波行的叠加,对于眼图的分析也应该具有实时性。

下图是 Keysight 实时示波器测出的眼图,在示波器窗口中能看到上半部窗口是实时波形的显示,下半部窗口是实时眼图的显示。
这种同步实时性的显示功能可以让工程师更直观地对波行和眼图进行观察,更好地进行分析和调试工作。

在这里插入图片描述

眼图轮廓 Eye Contour - 误码率眼图

什么是眼图轮廓 Eye Contour 功能?
眼图轮廓 Eye Contour 技术和我们测量总体抖动差不多,也是采用 Dual-Dirac 双狄拉克模型。以测量出的实时眼图的中心为原点,然后对眼图进行多方位对角分割,计算出眼图在每条分割线的直方图,再通过对直方图的尾部进行拟合,就推算出更多样本数的分布,从而得到每条分割线上的不同误码率下的结果,最后将不同误码率下的结果分别地用线描绘在一起就得到了各个误码率的眼图轮廓。

现在对高速信号的眼图测试要求越来越高。
以前工程师在测量眼图时,可能在捕获时间上有多有少的自行定义,来看眼睛的高度和宽度或者抖动等。
现在很多的接口规范开始要求在一定误码率下来评估眼高和眼宽等,比如在 OIF-CEI 的标准里对 28 Gbps 信号的眼高严宽要求,就定义在1e-15的误码率下。

下图是使用 Keysight 示波器对 V by One 的信号进行眼图测试,该总线规范也要求了误码率1e-9下的眼图。在下面的眼图结果中可以看到不同误码率下的眼图轮廓,红色线就是误码率1e-9的眼图轮廓,

在这里插入图片描述


眼图和误码率 BER

在误码率( BER )的测试中,

  1. 码型发生器会生成数十亿个数据比特,并将这些数据比特发送给输入设备,然后在输出端接受这些数据比特。
  2. 误码分析仪将接受到的数据与发送的原始数据一位一位进行对比,确定哪些码接收错误,随后会给出一段时间内计算得到的 BER

考虑误码率测试的需要,我们以下面的实际测试眼图为参考,以生成误码率 BER 图,参考眼图如下所示:

在这里插入图片描述

BER 图是样点时间位置 BER(t) 的函数,称为 BERT 扫描图或浴盆曲线。简而言之,它是在相对于参考时钟给定的额定采样时间的不同时间 t 上测得的 BER
参考时钟可以是信号发射机时钟,也可以是从接收的信号中恢复的时钟,具体取决于测试的系统。

以上述的眼图为参考,眼睛张开度与误码率的关系以及其 BER 图如下:

在这里插入图片描述
眼睛张开度与误码率的关系如下:

在这里插入图片描述
上述两图中,BER 图与眼图时间轴相同,两侧与眼图边沿相对应,样点位于中心。
BER 一定时,曲线之间的距离是该 BER 图上的眼图张开程度。在样点接近交点时,抖动会导致 BER 提高到最大 0.5


示波器实时眼图分析操作步骤


附录

缩略语词汇表

参考这里2
在这里插入图片描述


参考链接


  1. 如何更好的理解信号眼图? ↩︎

  2. 理解和检定定时抖动 ↩︎


http://www.niftyadmin.cn/n/461176.html

相关文章

REGEXP基础语法

个人使用https://regex101.com/这个比较多一些,大家可以使用。 #限定符(Quantlfier) a* a出现0次或者多次 a a出现1次或者多次 a? a出现0次或者1次 a{6} a出现6次 a{2,6} a出现2-6次 a{2,} a出现2次以上 #或运算符 &#xff…

RWA 成下一轮加密大叙事,PoseiSwap 的价值正在凸显

PoseiSwap是Nautilus Chain上的首个DEX,在Nautilus Chain模块化开发的支持下,PoseiSwap能够以更具延展性的方式来构建应用,并能够为交易者提供极佳的交易体验。基于Nautilus Chain支持下的Zk-Rollup方案,PoseiSwap构建了基于零知识…

命令行编译C程序

目录 设置MSVC环境变量 C文件编译流程 编译 链接 学习起步之初,先用最基础的命令行工具进行学习 设置MSVC环境变量 这个是在VS2019下进行配置的,位置和你安装IDE的位置有关 MSVC D:\VS2019\IDE\VC\Tools\MSVC\14.29.30133WK10_INCLUDE C:\Program …

【python桌面应用设计】tkinter库 01. Tkinter程序设计思想和结构(保姆级代码注释)

目录 实现思路代码实战简单的基础结构示例稍微丰富一点的示例 总结 『python图形化GUI界面设计』分享tkinter库、PyQt5库、wxPython库等相关的新手入门教程,目标是编写python程序时可以给程序一个可视化界面。 欢迎关注 『python桌面应用设计』 系列,持续…

教师资格证终身有效吗 需要几年一审核

教师资格证终身有效吗 需要几年一审核 教师资格证是终身有效的。五年一注册是针对学校在编教师的一种政策,定期注册不合格的教师不得从事教育工作。如果你没有考教师编制的话是不需要进行定期注册的。 教师资格证是终身有效吗 教师资格证的有效期主要是有两种情况&a…

【网络2】MII MDIO

文章目录 1.MII:ISO网络模型中物理层(phy)和数据链路层(mac)属于硬件,其余都属于软件kernel2.MDC/MDIO:不仅管phy,只要支持mdio协议都可以管2.1 3.RGMII时序调整:下面波形…

Django基础入门⑧:Django路由详细讲解

Django基础入门⑧:Django路由 Django路由路由分发函数反向解析反向解析应用使用url标签实现反向解析reverse()函数实现反向解析reverse() 函数简析 命名空间namespace 🏘️🏘️个人简介:以山河作礼。 🎖️&#x1f396…

【软件设计师暴击考点】面向对象考点暴击系列

👨‍💻个人主页:元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏:软件…