EDA课程综述.docx
- 文档编号:30478980
- 上传时间:2023-08-15
- 格式:DOCX
- 页数:12
- 大小:27.53KB
EDA课程综述.docx
《EDA课程综述.docx》由会员分享,可在线阅读,更多相关《EDA课程综述.docx(12页珍藏版)》请在冰豆网上搜索。
EDA课程综述
课程综述
课程名称在系统编程技术
任课教师
班级
姓名
学号
日期2012.05.27
目录
前言:
1
正文:
2
一、EDA技术的发展史2
1、CAD阶段2
2、CAE阶段3
3、ESDA阶段3
二、VHDL语言4
1.VHDL语言的优点4
2.VHDL语言的基本结构6
3.VHDL语言的数据类型和运算操作符7
4.VHDL语言的主要描述语句9
三、EDA技术的现状以及未来发展展望10
总结:
10
参考文献:
11
EDA课程综述———VHDL语言
前言:
EDA技术是一种实现电子系统或电子产品自动化设计的技术,与电子技术、微电子技术的发展密切相关。
同时它吸收了计算机科学领域的大多数最新研究成果,以计算机作为基本工作平台,利用计算机图形学、拓扑逻辑学、计算数学以至人工智能学等多种计算机应用学科的最新成果而开发出来的一整套电子CAD通用软件工具,是一种帮助电子设计工程师从事电子组件产品和系统设计的综合技术。
EDA技术的出现,为电子系统设计带来了一场革命性的变化。
没有EDA技术的支持,想要完成上述超大规模集成电路的设计制造是不可想象的。
随着大规模集成电路技术和计算机技术的不断发展,在涉及通信、国防、航天、医学、工业自动化、计算机应用、仪器仪表等领域的电子系统设计工作中,EDA技术的含量正以惊人的速度上升,电子类高新技术项目的开发也更加依赖于EDA技术的应用。
即使是普通的电子产品的开发,EDA技术常常使一些原来的技术瓶颈得以轻松突破,从而使产品的开发周期大为缩短、性能价格比大幅提高。
不言而喻,EDA技术将迅速成为电子设计领域中的极其重要的组成部分。
EDA技术涉及面很广,内容丰富,从教学和实用的角度看,主要应掌握如下4个方面的内容:
一、是大规模可编程逻辑器件;
二、是硬件描述语言;
三、是软件开发工具;四是实验开发系统。
其中,大规模可编程逻辑器件是利用EDA技术进行电子系统设计的载体,硬件描述语言是利用EDA技术进行电子系统设计的主要表达手段,软件开发工具是利用EDA技术进行电子系统设计的智能化的自动设计工具,实验开发系统则是利用EDA技术进行电子系统设计的下载工具及硬件验证工具。
本次综述的主要内容是关于EDA主要内容之一的硬件描述语言,即VHDL语言。
正文:
一、EDA技术的发展史
EDA技术是伴随着计算机、集成电路、电子系统的设计发展起来的。
回顾近30年电子设计技术的发展历程,可将EDA技术由浅到深分为CAD阶段、CAE阶段、ESDA阶段这3个阶段。
1、CAD阶段
20世纪70年代,随着中小规模集成电路的开发应用,传统的手工制图设计印刷电路板和集成电路的方法已无法满足设计精度和效率的要求,因此工程师们开始进行二维平面图形的计算机辅助设计,以便解脱繁杂、机械的版图设计工作,这就产生了第1代EDA工具———CAD(计算机辅助设计)。
这是EDA发展的初级阶段,其主要特征是利用计算机辅助进行电路原理图编辑,PCB布同布线。
它可以减少设计人员的繁琐重复劳动,但自动化程度低,需要人工干预整个设计过程。
2、CAE阶段
20世纪80年代,为适应电子产品在规模和制作上的需要,应运出现了以计算机仿真和自动布线为核心技术的第2代EDA技术,即CAE计算机辅助工程设计阶段。
这一阶段的主要特征是以逻辑摸拟、定时分析、故障仿真、自动布局布线为核心,其作用已不仅仅是辅助设计,而且可以代替人进行某种思维。
与CAD相比,CAE除了纯粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将两者结合在一起,从而实现工程设计。
3、ESDA阶段
20世纪90年代,尽管CAD/CAE技术取得了巨大的成功,但并没有把人从繁重的设计工作中彻底解放出来。
在整个设计过程中,自动化和智能化程度还不高,各种EDA软件界面千差万别,学习使用比较困难,并且互不兼容,直接影响到设计环节间的衔接。
基于以上不足,EDA技术继续发展,进入了以支持高级语言描述、可进行系统级仿真和综合技术为特征的第3代EDA技术———ESDA电子系统设计自动化阶段。
这一阶段采用一种新的设计概念自顶而下(Top-Down)的设计程式和并行工程(ConcurrentEngineering)的设计方法,设计者的精力主要集中在所要电子产品的准确定义上,EDA系统去完成电子产品的系统级至物理级的设计。
ESDA极大地提高了系统设计的效率,使广大的电子设计师开始实现“概念驱动工程”的梦想。
设计师们摆脱了大量的辅助设计工作,而把精力集中于创造性的方案与概念构思上,从而极大地提高了设计效率,使设计更复杂的电路和系统成为可能,产品的研制周期大大缩短。
二、VHDL语言
1.VHDL语言的优点
综合起来讲,VHDL语言具有如下优点:
1)、覆盖面广,描述能力强,是一个多层次的硬件描述语言。
在VHDL语言中,设计的原始描述可以非常简练,经过层层加强后,最终可成为直接付诸生产的电路或版图参数描述。
2)、具有良好的可读性,即容易被计算机接受,也容易被读者理解。
3)、使用期长,不会因工艺变化而使描述过时。
因为VHDL的硬件描述与工艺无关,当工艺改变时,只需修改相应程序中的属性参数即可。
4)、支持大规模设计的分解和已有设计的再利用。
一个大规模的设计不可能由一个人独立完成,必须由多人共同承担,VHDL为设计的分解和设计的再利用提供了有力的支持。
利用VHDL语言设计数字系统的特点,当电路系统采用VHDL语言设计其硬件时,与传统的电路设计方法相比较,具有如下的特点:
(1)采用自上而下的设计方法
即从系统总体要求出发,自上而下地逐步将设计的内容细化,最后完成系统硬件的整体设计。
在设计的过程中,对系统自上而下分成三个层次进行设计:
第一层次是行为描述。
所谓行为描述,实质上就是对整个系统的数学模型的描述。
一般来说,对系统进行行为描述的目的是试图在系统设计的初始阶段,通过对系统行为描述的仿真来发现设计中存在的问题。
在行为描述阶段,并不真正考虑其实际的操作和算法用何种方法来实现,而是考虑系统的结构及其工作的过程是否能到达系统设计的要求。
第二层次是RTL方式描述。
这一层次称为寄存器传输描述(又称数据流描述)。
如前所述,用行为方式描述的系统结构的程序,其抽象程度高,是很难直接映射到具体逻辑元件结构的。
要想得到硬件的具体实现,必须将行为方式描述的VHDL语言程序改写为RTL方式描述的VHDL语言程序。
也就是说,系统采用RTL方式描述,才能导出系统的逻辑表达式,才能进行逻辑综合。
第三层次是逻辑综合。
即利用逻辑综合工具,将RTL方式描述的程序转换成用基本逻辑元件表示的文件(门级网络表)。
此时,如果需要,可将逻辑综合的结果以逻辑原理图的方式输出。
此后可对综合的结果在门电路级上进行仿真,并检查其时序关系。
应用逻辑综合工具产生的门级网络表,将其转换成PLD的编程码点,即可利用PLD实现硬件电路的设计。
由自上而下的设计过程可知,从总体行为设计开始到最终的逻辑综合,每一步都要进行仿真检查,这样有利于尽早发现设计中存在的问题,从而可以大大缩短系统的设计周期。
(2)系统可大量采用PLD芯片
由于目前众多制造PLD芯片的厂家,其工具软件均支持VHDL语言的编程。
所以利用VHDL语言设计数字系统时,可以根据硬件电路的设计需要,自行利用PLD设计自用的ASIC芯片,而无须受通用元器件的限制。
(3).采用系统早期仿真
从自上而下的设计过程中可以看到,在系统设计过程中要进行三级仿真,即行为层次仿真、RTL层次仿真和门级层次仿真。
这三级仿真贯穿系统设计的全过程,从而可以在系统设计的早期发现设计中存在的问题,大大缩短系统设计的周期,节约大量的人力和物力。
(4).降低了硬件电路设计难度
在传统的设计方法中,往往要求设计者在设计电路之前写出该电路的逻辑表达式或真值表(或时序电路的状态表)。
这一工作是相当困难和繁杂的,特别是当系统比较复杂时更是如此。
而利用VHDL语言设计硬件电路时,就可以使设计者免除编写逻辑表达式或真值表之苦,从而大大降低了设计的难度,也缩短了设计的周期。
(5).主要设计文件是用VHDL语言编写的源程序
与传统的电路原理图相比,使用VHDL源程序有许多好处:
其一是资料量小,便于保存。
其二是可继承性好。
当设计其他硬件电路时,可使用文件中的某些库、进程和过程等描述某些局部硬件电路的程序。
其三是阅读方便。
阅读程序比阅读电路原理图要更容易一些,阅读者很容易在程序中看出某一电路的工做原理和逻辑关系。
而要从电路原理图中推知其工作原理则需要较多的硬件知识和经验。
2.VHDL语言的基本结构
一个完整的VHDL语言程序通常包含实体(Entity)、构造体(Architecture)、配置(Configuration)、程序包(Package)和库(Library)5个部分。
前4个部分是可分别编译的源设计单元。
实体用于描述所设计的系统的外接口信号;构造体用于描述系统内部的结构和行为;程序包存放各种设计模块都能共享的数据类型、常数和子程序等;配置用于从库中选取所需单元来组成系统设计的不同版本;库存放已经编译的实体、构造体、程序包和配置。
库可由用户生成或由ASIC芯片制造商提供,以便于在设计中为大家所共享。
1.实体(ENTITY)
在VHDL中,实体类似于原理图中的一个部件符号,它可以代表整个系统、1块电路板、一个芯片或一个门电路,是一个初级设计单元。
在实体中,我们可以定义设计单元的输入输出引脚和器件的参数,其具体的格式如下:
ENTITY实体名IS
[类属参数说明;]
[端口说明;]
END实体名;
2.结构体(ARCHITECTURE)
结构体描述一个设计的结构或行为,把一个设计的输入和输出之间的关系建立起来。
一个设计实体可以有多个结构体,每个结构体对应着实体不同的实现方案,各个结构的地位是同等的。
结构体对其基本设计单元的输入输出关系可以用三种方式进行描述,即行为描述、寄存器传输描述和结构描述。
不同的描述方式,只是体现在描述语句的不同上,而结构体的结构是完全一样的。
3.程序包、库及配置
库和程序包是VHDL的设计共享资源,一些共用的、经过验证的模块放在程序包中,实现代码重用。
一个或多个程序包可以预编译到一个库中,使用起来更为方便。
库(LIBRARY)
库是经编译后的数据的集合,用来存放程序包定义、实体定义、结构体定义和配置定义,使设计者可以共享已经编译过的设计结果。
在VHDL语言中,库的说明总是放自在设计单元的最前面:
LIBRARY库名;
这样一来,在设计单元内的语句就可以使用库中的数据。
VHDL语言允许存在多个不同的库,但各个库之间是彼此独立的,不能互相嵌套。
程序包(PACKAGE)
程序包说明象C语言中的include语句一样,用来罗列VHDL语言中所要用到的常数定义、数据类型、函数定义等,是一个可编译的设计单元,也是库结构中的一个层次。
要使用程序包时可用USE语句说明。
3.标题是主设计单元,它可以独立编译并插入设计库中。
包体是次级设计单元,它可以在其对应的标题编译并插入设计库之后,再独立进行编译并也插入设计库中。
包体并不总是需要的。
但在程序包中若包含有子程序说明时则必须用对应的包体。
这种情况下,子程序体不能出现在标题中,而必须放在包体中。
若程序包只包含类型说明,则包体是不需要的。
3.VHDL语言的数据类型和运算操作符
1.VHDL语言的对象
VHDL语言中可以赋值的对象有3种:
信号(Signal)、变量(Variable)、常数(Constant)。
在数字电路设计中,这3种对象通常都具有一定的物理意义。
例如,信号对应地代表电路设计中的某一条硬件连线;常数对应地代表数字电路中的电源和地等。
当然,变量对应关系不太直接,通常只代表暂存某些值的载体。
3类对象的含义和说明场合如表所示。
表VHDL语言3种对象的含义和说明场合
对象类别
含义
说明场合
信号
信号说明全局量
Architecture,package,entity
变量
变量说明局部量
Process,function,procedure
常数
常数说明全局量
上面两种场合下,均可存在
2.VHDL语言的数据类型
(1)数据类型的种类
在VHDL语言中,信号、变量、常数都是需要指定数据类型的,VHDL提供的数据类型可归纳如下:
整数
实数
标量类型枚举
物理
复合类型数组
数据类型记录
子类型
文件类型
(2)数据类型的转换
在VHDL语言中,数据类型的定义是相当严格的,不同类型数据是不能进行运算和直接赋值的。
为了实现正确的运算和赋值操作,必须将数据进行类型转换。
数据类型的转换是由转换函数完成的,VHDL的标准程序包提供了一些常用的转换函数。
3.VHDL语言的运算操作符
如同别的程序设计语言一样,VHDL中的表达式是由运算符将基本元素连接起来的式子。
VHDL的运算符可分为4组:
算数运算符、关系运算符、逻辑运算符和其他运算符。
通常,在一个表达式中有两个以上的算符时,需要使用括号将这些操作分组。
如果一串操作的算符相同,且是AND、OR、XOR这三个算符中的一种,则不需要使用括号,如果一串操作中的算符不同或有除这三种算符之外的算符,则必须使用括号。
关系运算符=、/=、<、<=和>=的两边类型必须相同,因为只有相同的数据类型才能比较,其比较的结果为BOOLEAN型。
正(+)负(-)号和加减号的意义与一般算术运算相同。
连接运算符用于一维数组,“&”符号右边的内容连接之后形成一个新的数组,也可以在数组后面连接一个新的元素,或将两个单元素连接形成数组。
连接操作常用于字符串。
乘除运算符用于整形、浮点数与物理类型。
取模、取余只能用于整数类型。
取绝对值运算用于任何数值类型。
乘方运算的左边可以是整数或浮点数,但右边必须为整数,且只有在左边为浮点时,其右边才可以为负数。
4.VHDL语言的主要描述语句
在用VHDL语言描述系统的硬件行为时,按语句执行的顺序可分为顺序语句和并行语句。
顺序语句主要用来实现模型的算法部分;而并行语句则基本上用来表示黑盒的连接关系。
黑盒中所包含的内容可以是算法描述或一些相互连接的黑盒。
(1)顺序语句
VHDL提供了一系列丰富的顺序语句,用来定义进程、过程或函数的行为。
所谓“顺序”,意味着完全按照程序中出现的顺序执行各条语句,而且还意味着在结构层次中前面语句的执行结果可能直接影响后面语句的结果。
(2)并行语句
由于硬件语言所描述的实际系统,其许多操作是并行的,所以在对系统进行仿真时,系统中的元件应该是并行工作的。
并行语句就是用来描述这种行为的。
并行描述可以是结构性的也可以是行为性的。
而且,并行语句的书写次序并不代表其执行的顺序,信号在并行语句之间的传递,就犹如连线在电路原理图中元件之间的连接。
主要的并行语句有以下几种:
*.块(BLOCK)语句
*.进程(PROCESS)语句
*.生成(GENERATE)语句
*.器件(COMPONENT)和器件例化(COMPONENT_INSTANT)语句
VHDL语言是一门比较复杂的硬件设计语言,除了本章所述的有关内容外,它还包含许多别的东西,鉴于篇幅有限,在此不再一一罗列,有兴趣者可自行参考有关VHDL语言方面的书籍和资料。
三、EDA技术的现状以及未来发展展望
现在EDA技术发展迅猛,应用比较广泛,包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域都有EDA的应用。
目前,EDA技术已在产品设计与制造、教学和科研部门广泛使用,发挥着巨大的作用。
在产品设计与制造方面,EDA技术可实现前期的计算机仿真、系统级模拟及测试环境的仿真、PCB的制作、电路板的焊接、ASIC的设计等。
在科研和新产品开发中,FPGA能提供良好的滤波器设计,而且能完成DSP高级数据处理功能,因而FPGA在现代通信领域方面获得广泛应用。
在产品设计与制造方面,从高性能的微处理器、数字信号处理器,一直到彩电、音响和电子玩具电路等,EDA技术不单是应用于前期的计算机模拟仿真、产品调试,而且也在电子设备的研制与生产、电路板的焊接等方面有着重要的作用。
可以说电子EDA技术已经成为电子工业领域不可缺少的技术支持。
EDA技术将广泛应用于高校电类专业的实践教学和科研工作中。
与世界各知名高校相比,我国高等院校在EDA及微电子方面的教学和科研工作有着明显的差距,我们的学生现在做的课程实验普遍陈旧,有的甚至还在做着20年前的完全用分离元件搭制的电路实验,动手能力较差。
从某种意义上来说,EDA教学科研情况如何,代表着一个学校电类专业教学及科研水平的高低,而EDA教学科研工作开展起来后,还会对微电子类、计算机类学科产生积极的影响,从而带动各高校相应学科的同步发展。
另外,对电类专业学生而言,了解EDA的基本概念,具备EDA的基本技能,也是他们将来走上工作岗位必备的素质和最基本的要求。
因而加快我国高等院校EDA教学及科研工作的建设是很有必要的。
总结:
本次综述在了解的EDA技术的发展历史的基础上对其进行进一步的了解,主要是关于其硬件描述语言(VHDL语言)的学习,通过对其语言的对象、数据类型等方面的了解也让自己在课堂学习的基础上更加了解EDA硬件描述语言的规范和结构和在编写过程中的注意事项等。
同时,在了解了EDA技术的应用专业和对其现状和未来发展进行分析后,我们也能清楚的看到EDA技术的远大发展潜能,也相信我们能掌握这门技术将对我们未来的发展之路也将有着不可限量的重要作用和辅助!
参考文献:
[1]潘松,黄继业.《EDA技术实用教程》(第三版)
[2]孟庆海,张洲.《VHDL基础及经典实例开发》
[3]姜东立.《VHDL语言程序设计及应用》(第二版)
[4]XX文库:
《EDA的发展现状和前景》
[5]XX百科:
VHDL语言
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 课程 综述
![提示](https://static.bdocx.com/images/bang_tan.gif)