当前位置:首页 > EDA > 电子设计自动化
[导读]当今IT产业的发展日新月异,对硬件设备的要求也越来越高,硬件设计师们面临如何设计高速高密度PCB的难题。常言道,工欲善其事,必先利其器,这也是越来越多的设计师放弃低端的PCB设计工具,进而选择Cadence等公司提供

当今IT产业的发展日新月异,对硬件设备的要求也越来越高,硬件设计师们面临如何设计高速高密度PCB的难题。常言道,工欲善其事,必先利其器,这也是越来越多的设计师放弃低端的PCB设计工具,进而选择Cadence等公司提供的高性能PCB EDA软件的原因。

但是这种变革必然会带来这样或那样的问题。由于接触和使用较早等原因,国内的Protel用户为数众多,他们在选择Cadence高速PCB解决方案的同时,都面临着如何将手头的Protel设计移植到Cadence PCB设计软件中的问题。

在这个过程当中碰到的问题大致可分为两种:一是设计不很复杂,设计师只想借助Cadence CCT的强大自动布线功能完成布线工作;二是设计复杂,设计师需要借助信噪分析工具来对设计进行信噪仿真,设置线网的布线拓扑结构等工作。

对于第一种情况,要做的转化工作比较简单,可以使用Protel或Cadence提供的Protel到CCT的转换工具来完成这一工作。对于第二种情况,要做的工作相对复杂一些,下面将这种转化的方法作一简单的介绍。

Cadence信噪分析工具的分析对象是Cadence Allegro的brd文件,而Allegro可以读入合乎其要求的第三方网表,Protel输出的Telexis格式的网表满足Allegro对第三方网表的要求,这样就可以将Protel文件注入Allegro。

这里有两点请读者注意。首先,Allegro第三方网表在$PACKAGE段不允许有“.”;其次,在Protel中,我们用BasName[0:N]的形式表示总线,用BasName[x]表示总线中的一根信号,Allegro第三方网表中总线中的一根信号的表示形式为Bas NameX,读者可以通过直接修改Protel输出的Telexis网表的方法解决这些问题。

Allegro在注入第三方网表时还需要每种类型器件的设备描述文件Device.txt文件,它的格式如下:

Package: package type

Class: classtype

Pincount: total pinnumber

Pinused: ...

其中常用的是PACKAGE,CLASS,PINCOUNT这几项。PACKAGE描述了器件的封装,但Allegro在注入网表时会用网表中的PACKAGE项而忽略设备描述文件中的这一项。CLASS确定器件的类型,以便信噪分折,Cadence将器件分为IC,IO,DISCRETE三类。PINCOUNT说明器件的管脚数目。对于大多数器件,Device.txt文件中包含有这三项就足够了。

有了第三方网表和设备描述文件,我们就可以将Protel中原理图设计以网表的形式代入到Cadence PCB设计软件中,接下来,设计师就可以借助Cadence PCB软件在高速高密度PCB设计方面的强大功能完成自己的设计。

如果已经在Protel作了PCB布局的工作,Allegro的script功能可以将Protcl中的布局在Allegro中重现出来。在Protel中,设计师可以输出一个Place & Pick文件,这个文件中包含了每个器件的位置、旋转角度和放在PCB顶层还是底层等信息,可以通过这个文件很方便的生成一个Allegro的script文件,在Allegro中执行这个script就能够重现Protel中的布局了,下面给出了完成Place & Pick文件到Allegro Script文件转化的C++代码,笔者使用这段代码,仅用了数分钟就将一个用户有800多个器件的PCB板布局在Allegro重现出来。

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)) ;

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);

以上简单介绍了Protel到Allegro转化的方法,希望能对读者的设计工作有所帮助。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在电子系统中,电源如同人体的心脏,为各个元器件提供持续稳定的能量。而电源系统电流的合理分配,更是决定了整个系统能否稳定、高效运行的关键因素。不合理的电流分配,可能导致某些元器件供电不足,无法正常工作;也可能使部分器件电流...

关键字: 电源系统 器件 电流

氮化镓(GaN)作为第三代半导体材料的杰出代表,凭借其宽禁带宽度、高击穿电压、高热导率、高电子饱和漂移速度等卓越特性,在光电子、电力电子、射频微波等诸多领域展现出了巨大的应用潜力。然而,如同任何新兴技术一样,氮化镓器件在...

关键字: 氮化镓 半导体 器件

在现代电子设备中,蜂鸣器作为一种能够发出声音信号的器件,被广泛应用于各种领域,如电子玩具、报警器、电子设备的提示音等。其中,有源压电式蜂鸣器以其只需接上额定直流电压即可发声的特点,受到了工程师们的青睐。那么,有源压电式蜂...

关键字: 蜂鸣器 器件 直流电压

光隔离器件是一种只允许光沿一个方向通过而在相反方向阻挡光通过的光无源器件。它的作用是防止光路中由于各种原因产生的后向传输光对光源以及光路系统产生的不良影响。

关键字: 光隔离 器件

上海2024年11月6日 /美通社/ -- 在全球新质生产力蓬勃发展、全力迈向可持续发展的时代浪潮下,制造业作为减少能源消耗与碳排放的关键"主战场",绿色低碳转型对于实现全球碳中和目标至关重要。构建清...

关键字: 器件 欧姆龙 高速通信 新能源

在半导体产业的快速发展中,碳化硅(SiC)作为一种新型的宽禁带半导体材料,正逐步成为功率半导体行业的重要发展方向。碳化硅功率器件以其耐高温、耐高压、高频、大功率和低能耗等优良特性,在新能源汽车、光伏发电、轨道交通、智能电...

关键字: 半导体 碳化硅 器件

在实际的应用电路中,处理瞬时脉冲对器件损害的最好办法,就是将瞬时电流从敏感器件引开。为达到这一目的,将TVS在线路板上与被保护线路并联。

关键字: 瞬时脉冲 器件 电流

MOS管,即金属-氧化物半导体场效应晶体管,是电子学中常用的一种半导体器件。它具有高频率、低噪声、高输入阻抗等特点,被广泛应用于各种电子设备和系统中。本文将详细介绍MOS管的作用。

关键字: 半导体 场效应晶体管 器件

在下述的内容中,小编将会对Altium Designer软件的相关消息予以报道,如果Altium Designer软件是您想要了解的焦点之一,不妨和小编共同阅读这篇文章哦。

关键字: Protel Altium FPGA

厦门2023年9月21日 /美通社/ -- 声学滤波器作为射频前端解决方案关键器件之一,在通信系统的演进中也需要技术的迭代及突破。随着第五代(5G)移动通信技术的广泛推进,现实网络环境频谱复杂度提升。在3GPP发布PC1...

关键字: SAW HP 滤波器 器件
关闭