cadence多通道布局总结精要知识点

  • 格式:pdf
  • 大小:328.59 KB
  • 文档页数:8

一、cadence多通道布局布线(使用模块复用的方式实现)
步骤与关键点:
1、模块生成
module生成
1、在orcad中画好模块的原理图,设定好封装,做好drc,做好元件编号。

2、检查元件属性是否设为current properties,其它设定可能出错。

2、在annotate-->allegro reuse中,选中generate reuse module,renumber design for
using modules,选中unconditional,其它不选。

3、生成netlist.
4、将netlist导入到allegro,布线,布局,若无rename等需要与orcad交互的动作,选tools-->creat modules生成mdd文件.mdd文件的文件名一定要定义为:DSN NAME_ROOT SCHEMATIC NAME.mdd。

DSN NAME为你定义的orcad中的dsn文件名,ROOT SCHEMATIC NAME是这个文件中的页名字。

这里若定义不对,在reuse时找不到mdd文件。

之后跳到第6步。

5、在allegro中export logic,然后在orcad中back annotate,并再次drc。

这一步很关键。

??(实际操作时该步骤未使用)
6、模块制作完成。

使用生成的模块
1、在新的orcad设计中,选place-->herarhical
block,reference中填入BLK?(注意,这里使用BLK是为了与原理图中的U?R?C?区别,保证BLK这个名字专用于moduel,不然在做完allegro后,rename 时,导回到orcad中出问题。

) 在implementation type中选schematic view,在implementtation name中填入先前模块的页名称,在path and file name中选择相应的dsn文件,之后在你的原理图中出现一个block.(实质就是层次原理图的放置方法,只不过需要在原理图中新增层模块框,以免PCB中放入新的模块时无电路与之对应,则线条line会报错)
2、继续其它设计,之后在annotate-->packageing中,选中reset part name to "?",同时选中update occurrences,执行一下,将所有的元件(包括module的name改为?),在annotate-->allegro reuse中,选中renumber design for using modules,选中incremental,选中do not change the page number,选中select modules to mark for框里的内容。

其它不选。

3、drc后,出netlist.
4、导入到allegro后,palce-->manually place,选mudule,instances,将module放入。

注意一下mdd文件路径的设定,不正确会找不到mdd 文件的。

5、在allegro中布好线后,可以rename到arcad中,与正常设计无区别。

6、over.
做reuse时的几个注意事项:
A 如果是多层板的reuse,那么因为生成的module是多层的,所以新的brd在module 放入之前最好也设置成和module一样的层及plane网络设定。

plane不一定要全部设,但像VCC gnd最好设定。

B 如果绘制大规模fpga\dsp\arm\powerpc等的电路,芯片symbol package往往含有多个part,这在reuse时会产生问题。

建议在生成module部分在进行sch设定时,给多part 的symbol package再添加一个属性,例如wzh,然后同一个芯片的package的这个值赋予相同值。

在后续的annotate/pcb editor reuse/property combine 选型中加入{wzh}。

1:当reuse模块已经放在电路中使用,重新修改reuse模块的port口后,在使用的原理中右击这个模块,选synchronize up,则实现修改的同步。

2:在reuse模块中,不能使用room属性,不然可能与使用reuse的电路图混淆。

3: reuse模块中不能使用全局变量,特别是电源和地,使用port口传递数据。

4: reuse模块内部修改后,只要port口没有变,则在使用它的原理图不用同步。

5: 做好的模块文件用在pcb中后,若需要修改这部分文件,在修改完成后,在原pcb中使用update symbol功能,选相应的moddle,之后更新就行了,注意生成mdd文件时,原点的选择,这然更新后一些线会错位。

6:当导入到allegro的模块出现dummy net的错误时,怎么办?
出错的可能原因是由于模块的orcad文件造成的,可能是对原始的orcad取一部分进行修改,这些元件带有原来文件的一些属性。

将相关orcad文件的所有元件和连线copy到一个新的页内,将当前页的内容删除,从刚才copy到新页的内容copy回来,这时看元件的属性
时,没有黄色的部分,按正常步骤重新生成mdd文件,在调用这个模块的orcad文件中,重新编一次元件编号,生成网表,问题解决。

7:当含有reuse的设计导入到allegro并布线完成,若重新修改原理图,比如换一个10pin 的IDC插座到16pin,不能用annotate-->allegro reuse命令,不然生成的网表会导入到allegro 中会出错,不知是什么原因?
答:在原理图设计中,当使用reset to ?后,使用annotate-->allegro reuse命令,将netlist 导出到allegro后,不能再使用使用reset to ?,新增的元件使用increase功能,不要将所有的元件reset to ?,不然会出错。

====================================================================== =============
建议寻找下面的文献阅读。

“Stp_cdnlivesv2006_patrick_modules.pdf”
名称:Using Modules in Allegro PCB Editor Design Reuse for Performance
/search?hl=zh-CN&source=hp&q=Stp_cdnlivesv2006_patrick_module s&btnG=Google+搜索&aq=f&aqi=&aql=&oq=
二、Allergro自定义常用快捷键
1、直接在命令行中输入如下命令:
(1)、定义旋转:funckey r iangle 90
(2)、移动:funckey m move
(3)、镜像:funckey f mirror
上述操作也可以在命令行中输入alias调出env菜单后在该文件中加入上述内容可以达到一样的效果。

2、可以使用alias命令将move等常用快捷键定义为别名,如:
alias m move 此时输入m时相当于输入了move关键字,需要按回车后才能被执行,相
当于仅仅起到替代的作用,而funckey则是直接定义快捷键,一旦定义后不需按回车即可执行操作。

三、层次原理图绘制方法
9、层次原理图中的跳转。