99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

FPGA入門之信號類型

jf_78858299 ? 來源:CSDN ? 作者:原來如此呀 ? 2023-03-21 10:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

第4節(jié) 信號類型

Verilog HDL 的信號類型有很多種,主要包括兩種數(shù)據(jù)類型:線網(wǎng)類型(net type) 和寄存器類型( reg type)。在進(jìn)行工程設(shè)計的過程中也只會使用到這兩個類型的信號。

4.1 信號位寬

定義信號類型的同時,必須定義好信號的位寬。默認(rèn)信號的位寬是 1 位,當(dāng)信號的位寬為 1 時可不表述,如定義位寬為 1 的 wire 型信號 a 可直接用“ wire a;”來表示。 但信號的位寬大于 1 位時就一定要表示出來,如用“ wire [7:0]”來表示該 wire 型信號的位寬為 8 位(位寬數(shù)從0開始計)。

信號的位寬取決于要該信號要表示的最大值。該信號能表示的無符號數(shù)最大值是: 2n-1,其中n表示該信號的位寬。例如,信號 a 的最大值為 1000,那么信號 a 的位寬必須大于或等于 10 位。

下面分享一個位寬計算技巧:打開電腦的“計算器” 后選用程序員模式,在在 10 進(jìn)制下輸入信號值,如 1000,隨后可以查看信號位寬。

4.2 線網(wǎng)類型 wire

線網(wǎng)類型用于對結(jié)構(gòu)化器件之間的物理連線的建模, 如器件的管腳,芯片內(nèi)部器件如與門的輸出等。由于線網(wǎng)類型代表的是物理連接線,因此其不存儲邏輯值,必須由器件驅(qū)動。通常用 assign 進(jìn)行賦值, 如 assign A = B ^ C。

wire 類型定義語法如下:

wire [msb: lsb] wire1, wire2, . . .,wireN;

msb 和 lsb 定義了范圍,表示了位寬。例如[7:0]是 8 位位寬,也就是可以表示成 8’b0 至 8’b1111_1111;

msb 和 lsb 必須為常數(shù)值;

如果沒有定義范圍,缺省值為 1 位;

沒有定義信號數(shù)據(jù)類型時,缺省為 wire 類型。

注意數(shù)組類型按照降序方式,如[7: 0] , 不要寫成[0:7]。

下面對上述情況進(jìn)行舉例說明:

wire [3:0] Sat; // Sat 為 4 位線型信號

wire Cnt; //1 位線型信號

wire [31:0] Kisp, Pisp, Lisp ;// Kisp, Pisp, Lisp 都是 32 位的線型信號。

4.3 寄存器類型 reg

reg 是最常用的寄存器類型,寄存器類型通常用于對存儲單元的描述,如 D 型觸發(fā)器、 ROM等。寄存器類型信號的特點是在某種觸發(fā)機(jī)制下分配了一個值,在下一觸發(fā)機(jī)制到來之前保留原值。但必須注意的是: reg 類型的變量不一定是存儲單元,如在 always 語句中進(jìn)行描述的必須是用 reg類型的變量。

reg 類型定義語法如下:

reg [msb: lsb] reg1, reg2, . . . reg N;

msb 和 lsb 定義了范圍,表示了位寬。例如[7:0]是 8 位位寬,也就是可以表示成 8’b0 至 8’b1111_1111;

msb 和 lsb 必須為常數(shù)值;

如果沒有定義范圍,缺省值為 1 位;

沒有定義信號數(shù)據(jù)類型時,缺省為 wire 類型,不是 reg 型。

對數(shù)組類型按照降序方式,如[7: 0] ;不要寫成[0:7]。

例如:

reg [3:0] Sat; // Sat 為 4 位寄存器型信號。

reg Cnt; //1 位寄存器。

reg [31:0] Kisp, Pisp, Lisp ; // Kisp, Pisp, Lisp 都是 32 位的寄存器型信號。

4.4 wire 和 reg 的區(qū)別

reg 型信號并不一定生成寄存器。 針對什么時候使用 wire 類型,什么時候用 reg 類型這一問題,本書總結(jié)出一套解決方法:在 本模塊中使用 always 設(shè)計的信號都定義為 reg 型, 其他信號都定義為 wire 型 。

1679366242(1).png

上述代碼中, cnt1 是用 always 設(shè)計的,所以定義為 reg 型。 add_cnt1 和 end_cnt 不是由 always 產(chǎn)生的,所以定義為 wire 型。

1679366297(1).png

上述代碼中,信號 x 是用 always 設(shè)計的,所以要定義為 reg 型。注意: 實際的電路中信號 x 不是寄存器類型,但仍然定義為 reg 型。

1679366311(1).png

以上是例化的代碼,其中 df 是例化模塊的輸出。由于 df 不是由 always 產(chǎn)生的,而是例化產(chǎn)生的, 因此要定義成 wire 型。

————————————————

版權(quán)聲明:本文為CSDN博主「原來如此呀」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。

原文鏈接:https://blog.csdn.net/Royalic/article/details/121151985

