五,vhdl语言的顺序语句

上传人:子 文档编号:51909109 上传时间:2018-08-17 格式:PPT 页数:28 大小:223KB
返回 下载 相关 举报
五,vhdl语言的顺序语句_第1页
第1页 / 共28页
五,vhdl语言的顺序语句_第2页
第2页 / 共28页
五,vhdl语言的顺序语句_第3页
第3页 / 共28页
五,vhdl语言的顺序语句_第4页
第4页 / 共28页
五,vhdl语言的顺序语句_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《五,vhdl语言的顺序语句》由会员分享,可在线阅读,更多相关《五,vhdl语言的顺序语句(28页珍藏版)》请在金锄头文库上搜索。

1、五、VHDL语言的顺序语句顺序语句( Sequential Statements)用来 实现模型的算法描 述。这些语句从多侧面完整地描述数字系统的硬件结构 和基本逻辑功能,其中包括通信的方式、信号的赋值、 多层次的元件例化以及系统行为等。顺序语句和并行语句是VHDL程序设计中两大基本描述语句系列。并行语句( Concurrent Statements)用来 表示各模型算法描 述之间的连接关系 。顺序语句只能出现在进程(PROCESS)过程(PROCEDURE)函数(FUNCTION) 中,其它都是并行语句。顺序语句是相对于并行语句而言的,其特点 是每一条顺序语句的执行(指仿真执行)顺序是与 它

2、们的书写顺序基本一致的,理解 一个进程是由一系列顺序语句构成的,而进 程本身属并行语句。也就是说,在同一设计实体 中,所有的进程是并行执行的,每个进程内部是 顺序执行的。VHDL有如下六类基本顺序语句 : 信号赋值语句 变量赋值语句1、赋值语句2、流程控制语句3、等待语句4、子程序调用语句5、返回语句6、空操作语句IF语句 CASE语句 LOOP语句 NEXT语句 EXIT语句RETURN语句NULL语句WAIT语句过程调用 函数调用目的变量 := 表达式;变量的说明和赋值限定在顺序区域内,即只能在 进程或子程序中使用,它无法传递到进程之外。目的信号 顺序语句; When 选择值 = 顺序语句

3、; .When OTHERS =顺序语句; END CASE ;选择值可以有四种不同的表达方式:单个普通数值,如6。数值选择范围,如(2 TO 4),表示取值为2、3或4。并列数值,如35,表示取值为3或者5。混合方式,以上三种方式的混合。例 用CASE语句描述4选1多路选择器。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MUX41 ISPORT(S1,S2: IN STD_LOGIC;A,B,C,D:IN STD_LOGIC;Z: OUT STD_LOGIC);END ENTITY MUX41;ARCHITECTURE ART OF MUX

4、41 ISSIGNA S :STD_LOGIC_VECTOR(1 DOWNTO 0);BEGINSZZZZZ10 ; - 当a大于10时跳出循环END LOOP L2;.(2)FOR LOOP语句,语法格式如下:(1)单个LOOP语句,其语法格式如下: 标号: LOOP 顺序语句;END LOOP 标号 ;标号: WHILE 条件 LOOP 顺序语句;END LOOP 标号;(3)WHILE LOOP语句,语法格式如下:用法示例: FOR I IN 0 TO 7 LOOPTmp:=tmp XOR a (I); END LOOP;用法示例: FOR I IN 0 TO 7 LOOPTmp:=tm

5、p XOR a (I); END LOOP;用法示例: WHILE i 实参表达式 ,形参名= 实参表达式) ;一个过程的调用将分别完成以下三个步骤:(1)将IN和INOUT模式的实参值赋给欲调用的过程中与它们对应的形参 ;(2)执行这个过程;(3)将过程中IN和INOUT模式的形参值返回给对应的实参。4、子程序调用语句A、过程调用语句B、函数调用语句函数调用与过程调用是十分相似的,不同 之处是,调用函数将返还一个指定数据类型的 值,函数的参量只能是输入值。5、返回语句RETURN语句是一段子程序结束后,返回主程序的 控制语句。它有两种格式: 第一种格式只能用于过程,它后面一定不能有表达式;

6、第二种格式只能用于函数,它后面必须有条件表达式, 它是函数结束的必要条件,函数结束必须用RETURN语 句。 RETURN; -第一种语句格式 RETURN 表达式; - 第二种语句格式【例】 PROCEDURE rs (SIGNAL s , r : IN STD_LOGIC ;SIGNAL q , nq : INOUT STD_LOGIC) ISBEGINIF ( s =1 AND r =1) THENREPORT “Forbidden state : s and r are quual to 1“;RETURN ;ELSEq tmp := rega AND regb ;WHEN “101“

7、 = tmp := rega OR regb ;WHEN “110“ = tmp := NOT rega ;WHEN OTHERS = NULL ; END CASE ; 6、断言(ASSERT)语句ASSERT 条件表达式REPORT 字符串SEVERITY 错误等级SEVERITY_LEVEL;ASSERT语句的格式如下:断言(ASSERT)语句只能在VHDL仿真器中使用,综合器 通常忽略此语句。ASSERT语句判断指定的条件是否为 TRUE,如果为FALSE则报告错误。出错级别必须是四 种错误等级中的一种。默认报告信息“Assertion Violation” 默认错误级别为“Error”分顺序断言和并行断言语句

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号