初学Allegro的PCB设计流程的简单记录

2024年04月07日 18:57    发布者:KMDNagito
大家好,我是KMDNagito,是西安芯联方圆的一名培训学员。最近学习了allegro的基本操作,对pcb的设计流程也有了大致的了解,想简单记录一下,同时系统地巩固一下操作和相关知识。本人萌新一枚,初入论坛与硬件行业,如果有哪里有纰漏或错误还请多多包涵,多多指教,希望能不断的分享,从中学习初学Allegro原理图和PCB设计流程学习指南一、非电气引脚零件的制作1、建圆形钻孔:我们这这里打开这个程序https://www.eechina.com/forum.php?mod=image&aid=303354&size=300x300&key=d1e7ac1bb231c83c&nocache=yes&type=fixnone
然后选择机械孔,下面选择圆形。
记得先注意一下单位,我们这里改为使用毫米 1)、parameter:没有电器属性(non-plated) 2)、layer:只需要设置顶层和底层的regular pad,中间层以及阻焊层和加焊层都是null。注意:regular pad要比drillhole大一点。在这里设置每层的regular pad

在这里设置阻焊层的大小,一般比焊盘大一些,我们设置3.6 再来设置drill hole,一般比焊盘小一些,我们设置3.4
二、Allegro建立电路板板框步骤:1、  设置绘图区参数,包括单位,大小。 单位选择mil,精度可以选择两位 2、  定义outline区域要定义outline区域我们需要板子的外型文件,后缀为dxf的就是我们的外形文件,可以导入程序。
在程序中导入
这个时候我们再导入。

更正一下,这里要改成毫米 外形就出现啦
同样的操作我们来导入底层,选择incremental addition来防止覆盖。
更正一下,这里要改成毫米

就可以看到正面反面啦
选择move命令,选择all on,user pick,选择snap pick to,segment vertex 左下角的点为基准点,输入x 0 0 放置到原点。


然后给两个层分别赋予颜色。

3、定义route keepin区域(可使用Z-copy操作)


就可以看到route keepin的建立了。

4、定义package keepin区域同理我们zcopy一个package keepin
可以看到紫色的package keepin  我们再把bottom翻转一下也放过来。
选中之后右键,选择mirror geometry,随便找个其他的位置放下来,再吸附去选中边角放到原点和之前的top层的图形重合。

三、Allegro定义层叠结构对于最简单的四层板,只需要添加电源层和底层,步骤如下:1、  Setup –> cross-section
2、  添加层,电源层和地层都要设置为plane,同时还要在电气层之间加入电介质,一般为FR-4



3、设置完成可以再Visibility看到多出了两层:GND和POWER
4、铺铜(可以放到布局后再做)
5、z-copy –> find面板选shape(因为铺铜是shape)–> option面板的copy to class/subclass选择ETCH/GND(注意选择create dynamic shape)完成GND层覆铜(这里我们后面再铺吧)
6、相同的方法完成POWER层覆铜(这里我们后面再铺吧)
四、Allegro生成网表
1、重新生成索引编号:tools–> annotate


2、DRC检查:tools –> Design Rules Check,查看session log。



3、生成网表:tools –>create netlist,产生的网表会保存到allegro文件夹,可以看一下session log内容。
五、Allegro导入网表
1、file –> import–> logic –> design entry CIS(这里有一些选项可以设置导入网表对当前设计的影响)


2、选择网表路径,在allegro文件夹。
3、点击Import Cadence导入网表。
4、导入网表后可以再place–> manully –> placement list选components by refdes查看导入的元件。


5、设置栅格点,所有的非电气层用一套,所有的电气层用一套。注意手动放置元件采用的是非电气栅格点。

6、设置drawing option,status选项会显示出没有摆放元件的数量,没有布线的网络数量



