zoukankan      html  css  js  c++  java
  • Allegro学习(http://www.asmyword.com/forum.php?mod=forumdisplay&fid=86)

    一、资源

      1、网站推荐www.eda365.com,里面有很多有用的东西;当然还有官方代理商的网站http://www.pspice.com.cn/

      2、视频教程:有库源电气的视频教程,还有在www.eda-china.com(有个叫詹书庭的)中的视频教程,这两个视频都是讲的16.5版本的,当然还有于博士的讲的16.2版本的;

      3、PCB的步骤和AD还有PADs都一样的,原理图→封装→布局→规则约束→布线→覆铜→生成Gerber;

      4、Allegro资源汇总贴:http://www.eda365.com/thread-11539-1-1.html

      5、就是软件自己的Help了;

      6、吴均出的《Cadence印刷电路板设计:Allegro PCB Editor设计指南》;

      7、Allegro的GRE(GlobalRouteEnvironment)功能
    http://www.asmyword.com/forum.php?mod=viewthread&tid=36&fromuid=3
    (出处: 中国导航技术论坛)

    二、原理图

      1、在原理图生成网表的时候会出现错误,具体的错误类型及原因可以通过打开ORCAD Capure 中的help,里面的View菜单下面有Show Navigation,(在Reference目录下有Orcad Capture Messages Reference Guide);

      例如错误Error [ALG0052]的说明如下:

    Error [ALG0052] Net <Net Name> has illegal Character "!". Please rename the net
    A net name cannot contain  illegal characters such as ! (the bang character). You must rename
    the net.
    Note the list of illegal characters on net names in the Capture - PCB Editor flow
    ■ ;
    ■ !
    ■ `
    ■ "
    ■ ~
    ■ * along with any other character.
    ■ This implies that * is a valid pin name but a*, *a and ** are invalid.
    ■ Unicode character set
    Also, cross probing (cross highlighting and cross selection) will not work for this part if you
    use a ' or a (back slash) in the net name.

      2、错误:Cannot perform annotation of heterogeneous part 'U?D(Value TMS320C6713_PYP) at location (2.00, 0.90) on page 07-Gnss', part has not been uniquely grouped (using a common User Property with differing Values) or the device designation has not been chosen
    INFO(ORCAP-1379): Done updating part references(http://www.eda365.com/thread-9741-1-1.html

        说明:但是为什么一定要选Incremental reference update呢?===>如果不使用这种方法,则每次排序都会改变以前排列好的元件序号
    ' B* T* W$ C/ A2 E, e0 e我选这种排序为什么不行呢?===>无条件排序就是刚才说的,每执行一次则从头到尾排列一次,遇到重复调用的多分部元件就跳过报错PCB论坛$ e, q) l! A3 Y8 Y
    Incremental reference update和Uncondition(无序)排序有什么区别呢 ?请版主帮我分析一下什么情况下应该使用哪一种排序比较好?谢谢了~* `/ F& i# O1 ?; p6 g9 J3 r2 w
    ===>很显然,如果你有多分部元件被重复调用,无条件排序是无法完成排序功能的,因为它的动作始终过不去那一关;而增加排序则可以一步一步地排下去,直到你所有的元件都配编上序号。

        解决办法1:多分部元件被多次调用时,自动排序需要多执行几次(元件调用几次就要执行几次排序)/以上,以上log表明:1.自动排序时选择Incremental reference update;2.第一次自动排序后出现警告,也就是上面的ERROR [ANN0005]3.忽略上述警告,再执行一次相同的自动排序;4.U?D编号完成! q-

         解决办法2:把器件的value名字改来不一样,Value改掉,则表明这两个元件不同了,也就不是"调用"关系了。

      3、错误:Error   [ALG0062] Value for property pcb Footprint contains carriage return for X1800

        解决办法:原因是此顆零件的屬性footprint其內容值字尾包含carriage return字元,解決方法是:在該零件的屬性編輯視窗下找到pcb footprint屬性,將carriage return字元刪除並保存即可解決.試試看,Icarriage return 就是带了回车,你在Footprint后面按一下del即可,用个方法搞定了

      4、错误:#1ERROR(ORCAP-36055):illegal character inhj-am13-mb-v0.0.0(a10).

        解决办法:原因是存储库的地方有非法字符,可以在Source Library选项下查找该非法字符,然后找到封装后,编辑一下在更新就可以更改到现在的封装路径,所以在画原理图的时候要注意,文件名和路径名均不能有非法字符,否则将无法导出网标。

    三、封装制作与布局

      1、感觉Allegro软件制作封装比PADS和AD要麻烦,不过利用PADS的LP wizard工具可以比较方便的制作封装,毕竟是符合IPC规范的,关于LP Wizard的一些用法在其官方网站上有视频讲解或者就看起Help文档也能够比较好的掌握;

      2、显示过孔:Setup——Design Parameter Editor——Display——Display Plated Holes;

      3、Rectangle无法修改线宽,要修改线宽需用用Line绘制;

      4、.pad焊盘文件,.dra绘图文件(可编辑),.psm封装文件(不可编辑),由dra生成;

      5、用LPWizard生成的库是放在每个文件夹里面的,用批处理命令提取出所有文件到一个文件夹下;

        http://www.eda365.com/forum.php?mod=viewthread&tid=90224

      6、Allegro导入DXF时,DXF文件名不能有中文;把 USE DEFAULT TEXT TABL跟 Incremental addition这两个选项勾上,不然导入DXF后元器件也没有了;

      7、给板框添加倒角,Manufacture——Drafting——Fillet,先后点击需要倒角的边即可;

        Manufacture------dimension/draft――Fillet  圆角

        Manufacture------dimension/draft――Chamfer  斜角

         以上操作只对LINE 画的外框有效,而对Shape 无效。

      8、Allegro的坐标命令,绝对坐标:x 1 2;x 1 y 2;相对坐标:ix: 1或者iy:1,;命令跟数字后面要加空格

      9、Allegro更新封装,Place——Update Symbol;

      10、Allegro中对齐的方法:(1).首先右键application mode切换到模式placement edit;(2).框选需要对齐的元件;(3).关键的一步,在你要对齐的基准元件上右键,选择align components;(4).allegro只能实现这个中心点对齐,至于更高级的要使用skill了;

      11、有些元件封装需要用到安装孔,在制作封装时,不给孔添加Pin Number,就是安装孔,菜单Edit-Delete,然后选择相应引脚的Pin Number删除即可,此时可以用Display-Element选择相应的引脚可以发现已经变成了Mechanical Pin,而其他有Pin Number的仍然是Connect Pin

      12、通孔式焊盘做得比较大,且排列的较密集,怕连锡怎么办?

       答:焊盘间画丝印做隔离。

    说明: http://download.21dianyuan.com/bbs/attachments/jpg/2010/10/17/12873014864cbaa96e90dff.jpg

       13、快捷键设置(alias 设置组合快捷键,funckey设置组合快捷键和单快捷键,C:pcbenv下面的evn文件)

     

    alias Pgup zoom in         设置放大

    alias Pgdown zoom out    设置缩小

    alias ~R rotate            设置control+R 旋转(~代表control键)

    alias ~M mirror            设置control+M镜像

    funckey h hilight            设置h 高亮显示

    funckey 1 'pop bbdrill;pop swap;subclass top'                                 切换到顶层
    funckey 2 'pop bbdrill;pop swap;subclass top;+'                                切换到第二层
    funckey 3 'pop bbdrill;pop swap;subclass top;+;+'                             切换到第三层 
    funckey 4 'pop bbdrill;pop swap;subclass top;+;+;+'                             切换到第四层 
    funckey 5 'pop bbdrill;pop swap;subclass top;+;+;+;+'                         切换到第五层 
    funckey 6 'pop bbdrill;pop swap;subclass top;+;+;+;+;+'                     切换到第六层 
    funckey 7 'pop bbdrill;pop swap;subclass top;+;+;+;+;+;+'                 切换到第七层 
    funckey 0 'pop bbdrill;pop swap;subclass bottom'                                切换到底层

    funckey p 'settoggle  no_etch_shape_display;redraw'                 不显示铜皮铜框

    funckey o ‘settoggle no_shape_fill;redraw’      不显示铜皮但有铜框

     

     14、Hight时取消条纹状显示,Setup——User Preference Editor——Display——勾选display_nohilitefont;

     15、在应用区域约束规则的时候,注意是选择Shape——Rectangular,不是Add——Rectangle;

    16、在使用Z-Copy命令的时候注意shape是否有重合的部分;

    17、Allegro中自带的常用的KeyBoard Command命令:

      可以通过Tools——Utilities——KeyBoard Command查看;

      常用的有:define grid 定义栅格点;hilight 高亮显示;net **高亮显示某个网络;还有跟rats相关的命令,比如rats all ,rats net, rats blank;add_viaarray,批量添加过孔;

    18、在使用Spin或者Route命令时,如果旋转方式设置为元件中心的话,都会很难控制,这时候设置为User Pick,会让工作变得简单。

    19、焊盘的几个概念说明:SolderMask(Solder焊接的意思,Mask面具的意思,翻译过来应该是焊接面的意思),使铜皮裸露出来,需要焊接的地方,所以觉得通常翻译成阻焊层总觉得不太好理解,还是直接记住英文就OK了;PastMask(Paste粘贴,用浆糊粘贴,翻译过来应该是用锡膏粘贴的面),钢网开窗大小,需要图上锡膏焊接的;

    三、布线和规则

     1、层叠结构设置:层叠结构type中有三种类型:conductor:走线层;plane:平面层;dielectric:介质层(隔离层);Negative artword设置该层为正片还是负片(在出光绘Artwork时,在plot mode里面有Positive和Negative,这两者是有区别的);

     2、焊盘显示圆圈还是填充问题:Design Parameter Editor中Enhanced Display modes里面Display plated holes:显示有金属连接的过孔;Display non-display holes:显示无金属连接的过孔;Filled pads 填充焊盘;Connet line endcaps:连接连线端点的空隙;

     3、关于规则的设置:

      (1)xnet设置:analyze——Model Assignment——OK,选择对应的电阻或者电容然后点击cread mode;

     
    在出现对话框中选择Create ESpiceDevice model,点击OK, 出现下面窗体:
     
    ModelName: 输入产生Model的名字
    Circuit type: 选择Type, 电阻,电感或电容
    Value: 值
    Single Pin: 各Pin的连接顺序, 中间为空格,
    这里要注意要看零件的pin的排列,1 2 3 4 5 6 7 8,就是: 1 和2 是一个电阻,其它同理所以如果就是普通电阻电容那就更简单了.
     
    Common Pin: 这里不用管它,空着就可以.
        上面都输入好了就点击OK,完成Model的建立.
        点击OK退出就可以发现连接该排阻的两边的Net 都有了个Xnet属性,如下图:
     
        这样就可以搞定Xnet,很简单吧!

      4、用highlight sov命令后如何取消高亮显示:用highlight高亮选中,然后在用dehighlight取消高亮的部分就可以把highlight sov高亮的取消掉了,网上有说“这个是用来检查跨分割的,取消的办法是:如果是4层板的话,在电源层跟地层都铺上地网络,然后再按Highlight Sov刷新即”,但是没成功过;

      5、setup-user preference editor里面有Route下面的Connet有allegro_dynam_timing 和allegro_dynam_timing_fixedpos选项可以打开走线时的线长提示;

      6、差分对规则在Electrical 的优先级高于Physical里面的差分对约束规则;

      7、区域约束时用到的Region约束,区域中所有的net和net class都将采用该区域约束,如果有区域内有些net class需要不同的设计规则,则需要在区域内建立不同的Regina-Class;

      8、Relative Propagation Delay:①设置了Target是Relative Delay,Actual是与Target长度之差;不设置Target是Match Delay,此时Actual等于length与最长的网络之差;②Local同一net进行匹配,Global不同网络之间进行匹配;③Delta:Tolerance  增量:误差;

      9、Rats飞线的显示设置在Setup——Design Parameter Editor——Display里面的Ratsnest geometry和Ratsnest point设置;

      10、在Logic——Identify DC Nets可以设置电源网络,在布线的时候会以正方形指示;

    四、覆铜

      1、在覆铜时,shape——Global Dynamic Shape Parameters 中对shape先设置成Rough或者Disabled,可以加快布线及DRC检查的速度,但是最终出光绘文件的时候,必须将Shape更新成为Smooth类型;

      2、Allegro给批量Via加上Gnd的net属性方法:①、复制属性是GND的via,添加就OK;②、Tools——Utilities——KeyBoard Command,选择add viaarray,就可设置过孔的间距,网络等;

    五、检查

      1、Display——status里面如果有黄色指示可以点击黄色指示查看具体的DRC错误及未连接的网络;

      2、在之前使用Logic——Identify DC net后,默认的电源网络飞线是不显示的,而是现实的叉叉状,要修改成飞线显示,选择Edit——property,然后选择需要修改的网络,然后在Table of Contents里面选择Ratsnest_Schedule,然后在下拉框中选择Min_TREE即可,如果要切换成叉叉显示,选择Power_AND_GROUND;

      3、导出3D图到三维软件Solidworks或者CATIA等中,File-Export——IDF,CATIA导入时分别选择 .BDF和.IDF文件即可,注意在板子里面要有Place_Bound_Top,而且还要通过Setup——Areas——Package Height定义元件的高度(在做封装的时候做好OK);或者在导出IDF的时候在Default Package Height里面填上合适的高度即可;

      4、如果有元件封装需要更改,点击Place——Update Symbol更新即可;

      5、Allegro转PADS步骤:Altium Designer Summer08以后的版本中文档导入向导支持Allegro PCB设计文件格式(.Brd)或Allegro ASCII文件格式(.Alg)。如果用户Altium Designer设计系统中安装了Allegro PCB编辑器(支持15.2以下和16版本),用户就可以直接转换Allegro PCB设计文件(.Brd)成Altium Designer PCB文件(.PcbDoc)。除此之外,Altium Designer只能支持Allegro ASCII文件格式(.Alg)转换成Altium Designer PCB文件。接下来,我们将如下操作完成Brd格式到Alg格式的转换:

    1. 复制Altium Designer安装目录下System目录下两个文件,分别为 " Allegro2Altium.bat "  " AllegroExportViews.txt " ,到需要转换的.brd文件夹下;
    2. 在CMD命令环境下,切换到.brd文件夹下,然后键入命令 " Allegro2Altium yourfilename.brd " 
    3. 在用户转换文件目录下,将生成文件 " yourfilename.brd.alg " ;同时,还将生成一个".log"日志文件。
    4. 转完后,在另存为protel 4.0格式,
    5. 在打开PADS的padslayout Translator工具,选择打开文件类型protel就可以导入了,导入设置参看http://www.eda365.com/forum.php?mod=viewthread&tid=85766
    6. Allegro出DXF文件步骤:

    (1)打开您的BRD FILE
    (2)显示好当前您要转出的层
    (3)、file >>EXport>>DXF...
    (4)、
     
    (5)、
     
    (6)、
     
    完毕。

    7、Allegro出Gerber导入CAM350分层问题:

    (1),此图原为GBL只有1层的是个复合层,导入后变成了3层。
    (2),我们需要更该CAM350的系统设置:请依照以下步骤:file-setup-photoploter

    (3)、点击右边的Setup Options(更改设置的时候不要导入任何资料,只打开一个空的CAM350就OK)——Convert Composite to Single Layer

    (4)、接着把此项勾选上: 然后OK确定,关闭CAM350,再重新打开CAM350导入:

    (5),重新导入的结果:
     当然如果需要把一层变成几层的,相反的方法,把勾去掉即可

    8、Allegro的精度问题(最好就不要换单位,其他的软件能随便换,allegro最好不要换,allegro只记录转化后的数值而并非初始值,多次转换会导致误差越来越大):

    (1)、在Setup——Design Parameter Editor——Design里面的Accuracy(decimal places) 

    (2)、Artwork ——Format里面的Integer places和Decimal places

    (3)、NC Parameter里面的Format的X.X

    注意事项:在出光绘的时候,Artwork的精度要和NC Parameter的精度设置一样,不然出光绘的时候可能过孔会有偏移;但是Design Parameter Editor里面的精度设置跟这两个有什么关系呢?有人说如果Design里面的单位设置为mil,Accuracy为2,那么在Artwork和NC Parameter里面Decimal places应该为5,因为出光绘的单位为Inch,1 Inch=1000mil,所以要匹配设计的精度,Decimal Places应该为5;

    参考:

    平时画图多用mm为单位,出gerber时也以公制为单位,刚好和mm对应,也没出过什么问题。有时碰到用mil为单位画的板子,以英制为单位gerber后导到CAM350里会出现些问题,仔细想想便理解了其中的意思。

    allegro中画图和出gerber分别用的是两套单位,互不相干。15.7中绘图单位于Setup-->Drawing Options处设置;光绘文件单位于Manufacture-->Artwork处设置,Drill和Route单位于Manufacture-->NC-->NC Parameters处设置。

    关于数据精度,理论上出gerber要比画图精度更高,如画图用mm,2位小数,则出gerber用mm至少3位小数。如果单位不同,则换算到相同单位再比较,如画图用mil,1位小数,出gerber用英制,即inch,要精确到0.1mil需要4位小数,出gerber要5小数才好。大家建议画图和出gerber用相同的单位,我想是为了避免不同单位换算可能会出现除不尽的情况,影响到生产,inch和mil换算还好,mm和inch换算搞不了会出些小问题,没必要自找麻烦。

    另外再提一下出Ncroute,Ncroute需要一个ncroutebits.txt文件指定铣刀直径,该文件中铣刀直径的单位须和NC Parameters中一致。例如:画图用mm,出gerber用inch,铣刀直径为1mm,则在Ncroute_path层画Route路径时line width应为1,ncroutebits.txt中标识该号铣刀须用inch为单位,即0.0394   T0*。这种情况就是自己给自己找别扭了。

    所以设计pcb时,假设画图设置单位为A,光绘、NC和ncroutebits.txt须使用相同单位,设置为B,则A和B最好一致。 

    9、Allegro出PDF文字问题:Allegro出PDF有两种方式一个是File—Export下面可以到处PDF,还有一个就是装虚拟打印机,用虚拟打印机打印时如果要想打出的PDF的文字可以查找需要在File—Plot Setup下面的Windows标签下Non-Vectorized text勾选上,这样不矢量化就可以在PDF中查找了!

    六、GRE新功能

      1、建立pinpairs时,会提示INFO:PinPairs which are not explicitly constrained will be automatically removed when Constraint 
    Manager is closed,意思是提示如果不给建立的Pinpairs进行约束规则,退出约束管理器后pinpairs也就消失;

      2、GRE:选择工具ALLEGRO PCB Design GXL(legacy)即可,建立Bundle,在Constraint Manager里面的Properties里面可以建立,注意在Find栏里面几个选项的勾选,GROUPS表示Bundle,Other Segs表示Flow,ratsnets;手动创建 Bundle 之前,为了保证以后人工走线能够完全成功,所以留了设计裕量,在设置 Bundle 的粗细的时候如图所示的 Flow Line relative Width 110%。这个参数的设置的意义在于,创建的 Bundle 的宽度,是根据 Constrains Manger 里面设置的 Spacing 和 Physical 约束的实
    际值上加了 10%的裕量。Via 的没有加裕量的原因是,FLOW Via 的尺寸已经大大超出了实际 Via 所用到的面积。在做 BGA 规划的时候,另外一个原则就是从 BGA 一个角以顺时针或者逆时针的方向进行规划。以本项目为例,就是从左下角开始,一组一组的规划,保证每层出线后用最少的一个走线层的循环,如图所示的层的颜色:蓝-黄-粉-紫;蓝-黄-粉-紫;上面因为考虑到有别的线,所以用走纵向线的层进行循环。

  • 相关阅读:
    day7随笔
    day6随笔
    day5笔记
    uniapp 全屏蒙版下的其他view禁止滑动
    uniapp scroll-view 组件右侧的滚动条
    uni 组件 头部
    根据两点的经纬度查询两点间的距离
    仅供学习使用的一些 相关vue类
    仅供学习使用的一些样式+行为
    百度地图简单调用
  • 原文地址:https://www.cnblogs.com/lanlingshan/p/3200518.html
Copyright © 2011-2022 走看看