如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第12章硬件描述语言12·1概述12·2VHDL语言的基本结构12·3数据对象、数据类型和运算操作符12·4仿真和逻辑综合12·5VHDL基本逻辑电路设计举例本章小结习题12返回主目录第12章硬件描述语言随着大规模专用集成电路(ASIC)的开发和研制,各ASIC研制和生产厂家相继开发了用于各自目的的硬件描述语言。其中最具代表性的是美国国防部开发的VHDL语言(VHSICHardwareDescriptionLanguage),Viewlogic公司开发的VerilogHDL以及日本电子工业振兴协会开发的UDL/I语言。所谓硬件描述语言,就是可以描述硬件电路的功能、信号连接关系以及定时关系的语言,它比电原理图更能有效地表示硬件电路的特性。利用HDL语言设计系统硬件,通常采用自上而下的方法,即从系统总体要求出发,自上而下地逐步将设计内容细化,最后完成系统硬件的整体设计。在设计过程中,设计者分3个层次对系统硬件进行设计:行为描述、寄存器传输(RTL)方式描述和逻辑综合,并且在每一层次都要进行仿真,以便尽早发现问题。设计过程如图12.1所示。图12.1HDL语言设计系统硬件过程框图设计者不会受到元器件的限制,可根据设计需要大量采用ASIC芯片。采用HDL语言设计硬件电路时,主要的设计文件是用HDL语言编写的源程序,如果需要也可以转换成电原理图形式输出。y<="11111111";2)浮点类型(FloatingTypes)u1:invPORTMAP(sel,nsel);在例化元件时用于形参到实残的映射实体究竟和哪个构造体相对应,由配置语句来实现。[语句部分];体behave电路,读通该电路就要花较多的时间。2VHDL语言的基本结构经过一段延迟后,才能成为当前值的赋值,信号赋值采tmp1:=tmp1ORtmp2;1HDL语言设计系统硬件过程框图所谓行为描述,是指描述该设计单元的功能,即该……ENDnetlist;BEGIN12·2VHDL语言的基本结构12.2VHDL语言的基本结构12.2.1VHDL语言设计的基本单元及其构成VHDL语言的一个基本设计单元,简单的可以是一个与门,复杂的可以是一个微处理器或一个系统。但是,其基本构成是一致的,它们都由实体和构造体两部分组成。首先我们来看一个例子。图12.2是二选一电路及其VHDL描述。ENTITYmuxISGENERIC(m:TIME:=1ns);PORT(d0,d1,sel:INBIT;Q:OUTBIT);ENDmux;ARCHITECTUREconnectOFmuxISSIGNALtmp:BITBEGINcale:PROCESS(d0,d1,sel)VARIABLEtmp1,tmp2,tmp3:BIT;BEGINtmp1:=d0ANDsel;tmp2:=d1AND(NOTsel);tmp1:=tmp1ORtmp2;tmp<=tmp3;q<=tmpAFTERm;ENDPROCESS;ENDconnect;1.实体(ENTITY)实体部分主要规定了设计单元的输入和输出或引脚.实体部分的一般格式为ENTITY实体名IS[GENERIC(类属参数说明);][PORT(端口说明);]END实体名;属参数说明表示设计单元的默认类属参数值,例如规定端口的大小、实体的定时特性等。例如上述程序中的GENERIC(m:TIME:=1ns),指定了构造体内m的值为1ns。端口说明是对基本设计实体与外部接口的描述,即对外部引脚信号的名称、数据类型和输入输出方向的描述。其一般格式为PORT(端口名:方向数据类型名;……端口名:方向数据类型名);端口方向主要有4种:输入(IN)、输出(OUT)、缓冲(BUFFER)和双向(INOUT)。数据类型主要有布尔型(BOOLEAN)、位(BIT)位矢量(BIT-VECTOR)、整数(INTEGER)等。有些VHDL程序中,数据类型的说明符号有所不同,例如LIBRARYIEEEUSEIEEE.STD-LOGIC-1164.ALL;ENTITYmuISPORT(d0,d1,sel:INSTD-LOGIC;Q:OUTSTD-LOGIC);ENDmu;该例中,BIT类型用STD-LOGIC说明,这两种方法是完全等效的。只是使用了不同的库和包集合,例如上列程序的前两个语句。2.构造体构造体主要用来描述实体的内部逻辑,即描述一个实体的功能。构造体的一般说明格式为ARCHITECTURE构