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

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

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

看看兩個使用Verilog HDL設(shè)計的簡單電路

冬至子 ? 來源:電子技術(shù)實驗XJTU ? 作者:孫敏 ? 2023-09-17 15:03 ? 次閱讀

舉例:與非門

與非門的Verilog 描述如下圖所示,源程序文件的后綴為.v。

圖片

Verilog語言的基本描述單元是模塊,也就是module??梢钥吹矫恳粋€功能模塊都是以module開始,endmodule結(jié)束的。一個.v文件可以同時包含多個這樣的模塊。但是,我們建議大家一個.v文件只包含一個模塊,這樣便于程序的管理、調(diào)試以及復(fù)用。

在模塊聲明中還包含這個模塊的名稱,以及端口列表,模塊就是通過這些端口與其他功能模塊進行通信的。我們可以將模塊看作一個具有特定功能的電路或集成芯片,端口就相當(dāng)于這個電路的引腳。

這個與非門模塊包含了abc三個端口,那么這些端口哪些是輸入,哪些是輸出呢,我們需要對其進行聲明。并且還要聲明這些端口的類型,最常用的就是wire和reg兩種類型,其中wire是默認類型,可以省略。后續(xù)我們會詳細講解,這里不多做介紹。接下來就是模塊的主體部分“邏輯功能描述”,這里使用的是組合邏輯常用assign連續(xù)賦值語句。

舉例:D觸發(fā)器

再來看一個簡單的上升沿d觸發(fā)器的例子,如下圖所示。

圖片

D觸發(fā)器是時序電路的基本組成單元??梢钥吹侥K聲明和剛才的格式略有不同(兩種格式均可),但整個模塊仍然是以module開始,endmodule結(jié)束的。module后面是模塊名,這里模塊名后面的括號中將端口聲明和端口類型聲明放在了一起,這是vivado自動生成的格式。

這里的clk和d_i是輸入信號,沒有指明類型,則默認為wire型。q_o是一個reg類型的輸出端口。接下來就是邏輯功能描述,這里采用了時序邏輯主要使用的always語句。

兩種端口聲明格式

下面是與非門模塊的兩種描述格式。

圖片

圖片

總結(jié)

  1. 一個Verilog HDL模塊是以module開始,endmodule結(jié)束的。
  2. module后面是模塊名,是所設(shè)計電路的標(biāo)識符。
  3. 模塊名后面的括號中是模塊的端口名,使用逗號隔開,最后一個端口后面沒有標(biāo)點符號。
  4. 端口及其類型聲明:端口還需要定義是輸入還是輸出,以及端口信號的類型是wire型還是reg型,這些都可以放在端口名后面的括號中一起聲明。此外,在模塊中所使用的一些內(nèi)部信號和數(shù)據(jù)對象也要進行數(shù)據(jù)類型聲明。

一般使用assign賦值的信號聲明為wire型,在always或initial語句中賦值的信號聲明為reg型。還可以使用參數(shù)來定義常量,增加程序的可讀性。Verilog的數(shù)據(jù)類型有很多,但80%的情況只用到這三種。

  1. 模塊的主體用于描述模塊的邏輯功能。常用的有:① assign連續(xù)賦值語句,多用于描述組合電路。② always語句可以描述時序邏輯也可以描述組合邏輯。③ 還可以通過實例化已有的模塊的方式來建立新的模塊,像搭積木一樣快速搭建一個系統(tǒng)。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • D觸發(fā)器
    +關(guān)注

    關(guān)注

    3

    文章

    164

    瀏覽量

    48175
  • 時序邏輯電路
    +關(guān)注

    關(guān)注

    2

    文章

    94

    瀏覽量

    16634
  • Module
    +關(guān)注

    關(guān)注

    0

    文章

    70

    瀏覽量

    12994
  • CLK
    CLK
    +關(guān)注

    關(guān)注

    0

    文章

    127

    瀏覽量

    17295
  • Verilog語言
    +關(guān)注

    關(guān)注

    0

    文章

    113

    瀏覽量

    8341
