VHDL程序结构介绍.ppt
《VHDL程序结构介绍.ppt》由会员分享,可在线阅读,更多相关《VHDL程序结构介绍.ppt(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目录123VHDL设计概念VHDL简介VHDL程序结构VHDL简介 VHDL全名Very-High-Speed Integrated Circuit Hardware Very-High-Speed Integrated Circuit Hardware Description LanguageDescription Language,超高速集成电路硬件描述语言,VHDL语言是一种用于电路设计的高级语言。最初是源于美国国防部1980年开始启动的超高速集成电路计划,在这一计划执行过程中,专家们认识到需要有一种标准的语言来描述集成电路的结构和功能,由此,美国国防部便开发出VHDL设计语言供美军用来
2、提高设计的可靠性和缩减开发周期的设计语言。VHDL设计概念 采用VHDL进行设计的方法为高层设计,即“概念驱动模式”设计。设计人员无需通过门级原理图描述,而是针对设计目标进行功能描述。VHDL并不十分关心一个具体逻辑是靠何种方式实现的,而是把开发者的精力集中到逻辑所实现的功能上。由于高层设计只定义系统的行为特性,因此可以不涉及工艺。采用VHDL进行设计的具体过程为:1、以VHDL语言描述设计概念;2、用VHDL仿真与调试工具分析此概念的“行为”,检查是否满足初始要求。这一过程与普通的编程语言,如C语言的编译、运行、调试是类似的。3、VHDL设计VHDL综合工具。利用集成电路厂商或EDA厂家提供
3、的被充分验证过的工艺库,以面积、功耗、速度等为目标进行优化,将电路映射成网表,得到门级电路后,还要进行仿真来验证门电路的行为和时序特性。4、物理设计。得到可供生产的文件,进行延时、故障、热分析等,保证系统的稳定工作,满足设计指标。VHDL程序结构程序结构实体和结构体实体和结构体 是是VHDL设计文件的两个基设计文件的两个基本组成部分本组成部分实体实体说明说明 描述设计实体描述设计实体(黑盒)(黑盒)的外部的外部接口信号(即输入接口信号(即输入/输出信号);输出信号);结构体结构体说明说明 用于描述设计实体用于描述设计实体(黑(黑盒)盒)的内部电路。的内部电路。包集合包集合 存放各设计模块能共享
4、的数存放各设计模块能共享的数据类型、常数、子程序等;据类型、常数、子程序等;库库 用于存放已编译的实体、结构体、包用于存放已编译的实体、结构体、包集合和配置。集合和配置。配置配置 用于从库中选取所需元件安装用于从库中选取所需元件安装到设计单元的实体中。到设计单元的实体中。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux21 IS PORT(a,b:IN STD_LOGIC;s:IN STD_LOGIC;y:OUT STD_LOGIC );END mux21;ARCHITECTURE behavior OF mux21 IS BEGIN PR
5、OCESS(a,b,s)BEGIN IF s=0 THEN y=a;ELSE y=b;END IF;END PROCESS;END one;程序包程序包实体说明实体说明结构体结构体实体实体说明说明的一般格式为:的一般格式为:ENTITY 实体名实体名 IS GENERIC类属参数说明类属参数说明;PORT端口端口说明说明;END;ayand2b 实体中的每一个实体中的每一个I/OI/O信号被称为端口,其功信号被称为端口,其功能对应于电路图符号的一个引脚。端口说明则是能对应于电路图符号的一个引脚。端口说明则是对一个实体的一组端口的定义,即对基本设计实对一个实体的一组端口的定义,即对基本设计实体与
6、外部接口的描述。体与外部接口的描述。端口是设计实体和外部环端口是设计实体和外部环境动态通信的通道。实体类似一个境动态通信的通道。实体类似一个“黑盒黑盒”,实,实体描述了体描述了“黑盒黑盒”的输入输出口。的输入输出口。ENTITY、IS、GENERIC、PORT、END是是VHDL的关键字(保留字)。的关键字(保留字)。实体名、端口名实体名、端口名(端口说明)(端口说明)等均应为符合等均应为符合VHDL命名规则的标识符。命名规则的标识符。实体说明实体说明类属信息类属信息1 1、作用、作用 为设计实体和其外部环境通信的静态信息提供通道,可以定义端口的大小、实体中元件的数目以及实体的定时特性等。2
7、2、一般格式、一般格式 GENERIC(CONSTANT 名字表:IN 子类型标识:=静态表达式,);端口说明端口说明端口说明的一般格式为:端口说明的一般格式为:PORT(端口名(端口名,端口名,端口名:端口模式:端口模式 数据类型;数据类型;端口名端口名,端口名,端口名:端口模式:端口模式 数据类型)数据类型);例如:例如:PORT(a,b:IN STD_LOGIC;y :OUT STD_LOGIC);端口名端口模式数据类型端口模式端口模式 用来说明数据传输通过该端口的方向。用来说明数据传输通过该端口的方向。ININ:数据只能从端口流入实体数据只能从端口流入实体OUTOUT:数据只能从端口流
8、出实体数据只能从端口流出实体INOUTINOUT:数据从端口流入或流出实体数据从端口流入或流出实体BUFFERBUFFER:数据从端口流出实体,同时可被数据从端口流出实体,同时可被内部反馈内部反馈内部反馈内部反馈。构造体内部也要使用构造体内部也要使用构造体内部也要使用构造体内部也要使用输出输出输出输出信号时,只能定义成信号时,只能定义成信号时,只能定义成信号时,只能定义成“buffer”“buffer”“buffer”“buffer”。端口数据类型端口数据类型 常用的有布尔型(boolean)、位型(bit)、位矢量型(bit-vector)、整数型(integer)、非标准逻辑和标准逻辑类型
9、(Std_ulogic和Std_logic)。1)boolean:布尔型,可取值“TRUE(真)”或“FALSE(假)”。2)bit:为位逻辑数据类型,信号取值是逻辑值“1”和“0”。3)bit_vector:取值是一组二进制位的值。如:如:如:如:8 8 8 8位数据总线数端口位数据总线数端口位数据总线数端口位数据总线数端口Port(d0,d1,sel:in bit;Port(d0,d1,sel:in bit;Port(d0,d1,sel:in bit;Port(d0,d1,sel:in bit;q:out bit;q:out bit;q:out bit;q:out bit;bus:out
10、bit_vector(7 downto 0)bus:out bit_vector(7 downto 0)bus:out bit_vector(7 downto 0)bus:out bit_vector(7 downto 0);4 4)IntegerInteger:整数,用作循环技术或常数,通常不用于:整数,用作循环技术或常数,通常不用于I/OI/O信号。信号。5 5)Std_ulogicStd_ulogic和和Std_logicStd_logic:非标准逻辑和标准逻辑类型,由IEEE:Std_logic_1164支持,程序包中定义了有关的数据类型,访问该程序包中的项目需要使用LIBRARY子句
11、和USE子句。Library IEEELibrary IEEELibrary IEEELibrary IEEE;Use IEEE.STD_Logic_1164.all;Use IEEE.STD_Logic_1164.all;Use IEEE.STD_Logic_1164.all;Use IEEE.STD_Logic_1164.all;Entity mu isEntity mu isEntity mu isEntity mu is Port(d0,d1,sel:in STD_Logic;Port(d0,d1,sel:in STD_Logic;Port(d0,d1,sel:in STD_Logic
12、;Port(d0,d1,sel:in STD_Logic;q:out STD_Logic;q:out STD_Logic;q:out STD_Logic;q:out STD_Logic;bus:out STD_Logic_vector(7 downto 0)bus:out STD_Logic_vector(7 downto 0)bus:out STD_Logic_vector(7 downto 0)bus:out STD_Logic_vector(7 downto 0);END mu;END mu;END mu;END mu;练习练习编写包含以下内容的实体代码:编写包含以下内容的实体代码:编写
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VHDL 程序结构 介绍
限制150内