vhdl when else

Posted xiaoxuesheng993

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vhdl when else相关的知识,希望对你有一定的参考价值。

在VHDL中,IF...THEN...ELSE是顺序语句,只能出现在行为描述中(进程体或者子程序中);而WHEN...ELSE是并行语句,可以直接出现在结构体中,但却不能出现在行为描述中。
WHEN...ELSE等效于一个进程体为IF...THEN...ELSE语句的进程。

四选一

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;

entity mm is
PORT(A,B,C,D: IN STD_LOGIC;
        S0,S1:IN STD_LOGIC;
Z: OUT STD_LOGIC);
end ENTITY mm;

architecture bhv of mm is

BEGIN
Z<=A WHEN S0=‘0‘ AND S1=‘0‘ ELSE
   B WHEN S0=‘0‘ AND S1=‘1‘ ELSE
   C WHEN S0=‘1‘ AND S1=‘0‘ ELSE
   D WHEN S0=‘1‘ AND S1=‘1‘ ELSE
   ‘Z‘;

END bhv;




















以上是关于vhdl when else的主要内容,如果未能解决你的问题,请参考以下文章

day12函数的命名空间,作用域,闭包等

java和kotlin的比较:switch与when

java hql case when 的用法

hibernate hql case when 子查询报java.lang.NullPointerException错误

python 函数的作用域,闭包函数的用法

r22 tools cause java.lang.VerifyError when building from ant script