VHDL复杂数字系统设计 教学课件 ppt 作者 金西_ 第2章

上传人:E**** 文档编号:89350328 上传时间:2019-05-23 格式:PPT 页数:276 大小:1.72MB
返回 下载 相关 举报
VHDL复杂数字系统设计 教学课件 ppt 作者 金西_ 第2章_第1页
第1页 / 共276页
VHDL复杂数字系统设计 教学课件 ppt 作者 金西_ 第2章_第2页
第2页 / 共276页
VHDL复杂数字系统设计 教学课件 ppt 作者 金西_ 第2章_第3页
第3页 / 共276页
VHDL复杂数字系统设计 教学课件 ppt 作者 金西_ 第2章_第4页
第4页 / 共276页
VHDL复杂数字系统设计 教学课件 ppt 作者 金西_ 第2章_第5页
第5页 / 共276页
点击查看更多>>
资源描述

《VHDL复杂数字系统设计 教学课件 ppt 作者 金西_ 第2章》由会员分享,可在线阅读,更多相关《VHDL复杂数字系统设计 教学课件 ppt 作者 金西_ 第2章(276页珍藏版)》请在金锄头文库上搜索。

1、第二章 硬件描述语言VHDL,2.1 VHDL语言简介 2.2 VHDL程序的基本结构 2.3 VHDL语言的基本数据类型和操作符 2.4 VHDL结构体的描述方式 2.5 Active-VHDL上机准备 2.6 使用VHDL书写测试基准的方法 2.7 基本逻辑电路的VHDL实现 2.8 VHDL上机实践 复习思考题,2.1 VHDL语言简介,2.1.1 VHDL的特点 20世纪80年代以来,采用计算机辅助设计(CAD)技术设计硬件电路在全世界范围得到了普及和应用。一开始,仅用 CAD来实现印刷板的布线,以后慢慢地才实现了插件板级规模的设计和仿真,其中最具代表性的设计工具是OrCAD和Tang

2、o,它们的出现使电子电路设计和印刷板布线工艺实现了自动化。但这种设计方法就其本身而言仍是自下而上的设计方法,即利用已有的逻辑器件来构成硬件电路,它没有脱离传统的硬件设计思路。,随着集成电路规模与复杂度的进一步提高,特别是大规模、 超大规模集成电路的系统集成,使得电路设计不断向高层次的模块式的设计方向发展,原有的电原理图输入方式显得不够严谨规范,过多的图纸和底层细节不利于从总体上把握和交流设计思想。再者,自下而上的设计方法使仿真和调试通常只能在系统硬件设计后期才能进行,因而系统设计时存在的问题只有在后期才易发现。这样,一旦系统设计存在较大缺陷,就有可能要重新设计系统,使得设计周期大大增加。,基于

3、以上电原理图输入方式的缺陷,为了提高开发效率, 增加已有成果的可继承性并缩短开发时间,大规模 ASIC研制和生产厂家相继开发了用于各自目的的硬件描述语言。 其中最具代表性的就是美国国防部开发的VHDL语言和 Verilog公司开发的Verilog HDL以及日本电子工业振兴协会开发的UDL/I语言。 从工程的角度看,VHDL独立于各种电子CAD手段之外, 它便于学习、 继承、 管理。美国国防部曾硬性规定: 所有牵涉ASIC设计的电子系统合同项目都要用VHDL语言设计和存档, VHDL的地位和作用由此可见一斑。,1987年12月10日,IEEE标准化组织发布IEEE标准的VHDL, 定为IEEE

4、 1076 - 1987标准(该标准是从1983年8月美国空军支持并开发的VHDL 7.2版发展而来的)。 这使得VHDL成为当时惟一被IEEE标准化的HDL语言, 标志着 VHDL被电子系统设计行业普遍接收并推广为标准的HDL语言。许多公司因而纷纷使自己的开发工具与VHDL兼容。,利用VHDL语言设计数字系统具有以下4个优点: (1) 设计技术齐全、方法灵活、支持广泛。VHDL语言可以支持自上而下和基于库的设计方法, 还支持同步电路、异步电路、 FPGA以及其它随机电路的设计。目前大多数EDA工具几乎在不同程度上都支持VHDL语言,这给VHDL语言进一步推广和应用创造了良好的环境。 (2)

