91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

3天內(nèi)不再提示

比較Verilog中Wire和Reg的不同之處

汽車玩家 ? 來源:CSDN ? 作者:MangoWen ? 2020-03-08 17:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

wire 和reg是Verilog程序里的常見的兩種變量類型,他們都是構(gòu)成verilog程序邏輯最基本的元素。正確掌握兩者的使用方法是寫好verilog程序的前提。但同時,因為他們在大多數(shù)編程語言中不存在,很多新接觸verilog語言的人并不能很清楚的區(qū)別兩種變量的不同之處。這里簡單對他們做一個比較,方便在編程時區(qū)別使用。

功能和狀態(tài)

Wire主要起信號間連接作用,用以構(gòu)成信號的傳遞或者形成組合邏輯。因為沒有時序限定,wire的賦值語句通常和其他block語句并行執(zhí)行。

Wire不保存狀態(tài),它的值可以隨時改變,不受時鐘信號限制。

除了可以在module內(nèi)聲明,所有module的input 和output默認都是wire型的。

Reg是寄存器的抽象表達,作用類似通常編程語言中的變量,可以儲存數(shù)值,作為參與表達式的運算,通常負責時序邏輯,以串行方式執(zhí)行。

Reg可以保存輸出狀態(tài)。狀態(tài)改變通常在下一個時鐘信號邊沿翻轉(zhuǎn)時進行。

賦值方式

Wire有兩種賦值方式

1.在定義變量時賦初值,方式是用=。如果之后沒有再做賦值,初值會一直保留,(是否可以給邏輯?)

wire wire_a = 1’b0;

2.用assign語句賦值,等式右邊可以是wire,reg,一個常量或者是邏輯運算

Wire wire_a;
Wire wire_b;
Wire wire_c;
Reg reg_a;
assign wire_b = wire_a;
assign wire_c =reg_a;
assign wire_d =wire_b & wire_c;

如果不賦值,wire的默認狀態(tài)是高阻態(tài),即z。

對reg的使用通常需要有觸發(fā)條件,在always的block下進行。觸發(fā)條件可以是時鐘信號上升沿。賦值語句可以是=或者

Wire wire_a;
Wire wire_b;
Reg reg_a;
Reg reg_b;
Always @( posedge clk)
Begin
Reg_b =reg_a;
Reg_c = wire_a | wire_b;
end

Reg在聲明時候不賦初值。未賦值的reg變量處于不定態(tài),即x。

使用方式

在引用一個module時,輸入端口可以是wire型,也可以reg型。這里可以把對input的賦值看作一個assign語句,使用的變量相當于等號右邊的變量,所以兩者都可以。

而對于輸出端口,必須使用reg型,而不能是wire型。同樣用assign的角度考慮,module的輸出在等號右邊,而使用的變量成了等號左邊,assign語句等號左邊只能是wire型。

位寬

這是個使用注意事項。所有的wire和reg在聲明時如果不做特殊聲明,只有1位。這個對于熟悉其他編程語言的人是一個容易犯錯的地方。

執(zhí)行

wire wire_a = 4’he;

語句最后得到的wire_a是0x1,而不是0xe。因為wire_a只取了0xe的最低位的值而省略掉了其他值。所以正確的語句應(yīng)該是

wire[3:0] wire_a = 4’he;

這樣wire_a輸出的結(jié)果才是一個0xe。

小結(jié)

