最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

case、casex、casez的区别

互联网 admin 1浏览 0评论

case、casex、casez的区别

一、case、casex、casez的区别
下表给出case、casex、casez的真值表:

在这里插入图片描述

在case语句中,敏感表达式中与各项值之间的比较是一种全等比较,每一位都相同才认为匹配。

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

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

二、case/casez/casex 在simulation/synthesis的区别
有的网上说casex和casez属于不可综合语句,这是针对一般电路不会出现x状态来说的,但是综合工具并不会对x,z认识这个状态,所以综合出来的电路是一样的。

使用过程中许需要注意的问题:
1)一般经常使用到的是casez语句,最好少用casex
2)case/casez/casex其实都是可综合的
3)在电路中,可以用?来表示无关值的z
4)case的描述,匹配都是从上到下进行的

仿真的不同
1)对于case

case (sel) 2'b00:      y = a; 2'b01:      y = b; 2'bx0:      y = c; 2'b1x:      y = d; 2'bz0:      y = e; 2'b1?:      y = f; default :   y = g; 
endcase


2)对于casez

casez (sel) 2'b00:      y = a; 2'b01:      y = b; 2'bx0:      y = c; 2'b1x:      y = d; 2'bz0:      y = e; 2'b1?:      y = f; default:    y = g; 
endcase


3)对于casex

casex (sel) 2'b00   :   y = a; 2'b01   :   y = b; 2'bx0   :   y = c; 2'b1x   :   y = d; 2'bz0   :   y = e; 2'b1?   :   y = f; default :   y = g; 
endcase


=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase

case、casex、casez的区别

一、case、casex、casez的区别
下表给出case、casex、casez的真值表:

在这里插入图片描述

在case语句中,敏感表达式中与各项值之间的比较是一种全等比较,每一位都相同才认为匹配。

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

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

二、case/casez/casex 在simulation/synthesis的区别
有的网上说casex和casez属于不可综合语句,这是针对一般电路不会出现x状态来说的,但是综合工具并不会对x,z认识这个状态,所以综合出来的电路是一样的。

使用过程中许需要注意的问题:
1)一般经常使用到的是casez语句,最好少用casex
2)case/casez/casex其实都是可综合的
3)在电路中,可以用?来表示无关值的z
4)case的描述,匹配都是从上到下进行的

仿真的不同
1)对于case

case (sel) 2'b00:      y = a; 2'b01:      y = b; 2'bx0:      y = c; 2'b1x:      y = d; 2'bz0:      y = e; 2'b1?:      y = f; default :   y = g; 
endcase


2)对于casez

casez (sel) 2'b00:      y = a; 2'b01:      y = b; 2'bx0:      y = c; 2'b1x:      y = d; 2'bz0:      y = e; 2'b1?:      y = f; default:    y = g; 
endcase


3)对于casex

casex (sel) 2'b00   :   y = a; 2'b01   :   y = b; 2'bx0   :   y = c; 2'b1x   :   y = d; 2'bz0   :   y = e; 2'b1?   :   y = f; default :   y = g; 
endcase


=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论