verilog学习心得之九 -- case、casez与casex的区别

(1)case语句属于条件语句,常用于多条件译码电路(如译码器、数据选择器、状态机等),case语句与if-else语句的区别在于if-else语句适用于对不同条件,执行不同的语句,每个判定只有两个分支,而case语句是多分支语句,当控制信号只有一个时,最好采用case语句。

case语句格式如下: case (敏感表达式)

                                  值1:语句1;

                                  值2:语句2;

                                   ...

                                   值n:语句n;

                                   default: 语句n+1;

                                  endcase

(2)casez语句与casex语句是case语句的两种变体

在casez语句中,分支表达式每一位的值都是确定的(或者为0,或者为1),若表达式某些位的值为高阻态z,则不考虑对这些位的比较。

在casex语句中,若分支表达式某些位为z或者不定值x,则不考虑这些位的比较,可用?来标识x或者z,即无关项。

verilog学习心得之九 -- case、casez与casex的区别_第1张图片

 

 

你可能感兴趣的:(verilog)