原创 使用Cadence16.2过程中遇到的一些问题(附解惑方法)

2011-2-27 19:46 6938 23 27 分类: PCB

使用Cadence16.2过程中遇到的一些问题(附解惑方法)

很久没有写博文了!确实有点过意不去(呵呵,这意味着自己最近懈怠了)。最近两个多月以来,由于公司的需要,我不得不学习Cadence16.2的使用方法——用它来画高速板子。目前白天又在忙着一块以FBGA484为核心芯片的6层板,因此只好晚上利用一些时间来写博文了。

笔者写这篇博文的初衷:一是小小地总结一下我在这两个月以来使用Cadence16.2的过程中所遇到的一些问题,并给出解决方法;二是想选几个问题,把它们写成文章,和网友分享一下,希望能给将要或者正在学习Cadence的网友提供一些好的帮助信息,少走一些弯路。


事先注明笔者所使用的子软件分别是:

(1)原理图设计软件:OrCAD Capture CIS

(2)PCB设计软件:Allegro PCB Design GXL

(3)Pad制作:Pad Designer


TROUBLE ONE从何入手?

SOLUTION如果真想学Cadence的话,该从何入手呢?我在这里推荐一个很好的网站:http://www.sig007.com/,笔者从这个网站中得到了很多益处。只不过需要提醒的是:这个网站里讲的东西全都是针对Cadence15.7而言的,So,需要注意这两个版本之间的差异。还有就是可以逛逛Cadence的官方网站:http://www.cadence.com/us/pages/default.aspx,有时间可以去欣赏一下里面的那些Blogs,绝对称得上是:Short and to the point


TROUBLE TWO自建分裂元件Capture封装时该如何区分HomogeneousHeterogeneous

SOLUTION刚开始接触这个软件时,笔者也是为此分不清,后来在做实际项目的过程中,终于能够加以区分并运用了。

创建分裂元件时,会出现如下对话框:

ea190785-904f-4ae4-a41c-676b82688140.jpg

想必初学者遇到这两个英文单词时最初的“本能反应”就是努力想起或者去查询它们的中文意思。用字典软件翻译之后,可以看到它们都有若干个几个近似的意思。笔者作为“过来人”(呵呵,JK),觉得初学者完全不需要理会这些近似的意思——因为它们根本没有透露出最关键的信息。笔者觉得可以用一种更直白的方式来理解它们,

(1)Homogeneous:前缀Homo-在英语里有“同”的意思,由此可以说明这种分裂元件里的所有PART都是一摸一样的!当然除了一个参数是不同的,即

02125e41-0e31-4420-9c7f-4c19cede3c5a.jpg

举个例子(LM339芯片):

eb64b2c5-8ba9-45e6-9b3d-26459d770222.jpg

这个比较器的芯片内部有4个完全一样的放大器,所以制作像LM339这样的元件Capture封装时,应选择Homogeneous

(2)Heterogeneous:前缀Hetero-在英语里有“异”的意思,由此可以说明这种分裂元件里的各个PART是有区别的。其实这种TYPE更为常用,因为现实情况下内部都是相同PARTIC并不那么常见,

举个例子(EP3C40F484芯片),

PART B

f5963777-3310-49f8-a10d-af0d1c732035.jpg

PART C

c71c42c1-10f7-4910-abc8-2d934c8efe9b.jpg

笔者觉得如果要很好地区分这两种PACKAGE TYPE,最好还是亲力亲为一遍或多遍,这样印象更深刻。


TROUBLE THREE倘若原理图结构非常大,如何更加有效率地添加元件的Footprint信息?

SOLUTION在这种情况下,如果一个一个地给元件添加Footprint信息,那将是非常耗费时间的。笔者发现了一个操作方法,可以大幅提高工作效率。

方法如下:在OrCAD Capture CISFile界面下,

570e49cf-60e3-40b4-88e9-7e95755bbf89.jpg

鼠标单击DSN文件或者相应的PAGE文件,并且鼠标右击,选中其中的Edit Object Properties选项,出现如下对话框:

201c229e-f6fc-424c-880d-53a405e028ef.jpg

可以看见里面有一列“PCB Footprint”,这样就可以成批量的添加元件的Footprint信息了。

TROUBLE FOUR:如何简化布局、布线的复杂度?

SOLUTION:有些情况下,我们在布局、布线的时候可能会遇到有的Pin Header中的PIN引脚是可以任意顺序的,但是在布线时我们所看到的大都是非常杂乱无章的飞线,为此,笔者可以提供一个好的方法来解决这个问题:先在OrCAD Capture CIS修改Netlist,然后再导入AllegroHowever,需要注意的是,只能在原理图中改变Pin HeaderPIN的顺序,千万别改变与之相连的芯片的引脚序号(当然还是有特殊情况的)!这个应该不难理解,就不多说了。

举个例子:一个六层板最初导入Netlist后的局部飞线情况如下,

e447278f-038e-4394-ae85-b7fd23d2a149.jpg

但是在修改了Netlist之后,结果发现布线非常简洁,同时也有效地减少了板子过孔的数量,如下图所示,

27ec54b7-3cf2-48f7-9628-e371855d35ce.jpg

