微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > case\casez\casex的使用

case\casez\casex的使用

时间:10-02 整理:3721RD 点击:

在case语句中,敏感表达式与各项值之间的比较,是一种全等比较。

casez与casex语句是case语句的两种变体,三者的表示形式中唯一的区别是三个关键词case、casez、casex的不同。

在casez语句中,如果分支表达式某些位的值为高阻z,那么对这些位的比较就会忽略,不予考虑,而只关注其他位的比较结果。

在casex语句中,则把这种处理方式进一步扩展到对x的处理,即如果比较双方有一方的某些位的值是z或x,那么这些位的比较就不予考虑。

虽然很少使用casez和casex语句,但是在此普及一下知识点,防止以后使用。

给大家举个例子更明白一些吧
casex(state)
4'b1xxx: next=3;
4'bx1xx: next=2;
4'bxx1x: next=1;
4'bxxx1: next=0;
default : next=0;
encase
如果输入的state为4‘b10xz的话,执行的是next=3

非常好的例子,谢谢

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top