91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(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ù)值,作為參與表達式的運算,通常負責(zé)時序邏輯,以串行方式執(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)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5434

    瀏覽量

    124443
  • Verilog
    +關(guān)注

    關(guān)注

    29

    文章

    1367

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    使用STM32F103控制兩步進電機同時進行不同的運動(軟件指令驅(qū)動),與控制一個電機的不同之處在哪里?

    使用STM32F103控制兩步進電機同時進行不同的運動(軟件指令驅(qū)動),與控制一個電機的不同之處在于哪里?
    發(fā)表于 03-10 08:22

    Verilogsigned和$signed()的用法

    嗎?其實不是的,因為有符號數(shù)和無符號數(shù)據(jù)的加法強結(jié)果和乘法器結(jié)構(gòu)是一樣的,signed的真正作用是決定如何對操作數(shù)擴位的問題。 2、verilog的加法和乘法操作前,會先對操作數(shù)據(jù)擴位成結(jié)果相同的位寬,然后進行加法或者乘法處理。比如a/b都為4位數(shù)據(jù),c為5位數(shù)據(jù),c
    的頭像 發(fā)表于 02-17 17:47 ?657次閱讀
    <b class='flag-5'>Verilog</b><b class='flag-5'>中</b>signed和$signed()的用法

    Verilog 電路仿真常見問題 Verilog 在芯片設(shè)計的應(yīng)用

    。然而,在實際應(yīng)用,設(shè)計師可能會遇到各種問題,這些問題可能會影響仿真的準確性和設(shè)計的可靠性。 Verilog電路仿真常見問題 仿真環(huán)境的搭建問題 仿真環(huán)境的搭建是進行Verilog仿真的第一步。設(shè)計師需要選擇合適的仿真工具,并
    的頭像 發(fā)表于 12-17 09:53 ?1193次閱讀

    Verilog 與 ASIC 設(shè)計的關(guān)系 Verilog 代碼優(yōu)化技巧

    Verilog與ASIC設(shè)計的關(guān)系 Verilog作為一種硬件描述語言(HDL),在ASIC設(shè)計扮演著至關(guān)重要的角色。ASIC(Application Specific Integrated
    的頭像 發(fā)表于 12-17 09:52 ?1037次閱讀

    Verilog 測試平臺設(shè)計方法 Verilog FPGA開發(fā)指南

    Verilog測試平臺設(shè)計方法是Verilog FPGA開發(fā)的重要環(huán)節(jié),它用于驗證Verilog設(shè)計的正確性和性能。以下是一個詳細的Verilog
    的頭像 發(fā)表于 12-17 09:50 ?1137次閱讀

    Verilog與VHDL的比較 Verilog HDL編程技巧

    Verilog 與 VHDL 比較 1. 語法和風(fēng)格 VerilogVerilog 的語法更接近于 C 語言,對于有 C 語言背景的工程師來說,學(xué)習(xí)曲線較平緩。它支持結(jié)構(gòu)化編程,代
    的頭像 發(fā)表于 12-17 09:44 ?1697次閱讀

    CCD傳感器與CMOS傳感器的相同之處不同之處

    ? ? ? ?本文介紹了CCD傳感器與CMOS傳感器的相同之處不同之處。 相對最早發(fā)展起來的模擬相機,數(shù)字相機也是一個很龐大的家族,早在20世紀70年代,相機里出現(xiàn)了以CMOS技術(shù)為核心的類型分支
    的頭像 發(fā)表于 11-24 10:39 ?3237次閱讀

    NXP MCX N23和MCX N94/54的不同之處

    繼2024年一月份發(fā)布了MCXN94/54系列之后,NXP又在6月份發(fā)布了N系列的第二款產(chǎn)品,MCX N23系列,下面小編就為大家揭開它的神秘面紗,來看看這款產(chǎn)品有何特點,了解一下它和N94/54又有什么不同之處呢!
    的頭像 發(fā)表于 11-01 12:35 ?1283次閱讀
    NXP MCX N23和MCX N94/54的<b class='flag-5'>不同之處</b>

    請問PCM2912AE2PJTR與PCM2912APJTR,兩個型號尾綴不同之處(E2)有何意義及差別?

    請問PCM2912AE2PJTR與PCM2912APJTR,兩個型號尾綴不同之處(E2)有何意義及差別?急需解答迷津,不勝感激
    發(fā)表于 10-28 08:10

    Verilog語法運算符的用法

    verilog語法中使用以下兩個運算符可以簡化我們的位選擇代碼。
    的頭像 發(fā)表于 10-25 15:17 ?2554次閱讀
    <b class='flag-5'>Verilog</b>語法<b class='flag-5'>中</b>運算符的用法

    FPGA編程語言的入門教程

    Verilog支持多種數(shù)據(jù)類型,包括線網(wǎng)類型(如wire)和寄存器類型(如reg)。線網(wǎng)類型通常用于組合邏輯,而寄存器類型則用于時
    的頭像 發(fā)表于 10-25 09:21 ?1225次閱讀

    FPGA Verilog HDL代碼如何debug?

    個數(shù)找最大值,現(xiàn)在有兩種實現(xiàn)方法,哪種比較好? 一種是4級比較器,用寄存器的,4個時鐘的到結(jié)果。一種是用wire,直接assign的,馬上就能得到結(jié)果,不過我在下一個時鐘等他穩(wěn)定了才取來用。 A:這兩種
    發(fā)表于 09-24 19:16

    FPGA算法工程師、邏輯工程師、原型驗證工程師有什么區(qū)別?

    。但在實際工作,這三個角色的工作可能會有一定的重疊和交叉。 交流問題(二) Q:Verilog 定義信號為什么要區(qū)分 wirereg
    發(fā)表于 09-23 18:26

    FPGA Verilog HDL有什么奇技巧?

    的話,仿真波形是z,雖然出結(jié)果時不影響,有沒有必要一開始的時候直接reg賦初值?在rtl文件里能不能使用initial賦初值,這樣的rtl代碼能否綜合? A:在 Verilog ,是否有必要為所有
    發(fā)表于 09-12 19:10

    SD-WAN在跨境網(wǎng)絡(luò)的獨特之處及未來發(fā)展趨勢

    與傳統(tǒng)網(wǎng)絡(luò)最大的不同之處在于其智能路由和流量優(yōu)化功能。在跨境網(wǎng)絡(luò)環(huán)境,SD-WAN可以根據(jù)網(wǎng)絡(luò)流量的特點和需求,智能地選擇最佳路徑,從而提高網(wǎng)絡(luò)性能和穩(wěn)定性。此外,SD-WAN還支持對不同類型的流量進行優(yōu)先級管理,確保關(guān)鍵業(yè)務(wù)數(shù)據(jù)的傳輸穩(wěn)定。 SD-
    的頭像 發(fā)表于 08-13 11:31 ?605次閱讀
    主站蜘蛛池模板: www资源| 国产高清视频在线免费观看 | 婷婷午夜天 | 操干干| 四虎影院观看视频在线观看 | 在线免费国产视频 | 美日韩中文字幕 | 久久婷婷激情 | 72种姿势欧美久久久久大黄蕉 | 午夜无遮挡怕怕怕免费视频 | 男女交性视频播放视频视频 | 拍拍拍无挡视频免费全程1000 | 亚洲小便 | 伊人久久大香线蕉电影院 | аbt天堂资源在线官网 | 亚洲成人看片 | 亚洲三级电影在线播放 | 亚洲成在人线影视天堂网 | 色色免费 | 一级特黄色毛片免费看 | 香淫 | 五月婷婷网址 | 天天爽夜夜爽视频 | 成人黄色在线网站 | 朱元璋传奇1998王耿豪版 | 日韩精品视频免费观看 | 轻点灬大ji巴太粗太长了爽文 | 免费抓胸吻胸激烈视频网站 | 色多多福利网站 | www在线播放 | 伦理一区二区三区 | 亚洲 另类 在线 欧美 制服 | 一区二区三区网站 | 久久黄色网 | 亚洲一区二区视频在线观看 | 欧美色图亚洲综合 | 国产五月婷婷 | 91久久福利国产成人精品 | 午夜福利国产一级毛片 | 色黄网站成年女人色毛片 | 国产三级国产精品国产普男人 |