�(dāng)今IT�(chǎn)�(yè)的發(fā)展日新月異,對硬件設(shè)備的要求也越來越高,硬件�(shè)�(jì)師們面臨如何設(shè)�(jì)高速高密度PCB的難題。常言道,工欲善其事,必先利其器,這也是越來越多的�(shè)�(jì)師放棄低端的PCB�(shè)�(jì)工具,�(jìn)而選擇Cadence等公司提供的高性能PCB EDA軟件的原因�
但是這種變革必然�(huì)帶來這樣或那樣的問題。由于接觸和使用較早等原因,國內(nèi)的PROTEL用戶為數(shù)眾多,他們在選擇Cadence高速PCB解決方案的同�(shí),都面臨著如何將手頭的Protel�(shè)�(jì)移植到Cadence PCB�(shè)�(jì)軟件中的問題�
在這�(gè)過程�(dāng)中碰到的問題大致可分為兩種:
一是設(shè)�(jì)不很�(fù)雜,�(shè)�(jì)師只想借助Cadence CCT的強(qiáng)大自�(dòng)布線功能完成布線工作�
二是�(shè)�(jì)�(fù)雜,�(shè)�(jì)師需要借助信噪分析工具來對�(shè)�(jì)�(jìn)行信噪仿真,�(shè)置線�(wǎng)的布線拓?fù)浣Y(jié)�(gòu)等工作�
一、對于第一種情�,要做的�(zhuǎn)化工作比較簡單,可以使用Protel或Cadence提供的Protel到CCT的轉(zhuǎn)換工具來完成這一工作�
1. Protel 封裝庫的�(zhuǎn)�
長期使用Protel作PCB�(shè)�(jì),我們總�(huì)積累一�(gè)龐大的經(jīng)過實(shí)踐檢�(yàn)的Protel封裝庫,�(dāng)�(shè)�(jì)平臺�(zhuǎn)換時(shí),如何保留這�(gè)封裝庫總是令人頭痛。這里,我們將使用Orcad Layout,和免費(fèi)的Cadence工具Layout2ALLEGRO來完成這項(xiàng)工作�
1) 在Protel中將PCB封裝放置到一張空的PCB中,并將這�(gè)PCB文件用Protel PCB 2.8 ASCII的格式輸出出�;
2) 使用Orcad Layout�(dǎo)入這�(gè)Protel PCB 2.8 ASCII文件;
3) 使用Layout2allegro將生成的Layout MAX文件�(zhuǎn)化為
4) 接下來,我們使用Allegro的Export功能將封裝庫,焊盤庫輸出出來,就完成了Protel封裝庫到Allegro�(zhuǎn)化�
2. Protel PCB到Allegro的轉(zhuǎn)�
有了前面兩步的基�(chǔ),我們就可以�(jìn)行Protel PCB到Allegro的轉(zhuǎn)化了。這�(gè)�(zhuǎn)化過程更確切的說是一�(gè)�(shè)�(jì)重現(xiàn)過程,我們將在Allegro中重�(xiàn)Protel PCB的布局和布線�
� protel啟動(dòng)畫面
1) 將第二步Capture生成的Allegro格式的網(wǎng)表傳遞到Allegro BRD中,作為我們重�(xiàn)工作的起�(diǎn)�
2) 首先,我們要重現(xiàn)器件布局。在Protel中輸出Place & Pick文件,這�(gè)文件中包含了完整的器件位置,旋轉(zhuǎn)角度和放置層的信息。我們通過簡單的手工修改,就可以將它轉(zhuǎn)化為Allegro的Placement 文件。在Allegro中導(dǎo)入這�(gè)Placement文件,我們就可以得到布局了�
3) 布線信息的恢�(fù),要使用Specctra作為橋梁。首先,從Protel中輸出包含布線信息的Specctra DSN文件。對于這�(gè)DSN文件我們要注意以下2�(diǎn)�
4) Protel中的層命名與Allegro中有所區(qū)別,要注意使用文本編輯器作適�(dāng)?shù)男薷模鏟rotel中頂層底層分別為Toplayer和Bottomlayer,而在Allegro中這兩層曾稱為TOP和BOTTOM;
5) 注意在Specctra中查看過孔的定義,并添加到Allegro的規(guī)則中。在allegro中定義過孔從Specctra中輸出布線信息,可以使用 session, wires, 和route文件,建議使用route文件,然后將布線信息�(dǎo)入到我們以及重�(xiàn)布局的Allegro PCB中,就完成了我們從Protel PCB到Allegro BRD的轉(zhuǎn)化工作�
� ALLEGRO啟動(dòng)畫面
3. PROTEL 原理圖到Cadence Design Systems, Inc. Capture CIS
在Protel原理圖的�(zhuǎn)化上我們可以利用Protel DXP SP2的新功能來實(shí)�(xiàn)。通過這一功能我們可以直接將Protel的原理圖�(zhuǎn)化到Capture CIS中�
需要注意的�
1) Protel DXP在輸出Capture DSN文件的時(shí)候,沒有輸出封裝信息,在Capture中我們會(huì)看到所以元件的PCB Footprint屬性都是空的。這就需要我們手工為元件添加封裝信息,這也是整�(gè)�(zhuǎn)化過程中最耗時(shí)的工作。在添加封裝信息�(shí)要注意保持與Protel PCB�(shè)�(jì)中的封裝一致性,以及Cadence在封裝命名上的限制。例如一�(gè)電阻,在Protel中的封裝為AXIAL0.4,在后面介紹的封裝庫的轉(zhuǎn)化中,將被修改為AXIAL04,這是由于Cadence不允許封裝名中出�(xiàn)“.”;再比如DB9接插件的封裝在Protel中為DB9RA/F,將�(huì)被改為DB9RAF。因此我們在Capture中給元件添加封裝信息�(shí),要考慮到這些命名的改變�
2) 一些器件的隱藏管腳或管腳號在轉(zhuǎn)化過程中�(huì)丟失,需要在Capture中使用庫編輯的方法添加上來。通常易丟失管腳號的器件時(shí)電阻
3) 在層次化�(shè)�(jì)中,模塊之間連接的總線需要在Capture中命名。即使在Protel中已�(jīng)在父�(shè)�(jì)中對這樣的總線命名了,還是要在Capture中重新來過,以確保連接�
4) 對于一�(gè)封裝中有多�(gè)部分的器件,要注意修改其位號。例如一�(gè)74ls00,在protel中使用其中的兩�(gè)門,位號為U8A,U8B。這樣的信息在�(zhuǎn)化中�(huì)丟失,需要重新添加�
基本上注意到上述幾點(diǎn),借助Protel DXP,我們就可以將Protel的原理圖�(zhuǎn)化到Capture中。�(jìn)一步推廣,這也為現(xiàn)有的Protel原理圖符號庫�(zhuǎn)化到Capture提供了一�(gè)途徑�
二、對于第二種情況,下面將這種�(zhuǎn)化的方法作一簡單的介紹�
Cadence信噪分析工具的分析對象是Cadence ALLEGRO的brd文件,而Allegro可以讀入合乎其要求的第三方�(wǎng)表,Protel輸出的Telexis格式的網(wǎng)表滿足Allegro對第三方�(wǎng)表的要求,這樣就可以將Protel文件注入Allegro�
這里有兩�(diǎn)請讀者注意。首先,Allegro第三方網(wǎng)表在$PACKAGE段不允許�“.”;其次,在Protel中,我們用BasName[0:N]的形式表示總線,用BasName[x]表示總線中的一根信號,Allegro第三方網(wǎng)表中總線中的一根信號的表示形式為Bas NameX,讀者可以通過直接修改Protel輸出的Telexis�(wǎng)表的方法解決這些問題�
Allegro在注入第三方�(wǎng)表時(shí)還需要每種類型器件的�(shè)備描述文件Device.txt文件�它的格式如下�
Package: package type
Class: classtype
Pincount: total pinnumber
Pinused: ...
其中常用的是PACKAGE,CLASS,PINCOUNT這幾�(xiàng)。PACKAGE描述了器件的封裝,但Allegro在注入網(wǎng)表時(shí)�(huì)用網(wǎng)表中� PACKAGE�(xiàng)而忽略設(shè)備描述文件中的這一�(xiàng)。CLASS確定器件的類型,以便信噪分折,Cadence將器件分為IC,IO,DISCRETE三類� PINCOUNT說明器件的管腳數(shù)目。對于大多數(shù)器件,Device.txt文件中包含有這三�(xiàng)就足夠了�
有了第三方網(wǎng)表和�(shè)備描述文件,我們就可以將Protel中原理圖�(shè)�(jì)以網(wǎng)表的形式代入到Cadence PCB�(shè)�(jì)軟件中,接下來,�(shè)�(jì)師就可以借助Cadence PCB軟件在高速高密度PCB�(shè)�(jì)方面的強(qiáng)大功能完成自己的�(shè)�(jì)�
如果已經(jīng)在Protel作了PCB布局的工作,Allegro的script功能可以將Protcl中的布局在Allegro中重�(xiàn)出來。在 Protel中,�(shè)�(jì)師可以輸出一�(gè)Place & Pick文件,這�(gè)文件中包含了每�(gè)器件的位置、旋�(zhuǎn)角度和放在PCB頂層還是底層等信息,可以通過這�(gè)文件很方便的生成一�(gè)Allegro� script文件,在Allegro中執(zhí)行這�(gè)script就能夠重�(xiàn)Protel中的布局了,下面給出了完成Place & Pick文件到Allegro Script文件�(zhuǎn)化的C++代碼,筆者使用這段代碼,僅用了�(shù)分鐘就將一�(gè)用戶�800多�(gè)器件的PCB板布局在Allegro重現(xiàn)出來�
�(guān)注我�
公眾號:china_tp
微信名稱:亞威資�
顯示行業(yè)頂級新媒�
掃一掃即可關(guān)注我