电子设计自动化技术DOC27.docx

上传人:b****6 文档编号:7538124 上传时间:2023-05-11 格式:DOCX 页数:28 大小:151.48KB
下载 相关 举报
电子设计自动化技术DOC27.docx_第1页
第1页 / 共28页
电子设计自动化技术DOC27.docx_第2页
第2页 / 共28页
电子设计自动化技术DOC27.docx_第3页
第3页 / 共28页
电子设计自动化技术DOC27.docx_第4页
第4页 / 共28页
电子设计自动化技术DOC27.docx_第5页
第5页 / 共28页
电子设计自动化技术DOC27.docx_第6页
第6页 / 共28页
电子设计自动化技术DOC27.docx_第7页
第7页 / 共28页
电子设计自动化技术DOC27.docx_第8页
第8页 / 共28页
电子设计自动化技术DOC27.docx_第9页
第9页 / 共28页
电子设计自动化技术DOC27.docx_第10页
第10页 / 共28页
电子设计自动化技术DOC27.docx_第11页
第11页 / 共28页
电子设计自动化技术DOC27.docx_第12页
第12页 / 共28页
电子设计自动化技术DOC27.docx_第13页
第13页 / 共28页
电子设计自动化技术DOC27.docx_第14页
第14页 / 共28页
电子设计自动化技术DOC27.docx_第15页
第15页 / 共28页
电子设计自动化技术DOC27.docx_第16页
第16页 / 共28页
电子设计自动化技术DOC27.docx_第17页
第17页 / 共28页
电子设计自动化技术DOC27.docx_第18页
第18页 / 共28页
电子设计自动化技术DOC27.docx_第19页
第19页 / 共28页
电子设计自动化技术DOC27.docx_第20页
第20页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

电子设计自动化技术DOC27.docx

《电子设计自动化技术DOC27.docx》由会员分享,可在线阅读,更多相关《电子设计自动化技术DOC27.docx(28页珍藏版)》请在冰点文库上搜索。

电子设计自动化技术DOC27.docx

电子设计自动化技术DOC27

电子设计自动化技术

20世纪末,电子设计技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透到社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也变得越来越快。

微电子技术的进步表现在大规模集成电路加工技术即半导体工艺技术的发展上,使得表征半导体工艺水平的线宽已经达到了90nm,并还在不断地缩小,在硅片单位面积上,集成了更多的晶体管。

集成电路设计正在不断地向超大规模、极低功耗和超高速的方向发展;专用集成电路ASIC(ApplicationSpecificIntegratedCircuit)的设计成本不断降低,在功能上,现代的集成电路已能够实现单片电子系统SOC(SystemOnaChip)。

现代电子设计技术的核心已日趋转向基于计算机的电子设计自动化技术,即EDA(ElectronicDesignAutomation)技术。

EDA技术就是依赖功能强大的计算机,在EDA工具软件平台上,对以硬件描述语言HDL(HardwareDescriptionLanguage)为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、逻辑化简、逻辑分割、逻辑综合、结构综合(布局布线),以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。

EDA技术使得设计者的工作仅限于利用软件的方式,即利用硬件描述语言和EDA软件来完成对系统硬件功能的实现,这是电子设计技术的一个巨大进步。

另一方面,在现代高新电子产品的设计和生产中,微电子技术和现代电子设计技术是相互促进、相互推动又相互制约的两个环节;前者代表了物理层在广度和深度上硬件电路实现的发展,后者则反映了现代先进的电子理论、电子技术、仿真技术、设计工艺和设计技术与最新的计算机软件技术有机的融合和升华。

因此,严格地说,EDA技术应该是这二者的结合,是这两个技术领域共同孕育的奇葩。

EDA技术在硬件实现方面融合了大规模集成电路制造技术,IC版图设计技术、ASIC测试和封装技术、FPGA/CPLD编程下载技术、自动测试技术等;在计算机辅助工程方面融合了计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)、计算机辅助工程(CAE)技术以及多种计算机语言的设计概念;而在现代电子学方面则容纳了更多的内容,如电子线路设计理论、数字信号处理技术、数字系统建模和优化技术及长线技术理论等。

