Candence基础知识1(CADENCE从原理图到PCB步骤 )

需求说明:Candence基本知识

内容       :从原理图到PCB具体步骤

来自       :时间的诗

来自:http://blog.163.com/tracy_zhangblog/blog/static/1938540202011117103433500/

一.原理图

1.建立工程

与其他绘图软件一样,OrCAD以Project来管理各种设计文件。点击开始菜单,然后依次是所有程序-- Allegro SPB 15.5--Design Entry CIS,在弹出的Studio Suite Selection对话框中选择第一项OrCAD_Capture_CIS_option with capture,点击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):

在画板的时候需要导入网络表,在这之前原理图应该差不多完工了,剩下的工作就是查 缺补漏。可以为元件自动编号,在工程管理界面下选中.dsn文件,然后选 Tools--Annotate,在弹出的对话框中选定一些编号规则,根据需求进行修改或用默认设置即可。进行DRC检测也是在生成网络表之前的一项重要工作,可以避免出现一些不必要的设计错误。DRC之后可以尝试去生成网络表了,还是在工程管理界面下,选Tools--Create Netlist,可以在弹出的对话框中选择网络表的存放路径,其他默认设置即可,生成网络表的过程中如果出错,可以通Windows--Session
Log查看出错的原因,比如说有元器件忘了添加封装等。

5) 更新元件到原理图:

当元件库中的某个元件修改后需要原理图也同步更新时,可以不必重新放置元件(万一有100个或更多该元件岂不是要疯了),在工程管理界面下,双击Design Cache文件夹,选中刚才修改的元件,右键单击选择Update Cache,一路yes下去即可将原理图中该元件全部更新。

6) 一些细节:

画原理图时的放大和缩小分别是按键“i”(Zoom In)和“o”(Zoom Out)和Protel有所区别;在创建元件封装的时候,除了GND可以同名以外,不能有其他同名的管脚,否者报错,不过貌似报错也没有影响,因为打开OrCAD自带的元件库时(比如Xilinx的FPGA),也有除GND外的同名管脚;添加网络标号的快捷键是“n”,不过在OrCAD中网络标号无法复制,记得Protel中是可以通过复制已有的网络标号来添加新的网络标号的。

二.PCB

1.建立电路板

首先是打开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 padstack选择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从你指定的路径寻找封装。Allegro的一个PCB元件封装会包含几个文件(有些是网络表必须的,有些不是),而不像Protel那样一个PCB元件库文件可以包含许多的元件封装。如何获得元件的PCB封装呢,老办法,自己做或是直接用别人做好的。有牛人为Allegro专门做了一个PCB封装生成器——FPM(Footprint
Maker,目前版本是0.0.8.0),可以生成绝大数常用的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;再如在Protel中移动PCB图纸可以用鼠标滚轮(上下移动)或是Shift加鼠标滚轮(左右移动),或是鼠标右键或中键按住不放亦可,在Allegro中,只剩下按住鼠标中键还好使,或是使用方向键。当然这些都可以通过相关设置改成自己习惯的方式,“Cadence系统是一个比较开放的系统,它给用户留了比较多的定制空间”。还有一个比较不习惯的地方就是颜色的设置,因为默认设置实在是太烂,必须改了才看得惯(否则将会崩溃)。点击工具栏中的Color按钮或Ctrl+F5或是菜单Display--Color/Visibility,在弹出的对话框中可以看到,Allegro将颜色设置分了好几个Group,根据个人习惯分别设置,例如Stack-Up中,可以设置Top(顶层)或Bottom(顶层)的Pin(管脚)、Via(过孔)和Etch(走线)为红色和蓝色(Protel中的默认的颜色设置);Geometry中设置Skillscreen_Top(顶层丝印)为黄色;Components中设置Skillscreen_Top的Ref
Des(元件的标号)一栏的颜色为黄色。经过一番设置之后,才能感觉比较友好,开始布线……点击菜单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选择Gerber RS274X,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文件时的相关记录

时间: 2024-10-11 16:40:57

Candence基础知识1(CADENCE从原理图到PCB步骤 )的相关文章

Cadence 元件原理图封装 PCB封装 3D封装制作

趁着学习Cadence的时间,写一篇关于元器件的原理图封装.PCB封装和3D封装制作的文章分享给大家.个人能用有限,有不足的地方,欢迎大家指出. 我使用的是Cadence 16.6版本.这里以MP2359为例,先看技术手册,封装为SOT23-6,如下图所示. 一.焊盘制作 打开Pad Designer软件 因为我们做的是表贴焊盘,在Parametes选项卡中我们只修改Units为Millimeter,即单位修改为毫米. 选择Layers选项卡,勾选SIngle layer mode,表示我们使用

