您好,欢迎来电子发烧友网! ,新用户?[免费注册]

当前位置:电子发烧友网 > 图书频道 > 嵌入式 > 《protel99se在线教程》 > 第9章 PCB的自动化设计

第4节 自动布线

 

  9.5.2 自动布线

  完成元件布局工作后,就可以开始自动布线了。所谓自动布线就是程序根据设定的有关参数和布线规则,依照一定的程序算法,按照事先生成的网络宏自动在各个元件之间进行连线从而完成印制电路的布线工作。检查并修改有关布线规则,如走线宽度、线与线之间以及连线与焊盘之间的最小距离、平行走线最大长度、走线方向、敷铜与焊盘连接方式等是否满足要求,否则将采用缺省参数布线,但缺省设置难以满足各式各样印制电路板的布线要求。

  因此,自动布线的成败与好坏在很大程度上与参数的设定有关,用户必须认真考虑。下面具体介绍自动布线的设计规则设置,以及自动布线的执行操作。

  9.5.2.1自动布线设计规则

  要设定自动布线设计规则时,激活Design菜单下的Rules…命令,或用热键D/R完成,在弹出如下图所示对话框中,用鼠标单击“Routing(布线)”选项卡,在调出的“Routing”选项卡中有十类参数可以设置,用户可以在其中设置任意个约束规则。

  

 

  自动布线设计规则对话框

  这十类参数分别作如下说明:

  1.安全间距——Clearance Constraint

  安全间距指的是具有电气特性的走线、焊盘、导孔等之间的最小安全距离, 使图件之间不会因为过近而产生相互干扰。双击该项(或选中后,单击“Add”按钮)可增加一项走线约束,同时调出如下图所示的规则参数设置对话框。如果要修改约束规则参数,可将光标移至列表框中该约束项上双击鼠标左键(或先选择该项,然后单击“Properties…”按钮),将再次调出如下图所示对话框;如果要删除约束项, 可先选择该项,然后单击“Delete”按钮,即可删除相应的元件间距约束项。

  

 

  设置走线间距约束对话框

  在对话框左边的Filter Kind字段里,用来指定约束的有效范围,“Whole Board”表示适用于整板电路板;“Net Class ”表示适用本规则的网络分类; “Net ” 表示适用本规则的网络;“From -To ”表示适用本规则的点对点走线; “From -To Class ”表示适用本规则的点对点走线分类; “Region ”表示适用本规则的区域,如果选取本项,我们可在X1、Y1字段里,指定此区域的第一坐标,而在X2、Y2字段里,指定此区域的对角坐标,也可以单击“Define”按钮直接跳到编辑区里去这个区域;右边可以设置最小间距的数值和针对哪些网络。

  安全间距的设置取决于具体的电路板要求,安全间距过大,将导致电路板很难布通或者布线时间过长,安全间距过小将引起信号之间的干扰,也不利于制作。

  2.布线转角——Routing Corners

  此项为设置走线转角方式规则, 其设置在自动布线时有效,手工布线时将不受此规则约束。双击该项可增加一项走线转角约束,同时调出如下图所示的规则参数设置对话框。

  

 

  设置走线转角方式规则对话框

  在对话框左边的Filter Kind字段里,用来指定约束的有效范围;右边是此规则的参数,Style字段是设定走线的转角方式,其中包括直角转角(90Degress)、45°切面转角(45Degress)和圆形转角(Round)三种转角方式,Setback字段用来指定最大转角半径,to字段里,指定最小转角半径。

  3.布线板层——Routing Layers

  此项为设置自动布线时使用的板层以及自动布线时各板层上铜膜线的方向。双击该项可增加布线层的约束规则,同时调出如下图所示的规则参数设置对话框。

  