這篇文章從功能,變量狀態(tài),賦值方式,使用方式等角度討論了wire和reg變量類型的區(qū)別。并且給出了一個在verilog中常見的使用錯誤及解決方法。

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

    關(guān)注

    31

    文章

    5609

    瀏覽量

    130018
  • Verilog
    +關(guān)注

    關(guān)注

    30

    文章

    1374

    瀏覽量

    114541
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    太陽能光伏系統(tǒng)硬接地故障與間歇性接地故障的不同之處

    太陽能光伏系統(tǒng)的接地故障可分為持續(xù)性故障或間歇性故障。這篇小文介紹了上述兩種故障的不同之處。
    的頭像 發(fā)表于 01-15 15:06 ?498次閱讀
    太陽能光伏系統(tǒng)<b class='flag-5'>中</b>硬接地故障與間歇性接地故障的<b class='flag-5'>不同之處</b>

    分享1-Wire接口數(shù)字溫度傳感器IC型號

    英尚微電子通過研究設(shè)計,開發(fā)出一種適用于溫度測量的簡潔高效的嵌入式測溫方案。方案采用1-Wire接口的數(shù)字溫度傳感器,以其簡潔高效的特性,成為眾多嵌入式測溫方案的優(yōu)選。其中,應(yīng)用于方案的1-Wire接口數(shù)字溫度傳感器IC典型的
    的頭像 發(fā)表于 12-02 16:34 ?816次閱讀
    分享1-<b class='flag-5'>Wire</b>接口數(shù)字溫度傳感器IC型號

    半導體封裝“焊線鍵合(Wire Bonding)”線弧相關(guān)培訓的詳解;

    如有雷同或是不當之處,還請大家海涵。當前在各網(wǎng)絡(luò)平臺上均以此昵稱為ID跟大家一起交流學習! 半導體引線鍵合(Wire Bonding)是應(yīng)用最廣泛的鍵合技術(shù),也是半導體封裝工藝的一個重要環(huán)節(jié),主要利用金、鋁、銅、錫等金屬導線建
    的頭像 發(fā)表于 12-01 17:44 ?2351次閱讀
    半導體封裝“焊線鍵合(<b class='flag-5'>Wire</b> Bonding)”線弧相關(guān)培訓的詳解;

    verilog testbench運行測試用例時,運行到make run_test出錯怎么解決?

    按照胡老師書上的在verilog testbench運行測試用例時,在運行到make run_test步驟時出錯,查了很多方案沒有解決。
    發(fā)表于 11-11 06:52

    實時時鐘芯片與晶振的不同之處

    實時時鐘芯片和晶振在電子設(shè)備中都扮演著提供時鐘信號的重要角色,但它們的本質(zhì)、功能和復雜程度卻大相徑庭。簡單來說,晶振是產(chǎn)生穩(wěn)定頻率的“心臟”,而實時時鐘芯片則是管理和分配這些“心跳”的“大腦”。
    的頭像 發(fā)表于 07-24 17:04 ?1707次閱讀
    實時時鐘芯片與晶振的<b class='flag-5'>不同之處</b>

    三坐標和激光跟蹤儀的不同之處

    激光跟蹤儀和三坐標測量機(CMM)是工業(yè)領(lǐng)域兩大高精度測量設(shè)備,但它們在原理、適用范圍和典型場景上存在顯著差異。下面從核心區(qū)別與應(yīng)用領(lǐng)域兩方面進行系統(tǒng)分析:一、核心區(qū)別對比1.測量原理與工作方式激光跟蹤儀基于球坐標系,通過激光束追蹤目標反射鏡(靶球),實時測量距離與角度,動態(tài)捕捉目標點坐標。支持無靶標掃描(如LeicaATS600)。特點:非接觸或輕接觸、動
    的頭像 發(fā)表于 07-21 15:07 ?1387次閱讀
    三坐標和激光跟蹤儀的<b class='flag-5'>不同之處</b>

    如果在WL_REG_ON/BT_REG_ON為低時輸入PCIe REFCLK,會有什么問題嗎?

    如果在WL_REG_ON/BT_REG_ON為低時輸入PCIe REFCLK,會有什么問題嗎? 我想知道當 VBAT/VDDIO 處于開啟狀態(tài)且 WL_REG_ON/BT_REG_ON
    發(fā)表于 07-17 07:34

    尾纖和光纖具體有什么不同之處

    尾纖和光纖在通信領(lǐng)域中都是重要的傳輸介質(zhì),但它們在結(jié)構(gòu)、功能、應(yīng)用場景等方面存在明顯區(qū)別,以下是詳細對比: 一、定義與結(jié)構(gòu) 光纖 定義:光纖是一種由玻璃或塑料制成的細長柔性纖維,用于傳輸光信號。 結(jié)構(gòu):通常由纖芯(光信號傳輸?shù)暮诵牟糠?、包層(反射光信號,防止泄漏)和涂覆層(保護纖芯和包層)組成。 特點:光纖是光信號傳輸?shù)耐暾橘|(zhì),通常以長距離傳輸為主,長度可達數(shù)公里甚至更長。 尾纖 定義:尾纖是一種短距離的光纖連接
    的頭像 發(fā)表于 07-01 10:28 ?2281次閱讀
    尾纖和光纖具體有什么<b class='flag-5'>不同之處</b>呢

    DS2465 DeepCover安全認證器具有SHA-256協(xié)處理器和1-Wire主機功能技術(shù)手冊

    ,芯片內(nèi)部用戶可調(diào)定時器將系統(tǒng)主處理器從繁瑣的1-Wire波形時序控制解放出來,支持標準和高速1-Wire通信。1-Wire總線可通過軟件控制關(guān)斷。強上拉功能通過1-
    的頭像 發(fā)表于 05-14 14:09 ?1087次閱讀
    DS2465 DeepCover安全認證器具有SHA-256協(xié)處理器和1-<b class='flag-5'>Wire</b>主機功能技術(shù)手冊

    DS24L65 DeepCover安全認證器,具有SHA-256協(xié)處理器和1-Wire主機功能技術(shù)手冊

    轉(zhuǎn)換。對于1-Wire線驅(qū)動器,芯片內(nèi)部用戶可調(diào)定時器將系統(tǒng)主處理器從繁瑣的1-Wire波形時序控制解放出來,支持標準和高速1-Wire通信。1-
    的頭像 發(fā)表于 05-14 11:25 ?971次閱讀
    DS24L65 DeepCover安全認證器,具有SHA-256協(xié)處理器和1-<b class='flag-5'>Wire</b>主機功能技術(shù)手冊

    DS28E16 1-Wire SHA-3安全認證器技術(shù)手冊

    計數(shù)器和唯一的64位ROM識別碼(ROM ID)。唯一的ROM ID用作加密運算的基本輸入?yún)?shù),也作為應(yīng)用的電子序列號。器件通過單觸點1-Wire?總線通信。通信采用1-Wire協(xié)議,ROM ID作為多器件1-
    的頭像 發(fā)表于 05-13 15:18 ?1101次閱讀
    DS28E16 1-<b class='flag-5'>Wire</b> SHA-3安全認證器技術(shù)手冊

    verilog模塊的調(diào)用、任務(wù)和函數(shù)

    在做模塊劃分時,通常會出現(xiàn)這種情形,某個大的模塊包含了一個或多個功能子模塊,verilog是通過模塊調(diào)用或稱為模塊實例化的方式來實現(xiàn)這些子模塊與高層模塊的連接的.
    的頭像 發(fā)表于 05-03 10:29 ?1579次閱讀
    <b class='flag-5'>verilog</b>模塊的調(diào)用、任務(wù)和函數(shù)

    開關(guān)電源反激和正激的區(qū)分

    極或者負極)和流入電流方向相反。 這個是電感的特性。圖中的一個藍色的比較粗的豎 1 是磁芯的簡化圖。 2、耦合特性:先看圖片 2 看看能不能分辨出圖 A 和圖 B 有何不同之處。 文件過大,需要完整版資料可下載附件查看哦!
    發(fā)表于 04-03 13:49

    FPGA Verilog HDL語法之編譯預處理

    Verilog HDL語言和C語言一樣也提供了編譯預處理的功能?!熬幾g預處理”是Verilog HDL編譯系統(tǒng)的一個組成部分。Verilog HDL語言允許在程序中使用幾種特殊的命令(它們不是一般
    的頭像 發(fā)表于 03-27 13:30 ?1454次閱讀
    FPGA <b class='flag-5'>Verilog</b> HDL語法之編譯預處理

    一文詳解Verilog HDL

    Verilog HDL(Hardware Description Language)是一種硬件描述語言,用于從算法級、門級到開關(guān)級的多種抽象設(shè)計層次的數(shù)字系統(tǒng)建?!,F(xiàn)實生活多用于專用集成電路
    的頭像 發(fā)表于 03-17 15:17 ?4317次閱讀
    一文詳解<b class='flag-5'>Verilog</b> HDL