因此EDA技术为现代电子理论和设计的表达与实现提供了可能性。

在现代技术的所有领域中,纵观许多得以飞速发展的科学技术,多为计算机辅助设计,而非自动化设计。

显然,最早进入设计自动化的技术领域之一是电子技术,这就是为什么电子技术始终处于所有科学技术发展最前列的原因之一。

不难理解,EDA技术已不是某一学科的分支,或某种新的技能技术,而应该是一门综合性学科。

它融合多学科于一体,又渗透于各学科之中,打破了软件和硬件间的壁垒,使计算机的软件技术与硬件实现、设计效率和产品性能合二为一,它代表了电子设计技术和应用技术的发展方向。

正因为EDA技术丰富的内容以及与电子技术各学科领域的相关性,其发展的历程同大规模集成电路设计技术、计算机辅助工程、可编程逻辑器件,以及电子设计技术和工艺的发展是同步的。

就过去近30年的电子技术的发展历程,可大致将EDA技术的发展分为三个阶段。

20世纪70年代,在集成电路制作方面,MOS工艺已得到广泛的应用。

可编程逻辑技术及其器件已经问世,计算机作为一种运算工具已在科研领域得到广泛应用。

而在后期,CAD的概念已见雏形,这一阶段人们开始利用计算机取代手工劳动,辅助进行集成电路版图编辑、PCB布局布线等工作。

20世纪80年代,集成电路设计进入了CMOS(互补场效应管)时代。

复杂可编程逻辑器件已进入商业应用,相应的辅助设计软件也已投入使用;而在80年代末,出现了FPGA(FieldProgrammableGateArray),CAE和CAD技术的应用更为广泛,它们在PCB设计方面的原理图输入、自动布局布线及PCB分析,以及逻辑设计、逻辑仿真、布尔方程综合和化简等方面担任了重要的角色。

特别是各种硬件描述语言的出现、应用和标准化方面的重大进步,为电子设计自动化必须解决的电路建模、标准文档及仿真测试奠定了基础。

进入20世纪90年代,随着硬件描述语言的标准化得到进一步的确立,计算机辅助工程、辅助分析和辅助设计在电子技术领域获得更加广泛的应用,与此同时,电子技术在通信、计算机及家电产品生产中的市场需求和技术需求,也极大地推动了全新的电子设计自动化技术的应用和发展。

特别是集成电路设计工艺步入了超深亚微米阶段,百万门以上的大规模可编程逻辑器件的陆续面世,以及基于计算机技术的面向用户的低成本大规模ASIC设计技术的应用,促进了EDA技术的形成。

更为重要的是各EDA公司致力于推出兼容各种硬件实现方案和支持标准硬件描述语言的EDA工具软件的研究,都有效地将EDA技术推向成熟和实用。

EDA技术在进入21世纪后,得到了更大的发展,突出表现在以下几个方面。

•在FPGA上实现DSP(数字信号处理)应用成为可能,用纯数字逻辑进行DSP模块的设计,使得高速DSP实现成为现实,并有力地推动了软件无线电技术的实用化和发展。

基于FPGA的DSP技术,为高速数字信号处理算法提供了实现途径。

•嵌入式处理器软核的成熟,使得SOPC(SystemOnaProgrammableChip)步入大规模应用阶段,在一片FPGA中实现一个完备的数字处理系统成为可能。

•使电子设计成果以自主知识产权的方式得以明确表达和确认成为可能。

•在仿真和设计两方面支持标准硬件描述语言且功能强大的EDA软件不断推出。

•电子技术领域全方位融入EDA技术,除了日益成熟的数字技术外,传统的电路系统设计建模理念发生了重大的变化:

软件无线电技术的崛起,模拟电路系统硬件描述语言的表达和设计的标准化,系统可编程模拟器件的出现,数字信号处理和图像处理的全硬件实现方案的普遍接受,软硬件技术的进一步融合等。

