- 1、本文档共29页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
五、VHDL语言的顺序语句;顺序语句只能出现在
进程(PROCESS)
过程(PROCEDURE)
函数(FUNCTION)
中,其它都是并行语句。;VHDL有如下六类基本顺序语句:;目的变量 := 表达式;;2、流程控制语句;第三种;例 :IF (SET=’1’) THEN
c=b
END IF;;例 用IF语句描述一个四选一电路;ARCHITECTURE rt1 OF mux4 IS
BEGIN
PROCESS (input, sel)
BEGIN
IF (sel=”00”) THEN Y=input (0);
ELSIF (Sel=”01”) THEN Y=input (1);
ELSIF (Sel=”10”) THEN Y=input (2);
ELSE Y=input (3);
END IF;
END PROCESS;
END rt1;; IF语句不仅可用于选择器设计,还可用于比较器,译码器等进行条件控制的逻辑设计。IF语句中至少应有一个条件句,条件句必须由布尔表达式构成,条件表达式中能使用关系运算操作及逻辑运算操作的组合表达式。;B、CASE 语句;例 用CASE语句描述4选1多路选择器。
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY MUX41 IS
PORT(S1,S2: IN STD_LOGIC;
A,B,C,D:IN STD_LOGIC;
Z: OUT STD_LOGIC);
END ENTITY MUX41;;ARCHITECTURE ART OF MUX41 IS
SIGNA S :STD_LOGIC_VECTOR(1 DOWNTO 0);
BEGIN
S=S1 S2;
PROCESS(S,A,B,C,D) IS
BEGIN
CASE S IS
WHEN 00=Z=A;
WHEN 01=Z=B;
WHEN 10=Z=C;
WHEN 11=Z=D;
WHEN OTHERS =Z=X;
END CASE;
END PROCESS;
END ARCHITECTURE ART;; (1) 条件句中的选择值必须在表达式的取值范围内。
(2) 除非所有条件句中的选择值能完整覆盖CASE语句中表达式的取值,否则最末一个条件句中的选择必须用“OTHERS”表示。
(3) CASE语句中每一条语句的选择只能出现一次,不能有相同选择值的条件语句出现。
(4) CASE语句执行中必须选中,且只能选中所列条件语句中的一条。这表明CASE语句中至少要包含一个条件语句。;C、LOOP 语句; [标号:] WHILE 条件 LOOP
顺序语句;
END LOOP [标号];;D、NEXT 语句;用法示例:
…
L1: FOR CNT IN 1 TO 8 LOOP
S1:A(CNT):=‘0’;
NEXT WHEN (B=C);
S2 :A(CNT+8):=‘0’;
END LOOP L1;;E、EXIT 语句;3、等待语句;
一般地,只有WAIT_UNTIL格式的等待语句可以被综合器接受(其余语句格式只能在VHDL仿真器中使用) ,WAIT_UNTIL语句有以下三种表达方式:
WAIT UNTIL 信号=Value ; -- (1)
WAIT UNTIL 信号’EVENT AND 信号=Value; -- (2)
WAIT UNTIL NOT 信号’STABLE AND 信号=Value; -- (3)
;例:
PROCESS
BEGIN
rst_loop : LOOP
WAIT UN
文档评论(0)