在PCB设计中,布线是完成产品设计的重要步骤,可以说前面的准备工作都是为它而做的, 在整个PCB中,以布线的设计过程限定最高,技巧最细、工作量最大。PCB布线有单面布线、 双面布线及多层布线。布线的方式也有两种:自动布线及交互式布线,在自动布线之前, 可以用交互式预先对要求比较严格的线进行布线,输入端与输出端的边线应避免相邻平行, 以免产生反射干扰。必要时应加地线隔离,两相邻层的布线要互相垂直,平行容易产生寄生耦合。
自动布线的布通率,依赖于良好的布局,布线规则可以预先设定, 包括走线的弯曲次数、导通孔的数目、步进的数目等。一般先进行探索式布经线,快速地把短线连通, 然后进行迷宫式布线,先把要布的连线进行全局的布线路径优化,它可以根据需要断开已布的线。 并试着重新再布线,以改进总体效果。
对目前高密度的PCB设计已感觉到贯通孔不太适应了, 它浪费了许多宝贵的布线通道,为解决这一矛盾,出现了盲孔和埋孔技术,它不仅完成了导通孔的作用, 还省出许多布线通道使布线过程完成得更加方便,更加流畅,更为完善,PCB 板的设计过程是一个复杂而又简单的过程,要想很好地掌握它,还需广大电子工程设计人员去自已体会, 才能得到其中的真谛。
一、设计流程
PCB的设计流程分为网表输入、规则设置、元器件布局、布线、检查、复查、输出六个步骤.
1.1 网表输入
网表输入有两种方法,一种是使用PowerLogic的OLE PowerPCB Connection功能,选择Send Netlist,应用OLE功能,可以随时保持原理图和PCB图的一致,尽量减少出错的可能。另一种方法是直接在PowerPCB中装载网表,选择File->Import,将原理图生成的网表输入进来。
1.2 规则设置
如果在原理图设计阶段就已经把PCB的设计规则设置好的话,就不用再进行设置. 这些规则了,因为输入网表时,设计规则已随网表输入进PowerPCB了。如果修改了设计规则,必须同步原理图,保证原理图和PCB的一致。除了设计规则和层定义外,还有一些规则需要设置,比如Pad Stacks,需要修改标准过孔的大小。如果设计者新建了一个焊盘或过孔,一定要加上Layer 25。
注意:
PCB设计规则、层定义、过孔设置、CAM输出设置已经作成缺省启动文件,名称为Default.stp,网表输入进来以后,按照设计的实际情况,把电源网络和地分配给电源层和地层,并设置其它高级规则。在所有的规则都设置好以后,在PowerLogic中,使用OLE PowerPCB Connection的Rules From PCB功能,更新原理图中的规则设置,保证原理图和PCB图的规则一致。
1.3 元器件布局
网表输入以后,所有的元器件都会放在工作区的零点,重叠在一起,下一步的工作就是把这些元器件分开,按照一些规则摆放整齐,即元器件布局。PowerPCB提供了两种方法,手工布局和自动布局。
1.3.1 手工布局
1. 工具印制板的结构尺寸画出板边(Board Outline)。
2. 将元器件分散(Disperse Components),元器件会排列在板边的周围。
3. 把元器件一个一个地移动、旋转,放到板边以内,按照一定的规则摆放整齐。
1.3.2 自动布局
PowerPCB提供了自动布局和自动的局部簇布局,但对大多数的设计来说,效果并不理想,不推荐使用。
1.3.3 注意事项
a. 布局的首要原则是保证布线的布通率,移动器件时注意飞线的连接,把有连线关系的器件放在一起
b. 数字器件和模拟器件要分开,尽量远离
c. 去耦电容尽量靠近器件的VCC
d. 放置器件时要考虑以后的焊接,不要太密集
e. 多使用软件提供的Array和Union功能,提高布局的效率
1.4 布线
布线的方式也有两种,手工布线和自动布线。PowerPCB提供的手工布线功能十分强大,包括自动推挤、在线设计规则检查(DRC),自动布线由Specctra的布线引擎进行,通常这两种方法配合使用,常用的步骤是手工—自动—手工。
1.4.1 手工布线
1. 自动布线前,先用手工布一些重要的网络,比如高频时钟、主电源等,这些网络往往对走线距离、线宽、线间距、屏蔽等有特殊的要求;另外一些特殊封装,如BGA,自动布线很难布得有规则,也要用手工布线。
2. 自动布线以后,还要用手工布线对PCB的走线进行调整。
1.4.2 自动布线
手工布线结束以后,剩下的网络就交给自动布线器来自布。选择Tools->SPECCTRA,启动Specctra布线器的接口,设置好DO文件,按Continue就启动了Specctra布线器自动布线,结束后如果布通率为100%,那么就可以进行手工调整布线了;如果不到100%,说明布局或手工布线有问题,需要调整布局或手工布线,直至全部布通为止。
1.4.3 注意事项
a. 电源线和地线尽量加粗
b. 去耦电容尽量与VCC直接连接
c. 设置Specctra的DO文件时,首先添加Protect all wires命令,保护手工布的线不被自动布线器重布
d. 如果有混合电源层,应该将该层定义为Split/mixed Plane,在布线之前将其分割,布完线之后,使用Pour Manager的Plane Connect进行覆铜
e. 将所有的器件管脚设置为热焊盘方式,做法是将Filter设为Pins,选中所有的管脚,修改属性,在Thermal选项前打勾
f. 手动布线时把DRC选项打开,使用动态布线(Dynamic Route)
1.5 检查
检查的项目有间距(Clearance)、连接性(Connectivity)、高速规则(High Speed)和电源层(Plane),这些项目可以选择Tools->Verify Design进行。如果设置了高速规则,必须检查,否则可以跳过这一项。检查出错误,必须修改布局和布线。
注意:
有些错误可以忽略,例如有些接插件的Outline的一部分放在了板框外,检查间距时会出错;另外每次修改过走线和过孔之后,都要重新覆铜一次。
1.6 复查
复查根据“PCB检查表”,内容包括设计规则,层定义、线宽、间距、焊盘、过孔设置;还要重点复查器件布局的合理性,电源、地线网络的走线,高速时钟网络的走线与屏蔽,去耦电容的摆放和连接等。复查不合格,设计者要修改布局和布线,合格之后,复查者和设计者分别签字。
1.7 设计输出
PCB设计可以输出到打印机或输出光绘文件。打印机可以把PCB分层打印,便于设计者和复查者检查;光绘文件交给制板厂家,生产印制板。光绘文件的输出十分重要,关系到这次设计的成败,下面将着重说明输出光绘文件的注意事项。
a. 需要输出的层有布线层(包括顶层、底层、中间布线层)、电源层(包括VCC层和GND层)、丝印层(包括顶层丝印、底层丝印)、阻焊层(包括顶层阻焊和底层阻焊),另外还要生成钻孔文件(NC Drill)
b. 如果电源层设置为Split/Mixed,那么在Add Document窗口的Document项选择Routing,并且每次输出光绘文件之前,都要对PCB图使用Pour Manager的Plane Connect进行覆铜;如果设置为CAM Plane,则选择Plane,在设置Layer项的时候,要把Layer25加上,在Layer25层中选择Pads和Vias
c. 在设备设置窗口(按Device Setup),将Aperture的值改为199
d. 在设置每层的Layer时,将Board Outline选上
e. 设置丝印层的Layer时,不要选择Part Type,选择顶层(底层)和丝印层的Outline、Text、Line
f. 设置阻焊层的Layer时,选择过孔表示过孔上不加阻焊,不选过孔表示家阻焊,视具体情况确定
g. 生成钻孔文件时,使用PowerPCB的缺省设置,不要作任何改动。
h. 所有光绘文件输出以后,用CAM350打开并打印,由设计者和复查者根据“PCB检查表”检查。
二、过孔
过孔(via)是多层PCB的重要组成部分之一,钻孔的费用通常占PCB制板费用的30%到40%。简单的说来,PCB上的每一个孔都可以称之为过孔。从作用上看,过孔可以分成两类:一是用作各层间的电气连接;二是用作器件的固定或定位。如果从工艺制程上来说,这些过孔一般又分为三类,即盲孔(blind via)、埋孔(buried via)和通孔(through via)。
盲孔位于印刷线路板的顶层和底层表面,具有一定深度,用于表层线路和下面的内层线路的连接,孔的深度通常不超过一定的比率(孔径)。
埋孔是指位于印刷线路板内层的连接孔,它不会延伸到线路板的表面。上述两类孔都位于线路板的内层,层压前利用通孔成型工艺完成,在过孔形成过程中可能还会重叠做好几个内层。
第三种称为通孔,这种孔穿过整个线路板,可用于实现内部互连或作为元件的安装定位孔。由于通孔在工艺上更易于实现,成本较低,所以绝大部分印刷电路板均使用它,而不用另外两种过孔。以下所说的过孔,没有特殊说明的,均作为通孔考虑。
从设计的角度来看,一个过孔主要由两个部分组成,一是中间的钻孔(drill hole),二是钻孔周围的焊盘区,见下图。这两部分的尺寸大小决定了过孔的大小。很显然,在高速,高密度的PCB设计时,设计者总是希望过孔越小越好,这样板上可以留有更多的布线空间,此外,过孔越小,其自身的寄生电容也越小,更适合用于高速电路。但孔尺寸的减小同时带来了成本的增加,而且过孔的尺寸不可能无限制的减小,它受到钻孔(drill)和电镀(plating)等工艺技术的限制:孔越小,钻孔需花费的时间越长,也越容易偏离中心位置;且当孔的深度超过钻孔直径的6倍时,就无法保证孔壁能均匀镀铜。比如,现在正常的一块6层PCB板的厚度(通孔深度)为50Mil左右,所以PCB厂家能提供的钻孔直径最小只能达到8Mil。
1、过孔的寄生电容
过孔本身存在着对地的寄生电容,如果已知过孔在铺地层上的隔离孔直径为D2,过孔焊盘的直径为D1,PCB板的厚度为T,板基材介电常数为ε,则过孔的寄生电容大小近似于:
C=1.41εTD1/(D2-D1)
过孔的寄生电容会给电路造成的主要影响是延长了信号的上升时间,降低了电路的速度。举例来说,对于一块厚度为50Mil的PCB板,如果使用内径为10Mil,焊盘直径为20Mil的过孔,焊盘与地铺铜区的距离为32Mil,则我们可以通过上面的公式近似算出过孔的寄生电容大致是:C=1.41x4.4x0.050x0.020/(0.032-0.020)=0.517pF,这部分电容引起的上升时间变化量为:
T10-90=2.2C(Z0/2)=2.2x0.517x(55/2)=31.28ps 。从这些数值可以看出,尽管单个过孔的寄生电容引起的上升延变缓的效用不是很明显,但是如果走线中多次使用过孔进行层间的切换,设计者还是要慎重考虑的。
2、过孔的寄生电感
同样,过孔存在寄生电容的同时也存在着寄生电感,在高速数字电路的设计中,过孔的寄生电感带来的危害往往大于寄生电容的影响。它的寄生串联电感会削弱旁路电容的贡献,减弱整个电源系统的滤波效用。我们可以用下面的公式来简单地计算一个过孔近似的寄生电感:
L=5.08h[ln(4h/d)+1]其中L指过孔的电感,h是过孔的长度,d是中心钻孔的直径。从式中可以看出,过孔的直径对电感的影响较小,而对电感影响最大的是过孔的长度。仍然采用上面的例子,可以计算出过孔的电感为:L=5.08x0.050[ln(4x0.050/0.010)+1]=1.015nH 。
如果信号的上升时间是1ns,那么其等效阻抗大小为:XL=πL/T10-90=3.19Ω。这样的阻抗在有高频电流的通过已经不能够被忽略,特别要注意,旁路电容在连接电源层和地层的时候需要通过两个过孔,这样过孔的寄生电感就会成倍增加。
3、高速PCB中的过孔设计
通过上面对过孔寄生特性的分析,我们可以看到,在高速PCB设计中,看似简单的过孔往往也会给电路的设计带来很大的负面效应。为了减小过孔的寄生效应带来的不利影响,在设计中可以尽量做到:
1、从成本和信号质量两方面考虑,选择合理尺寸的过孔大小。比如对6-10层的内存模块PCB设计来说,选用10/20Mil(钻孔/焊盘)的过孔较好,对于一些高密度的小尺寸的板子,也可以尝试使用8/18Mil的过孔。目前技术条件下,很难使用更小尺寸的过孔了。对于电源或地线的过孔则可以考虑使用较大尺寸,以减小阻抗。
2、上面讨论的两个公式可以得出,使用较薄的PCB板有利于减小过孔的两种寄生参数。
3、PCB板上的信号走线尽量不换层,也就是说尽量不要使用不必要的过孔。
4、电源和地的管脚要就近打过孔,过孔和管脚之间的引线越短越好,因为它们会导致电感的增加。同时电源和地的引线要尽可能粗,以减少阻抗。
5、在信号换层的过孔附近放置一些接地的过孔,以便为信号提供最近的回路。甚至可以在PCB板上大量放置一些多余的接地过孔。当然,在设计时还需要灵活多变。前面讨论的过孔模型是每层均有焊盘的情况,也有的时候,我们可以将某些层的焊盘减小甚至去掉。特别是在过孔密度非常大的情况下,可能会导致在铺铜层形成一个隔断回路的断槽,解决这样的问题除了移动过孔的位置,我们还可以考虑将过孔在该铺铜层的焊盘尺寸减小。
三、常见错误
1.原理图常见错误:
(1)ERC报告管脚没有接入信号:
a. 创建封装时给管脚定义了I/O属性;
b.创建元件或放置元件时修改了不一致的grid属性,管脚与线没有连上;
c. 创建元件时pin方向反向,必须非pin name端连线。
(2)元件跑到图纸界外:没有在元件库图表纸中心创建元件。
(3)创建的工程文件网络表只能部分调入pcb:生成netlist时没有选择为global。
(4)当使用自己创建的多部分组成的元件时,千万不要使用annotate.
2.PCB中常见错误:
(1)网络载入时报告NODE没有找到:
a. 原理图中的元件使用了pcb库中没有的封装;
b. 原理图中的元件使用了pcb库中名称不一致的封装;
c. 原理图中的元件使用了pcb库中pin number不一致的封装。如三极管:sch中pin number 为e,b,c, 而pcb中为1,2,3。
(2)打印时总是不能打印到一页纸上:
a. 创建pcb库时没有在原点;
b. 多次移动和旋转了元件,pcb板界外有隐藏的字符。选择显示所有隐藏的字符, 缩小pcb, 然后移动字符到边界内。
(3)DRC报告网络被分成几个部分:
表示这个网络没有连通,看报告文件,使用选择CONNECTED COPPER查找。
另外提醒朋友尽量使用WIN2000, 减少蓝屏的机会;多几次导出文件,做成新的DDB文件,减少文件尺寸和PROTEL僵死的机会。如果作较复杂得设计,尽量不要使用自动布线。