Cadence 17.2 软件(Allegro)画PCB操作前期设置参数(仅供参考)(针对相对简单的项目)

        原理图和元件封装都已经准备好的情况下,接下来就是要用PCB Editor来做PCB布线作图,本篇文章是提供画PCB操作前期设置配置参数,方便PCB画图。

        本篇博客主要描述以下三点:

1. 用Capture CIS检查原理图设计,即DRC,并创建原理图文件的网表(第一方网表)和出物料清单(即BOM表)。

2. 导入结构工程师的AutoCAD的DXF文件,作为PCB Editor的板框。

3. 导入第一方网表,连接原理图文件和PCB文件。

4. PCB布线前对PCB Editor设置用户和配置等参数。

5. 针对简单的项目做相对简单的布线原则。

1. 用Capture CIS检查原理图设计,即DRC,并创建原理图文件的网表(第一方网表)和出物料清单(即BOM表)

1.1 选中文件夹列表里的原理图文件,文件名后缀是.dsn;

1.2 点击Tools,选择Design Rules Check,进入对话框。

1.3 看到Design Rules Options,需选择的选项如下图;

1.4 然后点击Eletrical Rules,需选择的选项如下图;

1.5 点击Physical Rules,需选择的选项如下图;

1.6 如上图,点击确定,然后软件开始检查,并弹出如下对话框,

INFO(ORCAP-36105): Checking Missing Pin Numbers
INFO(ORCAP-36101): Checking Missing PCB Footprint Property

在上面两句话之间没有信息,即判定没有错误。

 

 1.7 接下来创建网表,同样需要点击选中原理图的文件名,如下图。

1.8 点击Tools,选择Create Netlist,

 1.9 弹出Netlist对话框,按下图中的选项选中,可以看出原理图和PCB文件的关联关键词是PCB Footprint,因此原理图里面的元件footprint名称和元件封装的名称必须一致,这样在画PCB时才会把两个文件里面的同一个元件关联上。另外下面Netlist Files一栏写的是allegro,表明在这个原理图文件夹下面的文件夹,名字是allegro,这里面会有创建出来的网表。确认无误后,点击确定。

 1.10 然后在文件夹目录里面可以看到有关于网表的输出信息,如下图Output下一级可以看到pstxnet.dat这个文件,该文件就是关于网表信息的文件,不需要看懂,只需要看到它的存在。

 1.11 上面网表完成以后,一般企业都会要求出BOM表给到生产单位。同样,选中原理图文件,如下图。

1.12 点击Tools,选择Bill of Materials。

 1.13 弹出Bill of Materials对话框,如下图,查看Header和Combined properly string,

默认内容是下文,要在后面增加蓝色字体的内容,表格才会多出封装信息。然后点击OK。

Item\tQuantity\tReference\tPart\tPCB Footprint

{Item}\t{Quantity}\t{Reference}\t{Value}\t{PCB Footprint}

1.14 弹出Excel表格,如下图,PCB Footprint下面的内容就会出现了,否则不会出现这个内容。

2. 导入结构工程师的AutoCAD文件,作为PCB Editor的板框

2.1 打开PCB Editor,新建一个BRD格式的文件,点击File->New。

2.2 弹出对话框New Drawing。

2.3 点击Browse,更改存放BRD文件的路径,并在File name一栏输入文件名,点击open。

 2.4 回到New Drawing,点击OK。

 2.5 导入结构图的板框,点击File->Import->DXF,

2.6 弹出DXF In对话框。

2.7 点击DXF file一栏的"...",找到存放DXF文件的路径,并双击。

 

2.8 回到DXF In对话框。

2.9 由于该文件设计用的是mm毫米为单位,所以要将DXF units的单位MILS,改为MM。然后如果层别的设置还没设定好,Import选项是呈灰色状态无法点击,因此要点击Edit/View layers进入设置层别。

2.10 进入DXF In Edit/View Layers对话框

2.11 在此对话框先建立BOARD GEOMETRY该大类的层别,然后在Subclass新建一个子类的层别,点击Class的下拉按钮,选择BOARD GEOMETRY。


