VHDL语言应用基础1(基本结构、数据类型).ppt
《VHDL语言应用基础1(基本结构、数据类型).ppt》由会员分享,可在线阅读,更多相关《VHDL语言应用基础1(基本结构、数据类型).ppt(86页珍藏版)》请在三一办公上搜索。
1、第二章VHDL语言应用基础,参考书目及网络资源,VHDL硬件描述语言与数字逻辑电路设计,侯伯亨,西安电子科技大学出版社。VHDL与数字电路设计卢毅 科学出版社Verilog HDL 硬件描述语言清华大学出版社CPLD技术及应用宋万杰等 西安电子科技大学出版社可编程逻辑系统的VHDL设计技术Kevin Skahill 东南大学出版社 ALTERA可编程器件及其应用刘宝琴 清华大学出版社Xinlinx数字系统现场集成技术朱明程东南大学出版社,http:/http:/(学术科学/电路设计与调试版)http:/,PART 1HDL,VHDL具有强大的行为描述能力,丰富的仿真语句和库函数,对设计的描述也
2、具有相对独立性 Verilog 最大特点就是易学易用,语法比较自由ABEL一种早期的硬件描述语言支持逻辑电路的多种表达形式,其中包括逻辑方程,真值表和状态图。AHDL(Altera HDL)是ALTERA公司发明的HDL,特点是非常易学易用,学过高级语言的人可以在很短的时间(如几周)内掌握AHDL。它的缺点是移植性不好,通常只用于ALTERA自己的开发系统。,VHDL,VHDL语言最初于1981年由美国国防部为解决所有电子产品存档而提出的一种统一标准语言,1983年至1985年,由IBM、TI等公司对VHDL进行细致开发,1987年成为IEEE 107687标准。1993年,修订版IEEE 1
3、07693出台。随后,IEEE分别提出IEEE 1076.3(可综合标准)和IEEE 1076.4(标准),以解决可综合VHDL描述在不同EDA厂商之间的移植问题,以及ASIC/FPGA的门级库描述问题。,VERILOG,VERILOG语言最早由GATEWAY设计自动化公司于1981年提出,并提供相应的VERILOG仿真器。1985年,仿真器增强版VERILOG-XL推出。CADENCE公司于1989年收购GATEWAY公司,并于1990年把VERILOG语言推向市场,而保留了VERILOG-XL的所有权。1995年,VERILOG成为IEEE 1364标准。,就标准而言,两种语言并无优劣、先
4、后可言。至于设计者采用哪种语言,与设计者的习惯、喜好以及目前EDA、FPGA行业的支持有关。由于VHDL在系统设计方面的语法支持,各FPGA厂商对VHDL语言的支持明显多于Verilog,这可从各厂商所提供的设计开发包中得到明证。而Verilog由于在门级描述上的优势,从而被众多的IC设计人员所采用。,VHDL&VERILOG,常见的HDL工具,FPGA Express:VHDL/VerilogHDL综合软件,简单易用,但有人反映其对VerilogHDL的支持不够强,Synopsys公司出品。,FPGA CompilerII VHDL/VerilogHDL综合软件,Synopsys公司出品,Q
5、uartus:Quartus II 是Altera公司的综合性PLD开发软件,支持原理图、VHDL、VerilogHDL以及AHDL等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。,常见的HDL工具,Synplify:VHDL/VerilogHDL综合软件。Synplicity公司出品。,Active HDL VHDL/VerilogHDL仿真软件,简单易用。Aldec公司出品,Modelsim:VHDL/VerilogHDL仿真软件,功能比ActiveHDL强大,使用比ActiveHDL复杂。Mentor公司出品。,常见的HDL工具,NC-V
6、erilog/NC-VHDL:Cadence公司出品,很好的Verilog/VHDL仿真工具,其中NC-Verilog 的前身是著名的Verilog仿真软件:Verilog-XL,StateCAD 状态机设计软件,通过画框图可自动生成状态机的VHDL,VerilogHDL,或AHDL源代码文件。对熟练掌握HDL的人,实用价值不高,X-HDL:可实现VHDL和Verilog语言的相互自动转化,常见的HDL工具,Visial VHDL/Visal Verilog:可视化的HDL/Verilog编辑工具,功能类似于Renoir,Renoir 通过画框图来完成PLD/FPGA的系统设计,可自动生成部分
7、VHDL/VerilogHDL源代码文件,亦可由VHDL/VerilogHDL源代码生成原理框图。Renoir(输入),Leonardo.Spectrum(综合)和Modelsim(仿真)构成了Mentor公司引以为豪的VHDL/VerilogHDL完整开发系统:FPGA Advantage,PART 2The Basic Structure of VHDL,HDL=hardware description languageTextual HDLs replaced graphical HDLs in the 1980ies(better description of complex beha
8、vior).1981年美国国防部赞助了一个硬件描述语言的工作组,1983年形成了一个VHSIC(Very High Speed Integrated Circuits)硬件描述语言标准(VHDL:VHSIC Hardware Description Language),1984:first version of the language defined,based on ADA(which in turn is based on PASCAL)1987:revised version became IEEE standard 10761993:revised IEEE standardVHDL
9、有过两个标准:IEEE Std 1076-1987(called VHDL 1987)IEEE Std 1076-1993(called VHDL 1993)more recently:VHDL-AMS:includes analog modeling,由于VHDL的开发环境的主体是仿真模拟器(simulator),VHDL的模拟与一般语言的模拟有以下不同:,模拟时间需要强调的是,这一概念是模拟所对应硬件的运行时间。它用时间步长规定了相对时间、绝对时间等序列。程序按模拟时间运行,相互间的延迟也按模拟时间计算。并发性并发性是模拟时间应用中的重要概念。例如,有几个加法器,他们随着模拟时间的增长并行
10、工作。其中的每个加法器都是在输入到来后就工作。这与硬件电路实际工作情况是一致的。,一个完整的VHDL语言程序通常包含实体(Entity)、构造体(Architecture)、配置(Configuration)、包集合(Package)和库(Library)5个部分。,实体用于描述所设计的系统的外部接口信号;构造体用于描述系统内部的结构和行为;包集合存放各设计模块都能共享的数据类型、常数和子程序等;配置用于从库中选取所需单元来组成系统设计的不同版本;库存放已经编译的实体、构造体、包集合和配置。,2.1 VHDL语言设计的基本单元及其构成,A circuit or subcircuit descr
11、ibed with VHDL code is called a design entity。The general structure of an entity has two main parts:the entity declaration,which specifies the input and output signals for the entity,and the architecture,which gives the circuit details.,VHDL for a 2-to-1 multiplexer,由上面的例子可以看出,实体说明是二选一器件外部引脚的定义;而构造体
12、则描述了二选一器件的逻辑电路和逻辑关系。,一、VHDL的基本结构,ENTITY nand_2 IS-定义一个实体PORT(a,b:IN STD_LOGIC;-描述输入输出 y:OUT STD_LOGIC);-信号END nand_2;,LIBRARY IEEE;-IEEE库说明USE IEEE.STD_Logic_1164.ALL;-自定义元件库,ARCHITECTURE rtl OF nand_2 ISBEGIN-结构体说明y=NOT(a AND b);END rtl;,1.USE定义区,2.PACKAGE定义区,3.ENTITY定义区,4.ARCHITECTURE定义区,定义元件库,5.C
13、ONFIGURATION定义区,定义使用哪些自定义元件库,定义电路实体的外观:I/O接口的规格,描述电路内部的逻辑功能,决定哪一个architecture被使用,1.VHDL基本结构图,2.ENTITY DECLARATION,功能:描述设计模块的输入/输出信号或引脚,并给出设计模块与外界的接口。实体类似一个“黑盒”,实体描述了“黑盒”的输入输出口。格式:ENTITY实体名ISGENERIC(类属表);PORT(端口表);END ENTITY 实体名,实际上,对VHDL而言,大写小写都一视同仁,不加区分。只是为了阅读方便,我们常常做一些区分。,(1)The name of the entity
14、,实体名实际上是器件名,最好根据相应的电路功能确定。如4位2进制计数器用counter4b;8位加法器用add8b;3/8译码器用ym_38。,实体名必须与文件名相同,否则无法编译。,实体名不能用工具库中定义好的元件名。,实体名不能用中文,也不能用数字开头。,实体名必须以字母开头,不能以下划线结尾。,(2)GENERIC,类属表:用以将信息参数传递到实体。类属表的一般格式为:GENERIC(常数名:数据类型:=设定值)GENERIC(awidth:INTEGER:=3;timex:time);其中:常数名由设计者确定;数据类型通常取INTEGER或time等;在表中提供时间参数、总线宽度等信息
15、。,端口表:指明实体的输入、输出信号极其模式。端口表的一般格式为:PORT(端口名:端口模式数据类型)端口模式:共四种:IN(输入)、OUT(输出)、INOUT(双向端口)、BUFFER(输出并向内部反馈),(3)PORT,数据类型:VHDL作为一种强类型语言,必须对数据对象(常量、变量、信号)规定取值范围,即对传输或存储数据的类型作明确的界定。,EXAMPLE,ENTITY black_box IS Generic(constant width:integer:=7;);PORT(clk,rst:INstd_logic;d:IN std_logic_vector(width DOWNTO 0
16、);q:OUTstd_logic_vector(width DOWNTO 0);co:OUT std_logic);END black_box;,Exercise 1,编写包含以下内容的实体代码端口 D 为12位输入总线 端口 OE 和 CLK 都是1位输入端口 AD 为 12位双向总线端口 A为12位输出总线端口 INT 是1位输出端口 AS 是一位输出同时被用作内部反馈,answer,LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY my_design IS PORT(d:IN std_logic_vector(11 DOWNTO 0);oe,
17、clk:IN std_logic;ad:INOUT std_logic_vector(11 DOWNTO 0);a:OUT std_logic_vector(11 DOWNTO 0);int:OUT std_logic;as:BUFFER std_logic);END my_design;,Exercise 2,1、编写包含全加器的实体代码。2、编写4选1数据选择器的实体代码。,3.ACHITECTURE,结构体:通过若干并行语句来描述设计实体的逻辑功能(行为描述)或内部电路结构(结构描述),从而建立设计实体输出与输入之间的关系。一个设计实体可以有多个结构体。格式:ARCHITECTURE 结
18、构体名 OF 实体名 IS 说明语句;BEGIN 并行语句;END ARCHITECTURE 结构体名;,VHDL结构体术语,说明语句:用于定义结构体中所用的数据对象和子程序,并对所引用的元件加以说明,但不能定义变量。并行语句 并行语句有五种类型,可以把它们看成结构体的五种子结构。这五种语句结构本身是并行语句,但内部可能含有并行运行的逻辑描述语句或顺序运行的逻辑描述语句,如进程内部包含的即为顺序语句。五种语句结构分别为块语句、进程语句、信号赋值语句、子程序调用语句和元件例化语句。,结构体结构图,The relationship between the entity and architectu
19、re,Structure描述 描述该设计单元的硬件结构,即该硬件是如何构成的,类似于数字电路中的逻辑图描述.Date Flow描述 它是类似于寄存器传输级的方式描述数据的传输和变换,以规定设计中的各种寄存器形式为特征,然后在寄存器之间插入组合逻辑。与数字电路中的真值表描述相似。Behavior Process描述 只描述所希望电路的功能或者电路行为(输入输出间转换的行为),而没有指明或涉及实现这些行为的硬件结构。与数字电路中的逻辑表达式描述相似。,Three kinds of description for the architecture,architecture one of mux21
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VHDL 语言 应用 基础 基本 结构 数据类型

链接地址:https://www.31ppt.com/p-5306896.html