Allegro Class分类和Subclass应用-PCB设计社区-FPGA CPLD-ChipDebug

Allegro Class分类和Subclass应用

在Allegro软件中,Class和SubcClass是一个相对新的专业术语,这里单独拿一节出来给大家讲解一下。

相信不少画过PCB的读者也许跟笔者一样也用过AD,刚从AD过来学习allegro都会发现allegro这个平台所有对象都分Class和Subclas。比如上一节中的板框我是定义在了 Board Geometry 的Outline里面。

其实Allegro将所有元素都分类的很仔细是方便后期的操作,我觉得建立了Subclass其实就是对每个Class的一个细化,比如在Board Geometry中有丝印层silkscreen_Top,在Package Geometry也有 silkscreen_Top。而在AD中silkscreen_Top就只有一层了,所以假如我选择了对Board Geometry中有丝印层silkscreen_Top的任何编辑都不会影响,Package Geometry的 silkscreen_Top。

20250206193543269-image

 

换句话说,其实就是allegro把不同元素细化,方便各个对象管理和控制。

《一》初步认识class和Subclass

这里主要讲我们PCB常用的class,以及subclass,其他class和subclass用的不多,在大家熟悉软件做项目多了就加深印象了,后面的叠层设置和项目实战系列加深class和subclas的理解。

刚入门allegro常接触的几个class是下面板框、封装、铜皮、位号这几个大类

20250206193555693-image

 

常见的Class

常用的subclass是顶层丝印、底层丝印、装配层、placebound、顶层开窗、底层开窗、顶层paste、底层paste层。

20250206193607949-image

 

常用的Subclass

《二》查看class和Subclass

(1)在颜色面板可以看查看Class和Subclas

20250206193623666-image

 

(2)在左边的选项面板中可以查看

20250206193638157-image

 

《三》添加和删除subclass

在上一节添加DXF的时候我们可以添加对应的层,但是我们不可能每次都要无缘无故找个DXF来添加subclass,那样太麻烦了。

比如我需要添加一个DXF的图层,我计划添加在Board Geomtry里面的添加一个DXF subcalss,方法如下:

(1)Stup菜单中选择Suclass

20250206193652892-image

 

(2)进入菜单后,找到我们需要加的Board Geomtry,然后在右侧的弹出的菜单输入DXF,按Enter即可。

20250206193703278-image

 

Subclass添加界面

(3)如果需要删除subcalss,前提是确保您的PCB上没有调用任何该subclass的元素,否则删除会失败,但是系统会提示您它的位置。如刚刚我们添加的DXF需要删除就点击左侧 -> 的这个按键这里就可以删除了

20250206193713519-image

 

DXF删除界面


在Allegro工具中,绘图元素的类别称为类Class。类代表设计中所有可见项目的类型。每个类中图形的各个部分称为子类SubClass。每个类可以包含许多子类,包括用户定义的一些子类。

类和子类的绘图元素包含了设计中使用的个元素。子类允许进一步分类,从而使该工具可以更具体地处理数据。 例如,ETCH / CONDUCTOR具有两个与其关联的预定义子类:顶部和底部(因此消除了通过层号引用元素类型的必要性)。

在PCB板的设计中,同样的图形或者符号代表的内容往往是不同的,比如同样是一个矩形,它可能代表PCB板的板框,也可以表示布线区等。因此Allegro将设计中的内容按照其所表达的意义分成不同的类,以及进一步细分的子类。在Allegro添加的任何内容必定属于某个Class/Subclass.Class与Subclass是Allegro中非常重要的一个概念。

Geometry

Board Geometry