5、系统硬件描述能力强。VHDL具有多层次描述系统硬件功能的能力,其描述的对象可以从系统的数学模型直到门级电路。,(3) VHDL语言可以与工艺无关编程。VHDL设计硬件系统时,可以编写与工艺有关的信息,但是,与大多数HDL语言不同的是,当门级或门级以上层次的描述通过仿真验证后,可以用相应的工具将设计映射成不同的工艺(如MOS、 CMOS等)。 这样,工艺更新时,就无须修改程序,只须修改相应的映射工具,所以,在VHDL中,电路设计的编程可以与工艺相互独立。 (4) VHDL语言标准、规范,易于共享和复用。VHDL语言的语法较严格,给阅读和使用都带来了极大的好处。再者, VHDL作为一种工业标准,设

6、计成果便于复用和交流,反过来也能进一步推动VHDL语言的推广和普及。,2.1.2 Verilog HDL和VHDL的比较 Verilog最初只是一家普通的民间公司的产品,后被当今第一大EDA公司Cadence收购,并推出了现今广为流传的Verilog HDL。 Verilog HDL是一种类似C语言风格的硬件描述语言,1995年正式成为IEEE标准, 在工业界使用很普遍。而VHDL是类似Pascal语言(脱胎于Ada语言)的硬件描述语言,严谨得有点呆板,但绝对不出错, 所以在国内外教学上用得非常多。现在大部分仿真器都支持Verilog HDL、VHDL混合仿真。 同时使用两种语言也没有什么问题

7、,它们也正在相互向对方的优势学习, 相互靠拢。 Verilog HDL和VHDL作为描述硬件电路设计的语言, 不同点在于:Verilog HDL在行为级抽象建模的覆盖范围比VHDL稍差一些,而在门级描述方面比VHDL强一些,建模能力比较如图2 - 1所示。,图 2-1 Verilog HDL与VHDL建模能力比较示意图,Verilog HDL和VHDL共同特点在于:都能形式化地抽象表示电路的结构和行为;都支持逻辑设计中层次与领域的描述;具有电路仿真和验证机制,以保证设计的正确性;支持电路描述由高层到低层的综合转换, 便于文档管理,易于理解与设计重用。从设计流程看,都利用层次化、结构化的设计方法

8、, 自顶向下进行设计, 其HDL设计流程图如图2-2所示。,图 2-2 HDL设计流程图,2.1.3 传统设计与VHDL设计对照 我们把以原理图(Schematic)输入设计为主的方式称之为传统设计, 而把以VHDL语言进行设计描述的方式称之为高层次设计。 由于VHDL代码完全由文字组成,而传统的设计往往是一张张的原理图,这两者之间存在一定的对应关系。我们知道, 传统的原理图总是由线和一些符号相互连接而构成,实体是与符号相对应的。而且它规定了一个设计单元对外的接口信号结构体则是与某一层的原理图相对应,而且它总是与某个实体相关, 并对该实体的结构和行为进行描述。图2-3是一个RS触发器传统设计的

9、实例。,图2-3所示rsFF的符号为设计者描述了下面几部分信息: 器件输入脚的数目(本例为Set和Reset)、 器件输出脚的数目(本例为Q和QB)以及器件的功能(本例由符号名描述器件的功能)。 这个RS触发器的简单线路图如图2-4所示。,图2-3 rsFF符号,图2-4 rsFF线路图,同样的设计在VHDL中将如何完成? 在VHDL中将如何表示符号呢? 在VHDL中将看到什么样的原理图呢? (1) 实体Entity与符号对应。由实体建立所有的设计,在VHDL中实体直接和传统设计中的符号相对应,图2-3所表示的这个rsFF符号对应于如下的VHDL代码: ENTITY rsFF IS PORT

10、(set, reset:IN BIT; Q, QB:BUFFER BIT); END rsFF;,注意: 在VHDL语言中,库的声明与包的使用总是放在设计单元的最前面。 LIBRARY IEEE; USE IEEE.STD.LOGIC.1164.ALL; 这里,IEEE是库名,STD.LOGIC.1164是IEEE库中的一个包。 有了上面这两条语句,下面的设计单元(实体和结构体)就可以使用STD.LOGIC.1164包中定义的数据类型和各种函数了。在图2-3的VHDL代码中,关键词ENTITY是实体语句的开头,即由程序包STD.LOGIC.1164提供该语言的关键词与数据类型, 它们全部用大写

