VHDL的基本描述语句_第1页
VHDL的基本描述语句_第2页
VHDL的基本描述语句_第3页
VHDL的基本描述语句_第4页
VHDL的基本描述语句_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、VHDL的基本描述语句有并行语句(Concurrent Statements)和顺序语句(Sequential Statements) 两大类(如表8-3 所示)。在系统设计中,这些基本描述语句从不同侧面完整地描述了数字系统 的硬件结构和基本逻辑功能。表 8-3VHDL 的并行语句和顺序语句序号并行语句顺序语句1并行信号赋值语句赋值语句2进程语句PROCESS流程控制语句 IF,CASE,LOOP,NEXT,EXIT3块语句BLOCK等待语句WAIT4元件例化语句MAP子程序调用语句PROCEDURE,FUNTION5生成语句GENERATE返回语句RETURN6并行过程调用语句空操作语句NU

2、LL并行语句用于表示算法模块间的连接关系,相互之间无次序关系,它们是并行执行的,与书写顺序无关。VHDL的结构体由若干相互联系的并行描述语句组成,如图8-3所示。并行描述语句在结构体中的语法格式如下:ARCHITECTURE结构体名OF实体名IS说明语句BEGIN并行语句END ARCHITECTURE 结构体名;EN& ARCHTTECTIHE罔話 结构廉中的并行语句模块并行描述语句主要有:并行信号赋值语句(Concurrent Signal Assignments)、进程语句(Process Statements)、块语句(Block Statements)、元件例化语句(Componen

3、t Instantiations)、生成语 句(Generate Statements)及并行过程调用语句(Concurrent Procedure Calls)等六种。其中,进 程语句和块语句是两种最主要、最常用的并行描述语句。本节介绍这六种并行描述语句及其功能。一、进程语句(TOP)进程 PROCESS 语句本身是并行描述语句,但却包含一系列顺序描述语句。所以,设计中各个 进程是并行执行,而各进程内的顺序描述语句却是按顺序执行。进程与其他部分的通信,是通过从进程外的信号或端口中读取或者写入值来完成。进程语句的语 法格式如下:进程名称:PROCESS (敏感表)进程声明BEGIN顺序语句EN

4、D PROCESS 进程名称;其中,进程声明是对子程序、类型、常量和变量等的说明;敏感表(Sensitivityist)是所有敏 感信号(包括端口)的列表;敏感表的语法格式为:信号名称,信号名称所谓进程对信号敏感,是指当信号发生变化时,能够触发进程中语句的执行。这种敏感方式有两 种:显式敏感表形式和WAIT语句形式。如果进程包含wait或者ifevent语句,必定包含时序组 件。此时, IEEE VHDL 不允许有敏感表存在。所以,进程语句也为时序算法提供一种自然的手 段。二、块语句(TOP)块 BLOCK 语句把几个并行语句打包成结构体的子模块,成为结构体中的一个单独块区域。块语 句由一系列

5、并行描述语句构成。块语句的语法格式如下:块名称: BLOCK (表达式) 块声明BEGIN并行语句END BLOCK 块名称;其中,表达式是块的保护(Guard)条件;块声明是对子程序、类型、常量、信号和组件等的说 明。三、并行信号赋值语句(TOP)并行信号赋值语句与包含顺序赋值语句的进程等价。并行信号赋值语句为被赋值的信号定义了新 的驱动源。并行信号赋值语句有:简单信号赋值语句、条件信号赋值语句和选择信号赋值语句三 种。简单信号赋值语句是 VHDL 并行语句结构的最基本的单元。它的语句格式如下:赋值目标= 表达式其中,赋值目标是接受表达式的值的信号,它的数据类型必须与表达式的数据类型一致。条

6、件信号赋值语句与进程中的 IF 语句相同,它们有十分相似的顺序性。条件信号赋值语句的语 法格式如下:赋值目标 = 表达式 WHEN 赋值条件 ELSE表达式执行条件信号语句时,每一赋值条件是按书写次序逐项测定的。一旦发现赋值条件=TRUE,立 即将表达式的值赋给赋值目标变量。这里的赋值条件的数据类型是布尔量,当为真时表示满足赋 值条件。注意,条件赋值语句中的 ELSE 不可省;最后一项表达式可以不跟条件子句,表示以上各条件 都不满足时则将此表达式赋予赋值目标信号。选择信号赋值语句的语法格式如下:WITH 选择表达式 SELECT赋值目标信号=表达式 WHEN 选择值表达式 WHEN 选择值其中

7、,选择值是目标信号被赋对应表达式的值的条件,当选择表达式等于某个选择值时,赋值目 标信号被赋对应表达式的值。所以,虽然选择信号赋值语句不能在进程中使用,但其功能却与进程中的 CASE 语句的功能相 似。需要注意的是:选择值不能重叠;并且必须包容所有的条件。它的最后选择值可以是 OTHERS。四、组件例化语句(TOP)组件例化 MAP 语句已经在本章第二节中介绍过。组件例化是为了定义一个设计层次或者建立一 个 VHDL 网表。这里从并行描述语句的角度,对它作更细节的说明。组件例化语句的语法结构 如下:实例名称:组件名称 PORTMAP(端口名称=表达式,端口名称=表达式 );其中,实例名称是该组

8、件的实例的名称;组件名称是端口映射组件的名称;表达式是一个信号名、 索引名、片段名或者集合,指示组件端口的连接方法;端口映射将组件的各端口与当前实体中信 号值表达式连接起来。五、生成语句(TOP)生成GENERATE语句用于复制并行描述语句(如组件、进程或者块)的若干备份。生成语句有 两种形式。(一)FOR.GENERATE 语句形式FOR.GENERATE语句用离散的范围决定备份的数目。它描述重复模式。它的语法格式如下:标号:FOR标志符IN范围GENERATE说明BEGIN并行语句ENDGENERATE 标号;其中,标号是该语句的名称,用于建立嵌套生成语句;标志符自动由生成语句本身说明,并且是 局部的,只存在于该语句内;范围必须是可计算的整数范围,用to或者downto。(二)IF .GENERATE 语句形式IF .GENERATE语句有条件地生成0或者1个备份。它描述一个结构中的例外情形。它的语法 格式如下:标号: IF 条件表达式 GENERATE说明BEGIN并行语句END GENERATE 标号;其中,标号是该语句的名称;表达式是求值结果为布尔型的任何表达式;并行语句可以是任意并 行描述语句,包括别的生成语句。六、并行过程调用语句(TOP)并行过程调用语句可

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论