版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第四章硬件说明语言VHDL编程基础,本章首先介绍VHDL的基本结构,以便读者初步掌握VHDL的基本知识。最后,许多实例将帮助读者进一步了解使用VHDL的设计方法。本章的主要内容,第一节概述,第二节VHDL程序结构,第三节VHDL的基本数据类型,第四节VHDL的基本说明语句,第五个子程序,第一节概述,very high speed intergated circuit hardl(VHDL)被归类为IEEE1076标准,成为工业界的标准。1 .VHDL简介,2Verilog HDL语言简介,Verilog HDL是基于c语言开发的,由网关设计自动化(GDA)创建,1989年cadence收购了G
2、DA,1990年Cadence收购了Verilog HDLVerilog HDL的最大特点是易于学习。如果有c语言的编程经验,可以在短时间内快速学习和掌握。Verilog HDL语言的系统抽象能力略低于VHDL,语句级交换机电路的描述能力优于VHDL。2,VHDL的优点,1。分层设计支持2。能够以多个步骤说明系统硬件功能3。丰富的模拟语句和库功能4。VHDL语句的行为描述能力和程序结构决定了支持大型设计的分解和现有设计的重用能力。VHDL的优点,5 .设计说明相对独立,与硬件结构无关。6.使用EDA工具执行逻辑集成和优化,并自动将VHDL说明转换为语句级网络表。7.具有可移植性,可用于多种设计
3、环境和系统平台。8.可读性好。第三,VHDL和高级语言之间的区别,1 .某些并行语句可以自动重复,而无需使用循环命令进行保证。2.VHDL中的许多语句可以同时执行,而不是按顺序执行(VHDL的并行处理)。返回,第2节VHDL程序结构,1,VHDL的基本结构,entitynand _ 2 is -实体端口定义(a,)-说明I/o y 3360 OUT STD _ LOGIC;-信号END NAND _ 2;LIBRARY IEEE-IEEE库说明USE IEEE。STD_Logic_1164。ALL-用户定义的库,architecture RTL of NAND _ 2 is begin-结构说
4、明y=NOT(a AND b);END RTL,1 .USE定义区域,2 .PACKAGE定义区域,3 .ENTITY定义区域,4 .ARCHITECTURE定义区域,库定义,5 .CONFIGURATION定义区域,定义使用这些自定义库1。VHDL基本贴图,2 .实体说明、功能:说明设计模块的输入/输出信号或插针,并提供设计模块和外部之间的接口。对象类似于“黑匣子”,对象描述了“黑匣子”的输入/输出。格式:实体实体实体名称IS GENERIC(原始表);端口(端口表):END ENTITY实体名称、实体名称和实体名称实际上是设备名称,因此最好根据相应的电路功能来确定。四位二进制计数器的cou
5、nter4b;8位加法器add8b;用于3/8解码器的ym_38。实体名称必须与文件名相同。否则,将无法编译。实例名称不能使用工具库中定义的元件名称。实体名称不能以中文或数字开头。类属表,类属表:用于将信息参数传递到图元。原始表格的一般格式为一般(常数名称:资料类型:=设定)一般(a width 3360 integer :=3;Timex :小时);其中常量名称由设计者确定。数据类型通常采用INTEGER或time等。在表中提供时间参数、总线宽度等信息。端口表:指示实体的输入和输出信号极模式。端口表的一般格式为端口名称:端口模式数据类型(PORT)端口模式,有四种类型:输入、输出、双向端口、
6、输出和内部反馈);端口(clk,rst3360 instd _ logicd : in STD _ logic _ vector(width down to 0);q : out STD _ logic _ vector(width down to 0);co : out STD _ logic);END black _ box练习1,创建包含以下内容的实体代码端口D 12位输入总线端口OE和CLK都是1位输入端口AD 12位双向总线端口A是12位输出总线端口INT是1位输出端口AS是同时用作内部反馈的输出。练习回答,库IEEEUSE ieee.std_logic_1164。ALLentity
7、 my _ designisport(d : in STD _ logic _ vector(11 down to 0);Oe,clk:IN std _ logicad : inout STD _ logic _ vector(11 down to 0);a : out STD _ logic _ vector(11 down to 0);Int:OUT std _ logicas : buffer STD _ logic);END my _ design,练习,1,编写包含完整加法器的实体代码2,4选择1数据选择器实体代码。3 .结构,结构:通过多个并行语句描述设计实体的逻辑功能(行为说明)
8、或内部电路结构(结构说明),建立设计实体输出和输入之间的关系。一个设计本体可以具有多个结构。格式:ARCHITECTURE核心层名称OF实体名称IS说明语句;BEGIN并行语句;END ARCHITECTURE结构名称;VHDL结构术语,描述语句:定义结构中使用的数据对象和子程序,描述引用的组件,但不能定义变量。并行语句并行语句有五种类型,可以看作结构的五个子结构。这五个语句结构本身是并行语句,但内部可以包括并行执行的逻辑描述语句(例如包含在进程内部的顺序语句)或按顺序执行的逻辑描述语句。五种语句结构分别是块语句、进程语句、信号赋值语句、子程序调用语句和组件实例化语句。核心结构图、实体和核心之
9、间的关系、结构说明了设计单元的硬件结构,即硬件是如何配置的。类似于数字电路的逻辑图。Date Flow以类似于寄存器传输级别的方式描述数据传输和转换。以规定设计的各种寄存器格式为特征,然后在寄存器之间插入组合逻辑。类似于数字电路的真值表说明。Behavior Process说明仅说明所需回路的功能或回路行为(输入/输出之间的转换行为),并表示或不包含实现这些行为的硬件结构。类似于数字回路的逻辑表达式说明。结构的三种描述格式,architecture one of mu x21 is signal d,e: bitbegin d=a and(not)s;E=b和s;Y=d或e;End one,S
10、tructure说明,architecture one of mu x21 is begin y=(a and(not s)或(b and s);End one,Date Flow说明,Behavior Process说明,architecture one of mu x21 is begin y=a when s=0 else b;End one,结构行为说明示例,2x 8 input and gate : entity black _ boxis port(a,b 3360 instd _ logic _ vector(7 down to 0);y : out STD _ logic _
11、vector(7 down to 0);END black _ boxarchitecture example of black _ box is begin y=a and b;END example,操作案例,1,操作标题:通过38解码器的设计案例,初步了解了整个结构中VHDL的基本结构和门特征。2、38解码器的电路图包括4个输入端(A0、A1、A2、EN)、8个输出端(Y0Y7)第3步:定义库、实体、结构、编译和模拟,如图所示。、返回、节iii VHDL的基本数据类型、1、数据对象和数据类型的载体。有三种类型的对象:Constant(常量)Variable(变量)Signal(信号)对象
12、的描述格式如下:constant width : integer :=8;Constant x3360 new _ bit3360=x,(2)定义指定类型的变量名称的变量声明。例如:variable A、B :BITVariable INIT :NEW_BIT,变量分配,全局分配:temp:= 10101010Temp :=x aa按位分配:temp(7):=1;多位分配temp(7 downto 4):= 1010 1010 ;(3)信号声明可以连接从结构中分离的并行语句,并通过端口上的其他模块连接到该设计内。信号是设备内部的节点信号,数据的出入不像端口信号那样受到限制,因此无需定义端口模式
13、。定义信号的目的是在设计回路时使用该信号。在信号分配示例中使用“=”:signal A,B :BITsignal INIT 3360 intege :=-1,信号分配,signal temp 3360 STD _ logic _ vector(7 down to 0);完全分配:temp= 10101010temp=x“aa”;位分配: temp(7)=1;多位分配: temp(7 downto 4)= 1010 ;信号示例,LIBRARY IEEEUSE IEEE . STD _ logic _ 1164 . all;实体simpis端口(a、b、c、d : in STD _ logicg
14、: OUT Std _ Logic);END simparchitecture Logic of simp is signal e,f : Std _ LogicBegin e=a或b;F=not (c或d);G=e和f;END logic,信号和变量的范围,信号和变量的差异,第二,数据类型,1。标准定义数据类型不需要直接用作USE说明。1)布林(布林):采用FALSE和TRUE值。2)Character(文字):使用时,请用单引号括起来(例如,a)。3)String(字符串):用双引号括起,例如111000101。4)整数:范围为-(231-1)(231-1) 5)Real(实数):范围为-
15、1.0E 38 1.0E 38,6)Bit _ vector使用时必须标明宽度。9)Natural(自然)和Positive(正整数):是整数的子类型。10)错误级别:系统设计中使用的操作状态。NOTE、WARNING、ERROR和FAILURE。2 .使用者定义的资料类型,1)Enumerated Types(列举类型)格式为TYPE资料类型名称IS(列举字元,列举字元)。例如typecoloris (red、green、yellow、blue);类型级别IS (0,1,Z);2)Integer Types(整数类型)和Real Types(实数类型)格式是TYPE数据类型名称IS RANGE约束条件范围。示例:type int is range-10到10;3)Array Types(数组类型)格式是TYPE数据类型名称IS ARRAY(索引范围)OF类型名称。例如,类型a is array (integer 0到9) of STD _ logic,3 .IEEE预先定义标准逻辑位元和向量,并在IEEE套装软体的std_l
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年山东省淄博市中考化学最后冲刺浓缩卷(含答案解析)
- 2026年河北省承德市中考联考化学试卷(含答案解析)
- 《课桌有多长》-二年级数学(上)厘米的认识与测量
- 金榜中考物理试题及答案
- 机械类试题及答案大全
- 八年级道德与法治上册第四单元《树立总体国家安全观》专题深度学习:国家利益的辨识、维护与践行
- 初中八年级科学“力与空间探索”核心知识清单
- 初中八年级地理《中国人口时空格局与可持续发展》教案
- 外科护理实践指南
- 家居电器维护安全知识
- JG/T 410-2013飞机库门
- 机电工程安全法规试题及答案
- 2025定远事业单位笔试真题
- 视频监控系统运维服务投标方案
- 2025鲁教版高中地理必修一知识点归纳总结(复习必背)
- 2025年七年级下学期地理教学工作总结(2篇)
- 乙方和甲方对赌协议书范本
- 2024北京东城区初二(下)期末数学及答案
- 河北省石家庄市正定县2023-2024学年八年级下学期期末教学质量检测物理试卷
- 产科新生儿疫苗接种课件
- 2024年新疆中鑫国贸集团有限公司招聘笔试参考题库附带答案详解
评论
0/150
提交评论