可編程邏輯器件(EDA):第3章 VHDL設(shè)計初步-3.1.4-3.1.6節(jié)新課件-ST_第1頁
可編程邏輯器件(EDA):第3章 VHDL設(shè)計初步-3.1.4-3.1.6節(jié)新課件-ST_第2頁
可編程邏輯器件(EDA):第3章 VHDL設(shè)計初步-3.1.4-3.1.6節(jié)新課件-ST_第3頁
可編程邏輯器件(EDA):第3章 VHDL設(shè)計初步-3.1.4-3.1.6節(jié)新課件-ST_第4頁
可編程邏輯器件(EDA):第3章 VHDL設(shè)計初步-3.1.4-3.1.6節(jié)新課件-ST_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、1/22課程回顧課程回顧nVHDL Very High Speed Integrated Circuit Hardware Description Language2選1多路選擇器2/22課程回顧課程回顧3/223.1.4 3.1.4 半加器及其半加器及其VHDLVHDL的描述的描述輸入輸出absoco0000011010101101半加器h_adder真值表4/223.1.4 3.1.4 半加器及其半加器及其VHDLVHDL的描述的描述【例3-4】LIBRARY IEEE; -半加器描述(1):布爾函數(shù)描述方法USE IEEE.STD_LOGIC_1164.ALL;ENTITY h_adde

2、r IS PORT (a, b : IN STD_LOGIC; co, so : OUT STD_LOGIC);END ENTITY h_adder;ARCHITECTURE fh1 OF h_adder IS BEGIN so = a XOR b; co = a AND b;END ARCHITECTURE fh1;LIBRARY IEEE; -半加器描述(2):真值表描述方法USE IEEE.STD_LOGIC_1164.ALL;ENTITY h_adder IS PORT (a, b : IN STD_LOGIC; co, so : OUT STD_LOGIC);END ENTITY h

3、_adder;ARCHITECTURE fh1 OF h_adder IS SIGNAL abc: STD_LOGIC_VECTOR (1 DOWNTO 0); - 定義標準邏輯矢量 BEGIN abc so = 0; co so = 1; co so = 1; co so = 0; co NULL; END CASE; END PROCESS;END ARCHITECTURE fh1;【例3-5】輸入輸出absoco00000110101011015/226/223.1.4 3.1.4 半加器及其半加器及其VHDLVHDL的描述的描述nVHDL語言知識:1. CASE語句 注意:CASE語句

4、屬于順序語句,必須放在PROCESS中使用。 IF_THEN語句(順序語句);WHEN_ELSE語句(并行語句)?!?”是(解釋)連接符;“=”是(賦值)操作符。CASE IS WHEN = ; ; ; WHEN = ; ; ; WHEN OTHERS = ; END CASE;7/223.1.4 3.1.4 半加器及其半加器及其VHDLVHDL的描述的描述nVHDL語言知識:1. CASE語句 CASE注意事項: 條件語句中的代表值須與CASE語句的數(shù)據(jù)類型及取值范圍相匹配; 的選擇值須完全覆蓋的取值 否則在條件語句最后加入:” WHEN OTHERS = ; ” CASE語句在執(zhí)行過程中必

5、被選中,且只能選中一條條件語句 CASE語句中不允許有相同選擇值的條件語句出現(xiàn)。CASE IS WHEN = ; ; ; WHEN = ; ; ; WHEN OTHERS = ; END CASE;LIBRARY IEEE; -半加器描述(2):真值表描述方法USE IEEE.STD_LOGIC_1164.ALL;ENTITY h_adder IS PORT (a, b : IN STD_LOGIC; co, so : OUT STD_LOGIC);END ENTITY h_adder;ARCHITECTURE fh1 OF h_adder IS SIGNAL abc: STD_LOGIC_V

6、ECTOR (1 DOWNTO 0); - 定義標準邏輯矢量 BEGIN abc so = 0; co so = 1; co so = 1; co so = 0; co NULL; END CASE; END PROCESS;END ARCHITECTURE fh1;【例3-5】輸入輸出absoco00000110101011018/229/223.1.4 3.1.4 半加器及其半加器及其VHDLVHDL的描述的描述nVHDL語言知識:2. 標準邏輯矢量數(shù)據(jù)類型 PORT (B : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) ); SIGNAL A : STD_LOGI

7、C_VECTOR (1 TO 4);STD_LOGIC STD_LOGIC_VECTOR二者均定義在STD_LOGIC_1164程序包中;使用標準邏輯矢量可以表達電路中并排的多通路端口、節(jié)點或總線。關(guān)鍵詞”DOWNTO”和”TO”的區(qū)別: B = “01100010”; -B(7)為0 B (4 DOWNTO 1) = “1101”; -B(4)為1 B (7 DOWNTO 4) = A; -B(6)等于A(2)STD_LOGIC_VECTOR BIT_VECTOR: SIGNAL C : BIT_VECTOR (3 DOWNTO 0);10/223.1.4 3.1.4 半加器及其半加器及其V

