版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,图2.4 VHDL程序设计基本结构,2.2 VHDL程序基本结构,一个相对完整的VHDL程序通常包含实体(Entity)、结构体(Architecture)、配置(Configuration)、程序包(Package)和库(Library)5个部分。,2,(1)库、程序包使用说明:用于打开(调用)本设计实体 将要用到的库、程序包;程序包存放各个设计模块共享的 数据类型、常数和子程序等;库是专门存放预编译程序包 的地方。,(2)实体:用于描述所设计的系统的外部接口信号,是可视部分;,(3)结构体:用于描述系统内部的结构和行为,建立输入和输出之间的关系,是不可视部分。,(4)配置说明语句:主要
2、用于以层次化的方式对特定的设计实体进行元件例化,或是为实体选定某个特定的结构体。,3,实体(ENTITY)是一个设计实体的表层设计单元,其功能是对这个设计实体与外部电路进行接口描述。它规定了设计单元的输入输出接口信号或引脚,是设计实体经封装后对外的一个通信界面。 1实体语句结构 实体说明单元的常用语句结构如下: ENTITY 实体名 IS GENERIC(类属表); PORT(端口表); END ENTITY 实体名;,2.2.1 实体,4,实体说明单元必须以语句“ENTITY 实体名IS”开始,以语句“END ENTITY 实体名;”结束。 实体名是设计者自己给设计实体的命名,可作为其他设计
3、实体对该设计实体进行调用时用。 中间在方括号内的语句描述,在特定的情况下并非是必须的。例如构建一个VHDL仿真测试基准等情况中可以省去方括号中的语句。,5,2类属(GENERIC)说明语句 类属(GENERIC)参量是一种端口界面常数,常以一种说明的形式放在实体或块结构体前的说明部分。类属为所说明的环境提供了一种静态信息通道,类属的值可以由设计实体外部提供。 类属说明的一般书写格式如下: GENERIC(常数名;数据类型:设定值 ;常数名:数据类型:设定值 );,6,LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY AND2 IS GENERI
4、C(RISEW:TIME:=1 ns; FALLW:TIME:=1 ns); PORT( A1:IN STD_LOGIC; A0:IN STD_LOGIC; Z0:OUT STD_LOGIC); END ENTITY AND2;,【例2.2】2输入与门的实体描述,类属说明中定义参数RISEW为上沿宽度,FALLW为下沿宽 度,它们分别为 1 ns,这两个参数用于仿真模块的设计。,7,实体端口说明的一般书写格式如下: PORT(端口名:端口模式 数据类型; 端口名:端口模式 数据类型);,端口名是设计者为实体的每一个对外通道(系统引脚)所取的名字,一般用几个英文字母组成; 端口模式(端口方向)是
5、指这些通道上的数据流动方式,即定义引脚是输入还是输出; 数据类型是指端口上流动的数据的表达格式。,3PORT端口说明,8,图2.5 端口模式符号图,IEEE 1076标准包中定义了4种常用的端口模式,各端口模式的功能及符号分别见表2.1和图2.5。,表2.1 端口模式说明,9,PORT(n0,n1,select:IN BIT; q:OUT BIT; bus:OUT BIT_VECTOR(7 DOWNTO 0);,【例2.3】端口模式及数据类型定义,说明:n0, n1,select 是输入引脚,属于BIT型; q是输出引脚,BIT型; bus是一组8位二进制总线,属于BIT_VECTOR。,10
6、,LIBRARY IEEE; USE IEEE.STD_LOGIC.1164.ALL; ENTITY mm IS PORT(n0,n1,select:IN STD_LOGIC; Q:OUT STD_LOGIC; Bus:OUT STD_LOGIC_VECTOR(7 DOWNTO 0); END ENTITY mm;,【例2.4】端口模式及IEEE库数据类型定义,例中端口数据类型取自IEEE标准库(该库中有数据类型和 函数的说明),其中STD_LOGIC 取值为“0”,“1”,“X”和 “Z”。因为使用了库,所以在实体说明前要增加库说明语句。,11,2.2.2 结构体,结构体(ARCHITECT
7、URE)是设计实体的一个重要部分,结构体将具体实现一个实体。 结构体不能单独存在,它必须有一个界面说明,即一个实体。 对于具有多个结构体的实体,必须用CONFIGURATION 配置语句指明用于综合的结构体和用于仿真的结构体,即在综合后的可映射于硬件电路的设计实体中,一个实体只对应一个结构体。 在电路中,如果实体代表一个器件符号,则结构体描述了这个符号的内部行为。,12,ARCHITECTURE 结构体名 OF 实体名 IS 说明语句 -内部信号,常数,数据类型,函数等的定义 BEGIN 功能描述语句 END ARCHITECTURE 结构体名;,1. 结构体语句格式,13,ENTITY mu
8、x IS PORT(a0,a1:IN BIT; Sel:IN BIT; Sh:OUT BIT); END mux; ARCHITECTURE dataflow OF mux IS BEGIN sh=(a0 AND sel)OR(NOT sel AND a1); END dataflow;,【例2.5】结构体描述,14,结构体中的说明语句是对结构体的功能描述语句中将要用 到的信号(SIGNAL)、数据类型(TYPE)、常数(CONSTANT)、 元件(COMPONENT)、函数(FUNCTION)和过程(PROCEDURE) 等加以说明的语句。 在一个结构体中说明和定义的数据类型、常数、元件、函
9、 数和过程只能用于这个结构体中,若希望其能用于其他的实体 或结构体中,则需要将其作为程序包来处理。,2结构体说明语句,15,3. 功能描述语句 描述设计实体的具体行为,它包含两类语句: (1)并行语句:并行语句总是在进程语句(PROCESS)的外 部,语句的执行与书写顺序无关,总是同时被执行。 (2)顺序语句:顺序语句总是在进程语句(PROCESS)的内 部,该语句是顺序执行的。 一个结构体可以包含几个类型的子结构描述:BLOCK(块) 描述、PROCESS(进程)描述、SUNPROGRAMS(子程序)描 述。,16,块语句是由一系列并行执行语句构成的组合体,它的功 能是将结构体中的并行语句组
10、成一个或多个模块。 进程语句定义顺序语句模块,用于将从外部获得的信号 值,或内部的运算数据向其他的信号进行赋值。 子程序调用语句用于调用一个已设计好的子程序。 信号赋值语句将设计实体内的处理结果向定义的信号或界 面端口进行赋值。 元件例化语句对其他的设计实体作元件调用说明。,17,使用BLOCK语句描述的格式如下: 块标号:BLOCK BEGIN END BLOCK 块标号;,1) BLOCK块语句,18,ENTITY mux IS PORT (d0,d1,sel: IN BIT; q:OUT BIT); END mux; ARCHITECTURE connect OF mux IS SIGN
11、AL tmp1,tmp2,tmp3:BIT; BEGIN cale:BLOCK BEGIN tmp1=d0 AND sel; tmp2=d1 AND (NOT sel); tmp3=tmp1 OR tmp2; q=tmp3; END BLOCK cale; END connect;,【例2.6】 用块语句实现的二选一电路,19,进程描述的格式如下: 进程名:PROCESS(信号1,信号2,) BEGIN END PROCESS 进程名; 进程语句中总是带有信号变量(敏感变量),只有当信号 变量发生变化时,进程才被启动,将进程里的语句从上到下 顺序执行一遍,执行完了就回到开始的PROCESS语句
12、。,2) 进程(Process)语句描述,20,ENTITY mux2 IS PORT (d0,d1,sel:IN BIT; q:OUT BIT); END mux2; ARCHITECTURE connect OF mux2 IS BEGIN cale:PROCESS(d0,d1,sel) VARIABLE tmp1,tmp2,tmp3:BIT; BEGIN tmp1:=d0 AND sel; tmp2:=d1 AND (NOT sel); tmp3:=tmp1 OR tmp2; qreturn 0; when z=return z; End case; End invert; End lo
13、gic;,例2.11 程序包体,32,配置用于在多结构体中为一个实体指定一个结构体。 例如,在做RS触发器的实体中使用了2个结构体,目的是 研究各个结构体描述的RS触发器的行为性能如何,但是究 竟在仿真中使用哪一个结构体的问题就是配置问题。 配置语句格式 CONFIGURATION 配置名 OF 实体名 IS 说明语句 END 配置名;,3.7.3 配置(CONFIGURATION),33,ENTITY rs IS PORT(set,reset:IN BIT; q,qb: BUFFER BIT); END rs; ARCHITECTURE rsff1 OF rs IS COMPONENT nand2 PORT(a,b:IN BIT; c:OUT BIT); END COMPONENT; BEGIN U1:nand2 PORT MAP(a=set,b=qb,c=q);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 云南省昭通市名校2025-2026学年初三4月期中练习(二模)(理、文合卷)物理试题含解析
- 2026年大学大一(教育技术学)在线课程设计阶段测试题及答案
- 2025年前台电子入住礼仪考核
- 护理科普:为健康护航为生命加油
- 护理不良事件的个体因素分析
- 抓住特点 个性表达-习作“写一个敬佩的人”教学设计
- 2026五年级数学下册 图形运动价值引领
- 2026五年级数学上册 多边形面积之间的关系
- 2026 年部编版小学语文二年级(下册)《小马过河》教学设计
- 护理考编考试大纲华图课件分析
- GB/T 6495.1-2025光伏器件第1部分:光伏电流-电压特性的测量
- 《2026年》融资租赁岗位高频面试题包含详细解答
- 北京市东城区2025-2026学年高二上学期期末考试化学试卷(含答案)
- 统编版(2026)八年级下册历史教材课后问题答案(全册)
- 动物入场查验制度规范
- 2026及未来5年中国宠物殡葬服务行业市场竞争态势及投资前景研判报告
- 急性心肌梗塞的早期识别与处理
- 低空经济产业2026年政策红利与市场拓展研究
- 医院档案管理制度流程图
- 手机领取协议书
- 装配式建筑施工技术全套课件
评论
0/150
提交评论