EDA第2章硬件描述语言VHDL

EDA第2章硬件描述语言VHDL

ID:40842628

大小:661.51 KB

页数:73页

时间:2019-08-08

EDA第2章硬件描述语言VHDL_第1页
EDA第2章硬件描述语言VHDL_第2页
EDA第2章硬件描述语言VHDL_第3页
EDA第2章硬件描述语言VHDL_第4页
EDA第2章硬件描述语言VHDL_第5页
EDA第2章硬件描述语言VHDL_第6页
EDA第2章硬件描述语言VHDL_第7页
EDA第2章硬件描述语言VHDL_第8页
EDA第2章硬件描述语言VHDL_第9页
EDA第2章硬件描述语言VHDL_第10页
资源描述:

《EDA第2章硬件描述语言VHDL》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、2.4 VHDL结构体的描述方式2.3 VHDL的语法要素2.2 VHDL程序的基本结构2.1 VHDL简介第2章硬件描述语言VHDL用来实现硬件电路结构的描述语言称为硬件描述语言(HardwareDescribeLanguage,HDL)。它是一种人工语言,主要用于从多种抽像层次上进行数字系统的建模。2.1 VHDL简介2.1.1VHDL的发展及特点2.1.2传统设计与VHDL设计对照2.1.1VHDL的发展及特点VHDL的英文全名是(VeryHighSpeedIntegratedCircuit,VHSIC)HardwareD

2、escriptionLanguage,VHDL是20世纪80年代中期,由美国国防部资助的VHSIC项目开发的产品。1.VHDL的发展2.VHDL的主要特点(1)功能强大,灵活性高(2)器件无关性(3)可移植性(4)自顶向下的设计方法(5)数据类型丰富(6)建模方便(7)运行库和程序包丰富2.1.2传统设计与VHDL设计对照传统硬件设计方法有如下几个特征。(1)采用自下而上的设计方法(2)采用通用逻辑元器件(3)在系统硬件设计的后期进行调试和仿真(4)设计结果是一张电路原理图1.传统硬件设计方法2.使用VHDL的硬件设计方法(1)

3、支持自顶向下的设计方法所谓自顶向下的设计方法就是从系统的总体要求出发,自顶向下分3个层次对系统硬件进行设计。第1个层次是行为描述。第2个层次是数据流描述。第3个层次为逻辑综合。(2)采用大量的ASIC芯片(3)早期仿真,以确定系统的可行性(4)设计更容易(5)只需写出系统的HDL源程序文件在进行较复杂可编程逻辑电路设计时,通常建议采用原理图和VHDL结合的方法来设计。2.2 VHDL程序的基本结构2.2.1VHDL程序的基本单元与构成2.2.2实体2.2.3结构体2.2.4库、程序包和配置图2.1VHDL程序结构示意图2.2.1

4、VHDL程序的基本单元与构成VHDL中的所有设计均与实体有关,实体是设计中最基本的模块。设计的最顶层是顶层实体。如果设计分层次,那么在顶级实体中将包含较低级别的实体。实体中定义了该设计所需的输入/输出信号、信号的输入/输出类型(即端口模式),同时,实体中还定义他们的数据类型。2.2.2实体实体的格式如下:entityisportend;图2.2实体所对应的符号每个端口必须进行如下定义:端口信号名、

5、端口模式及端口数据类型。图2.3端口模式示意图所有能被仿真的实体都由一个结构体描述,结构体描述实体的行为功能,即设计的功能。2.2.3结构体图2.4结构体构成示意图结构体的一般格式如下:architectureofis--结构体声明区域-声明结构体所用的内部信号及数据类型--如果使用元件例化,则在此声明所用的元件begin--以下开始结构体,用于描述设计的功能--concurrentsignalassignments并行语句信号赋值--processes进程

6、(顺序语句描述设计)--componentinstantiations元件例化end;2.2.4库、程序包和配置程序包定义了一组数据类型说明、常量说明、元件说明和子程序说明,以供其他多个设计实体引用。1.程序包--包头说明packagelogicistypethree_level_logicis('0','l','z');constantunknown_value:three_level_logic:='0';functioninvert(input:three_level_logic)re

7、turnthree_level_logic;endlogic;--包体说明packagebodylogicis--如下是函数invert的子程序体:functioninvert(input:three_level_logic)returnthree_level_logic;begincaseinputiswhen'0'=>return'1';when'1'=>return'0';when'z'=>return'z';endcase;endinvert;endlogic;2.库库是专门存放预先编译好的程序包的地方,这样这些程序包就

8、可以在其他设计中被调用。在VHDL中,可以存在多个不同的库,但是库与库之间是独立的,不能相互嵌套。目前VHDL中使用的库有STD库、IEEE库、Work库、ASIC的Vital库和用户定义库。表2.1IEEE库及程序包说明库名程序包名包中预定义内容Stdstan

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。