EDA軟件中allegro的模塊復用非常實用,可能通常我們的PCB工程師還用的不多,但它在某些場合下還是很有用的,一個是它能減少我們重復性的工作,可以重用的原理圖和PCB我們就不需要重復設計了,也就是REUSE。
以下給大家講解詳細操作:
1、在orcad中畫好模塊的原理圖,設定好封裝,做好drc,做好元件編號。
2、檢查元件屬性是否設為current properties,其它設定可能出錯。
3、在annotate-->allegro reuse中,選中generate reuse module,renumber design for using modules,選中unconditional,其它不選。
4、生成netlist.
5、將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步。
6、在orcad中back annotate,之后回到第2步。
7、模塊制作完成。
使用生成的模塊
1、在新的orcad設計中,選place-->herarhical block,reference中填入BLK?(注意,這里使用BLK是為了與原理圖中的U?R?C?區(qū)別,保證BLK這個名字專用于moduel,不然在做完allegro后,rename 時,導回到orcad中出問題。)在implementation type中選schematic view,在implementtation name中填入先前模塊的頁名稱,在path and file name中選擇相應的dsn文件,之后在你的原理圖中出現(xiàn)一個block.
2、繼續(xù)其它設計,之后在annotate-->packageing中,選中reset part name to "?",同時選中update occurrences,執(zhí)行一下,將所有的元件(包括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中,與正常設計無區(qū)別。
6、over.
做reuse時的幾個注意事項:
1:當reuse模塊已經放在電路中使用,重新修改reuse模塊的port口后,在使用的原理中右擊這個模塊,選synchronize up,則實現(xiàn)修改的同步。
2:在reuse模塊中,不能使用room屬性,不然可能與使用reuse的電路圖混淆。
3: reuse模塊中不能使用全局變量,特別是電源和地,使用port口傳遞數(shù)據(jù)。
4: reuse模塊內部修改后,只要port口沒有變,則在使用它的原理圖不用同步。
5: 做好的模塊文件用在pcb中后,若需要修改這部分文件,在修改完成后,在原pcb中使用update symbol功能,選相應的moddle,之后更新就行了,注意生成mdd文件時,原點的選擇,這然更新后一些線會錯位。
6:當導入到allegro的模塊出現(xiàn)dummy net的錯誤時,怎么辦?
出錯的可能原因是由于模塊的orcad文件造成的,可能是對原始的orcad取一部分進行修改,這些元件帶有原來文件的一些屬性。將相關orcad文件的所有元件和連線copy到一個新的頁內,將當前頁的內容刪除,從剛才copy到新頁的內容copy回來,這時看元件的屬性時,沒有黃色的部分,按正常步驟重新生成mdd文件,在調用這個模塊的orcad文件中,重新編一次元件編號,生成網(wǎng)表,問題解決。
7:當含有reuse的設計導入到allegro并布線完成,若重新修改原理圖,比如換一個10pin的IDC插座到16pin,不能用annotate-->allegro reuse命令,不然生成的網(wǎng)表會導入到allegro中會出錯,不知是什么原因?
答:在原理圖設計中,當使用reset to ?后,使用annotate-->allegro reuse命令,將netlist導出到allegro后,不能再使用使用reset to ?,新增的元件使用increase功能,不要將所有的元件reset to ?,不然會出錯。
-
PCB設計
+關注
關注
394文章
4668瀏覽量
85138 -
eda
+關注
關注
71文章
2685瀏覽量
172733 -
PCB工程師
+關注
關注
1文章
22瀏覽量
7750 -
可制造性設計
+關注
關注
10文章
2065瀏覽量
15442 -
華秋DFM
+關注
關注
20文章
3492瀏覽量
4345
發(fā)布評論請先 登錄
相關推薦
評論