在对话框左边的Filter Kind字段里,用来指定约束的有效范围;右边可以设置此规则的参数,其中列出了32个信号层字段,缺省情况下系统只应用了顶层和底层,其他30个中间信号层处于空闲状态。

 

  每个字段都有11个选项,

  “Not Used”表示该板层不布线;

  “Horizontal ”表示该板层水平方向布线;“Vertical ”表示该板层垂直方向布线;“Any ”表示该板层可任意布线,通常是针对单层板而设的; “1 O’Clock ”表示该板层1点钟方向布线;“2 O’Clock ”表示该板层2点钟方向布线; “4O’Clock ”表示该板层4点钟方向布线; “5 O’Clock ”表示该板层5点钟方向布线; “45 Up ”表示该板层45°向上方向布线; “45 Down ”表示该板层45°向下方向布线;

  “Fan Out”表示该板层以扇出方式 设置布线层约束规则对话框布线。 设置布线层约束规则对话框

  在走线方式中, Horizontal和Vertical方式一般用于双层板和多层板的布线,而且顶层和底层不能采用同一种布线规则,这一点对于提高布通率尤为重要。其他几种布线方式用于单面板的布线规则设置。

  4.布线次序——Routing Priority

  此项为设置布线的优先权规则,走线的优先级规则控制网络布线的顺序。双击该项可增加布线优先权的约束规则,同时调出如下图所示的规则参数设置对话框。

  

 

  设置布线次序属性对话框

  在对话框左边的Filter Kind字段里,不再是用来指定约束的有效范围,而是要求指定具有布线优先权的范围;右边可以设置此规则的参数,其中只有一个Routing Priority字段,其设定范围从0到100,而0的优先次序最低,100最高;通常我们会把电源与接地网络的优先次序设得高一点。

  5.布线的拓朴结构——Routing Topology

  此项为设置布线的拓朴结构,即以何种形状进行布线, 所谓布线模式,就是设置焊盘之间的连线方式。对于整个电路板,一般选择最短布线模式,而对于电源网络(VCC)、地线(GND)网络来说,应根据需要选择最短模式、星型模式或菊花链状模式。例如,对于要求单点接地的电路系统,则电源网络、地线网络可采用星型(Starburst)布线模式。双击该项可增加布线的拓朴结构约束规则,同时调出如下图所示的规则参数设置对话框。

  