2.12 然后在Subclass下方点击New subclass,新建子类的层别。

2.13 由于在公司内部流动较大,故需要新建可区分的层别方便自己工作,在这里用日期来命名。然后点击OK。

子类图层:0-20230609

2.14 回到对话框,再新建一个子类图层,如下图。

子类图层:PCB_TOP_SIDE-20230609

2.15 回到对话框,继续新建一个子类图层,如下图。

子类图层:PCB_OUTLINE-20230609

2.16 回到对话框,继续新建一个子类图层,如下图。

子类图层:KEEPOUT-20230609 

 

2.17 回到对话框,继续新建一个子类图层,如下图。

子类图层:DI-20230609

 

 2.18 回到对话框,继续新建一个子类图层,如下图。

子类图层:Defpoints-20230609

2.19 这五个层别实际是软件默认需要的,如下图,只是在后面加了个日期。建立完这个五个层别之后,就可以在DXF In Edit/View Layers这个对话框,点击Select all打上√,在Class这一栏,点击下拉按钮,都选择BOARD GEOMETRY,在Subclass点击下拉按钮依次选择对应新建的子类图层名称。然后点击OK。

2.20 回到DXF In对话框,点击左下角的Import,然后出现dxf2a(allegro)对话框显示正在导入当中,等待导入完成。

2.21 完成以后,回到对话框,点击下方的Close,关闭对话框。

2.22 回到软件主页面可以看到板框导入进来了。

2.23 该软件高版本建议结构图是放置在Design Outline,所以在Options一栏选择Design Outline,然后更改较亮的颜色,如下图。

 

2.24 继续更改其它层的颜色,选择Cutout,变更较亮的颜色。

2.25 然后切换回Design Outline这个层别里。

2.26 接下来就是根据现有的结构进行布置,点击Edit->Z-Copy,这个命令可以实现跨层的复制。

2.27 在Options一栏选择图层,在大类图层,选择BOARD GEOMETRY,

2.28 然后在下面的子类选择Design Outline,如下图。

2.29 然后点中用十字光标选中外框,然后该外框就会高亮成黄色,可以在Command命令行可以发现此语句Copied to: ("Board Geometry/Design_Outline"), 1 copies made,也就是说这个黄色外框已经被复制到Board Geometry/Design_Outline这一层。(注意是点选,而不是框选)

2.30 将当前图层切换到Cutout。

2.31 同样使用Edit->Z-Copy命令,点选该圆圈,这个圆圈对于实物来说是一个装配孔,而Cadence软件建议使用者把这类挖空的孔,都放置在Cutout这一层。

2.32 这里有四个孔全部都点选,如下图。

2.33 完成后右键点击Done。

2.34 通常来说,元件和导线都要放在装配孔以外,板框以内,所以我们要建立禁止布线区,使用Edit->Z-Copy。

2.35 在Options一栏选择大类PACKAGE KEEPIN,这个大类是用来放置元件区域的,如下图,Size选择Contract,即内缩,Offset输入40,即内缩40mil。

2.36 点击外框线,即黄色线,则出现紫色边框线,也就是出来了紫色布线区域。

2.37 切换图层,选择大类PACKAGE KEEPOUT,且offset填0,因为这个是装配孔,只需要让它本身的区域不被放置元件即可。 

2.38 点击外孔的边缘,如下图,出现网状区域,网状区域代表禁止布线。

小结:上面的PACKAGE KEEPIN和PACKAGE KEEPOUT是属于元件放置区和禁放区。

2.39 接下来是布线区和非布线区,在Options一栏选择图层为ROUTE KEEPIN,要求线到板边至少要有10mil,所以设置offset为10mil,即布线区相对于板边内缩10mil。

 2.40 点击板边,生成布线区,这里是橙色线。

2.41 然后图层选择ROUTE KEEPOUT,图层区域会自动跳到TOP,这里要修改为ALL,且该外扩Expand,offset为10。即外扩10mil。

2.42 点击装配孔圆环区域即可,如下图。

2.43 完成以后,右键点击Done。

