版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VHDL语言第四章VHDL语言构造体描述方式第一页,共43页。
对硬件系统进行描述,可以采用3种不同风格的描述方式,即行为描述方式、寄存器传输(或数据流DataFlow)描述方式和结构化的描述方式。这3种描述方式从不同的角度对硬件系统进行行为和功能的描述。在当前情况下,采用后两种描述方式的VHDL语言程序可以进行逻辑综合,而采用行为描述的VHDL语言程序,大部分只用于系统仿真,少数的也可以进行逻辑综合。本章针对这3种不同风格的描述方式作一介绍。第二页,共43页。4.1构造体的行为描述方式行为描述方式是对系统数学模型的描述,其抽象程度比寄存器传输描述方式和结构化描述方式的更高。在行为描述方式的程序中大量采用算术运算、关系运算、惯性延时、传输延时等难于进行逻辑综合和不能进行逻辑综合的VHDL语句。一般来说,采用行为描述方式的VHDL语言程序主要用于系统数学模型的仿真或者系统工作原理的仿真。
第三页,共43页。补充:什么是仿真?什么是逻辑综合?
仿真:一个计算系统通过使用允许它运行为另一个系统而写的程序的软件和硬件,而对后者进行的模拟。简单说来就是对一个程序或模型进行“模拟”的过程.
逻辑综合:设计自动化工具将高层次的系统描述转化为具体的硬件.这与计算机软件程序编译成机器代码类似.第四页,共43页。4.1.1代入语句
代入语句是VHDL语言中进行行为描述的最基本的语句。例如:
a<=b;该语句的功能是a得到b的值。当该语句有效时,现行信号b的值将代入到信号a。只要b的值有一个新的变化,那么该语句将被执行。所以,b是该代入语句的一个敏感量。最普遍的格式为:信号量<=敏感信号量表达式;例如:z<=aNOR(bANDc);具有延时时间的代入语句:a<=bAFTER5ns;该语句表示,当b发生新的变化5ns以后才被代入到信号a。第五页,共43页。举例1
用具有延时时间的代入语句来描述二输入的与门。ENTITYand2ISPORT(a,b:INBIT;c:OUTBIT);ENDand2;ARCHITECTUREand2_behavOFand2ISBEGIN
c<=aANDbAFTER5ns;ENDand2_behav;第六页,共43页。举例2用行为描述方式描述四选一电路。选择信号代入语句条件信号代入语句根据选择型号sel当前值,将指定代入值代入给输出量根据a和b具体状态,将0-4值代入信号量sel6个输入端口和一个输出端口。a和b是选择信号输入端口第七页,共43页。4.1.2延时语句VHDL中存在两种延时类型:惯性延时和传输延时。这两种延时常用于VHDL语言的行为描述方式。第八页,共43页。1、惯性延时
惯性延时是缺省的,即在语句中如果不作特别声明,产生的延时一定是惯性延时。这是因为大多数器件在行为仿真时都会呈现这种惯性延时。
在惯性模型中,系统或器件输出信号要发生变化必须有一段时间的延时,这段延时时间常称为系统或器件的惯性或称惯性延时。惯性延时有一个重要的特点,即当一个系统或器件,它的输入信号变化周期小于系统或器件的惯性(或惯性延时)时,其输出将保持不变。第九页,共43页。
举例
如上图所示,有一个门电路,惯性延时时间为20ns,当输入端a输入一个10ns的脉冲信号时,输出端b仍维持低电平而不发生变化。这是因为输入信号的变化周期比惯性延时时间20ns短。
几乎所有器件都存在惯性延时,因此,硬件电路的设计人员为了逼真地仿真硬件电路的实际工作情况,在代入语句中总要加上惯性延时时间的说明。例如:
b<=aAFTER10ns;
惯性延时说明只在行为仿真时有意义,逻辑综合时将被忽略,或者在逻辑综合前必须去掉延时说明。第十页,共43页。2、传输延时
VHDL语言中,传输延时不是缺省的,必须在语句中明确说明。传输延时常用于描述总线延时、连接线的延时及ASIC芯片中的路径延时。具有传输延时的代入语句如下所示:
b<=TRANSPORTaAFTER20ns;语句中“TRANSPORT”是专门用于说明传输延时的前置词。第十一页,共43页。举例
下面左图的门电路的惯性延时用传输延时来替代,那么就可以得到如下面右图的波形结果。从下面右图波形可以看到,同样门电路,当有10ns的脉冲波形输入时,经20ns传输延时以后,在输出端就产生10ns的脉冲波形。也就是说,输出端的信号除延时规定时间外,将完全复现输入端的输入波形,而不管输入波形的形状和宽窄如何。第十二页,共43页。4.1.3多驱动器描述语句
在VHDL语言中,创建一个驱动器可以由一条信号代入语句来实现。当有多个信号并行输出时,在构造体内部必须利用代入语句,对每个信号创建一个驱动器。这样在构造体内部就会有多个代入语句。在设计逻辑电路时,有时会碰到多个驱动器的输出将连接到同一条信号线上,如下例:
ARCHITECTUREsampleOFsampleISBEGINa<=bAFTER5ns;a<=dAFTER5ns;ENDsample;信号a由两个驱动源b和d驱动。a的值将取决于两个驱动器的输出b和d。那么信号a到底应该取何值?这一点在标准的数据类型中没有定义。第十三页,共43页。为了解决多个驱动器同时驱动一个信号的信号行为描述,在包集合STD_LOGIC_1164中专门定义了一种描述判决函数的数据类型,称判决函数子类型。所谓判决函数就是在多个驱动器同时驱动一个信号时,定义输出哪一个值的函数。当系统要确定多驱动器输出的状态时,可调用判决函数。第十四页,共43页。4.1.4GENERIC语句类属说明:确定实体或组件中定义的局部常数。模块化设计时多用于不同层次模块之间信息的传递。可从外部改变内部电路结构和规模。
类属说明必须放在端口说明之前。GENERIC(
常数名称:类型[:=缺省值]{常数名称:类型[:=缺省值]});使用GENERIC语句易于使器件模块化和通用化。第十五页,共43页。类属映射语句可用于设计从外部端口改变元件内部参数或结构,在元件例化中使用特别方便。其语句格式是:
GENERICMAP(类属表);类属映射语句常配合端口映射语句使用。
第十六页,共43页。4.2构造体的寄存器传输(RTL)描述方式采用行为描述方式的VHDL语言程序,在一般情况下只能用于行为层次的仿真,而不能进行逻辑综合。对于用行为描述方式的VHDL语言程序只有改写为RTL描述方式才能进行逻辑综合,也就是说RTL描述方式才是真正可以进行逻辑综合的描述方式。在某些书刊中也把RTL描述方式称为数据流描述方式。第十七页,共43页。*基础知识回顾:什么是寄存器?所谓寄存器(register),它是CPU内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果。其实寄存器就是一种常用的时序逻辑电路,但这种时序逻辑电路只包含存储电路。寄存器的存储电路是由锁存器或触发器构成的,因为一个锁存器或触发器能存储1位二进制数,所以由N个锁存器或触发器可以构成N位寄存器。第十八页,共43页。4.2.1RTL描述方式的特点寄存器传输级描述(RTL__RegisterTransferLevel是以寄存器为特征,在寄存器之间插入组合逻辑电路。即以描述数据流的流向为特征。在RTL描述方式中要么采用寄存器硬件的一一对应的直接描述,要么采用寄存器之间的功能描述。第十九页,共43页。1、举例1
采用RTL描述方式的四选一电路的VHDL语言程序。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGEND.ALL;ENTITYmux4ISPORT(input:INSTD_LOGIC_VECTOR(3DOWNTO0);sel:INSTD_LOGIC_VECTOR(1DOWNTO0);y:OUTSTD_LOGIC);ENDmux4;ARCHITECTURErtlOFmux4ISBEGINy<=input(0)WHENsel=“00”ELSEy<=input(1)WHENsel=“01”ELSEy<=input(2)WHENsel=“10”ELSEinput(3);ENDrtl;
该程序是对四选一电路的功能进行描述而得到的RTL描述实体。条件信号代入语句,是并发处理语句第二十页,共43页。2、举例2并发信号代入语句第二十一页,共43页。4.2.2使用RTL描述方式应注意的几个问题
1、“X”状态的传递
2、寄存器RTL描述的限制
3、关联性强的信号应放在一个进程中
第二十二页,共43页。1、“X”状态的传递所谓“X”状态的传递,实质上是不确定信号状态的传递,它将使逻辑电路产生不确定的结果,不确定“状态”在RTL仿真时是允许出现的,但是在逻辑综合后的门级电路仿真中是不允许出现的第二十三页,共43页。举例(1)(2)IF语句的二选择控制,(3)多选择控制第二十四页,共43页。4.2.3寄存器RTL描述的限制
由RTL描述所生成的逻辑电路中,一般来说寄存器的个数和位置与RTL描述的情况是一致的。但是,寄存器RTL描述不是任意的,而是有一定限制的。第二十五页,共43页。1、禁止在一个进程中存在两个寄存器描述
RTL描述规定,在一个进程中只能描述一个寄存器。下例那样对两个寄存器进行描述是不允许的。PROCESS(clk1,clk2)BEGINIF(clk1’EVENTANDclk1=‘1’)THENy<=a;ENDIF;IF(clk2’EVENTANDclk2=‘1’)THENz<=b;ENDIF;ENDPROCESS;第二十六页,共43页。2、禁止使用IF语句中的ELSE项
在使用IF语句描述寄存器功能时,禁止采用ELSE项。下例这样的描述是应该禁止使用的。PROCESS(clk)BEGINIF(clk’EVENTANDclk=‘1’)THENy<=a;ELSE--禁止使用
y<=b;ENDIF;ENDPROCESS;第二十七页,共43页。3、寄存器描述中必须代入信号值
在寄存器描述中,必须将值代入信号,如下例所示。PROCESS(clk)SIGNALtmp:STD_LOGIC;BEGINIF(clk’EVENTANDclk=‘1’)THENtmp:=a;ENDIF;y<=tmp;ENDPROCESS;第二十八页,共43页。4、关联性强的信号应放在一个进程中
在设计“与”及“或”这样部件时,如果在原理图上时并行放置的,那么通常进程和部件是一一对应的。但是,在许多较复杂的电路中,它有多个输入和输出,有些信号互相的关联度很高,而有些信号互相的关联度就很低,在这种情况下,为了在逻辑综合以后,使其电路的面积和速度指标更高,通常将关联度高的信号放在一个进程中,将电路分成几个进程来描述。第二十九页,共43页。4.3构造体的结构描述方式
所谓构造体的结构描述方式,就是在多层次的设计中,高层次的设计模块调用低层次的设计模块,或者直接用门电路设计单元来构成一个复杂的逻辑电路的描述方法。结构描述方式最能提高设计效率,它可以将已有的设计成果,方便地用到新的设计中去。
第三十页,共43页。假如某一个逻辑电路是由AND门、OR门和XOR门构成的,而AND门、OR门和XOR门的逻辑电路都已由现成的设计单元。那么,用这些现成的设计单元(AND的ENTITY、OR的ENTITY和XOR的ENTITY)经适当连接就可以构成新的设计电路的ENTITY。这样的描述,其结构非常清晰,且能做到与电原理图中所画的器件一一对应。当然,如要用结构描述方式,则要求设计人员有较多的硬件设计知识。结构描述是元件互连的描述,使用元件例化语句。第三十一页,共43页。定义:对所调用的较低层次的实体模块(元件)的名称、类属参数、端口类型、数据类型的声明语法:元件声明类似实体声明(entity)1.元件声明COMPONENT元件名
GENERIC说明;
PORT
说明;
ENDCOMPONENT;----类属声明----端口声明第三十二页,共43页。元件声明举例第三十三页,共43页。可在以下部分声明元件:构造体(Architecture)程序包(Package)块(Block)被声明元件的来源:
VHDL设计实体;其它HDL设计实体;另外一种标准格式的文件,如EDIF或XNF;厂商提供的工艺库中的元件、IP核。第三十四页,共43页。定义:把低层元件安装(调用)到当前层次设计实体内部的过程。包括:类属参数传递、元件端口映射。例如:
u2:and2PORTMAP(nsel,d1,ab);2.元件的例化COMPONENT_INSTANT语句的书写
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年湖南省岳阳市中小学教师招聘考试试卷及答案
- 2026年安徽芜湖市中考历史考试真题及答案
- 2026年安徽淮北市中考英语试题(附答案)
- 电子表格格式化教学设计中职专业课-计算机应用基础-计算机类-电子与信息大类
- 12345政务服务便民热线服务提供方要求
- 高中生物(新人教版必修1)教案:5.4《能量之源-光与光合作用》第2课时
- 全国川教版信息技术八年级下册第1课《计算机网络及应用》教学设计
- AI赋能食品安全检测:技术创新与实践应用
- 河南省新乡市辉县市城北初级中学等校2025~2026学年集团订制第一学期期末学情监测试卷 八年级英语(含答案无听力原文及音频)
- AI赋能光伏运维:智能监测、诊断与效能优化实践指南
- 2026年山西经贸职业学院单招职业适应性考试题库带答案详解(巩固)
- 足疗店内部管理相关规定制度
- 2025年郑州信息科技职业学院单招职业技能测试题库附答案解析
- 2026年初中历史七年级下册单元测试卷(冲刺押题)
- 2026年春季小学一年级下册美术(人美版2024版)教学计划附教学进度表
- 索尼拍照行业现状分析报告
- 5年高考数学真题分类汇编专题02常用逻辑用语(原卷版)
- 安徽2021-2025真题及答案
- JJG 1148-2022 电动汽车交流充电桩(试行)
- 向量为基,几何为本-以2025年全国新高考数学Ⅰ卷17题为例说题比赛
- 2026-2031年中国鲜冻马肉行业市场发展趋势与前景展望战略研究报告
评论
0/150
提交评论