在对话框左边的Filter Kind字段里,用来指定约束的有效范围;右边可以设置采用何种形式的拓朴类型进行走线,包括用最短路径走线(Shortest)、水平走线(Horizontal)、垂直走线(Vertical)、简单的菊状走线(Daisy —Simple)、 由中间向外的菊状走线、(Daisy —MidDriven)、平衡式菊状走线(Daisy—Balanced)和放射性走线(Starburst)七种拓朴类型供选择。

 

  设置布线的拓朴结构对话框

  

 

  6.导孔型式——Routing Via Style

  此项为设置自动布线过程中使用的过孔样式。选中该项,单击“Add”按钮可增加布线过孔样式约束规则。

  在对话框左边的Filter Kind字段里,用来指定约束的有效范围;右边可以设置过孔外径(Via Diameters)和内孔直径(Via Hole Size)的最小(Min)、最大(Max)和首选(Preferred)尺寸。

  设置过孔样式约束的对话

  7.SMD焊盘颈状收缩——SMD Neck-Down Constraint

  此项为设置表面粘贴式焊盘颈状收缩的设计规则。双击该项(或选中后,单击“Add”按钮)可调出如下图所示的规则参数设置对话框。左边的Filter Kind字段里,用来指定约束的有效范围;右边可以设置颈状收缩时,连接SMD的走线宽度占SMD焊盘宽度的百分率。

  

 

  SMD颈状收缩对话框

  8.SMD焊点限制—— SMD To Corner Constraint

  该规则用于贴片式元件的焊盘与导线拐角的间距大小。磁敏二极管( SMD )对磁场比较敏感,而高频线路的拐弯处容易产生辐射电磁波,因此如果在高频线路中有磁敏二极管,应该保证与其导线拐弯处的距离,在布线时也要避免直角布线。双击该项(或选中后,单击“Add”按钮)可调出如下图所示的规则参数设置对话框。左边的Filter Kind字段里,用来指定约束的有效范围;右边可以设置间距数值。

  

 

  SMD元件到导线转角间的最小距离限制的设计规则对话框

  9.SMD到内部电源层的间距——SMD To Plane Constraint

  此项为设置表面粘贴式焊盘SMD中心到连接电源层的过孔或焊盘中心最小间距的设计规则。双击该项(或选中后,单击“Add”按钮)可调出如下图所示的规则参数设置对话框。左边的Filter Kind字段里,用来指定约束的有效范围;右边可以设置间距数值。

  

 

  SMD中心到连接电源层的过孔或焊盘中心最小间距对话框

  10.走线线宽——Width Constraint

  此项为设置自动布线过程中使用走线的最小和最大宽度, 一般说来,自动布线的信号线采用10—20mil的线宽,电源线和地线适当加粗以防干扰。

  在对话框左边的Filter Kind字段里,用来指定约束的有效范围;右边可以设置走线的最小(Min)、最大(Max)和首选(Preferred)宽度。

  

 

  设置走线宽度设计规则对话框

  9.5.2.2自动布线器参数设定

  除了上面的自动布线设计规则设置外,自动布线还有一些布线合格性的选项可供设置。执行“Auto Route\Setup”菜单命令,在调出的对话框中,主要设置一些布线合格选项。如电路板有存储器件,应将“Memory”项打开。一般情况下,使用系统的缺省值即可。

  其中各项目的用途与设定,说明如下:

  Memory 设定采用内存式布线

  Fan Out Used SMD Pins 设定表面粘贴式焊点采用延伸式连接

  Patten 设定采用样板式布线

  Shape Route-Push And Shove 设定采用推挤式布线

  Shape Route-Rip Up 设定采用拆线式布线

  Clean During Routing 在自动布线过程中自动清除不必要的导线。

  Clean After Routing 在自动布线完成后清除不必要的导线

  Evenly Space Track 设定焊点间走线是否均分

  Add Testpoints 设定在电路板中加入测试点

  Lock All Pre-route 设定锁定预布线

  另外在对话框右下方的字段里,可指定自动布线的格点间距大小。系统默认为20mil。格点越小,则布线时间越长,所需的内存越多。

  

 

  自动布线程序对话框

  至此,我们已经将布线中的主要参数设定完毕,但要注意的是设置的布线规则越严格,限制条件越多,自动布线时间就越长,布通率就越低。

  下面就可以进行自动布线工作了。

  9.5.2.3自动布线

  布线前(无论是手工布线还是自动布线)前,要进一步调整元件位置,使元件在印制板上的排列满足下列要求:

  1.为了方便自动插件操作,除个别特殊元件外,元件沿水平或垂直方向排列,且所有元件(至少是同类元件)在板上排列方向要一致,即所有电阻,IC芯片等必须横排或竖排。

  2.印制电路板上的元件,尽可能呈“井”字形排列,即垂直排列的元件,尽可能靠左或靠右对齐;水平排列的元件,必须靠上或下对齐。这样不仅美观,连线长度也短。

  3.布线或连线前,所有引脚焊盘必须位于栅格点上,使连线与焊盘之间的夹角为135°或者180°,以保证连线与元件引脚焊盘连接处的电阻最小, 操作方法:执行“Tools”菜单下的“Align Components\Move To Grid…”(移到栅格点)命令,在调出的提示窗口内,指定元件移动距离,即可将所有元件引脚焊盘移到栅格点上。

  Protel99SE中自动布线方式有5种方式,既可以进行全局布线,也可以对用户指定的区域、网络、元件甚至是连接进行布线,用户可以根据需要选择最佳的布线方式, 在自动布线过程中,若发现异常,可执行该菜单下的“Stop”命令,停止布线;通过“Pause”命令暂停布线;通过“Restart”命令重新开始。

  “All”方式表示系统完成所有的布线工作,无需用户中途干预;

  “Net”方式表示由用户指定逐个网络进行交互式的自动布线,每指定一个网络,就给该网络布线;

  “Connection”方式表示由用户指定逐个连接进行交互式的自动布线,每指定一个连接关系,就给该连接布线;

  “Component”方式表示由用户指定元件来进行交互式的自动布线,每指定一个元件,就给该元件的所有引脚布线;

  “Area”方式表示由用户划定区域来进行交互式的自动布线,每选择一个区域,系统就给该区域的所有元件的引脚布线。

  

