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

(1)case语句属于条件语句,常用于多条件译码电路(如译码器、数据选择器、状态机等),case语句与if-else语句的区别在于if-else语句适用于对不同条件,执行不同的语句,每个判定只有两个分支,而case语句是多分支语句,当控制信号只有一个时,最好采用case语句。
case语句格式如下: case (敏感表达式)
【verilog学习心得之九 -- case、casez与casex的区别】值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的区别
文章图片



    推荐阅读