•EDA使得电子领域各学科的界限更加模糊,更加互为包容:

模拟与数字、软件与硬件、系统与器件、ASIC与FPGA、行为与结构等。

•更大规模的FPGA和CPLD器件的不断推出。

•基于EDA的用于ASIC设计的标准单元已涵盖大规模电子系统及复杂IP核模块。

•软硬IP(IntellectualProperty)核在电子行业的产业领域广泛应用。

•SOC高效低成本设计技术的成熟。

•系统级、行为验证级硬件描述语言出现(如SystemC),使复杂电子系统的设计和验证趋于简单。

1.2电子设计自动化应用对象

一般地说,利用EDA技术进行电子系统设计,最后实现的目标是以下3种。

•全定制或半定制ASIC。

•FPGA/CPLD(或称可编程ASIC)开发应用。

•PCB(印制电路板)。

实现目标的前面两项可以归结为专用集成电路ASIC的设计和实现(如图1-1所示),ASIC是最终的物理平台,集中容纳了用户通过EDA技术将电子应用系统的既定功能和技术指标具体实现的硬件实体。

一般而言,专用集成电路就是具有专门用途和特定功能的独立集成电路器件,根据这个定义,作为EDA技术最终实现目标的ASIC,可以通过3种途径来完成,这可以通过图1-1来说明。

EDA技术

PPCCB设设计计

图1-1EDA技术实现目标

图1-1中所标的另外一个EDA技术实现目标PCB,指的是印制电路板的布局布线设计及验证分析,由于不涉及芯片层面上的设计,故不拟展开。

下面主要介绍FPGA/CPLD与ASIC。

1.超大规模可编程逻辑器件

FPGA(FieldProgrammableGateArray)和CPLD(ComplexProgrammableLogicDevice)是实现这一途径的主流器件,它们的特点是直接面向用户,具有极大的灵活性和通用性,使用方便,硬件测试和实现快捷,开发效率高,成本低,上市时间短,技术维护简单,工作可靠性好等。

FPGA和CPLD的应用是EDA技术有机融合软硬件电子设计技术以及对自动化设计与自动化实现最典型的诠释。

由于FPGA和CPLD的开发工具、开发流程和使用方法与ASIC有类似之处,因此这类器件通常也被称为可编程专用IC,或可编程ASIC。

2.半定制或全定制ASIC

根据实现的工艺,基于EDA设计技术的半定制或全定制ASIC可统称为掩膜(MASK)ASIC,或直接称ASIC。

ASIC大致分为门阵列ASIC、标准单元ASIC和全定制ASIC。

门阵列ASIC门阵列芯片包括预定制相连的PMOS和NMOS晶体管行。

设计中,用户可以借助EDA工具将原理图或硬件描述语言模型映像为相应门阵列晶体管配置,创建一个指定金属互连路径文件,从而完成门阵列ASIC开发。

由于有掩膜的创建过程,门阵列有时也称掩膜可编程门阵列(MPGA)。

但是MPGA与FPGA完全不同,它不是用户可编程的,也不属于可编程逻辑范畴,而是实际的ASIC。

MPGA出现在FPGA之前,FPGA技术则源自MPGA。

现在,Altera的HardCopy、HardCopyII技术可以提供一种把FPGA的设计转化为结构化ASIC的途径。

标准单元ASIC

目前大部分ASIC是使用库中的不同大小的标准单元设计的,这类芯片一般称作基于单元的集成电路(Cell-basedIntegratedCircuits,CBIC)。

在设计者一级,库包括不同复杂性的逻辑组件:

SSI逻辑块、MSI逻辑块、数据通道模块、存储器、IP,以及系统级模块。

库包含每个逻辑单元在硅片级的完整布局,使用者只需利用EDA软件工具与逻辑块描述打交道即可,完全不必关心电路布局的细节。

标准单元布局中,所有扩散、接触点、过孔、多晶信道及金属信道都已完全确定。

当该单元用于设计时,通过EDA软件产生的网表文件将单元布局块“粘贴”到芯片布局之上的单元行上。

