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

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

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

二十進(jìn)制編碼器及Verilog HDL描述 Verilog HDL程序的基本結(jié)構(gòu)及特點(diǎn)

FPGA之家 ? 來源:頭條號電子工程師小李 ? 2023-08-28 09:54 ? 次閱讀

節(jié)通過硬件描述語言Verilog HDL對二十進(jìn)制編碼器的描述,介紹Verilog HDL程序的基本結(jié)構(gòu)及特點(diǎn)。

二十進(jìn)制編碼器及Verilog HDL描述

二十進(jìn)制編碼器是數(shù)字電路中常用的電路單元,它的輸入是代表0~9這10個(gè)輸入端的狀態(tài)信息。輸入信號為高電平時(shí),輸出相應(yīng)的BCD碼,因此也稱為10線4線編碼器。其功能表及電路符號如圖3-1所示。

ed0f3586-453a-11ee-a2ef-92fbcf53809c.jpg

圖3-1二十進(jìn)制編碼器

【例3-1】利用Verilog HDL對二十進(jìn)制編碼器進(jìn)行設(shè)計(jì)。

ed2b10bc-453a-11ee-a2ef-92fbcf53809c.jpg

Verilog HDL程序的基本構(gòu)成

從例3-1可以看出,一個(gè)完整的Verilog HDL程序由3個(gè)基本部分構(gòu)成,分別是:模塊端口定義部分、信號類型說明部分和邏輯功能描述語句部分。其結(jié)構(gòu)圖如3-2所示。

ed4dc9ea-453a-11ee-a2ef-92fbcf53809c.jpg

圖3-2Verilog HDL程序基本結(jié)構(gòu)

模塊端口定義部分

對于硬件描述語言來說,一個(gè)程序代表了一個(gè)具有某種邏輯功能的電路,模塊端口定義部分描述了該電路的接口部分的信息,即輸入輸出信號的信息。

模塊端口定義部分的語法結(jié)構(gòu)如下:

module模塊名(端口信號1,端口信號2,端口信號3,端口信號4,……);

input[width:0]端口信號1,端口信號3,……;

output[width:0]端口信號2,端口信號4,……;

程序以關(guān)鍵詞module引導(dǎo),模塊名是設(shè)計(jì)者對于設(shè)計(jì)的電路所取的名字,在模塊端口定義的第1行列出了所有進(jìn)出該電路模塊的端口信號,在第2行和第3行中定義了各端口信號流動方向。流動方向包括輸入(input)、輸出(output)和雙向(inout),[width:0]表示信號的位寬,如果位寬沒有特別說明,則系統(tǒng)默認(rèn)為1位寬度。

【例3-2】模塊端口定義舉例。

ed5ef968-453a-11ee-a2ef-92fbcf53809c.jpg

信號類型說明部分

在Verilog HDL語法中,信號共有兩種數(shù)據(jù)類型,分別為:網(wǎng)線類型(net型)和寄存器類型(register型)。在信號類型說明部分除了要對輸入/輸出端口的信號類型進(jìn)行說明之外,還要對程序中定義的中間量的數(shù)據(jù)類型進(jìn)行說明。

信號類型說明部分的語法結(jié)構(gòu)如下:

wire[width:0]信號1,信號2,……;

reg[width:0]信號3,信號4,……;

【例3-3】信號類型說明舉例。

ed7059d8-453a-11ee-a2ef-92fbcf53809c.jpg

ed82b1c8-453a-11ee-a2ef-92fbcf53809c.jpg

邏輯功能描述語句部分

邏輯功能描述語句部分對輸入/輸出信號之間的邏輯關(guān)系進(jìn)行了描述,是Verilog HDL程序設(shè)計(jì)中最主要的部分,在電路上相當(dāng)于器件的內(nèi)部電路結(jié)構(gòu)。在Verilog HDL語言中,常用的邏輯功能描述語句可以分為以下3種:

例化語句:調(diào)用已進(jìn)行元件化封裝的程序。這種語句常應(yīng)用于層次化設(shè)計(jì)的頂層文件設(shè)計(jì)中。

【例3-4】例化語句舉例。

ed954a0e-453a-11ee-a2ef-92fbcf53809c.jpg

該語句分別調(diào)用了一個(gè)非門和與門電路模塊。

連續(xù)賦值語句:描述信號之間簡單的賦值關(guān)系。在連續(xù)賦值語句中,右邊表達(dá)式使用的操作數(shù)無論何時(shí)發(fā)生變化,右邊表達(dá)式都重新計(jì)算。這類描述通常以關(guān)鍵詞assign引導(dǎo)。

