VHDL 編程筆記---1 目的 VHDL編碼的最小基本組成部分 參考

雖然現在verilog語言更流行一些,但是因爲某種原因,我還是準備用VHDL語言來解決問題,所以就要專門學一下VHDL。想必硬件描述語言肯定是大同小異的。這篇筆記算是參考文獻中《Fundamentals of Digital Logic with VHDL Design》的閱讀筆記。

目的

VHDL語言的出現主要有兩個目的:

  1. 可以用它像精確得描述數字電路的細節,結構。
  2. 可以用它來模擬數字電路的行爲。

VHDL編碼的最小基本組成部分

我們可以這個基本組成部分理解爲一個小的獨立的模塊,也可以想象爲一塊小芯片,有外面的引腳,作爲和外面的模塊發生交互,也有內部結構,實現邏輯功能,所以VHDL的編寫也是包含這兩個部分,即實體(ENTITY),還有結構(ARCHITECTURE)。

  • 實體(ENTIRY) 是用來定義所謂的引腳,可以定義爲輸出(OUT)或者輸入(IN),基本的最小的數據單位爲BIT,即爲二進制裏的一個位。

    ENTITY example1 IS
    PORT ( x1, x2, x3 : IN BIT ;
                 f : OUT BIT ) ;
    END example1 ;
    

    我們定義了一個叫example1的實體,端口(PORT)的x1, x2, x3被設置爲輸入,要用IN來表示;f爲輸出,要用OUT來表示。他們都是BIT類型的數據類型,在他們各自的行最後加上BIT關鍵字,標識他們都是BIT類型。最後統一用關鍵字PORT把他們用括號包起來。

  • 結構(ARCHITECTURE) 是用來實現模塊裏的實際邏輯功能,主要是將實體裏定義的信號引腳用一定的邏輯操作連接起來,基本的邏輯操作用and,or,not,即與門,或門,非門,然後將計算的信號通過<=將輸出信號交給輸出的端口, 這個符號叫做信號賦值操作符(Signal Assignment Operator)。

    ARCHITECTURE LogicFunc OF example1 IS
    BEGIN
        f <= (x1 AND x2) OR (NOT x2 AND x3) ;
    END LogicFunc ;
    

    如上面語句顯示,先是關鍵字ARCHITECTURE打頭,後面是名字LogicFunc,然後OF後面跟着前面定義的實體的名字。信號賦值操作符右面的表達式叫做邏輯表達式(Logic Expressions),是一種賦值語句,當然VHDL還有其他類型的賦值語句,我們以後再說。

最後貼上上面的模塊的邏輯電路圖:

參考

《Fundamentals of Digital Logic with VHDL Design》

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章