2.44 点击菜单栏下面的fix命令,即用来固定整个结构图,后面布线时就不会误操作。

2.45 拖动全选整个结构图,如下图。

2.46 右键点击Done。

2.47 设置焊盘和元件封装路径,选择菜单栏Setup->User Preferences,

2.48 弹出对话框User Preferences Editor,左侧目录栏选择Paths->Library。

2.49 选择padpath和psmpath的"...",添加焊盘和元件封装的存放路径,完成以后点击OK。

 

3. 导入第一方网表,连接原理图文件和PCB文件。

 3.1 选择菜单栏,点击File->Import->Logic/Netlist,

3.2 弹出对话框Import Logic/Netlist,根据下图,选中需要勾上的选项

3.3 然后在该对话框的底部,点击"...",选择网表存放的路径,点击Choose。

3.4 然后在当前的对话框点击Import,等待导入完成。

3.5 导入完成后,该对话框都会退出。

4. PCB布线前对PCB Editor设置用户和配置等参数。

4.1 放置元件,点击菜单栏Place->Quickplace。

 4.2 弹出对话框Quickplace,然后点击Place,再点击OK。

4.3 可以看到元件的放置了

4.4 由于这是第一方网表,可以通过选中原理图的元件,对PCB文件的元件进行高亮,因此在这里可以分模块进行布局,回到Capture CIS,右键点击Selection Filter。

4.5 右侧出现对话框,先点Clear all将所有项目取消选中,再选中Parts,也就是只可以框选元件。最后点击OK。

 

4.6 把不需要的信息隐藏,即将相应的图层颜色屏蔽掉,依据顺序,把如下图层的颜色改成黑色,意思就是屏蔽:(注意需要屏蔽这个底层是因为如果元件放到背面,即镜像放置,这个符号也是会显示的,所以也可以一并屏蔽)

Componet Value - Assembly_Top 元件值的顶层

Componet Value - Assembly_Bottom 元件值的底层

Componet Value - Silkscreen_Top 元件值的丝印顶层

 

Componet Value - Silkscreen_Bottom 元件值的丝印底层

Ref Des - Assembly_Top 元件符号的顶层

 

Ref Des - Assembly_Bottom 元件符号的底层

Ref Des - Silkscreen_Top 元件符号的丝印顶层

Ref Des - Silkscreen_Bottom 元件符号的丝印底层

Package Geometry - Pin_Number 元件序号的图层

Package Geometry - Place_Bound_Top 元件区域顶层

 

Package Geometry - Place_Bound_Bottom 元件区域底层

Package Geometry - Dfa_Bound_Top 

 

Package Geometry - Dfa_Bound_Bottom

Package Geometry - Assembly_Top 装配顶层

Board Geometry - Dimension 测量尺寸的图层 

4.7 将需要的图层变更颜色,

Package Geometry - Silkscreen_Top 丝印顶层 

Package Geometry - Silkscreen_Bottom 丝印底层 

4.8 查看飞线,发现飞线没有最短化

点击Setup->Design Parameters

弹出对话框Design Parameter Editor,然后在Ratsnest geometry点击下拉选择Straight,就可以实现最短化。

4.9 现在是无法区分钻孔还是焊盘,所以在Design Parameter Editor对话框右侧,把Plated holes, Non-plated holes & Padless holes都要打上√,其余是默认打√的。

4.10 这里默认用Mil作单位,不用改。

4.11 修改栅格点,点击Setup->Grids,

根据下图修改栅格点。

4.12 对NC脚进行高亮,点击Display->Highlight Dummy Pins,

弹出对话框Highlight Dummy Pins,对Dummy nets和Single node nets打上√,颜色选择灰色。点击Apply。

弹出没有网络的引脚报告,如下图。

如确认没问题就关闭对话框。

4.13 对电源引脚和地脚指定,并用不同颜色标注。点击Logic->Identify DC Nets。

弹出对话框,由于这个产品的引脚不多,建议先不用这种方式选择,点击Cancel取消。

先在右侧Find一栏,取消所有项目选中,然后只选中Nets。