标准单元ASIC设计与FPGA设计开发的流程相近。

全定制芯片全定制芯片中,在针对特定工艺建立的设计规则下,设计者对于电路的设计有完全的控制权,如线的间隔和晶体管大小的确定。

该领域的一个例外是混合信号设计,使用通信电路的ASIC可以定制设计其模拟部分。

3.混合ASIC

混合ASIC(不是指数模混合ASIC)主要指既具有面向用户的FPGA可编程

功能和逻辑资源,同时也含有可方便调用和配置的硬件标准单元模块,如CPU、

RAM、ROM、硬件加法器、乘法器、锁相环等。

Xilinx、Atmel和Altera公司已经推出了这方面的器件,如Virtex-4系列、Excalibur(含ARM核)和StratixII系列等。

混合ASIC为SOC和SOPC(SystemOnaProgrammableChip)的设计实现成为便捷的途径。

1.3硬件描述语言

硬件描述语言HDL是EDA技术的重要组成部分,常见的HDL主要有VHDL、VerilogHDL、ABEL、AHDL、SystemVerilog和SystemC。

其中VHDL、Verilog在现在EDA设计中使用最多,也拥有几乎所有的主流EDA工具的支持。

而SystemVerilog和SystemC这两种HDL语言还处于完善过程中。

VHDL是作为电子设计主流硬件的描述语言之一,本书将重点介绍它的编程方法和使用技术。

1.3.1硬件描述语言VHDL

VHDL的英文全名是VHSIC(VeryHighSpeedIntegratedCircuitHardwareDescriptionLanguage),于1983年由美国国防部(DOD)发起创建,由IEEE(TheInstituteofElectricalandElectronicsEngineers)进一步发展,并在1987年作为“IEEE标准1076”发布。

从此,VHDL成为硬件描述语言的业界标准之一。

自IEEE公布了VHDL的标准版本(IEEEStd1076)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具支持VHDL。

此后VHDL在电子设计领域得到了广泛应用,并逐步取代了原有的非标准硬件描述语言。

VHDL作为一个规范语言和建模语言,随着它的标准化,出现了一些支持该语言的行为仿真器。

由于创建VHDL的最初目标是用于标准文档的建立和电路功能模拟,其基本想法是在高层次上描述系统和组件的行为。

但到了20世纪90年代初,人们发现,VHDL不仅可以作为系统模拟的建模工具,而且可以作为电路系统的设计工具;可以利用软件工具将VHDL源码自动地转化为文本方式表达的基本逻辑组件连接图,即网表文件。

这种方法显然对于电路自动设计是一个极大的推进。

很快,电子设计领域出现了第一个软件设计工具,即VHDL逻辑综合器,它可以标准地将VHDL的部分语句描述转化为具体电路实现的网表文件。

1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展了VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本。

现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。

现在公布的最新VHDL标准版本是IEEE1076-2002。

VHDL语言具有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描述,从而大大简化了硬件设计任务,提高了设计效率和可靠性。

VHDL具有与具体硬件电路无关和与设计平台无关的特性,并且具有良好的电路行为描述和系统描述的能力,并在语言易读性和层次化结构化设计方面,表现了强大的生命力和应用潜力。

因此,VHDL在支持各种模式的设计方法、自顶向下与自底向上或混合方法方面,在面对当今许多电子产品生命周期的缩短,需要多次重新设计以融入最新技术,改变工艺等方面都表现了良好的适应性。

用VHDL进行电子系统设计的一个很大的优点是设计者可以专心致力于其功能的实现,而不需要对不影响功能的与工艺有关的因素花费过多的时间和精力。

1.3.2硬件描述语言的综合

综合(Synthesis),就其字面含义应该为:

把抽象的实体结合成单个或统一的实体。

因此,综合就是把某些东西结合到一起,把设计抽象层次中的一种表述转化成另一种表述的过程。

对于电子设计领域的综合概念可以表示为:

将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配而成的过程。

事实上,设计过程中的每一步都可称为一个综合环节。

