第3章OrCAD使用介绍 OrCAD是EDA行业内比较著名的一款电子设计软件,其中分为Capture和Layout两大部分,Capture是原理图设计工具软件,功能比较强大,界面简单,学习起来也比较容易。对于稍有电子基础的工程师来说,花费大约60min的时间看完本章,掌握OrCAD的使用,并运用此软件完成原理图绘制,这个是完全可以的。 Capture被Cadence公司收购后,用来替代Cadence原配的原理图设计工具软件——Concept HDL,所以对Cadence来说一般有两种原理图设计软件——Capture(CIS)和Concept(HDL)。因为Concept原理图学起来难度比较大,兼容性也不好,尤其在库的管理上也不好,所以目前主要通过Capture绘制原理图。因为Capture软件原属于OrCAD公司,所以行业内直接将Capture称为OrCAD软件,接下来就开始学习OrCAD软件的使用。 3.1工程的建立和设置 OrCAD所有界面都可以按下按键I和O来实现放大和缩小,I是放大,O是缩小,大小写都可以。或者通用按下Ctrl键,然后滚动鼠标来实现放大和缩小。 首先启动OrCAD,在程序中单击Cadence→Release 16.6→OrCAD Capture CIS选项,如图3.1所示,OrCAD Capture CIS比OrCAD Capture多了一个CIS数据库的功能,如果没有数据库文件建联,这里两者的启动文件路径都是一样的,选择两者任意一个即可。 弹出Cadence Product Choices对话框后,选择OrCAD Capture CIS选项,勾选Use as default,如图3.2所示。这样每次打开后,就不会再出现选择产品的对话框,默认选中OrCAD Capture CIS。 3.1.1创建项目 单击File→New→Project选项后,弹出New Project对话框,在Name文本框中输入要新建项目的名字,例如YL_001_V10,在下面的4项单选框中选择最后一项Schematic,最后单击Browse按钮,选择新项目所要保存的目录,如图3.3所示。 图3.1启动OrCAD 图3.2产品选择对话框 图3.3创建新项目 注意: Cadence文件的命名,包含原理图和PCB都不支持中文、小数点、中画线、空格,包括父目录文件夹的名字,都不要使用非法字符,虽然有时候存在小数点和空格也能打开文件,但后期在原理图导入PCB时可能会出现很多奇怪的问题。 单击OK按钮后,进入yl_001_v10.dsn工程文件界面,如图3.4所示。 图3.4dsn文件界面 新建的原理图中会自动生成一个PAGE1的页面。 3.1.2设置颜色和参数 单击Options→Preferences选项后,弹出Preferences对话框,默认设置颜色在Colors/Print标签,这里可以设置各类属性的颜色,如图3.5所示。 图3.5设置颜色 选择Grid Display标签,在这里设置格点显示,如图3.6所示。 图3.6设置格点显示 原理图和元器件库界面的格点都可以单独设置成不同的风格。 Visible: 是否显示网格,勾选Displayed,显示网格; Grid Style: 网格显示的方式,Dots显示格点,Lines显示横纵线交错的方格; Grid spacing: 网格的大小,可设置成Pin间距的整数倍; Pointer snap to grid: 设置网格捕捉。 3.1.3工程管理器使用 图3.7是项目管理图的界面,主要由4部分构成。 图3.7项目管理器 Design Resources: (1) 工程文件dsn名字。 (2) SCHEMATIC1: 原理图文件,可以分多页,默认PAGE1。 (3) Design Cache: 原理图中用的元器件PART库。 (4) Library: 加载的库文件。 Outputs: 输出的各种文件,如BOM、Netlist文件。 Referenced Projects: 各种参考电路图。 Windows信息显示: 显示各种元器件或Net等各种信息。 3.1.4新建页面 一般有两种新建方式: (1) 单击Design→New Schematic Page选项,如图3.8所示。 图3.8新建页面1 (2) 选中SCHEATIC1文件夹,然后右击并选择New Page选项,如图3.9所示。 图3.9新建页面2 然后在输入框输入所需要新添加页面的名字MCU,如图3.10所示,单击OK按钮。 图3.10新建页面命名 最后,在SCHEATIC1的文件夹下就出现了一个MCU的页面,如图3.11所示。 图3.11新建页面结束 3.1.5复制其他项目页面 打开需要参考的dsn文件,选中需要复制的页面,然后右击,选择Copy选项,如图3.12所示。 图3.12复制页面 然后打开新的项目页面,选择原理图文件夹后,右击并选择Paste选项,如图3.13所示。 这样复制的页面就被加入新建的项目中了,如图3.14所示。 当然也可以使用Windows的Ctrl+C和Ctrl+P组合键,或者使用Edit菜单下Copy和Paste功能来实现页面复制。 本书为了使读者能够快速掌握OrCAD,只介绍常用的一种方法,使用该方法复制页面后,页面的名字还保持和原页面相同。如果用Ctrl+C和Ctrl+P组合键,新复制的页面需要输入新的名字才能添加进来,大家有时间可以尝试一下这两种方法的不同。 图3.13粘贴页面 图3.14复制页面成功 3.1.6删除页面 选中需要删除的页面,然后右击,选择Delete选项,这样就可以删除掉不需要的页面,如图3.15所示。 图3.15删除页面 有时候,我们会发现Delete项是灰白的,那是因为该页面还处在打开状态,需要先关闭该页面,如图3.16所示,单击该页面,在上方的标签中右击,在弹出的选项中选择Close选项,即可关闭该页面。如果关闭所有页面,就选择Close All Tabs选项,如果只保留该页打开,其他页面关闭,就选择Close All Tabs But This选项。 图3.16关闭页面 3.2元器件库管理 OrCAD的原理图封装后被称为Part,所有的Part都被集中放置在一个以lib为扩展名的库文件中,OrCAD可以允许一个项目添加很多元器件库,不同的元器件库还可以根据顺序设置不同的读取优先级。 3.2.1创建元器件库 单击File→New→Library选项,如图3.17所示。 图3.17新建元器件库 这样就自动在项目管理图的Library文件夹下生成一个library1.olb库文件,如图3.18所示。 图3.18新建元器件库 选中新建的元器件库,右击并选择Save选项,如图3.19所示。 图3.19保存库文件库 然后设置库文件保存的地址和名称,如图3.20所示。 图3.20设置库文件地址和名称 3.2.2添加和删除元器件库 我们在设计的时候,有时客户要求使用他们提供的元器件库,或者将其他项目的元器件库调出来使用,遇到此情况时则不需要重新建库。 操作如图3.21所示,选中Library文件夹后右击,选择Add File选项。 图3.21添加库文件 然后选择需要加入的元器件库文件,如图3.22所示。 图3.22选择库文件 如果在操作时一不小心误加了库,应该如何删除呢? 操作也很简单。 选中要删除的库文件,单击右键并选择Cut选项,如图3.23所示。 图3.23删除库文件 3.2.3创建Part 接下来先制作一个简单的共阳三色LED的原理图元器件库,元器件的规格尺寸如图3.24所示。 图3.24共阳三色LED规格尺寸 选中元器件库,右击并选择New Part选项,如图3.25所示。 图3.25新建Part 输入Part的名字,如果需要新建的元器件Part库比较多,建议命名规则统一,这样便于后期调用,并能快速找到这一个库。例如图3.26中的名字,LED代表元器件种类,P代表是共阳,4代表4个焊脚,SMT代表贴装方式。 图3.26新建Part命名 Part Reference Prefix: 代表元器件位号的前缀,例如: C代表电容,R代表电阻,L代表电感,D代表二极管等。根据其前缀可以判断元器件的类型。 该Part属于LED类,前缀可以设置为LED或D。 PCB Footprint: 输入该Part的PCB封装名称,PCB封装的名字命名会在后面章节中讲述,在这里简明说一下代表的意思。LED代表元器件的种类,4P代表有4个焊脚,3216代表外形尺寸为3.2mm×1.6mm。 Package Type: 设置Part分裂的个数,这个在后面章节中会详细讲述。 输入完成后,单击OK按钮,进入Part编辑界面,如图3.27所示。 图3.27Part编辑界面 1. 首先绘制Part外形 单击右侧Add rectangle按钮,画出LED的外形。如果感觉外形大小不合适,可以用鼠标点中LED的外形并拖拉改变大小,如图3.28所示。 图3.28添加Part外形 如果没有出现右侧的菜单,单击View→Toolbar→Draw选项,Draw菜单出现后,可以用鼠标拖动到工作窗口的任何地方。 2. 设置Pin 单击右侧Place Pin按钮,设置放置的Pin 序号为1,名称为VG,如图3.29所示。Shape一般设置为Short,其他选择默认值即可。 图3.29设置引脚 Shape: 设置引脚的形状,如圆圈、箭头等,大家可以练习并尝试一下设置不同的形状; Passive: 设置引脚的状态,如输入、输出、电源等。 注意: Pin Name是唯一的,不能和其他Pin的Pin Name重名,否则在保存时会出现报错信息,例如IC有很多GND的属性,Pin Name可以按照GND1、GND2…来命名。 3. 放置引脚 设置好了以后,单击OK按钮,放置Pin在外形线上,如图3.30所示,放置的时候,Pin会自动吸附到外形线上,按照网格放置在中上位置。 4. 放置其他引脚 放置2、3、4 Pin,按照上述步骤,放置2、3、4 Pin,如图3.31所示。 图3.30放置引脚1 图3.31放置其他引脚 在放置完引脚后,如果Number和Name有错误,可以双击Pin的红线,在弹出的对话框中更改Pin的属性,如图3.32所示。 图3.32更改Pin属性 5. 阵列放置Pin 后期建Part库熟练后,为了提高效率,可以使用阵列放置Pin,如图3.33所示,单击右侧的Place Pin Array按钮,在对话框中选择Starting Name和Number of Pins选项的递增量,以及间距。 图3.33阵列放置Pin 通过以上几个步骤,三色LED的原理图封装Part已经建好了。 Pin阵列放置,可以作为课后作业,供大家练习。 注意: Part是逻辑库,不需要和实体那样做成一边都是两个Pin的样式,Part一般将相似功能的Pin放置在一起,这样便于原理图使用。例如该三色灯,共阳的第2个Pin放在左侧,RGB三色负极放在右侧。 3.2.4创建异形Part 很多Part的外形不是方形的,例如单个LED,此时一般将Part做成二极管的样式,如图3.34所示。 图3.34二极Part管 新建一个Part,名字为LED_S1,单击Place line按钮,将鼠标悬浮在图标上可以短暂显示该功能的英文,如图3.35所示。 当然,如果要放置其他形状的元器件可以单击其他图标,图3.36为各图标的功能。 用Line做出二极管的外形,然后添加Pin即可,如果要改变Line的宽度,双击二极管的外形后选择Line的宽度和样式即可,如图3.37所示。 图3.35放置line 图3.36Draw菜单 图3.37编辑Line 3.2.5Part属性管理 Part建好后,如果需要更改Part的Footprint之类的属性,选择Options→Package Properties选项,打开属性编辑对话框,如图3.38所示。 图3.38编辑Part属性 还可以在Part中加入一些物料信息,例如设计公司名称、物料的生产厂家、物料的高度和价格、规格书的地址等,这样方便后期开发使用。 选择Options→Part Properties选项,打开用户属性对话框,如图3.39所示。 图3.39编辑用户属性 可以看到已经有很多的属性在里面了,例如前缀LED,Pin编号显示等。 单击右侧New按钮,如图3.40所示。 图3.40添加用户属性 在输入框输入需要添加属性的名称和值,如图3.41所示,新加属性为规格书的地址,这样在原理图导出BOM后,就可以把物料所在规格书地址很方便地显示出来,设置默认超链接,这样便可以直接在BOM中双击打开Datasheet规格书,便于后期Double Check物料的封装。 图3.41添加规格书地址 3.2.6创建分裂元器件 有些元器件比较复杂,例如CPU有1000个Pin,如果全部放在一个Part里就会显得很庞大,也很凌乱。同其他原理图设计软件一样,OrCAD 也可以将Part分裂成多个部分进行显示和放置。 例如3色LED,可以将其分成3个不同颜色的LED,放置在原理图不同的位置中,如图3.42所示,新建Part,在 Parts per Pkg内输入数量: 3,Parts per Pkg的数字就表示元器件要被分成几块。 图3.42设置分裂数量 Homogeneous: 多个分裂Part图形相同,设置好Part1后,其他几个部分直接默认相同的设置,例如本例中,3个LED的外形可以相同; Heterogeneous: 多个分裂Part图形自由设置; Alphabetic: 分裂Part的标号以字母显示,如LEDA2A、LEDA2B、LEDA2C显示; Numeric: 分裂Part的标号以中画线+数字显示,如显示为LED21、LED22和LED23。 设置好以后,单击OK按钮,出现编辑LED?A的界面,做好PartA 的封装,如图3.43所示。 图3.43制作PartA完成 PartA制作完成后,单击Save按钮,接着单击菜单View→Package选项,如图3.44所示。 图3.44开启Package View 接着就可以看到3个一模一样的Part,如图3.45所示。 图3.45自动生成其他两个Part 因为每个部分2脚都是共用的,在PartA 中已经使用,在其他两个中就不能使用了,分别单击PartB和PartC 的另外一个Pin修改3、4 Pin的参数,至此该Part建立完成。 在调用分裂Part时,选择A、B、C就可以了。 3.2.7Part的复制和删除 在实际项目中所使用的元器件很多来自成熟项目的元器件库,那应该如何把其他项目的Part在新项目中使用呢? 1. 打开需要复制Part的dsn源文件 将元器件库加载在该项目中,如图3.46所示。 图3.46加载库到参考文件中 2. 复制源文件的Part 单击Design Cache左边的“+”按钮标记,可以看到该项目中所有的Part都在此目录下,如图3.47所示。选中所需要的Part,右击并选择Copy选项。 图3.47复制Part 3. 复制Part到库文件中 选中库文件,右击后选择Paste选项,如图3.48所示。 图3.48粘贴Part 如果在视窗中,Design Cache和库离得不远,可以左键选中所需文件并直接拖拉至库文件中。 4. 删除Part 如果库里面某个Part想删除掉,如图3.49所示,只需选中Part,然后右击并选择Delete选项即可删除此Part。 图3.49删除Part 3.3原理图编辑 下面进入原理图绘制环节,主要讲述原理图重命名、Part放置、Net添加、连接符放置、输出BOM 和Netlist文件。 3.3.1页面重命名 在实际项目中,工程师习惯把一个模块放置在一页,页面的名字定义为“页码+功能名字”,如01GPS、02POWER、034G Module等。 如图3.50所示,本案中,根据第一页名字的命名规则,第二页的名字MCU需要重命名为02MCU,操作方法如图3.50所示,首先选中该页面,右击并选择Rename选项后,输入02MCU即可。 注意: 页面命名可以支持空格、汉字、中画线等。 图3.50重命名Page 3.3.2放置Part Page编辑完成后,就可以根据需要放置各种Part到Page中,如图3.51所示,单击窗口右侧所示的按钮,也可以选择主菜单Place→Part选项,或者使用快捷键P,便会出现放置Part的对话框。 首先在Libraries下选择Part库,然后在Part List中选择需要放置的Part,此时最下面会显示所选择的Part的形状。如果是分裂的Part,则会在最下方的Packaging内显示Part的个数,在Part内选择下拉框,则可以选择放置A、B或C部分,如图3.52所示。 图3.51选择Part 图3.52选择分裂Part 如图3.51所示,在Part List内双击NPN,将鼠标移至Page内,右击会出现一个下拉菜单,如图3.53所示,此时可以对Part进行水平、竖直镜像和旋转。 图3.53Part镜像或旋转 Mirror Horizontally: 水平方向镜像; Mirror Vertically: 垂直方向镜像; Mirror Both: 水平和垂直两个方向同时镜像; Rotate: 旋转。 接着在左面的Page中单击,就可以看到NPN已经被放到Page中了,如图3.54所示。 图3.54放置Part 如果要放置第二个Part,就可以继续在Page上单击,每单击一次就会出现一个NPN。按下Esc键后,结束放置。 双击该NPN的Part,出现Part属性的对话框,如图3.55所示。 图3.55Part属性(水平排列) 可以双击1上面的空白处,如图3.56所示,以此改变Part属性的排列方式。 图3.56改变排列方式 此时Part属性的框将改变为垂直排列并显示属性,如图3.57所示。 图3.57Part属性(垂直排列) 为了防止Part的编号重名,有经验的硬件工程师会根据页码来编号,Part的编号推荐采用“页码+本页排号”,如R05006就代表该Part在原理图的第5页,这样方便在原理图中查找。 修改Part编号的方法,在Part属性表中,如图3.57所示,单击Part Referrence右边的框,更改Q1为Q02001即可。 3.3.3同页面建立互连 同页面建立互连的方法有添加连线(Wire)、网标(Net Alias)、端口(Port)。 1. 添加连线(Wire) 如果连接的两个Pin的间距较小,添加连线是最直接的方法,如图3.58所示,单击窗口右侧的Place wire按钮,或按下W键,也可以选择主菜单Place→Wire选项。 图3.58添加Wire 激活添加Wire后,如图3.59所示,单击C238的一个Pin作为起始点,出现一个Wire后,往需要连接的Pin方向移动,直到出现一个红的大圆标志后单击,放置Wire的连接就完成了,红色大圆也就消失。 图3.59Wire的另外一点 下面是窗口右侧按钮其他关于Wire的介绍: Auto Connect to points: 单击两个Pin后,自动连接Wire; Auto Connect mult points: 单击多个Pin后,右击并选择Connect选项,自动建立多Pin连接; Place junction(J): 放置连接点,两根Wire交叉后,一般会自动生成一个交叉的圆形小红点,如果没有出现,则需要手动放置交叉连接点; Place no connect(X): 不要连接的Pin,需要放置no connect的标志,如图3.59中的第9个Pin。 2. 添加网标(Net Alias) 如图3.60所示,如果第2个Pin要连接R56,此时距离比较长,而且线要很绕才能连接到一起,遇到这种情况,采用添加网标的形式来连接比较方便。 单击窗口右侧的Place Net Alias按钮,或者输入N,还可以通过选择主菜单中的Place→Net Alias选项,如图3.61所示,在Alias输入框内输入网标的名字,如TXD。 然后,把该网标放置在Pin 2的Wire上,如图3.62所示,在放置Alias之前,需要从Pin 2拉出一小段的Wire,用来放置Net Alias。 图3.60长距离连接 图3.61输入网络名字 图3.62一端放置Net Alias 同样,在R56的另外一端也放置一个TXD的Net Alias,这样两端就实现了相互连接,如图3.63所示。 图3.63另一端放置Net Alias 3. 添加网络端口(Port) Port和Net Alias的作用相同,但比Net Alias更直观些,还是将第2个Pin同R56连接,如图3.60所示,如果采用添加Port的方式连接,也可以达到连接的效果。 如图3.64所示,单击窗口右侧的Add Port按钮,在Libraries里选择库,在Symbol中选择具体的样式。 图3.64选择Port 单击OK按钮后,右击并选择Edit Properties选项,如图3.65所示。 图3.65编辑Port属性 输入Port的网标名字TXD,如图3.66所示。 图3.66输入Port的网标名字 单击OK按钮后,把该Port放置在Pin 2上即可,如图3.67所示。 图3.67放置Port 3.3.4不同页面建立互连 如果需要连接的两个Pin不在同一个页面,那么该如何连接呢?这就需要用到专用的页面连接符。 如图3.68所示,单击窗口右侧Place OffPage Connector选项,或单击主菜单Place→OffPage Connector选项,在Libraries下选择库,在Symbol中选择样式。 图3.68设置OffPage Connector 单击窗口右侧的Add Library按钮可以添加Symbol所需的库,单击Remove Library按钮可以删除添加的库,然后单击OK按钮。接着右击,出现下拉菜单,在这里可以对OffPage Connector做旋转、镜像等操作,选择Edit Properties选项,如图3.69所示。 然后输入网标名字,如图3.70所示。 图3.69编辑OffPage Connector 图3.70放置OffPage Connector 注意: 如果要和其他Page 的网标相连,也要在对应的Page内放置一个相同网标的OffPage Connector,这个是和其他原理图软件不同的地方。 如果没有放置OffPage Connector,即使每页放置相同的Net Alias或Net Port,当导入Netlist文件或导入PCB中时会发现这些网络不会相连,如VBAT,会产生很多VBATxxxx的网标,xxxx为随机生成的一串数字。 3.3.5总线的使用和命名 在设计原理图时,会碰到很多总线(Bus),如Data、Address等,这样用Bus线就很方便。如图3.71所示,Data总线有24根。 图3.71Data总线 和前面的操作方式相同,有3种放置总线的方法: (1) 在主菜单中单击Place→Bus选项。 (2) 单击窗口右侧的Place Bus按钮。 (3) 直接按快捷键b或B。 然后在右侧空白处即可画出一条Bus粗线,如图3.72所示,默认角度为90°,如果需要其他角度,可以在按下鼠标左键的同时按下Shift键,这样就可以画出任意角的总线了。 图3.72Bus总线放置 接着单击Place Net Alias图标,编辑Bus的名字,如图3.73所示。 图3.73Bus总线命名 输入FP0_D[0..23]或者FP0_D[023],如果格式输入错误,会出现提示错误的对话框,如图3.74所示。 图3.74Bus总线命名错误提示 输入Bus的名字后单击OK按钮,将Net Alias放置在Bus线的旁边,如图3.75所示。 图3.75放置Bus总线的Net Alias 接下来,单击窗口右侧的Add Bus Entry图标,也可以单击主菜单Place→Bus Entry选项,或者使用快捷键E或e,以此添加Bus线的分支线,如图3.76所示。 图3.76放置Bus Entry 用Wire将Pin和Bus Entry连起来,如图3.77所示。 图3.77连接Bus Entry 接下来就可以对各个Net进行命名了,单击Add Net Alias图标,添加第一个Net Alias,放置后,直接放在下一个Wire上并单击,这样数字即可自动增加,如图3.78所示。 图3.78Bus Entry命名 注意: 低版本的OrCAD软件,需要按下Ctrl键才能自动递增数字。 3.3.6放置地和电源 OrCAD设有专门放置电源和地网络的功能,这些电源和地实际上也是一个Part,制作好后放在Lib库中,一般使用默认的设置即可。 1. 放置电源网络 和上面的命令激活方式相同,有3种放置电源网络的方式,如图3.79所示。 图3.79选择Power (1) 单击窗口右侧的Place Power图标。 (2) 选择主菜单Place→Power选项。 (3) 使用快捷键F或f。 此时出现Place Power的对话框,根据自己喜好选择Power的样式,如果不满意这里面的样式,可以单击Add Library按钮添加自己做好的库进来。 图3.80设置Power 一般选择VCC_BAR选项即可,图纸中的Power样式最好都选统一的一种,这样下次使用的时候,只需使用Copy命令就可以了,不用每次都用Place Power命令,然后才能选择样式这么麻烦,从而提高了作图的效率。 接下来单击OK按钮,如果需要旋转镜像操作,就按下快捷键R,需要水平镜像操作就按快捷键H,需要竖直镜像操作就按快捷键V。或者右击并在下拉菜单中选择Mirror和Rotate,如图3.80所示。 注意: OrCAD的快捷键字母大小写效果都是一样的。 在下拉菜单中选择Edit Properties选项,输入电源的Name,如图3.81所示。 图3.81Power命名 最后,将该Power放置在Wire上,直到出现一个红标志后单击此Wire,如图3.82所示,就在B19和A23上放置Power。 图3.82放置Power 这样就完成了Power的放置,有了第一个Power后,下次使用这个Power就可以直接选中此Power,通过Copy和Paste操作,或者按下Ctrl键拖拉,便可以生成一个新的Power,和其他Part一样都可以这样操作。 注意: Power是可以跨Page的,就是说不同的Page内相同Net的Power是默认连接的,不需要另外放置OffPage Connector。 2. 放置地网络 和上面的命令激活方式一样,也有3种放置地网络方式,如图3.83所示。 图3.83选择Ground (1) 单击窗口右侧的Place Ground图标。 (2) 选择主菜单Place→Ground选项。 (3) 使用快捷键G或g。 图3.84设置Ground 此时便可以出现Place Ground对话框,如图3.83所示,选择自己喜欢的Symbol,如要使用自己制作的Symbol,可以单击窗口右侧Add Library按钮来添加。 一般选择系统自带的GND_POWER即可,如果线路上有不同的地,如数字地(DGND)、模拟地(AGND)、RJ45接口地(RGND)、USB接口地(UGND)等,可以分别选用不同的Symbol来区别开。 设置好Symbol后,单击OK按钮,放置Ground,可以按快捷键R、H或V进行旋转和镜像,单击右键后如图3.84所示,选择Edit Properties选项。 输入地网络的Name,如图3.85所示。 图3.85Ground命名 将Ground放置在B18旁,然后用Wire连起来,如图3.86所示。 图3.86放置Ground 从图3.86可以看到,Ground是不显示Name的,所以为了区别不同Name的地网络,最好选用不同的Symbol。 同Power一样,如果下次需要使用Ground,直接用Copy和Paste操作即可,同时地网络也是可以跨Page的,就是说不同的Page内相同Net的Ground是默认连接的,不需要另外放置OffPage Connector。 3.3.7Part的更新 如果检查中发现Part需要更新,如果只需要更新1个,直接删除此Part后,调入更新后的Part,然后将元器件编号重命名并与原来一致即可。如果有很多个Part需要更新,这样操作就很麻烦,而且效率很低,也更容易出错。下面就讲述一下更新多个Part的方法。 原理图中的Part是通过Design Cache内的Part和库相连的。如图3.87所示,如果想把U71的A2 Pin更新为GND1,就可以分步操作。 图3.87U71更新 首先要在Part Library中找到这个Part,然后选中此Part,右击并选择Edit Part选项,或者直接双击此Part,如图3.88所示。 图3.88编辑Part 双击3 Pin,然后更改Pin Name即可,如图3.89所示。 图3.89编辑Pin Name 注意: Pin Name不允许重复出现,该Part的4 Pin的Pin Name为GND,所以3 Pin的Pin Name不能用GND,只能使用其他名字,例如GND1。 在主菜单下,单击File→Save选项,回到项目管理器界面,在Design Cache下找到这个Part,选中后右击并在菜单中选择Update Cache选项,如图3.90所示。 图3.90更新Cache内的Part 在出现的对话框中一直单击Yes按钮,最终会出现报错,提示更新失败,如图3.91所示。 图3.91更新失败信息 出现更新失败的原因是,这个Part来自另外一个Part Library,不在刚才更新的WH.olb库中,这种情况在Copy的原理图里经常遇到。当从源项目中复制原理图时,Part会把源文件所在库的路径信息也附带进来,如图3.88所示,可以看到HT24LC08后面的信息是这个Part库的源路径和源库。 出现这种问题,有以下两种解决方法: (1) 直接在源库中修改这个Part。 (2) 更换该Part的库和路径。 第2种解决方法也就是重点要讲的,因为很多时候,参考的原理图或者厂家提供的原理图也只有一个dsn文件,很少有附带的库,例如该Part中IC.lib的库是根本找不到的。 操作方法如下: 在Design Cache中找到HT24LC08,选中此Part后右击并选中下拉菜单中的Replace Cache选项,如图3.92所示。 图3.92替换Part库路径 在出现的两个对话框中直接单击Yes按钮后,出现如图3.93所示对话框,在Part Library右侧单击Browse按钮,选择刚才更新Part的Library,Part的名字保持不变,还是选用原来的。 图3.93替换Part库路径 然后,单击OK按钮,在出现的对话框中单击“是”按钮,如图3.94所示。 图3.94替换确认 最后就可以看到HT24LC08后的路径变为现在的新路径和Part库了,如图3.95所示。 图3.95替换结果 最后,返回到Part 所在的Page就可以看到Part已经被更新,如图3.96所示。 图3.96HT24LC08被更新 3.3.8添加文本(Text) 添加Text比较简单,也有3种开启方式: (1) 单击右侧的Place Text图标。 (2) 选择主菜单下Place→Text选项。 (3) 使用快捷键T或t。 在Place Text的输入框内输入内容HDCP,接着可以在Color下选择颜色,在Rotation下选择Text的旋转角度,在Font内选择字体的类型,如图3.97所示。 图3.97设置Text 单击OK按钮后,将Text放置在Page上,如图3.98所示。 图3.98放置Text 放置后,如果发现需要更改此Text,就可以直接双击并更改此Text。 3.3.9添加图形(Picture) 有时需要在图纸中添加一些图片,例如公司的Logo、参考的框架图和一些静电标志等,操作如下。 从主菜单中选择Place→Picture选项,选择需要添加的图片,最好是bmp格式的,其他格式也可以,例如选中该二维码图片,如图3.99所示。 图3.99选择Picture 然后,单击“打开”按钮,放置Picture在Page上,如图3.100所示。双击该图片,拖动周围的4个粉色的角,这样便可以对Picture进行拉伸和缩小了。 图3.100放置Picture 3.3.10批量更改Footprint的名字 Footprint是PCB封装库的术语,在原理图和PCB互连中扮演着一个很重要的角色,更改Part的Footprint名字是经常用到的操作,这也是专门讲解这一操作的一个原因。 如果需要更改的Part很多,对每个Part单独更改则太慢,为了提高作图效率,OrCAD专门提供了批量更改的方法。 在工程管理器中,选择左侧窗口内Page或dsn文件,然后右击,在出现的下拉菜单中选择Edit Object Properties选项,选择的文件不同,出现的下拉菜单也不一样,但都有Edit Object Properties项,如图3.101所示。 图3.101选择批量编辑 接着,将滑动条滑动至PCB Footprint处,可以单击Footprint按钮,如图3.102所示。 图3.102编辑Footprint 可以单独更改,也可以多个一起更改,例如,图3.102中,需要将C1、C2、C3、C4都更改为C0201,可以先选中C1~C4,然后右击并在下拉菜单中选择Edit选项,如图3.103所示。 图3.103编辑多个Footprint 在出现的对话框中输入C0201,如图3.104所示。 图3.104输入新的Footprint 最后单击OK按钮,这样就实现1次更改多个Footprint了。 3.4工程预览 本节主要讲解一些图纸的查询问题,例如,如何根据位号查询到Part,以及如何根据网络名查找到具体的Page 等。 3.4.1查询元器件位号 单击dsn文件,按下Ctrl+F组合键,单击查询器右侧的,只保留Part项前面打勾,如图3.105所示。 图3.105选择Part 接着在查询器内输入元器件的位号,如C22,如图3.106所示。 图3.106输入元器件位号 然后回车,输出的查询结果如图3.107所示。 图3.107位号查询结果 如果要看到C22的具体Page 内容,就可以直接双击结果输出行。这样便可以切换到C22的Page页面上,此时C22被选中,并且显示在屏幕正中心,如图3.108所示。 图3.108在Page内显示 可以用“*”“?”配合来批量查询,例如要查询R300到R309,就可以在查询器中输入“R30?”,然后按Enter键或单击右边的执行按钮,如图3.109所示。 图3.109批量查询Part 3.4.2查询网络 单击dsn文件,按下Ctrl+F组合键,单击查询器右侧的,只保留Nets项的前面打钩,如图3.110所示。 图3.110在Page内查询网络 在查询器中输入Net Name,如MD15,如图3.111所示。 图3.111输入Net Name 然后回车,Find Window就会显示查询的结果,如图3.112所示,可以看到所在Page的具体页码和Pin。 图3.112Net 查询结果 在结果上双击,就可以在Page内显示出来,如图3.113所示,可以看到该Net在屏幕中心显示出来,而且处于选中状态。 图3.113Net 在Page内显示 当然也可以用“*”“?”配合来批量查询,操作方法和查询Part的方法相似,这里不再举例说明了。 图3.114查询过滤器的菜单 3.4.3其他查询 查询Part和Net是最常用的两个操作,按下Ctrl+F组合键后,单击查询器右边的,可以看到能查询很多信息,图3.114是查询过滤器的完整菜单。 Match Case: 区分大小写; SelectAll: 选中所有,即选中Parts到Part Pins的所有项目; DeselectAll: 取消所有选中项目; Highlight: 高亮选中项目; Regular Expressions: 使用正则表达式,一种特殊的字符串模式,用于匹配一组字符串; Property Name=Value: 查询内容包含Value。 3.4.4统计引脚数量 PCB设计的费用评估所采用的一个常用的指标就是Pin数量,和其他设计原理图的软件一样,OrCAD也提供了统计Pin数量的功能。 同批量修改Footprint一样,在工程管理器中,选择左侧窗口内Page或dsn文件,然后右击,在出现的下拉菜单中选择Edit Object Properties选项。 最后,在下面标签中选择Pins选项,拖动右侧的滚动条至底部,最左侧的序号即是Pin的数量,如图3.115所示,该原理图Pin数量是2702。 图3.115Pin数量统计 注意: 很多时候,第一列左边的序号很小,或者和上一行重复,数值明显错误,这个时候选择附近的其他标签,然后再切换到Pins标签,这样就可以看到最终正确的数字了。 3.5原理图输出 本节主要讲解原理图检查和输出各种文件,例如Netlist和BOM等。 3.5.1DRC检查 DRC检查主要是对各种设计Rule的检查,常用的检查如原件的位号是否有重复,以及是否有单网络(Single Net)等。 1. Design Rules Options 在项目管理器中,选择dsn文件,在主菜单中选择Tools→Design Rules Check选项,出现Design Rules Check对话框,如图3.116所示。 图3.116Design Rules Options对话框 Scope: Check entire design——检查整个设计,一般选中该项; Check selection——检查选择部分。 Mode: Use occurrences——使用自定义的规则,选中后,Electrical Rules和Physical Rules内的选择全部为空状态; Use instances(Preferred)——使用默认的规则设置,一般选中该项即可。 Action: Check design rules——检查设计规则; Delete existing DRC marker——删除DRC标志; Creat DRC markers for warn——在Page内生成DRC标志; Preserve waived DRC——保持原来被隐藏的DRC。 Ignore DRC: 添加需要被忽略的DRC规则,一般不使用,需要写字本编辑,这里不做详述。 Design Rules: Run Electrical Rules——运行Electrical Rules检查,选中后Electrical Rules内的选项会被自动选择; Run Physical Rules——运行Physical Rules检查,选中后Physical Rules内的选项会被自动选择; Report: View Output——查看输出结果。 2. Electrical Rules 单击Electrical Rules标签,如图3.117所示。 图3.117Electrical Rules对话框 Electrical Rules: Check single node nets——检查单节点网络; Check no driving source and Pin type connect——检查驱动接收等Pin Type的特性,这些在高速仿真时用到; Check duplicate net names——检查重复的网络名称; Check offpage connector connect——检查跨页连接的正确性; Check hierarchical port connect——检查层次电路的正确性; Check unconnected bus net——检查未连接的总线网络; Check unconnected pins——检查未连接的引脚; Check SDT compatibility——检查SDT兼容性。 Report: Report all net name——导出所有网络名称; Report offgrid object——导出网格对象; Report hierarchical ports and offpage connection——导出分层端口和分页图纸间接口的连接; Report misleading tap connection——报告错误的分流连接。 3. Physical Rules 单击Physical Rules标签,如图3.118所示。 图3.118Physical Rules对话框 Electrical Rules: Check power pin visible——检查电源引脚的可视性; Check missing/illegal PCB Footprint property——检查缺失或非法的PCB封装特性; Check Normal Convert view sync——检查不同视图下的Pin numbers的一致性; Check incorrect Pin Group assignment——检查Pin Group属性的正确性; Check high speed props syntax——检查高速props语法有无错误; Check missing pin numbers——检查是否有丢失的Pin number; Check device with zero pins——检查没有引脚的元器件; Check power ground short——检查电源、地网络短接; Check Name Prop consistency——检查名称属性的一致性。 Reports: Report visible unconnected power pin——导出可见的未连接电源引脚; Report unused part package——导出未使用的部分封装; Report invalid Refdes——导出无效的参考编号; Report identical part reference——导出相同元器件的编号,这个功能最常用。 4. ERC Matrix 单击ERC Matrix标签,如图3.119所示。 图3.119ERC Matrix对话框 ERC: Electrical Rule Checker,电气规则检查矩阵。 不同属性的引脚相连是不报错、报警告还是报错误的矩阵设置。 Input: 输入引脚; Bidirectional: 双向引脚; Output: 输出引脚; Open Collector: 集电极开路引脚; Passive: 无源引脚; 3 State: 三态引脚; Open Emitter: 射极开路引脚; Input Port: 输入端口; Bidirectional Port: 双向端口; Output Port: 输出端口; Open Collector Port: 集电极开路端口; Passive Port: 无源端口; 3 State Port: 三态端口; Open Emitter Port: 射极开路端口; Power: 电源引脚; Unconnected: 未连接。 一般情况下直接采用默认值即可。 设置好以上4项就可以单击“确定”按钮了,进行设计规则的检查,在出现如图3.120所示的对话框内单击“是”按钮。 图3.120DRC运行对话框 这样就会在Outputs文件夹下生成一个扩展名为drc的文件,如图3.121所示。 图3.121DRC文件产生 然后,双击并打开该DRC文件,这样就可以看到具体报错信息,如图3.122所示。 图3.122DRC文件内容 根据DRC文件信息,对原理图进行修改。 3.5.2输出Netlist文件 原理图完成后,需要导出网表(Netlist)文件,然后在PCB中导入Netlist文件,进行项目的更新。 下面介绍一下如何导出Netlist文件: (1) 在项目管理器中点中dsn文件,单击,或者在主菜单中选择Tools→Creat Netlist选项,弹出Create Netlist对话框,如图3.123所示。 这里只讲述和本书关系大的PCB Editor部分,其他标签的内容不做讲解。 Combined Property: PCB封装的属性定义,默认PCB Footprint即可; Creat PCB Editor Netlist: 生成PCB Editor的Netlist文件,OrCAD也可以生成适合Pads、AD等PCB的Netlist文件。 单击Setup按钮,如图3.124所示,可以选择cfg的配置文件,也可以对现在选中的文件单击Edit按钮进行编辑,一般选择默认就可以了。 单击Edit按钮,打开cfg文件,可以看到文件的内容类似图3.125所示。 该文件设置Netlist内包含的Part属性,如果在原理图中有一些特殊的属性,如ROOM属性要包含在Netlist文件内,就需要在文件中添加ROOM=YES。 (2) 编辑完成后直接单击OK按钮,重新回到图3.123界面。 图3.123Netlist对话框 图3.124Netlist配置文件 图3.125查看配置文件 (3) Options: 选择生成Netlist文件的文件夹路径,默认在dsn文件同路径下所产生的一个allegro的文件夹内。 (4) View Output: 直接查看输出结果。 (5) Create or Update PCB Editor Board(Netrev): 直接更新PCB文件,选中的时候,生成的Netlist文件将同步更新到PCB文件中,而不需要在PCB中导入Netlist文件的操作。 选中该项后,Options就不再灰白显示,需要选择PCB文件的输入和输出路径,这个在以后PCB文件导入Netlist文件中会详细讲解,该处默认不选。 (6) 单击“确定”按钮,出现运行的进度图,如图3.126所示。 图3.126Create Netlist进度图 图3.127Create Netlist成功 (7) 运行结束后,在Output内可以看到有3个扩展名为dat的Netlist文件,如图3.127所示。 同时可以看到在dsn文件同目录下,新出现了一个allegro文件夹,打开文件夹会看到这3个文件。 OrCAD的Netlist文件有3个,与其他软件生成的Netlist文件不同,下面介绍一下3个文件的内容: pstxnet.dat——Net、Pin和位号的互连信息; pstxprt.dat——Part和位号的对应关系; pstchip.dat——Part的属性信息。 从上述可以看到,每个文件内都是片段信息,这样便可以通过修改Netlist文件来更新PCB文件,这个需要熟练OrCAD的工程师来操作,新入行的工程师还是要选择通过修改原理图来更新PCB文件。 注意: 首先要原理图完成DRC检查,如果有错误,例如原件位号重复等严重错误,生成Netlist文件会失败。 3.5.3输出PDF文件 输出PDF文件之前,首先要安装好PDF虚拟打印机,在打印时选择PDF打印机即可。在项目管理器中,选中dsn文件,选择主菜单下File→Print选项,出现打印对话框,如图3.128所示。 图3.128Print对话框 默认Scale to paper size; 单击Setup按钮,选择使用PDF Printer打印。 其他不用设置,单击OK按钮后,就生成了PDF文件。 注意: 需要选择整个dsn文件,如果只选中PAGE,则只会打印选中的该页。 3.5.4输出元器件清单(BOM) 原理图完成后,下一个很重要的工作就是生成元器件清单列表——BOM,采购人员会根据BOM来采购元器件物料。OrCAD有很强的BOM制作功能,可以根据需要生成BOM的Excel表格数据。 选中主菜单下Reports→CIS Bill of Materials→Standard选项,打开BOM设置对话框,如图3.129所示。 图3.129BOM输出设置 (1) Template Name: 默认即可。 (2) Report Properties: Select Properties——可供选择的输出属性; Output Format——已选择被输出的属性,通过右侧的上下方向键可以调整属性的前后次序。 (3) Output Mechanical Part Data: 输出结构件的数据。 (4) Export BOM report to Excel: 输出为Excel文件格式,一般要选中该项。 其他选项默认即可,最后单击OK按钮,这样就生成了BOM文件。 3.6小结 本章主要讲解使用OrCAD进行原理图的绘制,原理图一般由硬件工程师来完成,EDA工程师可以作为扩展知识了解,读者学完该章后,需要掌握以下内容: (1) 项目管理器视窗的结构。 (2) 元器件库的新建、添加和删除。 (3) 根据原件的规格书新建一个Part和添加Footprint。 (4) 如何从参考的原理图中Copy所需的部分电路。 (5) 放置Part和添加Wire、Net,使用OffPage Connector。 (6) 使用查询器查询Net、Part,生成Netlist文件。 (7) 掌握下面常用的快捷键(不分大小写) I——Zoom InO——Zoom OutP——Place Part W——Place WireN——Place Net aliasB—— Place Bus E——Add bus entryF——Place powerG——Place ground T——Place text 3.7习题 (1) 原理图放大和缩小是如何操作的? (2) 新建一个RS232_V10项目,在项目中建立两个1Power和2USB两个Page。 (3) 新建一个名字为RS232的库,然后在库中新建一个MAX232ECDR的Part,并将Footprint命名为SO16。