女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Verilog和SystemVerilog定義了4種描述信號狀態

數字前端ic芯片設計 ? 來源:未知 ? 作者:李倩 ? 2018-03-29 15:40 ? 次閱讀

Verilog和SystemVerilog定義了4種描述信號狀態: 1, 0, X, and Z。1和0無疑是真實存在的信號狀態. 而Z用來表示高阻態,X用來表示不確定的狀態。

X信號可以有意或無意地被創建,最常見的X信號存在于未被初始化的memory register,這里X用來表示這些memory在reset之前的的未知狀態 。其他一些可以產生X的場景包括了不同的driver驅動同一塊邏輯到不同的邏輯值,或者是在low power中的關斷信號,又或者是一些超過選擇范圍的多比特信號。 有些設計者會對design中那些dont care的信號設為X,讓綜合工具在做優化的時候來隨機選擇0或者1進行優化。也有些設計者為了debug的目的在設計中對那些不會用到的邏輯值設X,這樣在做仿真的時候如果使用到這些邏輯,說明電路有問題,而仿真工具產生的X可以檢查到這些邏輯。有意地設置一些X信號是比較有爭議的做法。在做lint檢查的時候也會被標識出來。但是有些X狀態由于仿真器識別的原因(verilog X optimism)會產生錯誤的仿真結果。這就屬于RTl的bug了。

第一個verilog X optimism的例子來自if...else語句:

1
2
3
4
5
6
always_ff@(posedge clk)begin
if(cond)
c <= a;
else
c <= b;
end

Verilog LRM 指出如果if...else的條件是X狀態,那么這個條件就會被當作false處理,在這里只有else語句會被執行。

在實際設計中有一種情況可能會產生這種問題:cond信號來自于memory。比如漢明碼SECDED(single error correction double error detection)解碼器,其檢測的序列是儲存漢明碼的寄存器,這段序列是否錯誤的cond是由這些寄存器經過一段組合邏輯產生,當cond為TRUE時輸出錯誤信號error=1。在reset之前這些寄存器都是X狀態,原本錯誤信號應該是error=1,但是在仿真中由于verilog X optimism這種特性,寄存器的X經過組合邏輯傳播到cond,導致最后將cond=X判斷為FALSE,輸出錯誤信號為0,這就與實際電路行為相違背了。

Verilog X optimism的另外一個例子是case語句:

1
2
3
4
5
6
always_ff@(posedge clk)begin
case(cond)
1'b0 : c = a;
1'b1 : c = b;
endcase
end

在case語句中如果cond為X的話,c將會保留原值。這里原本是描述了一個mux的行為,但由于X optimism的原因,仿真行為與RTL描述不一致。

此外,Verilog X optimism還會影響到0/1->X/Z的處理。下面的這些狀態轉移都會被視為posedge:

0->1, 0->X, 0->Z, X->1, Z->1

0->X or X->1實際上不一定是posedge,但在仿真中,他們都會被當作posedge處理。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 寄存器
    +關注

    關注

    31

    文章

    5421

    瀏覽量

    123290
  • Verilog
    +關注

    關注

    28

    文章

    1365

    瀏覽量

    111789

原文標題:verilog——X optimism