聲明:本文內(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

    文章

    5433

    瀏覽量

    124413
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7255

    瀏覽量

    91814
  • Verilog
    +關(guān)注

    關(guān)注

    29

    文章

    1367

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    FPGA入門FPGA設(shè)計者入門必備!

    電子發(fā)燒友網(wǎng): 在我看來,想要成為一名合格的 FPGA 設(shè)計者,需要掌握很多知識和技巧。本文就針對FPGA設(shè)計入門者需要掌握的基本功及設(shè)計原則展開分析,希望對大家有幫助。 一.5大
    發(fā)表于 06-26 15:26 ?1.4w次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>入門</b>:<b class='flag-5'>FPGA</b>設(shè)計者<b class='flag-5'>入門</b>必備!

    FPGA入門資料

    本帖最后由 eehome 于 2013-1-5 09:55 編輯 哪位大俠有FPGA入門級的資料,跪求?。?!關(guān)于FPGA可以實現(xiàn)哪些功能,進(jìn)行哪些方面的功能擴(kuò)展,比如內(nèi)嵌硬核、
    發(fā)表于 07-22 08:45

    Xilinx FPGA無痛入門,海量教程免費下載

    用notepad++的關(guān)聯(lián)設(shè)置Lesson07 特權(quán)Xilinx FPGA SF-SP6入門指南 -- ISE與Modelsim聯(lián)合仿真庫編譯Lesson08 特權(quán)Xilinx FPGA
    發(fā)表于 07-22 11:49

    Xilinx FPGA入門連載50:FPGA片內(nèi)RAM實例chipscope在線調(diào)試

    Xilinx FPGA入門連載50:FPGA片內(nèi)RAM實例chipscope在線調(diào)試特權(quán)同學(xué),版權(quán)所有配套例程和更多資料下載鏈接:http://pan.baidu.com/s/1jG
    發(fā)表于 01-27 13:10

    Xilinx FPGA入門連載52:FPGA片內(nèi)FIFO實例FIFO配置

    Xilinx FPGA入門連載52:FPGA片內(nèi)FIFO實例FIFO配置特權(quán)同學(xué),版權(quán)所有配套例程和更多資料下載鏈接:http://pan.baidu.com/s/1jGjAhEm1
    發(fā)表于 02-29 13:35

    Xilinx FPGA入門連載52:FPGA片內(nèi)FIFO實例FIFO配置

    Xilinx FPGA入門連載52:FPGA片內(nèi)FIFO實例FIFO配置特權(quán)同學(xué),版權(quán)所有配套例程和更多資料下載鏈接:http://pan.baidu.com/s/1jGjAhEm1
    發(fā)表于 02-29 13:35

    Xilinx FPGA入門連載54:FPGA 片內(nèi)FIFO實例chipscope在線調(diào)試

    `Xilinx FPGA入門連載54:FPGA 片內(nèi)FIFO實例chipscope在線調(diào)試特權(quán)同學(xué),版權(quán)所有配套例程和更多資料下載鏈接:http://pan.baidu.com/s
    發(fā)表于 03-04 13:13

    Xilinx FPGA入門連載58:FPGA 片內(nèi)異步FIFO實例chipscope在線調(diào)試

    `Xilinx FPGA入門連載58:FPGA 片內(nèi)異步FIFO實例chipscope在線調(diào)試特權(quán)同學(xué),版權(quán)所有配套例程和更多資料下載鏈接:http://pan.baidu.com/
    發(fā)表于 03-16 12:13

    Xilinx FPGA入門PLL實例的基本配置

    Xilinx FPGA入門連載24:PLL實例基本配置 1 工程移植可以復(fù)制上一個實例sp6ex7的整個工程文件夾,更名為sp6ex8。然后在ISE中打開這個新的工程。 2 新建IP核文件
    發(fā)表于 01-21 21:33

    FPGA入門ModelSim的安裝步驟

    FPGA入門:ModelSim的安裝本文節(jié)選自特權(quán)同學(xué)的圖書《FPGA/CPLD邊練邊學(xué)——快速入門Verilog/VHDL》書中代碼請訪問網(wǎng)盤:http://pan.baidu.co
    發(fā)表于 01-22 06:35

    FPGA入門試驗精品

    FPGA入門試驗精品,有需要的下來看看啊
    發(fā)表于 05-10 11:24 ?27次下載

    FPGA入門技術(shù)教程

    FPGA入門技術(shù)教程,適合新手剛入門的時候看
    發(fā)表于 01-24 16:29 ?49次下載

    KEIL-MDK和STM32的數(shù)據(jù)類型-入門篇pdf資料下載

    數(shù)據(jù)類型-入門
    發(fā)表于 04-14 10:50 ?7次下載
    KEIL-MDK和STM32的數(shù)據(jù)<b class='flag-5'>類型</b>-<b class='flag-5'>之</b><b class='flag-5'>入門</b>篇pdf資料下載

    FPGA入門什么是FPGA

    FPGA 的全稱為 Field-Programmable Gate Array ,即現(xiàn)場可編程門陣列。FPGA 是在 PAL、 GAL、 CPLD 等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物, 是作為
    的頭像 發(fā)表于 03-21 10:21 ?1832次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>入門</b><b class='flag-5'>之</b>什么是<b class='flag-5'>FPGA</b>

    FPGA編程語言的入門教程

    FPGA(現(xiàn)場可編程邏輯門陣列)的編程涉及特定的硬件描述語言(HDL),其中Verilog和VHDL是最常用的兩種。以下是一個FPGA編程語言(以Verilog為例)的入門教程: 一、Verilog
    的頭像 發(fā)表于 10-25 09:21 ?1210次閱讀