设计过程通常从高层次的行为描述开始,以最低层的结构描述结束,每个综合步骤都是上一层次的转换。

•从自然语言表述转换到VHDL语言算法表述,是自然语言综合。

•从算法表述转换到寄存器传输级(RegisterTransferLevel,RTL)表述,即从行为域到结构域的综合,是行为综合。

•从RTL级表述转换到逻辑门(包括触发器)的表述,即逻辑综合。

•从逻辑门表述转换到版图表述(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。

有了版图信息就可以把芯片生产出来了。

有了对应的配置文件,就可以使对应的FPGA变成具有专门功能的电路器件。

显然,综合器就是能够自动将一种设计表示形式向另一种设计表示形式转换的计算机程序,或协助进行手工转换的程序。

它可以将高层次的表述转化为低层次的表述,可以从行为域转化为结构域,可以将高一级抽象的电路表述(如算法级)转化为低一级的表述(如门级),并可以用某种特定的硬件技术实现(如CMOS)。

对设计者而言,在高抽象层次进行系统设计,再利用综合工具将设计转化为低层次的表示,与直接在低抽象层次来设计系统的情况相比,类似于一个程序员用高级语言编程并用编译器将程序编译成机器代码和直接用机器代码进行编程时的情况。

前一种情况在于设计者可以将精力主要集中于系统级问题上,而由于不必关心低级层次的设计所面临的细节问题,在高抽象层次上进行设计和编程将花费较少的时间和精力,并且减少错误的发生。

另一方面,尽管(如图1-2所示)从表面上看,VHDL等硬件描述语言综合器和软件程序编译器都不过是一种“翻译器”,它们都能将高层次的设计表达转化为低层次的表达,但它们却具有许多本质的区别。

编译器将软件程序翻译成基于某种特定CPU的机器代码,这种代码仅限于这种CPU而不能移植,并且机器代码不代表硬件结构,更不能改变CPU的硬件结构,只能被动地为其特定的硬件电路结构所利用。

如果脱离了已有的硬件环境(CPU),机器代码将失去意义。

此外,编译器作为一种软件的运行,除了某种单一目标器件,即CPU的硬件结构外,不需要任何与硬件相关的器件库和工艺库参与编译。

因而,编译器的工作单纯得多,编译过程基本属于一种一一对应式的“翻译”行为。

综合器则不同,同样是类似的软件代码(如VHDL程序),综合器转化的目标是底层的电路结构网表文件,这种满足原设计程序功能描述的电路结构不依赖于任何特定硬件环境,因此可以独立地存在,并能轻易地被移植到任何通用硬件环境中,如ASIC、FPGA等。

换言之,电路网表代表了特定的硬件结构,因此具备了随时改变硬件结构的依据。

综合的结果具有相对独立性。

另一方面,综合器在将硬件描述语言表达的电路功能转化成具体的电路结构网表过程中,具有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是根据设计库、工艺库以及预先设置的各类约束条件,选择最优的方式完成电路结构的形成。

这就是说,对于相同的VHDL表述,综合器可以用不同的电路结构实现相同的功能。

如图1-3所示,与编译器相比,综合器具有更复杂的工作环境,综合器在接受VHDL程序并准备对其综合前,必须获得最终实现设计电路硬件特征相关的工艺库的信息,以及获得优化综合的诸多约束条件。

一般地,约束条件可以分为3种,即设计规则、时间约束、面积约束。

通常,时间约束的优先级高于面积约束。

设计优化要求,当综合器把VHDL源码翻译成通用原理图时,将识别状态机、加法器、乘法器、多路选择器和寄存器等。

这些运算功能根据VHDL源码中的符号,如加减乘除。

每种运算都可用多种方法实现,如加法可实现方案有多种,有的面积小,速度慢;有的速度快,面积大。

VHDL行为描述强调的是电路的行为和功能,而不是电路如何实现。

选择电路的实现方案正是综合器的任务。

综合器选择一种能充分满足各项约束条件且成本最低的实现方案。

现在的许多综合器还允许设计者指定在做映像优化时综合器应付出多大“努力”;“努力”一般可分为低、中、高三档。

编译器和综合功能比较

图1-2

图1-3

VHDL综合器运行流程

需要注意的是,VHDL(和Verilog)方面的IEEE标准主要指的是文档的表述、行为建模及其仿真,至于在电子线路的设计方面,VHDL(和Verilog)并没有得到全面的支持和标准化。

这就是说,VHDL综合器并不能支持标准VHDL的全集(全部语句程序),而只能支持其子集,即部分语句,并且不同的VHDL综合器所支持的VHDL子集也不完全相同。

这样一来,对于相同VHDL源代码,不同的VHDL综合器可能综合出在结构和功能上并不完全相同的电路系统。

对此,设计者应给予充分的注意。

因此,对于不同的综合结果,不应对综合器的特性贸然作出评价,同时在设计过程中,必须尽可能全面了解所使用的综合工具的基本特性。

1.3.3自顶向下设计方法

传统的电子设计流程通常是自底向上的,即首先确定构成系统的最底层的电路模块或组件的结构和功能,然后根据主系统的功能要求,将它们组合成更大的功能块,使它们的结构和功能满足高层系统的要求。

以此流程,逐步向上递推,直至完成整个目标系统的设计。

例如,对于一般电子系统的设计,使用自底向上的设计方法,必须首先决定使用的器件类别和规格,如74系列的器件、某种RAM和ROM、某类CPU或单片机以及某些专用功能芯片等;然后是构成多个功能模块,如数据采集控制模块、信号处理模块、数据交换和接口模块等,直至最后利用它们完成整个系统的设计。

对于ASIC设计,则是根据系统的功能要求,首先从绘制硅片版图开始,逐级向上完成版图级、门级、RTL级、行为级、功能级,直至系统级的设计。

在这个过程中,任何一级发生问题,通常都不得不返工重来。

自底向上的设计方法的特点是必须首先关注并致力于解决系统最底层硬件的可获得性,以及它们的功能特性方面的诸多细节问题;在整个逐级设计和测试过程中,始终必须顾及具体目标器件的技术细节。

在这个设计过程中的任一时刻,最底层目标器件的更换,或某些技术参数不满足总体要求,或缺货,或由于市场竞争的变化,临时提出降低系统成本,提高运行速度等不可预测的外部因素,都将可能使前面的工作前功尽弃。

由此可见,在某些情况下,自底向上的设计方法是一种低效、低可靠性、费时费力,且成本高昂的设计方法。

在电子设计领域,自顶向下设计方法只有在EDA技术得到快速发展和成熟应用的今天才成为可能。

自顶向下设计方法的有效应用必须基于功能强大的EDA工具、具备集系统描述、行为描述和结构描述功能为一体的VHDL硬件描述语言,以及先进的ASIC制造工艺和FPGA开发技术。

当今,自顶向下的设计方法已经是EDA技术的首选设计方法,是ASIC或FPGA开发的主要设计手段。

在EDA技术应用中,自顶向下的设计方法就是在整个设计流程中各设计环节逐步求精的过程。

一个项目的设计过程包括从自然语言说明到VHDL的系统行为描述、系统的分解、RTL模型的建立、门级模型产生,到最终的可以物理布线实现的底层电路,就是从高抽象级别到低抽象级别的整个设计周期。

后端设计还必须包括涉及硬件的物理结构实现方法和测试(仍然利用计算机完成)。

应用VHDL进行自顶向下的设计,就是使用VHDL模型在所有综合级别上对硬件设计进行说明、建模和仿真测试。

主系统及子系统最初的功能要求在VHDL里体现为可以被VHDL仿真程序验证的可执行程序。

由于综合工具可以将高级别的模型转化为门级模型,所以整个设计过程基本是由计算机自动完成的。

人为介入的方式主要是根据仿真的结果和优化的指标来控制逻辑综合的方式和指向。

因此,在设计周期中,要根据仿真的结果进行优化和升

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2