你得学会并且学得会的Socket编程基础知识

这一篇文章,我将图文并茂地介绍Socket编程的基础知识,我相信,如果你按照步骤做完实验,一定可以对Socket编程有更好地理解. 本文源代码,可以通过这里下载 http://files.cnblogs.com/chenxizhang/SocketWorkshop.rar 第一步:创建解决方案 第二步:创建服务端程序 这里可以选择“Console Application”这个类型,比较方便调试 然后编写如下代码,实现服务器的基本功能 using System; using System.Coll

jsp基础知识(1)

1.JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术. 2.JSP技术也是一种动态web资源的开发技术 因为JSP技术允许在页面中嵌套java代码,以产生动态数据,并且web服务器在执行jsp时,web服务器会传递web开发相关的对象给jsp,jsp通过这些对象,可以与浏览器进行交互,所以jsp当然也是一种动态web资源开发技术. 3.JSP和Servlet的比较       本人是先学Servlet的,Servlet

zabbix 的部署及基础知识的讲解

一.Zabbix的介绍 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员 快速定位/解决存在的各种问题,它可以运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台之上. - 安装与配置简单,学习成本低 - 支持多语言(包括中文) - 免费开源 - 自动发现服务器与网络设备 - 分布式监视以及WEB

java基础知识回顾之java Thread类学习(三)--java线程实现常见的两种方式实现好处:

总结:实现Runnable接口比继承Thread类更有优势: 1.因为java只能单继承,实现Runnable接口可以避免单继承的局限性 2.继承Thread类,多个线程不能处理或者共享同一个资源,但是实现Runnable接口可以处理同一个资源. 下面我们做个测试:验证下.车站的售票系统售票的例子,车站的各个售票口相当于各个线程,我们先使用第一种方法几继承Thread类的方式实现: 代码如下: package com.lp.ecjtu.Thread; /** * * @author Admini

【分享】4412开发板-嵌入式Linux开发需要掌握的基础知识和技能

本文转自迅为电子论坛:http://www.topeetboard.com 1.Linux 基础 安装Linux操作系统 Linux文件系统 Linux常用命令 Linux启动过程详解 熟悉Linux服务能够独立安装Linux操作系统 能够熟练使用Linux系统的基本命令 认识Linux系统的常用服务安装Linux操作系统 Linux基本命令实践 设置Linux环境变量 定制Linux的服务 Shell 编程基础使用vi编辑文件 使用Emacs编辑文件 使用其他编辑器 2.Shell 编程基础

java基础知识回顾之---java String final类普通方法的应用之“两个字符串中最大相同的子串”

/* * 3,两个字符串中最大相同的子串. * "qwerabcdtyuiop" * "xcabcdvbn" *  * 思路: * 1,既然取得是最大子串,先看短的那个字符串是否在长的那个字符串中. *   如果存在,短的那个字符串就是最大子串. * 2,如果不是呢,那么就将短的那个子串进行长度递减的方式取子串,去长串中判断是否存在. *   如果存在就已找到,就不用在找了. * 3.先找最大的子串,再递减子串找,找到,就停止 */ 原理图如图: 代码: publi

MySQL数据库基础知识

day02 MySQL数据库基础知识 一.基础知识概述: 基础决定你这门课程的学习成败!只有学习好这些基础知识以后,你才能真正的运用自如.才能够对数据库有更深入的了解,道路才会越走越远. 二.基础知识: 1.数据库(database):数据库就好比是一个物理的文档柜,一个容器,把我们整理好的数据表等等归纳起来. 创建数据库命令:        create database 数据库名; 2.查看数据库         show databases; 3.打开指定的数据库         use 

linux入门基础知识及简单命令介绍

linux入门基础知识介绍 1.计算机硬件组成介绍 计算机主要由cpu(运算器.控制器),内存,I/O,外部存储等构成. cpu主要是用来对二进制数据进行运算操作,它从内存中取出数据,然后进行相应的运算操作.不能从硬盘中直接取数据. 内存从外部存储中取出数据供cpu运存.内存的最小单位是字节(byte) 备注:由于32的cpu逻辑寻址能力最大为32内存单元.因此32位cpu可以访问的最大内存空间为:4GB,算法如下: 2^32=2^10*2^10*2^10*2^2 =1024*1024*1024