采用并行总线的另外一个问题在于总线的吞吐量很难持续提升。对于并行总线来说, 其总线吞吐量=数据线位数×数据速率。我们可以通过提升数据线的位数来提高总线吞吐 量,也可以通过提升数据速率来提高总线吞吐量。以个人计算机中曾经非常流行的PCI总 线为例,其**早推出时总线是32位的数据线,工作时钟频率是33MHz,其总线吞吐量= 32bit×33MHz;后来为了提升其总线吞吐量推出的PCI-X总线,把总线宽度扩展到64位, 工作时钟频率比较高提升到133MHz,其总线吞吐量=64bit×133MHz。是PCI插槽 和PCI-X插槽的一个对比,可以看到PCI-X由于使用了更多的数据线,其插槽更长。
但是随着人们对于总线吞吐量要求的不断提高,这种提升总线带宽的方式遇到了瓶颈。首先由于芯片尺寸和布线空间的限制,64位数据宽度已经几乎是极限了。另外,这64根数据线共用一个采样时钟,为了保证所有的信号都满足其建立保持时间的要求,在PCB上布线、换层、拐弯时需要保证精确等长。而总线工作速率越高,对于各条线的等长要求就越高,对于这么多根信号要实现等长的布线是很难做到的。
用逻辑分析仪采集到的一个实际的8位总线的工作时序,可以看到在数据从0x00跳变到0xFF状态过程中,这8根线实际并不是精确一起跳变的。 模拟信号和数字信号的相互转换;机械数字信号测试USB测试
数字信号的均衡(Equalization)
前面介绍了预加重或者去加重技术对于克服传输通道损耗、改善高速数字信号接收端信号质量的作用,但是当信号速率进一步提高或者传输距离更长时,**在发送端已不能充分补偿传输通道带来的损耗,这时就需要在接收端同时使用均衡技术来进一步改善信号质量。所谓均衡,是在数字信号的接收端进行的一种补偿高频损耗的技术。常见的信号均衡技术有3种:CTLE(ContinuousTimeLinearEqualization)、FFE(FeedForwardEqualization)和DFE(DecisionFeedbackEqualization).CTLE是在接收端提供一个高通滤波器,这个高通滤波器可以对信号中的主要高频分量进行放大,这一点和发送端的预加重技术带来的效果是类似的。有些速率比较高的总线,为了适应不同链路长度损耗的影响,还支持多挡不同增益的CTLE均衡器。图1.35是PCle5.0总线在接收端使用的CTLE均衡器的频响曲线的例子。 机械数字信号测试USB测试数字此案好的上升时间(Rising Time);
数字信号基础单端信号与差分信号(Single-end and Differential Signals)
数字总线大部分使用单端信号做信号传输,如TTL/CMOS信号都是单端信号。所谓单端信号,是指用一根信号线的高低电平的变化来进行0、1信息的传输,这个电平的高低变化是相对于其公共的参考地平面的。单端信号由于结构简单,可以用简单的晶体管电路实现,而且集成度高、功耗低,因此在数字电路中得到的应用。是一个单端信号的传输模型。
当信号传输速率更高时,为了减小信号的跳变时间和功耗,信号的幅度一般都会相应减小。比如以前大量使用的5V的TTL信号现在使用越来越少,更多使用的是3.3V/2.5V/1.8V/1.5V/1.2V的LVTTL电平,但是信号幅度减小带来的问题是对噪声的容忍能力会变差一些。进一步,很多数字总线现在需要传输更长的距离,从原来芯片间的互连变成板卡间的互连甚至设备间的互连,信号穿过不同的设备时会受到更多噪声的干扰。更极端的情况是收发端的参考地平面可能也不是等电位的。因此,当信号速率变高、传输距离变长后仍然使用单端的方式进行信号传输会带来很大的问题。图1.12是一个受到严重共模噪声干扰的单端信号,对于这种信号,无论接收端的电平判决阈值设置在哪里都可能造成信号的误判。
对于典型的3.3V的低电压TTL(LVTTL)信号来说,判决阈值的下限是0.8V,判决阈 值的上限是2.0V。正是由于判决阈值的存在,使得数字信号相对于模拟信号来说有更高的 可靠性和抗噪声的能力。比如对于3.3V的LVTTL信号来说,当信号输出电压为0V时, 只要噪声或者干扰的幅度不超过0.8V,就不会把逻辑状态由0误判为1;同样,当信号输出 电压为3.3V时,只要噪声或者干扰的幅度不会使信号电压低于2.0V,就不会把逻辑状态 由1误判为0。
从上面的例子可以看到,数字信号抗噪声和干扰的能力是比较强的。但也需要注意,这 个“强”是相对的,如果噪声或干扰的影响使得信号的电压超出了其正常逻辑的判决区间,数字信号也仍然有可能产生错误的数据传输。在许多场合,我们对数字信号质量进行分析和 测试的基本目的就是要保证其信号电平在进行采样时满足基本的逻辑判决条件。 数字信号的预加重(Pre-emphasis);
数字信号并行总线与串行总线(Parallel and Serial Bus)
虽然随着技术的发展,现代的数字芯片已经集成了越来越多的功能,但是对于稍微复杂 一点的系统来说,很多时候单独一个芯片很难完成所有的工作,这就需要和其他芯片配合起 来工作。比如现在的CPU的处理能力越来越强,很多CPU内部甚至集成了显示处理的功 能,但是仍然需要配合外部的内存芯片来存储临时的数据,需要配合桥接芯片扩展硬盘、 USB等接口;现代的FPGA内部也可以集成CPU、DSP、RAM、高速收发器等,但有些 场合可能还需要配合用的DSP来进一步提高浮点处理效率,配合额外的内存芯片来扩展 存储空间,配合用的物理层芯片来扩展网口、USB等,或者需要多片FPGA互连来提高处 理能力。所有这一切,都需要用到相应的总线来实现多个数字芯片间的互连。如果我们把 各个功能芯片想象成人体的各个功能,总线就是血脉和经络,通过这些路径,各个功能 模块间才能进行有效的数据交换和协同工作。 数字信号上升时间的定义;机械数字信号测试USB测试
数字信号处理中的基础运算;机械数字信号测试USB测试
需要注意的是,采用8b/10b编码方式也是有缺点的,比较大的缺点就是8bit到10bit的编码会造成额外的20%的编码开销,所以很多10Gbps左右或更高速率的总线不再使用8b/10b编码方式。比如PCIe1.0和PCIe2.0的总线速率分别为2.5Gbps和5Gbps,都是采用8b/10b编码,而PCle3.0、PCle4.0、PCle5.0的总线速率分别达到8Gbps、16Gbps和32Gbps,并通过效率更高的128b/130b的编码结合扰码的方法来实现直流平衡和嵌入式时钟。另一个例子是FibreChannel总线,1xFC、2xFC、4xFC、8xFC的数据速率分别为1.0625Gbps、2 . 125Gbps,4 . 25Gbps 、8 . 5Gbps,都是采用8b/10b编码,而16xFC 、32xFC 的数据速率分别 为14.025Gbps和28.05Gbps,采用的是效率更高的64b/66b编码方式。64b/66b编码在 10G和100G以太网中也有广泛应用。机械数字信号测试USB测试