EDA工具层出不穷,目前进入我国并具有广泛影响的EDA软件有:multiSIM7(原EWB的最新版本)、PSPICE、OrCAD、PCAD、Protel、Viewlogic、Mentor、Graphics、Synopsys、LSIIogic、Cadence、MicroSim等等。这些工具都有较强的功能,一般可用于几个方面,例如很多软件都可以进行电路设计与仿真,同进还可以进行PCB自动布局布线,可输出多种网表文件与第三方软件接口。
1.1电子电路设计与仿真工具
我们大家可能都用过试验板或者其他的东西制作过一些电子制做来进行实践。但是有的时候,我们会发现做出来的东西有很多的问题,事先并没有想到,这样一来就浪费了我们的很多时间和物资。而且增加了产品的开发周期和延续了产品的上市时间从而使产品失去市场竞争优势。有没有能够不动用电烙铁试验板就能知道结果的方法呢?结论是有,这就是电路设计与仿真技术。
说到电子电路设计与仿真工具这项技术,就不能不提到美国,不能不提到他们的飞机设计为什么有很高的效率。以前我国定型一个中型飞机的设计,从草案到详细设计到风洞试验再到最后出图到实际投产,整个周期大概要10年。而美国是1年。为什么会有这样大的差距呢?因为美国在设计时大部分采用的是虚拟仿真技术,把多年积累的各项风洞实验参数都输入电脑,然后通过电脑编程编写出一个虚拟环境的软件,并且使它能够自动套用相关公式和调用长期积累后输入电脑的相关经验参数。这样一来,只要把飞机的外形计数据放入这个虚拟的风洞软件中进行试验,哪里不合理有问题就改动那里,直至最佳效果,效率自然高了,最后只要再在实际环境中测试几次找找不足就可以定型了,从他们的波音747到F16都是采用的这种方法。空气动力学方面的数据由资深专家提供,软件开发商是IBM,飞行器设计工程师只需利用仿真软件在计算机平台上进行各种仿真调试工作即可。同样,他们其他的很多东西都是采用了这样类似的方法,从大到小,从复杂到简单,甚至包括设计家具和作曲,只是具体软件内容不同。其实,他们发明第一代计算机时就是这个目的(当初是为了高效率设计大炮和相关炮弹以及其他计算量大的设计)。
电子电路设计与仿真工具包括SPICE/PSPICE;multiSIM7;Matlab;SystemView;MMICADLiveWire、Edison、TinaProBrightSpark等。下面简单介绍前三个软件。
①SPICE(SimulationProgramwithIntegratedCircuitEmphasis):是由美国加州大学推出的电路分析仿真软件,是20世纪80年代世界上应用最广的电路设计软件,1998年被定为美国国家标准。1984年,美国MicroSim公司推出了基于SPICE的微机版PSPICE(Personal-SPICE)。现在用得较多的是PSPICE6.2,可以说在同类产品中,它是功能最为强大的模拟和数字电路混合仿真EDA软件,在国内普遍使用。最新推出了PSPICE9.1版本。它可以进行各种各样的电路仿真、激励建立、温度与噪声分析、模拟控制、波形输出、数据输出、并在同一窗口内同时显示模拟与数字的仿真结果。无论对哪种器件哪些电路进行仿真,都可以得到精确的仿真结果,并可以自行建立元器件及元器件库。
②multiSIM(EWB的最新版本)软件:是InteractiveImageTechnologiesLtd在20世纪末推出的电路仿真软件。其最新版本为multiSIM7,目前普遍使用的是multiSIM2001,相对于其它EDA软件,它具有更加形象直观的人机交互界面,特别是其仪器仪表库中的各仪器仪表与操作真实实验中的实际仪器仪表完全没有两样,但它对模数电路的混合仿真功能却毫不逊色,几乎能够100%地仿真出真实电路的结果,并且它在仪器仪表库中还提供了万用表、信号发生器、瓦特表、双踪示波器(对于multiSIM7还具有四踪示波器)、波特仪(相当实际中的扫频仪)、字信号发生器、逻辑分析仪、逻辑转换仪、失真度分析仪、频谱分析仪、网络分析仪和电压表及电流表等仪器仪表。还提供了我们日常常见的各种建模精确的元器件,比如电阻、电容、电感、三极管、二极管、继电器、可控硅、数码管等等。模拟集成电路方面有各种运算放大器、其他常用集成电路。数字电路方面有74系列集成电路、4000系列集成电路、等等还支持自制元器件。MultiSIM7还具有I-V分析仪(相当于真实环境中的晶体管特性图示仪)和Agilent信号发生器、Agilent万用表、Agilent示波器和动态逻辑平笔等。同时它还能进行VHDL仿真和VerilogHDL仿真。
③MATLAB产品族:它们的一大特性是有众多的面向具体应用的工具箱和仿真块,包含了完整的函数集用来对图像信号处理、控制系统设计、神经网络等特殊应用进行分析和设计。它具有数据采集、报告生成和MATLAB语言编程产生独立C/C++代码等功能。MATLAB产品族具有下列功能:数据分析;数值和符号计算、工程与科学绘图;控制系统设计;数字图像信号处理;财务工程;建模、仿真、原型开发;应用开发;图形用户界面设计等。MATLAB产品族被广泛应用于信号与图像处理、控制系统设计、通讯系统仿真等诸多领域。开放式的结构使MATLAB产品族很容易针对特定的需求进行扩充,从而在不断深化对问题的认识同时,提高自身的竞争力。
1.2PCB设计软件
PCB(Printed-CircuitBoard)设计软件种类很多,如Protel、OrCAD、Viewlogic、PowerPCB、CadencePSD、MentorGraphices的ExpeditionPCB、ZukenCadStart、Winboard/Windraft/Ivex-SPICE、PCBStudio、TANGO、PCBWizard(与LiveWire配套的PCB制作软件包)、ultiBOARD7(与multiSIM2001配套的PCB制作软件包)等等。
目前在我国用得最多当属Protel,下面仅对此软件作一介绍。
Protel是PROTEL(现为Altium)公司在20世纪80年代末推出的CAD工具,是PCB设计者的首选软件。它较早在国内使用,普及率最高,在很多的大、中专院校的电路专业还专门开设Protel课程,几乎所在的电路公司都要用到它。早期的Protel主要作为印刷板自动布线工具使用,其最新版本为ProtelDXP,现在普遍使用的是Protel99SE,它是个完整的全方位电路设计系统,包含了电原理图绘制、模拟电路与数字电路混合信号仿真、多层印刷电路板设计(包含印刷电路板自动布局布线),可编程逻辑器件设计、图表生成、电路表格生成、支持宏操作等功能,并具有Client/Server(客户/服务体系结构),同时还兼容一些其它设计软件的文件格式,如ORCAD、PSPICE、EXCEL等。使用多层印制线路板的自动布线,可实现高密度PCB的100%布通率。Protel软件功能强大(同时具有电路仿真功能和PLD开发功能)、界面友好、使用方便,但它最具代表性的是电路设计和PCB设计。
1.3IC设计软件
IC设计工具很多,其中按市场所占份额排行为Cadence、MentorGraphics和Synopsys。这三家都是ASIC设计领域相当有名的软件供应商。其它公司的软件相对来说使用者较少。中国华大公司也提供ASIC设计软件(熊猫2000);另外近来出名的Avanti公司,是原来在Cadence的几个华人工程师创立的,他们的设计工具可以全面和Cadence公司的工具相抗衡,非常适用于深亚微米的IC设计。下面按用途对IC设计软件作一些介绍。
①设计输入工具
这是任何一种EDA软件必须具备的基本功能。像Cadence的composer,viewlogic的viewdraw,硬件描述语言VHDL、VerilogHDL是主要设计语言,许多设计输入工具都支持HDL(比如说multiSIM等)。另外像Active-HDL和其它的设计输入方法,包括原理和状态机输入方法,设计FPGA/CPLD的工具大都可作为IC设计的输入手段,如Xilinx、Altera等公司提供的开发工具ModelsimFPGA等。
②设计仿真工作
我们使用EDA工具的一个最大好处是可以验证设计是否正确,几乎每个公司的EDA产品都有仿真工具。Verilog-XL、NC-verilog用于Verilog仿真,Leapfrog用于VHDL仿真,AnalogArtist用于模拟电路仿真。Viewlogic的仿真器有:viewsim门级电路仿真器,speedwaveVHDL仿真器,VCS-verilog仿真器。MentorGraphics有其子公司ModelTech出品的VHDL和Verilog双仿真器:ModelSim。Cadence、Synopsys用的是VSS(VHDL仿真器)。现在的趋势是各大EDA公司都逐渐用HDL仿真器作为电路验证的工具。
③综合工具
综合工具可以把HDL变成门级网表。这方面Synopsys工具占有较大的优势,它的DesignCompile是作为一个综合的工业标准,它还有另外一个产品叫BehaviorCompiler,可以提供更高级的综合。
另外最近美国又出了一个软件叫Ambit,据说比Synopsys的软件更有效,可以综合50万门的电路,速度更快。今年初Ambit被Cadence公司收购,为此Cadence放弃了它原来的综合软件Synergy。随着FPGA设计的规模越来越大,各EDA公司又开发了用于FPGA设计的综合软件,比较有名的有:Synopsys的FPGAExpress,Cadence的Synplity,Mentor的Leonardo,这三家的FPGA综合软件占了市场的绝大部分。
④布局和布线
在IC设计的布局布线工具中,Cadence软件是比较强的,它有很多产品,用于标准单元、门阵列已可实现交互布线。最有名的是Cadencespectra,它原来是用于PCB布线的,后来Cadence把它用来作IC的布线。其主要工具有:Cell3,SiliconEnsemble-标准单元布线器;GateEnsemble-门阵列布线器;DesignPlanner-布局工具。其它各EDA软件开发公司也提供各自的布局布线工具。
⑤物理验证工具
物理验证工具包括版图设计工具、版图验证工具、版图提取工具等等。这方面Cadence也是很强的,其Dracula、Virtuso、Vampire等物理工具有很多的使用者。
⑥模拟电路仿真器
前面讲的仿真器主要是针对数字电路的,对于模拟电路的仿真工具,普遍使用SPICE,这是唯一的选择。只不过是选择不同公司的SPICE,像MiceoSim的PSPICE、MetaSoft的HSPICE等等。HSPICE现在被Avanti公司收购了。在众多的SPICE中,HSPICE作为IC设计,其模型多,仿真的精度也高。
1.4 PLD设计工具
PLD(ProgrammableLogicDevice)是一种由用户根据需要而自行构造逻辑功能的数字集成电路。目前主要有两大类型:CPLD(ComplexPLD)和FPGA(FieldProgrammableGateArray)。它们的基本设计方法是借助于EDA软件,用原理图、状态机、布尔表达式、硬件描述语言等方法,生成相应的目标文件,最后用编程器或下载电缆,由目标器件实现。生产PLD的厂家很多,但最有代表性的PLD厂家为Altera、Xilinx和Lattice公司。
PLD的开发工具一般由器件生产厂家提供,但随着器件规模的不断增加,软件的复杂性也随之提高,目前由专门的软件公司与器件生产厂家使用,推出功能强大的设计软件。下面介绍主要器件生产厂家和开发工具。
①ALTERA:20世纪90年代以后发展很快。主要产品有:MAX3000/7000、FELX6K/10K、APEX20K、ACEX1K、Stratix等。其开发工具-MAX+PLUSII是较成功的PLD开发平台,最新又推出了QuartusII开发软件。Altera公司提供较多形式的设计输入手段,绑定第三方VHDL综合工具,如:综合软件FPGAExpress、LeonardSpectrum,仿真软件ModelSim。
②ILINX:FPGA的发明者。产品种类较全,主要有:XC9500/4000、Coolrunner(XPLA3)、Spartan、Vertex等系列,其最大的Vertex-IIPro器件已达到800万门。开发软件为Foundation和ISE。通常来说,在欧洲用Xilinx的人多,在日本和亚太地区用ALTERA的人多,在美国则是平分秋色。全球PLD/FPGA产品60%以上是由Altera和Xilinx提供的。可以讲Altera和Xilinx共同决定了PLD技术的发展方向。
③Lattice-Vantis:Lattice是ISP(In-SystemProgrammability)技术的发明者。ISP技术极大地促进了PLD产品的发展,与ALTERA和XILINX相比,其开发工具比Altera和Xilinx略逊一筹。中小规模PLD比较有特色,大规模PLD的竞争力还不够强(Lattice没有基于查找表技术的大规模FPGA),1999年推出可编程模拟器件,1999年收购Vantis(原AMD子公司),成为第三大可编程逻辑器件供应商。2001年12月收购Agere公司(原Lucent微电子部)的FPGA部门。主要产品有ispLSI2000/5000/8000,MACH4/5。
④ACTEL:反熔丝(一次性烧写)PLD的领导者。由于反熔丝PLD抗辐射、耐高低温、功耗低、速度快,所以在军品和宇航级上有较大优势。ALTERA和XILINX则一般不涉足军品和宇航级市场。
⑤Quicklogic:专业PLD/FPGA公司,以一次性反熔丝工艺为主,在中国地区销售量不大。
⑥Lucent:主要特点是有不少用于通讯领域的专用IP核,但PLD/FPGA不Lucent的主要业务,在中国地区使用的人很少。
⑦ATMEL:中小规模PLD做得不错。ATMEL也做了一些与Altera和Xilinx兼容的片子,但在品质上与原厂家还是有一些差距,在高可靠性产品中使用较少,多用在低端产品上。
⑧ClearLogic:生产与一些著名PLD/FPGA大公司兼容的芯片,这种芯片可将用户的设计一次性固化,不可编程,批量生产时的成本较低。
⑨WSI:生产PSD(单片机可编程外围芯片)产品。这是一种特殊的PLD,如最新的PSD8xx、PSD9xx集成了PLD、EPROM、Flash,并支持ISP(在线编程),集成度高,主要用于配合单片机工作。
顺便提一下:PLD(可编程逻辑器件)是一种可以完全替代74系列及GAL、PLA的新型电路,只要有数字电路基础,会使用计算机,就可以进行PLD的开发。PLD的在线编程能力和强大的开发软件,使工程师可以几天,甚至几分钟内就可完成以往几周才能完成的工作,并可将数百万门的复杂设计集成在一颗芯片内。PLD技术在发达国家已成为电子工程师必备的技术。
1.5其它EDA软件
①VHDL语言:超高速集成电路硬件描述语言(VHSICHardwareDeseriptionLanguagt,简称VHDL),是IEEE的一项标准设计语言。它源于美国国防部提出的超高速集成电路(VeryHighSpeedIntegratedCircuit,简称VHSIC)计划,是ASIC设计和PLD设计的一种主要输入工具。
②VeriolgHDL:是Verilog公司推出的硬件描述语言,在ASIC设计方面与VHDL语言平分秋色。
③其它EDA软件如专门用于微波电路设计和电力载波工具、PCB制作和工艺流程控制等领域的工具,在此就不作介绍了。