第1章EDA技术概述Word文件下载.docx
《第1章EDA技术概述Word文件下载.docx》由会员分享,可在线阅读,更多相关《第1章EDA技术概述Word文件下载.docx(27页珍藏版)》请在冰豆网上搜索。
![第1章EDA技术概述Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-10/11/331b0db4-6e53-401a-af4f-a69637a2b164/331b0db4-6e53-401a-af4f-a69637a2b1641.gif)
它自动地完成逻辑编译、化简、分割、综合、布局布线以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。
EDA技术使得设计者的主要工作仅限于利用软件的方式来完成对系统硬件功能的实现,这是电子设计技术的一个巨大进步。
EDA技术在硬件实现方面融合了大规模集成电路制造技术、IC版图设计、ASIC测试和封装以及FPGA/CPLD(FieldProgrammableGateArray/ComplexProgrammableLogicDevice)编程下载和自动测试等技术;
在计算机辅助工程方面融合了计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)、计算机辅助工程(CAE)技术以及多种计算机语言的设计概念;
而在现代电子学方面则容纳了更多的内容,如电子线路设计理论、数字信号处理技术、数字系统建模和优化技术等。
因此EDA技术为现代电子理论和设计的表达与实现提供了可能性。
正因为EDA技术丰富的内容及其与电子技术各学科领域的相关性,其发展的历程同大规模集成电路设计技术、计算机辅助工程、可编程逻辑器件,以及电子设计技术和工艺是同步的。
就过去30年的电子技术的发展历程,可大致将EDA技术的发展分为3个阶段。
第一阶段:
20世纪70年代,在集成电路制作方面,MOS工艺已得到广泛的应用。
可编程逻辑技术及其器件已经问世,计算机作为一种运算工具已在科研领域得到广泛应用。
而在后期,CAD的概念已见雏形,这一阶段人们开始利用计算机取代手工劳动,辅助进行集成电路版图编辑、PCB布局布线等工作,这是EDA技术的雏形。
第二阶段:
20世纪80年代,集成电路设计进入了CMOS(互补场效应管)时代。
复杂可编程逻辑器件已进入商业应用,相应的辅助设计软件也已投入使用;
在80年代末,出现了FPGA,CAE和CAD技术的应用更为广泛,它们在PCB设计方面的原理图输入、自动布局布线及PCB分析、逻辑设计、逻辑仿真、布尔代数综合和化简等方面担任了重要的角色。
特别是各种硬件描述语言的出现、应用和标准化方面的重大进步,为电子设计自动化解决电子线路建模、标准文档及仿真测试等问题奠定了基础。
第三阶段:
进入20世纪90年代,计算机辅助工程、辅助分析和辅助设计在电子技术领域获得更加广泛的应用。
与此同时,电子技术在通信、计算机及家电产品生产中的市场需求和技术需求,极大地推动了全新的电子设计自动化技术的应用和发展。
特别是集成电路设计工艺步入了超深亚微米阶段,百万门以上的大规模可编程逻辑器件的陆续问世,以及基于计算机技术的面向用户的低成本大规模ASIC设计技术的应用,促进了EDA技术的形成。
更为重要的是,各EDA公司致力于推出兼容各种硬件实现方案和支持标准硬件描述语言的EDA工具软件的出现,都有效地将EDA技术推向成熟和实用。
EDA技术在进入21世纪后,得到了更大的发展,突出表现在以下几个方面。
●在FPGA上实现DSP(数字信号处理)应用成为可能,用纯数字逻辑进行DSP模块的设计,使得高速DSP的实现成为现实,并有力地推动了软件无线电技术的实用化和发展。
基于FPGA的DSP技术,为高速数字信号处理算法提供了实现途径。
●嵌入式处理器软核的成熟,使得SOPC(SystemOnaProgrammableChip)步入大规模应用阶段,在一单片FPGA中实现一个完备的可随意重构的嵌入式系统成为可能。
●在仿真和设计两方面支持标准硬件描述语言的功能强大的EDA软件不断推出。
●EDA使得电子领域各学科的界限更加模糊,更加互为包容:
模拟与数字、软件与硬件、系统与器件、ASIC与FPGA等。
●基于EDA的用于ASIC设计的标准单元已涵盖大规模电子系统及复杂IP核模块。
●软硬IP(IntellectualProperty)核在电子行业的产业领域广泛应用。
●SOC高效低成本设计技术的成熟。
●系统级、行为验证级硬件描述语言的出现(如SystemC),使复杂电子系统的设计和验证趋于简单。
1.2EDA技术应用对象
一般地,利用EDA技术进行电子系统设计的最后目标,是完成专用集成电路(ASIC)或印制电路板(PCB)的设计和实现(如图1-1所示)。
其中,PCB设计指的是电子系统的印制电路板设计,从电路原理图到PCB上元件的布局、布线、阻抗匹配、信号完整性分析及板级仿真,到最后的电路板机械加工文件生成,这些都需要相应的计算机EDA工具软件辅助设计者来完成,这仅是EDA技术应用的一个重要方面,但本书限于篇幅不做展开。
ASIC作为最终的物理平台,集中容纳了用户通过EDA技术将电子应用系统的既定功能和技术指标具体实现的硬件实体。
专用集成电路就是具有专门用途和特定功能的独立集成电路器件,根据这个定义,作为EDA技术最终实现目标的ASIC,可以通过3种途径来完成(如图1-1所示)。
图1-1EDA技术实现目标
1.可编程逻辑器件
FPGA和CPLD是实现这一途径的主流器件,它们的特点是直接面向用户、具有极大的灵活性和通用性、使用方便、硬件测试和实现快捷、开发效率高、成本低、上市时间短、技术维护简单、工作可靠性好等。
FPGA和CPLD的应用是EDA技术有机融合软硬件电子设计技术、SOC和ASIC设计,以及对自动设计与自动实现最典型的诠释。
由于FPGA和CPLD的开发工具、开发流程和使用方法与ASIC有类似之处,因此这类器件通常也被称为可编程专用IC或可编程ASIC。
2.半定制或全定制ASIC
基于EDA技术的半定制或全定制ASIC,根据它们的实现工艺,可统称为掩模(Mask)ASIC,或直接称ASIC。
可编程ASIC与掩模ASIC相比,不同之处在于前者具有面向用户灵活多样的可编程性,即硬件结构的可重构特性。
3.混合ASIC
混合ASIC(不是指数模混合ASIC)主要指既含有面向用户的FPGA可编程功能和逻辑资源,同时也含有可方便调用和配置的硬件标准单元模块,如CPU、RAM、ROM、硬件加法器、乘法器、锁相环等。
1.3常用HDL和VerilogHDL
硬件描述语言(HDL)是EDA技术的重要组成部分,目前常用的HDL语言主要有VHDL、VerilogHDL、SystemVerilog和SystemC。
其中VerilogHDL和VHDL在现在的EDA设计中使用最多,几乎得到所有的主流EDA工具的支持。
而SystemVerilog和SystemC这两种HDL语言还处于不断完善过程中,主要加强了系统验证方面的功能。
自从出现VHDL和VerilogHDL语言以来,对于选择何种语言进行系统设计最好的争论就从未停止过。
多数偏好VerilogHDL的用户能拿出的最有“说服力”的论据是VerilogHDL编程与C最接近。
这似乎意味着对C熟练的人,更容易学好和掌握VerilogHDL。
其实恰恰相反。
事实证明,如果缺少硬件概念,越是熟悉C/C++等软件描述语言的,越不容易学好、用好硬件描述语言。
这是因为C和HDL本质上是截然不同的计算机语言,这个结论并不会因为C的某些语句类同于VerilogHDL就有会所改变。
因为HDL语言的编程风格、编程思路、编程目标、编程优劣标准、程序验证方法、对程序员知识结构的要求等都有巨大差别。
如果以这些标准来判别计算机语言的相似度,那么VerilogHDL与VHDL的相似度至少达90%,而与C或C++的相似度则远低于5%。
由此可见,绝对不能把C等语言的编程经验和编程风格带到HDL的程序设计中,而是应该紧密结合硬件电路基础知识从一个全新的角度去了解、学习和掌握HDL,摆脱C等软件描述语言编程习惯和风格的不良影响!
VerilogHDL是电子设计主流硬件的描述语言之一,本书将重点介绍它的编程方法和使用技术。
VerilogHDL(简称Verilog)最初由GatewayDesignAutomation公司(简称GDA)的PhilMoorby在1983年创建。
起初,Verilog仅作为GDA公司的Verilog-XL仿真器的内部语言,用于数字逻辑的建模、仿真和验证。
Verilog-XL推出后获得了成功和认可,从而促进了VerilogHDL的发展。
1989年GDA公司被Cadence公司收购,Verilog语言成为了Cadence公司的私有财产。
1990年Cadence公司成立了OVI(OpenVerilogInternational)组织,公开了Verilog语言,并由OVI负责促进Verilog语言的发展。
在OVI的努力下,1995年,IEEE制定了VerilogHDL的第一个国际标准——IEEEStd1364—1995,即Verilog1.0。
2001年,IEEE发布了VerilogHDL的第二个标准版本(Verilog2.0),即IEEEStd1364—2001,简称为Verilog-2001标准。
由于Cadence公司在集成电路设计领域的影响力和Verilog的易用性,Verilog成为基层电路建模与设计中最流行的硬件描述语言。
Verilog的部分语法是参照C语言的语法设立的(但与C有本质区别),因此,具有很多C语言的优点,从形式表述上来看,代码简明扼要,使用灵活,且语法规定不是很严谨,很容易上手。
Verilog具有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描述,从而大大简化了硬件设计任务,提高了设计效率和可靠性。
在语言易读性、层次化和结构化设计方面表现了强大的生命力和应用潜力。
因此,Verilog支持各种模式的设计方法:
自顶向下与自底向上或混合方法。
在面对当今许多电子产品生命周期缩短,需要多次重新设计以融入最新技术、改变工艺等方面,Verilog具有良好的适应性。
用Verilog进行电子系统设计的一个很大的优点是当设计逻辑功能时,设计者可以专心致力于其功能的实现,而不需要对不影响功能的、与工艺有关的因素花费过多的时间和精力;
当需要仿真验证时,可以很方便地从电路物理级、晶体管级、寄存器传输级乃至行为级等多个层次来做验证。
SystemVerilog是一种新的硬件描述语言,它基于Verilog-2001,是由Accellera开发的(Accellera的前身就是OVI)。
SystemVerilog在Verilog-2001的基础上做了扩展,将Verilog语言推向了系统级空间和验证级空间,极大地改进了高密度、基于IP的、总线敏感的芯片设计效率。
SystemVerilog主要定位于集成电路的实现和验证流程,并为系统级设计流程提供了强大的链接能力。
SystemVerilog改进了Verilog代码的生产率、可读性以及可重用性。
SystemVerilog提供了更简约的硬件描述,还为测试平台开发、随机约束的测试平台开发、覆盖驱动的验证以及基于断言的验证提供了广泛的支持。
2005年,IEEE批准了SystemVerilog的语法标准,即IEEEP1800标准。
SystemC是C++语言的硬件描