数字信号测试串行总线的8b/10b编码(8b/10bEncoding)
前面我们介绍过,使用串行比并行总线可以节省更多的布线空间,芯片、电缆等的尺寸可以做得更小,同时传输速率更高。但是我们知道,在很多数字系统如CPU、DSP、FPGA等内部,进行数据处理的小单位都是Byte,即8bit,把一个或多个Byte的数据通过串行总线可靠地传输出去是需要对数据做些特殊处理的。将并行数据转换成串行信号传输的简单的方法如图1.19所示。比如发送端的数据宽度是8bit,时钟速率是100MHz,我们可以通过Mux(复用器)芯片把8bit的数据时分复用到1bit的数据线上,相应的数据速率提高到800Mbps(在有些LVDS的视频信号传输中比较常用的是把并行的7bit数据时分复用到1bit数据线上)。信号到达接收端以后,再通过Demux(解复用器)芯片把串行的信号分成8路低速的数据。 示波器进行数字信号的幅度测试;吉林PCI-E测试数字信号测试
这种方法由于不需要单独的时钟走线,各对差分线可以采用各自的CDR电路,所以对各对线的等长要求不太严格(即使要求严格也很容易实现,因为走线数量减少,而且信号都是点对点传输)。为了把时钟信息嵌在数据流里,需要对数据进行编码,比较常用的编码方式有ANSI的8b/10b编码、64b/66b编码、曼彻斯特编码、特殊的数据编码以及对数据进行加扰等。
嵌入式时钟结构的关键在于CDR电路,CDR的工作原理如图1.17所示。CDR通常用一个PLL电路实现,可以从数据中提取时钟。PLL电路通过鉴相器(PhaseDetector)比较输入信号和本地VCO(压控振荡器)间的相差,并把相差信息通过环路滤波器(Filter)滤波后转换成低频的对VCO的控制电压信号,通过不断的比较和调整终实现本地VCO对输入信号的时钟锁定。 吉林PCI-E测试数字信号测试对于一个数字信号,要进行可靠的0、1信号传输,就必须满足一定的电平、幅度、时序等标准的要求。
简单的预加重对信号的频谱改善并不是完美的,比如其频率响应曲线并不一定与实际 的传输通道的损耗曲线相匹配,所以高速率总线会采用阶数更高、更复杂的预加重技术。 图1.28所示是一个3阶的预加重,其除了对跳变沿后面的第1个比特进行预加重处理外,跳变沿 之后的第2个比特的幅度也有变化。跳变沿后第1个比特的幅度变化有时也叫Post Cursorl,
跳变沿后的第2个比特的幅度变化有时也叫Post Cursor2。有些总线如PCIe3.0,会对跳变 沿前面的1个比特的幅度也进行调整,叫作Pre Cursor1,有时也称为PreShoot。
建立时间和保持时间加起来的时间称为建立/保持时间窗口,是接收端对于信号保持在 同一个逻辑状态的**小的时间要求。数字信号的比特宽度如果窄于这个时间窗口就肯定无 法同时满足建立时间和保持时间的要求,所以接收端对于建立/保持时间窗口大小的要求实 际上决定了这个电路能够工作的比较高的数据速率。通常工 作速率高一些的芯片,很短的建 立时间、保持时间就可以保证电路可靠工作,而工作速率低一 些的芯片则会要求比较长的建 立时间和保持时间。
另外要注意的是, 一个数字电路能够可靠工作的比较高数据速率不仅取决于接收端对于 建立/保持时间的要求,输出端的上升时间过缓、输出幅度偏小、信号和时钟中有抖动、信号 有畸变等很多因素都会消耗信号建立/保持时间的裕量。因此一个数字电路能够达到的比较高数据传输速率与发送芯片、接收芯片以及传输路径都有关系。
建立时间和保持时间是数字电路非常重要的概念,是接收端可靠信号接收的**基本要 求,也是数字电路可靠工作的基础。可以说,大部分数字信号的测量项目如数据速率、信号 幅度、眼图、抖动等的测量都是为了间接保证信号满足接收端对建立时间和保持时间的要 求,在以后章节的论述中我们可以慢慢体会。 数字信号上升时间的定义;
时域数字信号转换得到的频域信号如果起来,则可以复现原来的时域信号。
描绘了直流频率分量加上基频频率分量与直流频域分量加上基频和3倍频频率分量,以及5倍频率分量成的时域信号之间的差别,我们可以看到不同频域分量的所造成的时域信号边沿的差别。频域里包含的频域分量越多,这些频域分量成的时域信号越接近 真实的数字信号,高频谐波分量主要影响信号边沿时间,低频的分量影响幅度。当然,如果 时域数字信号转变岀的一个个频率点的正弦波都叠加起来,则可以完全复现原来的时域 数字信号。其中复原信号的不连续点的震荡被称为吉布斯震荡现象。 数字信号是一种信号与自变量和因变量的分散。变量通常用整数表示的,而因变量的数量有限的数字表示。吉林PCI-E测试数字信号测试
数字信号的抖动(Jitter);吉林PCI-E测试数字信号测试
数字信号并行总线与串行总线(Parallel and Serial Bus)
虽然随着技术的发展,现代的数字芯片已经集成了越来越多的功能,但是对于稍微复杂 一点的系统来说,很多时候单独一个芯片很难完成所有的工作,这就需要和其他芯片配合起 来工作。比如现在的CPU的处理能力越来越强,很多CPU内部甚至集成了显示处理的功 能,但是仍然需要配合外部的内存芯片来存储临时的数据,需要配合桥接芯片扩展硬盘、 USB等接口;现代的FPGA内部也可以集成CPU、DSP、RAM、高速收发器等,但有些 场合可能还需要配合用的DSP来进一步提高浮点处理效率,配合额外的内存芯片来扩展 存储空间,配合用的物理层芯片来扩展网口、USB等,或者需要多片FPGA互连来提高处 理能力。所有这一切,都需要用到相应的总线来实现多个数字芯片间的互连。如果我们把 各个功能芯片想象成人体的各个功能,总线就是血脉和经络,通过这些路径,各个功能 模块间才能进行有效的数据交换和协同工作。 吉林PCI-E测试数字信号测试