《vhdl的讲稿》由会员分享,可在线阅读,更多相关《vhdl的讲稿(125页珍藏版)》请在金锄头文库上搜索。
1、1VHDL 硬件描述语言的讲稿本门课的学习基础是建立在数字电路与系统这门课的基础上。课程的学时分配:理论教学: 16 学时; 实验教学:16 学时。 理论教学:共分成为六个部分。第一部分: 概述,介绍了 VHDL 硬件描述语言的发展过程,为什么要学习 VHDL 语言以及传统设计与 VHDL 设计的对照;第二部分: VHDL 的模型结构,详细介绍了 VHDL 语言的实体和结构体;第三部分:基本词法元素、标识符、数据对象、属性及运算符;第四部分: VHDL 的基本语句、子结构、包集合及配置,介绍了顺序语句和并发语句,在学生掌握了 VHDL 的基本语句基础上,再介绍它的包、库及配置;第五部分: 组合
2、逻辑电路设计,介绍了基本门、编码器、译码器、多路选择器、比较器、求补器、三态门及总线缓冲器;第六部分: 时序逻辑电路设计,介绍了触发器、比较器、锁存器、计数器移位寄存器和状态机的设计、数字系统的设计举例。实验教学:16 学时。 实验教学共分为十个实验,其中有实验九和实验十为大型实验。成绩评定标准:本门课是实践性很强的课程,成绩评定是以完成的实验的情况来定。完成六个实验以下为:不及格。完成六七个实验为:及格。完成八个实验为:中等。完成九个实验为:良好。完成十个实验为:优秀。第一章 概述VHDL:是 70 年代末-80 年代初由美国国防部( DOD)为超高速集成电路(VHSIC :Very Hig
3、h Speed Integrated Circuit) 计划提出的硬件描述语言。缩写为:VHDL( VHSIC Hardware Description Language)。VHDL 在 80 年代初期,并且已经被接受为描述、验证和设计电子线路的最重要的标准语言之一。目前,许多高技术公司以 VHDL 作为数字系统的唯一描述语言。许多大学开设了 VHDL 语言课程,并且有几个 VHDL 组织为新用户提供支持。这几年一些中小公司开始使用 VHDL。 VHDL 和 ASIC(application specific integrated circuit,专用集成电路)也已经开始与单片控制电路竞争。V
4、HDL 语言为设计者开辟了一种全新的设计电子线路的方法。使用 VHDL 语言以代替传统原理图进行电子系统设计有两条理由:缩短设计时间,简化维护工作。 VHDL 作为一个规范语言和建模语言,其第一个模拟器出现于 80 年代后期。80 年代末,则随着 VHDL 的标准化出现了一些工具,而又过了几年人们才开始在设计中使用VHDL。目前,各主要的工具制造商都支持 VHDL 标准。现在,VHDL 已成为标准化的语言,优点是易于将 VHDL 代码在不同的商业平台和工具之间进行交换。这意味着在某一个工具商的模拟器用的 VHDL 程序可以不加修改地移到另一个工具制造商的模拟器。早几年2尽管数字电路设计的模型是
5、标准化的,但对于 VHDL 的设计(综合)还没有标准化。经过几年研究和开发,对越来越来的语言构造部分的综合成为现实。VHDL 工具,尤其是 VHDL 模拟器,近年来也已经在 PC 上开发出来,其价格戏剧性地下降,使得较小的公司也可以使用 VHDL 工具。同时也有 PC 综合工具,主要是用于FPGA 和 PLD,但它们的功能要比工作站少一些。在学校方面主要是在 PC 机上用于对FPGA 和 PLD 的设计和综合。用 VHDL 代码,而不是用原理图(譬如:用门和触发器) ,是一种新的设计方法。使用 VHDL 不只是意味着编写代码,而且也便于建立层次结构和元件库进行设计。 VHDL 也利用编写标准电
6、路的代码(譬如:Motorola 68020) 。现在已有一些公司专门出售模拟用的标准元件。这意味着使用标准元件的整个电路板的模型可以通过计算机模拟进行验证。如果模拟整个电路板,诸如访问时间、非法地址等可以用高强手段检测出来。通常可以对每个专门加一段相应的程序段,用来检测接口信号是否按时到达,所用地址是否合法等。授课要点:1.1 VHDL 的诞生一、目的DOD 提出 VHDL 语言的目的在于对所开发的这种硬件描述语言具有功能强大、严格、可读性好等特点,并能降低开发电子新产品的费用以及将来的政府订货合同都用它来描述,以避免对合同做出有歧义性的解释。二、DOD 为什么会提出这个计划呢?1、原因及存
7、在的问题 在于 DOD 每年有众多的项目,而这些项目又有众多的承包商,他们使用过多的设计语言,这就是造成了承包人甲的设计不能被承包人乙再次利用,这就是造成了信息交换困难和设计维护困难。2、问题的解决 DOD 提出了 VHDL 硬件描述语言,使每个承包商都一律采用 VHDL 文档,这样就解决了上述存在的问题。1986 年 3 月,IEEE 致力于 VHDL 的标准化工作,经过广泛征求意见,融合了上百种其它 HDL 的优点,IEEE 于 1987 年 12 月公布了 VHDL 的标准版本(IEEE.STD_1076/87)(IEEE :美国电气工程师协会的缩写) 。这时,在全球范围内开始使用 VH
8、DL 硬件描述语言,通过一段时间的使用,1993 年作了修改,形成了目前使用的 93标准(IEEE.STD_1076/93)。1.2 为什么要用 VHDL 语言 一、为什么要用 VHDL 语言VHDL 是随着集成电路系统化、高集成化逐步发展起来的。VHDL 是一种用于可编程逻辑器件高层次的系统设计和测试方法的描述语言。对于以前所使用的中、小规模集成电路,我们采用三种传统的设计方法:逻辑图、布尔方程和卡诺图 。这种传统的设计方法,对于 VLSI(Very Large Scales Integration Circuit)设计来说,费时、费力、易出差错,在 VLSI 设计中是不可取的。大多数工程师
9、(包括在座的同学们) ,都习惯于采用原理图输入方式。但是,纯图形输入方式对于大型、复杂的系统(超出 5 千门、1 万门、2 万门以致于 200 万门的电路) ,由于种种条件和环境的制约,工程师们无法提高工作效力,暴露出种种弊端。进入上世纪 90 年代以来,随着计算机和高速通信设备的飞速发展,而对 IC(集成电路)提出了更高的要求,即:高集成度、系统化、微尺寸、微功耗的要求。这些要求的提出,无疑是对每一个设计工程师提出的挑战。原因是: VHDL 已成为当今数字电路与系统3的描述、建模、综合的工业标准。至今为止,所有的电子产品都采用 EDA 工具和人员干预的方式进行设计,对所设计的电路来说将有 8
10、0%以上的电路系统采用 VHDL 语言进行设计。在电子产业界无论是 ASIC 设计人员,还是系统设计人员,都需要学习和掌握 VHDL语言来提高他们的工作效率。因此,对于在座的各位同学如果你不尽快地掌握这门语言,可以用这样的话来形容,这就好象在上世纪 70 年代末不会使用集成电路一样。如果你掌握了这门语言,将为你今后的系统设计课程设计、毕业设计、产品研发打基础。为毕业后就业创造条件。二、如何学习 VHDL 语言1、介绍 VHDL 的参考书VHDL 电子设计硬件描述语言 学苑出版社 周祖成 译 VHDL 简明教程 清华大学出版社 王小军 编VHDL 硬件描述语言与数字逻辑电路设计西安电子科技大学出
11、版社 侯伯亨、顾新 编著 VHDL 程序设计 清华大学出版社 曾繁泰、陈美金 著VHDL 设计电子线路 清华大学出版社 边计年、薛宏熙 编著2、不要整本书地读 VHDL,这样你会认为它是非常难学的一种语言。3、VHDL 是一种大型语言。要学好有关它的全部可能是非常大的任务,但学会初步地写一个有用的模块,这并不需要掌握整个语言,可以初步掌握语言的一些主要内容,而当需要写复杂的模块时,再学用一些更为复杂的语言。4、强调上机,编程实验是掌握 VHDL 最佳的途径。三、VHDL 的主要优点1、覆盖面广,描述能力强,是一个多层次的硬件描述语言。2、VHDL 具有良好的可读性。 (即:可以被计算机接受,也
12、容易被人所理解)3、VHDL 具有良好的可移植性。它的设计描述可以被不同的工具所支持。从一个模拟工具移植到另一个模拟工具;从一个综合工具移植到另一个综合工具;从一个工作平台移植到另一个工作平台去执行,这意味着同一个 VHDL 设计描述可以在不同的设计项目中采用。4、VHDL 本身的生命期长。因为 VHDL 的硬件描述与工艺技术无关,不会因工艺变化,而使描述过时。四、VHDL 的不足之处设计的最终实现取决于针对目标器件的编译器,工具的不同导致综合质量不一样。1.3 传统设计与 VHDL 设计的对照一、传统设计传统设计方法有以下几个主要特征:(1)采用自下而上(Bottom Up)的设计方法;(2
13、)采用通用的逻辑元、器件;(3)在系统硬件设计的后期进行仿真和调试;(4)主要设计文件是电原理图。1、采用自下而上的设计方法主要步骤:第一步:根据系统对硬件的要求。4(1)详细编制技术规格书;(2)画出系统控制流程图。第二步:根据技术规格书和系统控制流程图。(1)对系统的功能进行细化;(2)合理地划分功能模块;(3)画出系统的功能框图。第三步:电路设计进行各功能模块的细化和电路设计。第四步:调试、完成整个系统的硬件设计各功能模块电路设计、调试完成后,将各个功能模块的硬件电路连接起来,再进行系统调试,最后完成整个系统的硬件设计。举例:设计一个基本 RSFF,其实现方案有两种: (1)用与非门(2
14、)用或非门下面选择与非门来实现基本 RSFF。根据 RSFF 的功能可知,它有二个状态:Q=0 和 Q=1。根据转移条件,可画出它的状态转移图。约束条件:R+S=0由状态转移图可画出基本 RSFF 的电路图和逻辑符号。从图中可知:(1)电路图 = 连线(信号)+ 基本设计单元的符号。连线:指输入/ 输出信号;符号:指设计者用于构造电路图的标准零件库。(2)RSFF 符号为设计者描述了下面几部分信息。1)器件输入脚的数目。2 个输入(置位信号 set,复位 reset ) 。2)器件输出脚的数目。2 个输出(Q 和 QB) 。53)器件的功能。由符号名描述器件的功能。2、采用通用的逻辑元、器件在
15、传统的硬件电路设计方法中,设计者总是根据系统的具体需要,选择市场上能买到的逻辑元、器件,来构成所要求的逻辑电路,完成系统的硬件设计。3、在系统硬件设计的后期进行仿真和调试在传统的系统硬件设计方法中,仿真和调试通常只能在后期完成系统硬件设计以后,才能进行。原因是进行仿真和调试的仪器一般为系统仿真器、逻辑分析仪和示波器等。因此,只有在硬件系统已经构成以后才能使用。设计人员如采用传统的设计方法进行系统设计时,如考虑不周使系统设计存在问题,即:先天不足,有缺陷,而这个缺陷只有在后期才能较容易发现。这样,传统的硬件设计方法对系统人员就有较高的要求。一旦考虑不周,系统设计存在较大缺陷,那么就有可能要重新设
16、计系统,使得设计周期也大大增加。4、主要设计文件是电原理图在用传统的硬件设计方法对系统进行设计并调试完毕后,所形成的硬件设计文件,主要是由若干张电原理图构成的文件。在电原理图中详细标注了各逻辑元、器件的名称和互相间的信号连接关系。该文件是用户使用和维护系统的依据。对于小系统,这种电原理图只要几张至几十张就行了。但是,如果系统比较大,硬件比较复杂,那么这种电原理图可能要有几百张、几千张,甚至几万张。如此多的电原理图给归档、阅读、修改和使用都带来极大的不方便。二、VHDL 语言的设计VHDL 语言设计是以设计编程语言为主进行设计描述的方式,称之为高层次设计。主要特征:1、采用自顶向下的设计方法所谓自顶向下的设计方法,就是从系统总体要求出发 ,自顶向下地逐步将设计内容细化,最后完成系统硬件的整体设计 。 2