一文浅析case、casex、casez区别_第1页
一文浅析case、casex、casez区别_第2页
一文浅析case、casex、casez区别_第3页
一文浅析case、casex、casez区别_第4页
一文浅析case、casex、casez区别_第5页
全文预览已结束

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一文浅析case、casex、casez区别Verilog语言中case、casex、casez的用法和区别casez与casex语句是case语句的两种变体,在写testbench时用到。一、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语句,最好少用casex2)case/casez/casex其实都是可综合的3)在电路中,可以用?来表示无关值的z4)case的描述,匹配都是从上到下进行的仿真的不同1)对于casecase(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对于case来说,每一种情况都会识别(1/0/z/x)当sel的状态是一下情况时,会出现以下结果2)对于casezcasez(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首先,case的描述,匹配都是从上到下进行的,如果使用了casez,看上面的casez的列表,只要输入有z/?的话,就能和任意匹配。3)对于casexcasex(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;

endcasecasex也是从上到下匹配,当出现x/z/?的输入的时候,都不会care,只管不是大大情况来匹配综合的不同综合的时候,因为综合工具其实都不会管你什么x/z/?,对于综合工具来说是一样的,所以case/casez/casex不同写法的综合结果,例子都是同样的。例一:case(sel)

2'b00

:

mux_out=mux_in[0];

2'b01

:

mux_out=mux_in[1];

2'b1?

:

mux_out=mux_in[2];

default:

mux_out=mux_in[3];

endcase

例二:case(sel)

2'b00

:

mux_out=mux_in[0];

2'b01

:

mux_out=mux_in[1];

2'b1x

:

mux_out=mux_in[2];

default:

mux_out=mux_in[3];

endcase这俩个例子的结果是一样的。case(不是casez/casex的时候)的列表里面的x和z,都被综合工具认为是不可达到的状态就被去掉了。casez和casex里面的x/z都被认为是don’tcare。对于综合、仿真的结果1)在实际写代码的时候,如果使用case的时候,尽量不要用x/z/?,综合工具也会不care2)casez和casex综合的结果是一致的。3)casez稍好用一些,因为它可以用来代表don’tcare的值4)最重要的一点就是,casez和casex其实没有孰优孰劣5)casez语句用来处理不考虑高阻值z的比较过程,casex语

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论