下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、CPLD/FPGA的开发与应用,第3章 硬件描述语言VHDL程序结构,VHDL的描述风格,VHDL的库及配置,VHDL的构造体,VHDL的实体,VHDL程序结构,VHDL程序基本结构,VHDL的基本设计单元,Entity(实体)用来说明模型的外部特征。,Configuration(配置)将实体和它的构造体联系起来。,Package(程序包)构成库的基本单元,使实体和结构体内的数据类型、常量、子程序等对于其他设计单元可见,包括包头和包体两部分。,Library (库)用来存放已编译过的设计单元,可作为其它设计描述的共享资源。,Architecture(构造体)用来定义模型的功能。,实体(ENTI
2、TY)说明语句的一般格式为: ENTITY 实体名 IS 类属参数说明 端口说明 END 实体名;,斜体表示关键字;实体名为设计单元命名;表示可选项;类属参数说明用以指定某些全局参数值;端口说明则定义了每个外部引脚的名称、模式和数据类型。,实体(ENTITY)用来描述设计单元的外部信息,即为设计单元命名,并说明端口。,实体(ENTITY),端口说明的一般格式为: PORT(端口名,端口名:端口模式 数据类型; . . . 端口名,端口名:端口模式 数据类型);,例如,4-7译码器的端口描述: ENTITY YMQ4_7 IS PORT (Q1,Q2,Q3,Q4 : IN BIT; Y : OU
3、T STD_LOGIC_VECTOR(7 DOWNTO 1); END YMQ4_7;,设计实体端口模式说明,端口模式(MODE),端口模式(MODE)有以下几种类型: IN ;OUT;INOUT ;BUFFER 端口模式可用下图说明:(黑框代表一个设计或模块) IN OUT BUFFER INOUT,实体(ENTITY)与电路图设计中的电路元件符号(Symbol) 相对应。 Symbol规定了电路元件的符号名、接口关系和数据类型,而ENTITY也具有同样的功能。,下面R-S触发器的例子可以看出两者间的对应关系。 (右边是传统设计中的符号图描述,左边是VHDL的设计描述),ENTITIE与SY
4、MBOL对应关系,* 端口说明语句用关键词 PORT开头,用来描述实体对外界连接的端口名称、数目、模式和数据类型。 本例中,实体rsff有四个端口,Set/Reset是IN模式, Q/QB 是BUFFER(缓冲)输出模式,都为BIT类型。,RSFF实体的VHDL描述为: ENTITY RSFF IS PORT ( set, reset : IN BIT; q,qb : BUFFER BIT); END RSFF;,* 实体语句用关键词ENTITY开头,实体名RSFF对应于符号名SYMBOL,端口说明语句处于实体结束语句END RSFF;之间。,ENTITIE与SYMBOL对应关系举例,ENTI
5、TY cntm16 IS-实体定义 PORT (ci: INstd_logic; nreset: IN std_logic; clk: INstd_logic; co : out std_logic; qcnt: buffer std_logic_vector(3 downto 0) ); END cntm16;,端口名称,端口类型,端口模式,构造体(ARCHITECTURE)说明语句的一般格式为: ARCHITECTURE 构造体名 OF 实体名 IS 构造体说明部分 BEGIN 并行处理语句段; END 构造体名;,关键字ARCHITECTURE做为构造体的开头,构造体名可任取,说明是某设
6、计实体的构造体。 ARCHITECTURE和BEGIN之间是构造体参数说明区;BEGIN和END之间是构造体功能说明语句区,由并行处理语句组成。,构造体(architecture),构造体说明语句描述设计功能,即说明设计单元的具体行为或结构。,构造体(Architecture),构造体(Architecture),声明语句区(Declarations) 用于结构体中的数据类型,常数,信号,元件,子程序等声明。,并发语句区,信号赋值(Signal Assignments 计算结果,并赋值给信号,元件例化 (Component Instantiations) 调用另一个实体所描述的电路。即元件调用
7、,过程调用(Procedure Calls调用一个预先定义好的一个算法。,进程(Processes) 定义一个新算法实现电路功能。进程中的语句按放置的顺序执行,即顺序语句。,构造体组织结构,功能说明语句是构造体描述的主体,采用并行语句(并行赋值语句、元件例化语句、进程语句等)来描述,有行为功能描述、 数据流描述和结构描述三种设计描述方式(或称三种设计描述风格)。,一个设计实体可以有多个构造体,一种可能是行为描述,另一种可能是结构描述,还有一种可能是数据流描述。 可通过配置语句将某一特定的构造体与实体相联系。,以设计实体rsff的构造体描述为例说明如下。,结构描述风格,rsff结构化描述的构造体
8、: ARCHITECTURE netlist OF rsff IS COMPONENT nand2 PORT ( a, b : IN BIT; c : OUT BIT); END COMPONENT; BEGIN U1: nand2 PORT MAP (set, qb, q); U2: nand2 PORT MAP (reset, q, qb); END netlist;,实体rsff的结构图 :,RSFF实体的VHDL描述为: ENTITY RSFF IS PORT ( set, reset : IN BIT; q,qb : BUFFER BIT); END RSFF;,行为、数据流描述风格
9、,行为描述模型,用输入/输出响应来描述器件的模型 只描述电路的功能,而不是结构 不针对专门的硬件 可用于综合和仿真,Input1N,Output1N,IF input1 THEN FOR j IN high DOWNTO low LOOP shift(j) := shift(j); END LOOP; output1 = shift AFTER 5ns,结构描述模型,用更低层次的器件的互连来描述器件的模型 描述电路的功能和结构 调用特殊的硬件 可用于综合和仿真,Input 1,Input n,Output 1,Output n,底层元件,底层元件,Process (a, b, c, d, se
10、l) begin case (sel) is when “00” = mux_out mux_out mux_out mux_out = d; end case;,数据流描述模型,将硬件的RTL模型转化为某种优化的特殊的门级电路来具体实现,实体和构造体之间的关系,Input1,Inputn,Output1,Outputn,构造体,A B C D Sel,MUX_Out,2,实体,库(library),库的种类: WORK库-设计库,对当前项目默认可视,无需调用说明语句。 STD库-资源库,为VHDL标准库,无需调用说明语句。 IEEE库-资源库,含std_logic_1164等逻辑设计标准和设
11、计单元, 需加调用说明语句。 ASIC库-资源库,又称逻辑门库,含已通过编译的设计实体, 需加调用说明语句。 用户自定义库-资源库,由用户开发的共用程序包,需要加调用 说明语句。,库的作用:利用VHDL进行设计时,为提高设计效率和遵循统一的语言规则或数据类型,将一些有用的数据定义信息程序包汇集到一个或几个库中以供调用,实现资源共享。,std库/ieee库中的程序包,库说明语句,库说明语句一般格式: LIBRARY库名1; LIBRARY库名2; LIBRARY库名;,库说明语句使用范围: 从一个设计实体的实体说明开始到它所属的构造体配置为止。当一段程序中出现两个以上实体时,需要两条以上的库说明
12、语句,且放置在各自的实体说明前。,包集合(package),包集合调用语句一般格式: LIBRARY IEEE; USE IEEE.std_logic_1164.all; USE IEEE.std_logic_arith.all; USE IEEE.std_logic_unsigned.all;,包集合又称程序包,是库的基本组成单元,是设计中常用子程序和公用数据类型及函数、过程定义的程序集合,可供用户调用。,配置语句的一般格式: CONFIGURATION configuration_name OF ENTITY_name IS FOR architecture_name END FOR; E
13、ND configuration_name;,配置(configuration),配置(configuration)语句:指明设计实体与结构体之间的连接关系,相当于将设计单元安装到具体的实体中。用户可利用配置语句来选择不同的构造体,使其与具体设计实体相对应。,General VHDL Format,ENTITY test IS PORT (input_pin_name : IN bit; output_pin_name : OUT bit); END test; ARCHITECTURE test_body OF test IS BEGIN output_pin_name = input_pi
14、n_name; END test_body;,VHDL Format,Logic Behaviour define section,mux21a实体 mux21a结构体,举例: 设计一个2选1多路通道选择器,d,e,程序包,实体,构造体,多路选择器的VHDL描述(一),ENTITY mux21a IS PORT ( a, b : IN BIT; s : IN BIT; y : OUT BIT ); END ENTITY mux21a; ARCHITECTURE one OF mux21a IS SIGNAL d,e : BIT; BEGIN d = a AND (NOT S) ; e = b
15、AND s ; y = d OR e ; END ARCHITECTURE one ;,LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL,d,e,程序包,实体,构造体,信号传输符号,多路选择器的VHDL描述(二),多路选择器的时序仿真波形, VHDL代码编写; 2. 综合成门级网表; 3. 功能仿真; 4. 布局/布线至PLD/FPGA中; 5. 时序仿真; 6. 下载。,基于VHDL设计过程,由VHDL程序综合为实用电路,VHDL文本编辑器,VHDL综合器,FPGA/CPLD 适配器,FPGA/CPLD 编程下载器,FPGA/CPLD 器件和电路系统,时序与
16、功能 仿真器,VHDL 仿真器,ALTERA Cadence Exemplar Synopsys Synplicity Viewlogic .,第章 习题 VHDL程序由哪几部分组成?试画出其结构示意图。 什么是设计的实体?其功能作用? 设计实体有哪几种端口模式?端口说明语句的一般格式? 什么是设计的构造体?简述其功能作用与结构组成。 设计实体中的库有哪几类?其作用是什么?如何调用库资源? 参考举例,设计一个4选1多路选择器。,交通管理系统设计,VHDL应用举例,管理对象: 信号灯管理:红、黄、绿 时间牌管理:两位十进制时间显示,信号灯控制时序,时间牌控制时序,交通管理系统电路原理图,libr
17、ary ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity rglight_cotrl is port(clk:in std_logic; timh,timl:out std_logic_vector(3 downto 0); r,g,y:out std_logic); end rglight_cotrl; architecture rtl of rglight_cotrl is type rgy is (red,green,yellow); begin process(clk) variable
18、 a:std_logic; variable state:rgy; variable th,tl:std_logic_vector(3 downto 0); begin if clkevent and clk=1 then case state is,library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity rglight_cotrl is port(clk1,clk2:in std_logic; timh:out std_logic_vector(3 downto 0); timl:o
19、ut std_logic_vector(3 downto 0); r,g,y:out std_logic); end rglight_cotrl; architecture rtl of rglight_cotrl is Signal yy: std_logic; type rgy is (red,green,yellow); begin process(clk1) variable a:std_logic; variable state:rgy; variable th,tl:std_logic_vector(3 downto 0); begin if clkevent and clk=1 then case state is,when green=if a=0 then th:=0011; tl:=“0000; a:=1; g=1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025浙江淳安分公司招聘劳务派遣人员4人笔试历年参考题库附带答案详解
- 2025浙江交工集团股份有限公司大桥分公司招聘7人笔试历年参考题库附带答案详解
- 2025河北石家庄辛集市农业投资有限公司招聘人员4人笔试参考题库附带答案详解(3卷)
- 2025智新科技股份有限公司管理类岗位招聘笔试参考题库附带答案详解(3卷)
- 2025广西投资集团咨询有限公司社会招聘1人笔试历年参考题库附带答案详解
- 2025山东电力建设第三工程有限公司招聘5人笔试历年参考题库附带答案详解
- 培训机构学员接送制度
- 校园保安培训及管理制度
- 培训中心企业管理制度
- 司法业务知识培训制度
- 食品加工助剂管理办法
- DB50∕T 1604-2024 地质灾害防治边坡工程结构可靠性设计规范
- 非现场执法培训课件
- 中国电气装备资产管理有限公司招聘笔试题库2025
- 糖尿病足的护理常规讲课件
- 2025年高考英语复习难题速递之语法填空(2025年4月)
- 2025外籍工作人员劳动合同范本
- 退化林地生态修复-深度研究
- 湖北省武汉市江岸区2024-2025学年九年级上学期期末数学试题(原卷版+解析版)
- 2025年《新课程标准解读》标准课件
- 2024-2025学年同步试题 语文(统编版选择性必修中册)8.2小二黑结婚
评论
0/150
提交评论