中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > Verilog HDL基礎(chǔ)知識(shí)6之語(yǔ)法結(jié)構(gòu)

        Verilog HDL基礎(chǔ)知識(shí)6之語(yǔ)法結(jié)構(gòu)

        作者: 時(shí)間:2024-02-21 來(lái)源:電子森林 收藏

        雖然 Verilog 硬件描述語(yǔ)言有很完整的和系統(tǒng),這些的應(yīng)用給設(shè)計(jì)描述帶來(lái)很多方便。但是 Verilog是描述硬件電路的,它是建立在硬件電路的基礎(chǔ)上的。有些是不能與實(shí)際硬件電路對(duì)應(yīng)起來(lái)的,比如 for 循環(huán),它是不能映射成實(shí)際的硬件電路的,因此,Verilog 硬件描述語(yǔ)言分為可綜合和不可綜合語(yǔ)言。下面我們就來(lái)簡(jiǎn)單的介紹一下可綜合與不可綜合。

        本文引用地址:http://www.antipu.com.cn/article/202402/455549.htm

        (1) 所謂可綜合,就是我們編寫的Verilog代碼能夠被綜合器轉(zhuǎn)化為相應(yīng)的電路結(jié)構(gòu)。因此,我們常用可綜合語(yǔ)句來(lái)描述數(shù)字硬件電路。

        (2) 所謂不可綜合,就是我們編寫的 Verilog 代碼無(wú)法綜合生成實(shí)際的電路。因此,不可綜合語(yǔ)句一般我們?cè)诿枋鰯?shù)字硬件電路時(shí)是用不到的,不過(guò),我們可以用它來(lái)仿真、驗(yàn)證我們描述的數(shù)字硬件電路

        Verilog的關(guān)鍵字

        由于我們是將 Verilog 用于描述數(shù)字硬件電路,所以我們只需要掌握可以被綜合器綜合的那部分關(guān)鍵字就可以了。下面我們列出了常用的可綜合關(guān)鍵字,如下。

        首先我們介紹的是 module 和 endmodule,它們是成對(duì)使用的,模塊是 Verilog 設(shè)計(jì)中基本功能塊,一個(gè)最簡(jiǎn)單的模塊是由模塊命名、端口列表兩個(gè)部分組成。整個(gè)模塊是由 module 開(kāi)頭,endmodule 結(jié)尾,module 后面緊跟著的是模塊名,每個(gè)模塊都有它自己的名字。

        input、output和 inout 用于端口定義,wire 和 reg 是用來(lái)聲明數(shù)據(jù)類型,parameter 是用來(lái)聲明參數(shù)類型,always 是過(guò)程賦值語(yǔ)句,assing 是連續(xù)賦值語(yǔ)句。

        if 和 else 成對(duì)使用,是條件判斷語(yǔ)句,和 C語(yǔ)言中的 if 和 else 是一樣的功能,begin 和 end 也是成對(duì)使用,相當(dāng)于 C 語(yǔ)言中的大括號(hào)。

        case、endcase 和 default 成對(duì)使用,是一個(gè)多分支條件語(yǔ)句,和 C 語(yǔ)言中的 switch 一樣的功能。

        posedege、negedge 和 or 這三個(gè)關(guān)鍵字是和 always 關(guān)鍵字聯(lián)合使用的,posedge 是上升沿觸發(fā),negedge 是下降沿觸發(fā),posedge or negedge 是既有上升沿又有下降沿。在Verilog中,注意關(guān)鍵字使用小寫。

        Verilog的基本程序框架

        Verilog 是一種用于數(shù)字邏輯電路設(shè)計(jì)的語(yǔ)言,我們以數(shù)字電路中最簡(jiǎn)單的與門為例,來(lái)作為入門學(xué)習(xí)的第一個(gè)程序。與門的 Verilog 代碼如下。

          module yumen  
         (
             a, b, c  
          );   
             input  a;
         input  b;
         output c;   
         assign c = a & b;   
         endmodule

        下面我們就來(lái)簡(jiǎn)單的介紹一下這個(gè)代碼,在這個(gè)代碼中,a 和 b 是與門的輸入,c 是與門的輸出,也就是說(shuō),該代碼實(shí)現(xiàn)了一個(gè) 2 輸入的與門電路。這里我們需要說(shuō)明的是,大家不必過(guò)分去苛求細(xì)節(jié)的語(yǔ)法,只要著眼于基本程序框架就行。通過(guò)上面的程序我們給大家總結(jié)如下:

        1.Verilog HDL 程序是由模塊構(gòu)成的,每個(gè)模塊的內(nèi)容都是嵌在 module 和 endmodule兩個(gè)語(yǔ)句之間。

        2.每個(gè)模塊要進(jìn)行端口定義,并說(shuō)明輸入輸出口,然后對(duì)模塊的功能進(jìn)行行為邏輯描述。

        3.Verilog HDL 程序的書寫格式自由,一行可以寫幾個(gè)語(yǔ)句,一個(gè)語(yǔ)句也可以分寫多行。

        4.除了 endmodule 語(yǔ)句外,每個(gè)語(yǔ)句和數(shù)據(jù)定義的最后必須有分號(hào)。



        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