直接在图面用鼠标点击逐个选中,选完以后对着某一个被选中的引脚右键点击Property edit。

弹出对话框,在左下角name一栏输入rat*,也就是搜索这一个项目

然后右边显示出Property,Ratsnest_Schedule,在右边一栏下拉选择POWER_AND_GROUND,点击OK。

接下来开始对电源网络和地网络进行分配颜色,先对GND网络进行分配,右键点击GND,选择Assign color,

弹出色卡,选择颜色。同样的方法对电源网络和地网络进行分配颜色,这里我根据个人的喜好选择颜色,步骤省略。

分配完颜色后,如下图。

4.14 分配完颜色之后,这些电源网络和地网络已经有颜色区分了,就可以关闭相关的飞线。点击Display->Blank Rats->Nets

然后用光标点击这些电源网络和地网络,点击之前还有这个叉叉,点完之后就没有了。

  

完成以后,右键点击Done。

4.15 完成以后再修改一下栅格点间隔,点击Setup->Grids。

弹出对话框Grids,根据下面修改Non-Etch和All Etch即可,这里面5个5,意思是一个格25mil,分成5等份。点击OK。

回到主页面,再点击Setup->Design Parameter,

 弹出Design Parameter Editor,选择Design这个页面,将Accuracy改为1,即把小数改成1位就够了。点击OK。

回到主页面,修改栅格点的颜色,点击Display->Color/Visibility

弹出Color Dialog对话框,选择Display,点击色卡,再点击Grids那个空格即可变更颜色。点击OK。

4.16 设置旋转元件的快捷键,进入windows 11的设置页面,点击高级系统设置,弹出系统属性对话框,在这个对话框点击环境变量。

弹出环境变量对话框,确认变量HOME的值是哪个路径,这里是在H:\SPB_Data,点击取消,退出对话框。

然后去到电脑找到该路径文件夹,找到pcbenv文件夹,

双击进入pcbenv文件夹里面,用记事本打开env文件。

在source $TELENV语句下面增加这一句funckey ' ' angle 90

然后保存此文件并关闭,再关闭PCB Editor并重新打开,这样空格键就生效旋转元件的功能。

4.17 修改鼠标滚轮缩放比例, 点击Setup->User Preferences。

进入User Preferences对话框,点击目录栏Ui->Zoom,buttonfactor填0.5,no_dynamic_zoom打上√。

点击OK。

4.16 回到原理图,在这里用这样的方法对模块的元件进行高亮,然后在PCB Editor进行分模块布局,这里省略具体操作,比较简单。

 

5. 针对简单的项目做相对简单的布线原则。

5.1 叠层设置,点击Setup->Cross-section

进入对话框Cross-section Editor,

软件默认是双面板,在本项目里面是要做四层板,所以要在Objects这一栏增加叠层。对着TOP右键点击选择Add Layer Below

增加到4层,如下图。

对于TOP往下数第二层,Layer一栏下拉选择Plane,这一层做成一个平面。

命名为ART2,因为一般来讲实物PCB板的第二层是用来做GND用的,可以命名为L2GND,其实都可以,而且一般来讲主控芯片的下一层,要用作为地平面,缩短回流路径,在这里命名ART2。

继续在下方增加一个层,命名为ART3,这个一般用作电源平面。

5.2 约束规则设定,点击Setup->Constraints->Constraint Manager,进入约束管理器。

弹出对话框Allegro Constraint Manager

Electrical Constraint Set是电气约束,这个主要做的是等长,延时,拓扑,阻抗校验,过孔个数设置等等。

Physical Constraint Set主要设置的是线宽,过孔选择,差分线间距

Spacing这里主要设置的是各种元素之间的距离。 

 Same Net Spacing就是设置的是同一网络的各种元素之间的距离。

介绍完毕,开始设置:

先退出约束管理器,点击Logic->Assign Differential Pair,创建差分对。

进入对话框Assign Differential Pair,由于原理图的差分对网络已经命名好,用P和N或者是P和M做结尾,所以点击Auto Generate自动生成

弹出对话框Auto Differential Pair,在+polarity输入P,在-polarity输入N。再点击Generate。

