3.4  VHDL中的描述语句

 

3.   case 语句

    case 语句常用来描述总线或编码、译码行为。可读性比if 语句强。

    格式如下:

       case    表达式    is

        when    分支条件 => 顺序处理语句;

        when    分支条件 => 顺序处理语句;

 

 

        when    分支条件 => 顺序处理语句;

       end  case;

其中的分支条件可以有4种不同的形式:

            when    值 => 顺序处理语句;

            when    值|值|值|…|值 => 顺序处理语句;

            when    值 to 值 => 顺序处理语句;

            when    others => 顺序处理语句;

 

Case 语句中分支条件的限制:

       1、两个分支条件不能重叠。

       2、如果没有 others 分支条件存在,则分支条件必须覆盖表达式所有可能的值。

                         

例:用case 语句描述四选一电路

 

例:case 语句的误用

           signal  value : integer  range  0  to  15 ;

           signal  out_1 : bit ;

           case  value  is                  -- 缺少 when 语句

end  case ;

           case  value  is                  -- 分支条件不包含2到15    

           when  0 => out_1 <= ‘1’ ;

           when  1 => out_1 <=‘0’ ;

end  case ;

case  value  is                  -- 在5到10上发生重叠

           when  0  to  10 => out_1 <= ‘1’ ;

           when  5  to  15 => out_1 <= ‘0’ ;

end  case ;

 

 

上一页  下一页  返回