1 引言
随着人们对通信需求的不断提高,要求信号的传输和处理的速度越来越快.相应的高速PCB的应用也越来越广,设计也越来越复杂.高速电路有两个方面的含义:一是频率高,通常认为数字电路的频率达到或是超过45MHz至50MHz,而且工作在这个频率之上的电路已经占到了整个系统的三分之一,就称为高速电路.另外从信号的上升与下降时间考虑,当信号的上升时间小于6倍信号传输延时时即认为信号是高速信号,此时考虑的与信号的具体频率无关.
2 高速PCB设计的基本内容
高速电路设计在现代电路设计中所占的比例越来越大,设计难度也越来越高,它的解决不仅需要高速器件,更需要设计者的智慧和仔细的工作,必须认真研究分析具体情况,解决存在的高速电路问题.一般说来主要包括三方面的设计:信号完整性设计、电磁兼容设计、电源完整性设计.
2.1 信号完整性(signal integrity)设计
信号完整性是指信号在信号线上的质量.信号具有良好的信号完整性是指当在需要的时候,具有所必需达到的电压电平数值.差的信号完整性不是由某一因素导致的,而是由板级设计中多种因素共同引起的.特别是在高速电路中,所使用的芯片的切换速度过快、端接元件布设不合理、电路的互联不合理等都会引起信号的完整性问题.具体主要包括串扰、反射、过冲与下冲、振荡、信号延迟等.
2.1.1 串扰(crosstalk)
串扰是相邻两条信号线之间的不必要的耦合,信号线之间的互感和互容引起线上的噪声.因此也就把它分为感性串扰和容性串扰,分别引发耦合电流和耦合电压.当信号的边缘速率低于1ns时,串扰问题就应该考虑.如果信号线上有交变的信号电流通过时,会产生交变的磁场,处于磁场中的相邻的信号线会感应出信号电压.一般PCB板层的参数、信号线间距、驱动端和接收端的电气特性及信号线的端接方式对串扰都有一定的影响.在Cadence的信号仿真工具中可以同时对6条耦合信号线进行串扰后仿真,可以设置的扫描参数有:PCB的介电常数,介质的厚度,沉铜厚度,信号线长度和宽度,信号线的间距.仿真时还必须指定一个受侵害的信号线,也就是考察另外的信号线对本条线路的干扰情况,激励设置为常高或是常低,这样就可以测到其他信号线对本条信号线的感应电压的总和,从而可以得到满足要求的最小间距和最大并行长度.
2.1.2 反射(reflection)
反射和我们所知道的光经过不连续的介质时都会有部分能量反射回来一样,就是信号在传输线上的回波.此时信号功率没有全部传输到负载处,有一部分被反射回来了.在高速的PCB中导线必须等效为传输线,按照传输线理论,如果源端与负载端具有相同的阻抗,反射就不会发生了.二者阻抗不匹配会引起反射,负载会将一部分电压反射回源端.根据负载阻抗和源阻抗的关系大小不同,反射电压可能为正,也可能为负.如果反射信号很强,叠加在原信号上,很可能改变逻辑状态,导致接收数据错误.如果在时钟信号上可能引起时钟沿不单调,进而引起误触发.一般布线的几何形状、不正确的线端接、经过连接器的传输及电源平面的不连续等因素均会导致此类反射. 另外常有一个输出多个接收,这时不同的布线策略产生的反射对每个接收端的影响也不相同,所以布线策略也是影响反射的一个不可忽视的因素.
2.1.3 过冲(overshoot)和下冲(undershoot)
过冲是由于电路切换速度过快以及上面提到的反射所引起的信号跳变,也就是信号第一个峰值超过了峰值或谷值的设定电压.下冲是指下一个谷值或峰值.过分的过冲能够引起保护二极管工作, 导致过早地失效,严重的还会损坏器件.过分的下冲能够引起假的时钟或数据错误.它们可以通过增加适当端接予以减少或消除.
2.1.4 振荡(ringing)和环绕振荡(rounding)
振荡的现象是反复出现过冲和下冲.信号的振荡和环绕振荡由线上过度的电感和电容引起的接收端与传输线和源端的阻抗不匹配而产生的,通常发生在逻辑电平门限附近,多次跨越逻辑电平门限会导致逻辑功能紊乱.振荡和环绕振荡同反射一样也是由多种因素引起的,振荡可以通过适当的端接或是改变PCB参数予以减小,但是不可能完全消除.
在Cadence的信号仿真软件中,将以上的信号完整性问题都放在反射参数中去度量.在接收和驱动器件的IBIS模型库中,我们只需要设置不同的传输线阻抗参数、电阻值、信号传输速率以及选择微带线还是带状线,就可以通过仿真工具直接计算出信号的波形以及相应的数据,这样就可以找出匹配的传输线阻抗值、电阻值、信号传输速率,在对应的PCB软件Allegro中,就可以根据相对应的传输线阻抗值和信号传输速率得到各层中相对应信号线的宽度(需提前设好叠层的顺序和各参数).选择电阻匹配的方式也有多种,包括源端端接和并行端接等,根据不同的电路选择不同的方式.在布线策略上也可以选择不同的方式:菊花型、星型、自定义型,每种方式都有其优缺点,可以根据不同的电路仿真结果来确定具体的选择方式.
2.1.5 信号延迟(delay)
电路中只能按照规定的时序接收数据,过长的信号延迟可能导致时序和功能的混乱,在低速的系统中不会有问题,但是信号边缘速率加快,时钟速率提高,信号在器件之间的传输时间以及同步时间就会缩短.驱动过载、走线过长都会引起延时.必须在越来越短的时间预算中要满足所有门延时,包括建立时间,保持时间,线延迟和偏斜. 由于传输线上的等效电容和电感都会对信号的数字切换产生延迟,加上反射引起的振荡回绕,使得数据信号不能满足接收端器件正确接收所需要的时间,从而导致接收错误.在Cadence的信号仿真软件中,将信号的延迟也放在反射的子参数中度量,有Settledelay、switchdelay、Propdelay.其中前两个与IBIS模型库中的测试负载有关, 这两个参数可以通过驱动器件和接收器件的用户手册参数得到, 可以将它们与仿真后的Settledelay、Switchdelay加以比较,如果在Slow模式下得到的Switchdelay都小于计算得到的值,并且在Fast的模式下得到的Switchdelay的值都大于计算得到的值,就可以得出我们真正需要的两个器件之间的时延范围Propdelay.在具体器件布放的时候,如果器件的位置不合适,在对应的时延表中那部分会显示红色,当把其位置调整合适后将会变成蓝色,表示信号在器件之间的延时已经满足Propdelay规定的范围了.
2.2 电磁兼容性(Electro Magnetic Compatibility)设计
电磁兼容包括电磁干扰和电磁忍受,也就是过量的电磁辐射以及对电磁辐射的敏感程度两个方面. 电磁干扰有传导干扰和辐射干扰两种.传导干扰是指以电流的形式通过导电介质把一个电网络上的信号传导到另一个电网络,PCB中主要表现为地线噪声和电源噪声.辐射干扰是指信号以电磁波的形式辐射出去,从而影响到另一个电网络.在高速PCB及系统设计中,高频信号线、芯片的引脚、接插件等都可能成为具有天线特性的辐射干扰源.对EMC的设计根据设计的重要性可以分为四个层次:器件和PCB级设计,接地系统的设计,屏蔽系统设计以及滤波设计.其中的前两个最为重要,器件和PCB级设计主要包括有源器件的选择、电路板的层叠、布局布线等.接地系统的设计主要包括接地方式、地阻抗控制、地环路和屏蔽层接地等.在Cadence的仿真工具中,电磁干扰的仿真参数可以设置在X、Y、Z三个方向上的距离、频率的范围、设计余量、符合标准等.此仿真属于后仿真,主要检验是否符合设计要求,因此,在做前期工作时,我们还需要按照电磁干扰的理论去设计,通常的做法是将控制电磁干扰的各项设计规则应用到设计的每个环节,实现在各个环节上的规则驱动和控制.
2.3 电源完整性(power integrity)设计
在高速电路中, 电源和地的完整性也是一个非常重要的因素, 因为电源的完整性和信号的完整性是密切相关的.在大多数情况下,影响信号畸变的主要原因是电源系统.如:地反弹噪声太大、去耦合电容设计不合适、多电源或地平面地分割不好、地层设计不合理、电流分配不均等都会带来电源完整性方面的问题,引起信号的畸变而影响到信号的完整性.解决的主要思路有确定电源分配系统,将大尺寸电路板分割成几块小尺寸板,根据地平面反弹噪声(Ground Bounce)(简称地弹)确定去耦电容,以及着眼于整个PCB板考虑等几个方面.
在电路中有大的电流涌动时会引起地弹,如大量芯片的输出同时开启时,将有一个较大的瞬态电流在芯片与板的电源平面流过,芯片封装与电源平面的电感和电阻会引发电源噪声,这样会在真正的地平面上产生电压的波动和变化,这种噪声会影响其它元器件的动作.设计中减小负载电容、增大负载电阻、减小地电感、减少器件同时开关的数目均可以减少地弹.由于地电平面分割,例如地层被分割为数字地、模拟地、屏蔽地等,当数字信号走到模拟地线区域时,就会产生地平面回流噪声.同时根据选用的器件不同,电源层也可能会被分割为几种不同电压层,此时地弹和回流噪声更需特别关注.在电源完整性的设计中电源分配系统和去耦电容的选择很重要.一般使得电源系统(电源和地平面)之间的阻抗越低越好.可以通过规定最大的电压和电流变化范围来确定我们希望达到的目标阻抗,然后通过调整电路中的相关因素使电源系统各部分的阻抗与目标阻抗逼近.对于去耦电容,必须考虑电容的寄生参数,定量的计算出去耦电容的个数以及每个电容的容值和具体放置位置,尽量做到电容一个不多,一个不少.在Cadence仿真工具中,将接地反弹称为同步开关噪声(Simultaneous switch noise)。在仿真时将电源间的寄生电感、电容和电阻, 以及器件封装的寄生电感、电容和电阻都做考虑,结果比较符合实际情况.还可以根据系统使用的电路类型与工作频率,设置好期望的相关指标参数后,计算出合适的电容大小以及最佳的布放位置,设计具有低阻抗的接地回路来解决电源完整性问题。
3 高速PCB的设计方法
3.1 传统的设计方法
如图1是传统的设计方法,在最后测试之前,没有做任何的处理,基本都是依靠设计者的经验来完成的.在对样机测试检验时才可以查找到问题,确定问题原因.为了解决问题,很可能又要从头开始设计一遍.无论是从开发周期还是开发成本上看,这种主要依赖设计者经验的方法不能满足现代产品开发的要求,更不能适应现代高速电路高复杂性的设计.所以必须借助先进的设计工具来定性、定量的分析,控制设计流程.
3.2 Cadence设计方法
现在越来越多的高速设计是采用一种有利于加快开发周期的更有效的方法.先是建立一套满足设计性能指标的物理设计规则,通过这些规则来限制PCB布局布线.在器件安装之前,先进行仿真设计.在这种虚拟测试中,设计者可以对比设计指标来评估性能.而这些关键的前提因素是要建立一套针对性能指标的物理设计规则,而规则的基础又是建立在基于模型的仿真分析和准确预测电气特性之上的,所以不同阶段的仿真分析显得非常重要.Cadence软件针对高速PCB的设计开发了自己的设计流程,如图2它的主要思想是用好的仿真分析设计来预防问题的发生,尽量在PCB制作前解决一切可能发生的问题.与左边传统的设计流程相比,最主要的差别是在流程中增加了控制节点,可以有效地控制设计流程.它将原理图设计、PCB布局布线和高速仿真分析集成于一体,可以解决在设计中各个环节存在的与电气性能相关的问题.通过对时序、信噪、串扰、电源结构和电磁兼容等多方面的因素进行分析,可以在布局布线之前对系统的信号完整性、电源完整性、电磁干扰等问题作最优的设计.
图1 传统高速设计流程
图2 Cadence高速设计流程
4 结语
高速PCB设计是一个很复杂的系统工程,只有借助于那些不仅能计算设计中用到的每个元器件的物理特性和电气特性的影响及其相互作用,还必须能从设计的PCB中自动提取和建立模型,并且具有提供对实际设计操作产生动态特性描述的仿真器等强大功能的EDA软件工具,才能更全面地解决以上信号完整性、电磁干扰、电源完整性等问题.在具体设计过程中,在横向上要求各部分的设计人员通力合作,在纵向上要求设计的各个阶段综合考虑,把设计和仿真贯穿于整个设计过程,实现过程的可控性,具体指标的量化.只有这样才能做到高效的设计.