|
EDA365欢迎您!
您需要 登录 才可以下载或查看,没有帐号?注册
x
1、在orcad中画好模块的原理图,设定好封装,做好drc,做好元件编号。
6 v% Z% r2 R6 P2、检查元件属性是否设为current properties,其它设定可能出错。 ; k% Q. F- A% V6 T. B2 C6 {
2、在annotate-->allegro reuse中,选中generate reuse module,renumber design for using modules,选中unconditional,其它不选。 2 ?2 F8 h0 H- R: y8 u
3、生成netlist. " B5 m- G! ~5 p. d5 t; N
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步。 ) ]9 j/ A+ v$ p4 ~4 f6 r
5、在orcad中back annotate,之后回到第2步。 9 a/ M/ D4 b8 q" D7 ]2 t0 {
6、模块制作完成。 ! h/ R( U: z- Y' W3 `
使用生成的模块 : l$ N6 T) Z3 x
1、 在新的orcad设计中,选place-->herarhical block,reference中填入BLK?(注意,这里使用BLK是为了与原理图中的U?R?C?区别,保证BLK这个名字专用于moduel,不然 在做完allegro后,rename 时,导回到orcad中出问题。) 2 @0 i, {0 F3 `+ T1 C, W
在implementation type中选schematic view,在implementtation name中填入先前模块的页名称,在path and file - P9 F" u9 Y9 W$ ~6 V7 M; G, B/ X
name中选择相应的dsn文件,之后在你的原理图中出现一个block.
1 U% H- I# ^1 u$ f2 y4 {2、继续其它设计,之后在annotate-->packageing中,选中reset part name to "?",同时选中update occurrences,执行一下,将所有的元件
9 V) |9 P8 Y# P3 R+ R0 N(包括module的name改为?),在annotate-->allegro reuse中,选中 renumber design for using modules,选中incremental,选中do not $ X; |( z# Z! t4 Y8 E4 s4 ^# U' r) ]
change the page number,选中select modules to mark for框里的内容。其它不选。 6 Z7 O; Q' ]& H6 W( g$ o. \6 y% P
3、drc后,出netlist.
$ B$ F( }# b+ k8 U* H4 {; B: @( e- H4、导入到allegro后,palce-->manually place,选mudule instances,将module放入。注意一下mdd文件路径的设定,不正确会找不到mdd 文件的。 3 k/ `, L* A; G; }" J2 H9 ]) [
5、在allegro中布好线后,可以rename到arcad中,与正常设计无区别。 $ O4 s" {+ H7 d. T1 F9 s* s, t
6、over. ) O) P" f/ K* X5 R
做reuse时的几个注意事项: " V: {0 Y6 j2 t" e+ U9 z- K( W
1:当reuse模块已经放在电路中使用,重新修改reuse模块的port口后,在使用的原理中右击这个模块,选synchronize up,则实现修改的同步。 ; p, o+ E/ m5 Z7 i
2:在reuse模块中,不能使用room属性,不然可能与使用reuse的电路图混淆。
* r; ~+ n8 b0 _/ d. ?" X) I5 c4 j3: reuse模块中不能使用全局变量,特别是电源和地,使用port口传递数据。
2 D* W+ {5 x% C4 y. U$ r4: reuse模块内部修改后,只要port口没有变,则在使用它的原理图不用同步。
7 J7 d3 i% v. z1 L; z6 w" _* H. a5: 做好的模块文件用在pcb中后,若需要修改这部分文件,在修改完成后,在原pcb中使用update symbol功能,选相应的moddle,之后更新就行了,注意生成mdd文件时,原点的选择,这然更新后一些线会错位。
: Y) [4 w2 ~: o; ^4 ]& [6:当导入到allegro的模块出现dummy net的错误时,怎么办?
' P6 O: O. j \, T: F+ |% F出 错的可能原因是由于模块的orcad文件造成的,可能是对原始的orcad取一部分进行修改,这些元件带有原来文件的一些属性。将相关orcad文件的所 有元件和连线copy到一个新的页内,将当前页的内容删除,从刚才copy到新页的内容copy回来,这时看元件的属性时,没有黄色的部分,按正常步骤重 新生成mdd文件,在调用这个模块的orcad文件中,重新编一次元件编号,生成网表,问题解决。 7 b9 @8 j( ]5 c( m3 d
7:当含有reuse的设计导入到allegro并布线完成,若重新修改原理图,比如换一个10pin的IDC插座到16pin,不能用annotate-->allegro reuse命令,不然生成的网表会导入到allegro中会出错,不知是什么原因?
) g4 t% u8 n" z7 @& C: T答: 在原理图设计中,当使用reset to ?后,使用annotate-->allegro reuse命令,将netlist导出到allegro后,不能再使用使用reset to ?,新增的元件使用increase功能,不要将所有的元件reset to ?,不然会出错。 |
|