一.原理图1.建立工程
与
其他绘图软件一样,OrCAD以Project来管理各种
设计文件。点击开始菜单,然后依次是所有程序—打开cadence软件—》一般选用Design Entry CIS,点击Ok进入Capture
CIS。接下来是
File--New--Project,在弹出的对话框中填入工程名、路径等等,点击Ok进入设计界面。
2.绘制原理图
新建工程后打开的是默认的原理图文件SCHEMATIC1 PAGE1,右侧有工具栏,用于放置元件、画线和添加网络等等,用法和Protel类似。点击上侧工具栏的
Project manager(文件夹树图标)或者是在操作界面的右边都能看到进入工程管理界面,在这里可以修改原理图文件名、设置原理图纸张大小和添加原理图库等等。
1)修改原理图纸张大小:
双击SCHEMATIC1文件夹,右键点击PAGE1,选择Schematic1 Page Properties,在Page Size中可以选择单位、大小等;
2)添加原理图库:
File--New--Library,可以看到在Library文件夹中多了一个library1.olb的原理图库文件,右键单击该文件,选择Save,改名存盘;(
注意:在自己话原理图库或者封装库的时候,在添加引脚的时候,最好是画之前设定好栅格等参数,要不然很可能出现你画的封装,很可能在原理图里面布线的时候通不过,没法对齐,连不上线!)
3)添加新元件:
常用的元件用自带的(比如说电阻、电容的),很多时候都要自己做元件,或者用别人做好的元件。右键单击刚才新建的olb库文件,选New Part,或是New Part From Spreadsheet,后者以表格的方式建立新元件,对于画管脚特多的
芯片元件非常合适,可以直接从芯片Datasheet中的引脚描述表格中直接拷贝、粘贴即可(pdf格式的Datasheet按住Alt键可以按列选择),可以批量添加管脚,方便快捷。
4)生成网络表(Net List):
在画板PCB的时候需要导入网络表,在这之前原理图应该差不多完工了,剩下的工作就是查 缺补漏。可以为元件自动编号,在工程管理界面下选中.dsn文件,然后选 Tools--Annotate,在弹出的对话框中选定一些编号规则,根据需求进行修改或用默认设置即可。进行DRC检测也是在生成网络表之前的一项重要工作,可以避免出现一些不必要的设计错误。DRC之后可以尝试去生成网络表了,还是在工程管理界面下,选Tools--Create Netlist,可以在弹出的对话框中选择网络表的存放路径,其他默认设置即可,生成网络表的过程中如果出错,可以通
Windows--Session
Log查看出错的原因,(
第一次用cadence画板子,免不了会出很多错误,通过查阅报表的错误原因,做好记录,是学好该软件的捷径)比如说有元器件忘了添加封装等。
5)更新元件到原理图:
当元件库中的某个元件修改后需要原理图也同步更新时,可以不必重新放置元件(万一有100个或更多该元件岂不是要疯了),在工程管理界面下,双击Design Cache文件夹,选中刚才修改的元件,右键单击选择Update Cache,一路yes下去即可将原理图中该元件全部更新。
注意:在生成网表的时候,经常报错一定要注意,在自己画的原理图库或者是封装库的时候,一定要有系统的存放,按照一定的规则命名,在添加的时候,原件要把自己所画的封装库的路径添加上,要不然,是不能正确生成网表的。同时,这样方便以后工程的调用
6)一些细节:
画原理图时的放大和缩小分别是按键“i”(Zoom In)和“o”(Zoom Out)和Protel有所区别;
在创建元件封装的时候,除了GND可以同名以外,不能有其他同名的管脚,否者报错,不过貌似报错也没有影响,因为打开OrCAD自带的元件库时(比如Xilinx的FPGA),也有除GND外的同名管脚;添加网络标号的快捷键是“n”,不过在OrCAD中网络标号无法复制,记得Protel中是可以通过复制已有的网络标号来添加新的网络标号的。
二.PCB1.建立电路板,设定好相关参数
首先是打开PCB编辑器——开始--所有程序-- Allegro SPB 15.5--PCB Editor,在弹出的对话框中选择Allegro PCB Design 610(PCB Design Expert),然后点击Ok进入PCB编辑器。接
下来就是利用向导建立电路板了,包括确定板子的大小、层数、形状等等参数,用向导比较方便。
点击File菜单,选择New,在弹出的对话框中的Drawing Type选择Board(wizard),
然后确定文件名,存盘路径等,最后点Ok进入向导。在Import Data这一步可以一路Next下去,用默认的参数就行。到了Parameters,
首先可以选择画板时使用的单位(Select the units for board drawing),即用的是mil、mm或是其他,这个根据个人习惯了,一般选mil;
接下来是选择图纸大小(Drawing
size,注意不是板子的大小);第三项是选择图纸的
坐标原点(是在左下角还是在中心,之后可以更改),可以选择中心作为坐标原点,这个根据需求而定。设置完后点击Next,接着设置其他Parameters。
设置格点大小(Grid spacing)为10mil,
设置走线层数(Etch
layer count)为2(2层板),然后又是一路Next,直到Custom Data的Spacing Constraints(距离参数限制)。
在这里设置最小线宽(Minimum Line width)、
最小线间距(Minimum Line to Line spacing)、走线到焊盘的最小间距(Minimum Line to Pad spacing)和焊盘的最小间距(Minimum
Pad to Pad spacing)均为8.00mil,Default via padstac
k选择via,之后点击Next。此时选择PCB的外形为Rectangular board(矩形),点击Next进入
矩形PCB的参数设置界面,主要设置的是
板子的宽(Width)和高(Height)以及一些限制区域,包括
布线允许区域与
板子边框的距离和允许摆放元件区域与板子边框的距离(可以分别设置为50和100mil),设置完成后Next,最后点Finish,这一步大功告成。
2.导入网络表
接上一个步骤,将
网络表导入到刚建好的PCB中。在此之前还有一个
很重要的工作要做,就是
指定PCB封装的路径。
记得在画原理图时仅仅只是在元件属性中填了元件的封装名,还没告诉Allegro元件的PCB封装在何处,不指定封装路径的话,导入网络表的时候将会出错。点击
Setup--User
Preferences,在弹出对话框中的Categories中选中Design_paths,分别为
padpath和psmpath指定路径,即将PCB元件封装路径添加到padpath和psmpath中,以告知Allegro从你指定的路径寻找封装。(
可能不同的版本,添加的时候会不一样,但是归根到底,就是要要把padpath和psmpath这两个路径添加好封装库)Allegro的一个PCB元件封装会包含几个文件(有些是网络表必须的,有些不是),而不像Protel那样一个PCB元件库文件可以包含许多的元件封装。如何获得元件的PCB封装呢,老办法,自己做或是直接用别人做好的。有牛人为Allegro专门做了一个PCB封装生成器——
FPM(Footprint
Maker,目前版本是0.0.8.0),或者
LP-Viewer,后者我实践过,发现几乎涉及所要用到的封装都能找到,可以生成绝大数常用的PCB封装,十分好用(真是造福道上兄弟们的壮举)。用FPM选好你需要的封装,Make一下,封装就自动做好了,之后还会自动将做好的封装用Allegro打开,便于检查生成的封装对不对。
封装准备好了,可以
开始往PCB中导入网络表,点击File--Import--Logic,在Import directory中指定在原理图部分生成的网络表文件路径,其他设置使用默认值即可,点击Import Cadence即可导入网络表。导入失败的话可以通过log文件查看出错原因,改正错误后重复刚才的过程,直到成功导入网络表。
3.放置元件
成功导入网络表之后,可以开始放置元件。点击菜单Place--Quickplace,在弹出的对话框中使用默认设置,点击Place按钮即可完成元件的放置。如果遇到有未成功放置的元件,在Place按钮上方将出现未成功放置的元件计数,形如:Unplace symbol count:4。通过点击右侧的Viewlog查看有那些元件未成功放置。例如PCB元件封装缺少焊盘将导致放置失败,通过修改封装之后再次重新放置即可。
4.布局(布局的方法有很多种,选自己合适的)
现在可以根据实际需求在PCB上摆放元件,此时的元件基本上都放在了板子的外边,并且有密密麻麻的飞线(Rats)。为了能更好的摆放元件,
可以暂时将飞线去掉,方法是点击工具栏中的
Unrats All按钮即可,恢复的方法是右侧的Rats All按钮。要移动元件时,必须先点击工具栏中的Move按钮或使用Shift+F7,进入“移动”命令模式,同时在界面右侧控制面板中的Find标签中勾选Symbols,然后单击想要移动的元件,移动鼠标(元件跟着鼠标移动)至新位置,再次单击鼠标完成放置。此时仍处在Move命令模式下,用同样的方法可以直接移动别的元件,按F2或右键菜单Done均可退出Move命令模式(回到Idle模式)。元件的旋转比较有意思,在移动元件的时候,右键选择Rotate,元件中心与鼠标指针拉出一条线,此时用鼠标指针以元件中心画圈,元件跟着开始旋转,转到合适的位置单击鼠标即可确定摆放的方向。布局的时候可以直接从原理图中直接定位某个元件,因为开始的时候元件都是堆在一块了,即设置
原理图到PCB的交互。方法是在Orcad
Capture CIS中选择菜单Options--References,在Miscellaneous标签下勾选Enable Intertool Communication即可。当在原理图中选择某个元件后,在PCB中将直接能定位到该元件上(必须是在Idle模式下)。有时候需要把某个元件放在底层,方法是点击菜单Edit--Mirror,进入该命令模式,然后点击想要放到背面的元件即可。
5.布线
初次使用Allegro画PCB感觉很不习惯(可能是因为习惯了Protel的缘故),例如
其放大和缩小PCB快捷键不是PageUp和PageDown了,而是F10和F11(不同的版本可能有一点改变,16.3版本的是F11和F12);再如在Protel中移动PCB图纸可以用鼠标滚轮(上下移动)或是Shift加鼠标滚轮(左右移动),或是鼠标右键或中键按住不放亦可,在Allegro中,只剩下按住鼠标中键还好使,或是使用方向键。当然这些都可以通过相关设置改成自己习惯的方式,“Cadence系统是一个比较开放的系统,它给用户留了比较多的定制空间”。(这一点很优秀,就像傻瓜机和单反的区别)还有一个比较不习惯的地方就
是颜 {MOD}的设置,因为默认设置实在是太烂,必须改了才看得惯(否则将会崩溃)。
点击工具栏中的Color按钮或Ctrl+F5或是菜单Display--Color/Visibility,在弹出的对话框中可以看到,Allegro将颜 {MOD}设置分了好几个Group,根据个人习惯分别设置,例如Stack-Up中,可以设置Top(顶层)或Bottom(顶层)的Pin(管脚)、Via(过孔)和Etch(走线)为红 {MOD}和蓝 {MOD}(Protel中的默认的颜 {MOD}设置);Geometry中设置Skillscreen_Top(顶层丝印)为黄 {MOD};Components中设置Skillscreen_Top的Ref
Des(元件的标号)一栏的颜 {MOD}为黄 {MOD}。经过一番设置之后,才能感觉比较友好,
开始布线……点击菜单Route--Connect或是快捷键F6即可,可以在右侧控制面板中随时更改线宽。在布线的时候通过右键菜单
Add Via命令来随时添加过孔,让布线穿梭于顶层和底层之间。还还有一个不习惯的地方,焊盘(带孔的)和过孔都是实心的(何以能称之为“孔”),为了是“孔”,点击菜单Setup--Drawing
Options下的Display标签,选上Display plated holes即可。布线的时候自动推挤布线,很不错,另外,可以根据需求设置一些规则约束,
点击Setup--
Constrains,在弹出的对话框中点击Set standard value按钮可以设置焊盘间距、线宽等参数。
6.制板
制板就是给PCB生产商提供
Gerber文件让其把板子给洗出来(
类似于洗照片,Gerber文件类似与底片)。在出Gerber之前还必须做一些必要的检测工作,比如封装有没有画错(主要检查对象),有无未连接的网络等等……不仔细检测的话到时候极有可能会欲哭无泪的。发现PCB封装错了,修改之,然后在PCB中更新改好的封装,Place--Update
Symbols,在Package symbols中选上需要更新的封装,选好之后还要选上Update symbol padstacks,最后点击Refresh即可。另外如果打开了On-line DRC(在规则约束中,默认是打开的),也需要特别留意一下出现DRC不过的地方,必要的话也要改之。
一切无误之后,可以给PCB铺铜,在铺铜前可以对铺铜的参数进行设置,点击菜单Shape--Global
Dynamic Params,在Shape fill 标签页中的Dynamic fill选项选择Smooth平滑填充,打开Void controls标签页,Artwork format选择 Gerber RS274X。然后,点击菜单Shape--Rectangular(辅矩形),此时可以在右侧控制面板的Option中设置要铺铜的层,并选择铺铜对应的网络,
铺完之后记得删除铺铜死区,Shape--Delete
Islands。至此,画板的工作算是完成了,
可以出Gerber了。点击Manufature--Artwork,在弹出对话框中打开
General Parameters标签,Device type选择GerberRS274X,Format中 Integer places:3,Decimal places:5,然后打开Film Control标签,添加完成所需的film,一般两层板的话需要TOP(顶层走线层)、BOTTOM(底层走线层)、SOLDERMASK_TOP(顶层阻焊层)、SOLDERMASK_BOTTOM(底层阻焊层)、
SKILL_TOP(顶层丝印)和SKILL_BOTTOM(底层丝印),添加完所需的底片文件后,设置Undefine line width为8(不知道为何是这个值),其他设置使用默认值,最后点击Create Artwork即可,同样可以通过Viewlog按钮查看在生成Gerber文件时的相关记录