版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、VHDL的描述風(fēng)格,1 行為描述方式 2 數(shù)據(jù)流描述方式(RTL描述方式) 3 結(jié)構(gòu)化描述方式,VHDL語言是通過結(jié)構(gòu)體具體描述整個設(shè)計實體的邏輯功能。通常結(jié)構(gòu)體有四種不同的描述方式:行為描述方式(behavior)、數(shù)據(jù)流描述方式(dataflow)或寄存器RTL描述方式、結(jié)構(gòu)化描述方式(structural)以及混合描述方式。VHDL通過這四種不同的描述方式從不同的側(cè)面描述結(jié)構(gòu)體的功能。前三種是最基本的描述方式,他們組合起來就成為混合描述方式。 下面結(jié)合一個全加器來說明這四種描述風(fēng)格,全加器的端口示意圖如圖所示,其輸入輸出關(guān)系如表所示。,全加器的輸入輸出關(guān)系,輸入 輸出 c_in x y
2、c_out sum 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1,全加器框圖,一、 行為描述方式,行為描述輸入與輸出間轉(zhuǎn)換的行為,不需包含任何結(jié)構(gòu)信息,它對設(shè)計實體按算法的路徑來描述。行為描述在EDA工程中通常被稱為高層次描述,設(shè)計工程師只需要注意正確的實體行為、準(zhǔn)確的函數(shù)模型和精確的輸出結(jié)果就可以了,無需關(guān)注實體的電路組織和門級實現(xiàn)。,例 1 : 1位二進制數(shù)全加器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY full_ad
3、der IS PORT(x,y,c_in : IN STD_LOGIC; Sum, c_out : OUT STD_LOGIC); END full_adder; ARCHITECTURE behav OF full_adder IS BEGIN PROCESS (x, y, c_in) VARIABLE n: INTEGER; CONSTANT sum_vector: STD_LOGIC_VECTOR (0 TO 3) := “0101”; CONSTANT carry_vector: STD_LOGIC_VECTOR (0 TO 3) := “0011”;,BEGIN n := 0; IF
4、 x = 1 THEN n := n+1; END IF; IF y = 1 THEN n:=n+1; END IF; IF c_in = 1 THEN n:=n+1; END IF; - (0 TO 3) sum = sum_vector (n) AFTER 2*tpd; - - sum_vector初值為“0101” c_out = carry_vector (n) AFTER 3*tpd; - - carry_vector初值為“0011” END PROCESS; - (0 TO 3) END behav;,輸入 輸出 c_in x y c_out sum 0 0 0 0 0 0 0
5、1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1,對照真值表解釋程序,二、數(shù)據(jù)流描述方式 數(shù)據(jù)流描述方式表示行為,也隱含表示結(jié)構(gòu),它描述了數(shù)據(jù)流的運動路線、運動方向和運動結(jié)果。,對于全加器,用布爾方程描述其邏輯功能如下: s = x XOR y sum = s XOR c_in c_out = (x AND y) OR( s AND c_in),下面是基于上述布爾方程的數(shù)據(jù)流風(fēng)格的描述:,例 2 :全加器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY full
6、_adder IS GENERIC(tpd : TIME := 10 ns); PORT(x,y,c_in : IN STD_LOGIC; Sum, c_out : OUT STD_LOGIC); END full_adder; ARCHITECTURE dataflow OF full_adder IS BEGIN s = x XOR y AFTER tpd; sum = s XOR c_in AFTER tpd; c_out = (x AND y) OR( s AND c_in) AFTER 2* tpd; END dataflow;,三、結(jié)構(gòu)描述方式,結(jié)構(gòu)化描述方式就是在多層次的設(shè)計中,
7、高層次的設(shè)計可以調(diào)用低層次的設(shè)計模塊,或直接用門電路設(shè)計單元來構(gòu)成一個復(fù)雜邏輯電路的方法。利用結(jié)構(gòu)化描述方法將已有的設(shè)計成果方便地用于新的設(shè)計中,能大大提高設(shè)計效率。在結(jié)構(gòu)化描述中,建模的焦點是端口及其互連關(guān)系。,三、結(jié)構(gòu)描述方式,結(jié)構(gòu)化描述的建模步驟如下: (1)元件說明 (2)元件例化 (3)元件配置 元件說明用于描述局部接口;元件例化是要相對于其他元件來放置該元件;元件配置用于指定元件所用的設(shè)計實體。,對于上圖給出的全加器端口結(jié)構(gòu),可以認為它是由兩個半加器和一個或門組成的 。 基于上圖所示的結(jié)構(gòu),可以寫出全加器的結(jié)構(gòu)化描述設(shè)計程序如下。,例:全加器的結(jié)構(gòu)化描述 LIBRARY IEEE;
8、 USE IEEE.STD_LOGIC_1164.ALL; ENTITY half_adder IS GENERIC(tpd:TIME:=10 ns); PORT(in1, in2: IN STD_LOGIC; sum, carry: OUT STD_LOGIC); END half_adder; ARCHITECTURE rtl OF half_adder IS BEGIN PROSESS (in1, in2),BEGIN sum = in1 XOR in2 AFTER tpd; carry = in1 AND in2 AFTER tpd; END PROCESS; END rtl; - -
9、半加器設(shè)計完畢 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY or_gate IS GENERIC(tpd:TIME:=10 ns); PORT(in1, in2: IN STD_LOGIC; out1: OUT STD_LOGIC); END or_gate;,ARCHITECTURE rtl OF or_gate IS BEGIN out1 = in1 OR in2 AFTER tpd; END rtl; - - 或門設(shè)計完畢 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY full_
10、adder IS GENERIC(tpd:TIME:=10 ns); PORT(x,y,c_in: IN STD_LOGIC; Sum, c_out: OUT STD_LOGIC); END full_adder;,ARCHITECTURE structural OF full_adder IS SIGNAL a, b, c:STD_LOGIC; COMPONENT half_adder PORT(in1, in2: IN STD_LOGIC; sum, carry: OUT STD_LOGIC); END COMPONENT; COMPONENT or_gate PORT(in1, in2:
11、 IN STD_LOGIC; out1: OUT STD_LOGIC); END COMPONENT; FOR u1,u2 : half_adder USE ENTITY WORK.half_adder (rtl); FOR u3: or_gate USE ENTITY WORK. or_gate (trl);,BEGIN u1: half_adder PORT MAP (x, y, b, a); u2: half_adder PORT MAP (c_in, b, sum, c); u3: or_gate PORT MAP (c, a, c_out); END structural;,由上例可
12、見,對于一個復(fù)雜的電子系統(tǒng),可以將其分解為若干個子系統(tǒng),每個子系統(tǒng)再分解成模塊,形成多層次設(shè)計。這樣,可以使更多的設(shè)計者同時進行合作。在多層次設(shè)計中,每個層次都可以作為一個元件,再構(gòu)成一個模塊或系統(tǒng),可以先分別仿真每個元件,然后再整體調(diào)試。所以說結(jié)構(gòu)化描述不僅是一種設(shè)計方法,而且是一種設(shè)計思想,是大型電子系統(tǒng)高層次設(shè)計的重要手段。,四、混合描述風(fēng)格,在實際設(shè)計工作中,可以采用上述三種描述方式的任意組合,這就是混合描述。同樣還是圖所給出端口結(jié)構(gòu)的全加器模型,其混合描述方式如下。,例:全加器的混合描述 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTIT
13、Y xor_gate IS GENERIC(tpd:TIME:=10 ns); PORT(in1,in2: IN STD_LOGIC; out1: OUT STD_LOGIC); END xor_gate;,ARCHITECTURE behavioral OF xor_gate IS BEGIN out1 = in1 XOR in2 AFTER tpd; END behavioral; LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY full_adder IS GENERIC(tpd:TIME:=10 ns); PORT(x,y,c_in: IN STD_LOGIC; Sum, c_out: OUT STD_LOGIC); END full_adder;,ARCHITECTURE mix OF full_adder IS COMPONENT xor_gate PORT(in1, in2: IN STD_LOGIC; out1: OUT STD_LOGIC); END COMPONENT
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣告公司自由職業(yè)者合同模版
- 合同補充協(xié)議簽訂匯報
- 高中歷史第三章第二次世界大戰(zhàn)3.5二戰(zhàn)傷亡人數(shù)統(tǒng)計文本素材北師大版選修3
- 2025屆高考地理一輪復(fù)習(xí)第十五章區(qū)域發(fā)展與區(qū)域聯(lián)系36產(chǎn)業(yè)轉(zhuǎn)移-以東亞為例學(xué)案新人教版
- 2025屆高考歷史一輪復(fù)習(xí)模塊一政治文明歷程專題一古代中國的政治制度第2講走向“大一統(tǒng)”的秦漢政治學(xué)案人民版
- 2024外墻涂料施工合同范本
- 2024餐飲店鋪轉(zhuǎn)讓合同文檔模板
- 2024新版銷售代理合同范本
- 2024全屋定制合同
- 2024戶外廣告經(jīng)營權(quán)的轉(zhuǎn)讓合同
- 胃癌(英文版)課件
- 初中數(shù)學(xué)七年級下冊《5.2.1平行線》教學(xué)課件7
- 浙江省溫州市實驗中學(xué)2023-2024學(xué)年九年級上學(xué)期期中科學(xué)試卷
- q-e概念含義及方程
- 外科學(xué)(1)智慧樹知到課后章節(jié)答案2023年下溫州醫(yī)科大學(xué)
- 食堂服務(wù)外包投標(biāo)方案(技術(shù)標(biāo))
- 新外研版高中英語選擇性必修一Unit4 what inspires you課件
- 康復(fù)訓(xùn)練檔案
- 原輔料控制程序
- 蘇教版三年級上冊數(shù)學(xué)《解決問題的策略-從條件想起》教學(xué)設(shè)計(區(qū)級公開課)
- 希望數(shù)學(xué)2019年四年級培訓(xùn)100題-答案
評論
0/150
提交評論