收藏 人收藏

    評論

    相關(guān)推薦

    Verilog HDL語言是什么

    的工業(yè)標(biāo)準(zhǔn)來統(tǒng)一對數(shù)字邏輯電路及系統(tǒng)的描述,這樣就能把系統(tǒng)設(shè)計工作分解為邏輯設(shè)計(前端)和電路實現(xiàn)(后端)兩個互相獨立而又相關(guān)的部分。由于邏輯設(shè)計的相對獨立性就可以把專家們設(shè)計的各種常用數(shù)字邏輯
    發(fā)表于 11-08 09:30

    Verilog-HDL實踐與應(yīng)用系統(tǒng)設(shè)計

    Verilog-HDL實踐與應(yīng)用系統(tǒng)設(shè)計本書從實用的角度介紹了硬件描述語言Verilog-HDL。通過動手實踐,體驗Verilog-HDL的語法結(jié)構(gòu)、功能等內(nèi)涵。在前五章,以簡單的實例
    發(fā)表于 11-14 22:57 ?147次下載
    <b class='flag-5'>Verilog-HDL</b>實踐與應(yīng)用系統(tǒng)設(shè)計

    Verilog HDL程序基本結(jié)構(gòu)與程序入門

    Verilog HDL程序基本結(jié)構(gòu)與程序入門 Verilog HDL程序基本結(jié)構(gòu)  Verilog
    發(fā)表于 02-08 11:43 ?2351次閱讀

    Verilog HDL語言實現(xiàn)時序邏輯電路

    Verilog HDL語言實現(xiàn)時序邏輯電路Verilog HDL語言中,時序邏輯電路使用a
    發(fā)表于 02-08 11:46 ?4769次閱讀

    Verilog HDL電路設(shè)計指導(dǎo)書—華為

    Verilog HDL電路設(shè)計指導(dǎo)書共包括典型電路和常用電路兩個章節(jié)。如果是初學(xué)者建議從常用
    發(fā)表于 09-07 16:20 ?0次下載
    <b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b><b class='flag-5'>電路</b>設(shè)計指導(dǎo)書—華為

    Verilog_HDL教程

    Verilog_HDL教程,又需要的朋友下來看看
    發(fā)表于 05-11 17:30 ?0次下載

    Verilog+HDL實用教程-電科

    Verilog+HDL實用教程-電科,下來看看。
    發(fā)表于 05-11 17:30 ?34次下載

    Verilog HDL入門教程

    本文主要介紹了Verilog HDL 語言的一些基本知識,目的是使初學(xué)者能夠迅速掌握HDL設(shè)計方法,初步了解并掌握Verilog HDL語言
    發(fā)表于 07-15 15:27 ?0次下載

    Verilog HDL入門教程之Verilog HDL數(shù)字系統(tǒng)設(shè)計教程

    本文檔的主要內(nèi)容詳細介紹的是Verilog HDL入門教程之Verilog HDL數(shù)字系統(tǒng)設(shè)計教程。
    發(fā)表于 09-20 15:51 ?83次下載
    <b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b>入門教程之<b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b>數(shù)字系統(tǒng)設(shè)計教程

    Verilog HDL入門教程

    本文主要介紹了Verilog HDL 語言的一些基本知識,目的是使初學(xué)者能夠迅速掌握HDL 設(shè)計方法,初步了解并掌握Verilog HDL
    發(fā)表于 02-11 08:00 ?99次下載
    <b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b>入門教程

    如何使用Verilog HDL描述可綜合電路?

    1、如何使用Verilog HDL描述可綜合電路 Verilog 有什么奇技淫巧?我想最重要的是理解其硬件特性。Verilog
    的頭像 發(fā)表于 04-04 11:19 ?4317次閱讀
    如何使用<b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b>描述可綜合<b class='flag-5'>電路</b>?

    Verilog HDL的禮物-Verilog HDL掃盲文下載

    很多進入FPGA世界不久得朋友,第一要學(xué)習(xí)當(dāng)然是HDL語言,在網(wǎng)上流行的有Verilog和VDL這兩個HDL語言。如果讀者是 VDL
    發(fā)表于 04-30 09:24 ?28次下載

    Verilog HDL基礎(chǔ)語法入門

    簡單介紹Verilog HDL語言和仿真工具。
    發(fā)表于 05-06 16:17 ?618次下載

    Verilog HDL verilog hdl和vhdl的區(qū)別

    Verilog HDL是一種以文本形式描述數(shù)字系統(tǒng)硬件的結(jié)構(gòu)和行為的硬件描述語言,也可描述邏輯電路圖、邏輯表達式等。Verilog HDL
    的頭像 發(fā)表于 07-23 14:36 ?1.1w次閱讀

    Verilog HDL入門教程-Verilog HDL的基本語法

    Verilog HDL入門教程-Verilog HDL的基本語法
    發(fā)表于 01-07 09:23 ?179次下載