弹出Differential Pairs Created生成差分对报告,检查无误后关闭继续生成P和M结尾的差分对,同样的操作完成。

创建完差分对之后,进入约束管理器,进行规则设定。

选择Electrical Constraint Set->Routing->Differential Pair,右键点击Name名称,Create->Electrical CSet,在这里先创建一个自己定义的规则名称,

弹出对话框Create Electrical CSet,在这里命名为DIFF

回到管理器页面,这里只设置Static Phase Tolerance静态相位误差为5mil,

然后右侧一栏选择Net->Differential Pair,将这个自定义规则DIFF,用下拉按钮针对需要用差分对规则的网络都选用DIFF,这样后面那里的静态相位误差都被设置成5mil了。

上面是Electrical Constraint Set,接下来设置线宽,进入Physical->Physical Constraint Set->All Layers

在DEFAULT这一栏设置Line Width为6.0mil。

设置Differential Pair下面的Min Line Spacing(线与线之间最小的间距)为6.0mil,Primary Gap(主间距)为6.0mil。

接下来设置过孔Vias,当前这个过孔是没有设置规则的。

所以打开Padstack Editor软件,

新建一个过孔文件,命名为via10X18,意思是内径10mil,外径18mil。为什么设置为这个内径是10mil?根据过往经验,大部分PCB厂商对内径的工艺至少要做8mil以上,也就是钻床上的钻头对板子直穿的直径至少要在8mil以上,再结合板子元器件密度的高低,且10mil以上的过孔的生产成本就不存在差异了,所以这里设置内径为10mil。

在Drill这一页设置内径为10mil,注意下方的单位为Mils。

在Design Layers这里的直径改为18mil,说明外径是18mil

点击这一个格。

然后下面出现这些信息,在Diameter设置为18即可。

然后将这一个格复制。

对这三层都进行粘贴。 

设置小数位数,改成1位即可。

然后保存退出即可,回到PCB Editor软件约束管理器页面。

点击这一Vias,DEFAULT这一个格

会弹出Edit Via List对话框。

然后选择VIA10X18,双击它。

这样这个过孔就会增加到右侧的列表里面。

 上面顶层和底层的约束规则创建好了以后,现在创建电源平面层的规则,右击DEFAULT->Create->Physical CSet

 命名为PWR,点击OK。

设置电源平面层的最小线宽为8mil。

这个规则设置好以后,就可以将它在网络这里批量更改,回到左侧一栏,点击选中Net->All Layers

回到Capture CIS原理图,由于电源网络不多,所以这里手动选择所有电源和地的网络。通过点选,将PCB Editor里的约束管理器的电源和地网络高亮。

点选完以后,效果如下图。

然后右击其中一个高亮的,选择Create->Class,新建一个类。

弹出Create Net Class对话框,

重命名为POWER,点击OK。

创建完类别之后,就会看到电源和地的网络都归结在一起,如下图效果。

然后在DEFAULT一栏,点击选中出现下拉按钮,选择PWR,这样就可以对该网络的所有规则进行批量修改。

完成以后,接下来修改Spacing这一个大类,左侧选择Spacing->Spacing Constraint Set->All Layers。

点击DEFAULT,右击选择Change all design unit attributes,

弹出对话框,填写6,因为这个项目评估过可以走6mil,所以就将后面这些项目批量全部修改为6mil。点击OK。

 

设置完成之后,它就会分配到所有层,只要是命名为DEFAULT的,它都改变了6mil规则。

然后回到Physical->Physical Constraint Set->All Layers,将滚动条拖到最右边,点击选中DEFAULT这一栏。

在Pad-Pad Connect这一栏,下拉选择NOT ALLLOWED,意思是盘盘连接不允许。

 DEFAULT和PWR这两个类都不允许。

其实意思就是DEFAULT这一类代表的信号线出来的过孔焊盘,是不能允许被连接到电源层(包括地)的过孔。

然后设置Same Net Spacing,

 右击点中DEFAULT->Change all design unit attributes。

弹出对话框Set Value,填入6,点击OK。

