1、节选自 altium designer7 使用手册中部分布局布线部分。元件布局的基本规则按电路模块进行布局,实现同一功能的相关电路称为一个模块,电路模块中的元件应采用就近原则,同时应将数字电路和模拟电路分开。定位孔、标准孔等非安装孔周围 1.27mm 内不得贴装元器件,螺钉等安装孔周围 3.5mm(对应 M2.5 螺钉) 、4mm(对应 M3 螺钉)内不得贴装元器件。绘制 PCB图 6-8 【Cluster Placer】布局结果图 6-9 【Statistical Placer】布局结果6.2.3 自动推挤布局多个元件堆积在一起时候(如图 6-10 所示) ,可采用自动推挤布局将元件平铺开。
2、设计自动推挤参数。执行菜单命令【Tools 】| 【Component Placement】|【Set ShoveDepth】 ,弹出推挤深度设置对话框,如图 6-11 所示。推挤深度实际上是推挤次数,推挤次数设置适当即可,太大会使得推挤时间延长。系统执行推挤是类似于雪崩的推挤方式。执行菜单命令【Tools】|【Component Placement】|【Shove】 ,出现十字光标,在堆叠的元件上单击鼠标左键,会弹出一个窗口,显示鼠标单击处堆叠元件列表和元件预览,如图 6-12 所示。在元件列表中单击任何一个元件,开始进 行执行推挤,自动推挤布局结果如图 6-13 所示。元件堆叠图 6-10
3、 元件堆叠图 6-11 推挤深度设置对话框图 6-12 弹出式叠放列表和预览图 6-13 自动推挤布局结果6.3 系统布线当元件的布局布好之后,就需要对整个系统进行布线,布线总体上分为自动布线和手动布线两种。但是随着微电子技术的发展对布线的要求有了很高的要求,于是就有了等长卧装电阻、电感(插件) 、电解电容等元件的下方避免布过孔,以免波峰焊后过孔与元件壳体短路。元器件的外侧距板边的距离为 5mm。贴装元件的焊盘外侧与相邻插装元件的外侧距离不得大于 2mm。金属壳体元件和金属件(屏蔽盒等)不能与其他元器件相碰,不能紧贴印制线、焊盘,其间距应大于 2mm。定位孔、紧固件安装孔、椭圆孔及板中其他方孔
4、外侧距板边的尺寸大于 3mm。发热元件不能紧邻导线和热敏元件;高热器件要均匀分布。电源插座要尽量布置电路板的四周,电源插座与其相连的汇流条接线端应布置在同侧。特别应注意不要把电源插座及其他焊接连接器布置在连接器之间,以利于这些插座、连接器的焊接及电源线缆设计和扎线。电源插座及焊接连接器间距应考虑方便电源插头的插拔。其他元器件的布置:所有的 IC 元件单边对齐,有极性元件极性标示明确,同一电路板上极性标示不得多于两个方向,出现两个方向时,两个方向应互相垂直。板面布线应疏密得当,当疏密差别太大时候应以网状铜箔填充,网格大于 8mil(或者 0.2mm) 。贴片焊盘上不能有通孔,以免焊膏流失造成元件
5、的虚焊。重要信号线不准从插座脚间通过。贴片单边对齐,字符方向一致,封装方向一致。有极性的器件在以同一板上的极性标示方向尽量保持一致。6.2.2 自动布局PCB 编辑器元件布局命令【 Component Placement】在【Tools】命令菜单中所示。元件布局和布线前,应在电路板的“KeepOutLayer”层,用 Line 或 Arc 画出禁止布线的区域。执行菜单命令【Tools】|【Component Placement】|【Auto Placer 】,打开自动防置对话框,【Cluster Placer】:群集式放置。系统根据元件之间的连接性,将元件划分成一个个的群集(Cluster)
6、,并以布局面积最小为标准进行布局。这种布局适合于元件数量不太多的情况。【Statistical Placer 】:统计式放置。系统以元件之间连接长度最短(原理图中) ,为标准进行布局。这种布局适合于元件数目比较多的情况(如元件数目大于100) 。选中【Quick Component Placement】复选项,系统采用高速布局。该选项同时具有优化布局的功能,因此,勾选时,布局结果更合理。按图所示选择自动放置选项,单击 OK 按钮,系统开始自动布局。选择不同的自动布局模式会有不同的布局结果, ,为【Cluster Placer】布局结果, 【Statistical Placer】布局结果。自动布
7、局的结果往往不能满则设计需求,还需要手工布局。用户可以参考本例项目电路板的布局调整。布线、实时阻抗布线、多线轨布线、交互式布线、智能交互式布线、交互式调整布线长度等。下面将逐一介绍:6.3.1 自动布线1. 布线的一般规则画定布线区域距 PCB 边1mm 的区域内,以及安装孔周围 1mm 内,禁止布线。电源线尽可能宽,不应低于 18mil;信号线宽不应低于 12mil;CPU 入出线不应低于10mil(或 8mil) ;线间距不低于 10mil。正常过孔不低于 30mil。双列直插:焊盘 60mil,孔径 40mil。1/4W 电阻:5155 平方 mil(0805 表贴) ,直插时焊盘为 6
8、2mil,孔径为 42mil。无极电容:5155 平方 mil(0805 表贴) ,直插时焊盘为 50mil,孔径为 28mil。注意电源线与地线应尽可能呈放射状,以及信号线不能出现回环布线。上述一般布线规则只针对于普通的低密度板设计。Altium Designer 7.0 具有 Altium 的 Situs Topological Autorouter 引擎,该引擎完全集成到 PCB 编辑器中。Situs 引擎使用拓扑分析来映射板卡空间。在布线路径过程中判断方向,拓扑映射提供很大的灵活性,可以更加有效地利用不同的规则的布线路径。Altium 也完全双线支持 SPECCTRA 自动布线。在导出
9、时可自动保持现有板块布线,通过 SPECCTRA 焊盘堆栈控制 Altium Designer,应用网络类别到 SPECCTRA 进行有效的基于类的布线约束,生成 PCB 布线。自动布线前,一般需要根据设计要求设置布线规则,在这里只采用系统默认的布线规则。Altium Designer 中自动布线的方式灵活多样,根据用户布线的需要,既可以进行全局布线,也可以对用户指定的区域、网络、元件甚至是连接进行布线。因此可以根据设计过程中的实际需要选择最佳的布线方式。下面将对各种布线方式做简单介绍。单击菜单【Auto Route】 ,打开自动布线菜单。2. 全局自动布线执行菜单命令【Auto Route】
10、|【All】 ,将弹出布线策略对话框,以便让用户确定布线的报告内容和确认所选的布线策略,【Routing Setup Report】区域【Errors and Warnings 0 Errors 0 Warnings 1 Hint】:错误与警告。本例有 1个提示(Hint):Hint:no default SMDNeckDown rule exists(未定义 SMDNeckDown 规则) 。单击灰色【default SMDNeckDown 】 ,打开 SMDNeckDown 规则对话框(所示) ,设置引线相对于焊盘的收缩量,在这里不用修改。图 6-18 自动布线结果3. 指定网络布线执行菜
11、单命令【Auto Route】|【Net】 ,出现十字光标。单击布线的网络(焊盘) ,弹出窗口显示相关的网络信息,如图 6-19 所示。图 6-19 弹出窗口显示网络信息将光标指向弹出窗口的列表中,单击要布线的网络名称或焊盘,系统开始布线,布线结果如图 6-20 所示。被点击网络布线完成后,光标仍处于网络布线状态,可以继续点击其他网络进行布线。4. 网络类布线执行菜单命令【Auto Route】|【Net Class 】 ,打开选择网络类布线对话框,如图 6-21所示。选择要布线的网络类,单击 OK 按钮,系统对该网络类进行布线,布线结果如图 6-22所示。布线完成后,回到选择网络类布线对话框
12、,继续选择其他网络类进行布线。单击 Cancel按钮,结束网络类自动布线。图 6-20 网络布线结果 图 6-21 选择网络类布线对话框图 6-22 网络类布线结果5. 指定连接布线执行菜单命令【Auto Route】|【Connection】 ,出现十字光标。图 6-23 弹出窗口显示信息13 第 6 章 绘制 PCB图 6-14 自动布线菜单图 6-15 布线策略对话框【Report Contents】:报告内容列表包括如下规则内容。【Routing Widths】:布线宽度规则。【Routing Via Styles】:过孔类型规则。【Electrical Clearances】:电气间
13、隙规则。【Fanout Styles】:布线扇出类型规则。【Layer Directions】:层布线走向规则。【Drill Pairs】:钻孔规则。【Net Topologies】:网络拓扑规则。【SMD Neckdown Rules】:SMD 焊盘线颈收缩规则。10 第 6 章 绘制 PCB在焊盘或者飞线上单击左键,出现如图 6-23 所示对话框。系统对被点击连线布线。与指定网络布线的最大区别是,指定连线布线每次只完成一条飞线的连接。如果被点击处有多个连接存在,也会出现弹出窗口。指定连接布线结果如图 6-24 所示。完成一个连接布线后,光标仍处于布线状态,可以继续进行布线,单击鼠标右键取消
14、布线状态。图 6-24 指定连接布线结果6. 指定区域布线执行菜单命令【Auto Route】|【Area】 ,出现十字光标。点击确定布线区域的起点,移动光标出现一个白色框,如图 6-25 所示。再点击则确定布线区域的终点,系统开始对完全在区域内的连接进行布线,布线结果如图 6-26 所示。图 6-25 设置布线区域 图 6-26 指定连接布线结果7. 指定空间布线在较为复杂的设计中,通常将元件按功能划分为多个模块,每个模块指定为一个空间(Room ) 。Altium Designer 可以对每个 Room 进行单独布线。打开软件自带实例 D:Program FilesAltium Desig
15、ner Summer 08ExamplesReference【Unroutable pads】:未布线焊盘规则。【SMD Neckdown Width Warnings】:SMD 焊盘线颈收缩错误规则。【Pad Entry Warnings】:焊盘入口错误规则。单击规则名称,窗口自动跳转到相应的内容,同时也提供打开相应规则设置对话框的入口。图 6-16 SMDNeckDown 规则设置对话框【Routing Strategy】区域列表框,列出布线策略名称,用户可以添加新的布线策略,系统默认为双面板布线策略。单击 RouteAll 按钮,系统开始按照布线规则自动布线,同时自动打开信息面板,显示布
16、线进程信息,如图 6-17 所示,布线结果如图 6-18 所示。图 6-17 信息面板11Altium Designer 7 使用指导手册DesignsMulti-Channel Mixer 中的 Mixer_Placed.PcbDoc。执行菜单命令【Auto Route】|【Room】 ,出现十字光标。在其中一个 Room 中单击,系统开始对该 Room 中的元件布线,布线结果如图 6-27所示。图 6-27 Room 自动布线结果8. 指定元件布线执行菜单命令【Auto Route】|【Component】 ,出现十字光标。在要布线的元件上单击鼠标左键,系统开始对元件的连接进行布线,如图
17、6-28 所示。图 6-28 指定元件自动布线结果9. 指定元件类布线15 第 6 章 绘制 PCB执行菜单命令【Auto Route】|【Component Class】 ,打开选择元件类布线对话框,如图 6-29 所示。图 6-29 选择元件类自动布线结果选择元件类,单击“OK”按钮,系统对选择的元件类进行布线,布线结果如图 6-30所示。图 6-30 指定元件类自动布线结果10. 选中的元件的连接关系布线选中要布线的元件。执行菜单命令【Auto Route】|【Connection On Selected Components】 ,系统对选中的16Altium Designer 7 使用
18、指导手册元件布线,如图 6-31 所示。图 6-31 选择元件的自动布线结果该布线方法也可以针对多个选择的元件。11. 选中元件间的连接布线选中要布线的元件。执行菜单命令【Auto Route】|【Connection Between Selected Components】 ,系统对选中的元件之间布线、元件间的连接都会完成布线(包括元件本身内部的连接)如图6-32 所示。图 6-32 选择元件间的自动布线结果12. 扇出布线扇出布线主要针对表贴式元件焊盘,将 SMD 元件的焊点往外拉出一小段铜膜走线后,再放置导孔与其他网络完成连接。Altium Designer 提供 9 种扇出布线方式,集
19、中在菜单【Auto Route】|【Fanout 】 ,如图 6-33 所示。图 6-33 扇出布线菜单全局扇出布线【All】:对当前电路板所有的 SMD 元件的焊点进行分析,对能够扇出布线的焊盘进行扇出布线。图 6-34 所示为扇出布线的当前情况。执行菜单命令【Auto Route】|【Fanout】| 【All 】 ,弹出扇出选项对话框,如图 6-35所示,对话框各选项的设置如下。【Fanout Pads Without Nets】:扇出焊盘,包括无网络的。【Fanout Outer 2 Rows of Pads】:两行焊盘向外扇出。【Include escape routes after
20、 fannout completion】:扇出成功后包括逃逸布线。单击 OK 按钮后,执行扇出布线。图 6-34 扇出布线前的情况18 第 6 章 绘制 PCBMembers”列出当前的 PCB 中所有网络名称。 “Members”列表框为当前类中包含的网络名称,此时为空白。图 6-36 对象类资源管理器在“Non Members ”列表框中选择要等长布线的网络名称,单击右向单箭头,将其归入当前类“ZGD” ,如图 6-37 所示,单击 Close 按钮,关闭对象类资源管理器。执行菜单命令【Design】|【Rules 】 ,打开 PCB 规则系统参数编辑器,如图 6-38 所示。在左侧规则目
21、录区域的“High SpeedMatched Net Lengths”上单击鼠标右键,从右键菜单中执行【New Rule】 ,添加新规则。新规则作为【Matched Net Lengths】的子规则,默认名称是 Matched Net Lengths,单击该名称,PCB 规则系统参数编辑器右侧规则编辑窗口打开,如图 6-39 所示。图 6-37 将指定网络归入当前类20Altium Designer 7 使用指导手册图 6-38 PCB 规则系统参数编辑器图 6-39 设置布线规则执行菜单命令【Auto Route】|【Net Class 】 ,打开选择网络类布线对话框,如图 6-40所示。选
22、择等长布线的网络名称“ZGD” 。单击 OK 按钮,系统按一般布线规则进行布线,如图 6-41 所示。执行菜单命令【Tools】|【Equalize Net Lengths 】 ,系统按等长布线规则匹配一次等长布线,通常布线的复杂程度决定了匹配次数的多少。21 第 6 章 绘制 PCB图 6-40 选择网络类布线对话框图 6-41 一般规则布线的结果6.3.3 实时阻抗布线高速高密度多层 PCB 的 SI/EMC(信号完整性/电磁兼容)问题长久以来一直是设计师不得不面对的最大设计挑战。目前随着主流的 MCU、DSP 和处理器大多工作在 100MHz以上(少数甚至已工作到 GHz 以上) ,而且
23、越来越多的高速 I/O 端口和 RF 前端也都工作在 GHz 级以上,再加上应用系统的小型化趋势导致的 PCB 空间缩小问题,这些因素均使得今天的高速高密度 PCB 设计变得越来越普遍。高速信号会导致 PCB 上较长的互连走线产生传输线效应,它使得 PCB 设计师必须考图 6-35 扇出选项对话框电源层网络扇出布线【Power Plane Net】:只对电源层(内电层)网络的表贴焊盘进行扇出布线。信号层网络扇出布线【Signal Net】:只对信号层网络的表贴焊盘进行扇出布线。网络扇出布线【Net】:对单个网络进行扇出布线。执行该命令后出现十字光标,在要执行的扇出布线的网络上(焊盘)单击左键,
24、单击的网络被扇出布线。连接扇出布线【Connection】:对有连接关系的表贴焊盘进行扇出布线,结果与网络扇出布线类似。元件扇出布线【Component】:元件本身的焊盘扇出布线。选中的元件扇出布线【Selected Component】:与元件扇出布线类似,只是可以同时对多个选中的元件进行扇出布线。焊盘扇出布线【Pad】:对被单击的焊盘进行扇出布线,而与其有连接关系的其他焊盘不执行扇出布线。空间扇出布线【Room】:对 Room 内的所有表贴焊盘进行扇出布线。6.3.2 等长布线高速电路布线特别是差分信号布线通常要求布线平行和长度相等。平行的目的是要确保差分阻抗的完全匹配,布线的平行间距不同
25、会造成差分阻抗不匹配。等长的目的是确保时序的准确与对称性,即确保信号在传输线上的延迟相同。因为差分信号的时序跟这两个信号交叉点(或相对电压差值)有关,如果不等长,则此交叉点不会出现在信号振幅的中间,也会造成相邻的两个时间间隔不对称,增加时序控制的难度,不利于提供信号的传输速度。不等长也会增加共模信号的成分,影响信号完整性。例如像 CPU 到北桥芯片的时钟线,它不同于普通电器上的线路,在这些线路上以100MHz 左右或更高的频率高速运行的信号对线路长度十分敏感,不等长的时钟布线路径会引起信号的不同步,进而造成系统不稳定。这样某些线路需要以弯曲的方式走线,以调节长度,下面就来简单介绍等长布线执行菜
26、单命令【Design】|【Classes】 ,打开对象类资源管理器,如图 6-36 所示。首先要确定电路中需要等长布线的网络,鼠标并将它们归入一个大类中,如“NetClasses”。在左侧的类目录树区域的 Net Classes 上单击鼠标右键,从弹出的右键菜单选择执行【Add Class】 ,即添加一个类。在类目录树区域和右侧的列表框中都出现“New Class ”。在目录树区域使用直接编辑功能(单击两次激活文本框)修改类名称,如“ZGD” 。右侧出现两个列表框 “Non19Altium Designer 7 使用指导手册虑传输线的延时和阻抗匹配问题,因为接收端和驱动端的阻抗不匹配都会在传输
27、线上产生反射信号,而这会对信号完整性产生很大的影响。另一方面,高密度 PCB 上的高速信号或时钟走线会对间距越来越小的相邻走线产生越难准确量化的干扰问题,从而产生恼人的EMC 问题。SI 和 EMC 问题均会导致 PCB 设计过程的反复,从而导致产品的开发周期一再延误。一般来说,高速高密度 PCB 需要复杂的阻抗受控布线策略才能确保电路正常工作。随着新型器件的电压越来越低、PCB 密度越来越大、边沿转换速率越来越快、以及开发周期越来越短,SI/EMC 挑战日趋严峻。为了满足这一挑战,今天的 PCB 设计师必须采用系的方法来确保 PCB 设计是可工作的和可制造的。采用过去的设计规则已经无法满足今
28、天的时序和信号完整性要求,现在必须采取新的包含仿真功能的工具才能确保设计成功。阻抗(Impedance)是传输线(transmission line)上输入电压对输入电流的比率值。Altium Designer 提供了实时阻抗控制布线的功能,即阻抗控制布线长度,下面就简单介绍一下实时阻抗布线的步骤。打开 PCB 文件,如“4 Port Serial Interface.pcbdoc” 。执行菜单命令【Design】|【Rules 】 ,打开 PCB 规则编辑器,如图 6-42 所示。在左侧的目录树单击“Routing”展开,然后在“Width”目录中单击鼠标右键,弹出右键菜单。图 6-42 P
29、CB 规则编辑器执行右键菜单的【New Rule】 , “Width”目录出现新添加的 “Width”。选中新添加的规则“Width” ,在“Were the First object matches”区域选中“Net”选项。单击下拉按钮,从下拉列表框中选择网络“TXD” ,如图 6-43 所示。【Constraints】区域,勾选“Characteristic Impedance Driven Width”选项,即选择阻抗驱动宽度的布线特性。出现三个阻抗值:首选阻抗、最小阻抗和最大阻抗。默认的这三个阻抗值均为 50 欧,用户可以直接单击阻抗值数字进行编辑修改,如图 6-44 所示。阻抗值设置
30、有冲突时,阻抗名称会变成红色以提示设置错误。单击左侧目录树【Routing】目录中的规则类名称【Width】 ,右侧窗口显示所有该类规则,包括新添加的规则 Width,如图 6-45 所示。从列表中可以看出,布线宽度为10mil。图 6-43 选择网络“TXD ”图 6-44 选择阻抗驱动布线宽度单击“Name”列的“Width” ,激活其文本框,修改名称 TXD。单击 Apply 按钮,应用新规则。单击 OK 按钮,应用新规则的同时关闭规则编辑器。由于布线规则的改变,PCB 文件中 TXD 网络原布线违反了新规则,变为绿色,指示错误,如图 6-46 所示。执行菜单命令【Tools】|【Un-Route】|【Net 】 ,出现十字光标,单击 TXD 网络的布线或焊盘,撤销该网络的布线。执行菜单命令【Auto Route】|【Net】开始网络布线,出现十字光标,单击 TXD 网络的焊盘,弹出窗口显示相关信息,选择 Pad 或 Connection 开始网络布线,布线结果如图 6-47 所示。图 6-45 所有宽度规则显示