数字信号的带宽(Bandwidth)
在进行数字信号的分析和测试时,了解我们要分析的数字信号的带宽是很重要的一点,它决定了我们进行电路设计时对PCB走线和传输介质传输带宽的要求,也决定了测试对仪表的要求。
数字信号的带宽可以大概理解为数字信号的能量在频域的一个分布范围,由于数字信号不是正弦波,有很多高次谐波成分,所以其在频域的能量分布是一个比较复杂的问题。
传统上做数字电路设计的工程师习惯根据信号的5次谐波来估算带宽,比如如果信号的数据速率是100Mbps,其快的0101的跳变波形相当于50MHz的方波时钟,这个方波时钟的5次谐波成分是250MHz,因此信号的带宽大概就在250MHz以内。这种方法看起来很合理,因为5次谐波对于重建信号的基本波形形状是非常重要的,但这种方法对于需要进行精确波形参数测量的场合来说就不太准确了。比如同样是50MHz 的信号,如果上升沿很陡接近理想方波,其高次谐波能量就比较大;而如果上升沿很缓接近 正弦波,其高次谐波能量就很小。
数字信号是离散的。它的幅度被限制在一个确定的值。重庆数字信号测试眼图测试
需要注意的是,采用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以太网中也有广泛应用。重庆数字信号测试眼图测试波形参数测试室数字信号测试常用的测量方法,随着数字信号速率的提高,波形参数的测量方法越来越不适用了。
值得注意的是,在同步电路中,如果要得到稳定的逻辑状态,对于采样时钟和信号间的时序关系是有要求的。比如,如果时钟的有效边沿正好对应到数据的跳变区域附近,可能会采样到不可靠的逻辑状态。数字电路要得到稳定的逻辑状态,通常都要求在采样时钟有效边沿到来时被采信号已经提前建立一个新的逻辑状态,这个提前的时间通常称为建立时间(SetupTime);同样,在采样时钟的有效边沿到来后,被采信号还需要保持这个逻辑状态一定时间以保证采样数据的稳定,这个时间通常称为保持时间(HoldTime)。如图1.6所示是一个典型的D触发器对建立和保持时间的要求。Data信号在CLK信号的有效边沿到来t、前必须建立稳定的逻辑状态,在CLK有效边沿到来后还要保持当前逻辑状态至少tn这么久,否则有可能造成数据采样的错误。
数字信号的上升时间(Rising Time)
任何一个真实的数字信号在由一个逻辑电平状态跳转到另一个逻辑电平状态时,其中间的过渡时间都不会是无限短的。信号电平跳变的过渡时间越短,说明信号边沿越陡。我们通常使用上升时间(RisingTime)这个参数来衡量信号边沿的陡缓程度,通常上升时间是指数字信号由幅度的10%增加到幅度的90%所花的时间(也有些场合会使用20%~80%的上升时间或其他标准)。上升时间越短,说明信号越陡峭。大部分数字信号的下降时间(信号从幅度的90%下降到幅度的10%所花的时间)和上升时间差不多(也有例外)。图1.2比较了两种不同上升时间的数字信号。上升时间可以客观反映信号边沿的陡缓程度,而且由于计算和测量简单,所以得到的应用。对有些非常高速的串行数字信号,如PCIe、USB3.0、100G以太网等信号,由于信号速率很高,传输线对信号的损耗很大,信号波形中很难找到稳定的幅度10%和90%的位置,所以有时也会用幅度20%~80%的上升时间来衡量信号的陡缓程度。通常速率越高的信号其上升时间也会更陡一些(但不一定速率低的信号上升时间一定就缓),上升时间是数字信号分析中的一个非常重要的概念,后面我们会反复提及和用到这个概念。 数字信号取值是散的,通过数学方法对原有信号处理,编码成二进制信号后,再载波的方式发送编码后的数字流。
数字信号测试串行总线的8b/10b编码(8b/10bEncoding)
前面我们介绍过,使用串行比并行总线可以节省更多的布线空间,芯片、电缆等的尺寸可以做得更小,同时传输速率更高。但是我们知道,在很多数字系统如CPU、DSP、FPGA等内部,进行数据处理的小单位都是Byte,即8bit,把一个或多个Byte的数据通过串行总线可靠地传输出去是需要对数据做些特殊处理的。将并行数据转换成串行信号传输的简单的方法如图1.19所示。比如发送端的数据宽度是8bit,时钟速率是100MHz,我们可以通过Mux(复用器)芯片把8bit的数据时分复用到1bit的数据线上,相应的数据速率提高到800Mbps(在有些LVDS的视频信号传输中比较常用的是把并行的7bit数据时分复用到1bit数据线上)。信号到达接收端以后,再通过Demux(解复用器)芯片把串行的信号分成8路低速的数据。 数字设备是由很多电路组成来实现一定的功能,系统中的各个部分通过数字信号的传输来进行信息和数据的交互。重庆数字信号测试眼图测试
数字通信的带宽表征为:bit的传输速率;重庆数字信号测试眼图测试
为了保证接收端在时钟有效沿时采集到正确的数据,通常都有建立/保持时间的要求,以避免采到数据线上跳变时不稳定的状态,因此这种总线对于时钟和数据线间走线长度的差异都有严格要求。这种并行总线在使用中比较大的挑战是当总线时钟速率超过几百MHz后就很难再提高了,因为其很多根并行线很难满图1.15并行总线的时钟传输足此时苛刻的走线等长的要求,特别是当总线上同时挂有多个设备时。为了解决并行总线工作时钟频率很难提高的问题,一些系统和芯片的设计厂商提出了嵌入式时钟的概念。其思路首先是把原来很多根的并行线用一对或多对高速差分线来代替,节省了布线空间;然后把系统的时钟信息通过数据编码的方式嵌在数据流里,省去了专门的时钟走线。信号到了接收端,接收端采用相应的CDR(clock-datarecovery)电路把数据流中内嵌的时钟信息提取出来再对数据采样。图1.16是一个采用嵌入式时钟的总线例子。重庆数字信号测试眼图测试
这种并/串转换方法由于不涉及信号的编解码,结构简单,效率较高,但是需要收发端进行精确的时钟同步以控制信号的复用和解复用操作,因此需要专门的时钟传输通道,而且串行信号上一旦出现比较大的抖动就会造成串/并转换的错误。 因此,这种简单的并/串转换方式一般用于比较关注传输效率的芯片间的短距离互连或者一些光端机信号的传输中。另外,由于信号没有经过任何编码,信号中可能会出现比较长的连续的0或者连续的1,因此信号必须采用直流耦合方式,收发端一旦存在比较大的共模或地噪声,会严重影响信号质量,因此这种并/串转换方式用于电信号传输时或者传输速率不太高(通常<1Gbps),或者传输距离不太远(通常<50c...