VHDL程序的基本结构.ppt
《VHDL程序的基本结构.ppt》由会员分享,可在线阅读,更多相关《VHDL程序的基本结构.ppt(34页珍藏版)》请在三一办公上搜索。
1、可编程逻辑器件应用,主讲人:刘文怡,第五讲 VHDL程序的基本结构,VHDL语言设计的基本单元及其构成结构体的子结构描述包集合、库及配置要求:掌握硬件描述语言的基本框架结构;了解硬件描述语言的库、程序包和配置;,前节内容回顾,EDA,CPLD,FPGA,HDL,VHDLVHDL,VERILOG,AHDL FPGA芯片公司Altera,Xilinx,Microsemi(Actel),latticeFPGA,CPLD,单片机,DSP,ARM,如果把这个电路做成一个元件,别人使用的时候,只需知道两件事:一是封装!二是功能!,漂亮的程序(回顾),Fengzhuang_kaishiport(IN1:in
2、;IN2:in;IN3:in;IN4:in;OUT4:out)Fengzhuang_jieshuGongneng_kaishisignal T1,T2;OUT4=T1 or T2;T2=IN3 and IN4;T1=IN1 and IN2;Gongneng_jieshu,1、为了用起来像个函数的样子,不妨加个port关键词,把输入输出引脚象参数一样排列起来。2、很好地表达了4个输入引脚,1个输出引脚。3、提供给别人调用。,1、内部功能实现的细节2、T1、T2似乎有点奇怪,哪来的?3、那我们也规定先定义,后使用!,Library IEEE;Use IEEE.STD_LOGIC_1164.ALL;
3、ENTITY mux IS PORT(d0,d1,sel:in bit;q:out bit);END mux;,Architecture dataflow of mux issignal tmp1,tmp2,tmp3:bit;Begintmp1=d0 and sel;tmp2=d1 and(not sel);tmp3=tmp1 or tmp2;q=tmp3;End dataflow;,VHDL语言如何做的?,一个完整的VHDL语言程序通常包含5个部分:库(Library)包集合(Package)实体(Entity)结构体(Architecture)配置(Configuration),必备部分,
4、VHDL程序的基本构成,实体:描述所设计系统的外部接口信号,是可见的;结构体:描述系统内部的结构和行为,是不可见的;配置:选取所需单元组成系统设 计的不同版本;包集合:存放各种设计模块都能共享的数据类型、常数、子程序和函数等;库:存放已经编译的实体、结构体、包集合和 配置。,VHDL程序的基本单元解释,实体声明,实体声明语法:ENTITY 实体名 IS 类属参数说明;端口说明;END 实体名;举例:ENTITY mux ISPORT(d0,d1,sel:IN BIT;q:OUT BIT);END mux;,实体的声明,实体名必须与文件名相同,否则编译时会出错。实体用于定义电路的输入输出引脚,但
5、并不描述电路的具体结构和实现的功能。大小写不敏感。,实体声明注意事项,实体的类属参数说明(了解),类属参数说明是实体说明中的可选项,必须放在端口说明之前,用于指定参数,如端口大小、总线宽度、时间等;其一般书写格式为:GENERIC(常数名:数据类型:设定值,);举例:GENERIC(m:TIME:=1 ns);这个参数说明是指在VHDL程序中,结构体内的参数m的值为1ns。,实体的端口说明,端口说明是对基本设计实体(单元)与外部接口的描 述,也可以说是对外部引脚信号的名称,数据类型和 输入、输出方向的描述;其一般书写格式为:PORT(端口名,端口名n:方向 数据类型名;端口名,端口名m:方向
6、数据类型名);举例:PORT(d0,d1,sel:IN BIT;q:OUT BIT;bus:OUT BIT_VECTOR(7 DOWNTO 0);,(1)端口名:赋予每个外部引脚名称,通常用一个或几个英文字母,或者用英文字母加数字命名之,例如:d0,d1,sel。(2)端口方向:用来定义外部引脚的信号方向。,请注意OUT与BUFFER的区别,ENTITY test IS PORT(a:IN STD_LOGIC;b1,c1:OUT STD_LOGIC;b2:BUFFER STD_LOGIC;c2:OUT STD_LOGIC);END test;ARCHITECTURE a of test ISB
7、EGIN b1=not(a);c1=b1;-Error b2=not(a);c2=b2;END a;,端口数据类型,标准类型:BIT和BIT_VECTOR扩展类型:STD_LOGIC和STD_LOGIC_VECTOR 单点多点(总线)扩展类型需要库和程序包的支持,并且需要在程序中指明使用时需要加入以下两个语句:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;,练习:,试写出半加器的实体描述:如右图所示a,b为半加器的输入端口s,co为输出信号,s为和信号,co为进位信号。,结构体ARCHITECTURE,结构体的描述方法:行为级描述、RTL(数据流)级描述、结
8、构描述(逻辑元件连接),结构体是用于描述设计实体的内部结构(元件及内部的连接关系)以及实体端口间的逻辑关系(实体的行为)。,注意:结构体一定要跟在实体说明的后面。,结构体的一般书写格式,ARCHITECTURE 结构体名 OF 实体名 IS 定义语句内部信号,常数,数据类型,函数等的定义;BEGIN 功能描述语句并行处理语句;END 结构体名;,实体名必须是所在设计实体的名字,结构体名由设计者定义,但当一个实体具有多个结构体时,结构体的取名不可重复。,结构体名称的命名,结构体名称由设计者自由命名,是结构体的唯一名称。OF后面的实体名称表明该结构体属于哪个设计实体,有些设计实体中可能含有多个结构
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VHDL 程序 基本 结构
链接地址:https://www.31ppt.com/p-6522932.html