其次还有一种方法,那就是HighlightDehighlight的使用方法,在布局、布线时可以人为特意将某些相同的Net高亮显示,这样可以对整个布局达到一目了然的效果。


TROUBLE FIVE由于Allegro自带的元件PACKAGE比较少,远远不能满足实际项目的需求。这么多的元件PACKAGE需要画,而且相当花费时间,有没有更好的办法来解决这个问题呢?

SOLUTION方法是有的,现给出具体步骤,

首先,打开一个BRD文件,在Allegro界面环境下,点击File,选择Export,在下拉列表中,再选择Libraries,出现如下对话框,

a3cb0cc6-f105-4af0-b5cb-9df2065ed37e.jpg

然后设置导出封装库的路径,最后,点击ExportOkay了,接下来就可以免费享用别人画的PACKAGE了。“更狠”的做法就是:到一些大公司(比如ALTERA)的网站上去下载那些十几甚至几十层的REFERENCE BOARDBRD文件,然后再EXPORT其中的封装信息,到那时,您将拥有享用不尽的元器件封装了!哈哈~~有点夸张。

f64c3418-c09e-4613-a3e3-0c0287d45fc1.jpg


TROUBLE SIXGenerating Artwork时,能不能简化其步骤?

SOLUTION之前在做一个板子,投出去后,PCB生产厂家反馈回一个问题,说是导出的ARTWORK文件有点小问题——有些元器件的VALUE值没有显示出来,如下图所示,

3283f432-6656-4b04-86d5-10c167f409ba.jpg

收到这个问题后笔者立即着手解决。后来发现了一个非常简便的方法,笔者自己也是对此意想不到,无意中发现的,呵呵。具体步骤如下:

Allegro界面环境下,鼠标点击Add,选择其中的Text选项,Then,把ClassSubclass分别设置为Component ValueAssembly_Top(或者Assembly_Bottom),再点击所要添加VALUE值的相应Symbol,输入具体值就完事了。

其实这种方法可以有多方面的应用场合,尤其是ARTWORK文件生成。也许还有别的SOLUTIONS,但是按这种方法修改ARTWORK信息的话,应该是最简便的了。


小结:在使用Cadence16.2画板子的过程中确实遇到了比较多的问题,大部分的问题笔者都已经有效地解决了。由于文章篇幅所限,很多基础性的东西都没做涉及,只是针对软件的使用方法选取了其中6个离散的问题作了阐述,并没有涉及EMC相关的问题。今后有时间笔者将再针对PCB板级设计以及EMC方面的东西,写成博文和网友分享。



ZHOUNACHU

2011-02-25


文章评论4条评论)

登录后参与讨论

用户1528479 2011-4-11 09:24

to jr9910: (1)关于这个问题,可以这样操作:先调整原理图中PIN HEADER管脚相对应的网络标号的顺序,然后生成网表,再导入到PCB中,观察飞线的情况,若还不满意飞线的简化程度,可以再次回到原理中修改PIN HEADER管脚相对应网络标号的顺序,直到PCB中飞线的情况已经达到非常简化的效果,这样布线就相对来说方便多了; (2)这一切操作的前提是:Pin Header中的PIN引脚是可以任意顺序的(或者是局部任意顺序),否则就不能这么操作,,

用户1376870 2011-4-9 23:42

TROUBLE FOUR:如何简化布局、布线的复杂度?这个问题理解不是很清楚,能否给详细解释一下?

用户181324 2011-4-3 16:33

期待后续

asus119_412419641 2011-3-17 09:44

呵呵,继续关注!期待博主的后续博文!
相关推荐阅读
用户1528479 2011-04-12 21:50
设计第一个六层板所得到的一个深刻体会
        今天中午,由于确实有点困,于是乎仰躺在座椅上眯了半个小时的眼,睡眼朦胧中,好消息随即到来——我的第一个六层板从深圳寄到长沙了!而且元器件都已经由深圳那边的人焊接好了,拆开包装袋一看,简...
用户1528479 2011-03-25 15:28
DDR2 SDRAM×32布局、布线经验谈
最近忙于一块以CycloneIII为核心主控芯片的六层板设计,开发环境是Capture+Allegro+CAM350,从原理图修改到PCB的布局、布线这整个过程中我遇到了相当多的问题,值得庆幸的是...
用户1528479 2011-03-25 13:30
DDR2 SDRAM×32布局、布线经验谈
DDR2 SDRAM×32布局、布线经验谈最近忙于一块以CycloneIII为核心主控芯片的六层板设计,开发环境是Capture+Allegro+CAM350,从原理图修改到PCB的布局、布线这整个过...
用户1528479 2011-02-27 19:48
使用Cadence16.2过程中遇到的一些问题(附解惑方法)
使用Cadence16.2过程中遇到的一些问题(附解惑方法) 很久没有写博文了!确实有点过意不去。最近两个多月以来,由于公司的需要,我不得不学习Cadence16.2的使用方法——用它来画高速板子...
用户1528479 2011-02-12 09:15
数字旋转编码开关的原理及使用方法
在电子产品设计中,经常会用到旋转编码开关,比如数码电位器等,它的英文名翻译过来就是Rotary Encoder Switch。在写这个元件的驱动程序之前,我google、baidu了一些它的使用说明资...
我要评论
4
23
关闭 站长推荐上一条 /2 下一条