Allegro使用总结之BGA出线Fanout
- 格式:pdf
- 大小:373.60 KB
- 文档页数:16
Allegro使⽤总结之BGA出线FanoutFanout About SMDSMD元件的扇出(Fanout)主要是为了后续布线的时候更⽅便的进⾏内层⾛线,尤其是多层板。
⼀般在布局的时候,就可以进⾏相关元件的扇出⼯作了,如BGA等器件。
其它的分⽴SMD元件,由于其引脚数较少,可以在后期布线时进⾏,⽽且也不必像BGA的扇出那样⼯整和美观。
扇出(Fanout)就是指从SMD焊盘引⼀⼩段线然后打过孔(为内层连线做准备)的操作。
iMX31C项⽬的布线⼯作开始时⾸先要进⾏的就是BGA元件⽹络的扇出⼯作。
⽬前ITG没有相关的规范,完全按照泰齐的样板进⾏设计,同时需要做成ITG相关的规范。
1.BGA扇出BGA扇出受到⼏⽅⾯因素制约,封装本⾝PIN-PIN距离过⼩,选择的过孔⼤⼩,BGA周围区域空间以及底层空间是否充裕,规则的设置(主要是Spacing约束规则),当然正确的扇出设置也⽐较重要。
Fanout设置准备⼯作(约束规则)做好以后就可以进⾏Fanout操作了,Route--Fanout by pick,然后右键选择Setup...弹出下图所⽰FANOUT设置对话框。
主要设置Direction和Via Location,Direction中有in、out、either三个选项,in表⽰扇出的过孔在以所有PIN 的边沿框内部,out表⽰外部,either则是两种都可以,见下图即为Direction设置为in的扇出图,仔细点可以看出,有部分PIN没有扇出成功,因为没有扇出空间。
下图是设置为out的情况,发现所有的过孔都被放置在以PIN外围框外,这种扇出设置不适合BGA等IC。
那么,Via Location的设置⼜是如何的呢?下⾯我们来讨论⼀下,下图所⽰的设置是Via Location设置为inside的情况,这种扇出结果是成功的,因为Via Location设置中的inside、outside是以器件的Placebound层为基准的。
PADS中BGA Fanout(扇出)步骤一、建立原点坐标:(用PADS 2005,打开溡有Layout BGA文件)1、单击鼠标右键,选择"Select Traces/Pins",再电击BGA的左上角的一个PAD。
如图:2、以这个PAD建立原点坐标。
Setup/Set Origin。
如图:选择“是(Y)”。
二、选择BGA Fanout的幂:1、Setup/Layer Definition...。
如图:2、在Layers Serup里选择BGA所在幂(BGA一般放在TOP Component幂)。
Plane Typet选No Plane, Routing选Any,然后点击“OK”。
如图:三、设置Fanout的栅格Grid1、单击Tools/Options...。
如图:2、再弹出的"Options"对话框中选择"Grids"。
(设置成PAD与PAD的二分之一。
这BGA的PAD与PAD的间距是0.7MM。
所以,X与Y设置的是0.35MM。
)设置完后点击"OK"。
如图:2、设置布线宽度及安全间距:1)、Tools/PADS Router...。
如图:2)、在弹出来的"PADS Router Link"。
" Action"里选择"Open PADS Router". "Options"里选择"Routing"。
然后点击"Proceed"。
如图:四、在PADS Router界面1、选择合适的BGA Fanout的VIA。
1)、在PADS Router中,Edit/Properties...。
如图:2)、弹出"Design Properties"对话框,选择"Via Biasing"选项,选择一个Via。
allegro总结根据个人经验总结一些方法做板子的步骤1.拿到板子.什么都不管.先看要求!2.规则设置(过孔通道要大!铜的设置也要大)3.同信号打开来(via和Pin)4.打开drc5.特别关注下配对(差分)6.格点改为57.贴片型的用满铜:通孔用十字架去铺铜!8.检查要仔细啊!9.插件器件不要在里面打VIA(特别是扩版的)10.注意电影打孔!11.建pad 我们注意尺寸.线宽.丝印部要画到焊盘上!12.分割电源和地的时候注意参考平面!(28v 28V—gnd)快捷键设置alias Pgup zoom in 放大alias Pgdown zoom out 缩小alias Home add connect 拉线alias end slide 移线alias Insert reject 换线alias Del delete 删除alias F12 swap pins swap功能funckey 1 'delete;pop cut' 剪线funckey 2 'slide;pop cut' 剪小段funckey 4 assign color 高亮颜色funckey 5 dehilight 删除颜色funckey 6 angle 90 旋转90度funckey 7 copy 复制funckey 8 move 移动(元件、丝印)funckey 9 mirror 元件换层funckey ~K show measure 测量间距funckey ~O show element show功能强大(线、元件、丝印、铜箔….)funckey ~P show measure 测量间距alias Left ix -1 微调左移动alia alias Right ix 1 微调右移动alias uy iy 1 微调上移动alias down iy -1 微调下移动1.如何添加层面和删除层面setup->cross section->鼠标右键->delete2.原色透明度设置display->colour/visibility->display->OpenGL->Global transparency->transparen t3同信号DRCSetup---constraints---modes4.怎么使用swap功能Place—swap—pins 设置快捷键alias按键swap pins5 .BGA怎么自动fanoutRoute---create fanout—过滤器要选择6把BUA线居中VIA&VIA居中Rout—resize\respace—选择你所要的层面7.怎么改变格点Setup—grids—更改参数8如果不小心关了过滤器怎么打打开来View—windows—后面就是窗口了9. 怎么消掉VS(1),shape—manual vold—element-点击铜箔—via(2). --点击铜箔----静铜变动铜10.如何导坐标-分图有移动元件(剪线贴线)导出(1)file—export—sub-drawing—剪线—clp (2) file—export—plaxement—symbol..-txt导入补充下!我们为了防止信号网络贴图被吸走我们剪图和贴图把这给勾选起来(如图)11.怎么改变字体大小(丝印和位号)Setup—design parameters—text12. 如何查找多余线段和via Tools—quick reports—dangling lines report13.如何改变叠层设置;板宽厚度先定义材料定义材料14.如何设置线宽,间距,同信号1.setup—constraints—….2.直接点击图标就可以了A线宽B.间距15.如何添加差分(配对)Logic —assign differential pair —加线Edit—properties—加误差Shape—polygon—割铜铜箔割好了在给它赋予网络名字补充一点怎么合并同信号铜箔掏空铜箔怎么去修铜箔呢?怎么设置自动避铜箔和线呢?A.在还没设置自动避铜之前参数是0(参考B打开)B. shape—global dynamic shape parameters--clearances我们有时候把板子打开线和铜箔都有眼睛看了会很花也很不舒服,怎么隐藏铜箔呢A.我们可以在颜色哪里设置透明度。
一、概述在PCB设计中,BGA(Ball Grid Array)封装是一种常见的封装类型,其走线技巧对于保证电路的稳定性和可靠性至关重要。
而Allegro软件作为一款专业的PCB设计软件,其在BGA走线技巧方面拥有丰富的功能和经验。
本文将结合Allegro软件,介绍BGA走线的相关技巧。
二、BGA走线的特点1. 焊球密集:BGA封装的焊球数量通常非常密集,要求在有限的空间内进行走线,因此在BGA走线时需要考虑如何合理利用每个焊球的连接。
2. 短丝走线:BGA封装内部的焊球通常距离很近,需要进行较短的走线以连接相邻的焊球,走线难度大。
3. 平面层分布受限:由于BGA封装的封装形式,平面层的分布受到限制,需要合理设计BGA的平面层连接。
三、BGA走线的技巧1. 使用阵列方式布局BGA焊盘。
将BGA焊盘布局为规整的阵列,有助于统一焊盘的位置,使得整体布线更加有规律。
2. 使用相对短的走线连接相邻焊盘。
尽量利用相对短的走线来连接相邻的焊盘,可以减少走线的长度,提高信号的传输速率和稳定性。
3. 均匀分布信号线。
在BGA走线时,尽量将信号线均匀地分布在BGA焊盘周围,可以有效减少信号线的堆积,提高整体的走线效率。
4. 合理进行平面层连接。
由于BGA走线时平面层的分布受限,需要合理设计平面层连接方式,使得平面层的连接更加稳定可靠。
四、Allegro中BGA走线的操作1. 创建BGA焊盘阵列。
在Allegro中可以通过BGA Wizard等工具快速创建BGA焊盘的阵列布局,便于后续的走线操作。
2. 使用自动布线工具。
Allegro提供了丰富的自动布线工具,包括差分对、信号完整性等功能,可以帮助工程师快速完成BGA走线,提高工作效率。
3. 使用多层布线功能。
Allegro软件中的多层布线功能可以帮助工程师更好地利用PCB多层结构,进行BGA走线,提高走线的密度和稳定度。
五、总结在PCB设计中,BGA走线是一个相对复杂的问题,需要工程师具备一定的经验和技巧。
Allegro对BGA封装布线由于S3C2410或者2440是采用的BGA封装,看了网上专门有BGA封装的电子资料,是介绍规则的,但是我感觉做起来非常麻烦,所以就觉得是否可以采用最直接的办法使用allegro的扇出功能呢?首先是设置通孔,这个在约束条件管理器中设置点击物理规则(physical rule set)设置中的Set values一定注意这个地方的设置如果你想采用的过孔没有出现在左边的方框内,请查看是否正确设置了user preference设置中的Design_paths中的psmpath和padpath,我是把自己放置通孔的路径增加进去了。
这种方式是最直接修改过孔的办法,另一种是在过孔以后使用tools->padstack->replace 功能来替换,那个比较麻烦。
还是设置约束规则比较好。
设置好了通孔我们就用扇出功能,在Route点击Fanout By Pick,这时可以右键鼠标选择setup 对扇出进行设置,然后选中s3c2410/2440,此时就会看到扇出后的效果了感觉很漂亮而且符合BGA布线的规则,即发射形状,不过最外边的那一排不需要扇出,所以在菜单Edit->delete,然后在过滤Find中只选择Clines和Vias,一般是把四周最外边的三排全部删除了,也可以在布线的同时修整扇出,现在开始对其进行布线了,不过根据布线的走向和密度我决定先从通孔引出到封装外部再进行群组走线,点击Route-Connect,一定要注意右边Options中的Bubble选择正确,如果是Shove preferred(推挤前面的)就会把相邻的布线给挤掉了,如果选择Hug preferred(拥抱前面的)就会在邻近的布线时出现合并现象,这也是不允许的,如果是Off就不会自动避开相近的布线,而Hug only就只是靠近或者拥抱相邻的布线不会出现合并,所以在这里选择Hug preferred。
allegro?使用汇总1.如何在allegro中取消花焊盘(十字焊盘)set up->design parameter ->shape->edit global dynamic shape parameters->Thermal relief connects ->Thru pins ,Smd pins -> full contact2.allegro 中如何设置等长setup -> constraints->electrical->net->routing->Min Max Propagation delays选择要等长的net->右击->create->pin pair->选择pin修改 prop daly 的min 和max项3.如何设置allegro的快捷键修改文件$inst_dir\share\pcb\text\env 或$inst_dir\pcbevn\env快捷键定义如下:alias F12 zoom outalias ~R angle 90 (旋转90 度)alias ~F mirror (激活镜相命令)alias ~Z next (执行下一步命令)alias End redisplay(刷新屏幕)alias Del Delete(激活删除命令)alias Home Zoom fit(全屏显示)alias Insert Define grid(设置栅格)alias End redisplayalias Pgdown zoom outalias Pgup zoom inalias F12 custom smoothalias Pgup slidealias Pgdown donealias Home hilightalias End dehilightalias Insert add connectalias Del Delete4.如何在allegro中删除有过孔或布线的层时不影响其他层1.输出specctra的dsn文件allegro->file->export->router->demo.dsn->run2.产生session文件specctra(pcb router)->file->write->session->demo.ses->ok3.删除某一层中的布线和过孔delete(ctrl+D)->..4.删除allegro中的板层setup->cross section->鼠标右键->delete5.导入session文件allegro->file->import->router->demo.ses->run也可先将通过该层的过孔先替换成顶层焊盘,删除该层以后再替换回来5.如何在Allegro中同时旋转多个零件1.Edit->Move 在Options中Rotation的Point选User Pick2 再右键选Term Group 按住鼠标左键不放并拉一个框选中器件多余的可用Ctrl+鼠标左键点击去掉.3. 选好需整体旋转的器件后右键complete.4. 提示你Pick orgion 鼠标左键选旋转中心.5 下面右键选rotate 即可旋转了.6.allegro 16.0 透明度设置display->colour/visibility->display->OpenGL->Global transparency->transparent7.allegro Drill hole size is equal or larger than smallest padsize.Pad will be drilled away.提示Drill hole size is equal or larger than smallest pad size.Pad will be drilled away.不用理睬这一提示8.ALLEGRO 如何生成钻孔文件Manufacture -> NC -> Drill Customization->auto generate symbolsManufacture -> NC -> Drill LegendManufacture -> NC ->NC parameters->enhanced excellon format->closeManufacture -> NC -> NC Drill->auto tool select->optimize drill head travel9.CAM350如何正确导入钻带文件导进去后MACRO->PLAY->选择(CAM350--SCRIPTS)PADS_DRILL->选择钻带的REP文件还没测试过,rep文件从哪儿来的呢10.allegro 如何设置route keepin,package keepin1.setup->area->route keepin,package keepin ->画框2.edit ->z-copy->options->package keepin,route keepin->offset->50->点击外框11.allegro 中如何禁止显示shape完全禁止的方法没找到setup->user preference editor->display->display_shapefill->输入一个较大的数shape在显示时就不是那么显眼了set-user preference editor-shape-no shape fill(v)12.如何在allegro设置自定义元件库路径在下面两个位置添加自定义元件的路径Setup->User Preferences Editor->Design_paths->padpath Setup->User Preferences Editor->Design_paths->psmpath1.在allegro中如何修改线宽在Allegro的Setup->constraints里的set standard values中可定义每一层走线的宽度,比如,可以定义VCC和GND的线宽为10 Mil。
1.平移:按住鼠标滚轮拖动。
2.缩放:滚轮向上放大,滚轮向下缩小;按下滚轮,出现双圈,向左上或右上移动鼠标,出线矩形框,再按下滚轮,放大到矩形区域;按下滚轮,出现双圈,向下移动鼠标,出线矩形框,再按下滚轮,缩小到矩形区域。
3.光标处定为中心点:按下滚轮,出现双圈,再按下滚轮或左键。
4.层叠结构与特征阻抗设置:Setup—>Cross Section(横截面)或Setup—>Subclasses(子类)—>Etch(蚀刻);或点工具栏上的图标,三种方法都可以打开。
5.颜色管理:点工具栏上的图标。
6.PLANE用正片还是负片:单打独斗,无专人负责管理封装库的,用正片;团队作战,有专人管理封装库的,用负片。
刘佰川做的库只能用正片。
7.常用快捷键:F2 全屏显示F9 取消命令,也可右键菜单-》CancelSF8 高亮(先按shift+F8,然后点需高亮的对象;另一种方法是输入文字SF8回车,然后点需高亮的对象)SF7 取消高亮SF4 测量间距,也可点工具栏上的图标,测量命令下,右键菜单可选择Snap元素类型8.过滤:右键菜单-》Super filter9.看线宽:过滤选Off,点某线段,右键-》show element10.看焊盘或过孔尺寸:过滤选Off,点某焊盘或过孔,右键-》Modify design padstack-》Singleinstance11.过孔定义:Constraint Manager-->Physical -->Physical Constraint Set-->All layers,点击Vias列的单元格可编辑所需使用的过孔种类。
新增过孔:tools-》padstack-》modify library padstack,选择一种编辑,编辑完了另存一个名字。
12.查找器件:菜单Display—>element 或Display—>Highlight,然后窗口右侧,FIND,findby name选symbol(or pin),按回车键。
Allegro使用简介一.零件建立在Allegro中, Symbol 有五种, 它们分别是Package Symbol 、Mechanical Symbol、Format Symbol、Shape Symbol、Flash Symbol。
每种Symbol 均有一个Symbol Drawing File(符号绘图文件), 后缀名均为*.dra。
此绘图文件只供编辑用, 不能给Allegro数据库调用。
Allegro能调用的Symbol 如下:1.Package Symbol一般元件的封装符号, 后缀名为*.psm。
PCB 中所有元件像电阻、电容、电感、IC 等的封装类型即为Package Symbol。
2.Mechanical Symbol由板外框及螺丝孔所组成的机构符号, 后缀名为*.bsm。
有时我们设计PCB 的外框及螺丝孔位置都是一样的, 比如显卡, 电脑主板, 每次设计PCB时要画一次板外框及确定螺丝孔位置, 显得较麻烦。
这时我们可以将PCB的外框及螺丝孔建成一个Mechanical Symbol, 在设计PCB 时, 将此Mechanical Symbol 调出即可。
3.Format Symbol由图框和说明所组成的元件符号, 后缀名为*.osm。
比较少用。
4.Shape Symbol供建立特殊形状的焊盘用, 后缀为*.ssm。
像显卡上金手指封装的焊盘即为一个不规则形状的焊盘, 在建立此焊盘时要先将不规则形状焊盘的形状建成一个Shape Symbol, 然后在建立焊盘中调用此Shape Symbol。
5.Flash Symbol焊盘连接铜皮导通符号, 后缀名为*.fsm。
在PCB 设计中, 焊盘与其周围的铜皮相连, 可以全包含, 也可以采用梅花辨的形式连接, 我们可以将此梅花辨建成一个Flash Symbol, 在建立焊盘时调用此Flash Symbol。
其中应用最多的就是Package symbol即是有电气特性的零件,而PAD是Package symbol构成的基础.一)建立PAD启动Padstack Designer来制作一个PAD,PAD按类型分分为:1. Through,贯穿的;2. Blind/Buried,盲孔/埋孔;3. Single,单面的.按电镀分:1.Plated,电镀的;2.Non-Plated,非电镀的.a.在Parameters选项卡中, Size值为钻孔大小;Drill symbol中Figure为钻孔标记形状,Charater为钻孔标记符号,Width为钻孔标记得宽度大小,Height为钻孔标记得高度大小;yers选项卡中,Begin Layer为起始层,Default Internal为默认内层,End Layer为结束层,SolderMask_Top为顶层阻焊, ,SolderMask_Bottom为底层阻焊PasteMask_Top为顶层助焊, PasteMask_Bottom为底层助焊;Regular Pad为正常焊盘大小值,Thermal Relief为热焊盘大小值,Anti Pad为隔离大小值.二)建立Symbol1.启动Allegro,新建一个Package Symbol,在Drawing Type中选PackageSymbol,在Drawing Name中输入文件名,OK.2.计算好坐标,执行Layout→PIN,在Option面板中的Padstack中找到或输入你的PAD,Qty代表将要放置的数量,Spacing代表各个Pin之间的间距,Order则是方向Right为从左到右,Left为从右到左,Down为从上到下,Up为从下到上;Rotation是Pin要旋转的角度,Pin#为当前的Pin脚编号,Text block为文字号数;3.放好Pin以后再画零件的外框Add→Line,Option面板中的Active Classand Subclass分别为Package Geometry和Silkscreen_Top,Line lock为画出的线的类型:Line直线;Arc弧线;后面的是画出的角度;Line width 为线宽.4.再画出零件实体大小Add→Shape→Solid Fill, Option面板中的ActiveClass and Subclass分别为Package Geometry和Place_Bound_Top,按照零件大小画出一个封闭的框,再填充之Shape→Fill.5.生成零件Create Symbol,保存之!!!三)编写Device若你从orCad中直接生成PCB的话就无需编写这个文件,这个文件主要是用来描述零件的一些属性,比如PIN的个数,封装类型,定义功能等等!以下是一个实例,可以参考进行编写:74F00.txt(DEVICE file: F00 –used for device: ‘F00′)PACKAGE SOP14 ⎫对应封装名,应与symbol相一致CLASS IC ⎫指定封装形式PINCOUNT 14 ⎫ PIN的个数PINORDER F00 A B Y ⎫定义Pin NamePINUSE F00 IN IN OUT ⎫定义Pin 之形式PINSWAP F00 A B ⎫定义可Swap 之PinFUNCTION G1 F00 1 2 3 ⎫定义可Swap 之功能(Gate) PinFUNCTION G2 F00 4 5 6 ⎫定义可Swap 之功能(Gate) PinFUNCTION G3 F00 9 10 8 ⎫定义可Swap 之功能(Gate) PinFUNCTION G4 F00 12 13 11 ⎫定义可Swap 之功能(Gate) PinPOWER VCC; 14 ⎫定义电源Pin 及名称GROUND GND; 7 ⎫定义Ground Pin 及名称二、导入网表Ⅰ. 网表转化在调入前,应该将要增加的定位孔和定位光标以及安装孔加到网表中,定位孔用M*表示,定位光标用I*表示Ⅱ . 进入Allegro,File/Import/Logic调入网表,若显示”0 errs,0 warnings”则表示没有错误,可以进行下一步,否则,应用File/Viewlog 查看原因,根据提示要求电路设计者修改原理图或自己在元器件库中加新器件.四. 设置Ⅰ设置绘图尺寸,画板框,标注尺寸,添加定位孔,给板框导角1. 设置绘图尺寸:Setup→Drawing Size2. 画板框:Class: BOARD GEOMETRY Subclass: OUTLINEAdd→Line 用“X 横坐标纵坐标” 的形式来定位画线3.画Route Keepin:Setup→Areas→Route Keepin用“X 横坐标纵坐标” 的形式来定位画线4.导角: 导圆角Edit→ Fillet 目前工艺要求是圆角或在右上角空白部分点击鼠标右键→选Design Prep→选Draft Fillet小图标导斜角Edit→Chamfer 或在右上角空白部分惦记点击鼠标右键→选Design Prep→选Draft Fillet 小图标最好在画板框时就将角倒好,用绝对坐标控制画板框,ROUTEKEEPIN,ANTIETCH,ANTIETCH可以只画一层,然后用EDIT/COPY,而后EDIT/CHANGE编辑至所需层即可.5. 标注尺寸: 在右上角空白部分惦记点击鼠标右键→选DraftingClass: BOARD GEOMETRY Subclass: Dimension圆导角要标注导角半径.在右上角点击右键→选Drafting,会出现有关标注的各种小图标Manufacture→Dimension/Draft→Parameters…→进入Dimension Text设置在标注尺寸时,为了选取两个点,应该将Find中有关项关闭,否则测量的会是选取的线段注:不能形成封闭尺寸标注6.加光标定位孔:Place→By Symbol→Package,如果两面都有贴装器件,则应在正反两面都加光标定位孔,在在库中名字为ID-BOARD.如果是反面则要镜像. Edit→Mirror定位光标中心距板边要大于 8mm.7. 添加安装孔:Place→By Symbol→Package,工艺要求安装孔为3mm.在库中名字为HOLE1258.设置安装孔属性:Tools→PADSTACK→Modify若安装孔为椭圆形状,因为在印制板设计时只有焊盘可以设成椭圆,而钻孔只可能设成圆形,需要另外加标注将其扩成椭圆,应在尺寸标注时标出其长与宽. 应设成外径和Drill同大,且Drill 不金属化9. 固定安装孔:Edit→Property→选择目标→选择属性Fixed→Apply→OKⅡ 设置层数Set up→Cross-Section…Ⅲ 设置显示颜色Display→Colour/Visibility可以把当前的显示存成文件:View→Image Save,以后可以通过View→ImageRestore调入,生成的文件以view为后缀,且此文件应该和PCB文件存在同一目录下。
Allegro 16.3 中BGA扇孔的方法Allegro中目前本人能实现BGA扇孔的方法只有一种,但是allegro中能够给smd元器件扇孔的方法有两种。
主要以BGA元器件为例给大家介绍下。
SMD元器件扇孔的方法:Allegro 中有两种方法给元件扇孔,allegro中自带的creat fanout 和自动布线器中的fanout by pick。
1、Route——creat fanout2、Route——PCB Routers——Fanout by pick1、Route——creat fanout选中Route——creat fanout,在PCB图中单击鼠标右键,弹出下图对话框。
选择fanout parameters弹出对话框第一个红色框框表示过孔的位置是从底层到顶层。
第二个红色框框用来设置扇孔时所用的过孔的种类,下拉net default 框选中自己设置的过孔类型,via direction 表示扇孔时过孔的方向,下来选项中有很多可供选择的项目,BGA 扇孔时选中BGA Quadrant style第三个红色框框表示扇孔时过孔和引脚之间的距离,BGA扇孔中一般过孔选中在四个引脚的正中间,所以选中centerd,其他情况下可以通过下来菜单来选择自己需要的距离。
设置好参数后点OK键。
选中需要扇孔的器件即可。
可以在setup 的constraints 中设置线宽。
2、Route——creat fanout设置好规则后选中fanout by pick,在PCB图中单击鼠标右键,选中setup出现参数设置。
如图所示设置好参数好,选中元器件给BGA元件扇孔为下图。
3、总结第一种方法对于BGA扇孔来说十分有效,第二种方法到目前为止我还没能实现BGA的扇孔。
经验有限,欢迎大家来交流指导。
希望能给大家帮助~~20130810。
由于BGA芯片管脚太多,为了后期内层走线方便,我们需要提前对BGA芯片进行扇出(fanout)工作。
扇出操作很简单,但是直接进行扇出的线并不完全符合我们的布线规则,所以我们在fanout前需要进行一些设置。
Fanout现在分成两步来进行:
一、前期约束管理设置
对于BGA来讲,每一个PIN扇出的线的网络名不一样,则对应的属性不同,那么扇出的线宽也是不一样滴,所以我们要对这个线宽进行设置。
我们先在BGA周围画一个region,打开CM,点击Region/All layers,
右击生成BGA_0.1MM_PWR_0.25MM
创建net class
将指定的nets assign to建好的class里
创建region class
将需要的net class 赋给指定的region
然后在allegro界面画Region
Shape—Rectangular,或者点击图标shape add rect 右侧options设置如图
画好的Region如图所示
这样前期准备工作就完成了,接下来进行Fanout
二、Fanout
右键单击进行Fanout setup
右侧Find选项只选中comps,然后在allegro界面点击BGA,弹出如下对话框,显示fanout的进度,等一会儿对话框自动关闭,fanout也就完成了
Fanout完成后,有一部分线连接并不完美,需要自己手动调整cline、via的位置。
Fanout About SMD
SMD元件的扇出(Fanout)主要是为了后续布线的时候更方便的进行内层走线,尤其是多层板。
一般在布局的时候,就可以进行相关元件的扇出工作了,如BGA等器件。
其它的分立SMD元件,由于其引脚数较少,可以在后期布线时进行,而且也不必像BGA的扇出那样工整和美观。
扇出(Fanout)就是指从SMD焊盘引一小段线然后打过孔(为内层连线做准备)的操作。
iMX31C项目的布线工作开始时首先要进行的就是BGA元件网络的扇出工作。
目前ITG没有相关的规范,完全按照泰齐的样板进行设计,同时需要做成ITG相关的规范。
1.BGA扇出
BGA扇出受到几方面因素制约,封装本身PIN-PIN距离过小,选择的过孔大小,BGA周围区域空间以及底层空间是否充裕,规则的设置(主要是Spacing约束规则),当然正确的扇出设置也比较重要。
Fanout设置
准备工作(约束规则)做好以后就可以进行Fanout操作了,Route--Fanout by pick,然后右键选择Setup...
弹出下图所示FANOUT设置对话框。
主要设置Direction和Via Location,Direction中有in、out、either三个选项,in表示扇出的过孔在以所有PIN 的边沿框内部,out表示外部,either则是两种都可以,见下图即为Direction设置为in的扇出图,仔细点可以看出,有部分PIN没有扇出成功,因为没有扇出空间。
下图是设置为out的情况,发现所有的过孔都被放置在以PIN外围框外,这种扇出设置不适合BGA等IC。
那么,Via Location的设置又是如何的呢?下面我们来讨论一下,下图所示的设置是Via Location设置为inside的情况,这种扇出结果是成功的,因为Via Location设置中的inside、outside是以器件的Placebound层为基准的。
来看一下Via Location设置为outside的情况,下图所示:
Allegro还支持部分引脚扇出功能,在设置对话框的中间有PIN Type设置,当选择Specified时,有四个选项可以选择,下方还可以剔除通孔引脚
实例操作如下(只扇出无连接引脚)
下图是设置为有网络引脚扇出,正好与上图互补
下图所示BGA在TOP层,PIN-PIN中心距为0.8mm,图中黄色PIN为Bottom层的电容,显然这样的布局不能使得BGA引脚全部扇出,所以在扇出之前要把他们全部移开,从而保证有足够的空间保证BGA的扇出。
扇出时过孔一定是扇出在每四个PIN的中间,这样就可以推算出最理想的过孔选择和扇出距离,如示例中的最大Gap为0.7314mm,如果扇出过孔选择Regular pad直径为0.5mm,并且设置约束规则Via-Pin为0.1mm,即可满足要求
Dist = 0.8000 Total Dist = 0.8000
Manhattan Dist = 0.8000 Dx = 0.8000 Dy = 0.0000
Air Gap = 0.4000 On Subclass: TOP
我们本次设计选择的是Regular pad直径为0.5mm,孔径为0.2mm的VIA,所以在布局初步完成之后就要导入规则约束文件,在现有的规则基础上进行修改后才可以对BGA进行扇出处理。
线宽约束规则中对current via list做修改,所有的constraint set name所对应的via全部选择VIA0M50X0M20
Spacing约束规则设置,通常BGA所在区域都被设置为特殊约束区域,即约束区域,它遵循一个单独的约束规则,如本次设计中的BGA0M8线宽约束规则,由于在扇出之前没有定义约束区域,所以扇出时约束BGA0M8是被屏蔽的,所以在扇出前要把其他所有线宽约束集的规则(除去BGA0M8)中的Via to Pin 和Via to Line都修改为与约束集BGA0M8相同。
上述设置全部完成以后,即可对BGA进行扇出,下图所示中,绿色圆圈和灰色圆圈(No used)为BGA的Pin ,粉红色为过孔VIA0M50X0M20,细线Line线宽遵循Defualt和Diff约束规则,由于这两个规则在Top层的设置相同,所以走线线宽一致。
而粗线Line则是遵循线宽约束规则PWR,由于没有绘制constraint area,所以扇出时PWR属性的网络遵循PWR 线宽约束规则,即使扇出以后设置了Constraint area区域,也不会报错,因为PWR属性网络无论在什么区域都是
遵循PWR约束规则。
看下面的线宽规则分配表明细。
DRC,如果存在DRC要再次调整,解决的方法有如下几种:
1.试着调整元件的放置位置
2.手动调整扇出过孔的位置,并修改扇出线
3.同网络Pin比较密集时,扇出的过孔可以共用,即可删除不用的过孔留出空间
初步放置好之后即可对这些电源网络进行简单布线,原则是BGA底下Bot面的所有的PIN脚必须至少连接到一个同网络过孔,如果实在没有办法连接可以在Pin脚周围添加via与之相连,如果没有空间打多余过孔只有move 器件到其他的地方。
这里的处理方法是尽可能使用高亮操作区分BGA中心区域的不同网络,这样可以根据颜色的设置从而可以知道阻容元件的布局,给布线带来方便,不太容易导致无法布线的情况。
下面的两幅图是扇出后放置了阻容元件,并连接了所有阻容元件的网络。
Top面扇出
Bot面连线
未解决问题:扇出功能不能对应特殊约束区域中的约束规则
在需要扇出区域设置好Constraint area以后,并且分配好不同区域网络所遵循的不同约束集,
执行fanout 操作,本次操作时没有修改事先设定的约束集参数(即via-pin,via-line值),因为约束集BGA0M8中的via-pin,via-line等等参数在扇出前就应该计算好,所以一旦扇出失败(这里的扇出失败指的是无完整扇出),即可得出约束参数计算错误的结论。
下图所示的spacing 约束分配表,bga0m8区域中的所有网络之间都遵循BGA0M8线间距约束规则
查看BGA0M8约束集的参数设置,其中与扇出相关的属性via-pin、via-line、via-via、line-line都取值0.1mm
BGA芯片的Pin直径为0.4mm,pin-pin的中心距离pitch为0.8mm
即可求得Pin To Pin最小Spacing为0.4,对角线的Pin To Pin距离为0.7314 (约束集中是0.125,符合要求)
via选择的是直径为0.5mm,可求得Via To Pin距离为(0.7314-0.5)/2=0.1157mm (约束集中是0.1mm,符合要求)
已知最大的线宽为0.4mm,Line To Line距离为0.1657mm (约束集中是0.1mm,符合要求)
由于最大线宽为0.4mm等于芯片Pin的直径,所以Via To Line值为0.1157mm (约束集中是0.1mm,符合要求)
Line To Pin最小等于Line To Line最小值为0.1657mm(约束集中是0.1mm,符合要求)
上述准备工作就绪以后,扇出的效果并不尽如人意,扇出的线宽统一为0.1mm,包括PWR属性的网络扇出线宽也是0.1mm,所以这样就和Physical约束属性冲突导致DRC的产生。
这中情况的结果是扇出顺利,但不完美。
过孔的位置有了,可以删除Cline,然后手动去连接PWR属性的网络。
其中存在的问题就是扇出没有完全按照事先制定好的规则去执行(约束集为PWR的网络线宽没能够响应)
系统分类: PCB | 用户分类: Layout | 来源: 原创 | 【推荐给朋友】 | 【添加到收藏夹】。