六、Allegro手工摆放元件
1、place –>manully –> components by refdes可以看到工程中的元件,可以利用selectionfilters进行筛选。另外也可以手工摆放库里的元件。还可以将对话框隐藏(hide),并且右键 –> show就可以显示了。




2、如何镜像摆放到底层?

    方法一:先在option选mirror,在选器件
    方法二:先选器件,然后右键 –> mirror
    方法三:setup –> drawing option –> 选中mirror,就可进行全局设置
    方法四:对于已摆放的零件,Edit –> mirror在find面板选中symbol,再选元件

这样放好元件后就会自动在底层。





3、如何进行旋转?
    方法一:对于已经摆放的元件,Edit –> move 点击元件,然后右键 –> rotate就可以旋转
    方法二:摆放的时候进行旋转,在option面板选择rotate



七、Allegro快速摆放元件1、开素摆放元件:place–> quickplace –> place all components


2、如何关闭和打开飞线?

关闭飞线:Display –> Blank Rats –> All 关闭所有飞线
打开飞线:Display –> Show Rats –> All 打开所有飞线
3、快速找器件:Find面板 –> Find By Name –> 输入名字

八、Allegro布局基本知识
1、摆放的方法:Edit –>move或mirror或rotate
2、关于电容滤波,当有大电容和小电容同时对一点滤波时,应该把从小电容拉出的线接到器件管脚。即靠近管脚的为最小的电容。
3、各层颜色设置:top –> 粉色;bottom –> 蓝色;

九、约束规则的设置概要
1、约束的设置:setup –>constrains –> set standard values 可以设置线宽,线间距。间距包括:pinto pin、line to pin、line to line等

2、主要用spacing ruleset 和 physical rule set 来设置线距、线宽及过孔规则。

3、Spacing rule set 主要设置线距规则。
4、Physical rule set主要设置线宽及过孔规则。


十、约束规则设置具体方法
1、在进行设置时,注意在ConstrainSet Name选择Default。这样只要是没有特殊指定的网络,都是按照这个规则来的。
2、一般设置规则:pin to pin为6mil,其他为8mil。

3、  Physical Rule中设置最大线宽,最小线宽,颈状线(neck),差分对设置(这里设置的优先级比较低,可以不管,等以后专门对差分对进行设置),T型连接的位置,指定过孔

4、添加一个线宽约束:先添加一个ConstraintSet Name,在以具体网络相对应。


十一、区域规则设置
1、设定特定区域的规则,例如,对于BGA器件的引脚处需要设置线宽要窄一些,线间距也要窄一些。
2、setup –>constraints –> constraint areas –> 选中arearsrequire a TYPE property –> add 可以看到options面板的class/subclass为BoardGeometry/Constraint_Area –> 在制定区域画一个矩形 –> 点击矩形框,调出edit property –> 指定间距(net spacing type)和线宽(net physical type) –> 在assignment table进行指定

(不好意思还没学到这里,下次分享)


十二、相对延迟约束规则设置(即等长设置)
1、在设置相对延迟约束之前也需要先建立拓扑约束
2、在拓扑约束对话框 –>set constraint –> Rel Prop Delay 设定一个新规则的名称 –> 指定网络起点和终点 –> 选择local(对于T型网络的两个分支选择此选项)和global(对于总线型信号)
在这里我们可以用Match Group来实现这样的功能,这里仅作演示。


十三、布线准备
1、设置颜色:Display–> color/visibility 其中group主要设置:stack-up,geometry,component,area,这里主要是去方便我们识别,方便找焊盘和走线



3、  高亮设置:Display –>color/visibility –> display选项:temporary highlight和permanent highlight 然后再在display –>highlight选择网络就可以高亮了。但是此时高亮的时候是虚线,可能看不清,可以在setup –>user preferences –> display –> display_nohilitefont 打开此选项 也可以设置display_drcfill,将DRC显示也表示为实现,容易看到。另外DRC标志大小的设置在setup –> drawing option –>display –> DRC marker size



