欢迎来到天天文库
浏览记录
ID:50321773
大小:100.50 KB
页数:15页
时间:2020-03-08
《EDA 与数字系统设计 第2版 教学课件 作者 李国丽 等编著 CH2ch2-1.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第二章VHDL硬件描述语言2.1VHDL概述2.2VHDL的数据类型和数据对象2.3VHD设计的基本语句2.4VHDL高级语句2.5VHDL设计实例2.1VHDL概述2.1.1VHDL的特点2.1.2VHDL语言的基本结构2.1.3VHDL语言的实体说明语句(ENTITY)2.1.4VHDL语言的结构体(ARCHITECTURE)2.1.5程序包(PACKAGE)、库(LIBRARY)和USE语句2.1.1VHDL的特点(1)支持从系统级到门级电路的描述,既支持自底向上(bottom-up)的设计也支持从顶向下(top-down)的设计。(2)用结构化层次化的描述方法,使复杂电路的
2、设计更加简便。采用包的概念,便于标准设计文档资料的保存和广泛使用。(3)VHDL语言有常数、信号和变量三种数据对象,每一个数据对象都要指定数据类型,其定义的数据类型具有明确的物理意义,VHDL是强类型语言。(4)VHDL语言常用语句分为并行语句和顺序语句,完全能够描述复杂的电路结构和行为状态。2.1.2VHDL语言的基本结构例2-1-1用VHDL语言描述一位全加器。一位全加器的输入信号是A,B,Ci,输出信号是S和Co。表2-1-1全加器的真值表输入信号输出信号ABCiSCo0000000110010100110110010101011100111111一位全加器的逻辑表达式是:S
3、=A⊕B⊕CiCo=AB+ACi+BCi2.1.2VHDL语言的基本结构LIBRARYIEEE;--IEEE标准库程序包USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYfulladderIS--fulladder是实体名称实体PORT(A,B,Ci:INSTD_LOGIC;--定义输入/输出信号Co,S:OUTSTD_LOGIC);ENDfulladder;ARCHITECTUREaddstrOFfulladderIS--addstr是结构体名结构
4、体BEGINS<=AXORBXORCi;Co<=(AANDB)OR(AANDCi)OR(BANDCi);ENDaddstr;图2-1-1一位全加器CiABSCo2.1.2VHDL语言的基本结构第一部分是程序包,程序包是用VHDL语言编写的共享文件,定义在设计结构体和实体中用到的常数、数据类型、子程序和设计好的电路单元等,放在文件目录名称为IEEE的程序包库中。第二部分是程序的实体,定义电路单元的输入/输出引脚信号。程序的实体名称fulladder是任意取的,但是必须与VHDL程序的文件名称相同。实体的标识符是ENTITY,实体以ENTITY开头,以END结束。第三部分是程序的结构体
5、,具体描述电路的内部结构和逻辑功能。结构体以标识符ARCHITECTURE开头,以END结尾。结构体的名称addstr是任意取的。2.1.3VHDL语言的实体说明语句(ENTITY)实体是VHDL程序设计中最基本的组成部分,在实体中定义了该设计芯片中所需要的输入/输出信号引脚。实体说明语句的格式为:ENTITY实体名称ISPORT(端口信号名称1:输入/输出状态数据类型;端口信号名称2:输入/输出状态数据类型;…端口信号名称N:输入/输出状态数据类型);END实体名称;2.1.3VHDL语言的实体说明语句(ENTITY)例2-1-2一个同步十六进制加法计数器,带有计数控制、异步清零
6、、和进位输出等功能。计数器电路图如图2-1-2所示,电路有三个输入端和五个输出端,分别是时钟脉冲输入端CLK,计数器状态控制端EN,异步清零控制端Rd,四位计数输出端Q0,Q1,Q2,Q3和一个进位输出端Co。电路的功能表如表2-1-2所示。2.1.3VHDL语言的实体说明语句(ENTITY)图2-1-2同步十六进制加法计数器Q0Q1Q2Q3ENCoRdCLK控制端工作状态CLKENRd0异步清零上升沿11计数01保持表2-1-2计数器的功能表2.1.3VHDL语言的实体说明语句(ENTITY)ENTITYcntm16ISPORT(EN:INSTD_LOGIC;Rd:INST
7、D_LOGIC;CLK:INSTD_LOGIC;Co:OUTSTD_LOGIC;Q:BUFFERSTD_LOGIC_VECTOR(3DOWNTO0));ENDcntm16;2.1.4VHDL语言的结构体(ARCHITECTURE)结构体的一般格式为:ARCHITECTURE结构体名OF实体名称IS说明语句BEGIN电路描述语句END结构体名;例2-1-2设计程序的结构体部分如下:ARCHITECTUREcounstrOFcntm16ISBEGINCo<=‘1’WHEN
此文档下载收益归作者所有