在板子上的图形,在板子上添加的标识、说明、注释等信息应添加到该类的子类上。

  • Assembly-Detail和Assembly-Note的使用与装配有关.Assembly_Detail用于指示装配细节,比如器件在PCB上进行固定的规程等.Assembly_Note可以标注装配的注意事项.

  • Both_Rooms,Bottom-Room,Top-Room,Place-Grid-Bottom,Place-Grid-Top与自动布局有关,具体可以参见自动零件摆放的说明。

  • Silkscreen-Bottom和Silkscreen-Top分别为Bottom层和Top层丝印,某些情况下比如需要在PCB板标注某个电位器的含义,以方便调试或操作时,可以此层添加对应图形

  • Constraint-Area用于在设计中指定特殊的布线区,在这些布线区中可以设定特殊的布线规则

  • Dimension用于标注设计中的有关尺寸.

  • Off Grid_Area用于指示设计中不使用栅格的区域。

  • Outline用于绘制PCB的外形(板框).

  • Plating-Bar用于指示设计中需要电镀的地方,比如很多采用金手指的设计中可以用Plating-Bar来指示需要镀金的金手指条

  • Soldermask_Bottom和Slodermask_Top用于设计在Bottom层和Top层添加阻焊窗,即添加不需要俗称绿油的区域.

  • Switch_Area Bottom和Switch_Area-Top用于指示可以将区域内零件的摆放进行交换的区域。

  • Tooling-Corners用于指示某些需要加工的转角等。例如在某些设计中,在PCB的外形中有拐内角的地方,虽然设计中是一个直角,但加工完成后则是一个圆弧角。如果设计中没有考虑这个尺寸余量将导致零件无法装配.‍

Package Geometry

在焊盘图形中的图形,在焊盘图形中添加的标识、说明、注释等信息应添加到该类的子类上。

  • ASSEMBLY-TOP和ASSEMBLY-BOTTOM是与装配相关的内容,表示的是零件的外形和方向。

  • PLACE-BOUND-TOP和PLACE-BOUND-BOTTOM表示的是零件在Top层和Bottom层各自占位大小,在同一层中如果两个零件的PLACE,BOUND区域有交叠将发生DRC错误。

  • PIN-NUMBER用于表示零件的引脚号的显示。

Manufacturing

  • PHOTOPLOT-OUTLINE用于指示在生成Gerber文件时的指定区域,区域外的将不做输出

  • NO_GLOSS_ALL,NO_GLOSS_BOTTOM,NO_GLOSS_TOP,NO_GLOSS INTERNAL.分别用于指示所有层、Bottom层、Top层、内层(非Bottom层和Top层)禁止使用GLOSS功能.

  • NCDRILLFIGURE用于指示设计中钻孔(包括通孔,盲孔和埋孔)。对于不同规格的钻孔NCDRILL-FIGURE用不同的符号标识.NCDRIL-LEGEND用于统计NCDRIL FIGURE标识的各种规格钻孔的Class型与数量.NCDRILL_FIGURE和NCDRIL LEGEND相结合可以指导钻孔的加工.

  • AUTOSILKTOP和AUTOSILK BOTTOM指的是在Allegro中通过Auto Silkscreen命令生成的丝印

  • NO-PROBE-TOP和NO-PROBE-BOTTOM,以及PROBE-TOP,PROBE-BOTTOM分别为Top层,Bottom层禁止飞针测试区和Top层,Bottom层飞针测试区.

Drawing Format

用于在设计中添加技术说明,以告诉制版厂其他的一些加工信息,如叠层结构、板厚的容差等

Stack-Up

DRC:设计中的错误报告显示

ETCH:导体蚀刻层,与设计层数相关,代表PCB各层的导体图形

Anti-ETCH:与ETCH相对,与设计层数相关,当使用split plane create命令时,如果此层有图形,则生成的Shape将避开对应的图形,常用作Plane层面的分割

Pin:焊盘图形中的引脚相关内容

Via:PCB和焊盘图形中通孔的内容

Components

Refdes:元器件显示字符,对应到原理图对元器件定义的位号属性

ComponentValue:

Device Type

Tolerance

User PartNumber

Areas

Route Keepin:允许布线区                                             

Route Keepout:禁止布线区

Via Keepout:禁止放置Via区

Package Keepin:允许布局区

Package Keepout:禁止布局区


Class与Subclass

同一根线在不同的Subclass里的含义不一样,下面介绍常用Class和Subclass的含义

1.Etch

图片[9]-Allegro Class分类和Subclass应用-PCB设计社区-FPGA CPLD-ChipDebug包括TOP和BOTTOM,用于走线和覆铜