3、布局的时候设置的栅格点要大一些,在布线的时候,栅格点要小一些


4、执行每一个命令的时候,注意控制面板的选项,包括option,find,visibility
5、不同颜色高亮不同的网络:displayhighlight –> find面板选择net –> option面板选择颜色,然后再去点击网络。也可以通过dehilight去取消高亮。
十四、差分布线
1、  差分线走线:route –>conect然后选择差分对中的一个引脚,如果已经定义了差分对,就会自动进行差分对布线。我们可以在这里定义差分。

2、如果在差分布线时想变为单端走线,可以点击右键:single trace mode

十五、蛇形走线
1、  群组走线:route –> 选择需要布线的飞线这样就可以多根线一起走线了 –> 但快到走线的目的焊盘时,右键 –> finish 可以自动完成 –> 再利用slide进行修线
2、常用的修线命令:
(1)、edit –>delete 然后再find中可以选择Cline(删除整跟线)、vias、Cline Segs(只删除其中的一段)  
(2)、route –>slide 移动走线

(3)、route –>spread between voids 并在控制面板的options栏输入void clearance即可进行自动避让。

十六、铺铜
1、建议初学者内电层用正片,因为这样就不用考虑flash焊盘,这时候所有的过孔和通孔该连内电层的就连到内电层,不该连的就不连。而如果用负片,那么如果做焊盘的时候如果没有做flash焊盘,那么板子就没法用了。
2、在外层铺铜:shape –>rectangular 然后再option中进行设置

(1)、动态铜(dynamiccopper)

(2)、制定铜皮要连接的网络
3、铺铜后如何编辑边界:shape–> edit boundary 就可以对铜皮就行修改边界
4、如何删除铜皮:edit –>delete –> 在find中选择shape–> 点击铜皮就行删除
5、修改已铺铜的网络:shape–> select shape or void –> 点击铜皮,右键assign net

6、如何手工挖空铜皮:shape–> manual void –> 选择形状


7、删除孤岛:shape –>delete islands –> 在option面板点击delete all on layer

8、铺静态铜皮:shape –>rectangular –> 在option面板选择staticsolid
9、铜皮合并,当两块铜皮重叠了以后要进行合并:shape –> merge shapes 逐个点击各个铜皮,就会合并为一个铜皮。合并铜皮的前提是铜皮必须是相同网络,别去铜皮都是一种类型(都是动态或者都是静态)

十七、丝印处理(为出光绘做准备)
1、生成丝印层是,与电气层没有关系了,所以可以把走线以及覆铜都关闭:display –> color visibility 关掉etch,要留着pin和via,因为调整丝印时需要知道他们的位置。

2、在display –>color and visibility –> group选择manufacturing –> 选择autosilk_top和autosilk_bottom 因为丝印信息是在这一层的。不需要选择其它层的silkscreen

3、生成丝印:manufacturing–> silkscreen –> 选择那些层的信息放在丝印层,一般要选上packagegeometry和reference designator –> 点击silkscreen,软件自动生成这个信息
4、  调整丝印,先在color andvisibility中关掉ref des assembly_top和assembly_bottom



5、调整字体大小:edit –>change –> 在find面板选中text–> option面板选中line width和textblock,不选择text just –> 画框将所有的文字改过来。line width是线宽,text block是字体大小。注意option选项中的subclass不要动,否则修改后,就会把修改结果拷贝到那一层了。




6、调整丝印位置:move –>选择编号进行修改
7、加入文字性的说明:add–> text –> 在option中选择manufachuring/autosilk_top,以及字体的大小,然后点击需要添加的位置,输入即可




十八、钻孔文件
1、钻孔文件是电路板制作厂商数控机床上要用到的文件,后缀为.drl

2、设置钻孔文件参数:manufacture–> NC –> NC Parameters –> 设置配置文件(nc_param.txt)存放路径,全部保持默认即可



