2.1.2 反射(reflection)
反射和我们所知道的光经过不连续的介质时都会有部分能量反射回来一样,就是信号在传输线上的回波。此时信号功率没有全部传输到负载处,有一部分被反射回来了。在高速的PCB中导线必须等效为传输线,按照传输线理论,如果源端与负载端具有相同的阻抗,反射就不会发生了。二者阻抗不匹配会引起反射,负载会将一部分电压反射回源端。根据负载阻抗和源阻抗的关系大小不同,反射电压可能为正,也可能为负。如果反射信号很强,叠加在原信号上,很可能改变逻辑状态,导致接收数据错误。如果在时钟信号上可能引起时钟沿不单调,进而引起误触发。一般布线的几何形状、不正确的线端接、经过连接器的传输及电源平面的不连续等因素均会导致此类反射。 另外常有一个输出多个接收,这时不同的布线策略产生的反射对每个接收端的影响也不相同,所以布线策略也是影响反射的一个不可忽视的因素。
2.1.3 过冲(overshoot)和下冲(undershoot)
过冲是由于电路切换速度过快以及上面提到的反射所引起的信号跳变,也就是信号第一个峰值超过了峰值或谷值的设定电压。下冲是指下一个谷值或峰值。过分的过冲能够引起保护二极管工作, 导致过早地失效,严重的还会损坏器件。过分的下冲能够引起假的时钟或数据错误。它们可以通过增加适当端接予以减少或消除。
2.1.4 振荡(ringing)和环绕振荡(rounding)
振荡的现象是反复出现过冲和下冲。信号的振荡和环绕振荡由线上过度的电感和电容引起的接收端与传输线和源端的阻抗不匹配而产生的,通常发生在逻辑电平门限附近,多次跨越逻辑电平门限会导致逻辑功能紊乱。振荡和环绕振荡同反射一样也是由多种因素引起的,振荡可以通过适当的端接或是改变PCB参数予以减小,但是不可能完全消除。
在Cadence的信号仿真软件中,将以上的信号完整性问题都放在反射参数中去度量。在接收和驱动器件的IBIS模型库中,我们只需要设置不同的传输线阻抗参数、电阻值、信号传输速率以及选择微带线还是带状线,就可以通过仿真工具直接计算出信号的波形以及相应的数据,这样就可以找出匹配的传输线阻抗值、电阻值、信号传输速率,在对应的PCB软件Allegro中,就可以根据相对应的传输线阻抗值和信号传输速率得到各层中相对应信号线的宽度(需提前设好叠层的顺序和各参数)。选择电阻匹配的方式也有多种,包括源端端接和并行端接等,根据不同的电路选择不同的方式。在布线策略上也可以选择不同的方式:菊花型、星型、自定义型,每种方式都有其优缺点,可以根据不同的电路仿真结果来确定具体的选择方式。