文章出處:【微信號:ic_frontend,微信公眾號:數字前端ic芯片設計】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    使用Verilog/SystemVerilog硬件描述語言練習數字硬件設計

    在實例化模塊時,使用Verilog時有兩常用的方式來進行模塊端口的信號連接:按端口順序以及按端口名稱連接端口。
    的頭像 發表于 09-08 09:04 ?1871次閱讀

    Verilog/SystemVerilog快速實現一個加法樹

    電路描述的差異考慮下下面兩電路的差異:sum=data_0+data_1+data_2+data_3其綜合電路為:sum=(data_0+data_1)+(data_2+data_3)其綜合
    發表于 08-01 14:29

    SystemVerilog 3.1a語言參考手冊

    本參考手冊詳細描述Accellera為使用Verilog硬件描述語言在更高的抽象層次上進行系統的建模和驗證所作的擴展。這些擴展將Verilog
    發表于 07-22 12:14 ?188次下載

    基于Verilog的順序狀態邏輯FSM的設計與仿真

    基于Verilog的順序狀態邏輯FSM的設計與仿真  硬件描述語言Verilog為數字系統設計人員提供
    發表于 02-04 09:32 ?2000次閱讀
    基于<b class='flag-5'>Verilog</b>的順序<b class='flag-5'>狀態</b>邏輯FSM的設計與仿真

    SystemC 和SystemVerilog的比較

    就 SystemC 和 SystemVerilog 這兩語言而言, SystemC 是C++在硬件支持方面的擴展,而 SystemVerilog 則繼承
    發表于 08-16 10:52 ?5498次閱讀

    Verilog HDL代碼描述狀態機綜合的研究

    有許多可綜合狀態機的Verilog代碼描述風格,不同代碼描述風格經綜合后得到電路的物理實現在速度和面積上有很大差別。優秀的代碼描述應當易于修
    發表于 12-24 00:52 ?30次下載
    <b class='flag-5'>Verilog</b> HDL代碼<b class='flag-5'>描述</b>對<b class='flag-5'>狀態</b>機綜合的研究

    基于Verilog硬件描述語言的IEEE標準硬件描述語言資料合集免費下載

    本文檔的主要內容詳細介紹的是基于Verilog硬件描述語言的IEEE標準硬件描述語言資料合集免費下載:1995、2001、2005;SystemVerilog標準:2005、2009
    發表于 06-18 08:00 ?11次下載

    System Verilogverilog的對比

    SystemVerilog語言簡介 SystemVerilog是一硬件描述和驗證語言(HDVL),它基于IEEE1364-2001 Verilog
    的頭像 發表于 09-28 17:12 ?3958次閱讀

    SystemVerilog語言介紹匯總

    作者:limanjihe ?https://blog.csdn.net/limanjihe/article/details/83005713 SystemVerilog是一硬件描述和驗證語言
    的頭像 發表于 10-11 10:35 ?2613次閱讀

    System Verilogverilog的概念有何不同

    SystemVerilog是一 硬件描述和驗證語言 (HDVL),它 基于IEEE1364-2001 Verilog硬件描述語言(HDL)
    的頭像 發表于 10-19 10:58 ?4741次閱讀

    使用Verilog/SystemVerilog硬件描述語言練習數字硬件設計

    HDLBits 是一組小型電路設計習題集,使用 Verilog/SystemVerilog 硬件描述語言 (HDL) 練習數字硬件設計~
    的頭像 發表于 08-31 09:06 ?1988次閱讀

    FPGA學習-SystemVerilog語言簡介

    SystemVerilog是一硬件描述和驗證語言(HDVL),它基于IEEE1364-2001 Verilog硬件描述語言(HDL),并對
    的頭像 發表于 12-08 10:35 ?2521次閱讀

    Verilog PLI到SystemVerilog DPI的演變過程

    寫過Verilogsystemverilog的人肯定都用過系統自定義的函數$display,這是預定好的,可以直接調用的功能。
    的頭像 發表于 05-16 09:27 ?1199次閱讀
    從<b class='flag-5'>Verilog</b> PLI到<b class='flag-5'>SystemVerilog</b> DPI的演變過程

    verilog/systemverilog中隱藏的初始化說明

    VerilogSystemVerilog中經常需要在使用變量或者線網之前,期望變量和線網有對應的初始值
    的頭像 發表于 08-25 09:47 ?1417次閱讀
    <b class='flag-5'>verilog</b>/<b class='flag-5'>systemverilog</b>中隱藏的初始化說明

    SystemVerilog相比于Verilog的優勢

    我們再從對可綜合代碼的支持角度看看SystemVerilog相比于Verilog的優勢。針對硬件設計,SystemVerilog引入了三進程always_ff,always_comb
    的頭像 發表于 10-26 10:05 ?1475次閱讀
    <b class='flag-5'>SystemVerilog</b>相比于<b class='flag-5'>Verilog</b>的優勢