8、HDLVHDL的描述的描述nVHDL語言知識:3. 并置操作符 & SIGNAL abc: STD_LOGIC_VECTOR (1 DOWNTO 0); abc = a & b; 等價于: abc(1) = a; abc(0) = b; 操作符&表示將操作數(shù)或數(shù)組合并成為新的數(shù)組矢量。注意:并置操作前后的數(shù)組長度應(yīng)一致。 a = 1 & 0 & d(1) & 1; IF a & b =“101011” THEN ;11/22課程回顧課程回顧2選選1多路選擇器多路選擇器1位二進制半加器位二進制半加器12/223.1.5 3.1.5 全加器及

9、其全加器及其VHDLVHDL的描述的描述n1位二進制全加器的傳統(tǒng)設(shè)計流程:位二進制全加器的傳統(tǒng)設(shè)計流程:輸入輸入輸出輸出abcinsumcout00000001100101001101100101100111111 sum = a XOR b XOR cin cout = (a AND b) OR (cin AND (a XOR b)邏輯函數(shù)式邏輯函數(shù)式卡諾圖化簡卡諾圖化簡13/223.1.5 3.1.5 全加器及其全加器及其VHDLVHDL的描述的描述n1位二進制全加器可以由兩個半加器和一個或門位二進制全加器可以由兩個半加器和一個或門 連接而成。連接而成。14/223.1.5 3.1.5 全

10、加器及其全加器及其VHDLVHDL的描述的描述n元件例化:元件例化:元件例化元件例化15/223.1.5 3.1.5 全加器及其全加器及其VHDLVHDL的描述的描述n元件例化:元件例化:元件例化為電路描述引入一種連接關(guān)系。元件例化為電路描述引入一種連接關(guān)系。 被調(diào)用設(shè)計實體的來源:被調(diào)用設(shè)計實體的來源:WORK庫中設(shè)計好的庫中設(shè)計好的VHDL文件、文件、FPGA元件庫中元件、元件庫中元件、IP核等。核等。 將預先設(shè)計的某設(shè)計實體定義為一個元件,利用特定的例化語句將預先設(shè)計的某設(shè)計實體定義為一個元件,利用特定的例化語句將此元件與當前設(shè)計實體中的指定端口相連接。將此元件與當前設(shè)計實體中的指定端口

11、相連接。 元件例化具有多層次性,一個調(diào)用了較低層次的設(shè)計實體可以被元件例化具有多層次性,一個調(diào)用了較低層次的設(shè)計實體可以被更高層次的設(shè)計實體所調(diào)用(更高層次的設(shè)計實體所調(diào)用(VHDL自上而下的層次化設(shè)計方法)。自上而下的層次化設(shè)計方法)。 元件例化的步驟元件例化的步驟 COMPONENT 元件名元件名 PORT (端口名表)(端口名表); END COMPONENT 元件名元件名; 16/223.1.5 3.1.5 全加器及其全加器及其VHDLVHDL的描述的描述n元件定義語句:元件定義語句:元件定義語句須放在結(jié)構(gòu)體的元件定義語句須放在結(jié)構(gòu)體的ARCHITECTURE和和BEGIN之間。之間。

12、 元件定義語句須放置在結(jié)構(gòu)體的說明語句中。元件定義語句須放置在結(jié)構(gòu)體的說明語句中。IS COMPONENT h_adder PORT (c , d : IN STD_LOGIC; e , f : OUT STD_LOGIC); END COMPONENT;17/223.1.5 3.1.5 全加器及其全加器及其VHDLVHDL的描述的描述【例例3-4、3-5】【例例3-6】LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;ENTITY or2a IS PORT (a, b : IN STD_LOGIC; c: OUT STD_LOGIC);END ENTITY

13、or2a;ARCHITECTURE one OF or2a IS BEGIN c ain, b=bin, co=d, so=e); -例化語句例化語句 u2: h_adder PORT MAP (a=e, b=cin, co=f, so=sum); u3: or2a PORT MAP (a=d, b=f, c=cout);END ARCHITECTURE fd1;【例例3-7】19/223.1.6 VHDL3.1.6 VHDL例化語句例化語句n元件例化語句:元件例化語句:例化名例化名 被調(diào)用元件的編被調(diào)用元件的編號,必須存在;號,必須存在;元件元件名名 被調(diào)用元件的實體被調(diào)用元件的實體名;名;PORT MAP 端口端口映射;映射;端口端口名名 被調(diào)用被調(diào)用元件中定義的端口名,非必須;元件中定義的端口名,非必須;連接端口連接端口名名 頂層頂層系統(tǒng)的端口系統(tǒng)的端口名或通信連接線名。名或通信連接線名。= : (解釋解釋)連接符,僅表示連接關(guān)系,不限制信號數(shù)據(jù)的流動方向。連接符,僅表示連接關(guān)系,不限制信號數(shù)據(jù)的流動方向。 連接端口名連接端口名, );20/223.1.6 VHDL3.1.6 VHDL例化語句例化語句 u1: h_adder PORT MAP (a=ain, b=bin, co=d, so=e); -例化語句例化語句 u2: h_a

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論