一文淺析case、casex、casez區(qū)別_第1頁
一文淺析case、casex、casez區(qū)別_第2頁
一文淺析case、casex、casez區(qū)別_第3頁
一文淺析case、casex、casez區(qū)別_第4頁
一文淺析case、casex、casez區(qū)別_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

一文淺析case、casex、casez區(qū)別Verilog語言中case、casex、casez的用法和區(qū)別casez與casex語句是case語句的兩種變體,在寫testbench時用到。一、case、casex、casez的區(qū)別下表給出case、casex、casez的真值表:在case語句中,敏感表達(dá)式中與各項值之間的比較是一種全等比較,每一位都相同才認(rèn)為匹配。在casez語句中,如果分支表達(dá)式某些位的值為高阻z,那么對這些位的比較就會忽略,不予考慮,而只關(guān)注其他位的比較結(jié)果。在casex語句中,則把這種處理方式進(jìn)一步擴(kuò)展到對x的處理,即如果比較雙方有一方的某些位的值是z或x,那么這些位的比較就不予考慮。二、case/casez/casex在simulation/synthesis的區(qū)別有的網(wǎng)上說casex和casez屬于不可綜合語句,這是針對一般電路不會出現(xiàn)x狀態(tài)來說的,但是綜合工具并不會對x,z認(rèn)識這個狀態(tài),所以綜合出來的電路是一樣的。使用過程中許需要注意的問題:1)一般經(jīng)常使用到的是casez語句,最好少用casex2)case/casez/casex其實都是可綜合的3)在電路中,可以用?來表示無關(guān)值的z4)case的描述,匹配都是從上到下進(jìn)行的仿真的不同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)當(dāng)sel的狀態(tài)是一下情況時,會出現(xiàn)以下結(jié)果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的描述,匹配都是從上到下進(jìn)行的,如果使用了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也是從上到下匹配,當(dāng)出現(xiàn)x/z/?的輸入的時候,都不會care,只管不是大大情況來匹配綜合的不同綜合的時候,因為綜合工具其實都不會管你什么x/z/?,對于綜合工具來說是一樣的,所以case/casez/casex不同寫法的綜合結(jié)果,例子都是同樣的。例一: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這倆個例子的結(jié)果是一樣的。case(不是casez/casex的時候)的列表里面的x和z,都被綜合工具認(rèn)為是不可達(dá)到的狀態(tài)就被去掉了。casez和casex里面的x/z都被認(rèn)為是don’tcare。對于綜合、仿真的結(jié)果1)在實際寫代碼的時候,如果使用case的時候,盡量不要用x/z/?,綜合工具也會不care2)casez和casex綜合的結(jié)果是一致的。3)casez稍好用一些,因為它可以用來代表don’tcare的值4)最重要的一點就是,casez和casex其實沒有孰優(yōu)孰劣5)casez語句用來處理不考慮高阻值z的比較過程,casex語

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論