20250207084805902-image

2.Package Geometry

20250207084817202-image

图片[12]-Allegro Class分类和Subclass应用-PCB设计社区-FPGA CPLD-ChipDebug

与封装相关的内容。

 Assembly_TOP/Bottom

 安装丝印层。因为有些公司需要出安装图,器件外形等,有些为了手工焊接,喜欢把字符丝印放置在器件内部,比如电阻位号,喜欢把它的丝印放置在电阻符号外框的中间位置。比如说电阻值等,想打印出来放置在安装图纸的电阻相应位置。这时我们才会用到安装丝印层。平时可以不用,或者平时只用Silkscreen top。

Silkscreen_Top/Bottom

丝印层:建库的时候,ref des放置的层,及PCB生产时,刷到板卡上的字符、器件外框或者公司LOGO等放置的层(ref相当于AD中的器件名称u1 u2等)。

Pastemask_Top/Bottom

助焊层也叫钢网层主要是用于SMT用的,它也是负片输出的,原本也是指防锡膏的层,但是经过负片输出后,反而指你设计的地方是要上锡膏的.它的作用:是否要开钢网.如果要开钢网则要用到此层。

20250207084836380-image

图片[14]-Allegro Class分类和Subclass应用-PCB设计社区-FPGA CPLD-ChipDebug

常见错误:

1)把top pasete层当作solder层用,要上锡的地方画上一个paseter层,结果因为用的是pasete层没有开窗,结果就说是厂家的问题,

2) 把solder层当作线路层跟助焊层一起用,以为有这个层的地方就有线路跟开窗,这是非常不对的,mask层指是辅助层
Soldermask_Top/Bottom

 阻焊层其实还可以叫开窗层、绿油层。它是指pcb上要铺绿油的地方,而这阻焊层使用的是负片输出,所以在阻焊层的形状映射到板子上以后,并不是上了绿油阻焊,反而是露出了铜皮。露出铜皮

place_bound_top

元器件封装实际大小,用来防止两个元器件叠加在一起不报错。

 Dfa_Bound_Top/Bottom

主要应用于Setup->DFA Constraint Spread Sheet

它主要作用是在做板之初刚排零件的时候,每个公司都有自己不同的DFA Rule,即:零件与零件排放间距,也是组装时所注意到的安全范围。

3.Board Geometry

20250207084917280-image图片[16]-Allegro Class分类和Subclass应用-PCB设计社区-FPGA CPLD-ChipDebug

该Class主要是与几何尺寸相关的内容

4.Manufacturing

与制造相关

20250207084931837-image

图片[18]-Allegro Class分类和Subclass应用-PCB设计社区-FPGA CPLD-ChipDebug

5.Ref Des

20250207085011641-image

图片[20]-Allegro Class分类和Subclass应用-PCB设计社区-FPGA CPLD-ChipDebug与器件位号相关

6.Pin

20250207085026466-image

图片[22]-Allegro Class分类和Subclass应用-PCB设计社区-FPGA CPLD-ChipDebug与引脚相关的subclass

7.其他

  • Package Keepin 允许器件摆放区
  • Package Keepout 禁止器件摆放区
  • Route Keepin 允许布线区
  • Route Keepout 禁止布线区
  • Via Keepout 禁止添加过孔区

常见文件格式:

  • .brd PCB设计文件
  • .log 记录数据处理过程及结果
  •  .art artwork文件 即光绘文件
  • .scr script 记录文件
  • .pad 焊盘文件
  • .dra drawing文件 封装文件
  • .psm package symbol 实体封装零件
  • .osm format symbol logo图形的零件
  • .ssm shape symbol 自定义pad的几何形状需要使用的文件
  • .bsm mechanical symbol 没有电气特性的机械零件
  • .fsm flash symbol 用于负片通过连接】
  • .mdd module模块
  • .sav 软件意外关闭时及时保存的文件格式
  • .drl 钻孔文件
  • .txt 文本文件

操作习惯

需要先选择执行命令,再选择对应的操作对象,设置好命令参数后,再来单击或执行对应的对象,执行完后右键选择Done。

 

请登录后发表评论

    没有回复内容