掃描二維碼
隨時(shí)隨地手機(jī)看文章
當(dāng)今IT產(chǎn)業(yè)的發(fā)展日新月異,對(duì)硬件設(shè)備的要求也越來(lái)越高,硬件設(shè)計(jì)師們面臨如何設(shè)計(jì)高速高密度PCB的難題。常言道,工欲善其事,必先利其器,這也是越來(lái)越多的設(shè)計(jì)師放棄低端的PCB設(shè)計(jì)工具,進(jìn)而選擇Cadence等公司提供的高性能PCB EDA軟件的原因。
但是這種變革必然會(huì)帶來(lái)這樣或那樣的問(wèn)題。由于接觸和使用較早等原因,國(guó)內(nèi)的PROTEL用戶為數(shù)眾多,他們?cè)谶x擇Cadence高速PCB解決方案的同時(shí),都面臨著如何將手頭的Protel設(shè)計(jì)移植到Cadence PCB設(shè)計(jì)軟件中的問(wèn)題。
在這個(gè)過(guò)程當(dāng)中碰到的問(wèn)題大致可分為兩種:一是設(shè)計(jì)不很復(fù)雜,設(shè)計(jì)師只想借助Cadence CCT的強(qiáng)大自動(dòng)布線功能完成布線工作;二是設(shè)計(jì)復(fù)雜,設(shè)計(jì)師需要借助信噪分析工具來(lái)對(duì)設(shè)計(jì)進(jìn)行信噪仿真,設(shè)置線網(wǎng)的布線拓?fù)浣Y(jié)構(gòu)等工作。
對(duì)于第一種情況,要做的轉(zhuǎn)化工作比較簡(jiǎn)單,可以使用Protel或Cadence提供的Protel到CCT的轉(zhuǎn)換工具來(lái)完成這一工作。對(duì)于第二種情況,要做的工作相對(duì)復(fù)雜一些,下面將這種轉(zhuǎn)化的方法作一簡(jiǎn)單的介紹。
Cadence信噪分析工具的分析對(duì)象是Cadence ALLEGRO的brd文件,而Allegro可以讀入合乎其要求的第三方網(wǎng)表,Protel輸出的Telexis格式的網(wǎng)表滿足Allegro對(duì)第三方網(wǎng)表的要求,這樣就可以將Protel文件注入Allegro。
這里有兩點(diǎn)請(qǐng)讀者注意。首先,Allegro第三方網(wǎng)表在$PACKAGE段不允許有“.”;其次,在Protel中,我們用BasName[0:N]的形式表示總線,用BasName[x]表示總線中的一根信號(hào),Allegro第三方網(wǎng)表中總線中的一根信號(hào)的表示形式為Bas NameX,讀者可以通過(guò)直接修改Protel輸出的Telexis網(wǎng)表的方法解決這些問(wèn)題。
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說(shuō)明器件的管腳數(shù)目。對(duì)于大多數(shù)器件,Device.txt文件中包含有這三項(xiàng)就足夠了。
有了第三方網(wǎng)表和設(shè)備描述文件,我們就可以將Protel中原理圖設(shè)計(jì)以網(wǎng)表的形式代入到Cadence PCB設(shè)計(jì)軟件中,接下來(lái),設(shè)計(jì)師就可以借助Cadence PCB軟件在高速高密度PCB設(shè)計(jì)方面的強(qiáng)大功能完成自己的設(shè)計(jì)。
如果已經(jīng)在Protel作了PCB布局的工作,Allegro的script功能可以將Protcl中的布局在Allegro中重現(xiàn)出來(lái)。在 Protel中,設(shè)計(jì)師可以輸出一個(gè)Place & Pick文件,這個(gè)文件中包含了每個(gè)器件的位置、旋轉(zhuǎn)角度和放在PCB頂層還是底層等信息,可以通過(guò)這個(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)出來(lái)。
FILE *fp1, *fp2;
::AfxMessageBox("hello");
fp1=fopen("pick.txt", "rt");
if (fp1==NULL) ::AfxMessageBox("Can not open the file!!!");
fp2=fopen("place.txt","wt");
if (fp2==NULL) ::AfxMessageBox("Can not create the file!!!");
char refdes[5], Pattern[5];
float midx,midy,refx,refy,padx,pady,rotation;
char tb[1];
char tmp='"';
fprintf(fp2,"%sn", "# Allegro script");
fprintf(fp2,"%sn", "version 13.6");
fprintf(fp2,"%sn", "place refdes");
while (!feof(fp1)) {
fscanf(fp1,"%s", refdes);
fscanf(fp1,"%s", Pattern);
fscanf(fp1,"%f", &midx);
fscanf(fp1,"%f", &midy);
fscanf(fp1,"%f", &refx);
fscanf(fp1,"%f", &refy);
fscanf(fp1,"%f", &padx);
fscanf(fp1,"%f", &pady);
fscanf(fp1,"%s", tb);
fscanf(fp1,"%f", &rotation);
fprintf(fp2, "fillin %c%s%c n",tmp,refdes,tmp);
if (rotation!=0) {
fprintf(fp2, "rotaten");
fprintf(fp2, "iangle %fn", rotation);
};
char yy="tb"[0];
if (yy!='T') fprintf(fp2, "pop mirrorn");
fprintf(fp2, "pick %f %f n", padx,pady);
fprintf(fp2, "next n");
};
fprintf(fp2, "done");
fclose(fp1);
fclose(fp2);
使用的工具
a) PROTEL DXP SP2
b) Cadence Design Systems, Inc. Capture CIS
c) Cadence Design Systems, Inc. Orcad Layout
d) Cadence Design Systems, Inc. Layout2ALLEGRO
e) Cadence Design Systems, Inc. Allegro
f) Cadence Design Systems, Inc. Specctra
硬件工程師離不開的那些電路設(shè)計(jì)工具,你會(huì)有幾個(gè)呢
關(guān)鍵字: EDA IC設(shè)計(jì)軟件 Protel上篇電路設(shè)計(jì)軟件文章中,小編對(duì)如何將protel 99se電路設(shè)計(jì)軟件的設(shè)計(jì)轉(zhuǎn)換為DXP的PCB項(xiàng)目做了初步講解。本文為下篇,同樣基于該電路設(shè)計(jì)軟件對(duì)此予以介紹。
關(guān)鍵字: 電路設(shè)計(jì)軟件 軟件 Protel為增進(jìn)大家對(duì)電路設(shè)計(jì)軟件以及protel的認(rèn)識(shí),本文將基于該款電路設(shè)計(jì)軟件介紹如何將protel 99se設(shè)計(jì)轉(zhuǎn)化到DXP中的PCB項(xiàng)目。
關(guān)鍵字: 電路設(shè)計(jì)軟件 指數(shù) Protel為繼續(xù)增進(jìn)大家對(duì)電路設(shè)計(jì)軟件的認(rèn)識(shí),本文將基于protel電路設(shè)計(jì)軟件講解如何設(shè)計(jì)高速PCB。
關(guān)鍵字: 電路設(shè)計(jì)軟件 指數(shù) Protel為幫助大家解決電路設(shè)計(jì)軟件難點(diǎn),本文將對(duì)protel電路設(shè)計(jì)軟件中protel轉(zhuǎn)allegro的方法予以介紹。
關(guān)鍵字: Protel 指數(shù) 電路設(shè)計(jì)軟件為增進(jìn)大家對(duì)電路設(shè)計(jì)軟件的了解,本文講對(duì)protel電路設(shè)計(jì)軟件予以介紹,主要內(nèi)容為如何將protel格式的文件轉(zhuǎn)換為autocad格式并打印以及如何設(shè)置打印操作。
關(guān)鍵字: Protel 指數(shù) 電路設(shè)計(jì)軟件為幫助大家使用這款電路設(shè)計(jì)軟件,本文將對(duì)protel相關(guān)難點(diǎn)進(jìn)行解答。如果你對(duì)本文內(nèi)容具有興趣,不妨繼續(xù)往下閱讀哦。
關(guān)鍵字: Protel 指數(shù) 電路設(shè)計(jì)軟件為增進(jìn)大家對(duì)電路設(shè)計(jì)軟件的了解,本文將對(duì)一些protel電路設(shè)計(jì)軟件相關(guān)問(wèn)題加以講解。如果你對(duì)本文內(nèi)容具有興趣,不妨繼續(xù)往下閱讀哦。
關(guān)鍵字: Protel 指數(shù) 電路設(shè)計(jì)軟件