下面分别介绍其操作:

 

  1.全局布线(All)

  执行“Auto Route\All”菜单命令,也可用热键A/A完成,调出如图 所示的对话框,单击“Route All”按钮即可进行全局自动布线。布局结束,系统出现如图所示提示框,告诉我们布通率100%,布线282条,剩余未布导线数为0,布线时间为53秒,单击“OK”按钮即可。

  2.指定网络布线(Net)

  

执行“Auto Route\Net”菜单命令,也可用热键A/N完成,。命令执行后光标变成十字形状,移动光标到需要布线的网络(焊盘或连接线),并单击鼠标左键,系统便开始自动对该网络进行布线。如果单击的是焊盘,会出现一个快捷菜单,如图所示,这时应该选择“Pad”菜单项或者“Connection”菜

 

  单项,而不能选择“Component”菜单项。对该网络

  自动布线结束后,程序仍处于指定网络布线命令状态。

  用户可以继续选定其他网络进行自动布线。单击鼠标

  右键即可退出当前的命令状态。

  3.指定两连接点之间布线(Connection)

  执行“Auto Route\ Connection ”菜单命令,也可用热键A/C完成,。命令执行后移动光标到需要布线的连接线,并单击鼠标左键,系统便开始自动对该连接线进行布线。该连接线布线结束后,程序仍处于指定连接线布线命令状态。用户可以继续选定其他连接线进行自动布线。单击鼠标右键即可退出当前的命令状态。

  4.指定元件布线(Component)

  执行“Auto Route\ Component ”菜单命令,也可用热键A/O完成,。命令执行后移动光标到需要布线的元件线,并单击鼠标左键,系统便开始自动对该元件进行布线。该元件布线结束后,程序仍处于指定元件布线命令状态。用户可以继续选定其他元件进行自动布线。单击鼠标右键即可退出当前的命令状态。

  5.指定区域布线(Area )

  执行“Auto Route\ Area ”菜单命令,也可用热键A/R完成,。命令执行后移动光标到需要布线的元件左上角,并单击鼠标左键,然后拖动鼠标使得出现的矩形框包含需要布线的零件,之后单击鼠标左键,以构造一个布线区域,系统便开始自动对该区域内的所有元件进行布线。该元件布线结束后,程序仍处于指定区域布线命令状态。用户可以继续选定其他布线区域进行自动布线。单击鼠标右键即可退出当前的命令状态。

  不论自动布线软件功能多么完善,自动布线结果虽然布通率为100%,但局部区域布线效果并不理想,最常见的现象是走线拐弯多,造成走线过长,也不美观,其次是布线密度不合理,没有充分利用印制板空间,自动布线生成的连线依然存在这样或那样的缺陷,使布线显得很零乱、抗干扰性能变差。所有这些不合理的走线均需要手工修改。

  9.2.2 设计规则检查

  在自动布线结束后,可以利用设计规则检查功能来检查布线结果是否满足所设定的布线要求。在手工布线过程中,也可以随时进行设计规则检查,或让系统实施规则检查来保证手工布线符合设定的布线要求。PCB编辑器提供了“Report”(产生报告文件)和“On-Line”(在线检测,不产生报告文件,在印制板编辑区直接给出错误标记)两种检测方式,其中“Report”方式功能最为完善。

  进行设计规则检查执行Tool |Design Rule Check命令,然后会出现Run DRC(设计规则检查)对话框。

  

 

  Report选项卡

  1. Report选项卡

  该选项卡用于设置以报表方式生成规则检查结果的各个选项。

  2. On-line选项卡

  该选项卡用于设置在线方式检查设计规则,在手工布线过程中,就能实时地进行设计规则检查,保证布置的每一条导线都符合规则要求。

  各选项介绍如下:

  n Routing Rules选项区域

  用于设置检查那些一般性质的设计规则,各项说明如下:

  » Clearance Constraints:进行安全间距检查。

  » Max-Min Width Constraints:进行导线宽度检查。

  » Short Circuit Constraints:进行短路检查。

  » Un-Routed Net Constraints:对没有完成布线的网络进行检查。

  » SMD To Conner Constraint:对设置磁敏二极管与导线拐弯处的距离检查。

  n Manufacturing Rules选项区域

  用于指定检查哪些与制作电路板有关的设置,各项说明如下:

  » Minimum Annular Ring:进行圆环宽度检查。

  » Acute Angle:进行尖角检查。

  » Max/Min Hole Size:进行最大或最小孔型号的检查。

  » Layer Pairs:进行焊盘所在层的检查。

  » Confinement Constraint:进行对象区域条件检查。

  n High Speed选项区域

  该选项区域用于设置对高频规则进行检查,各项说明如下:

  » Parallel Segment Constraints:进行平行布线检查。

  » Max/Min Length Constraints:进行网络长度检查。

  » Matched Length Constraints:进行等线调整检查。

  » Daisy Stub Constraints:进行分支线路的长度检查。

  » Maximum Via Count:进行孔数的检查。

  » Via Under SMD Pads SMD:进行焊盘中放置导孔检查。

  n Option选项区域

  该选项区域用于设置Create Report File(生成报表文件)、设置Create Violations(显示违反规则)、Sub-Net Details(子网络也一并检查)、设置Stop when violation found(当错误出现多少次时停止规则检查)等一些特殊选项。

  各项设置完毕后,单击Run DRC按钮,即可进行设计规则检查。为了方便查看检查结果,最好选择“在印制板上标记违反设计规则”复选项。在这种情况下,不满足设计规则的连线、焊盘等均被打上标记——以绿色显示。如果选择产生报告文件,则检查结束后,PCB编辑器自动进入文本状态,显示检查结果文件(扩展为.DRC),认真分析报告文件中的错误信息,单击“设计文件管理器”窗口内的“Explorer”标签,再单击相应的PCB文件图标,返回PCB编辑器。单击PCB编辑器浏览对象下拉按钮,在浏览对象列表窗内,找出并单击“Violation”(违反规则),将Violation作为浏览对象。根据错误性质,灵活运用拆线、删除、移动、手工布线以及修改连线属性等编辑手段,修正所有致命性错误。然后再运行设计规则检查,直到不再出现错误信息,或至少没有致命性错误为止。

  如果想清除电路上因违反规则而显示的高亮度绿色,则可以执行Tools| Reset Error Marks命令。

  本 章 小 结

  本章介绍印制板的基本结构,PCB绘图工具可以绘制导线、放置焊盘、填充、圆弧导线、尺寸标注、设置原点、导孔、文字等;网络表文件与元件的载入,对网络表文件载入时典型错误的解决方法,详细介绍电路板布线规则,电路板制作的设计规则及其他相关的设计规则,通过对元件进行排列、移动、旋转、复制和删除等手工操作,实现对元件的手工布局;利用系统提供的成组布局方式和统计布局方式来进行自动布局,具有效率高、速度快的特点;如何利用PCB设计器的自动布局功能来设计电路图,自动布局参数设置、执行自动布局功能及自动布局后的人工调整, 自动布线器参数的设置,通过对导线剪切、复制与粘贴、删除及属性修改等操作进行手工布线;自动布线的方法有:全局布线、指定网络布线、指定两连接点布线、指定元件布线、指定区域布线,自动布线后需要进行手工调整;利用设计规则进行检查有实时检查和分批检查两种方式。

  复习思考题

  1.自动布局要做哪些准备工作?

  2.自动布线要做哪些准备工作?

  能力训练一 PCB板设计规则设置

  按下面要求设定自动布局和自动布线设计规则:

  设定板为矩形,板宽为15mm,长为18mm;元件间最小间距16 mil ;Pad直径为60mil , Pad Hole直径为30mil;Via直径为了58mil,ViaHole直径为20mil;导线间最小安全间距为25 mil ;只在顶层放置元件;顶层水平布线,底层垂直布线;其他信号层不使用;电源线与接地线优先布置;布线宽度10~30mil之间,电源线与地线宽度30mil,其他布线宽度10mil。