(路径里最好不要有中文哦)
3、产生钻孔文件:manufacture–> NC –> NC drill –> Drilling:如果全部是通孔选择layerpair;如果有埋孔或者盲孔选择(by layering)—>点击drill就可产生钻孔文件 –> 点击view log查看信息


4、注意NC drill命令只处理圆型的钻孔,不处理椭圆形和方形的钻孔,需要单独进行处理:manufacture –> NC –> NC route –> route 可能会产生一些工具选择的警告,可以不必理会。完成后
会产生一个.rou文件

5、生成钻孔表和钻孔图:display–> color and visibility –> 关闭所有颜色显示,在geometry中单独打开outline,只打开电路板的边框 –> manufacture –> NC–> drill legend 生成钻孔表和钻孔图 –> ok –> 出现一个方框,放上去即可




十九、出光绘文件

1、出光绘文件:manufacture–> artwork,注意以下几个选项:


Film Control:

(1)、undefined linewidth:一般设置为6mil或者8mil
(2)、plot mode:每一层是正片还是负片

(3)、vector basedpad behavior:出RS274X格式文件时,一定要选中这个选项,如果不选这个选项,那么出光绘的时候,负片上的焊盘可能会出问题。


   General Parameters:
(1)、Device type:选择Gerber RS274X,可以保证国内绝大多数厂商可以接受

2、在出光绘文件之前可以设定光绘文件的边框(也可以不设置):setup –> areas –> photoplot outline


3、如果要出顶层丝印信息的光绘文件,需要先把这一层的信息打开:display –> color/visibility –> all invisible 关掉所有。
4、对于顶层丝印层,需要打开以下三个选项:
   geometry:: silkscreen_top: silkscreen_top
   manufacturing:: autosilk_top
然后,manufacture –> artwork –> filmcontrol –> 在available films中选择TOP,右键add –> 输入这个film的名字(例如silkscreen_top)这样就可以在available films中添加上了这个film,并且
里面有刚才选择的三个class/subclass


5、利用相同的方法,在产生底层的丝印
6、添加阻焊层,先在manufacture中添加上soldermask_top层,然后再在display –>color/visibility中选择一个几个class/subclass:
   stack-up:: soldermask_top; :soldermask_top
   geometry:: soldermask_top;: soldermask_top

再在soldermask_top右键–> match display 就会让这个film和选择的class/subclass进行匹配了



    同样的办法添加底层阻焊层。7、添加加焊层,先在manufacture中添加上pastemask_top层,然后再在display –>color/visibility中选择一个几个class/subclass:
   stack-up:: pastemask_top; :pastemask_top
   geometry:: 没有; : pastemask_top
    再在soldermask_top右键 –> match display 就会让这个film和选择的class/subclass进行匹配了

同样的办法添加底层加焊层。



8、添加钻孔表,先在manufacture中添加上drill_drawing层,然后再在display –>color/visibility中选择一个几个class/subclass:
   manufacturing:: Nclegend-1-4

   geometry:: outline
再在drill_drawing右键–> match display 就会让这个film和选择的class/subclass进行匹配了


9、板子需要的底片:
(1)、四个电气层(对于四层板)
(2)、两个丝印层
(3)、顶层阻焊层和底层阻焊层(soldermask)
(4)、顶层加焊层和底层加焊层(pastemask)

(5)、钻孔图形(NC drilllagent)


10、如何在已经设定好的film中修改class/subclass:点击相应的film –> display就可以显示当前匹配好的class/subclass –> 然后再在display中修改 –> 然后再匹配一遍


11、需要对每个film进行设置film option


12、生成光绘文件:filmoption中select all –> create artwork


13、光绘文件后缀为.art

14、需要提供给PCB厂商的文件:.art、.drl、.rou(钻非圆孔文件)、参数配置文件art_param.txt、钻孔参数文件nc_param.txt,需要把下面这些文件进行打包。