【例3-5】連續(xù)賦值語句舉例。

eda3a8f6-453a-11ee-a2ef-92fbcf53809c.jpg

該語句描述了輸出信號與輸入信號的賦值關(guān)系。

過程語句:以關(guān)鍵詞always、initial等關(guān)鍵詞引導(dǎo)的語句,描述了一定條件下信號之間的賦值關(guān)系。這種變量數(shù)據(jù)被賦值后,其值保持不變,直到下一次條件具備時(shí)對它們重新賦值。

【例3-6】過程語句舉例。

edb3dda2-453a-11ee-a2ef-92fbcf53809c.jpg

與連續(xù)賦值語句一樣,always和initial也描述了輸出信號與輸入信號的賦值關(guān)系,但是這種賦值往往是一種比較復(fù)雜的條件賦值,例如,例3-6就用了if……else語句描述了輸出信號與輸入信號的條件關(guān)系。

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

    關(guān)注

    45

    文章

    3643

    瀏覽量

    134517
  • Verilog
    +關(guān)注

    關(guān)注

    28

    文章

    1351

    瀏覽量

    110100
  • HDL
    HDL
    +關(guān)注

    關(guān)注

    8

    文章

    327

    瀏覽量

    47387
  • 程序
    +關(guān)注

    關(guān)注

    117

    文章

    3787

    瀏覽量

    81043

原文標(biāo)題:邏輯功能描述語句部分

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    【FPGA學(xué)習(xí)】Verilog HDL有哪些特點(diǎn)

    Verilog HDL特點(diǎn)Verilog HDL 語言不僅定義了語法,而且對每個(gè)語法結(jié)構(gòu)都定
    發(fā)表于 09-18 09:33

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

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

    什么是Verilog HDL?

    什么是Verilog HDL? Verilog HDL是一種硬件描述語言,用于從算法級、門級到開關(guān)級的多種抽象設(shè)計(jì)層次的數(shù)字系統(tǒng)建模。被建
    發(fā)表于 01-18 14:53 ?4159次閱讀
    什么是<b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b>?

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

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

    Verilog HDL語言簡介

    Verilog HDL語言簡介 1.什么是Verilog HDLVerilog HDL是硬件描述語言的一種,用于數(shù)
    發(fā)表于 02-09 08:59 ?3910次閱讀

    Verilog HDL程序設(shè)計(jì)教程_王金明

    Verilog HDL 程序設(shè)計(jì)教程》對Verilog HDL程序設(shè)計(jì)作了系統(tǒng)全面的介紹,以可
    發(fā)表于 09-22 15:53 ?0次下載
    <b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b><b class='flag-5'>程序</b>設(shè)計(jì)教程_王金明

    Verilog HDL程序設(shè)計(jì)與實(shí)踐

    Verilog HDL程序設(shè)計(jì)與實(shí)踐著重介紹了Verilog HDL語言
    發(fā)表于 10-29 14:45 ?21次下載

    Verilog HDL硬件描述語言_結(jié)構(gòu)建模

    本章講述Verilog HDL中的結(jié)構(gòu)建模方式。結(jié)構(gòu)建模方式用以下三種實(shí)例語句描述,verilog
    發(fā)表于 04-25 14:58 ?14次下載

    Verilog HDL程序設(shè)計(jì)教程

    Verilog HDL程序設(shè)計(jì)教程-人郵
    發(fā)表于 05-11 11:30 ?35次下載

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

    本文檔的主要內(nèi)容詳細(xì)介紹的是Verilog HDL入門教程之Verilog HDL數(shù)字系統(tǒng)設(shè)計(jì)教程。
    發(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è)計(jì)教程

    Verilog HDL的基礎(chǔ)知識詳細(xì)說明

    硬件描述語言基本語法和實(shí)踐 (1)VHDL 和Verilog HDL的各自特點(diǎn)和應(yīng)用范圍 (2)Verilog
    發(fā)表于 07-03 17:36 ?54次下載
    <b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b>的基礎(chǔ)知識詳細(xì)說明

    Verilog教程之Verilog HDL程序設(shè)計(jì)語句和描述方式

    本文檔的主要內(nèi)容詳細(xì)介紹的是Verilog教程之Verilog HDL程序設(shè)計(jì)語句和描述方式。
    發(fā)表于 12-09 11:24 ?47次下載
    <b class='flag-5'>Verilog</b>教程之<b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b><b class='flag-5'>程序</b>設(shè)計(jì)語句和<b class='flag-5'>描述</b>方式

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

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

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

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

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

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