对个别规则修改,同一网络的线到线的距离如果设置为6mil,那么就算是不同层它也有可能不允许你重叠,那这样就没必要,所以改成负数-100,允许它可以重叠。这是Line To << Line mil

改完之后效果是如下图,也就是改Line,Thru Pin,SMD Pin,Thru Via这些规则

然后改线到铜的距离-100,这里是Shape To << All

改完之后效果是如下图;

全部修改完之后,点击菜单栏Analyze->Analysis Mode,

弹出对话框Analysis Modes,点击Electrical->All differential pair checks,在On这一列打√,也就是在布线的时候,软件会帮忙检查差分对规则。

继续点击Physical->Pad-pad direct connect,在On这一列打√,软件会帮忙检查盘盘连接规则。

点击Spacing,这里直接在On一列的最上面那一个打√,即全部打开检查。

点击Same Net Spacing,选择Thru Via To的Thru Pin, SMD Pin, Thru Via,也就是告诉软件检查同一网络下的通孔不能打到插件焊盘,贴片焊盘和通孔焊盘。点击OK。

关闭约束管理器,回到主页面。

5.3 针对特殊的网络分配差分对规则

查看原理图,发现根据PCB Editor软件设置差分对,C1电容右端连接U3_TXN网络和C2电容右端连接U3_TXP网络是会满足软件设置的差分对规则,布线的时候会遵顼此规则,但是C1的左端和C2的左端分别连的是RX-和RX+,都是需要满足差分对规则去布线,但由于它们的网络不是U3_TXN和U3_TXP,所以布线的时候不会遵循差分对规则,那么现在我们需要去设置一下。 

回到PCB Editor主页面,点击Analyze->Model Assignment, 

弹出对话框SI Design Audit,点击OK。

弹出询问对话框Allegro PCB Designer,点击是。

弹出对话框Signal Model Assignment,选择RefDesPins,

在右侧Find这一栏,只保留Comps打√选项,

点击C1电容一端,让Pin脚高亮,

然后点击Signal Model Assignment对话框的Create Model

弹出对话框Create Device Model,点击OK。

弹出两个对话框

其中这个对话框Create ESpice Device Model里面的Value值不能是0,这里不是0,就按默认即可。点击OK。

弹出对话框Allegro PCB Designer,点击是。

然后可以看到Signal Model Assignment对话框,Signal Model下面显示“CAP-C0402_C0402_..."说明该模型已创建。

同理C2的电容也是同样的方法创建,点击OK。

然后点击Setup->Constraints->Constraint Manager,进入约束管理器

查看Electrical->Net->Differential Pair,可以看到多出了这两项XNet U3_TXN, XNet U3_TXP,

这样布线就会遵循自己设定差分对的规则了。

5.4 差分对布线设置参数

点击Route->Connect,

任意点击一个差分线的Pin脚

查看右侧Options,将Bubble下拉选择Hug only,Smooth下拉选择Full

 

 右键点击空白位置将Enhanced Pad Entry的√取消掉。

点击Setup->User Prefenrences

 

弹出对话框User Preferences Editor,选择Route->Connect,将下列选项勾上

acon_disable_nullnet_route √

acon_route_on_active_subclass √

allegro_dynam_timing 下拉选择on

allegro_dynam_timing_fixedpos √

Ignore Dynamic Shapes in Etch Edit √

点击OK。

这样右下角就可以显示布差分线的时候的时序相位对不对。

布完线之后需要对线进行调整使用的是下面第二个命令,点击它

在右侧Options->Bubble,下拉选择Hug only。

对Clip dangling clines取消打√

Smooth选择Full 

 

5.5 调整颜色

点击Display->Color/Visibility

左侧一栏点击Net,保留选项如下图;

即将电源和地的网络的线段,形状和飞线都不显示颜色,这样容易区分。

       好了,到此就可以按照参数尽情地布线。当然这些参数是针对一些相对简单的项目而设置的,如果有需求要用高速布线,那么还有很多参数需要设置,这里就不赘述了。

  • 16
    点赞
  • 173
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Chester Oshir

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值