11、表示,以便于熟记, 例如IS、PORT、IN、BIT等,提供的标准数据类型是BIT。 VHDL编辑器并不区分大、小写。,(2) ARCHITECTURE与线路图对应。在VHDL中也有rsFF元件线路图的相对应部分,它叫结构体, 结构体总是对应实体而言并描述那个实体的行为。对应rsFF线路图的结构体的VHDL代码如下所示: ARCHITECTURE netlist OF rsFF IS COMPONENT nand2 PORT (A, B:IN BIT; C:OUT BIT); END COMPONENT; BEGIN U1:nand2 PORT MAP (set, QB, Q); U2:nan

12、d2 PORT MAP (reset, Q, QB); END netlist;,这里,在关键词ARCHITECTURE标明的语句中描述实体的结构, 结构体名字是netlist,正描述的结构体叫rsFF实体的结构体。 VHDL语言的语法比较严格。一段完整的VHDL代码通常由实体语句、结构体语句、配置说明语句以及库、包说明语句组成。其中实体语句可用于描述设计单元的外部接口信号,结构体语句可用于描述设计单元内部的结构和行为。一般来说,结构体对设计单元内部的功能描述有三种描述:行为级描述、寄存器传输级描述和结构描述(本例中采用的是结构方式的描述);配置说明语句可用于从库中选取不同的元件来构成设计单元

13、的不同版本;设计单元主要用于存放已经编译过的实体结构体、设计单元和配置数据。当前,在VHDL中的库大致可以分为5种:IEEE库、STD库、ASIC矢量库、用户定义和WORK库,包则主要用于罗列程序中用到的各种数据、常量、子程序等。,(3) VHDL的描述。 VHDL对系统与电路提供的描述主要是两个方面:结构方式和行为方式。从上例中可看出,结构化描述与传统的原理图设计更接近,但VHDL的主要优点是它能从行为上描述系统和电路,而且可以按算法方式或按数据流的方式进行行为描述。如何选用一种具体的描述方式,要视具体的系统和电路而定。 RS触发器对应的行为描述如下:,ARCHITECTURE behave

14、 OF rsFF IS BEGIN Q=NOT(QB AND set) AFTER 2ns; QB=NOT (Q AND reset) AFTER 2ns; END behave;,在这个结构体中用并行信号赋值语句,当名字隐含时,含在模块中的语句给信号赋值,该语句的执行是并行的而不是串行的。 在此结构体也不存在元件具体安装语句,也没有进一步的分层层次,而是由并行的两个信号赋值语句来完成的行为方式结构体。 在VHDL中描述rsFF器件的功能,按算法表示方式将采用进程语句。 下面由sequential结构体再给出一个例子。,ARCHITECTURE sequential OF rsFF IS BE

15、GIN PROCESS (set, reset) BEGIN IF set= 1 AND reset = 0 THEN Q= 0 AFTER 2ns; QB= 1 AFTER 4ns; ELSIF set =0 AND reset= 1 THEN Q= 1 AFTER 4ns; QB= 0 AFTER 2ns; ELSIF set= 0 AND reset= 0 THEN Q= 1 AFTER 2ns; QB= 1 AFTER 2ns; END IF; END PROCESS; END sequential;,这种结构体只含有一个语句,称为进程语句。它在开始的一行用PROCESS关键字开始,由

16、含有END PROCESS的行结束, 在关键字PROCESS和BEGIN之间是语句说明部分,在关键字PROCESS和BEGIN这两行之间的所有语句是进程语句部分。 上面介绍了VHDL语句的一些基本构成和语句,用VHDL语句来进行电子设计的主要优势在于它支持自顶向下的设计方法, 设计者可以在设计的每个层次(行为级、 RTL级和门级)上进行仿真和验证,这样就避免了在设计进行到后期才发现原来设计中的逻辑性错误或结构性错误, 从而减少了设计风险,也缩短了设计周期。 另外, VHDL设计与最终的工艺实现无关。,2.1.4 VHDL的新发展 当前复杂数字系统设计面临着这样一些问题:设计复用、 知识产权和内核插入;综合,特别是高层次综合和混合模型的综合;验证, 包括仿真验证和形式验证等自动验证手段;深亚微米效应。为了进一步提高设计能力,以解决这些问题,近年来众多研究者致力于从更高的抽象层次上开展设计,这方面的工作以

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号