第6章 VHDL的描述语句与描述风格
【例6-3】 IF(a=‘1’) THEN
c<=b; ELSE
c<=d; END IF; 如果a='1'则执行c<=b;否则执行c<=d,然后执行后续语句。
第6章 VHDL的描述语句与描述风格
(3) 格式 3: IF 条件 THEN 顺序执行语句; ELSIF 条件 THEN 顺序执行语句; ELSIF 条件 THEN 顺序执行语句; ELSIF 条件 THEN 顺序执行语句;
第6章 VHDL的描述语句与描述风格
svec(0)<=v1; svec(1)<=v2; svec(2)<=s1; svec(3)<=s2; v1:=b; v2:=b; s2<=b;
-- v1 的值(a)赋给 sevs(0) -- v2 的值(a)赋给 sevs(1) -- s1 的值(a)赋给 sevs(2) -- s2 的值(b)赋给 sevs(3) --立即将 v1 置为 b --立即将 v2 置为 b --由于该赋值语句对于 s2 为最后一个,所以将 s2 置为 b
第6章 VHDL的描述语句与描述风格
WHEN的条件表达式可以有4种形式: (1) WHEN 值=>顺序执行语句。 (2) WHEN 值|值|值|…|值=>顺序执行语句。 (3) WHEN 值TO 值=>顺序执行语句。 (4) WHEN OTHERS=>顺序执行语句。
第6章 VHDL的描述语句与描述风格
--两边长度不一致,通过段下标取值 --两边长度不一致,通过并置符补充位数
第6章 VHDL的描述语句与描述风格
在用MAX plus Ⅱ进行检查时,提示有一个警告,指出在对 s2赋值时第一条语句无效;在编译时有两个警告,除了指出在对 s2赋值时第一条语句无效外,还指出d(8)与“地”相连。通过 MAX plus Ⅱ仿真的波形如图6-1所示。