




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
目錄123VHDL設(shè)計(jì)概念VHDL簡介VHDL程序結(jié)構(gòu)VHDL簡介
VHDL全名Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,超高速集成電路硬件描述語言,VHDL語言是一種用于電路設(shè)計(jì)的高級(jí)語言。最初是源于美國國防部1980年開始啟動(dòng)的超高速集成電路計(jì)劃,在這一計(jì)劃執(zhí)行過程中,專家們認(rèn)識(shí)到需要有一種標(biāo)準(zhǔn)的語言來描述集成電路的結(jié)構(gòu)和功能,由此,美國國防部便開發(fā)出VHDL設(shè)計(jì)語言供美軍用來提高設(shè)計(jì)的可靠性和縮減開發(fā)周期的設(shè)計(jì)語言。VHDL設(shè)計(jì)概念
采用VHDL進(jìn)行設(shè)計(jì)的方法為高層設(shè)計(jì),即“概念驅(qū)動(dòng)模式”設(shè)計(jì)。設(shè)計(jì)人員無需通過門級(jí)原理圖描述,而是針對(duì)設(shè)計(jì)目標(biāo)進(jìn)行功能描述。VHDL并不十分關(guān)心一個(gè)具體邏輯是靠何種方式實(shí)現(xiàn)的,而是把開發(fā)者的精力集中到邏輯所實(shí)現(xiàn)的功能上。由于高層設(shè)計(jì)只定義系統(tǒng)的行為特性,因此可以不涉及工藝。采用VHDL進(jìn)行設(shè)計(jì)的具體過程為:1、以VHDL語言描述設(shè)計(jì)概念;2、用VHDL仿真與調(diào)試工具分析此概念的“行為”,檢查是否滿足初始要求。這一過程與普通的編程語言,如C語言的編譯、運(yùn)行、調(diào)試是類似的。3、VHDL設(shè)計(jì)—>VHDL綜合工具。利用集成電路廠商或EDA廠家提供的被充分驗(yàn)證過的工藝庫,以面積、功耗、速度等為目標(biāo)進(jìn)行優(yōu)化,將電路映射成網(wǎng)表,得到門級(jí)電路后,還要進(jìn)行仿真來驗(yàn)證門電路的行為和時(shí)序特性。4、物理設(shè)計(jì)。得到可供生產(chǎn)的文件,進(jìn)行延時(shí)、故障、熱分析等,保證系統(tǒng)的穩(wěn)定工作,滿足設(shè)計(jì)指標(biāo)。VHDL程序結(jié)構(gòu)實(shí)體和結(jié)構(gòu)體是VHDL設(shè)計(jì)文件的兩個(gè)基本組成部分實(shí)體說明描述設(shè)計(jì)實(shí)體(黑盒)的外部接口信號(hào)(即輸入/輸出信號(hào));結(jié)構(gòu)體說明用于描述設(shè)計(jì)實(shí)體(黑盒)的內(nèi)部電路。包集合存放各設(shè)計(jì)模塊能共享的數(shù)據(jù)類型、常數(shù)、子程序等;庫用于存放已編譯的實(shí)體、結(jié)構(gòu)體、包集合和配置。配置用于從庫中選取所需元件安裝到設(shè)計(jì)單元的實(shí)體中。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux21IS
PORT(a,b:INSTD_LOGIC; s:INSTD_LOGIC; y:OUTSTD_LOGIC);ENDmux21;ARCHITECTUREbehaviorOFmux21IS
BEGIN
PROCESS(a,b,s) BEGIN IFs='0'THENy<=a;ELSEy<=b; ENDIF;
ENDPROCESS;ENDone;程序包實(shí)體說明結(jié)構(gòu)體實(shí)體說明的一般格式為:
ENTITY
實(shí)體名
IS
[GENERIC類屬參數(shù)說明]; [PORT端口說明];
END;ayand2b
實(shí)體中的每一個(gè)I/O信號(hào)被稱為端口,其功能對(duì)應(yīng)于電路圖符號(hào)的一個(gè)引腳。端口說明則是對(duì)一個(gè)實(shí)體的一組端口的定義,即對(duì)基本設(shè)計(jì)實(shí)體與外部接口的描述。端口是設(shè)計(jì)實(shí)體和外部環(huán)境動(dòng)態(tài)通信的通道。實(shí)體類似一個(gè)“黑盒”,實(shí)體描述了“黑盒”的輸入輸出口。
ENTITY、IS、GENERIC、PORT、END是VHDL的關(guān)鍵字(保留字)。
實(shí)體名、端口名(端口說明)等均應(yīng)為符合VHDL命名規(guī)則的標(biāo)識(shí)符。實(shí)體說明類屬信息1、作用
為設(shè)計(jì)實(shí)體和其外部環(huán)境通信的靜態(tài)信息提供通道,可以定義端口的大小、實(shí)體中元件的數(shù)目以及實(shí)體的定時(shí)特性等。2、一般格式
GENERIC([CONSTANT]名字表:[IN]子類型標(biāo)識(shí)[:=靜態(tài)表達(dá)式],…]);端口說明端口說明的一般格式為:
PORT(端口名{,端口名}:端口模式數(shù)據(jù)類型;端口名{,端口名}:端口模式數(shù)據(jù)類型);
例如:PORT(
a,b :INSTD_LOGIC;
y
:OUTSTD_LOGIC);端口名端口模式數(shù)據(jù)類型端口模式
用來說明數(shù)據(jù)傳輸通過該端口的方向。IN:
數(shù)據(jù)只能從端口流入實(shí)體OUT:
數(shù)據(jù)只能從端口流出實(shí)體INOUT:
數(shù)據(jù)從端口流入或流出實(shí)體BUFFER:
數(shù)據(jù)從端口流出實(shí)體,同時(shí)可被內(nèi)部反饋。
構(gòu)造體內(nèi)部也要使用輸出信號(hào)時(shí),只能定義成“buffer”。端口數(shù)據(jù)類型常用的有布爾型(boolean)、位型(bit)、位矢量型(bit-vector)、整數(shù)型(integer)、非標(biāo)準(zhǔn)邏輯和標(biāo)準(zhǔn)邏輯類型(Std_ulogic和Std_logic)。1)boolean:布爾型,可取值“TRUE(真)”或“FALSE(假)”。2)bit:為位邏輯數(shù)據(jù)類型,信號(hào)取值是邏輯值“1”和“0”。3)bit_vector:取值是一組二進(jìn)制位的值。
如:8位數(shù)據(jù)總線數(shù)端口Port(d0,d1,sel:inbit;
q:outbit;
bus:outbit_vector(7downto0));4)Integer:整數(shù),用作循環(huán)技術(shù)或常數(shù),通常不用于I/O信號(hào)。5)Std_ulogic和Std_logic:非標(biāo)準(zhǔn)邏輯和標(biāo)準(zhǔn)邏輯類型,由IEEE:Std_logic_1164支持,程序包中定義了有關(guān)的數(shù)據(jù)類型,訪問該程序包中的項(xiàng)目需要使用LIBRARY子句和USE子句。LibraryIEEE;UseIEEE.STD_Logic_1164.all;EntitymuisPort(d0,d1,sel:inSTD_Logic;
q:outSTD_Logic;
bus:outSTD_Logic_vector(7downto0));ENDmu;練習(xí)編寫包含以下內(nèi)容的實(shí)體代碼:端口D為12位輸入總線;端口OE和CLK都是1位輸入;端口AD為7位雙向總線;端口A為7位輸出總線;端口INT是1位輸出;端口AS是一位輸出同時(shí)被用作內(nèi)部反饋。d[11..0]clkoead[7..0]a[7..0]intas
my_design練習(xí)答案Libraryieee;Useieee.std_logic_1164.ALL;Entitymy_designisPORT(d:instd_logic_vector(11downto0);oe,clk:in:std_logic;ad:inoutstd_logic_vector(7downto0);a:outstd_logic_vector(7downto0);int:outstd_logic;as:bufferstd_logic);Endmy_design;
d[11..0]clkoead[7..0]a[7..0]intasmy_design結(jié)構(gòu)體結(jié)構(gòu)體是用來描述一個(gè)設(shè)計(jì)的具體結(jié)構(gòu),建立一個(gè)設(shè)計(jì)中輸入和輸出之間的關(guān)系,即描述實(shí)體的功能,對(duì)黑盒子的內(nèi)部進(jìn)行具體描述。VHDL允許采用三種描述格式來進(jìn)行具體的設(shè)計(jì)構(gòu)造,行為描述、數(shù)據(jù)流描述和結(jié)構(gòu)描述。具體描述時(shí),可以是以上三種中的一種或幾種的任意組合。一個(gè)設(shè)計(jì)實(shí)體可以有多個(gè)結(jié)構(gòu)體。結(jié)構(gòu)體一般格式為:ARCHITECTURE
結(jié)構(gòu)體名OF
實(shí)體名IS定義語句:內(nèi)部信號(hào),常數(shù),數(shù)據(jù)類型,函數(shù)定義
BEGIN[并行處理語句];[進(jìn)程語句];…END
結(jié)構(gòu)體名;
ARCHITECTURE、OF、IS、BEGIN、END是VHDL的關(guān)鍵字(保留字)。
結(jié)構(gòu)體名稱由設(shè)計(jì)者自由命名,是結(jié)構(gòu)體的唯一名稱,該結(jié)構(gòu)體名可反映結(jié)構(gòu)體的特色。
例如: architecturebehaviorofmuxis——用結(jié)構(gòu)體行為命名 architecturedataflowofmuxis——用結(jié)構(gòu)體的數(shù)據(jù)流命名 architecturestructuralofmuxis——用結(jié)構(gòu)體組織結(jié)構(gòu)命名 architecturelatchofmuxis——用結(jié)構(gòu)體的功能命名以上命名舉例說明,幾個(gè)結(jié)構(gòu)體都屬于設(shè)計(jì)實(shí)體mux,結(jié)構(gòu)體名由設(shè)計(jì)者自行定義,OF后面的實(shí)體名指明了該結(jié)構(gòu)體所對(duì)應(yīng)的是哪個(gè)實(shí)體。由于一個(gè)設(shè)計(jì)有行為描述、數(shù)據(jù)流描述和結(jié)構(gòu)描述3種方式,一般建議用behave,dataflow,structure為結(jié)構(gòu)體命名。
用于對(duì)結(jié)構(gòu)體內(nèi)部將要使用的信號(hào)、常數(shù)、數(shù)據(jù)類型、元件、函數(shù)和過程加以說明。最常見的是對(duì)內(nèi)部流動(dòng)的信號(hào)的定義。但不能定義變量。
實(shí)體說明中定義的信號(hào)是外部信號(hào),而結(jié)構(gòu)體定義的信號(hào)為該結(jié)構(gòu)體的內(nèi)部信號(hào),它只能用于這個(gè)結(jié)構(gòu)體中。
結(jié)構(gòu)體中的信號(hào)定義和端口說明一樣,應(yīng)有信號(hào)名稱和數(shù)據(jù)類型定義。因?yàn)樗莾?nèi)部連接用的信號(hào),因此不需要方向說明。結(jié)構(gòu)體的三種描述形式:1、行為描述2、結(jié)構(gòu)描述3、數(shù)據(jù)流描述1、行為描述
描述該設(shè)計(jì)單元的功能,即該硬件做什么,主要使用函數(shù)、過程和進(jìn)程語句,以算法形式描述數(shù)據(jù)的變換和傳送。即只描述所希望電路的功能或者電路行為(輸入輸出間轉(zhuǎn)換的行為),而沒有指明或涉及實(shí)現(xiàn)這些行為的硬件結(jié)構(gòu)。
ARCHITECTUREbehaviorOFmux21IS
BEGIN
PROCESS(a,b,s) BEGIN IFs='0'THENy<=a;ELSEy<=b; ENDIF;
ENDPROCESS;ENDone;2、結(jié)構(gòu)描述
描述該設(shè)計(jì)單元的硬件結(jié)構(gòu),即該硬件是如何構(gòu)成的。主要使用配置指定語句及元件例化語句描述元件的類型及元件的互聯(lián)關(guān)系。
3、數(shù)據(jù)流描述
也稱為寄存器傳輸描述形式。是對(duì)信號(hào)到信號(hào)的數(shù)據(jù)流的路徑形式進(jìn)行描述,因此要求設(shè)計(jì)者不但要對(duì)設(shè)計(jì)實(shí)體的功能實(shí)現(xiàn)有一定的了解,而且還需要對(duì)內(nèi)部的邏輯電路結(jié)構(gòu)有清楚的認(rèn)識(shí)。設(shè)計(jì)庫設(shè)計(jì)庫(Library)1、設(shè)計(jì)庫是經(jīng)編譯后的數(shù)據(jù)的集合,存放包集合定義、實(shí)體定義、結(jié)構(gòu)體定義和配置定義。2、VHDL中,設(shè)計(jì)庫的說明總放在設(shè)計(jì)單元的最前面。3、設(shè)計(jì)庫中的各個(gè)設(shè)計(jì)單元可以用作進(jìn)行其他設(shè)計(jì)的資源,一個(gè)設(shè)計(jì)可以使用多個(gè)庫中的設(shè)計(jì)單元。設(shè)計(jì)庫的使用
首先在設(shè)計(jì)的開頭說明要引用的庫,然后使用use子句指明要使用庫中的哪一個(gè)設(shè)計(jì)單元,其書寫格式為:
Library庫名;Use庫名.程序包名.all;
其中:程序包名就是實(shí)際設(shè)計(jì)要使用的庫中的設(shè)計(jì)單元;all表示使用程序包中的所有項(xiàng)目。常用設(shè)計(jì)庫1、STD庫2、WORK庫WORK庫是VHDL語言工作庫,用戶在項(xiàng)目設(shè)計(jì)中設(shè)計(jì)成功、正在驗(yàn)證、和未仿真的中間件都放在WORK庫中。以上兩個(gè)庫對(duì)當(dāng)前設(shè)計(jì)是永遠(yuǎn)可見的,不需在程序開頭對(duì)它們進(jìn)行說明。即下面的LIBRARY子句隱含存在于任何設(shè)計(jì)單元之前。librarystd;librarywork;3、資源庫除STD和WORK庫以外所有的庫均為資源庫。這些資源庫的使用必須用LIBRARY顯式的說明出來。如常用的資源庫IEEE庫(Std_logic_1164)和VITAL庫。程序包
在VHDL中,設(shè)計(jì)的實(shí)體和結(jié)構(gòu)體中定義的數(shù)據(jù)類型、常量、子程序說明和元件說明等只能在該設(shè)計(jì)實(shí)體中使用,而對(duì)其他設(shè)計(jì)實(shí)體是不可見的。程序包說明用來單純地羅列VHDL中所要用到的信號(hào)定義、常量定義、數(shù)據(jù)類型、子程序說明和元件說明等,是一個(gè)可編譯的設(shè)計(jì)單元。
要使用程序包中的某些說明和定義,要用use語句說明。各種VHDL編譯系統(tǒng)都含有多個(gè)標(biāo)準(zhǔn)程序包,如Std_Logic_1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 45822-2025移動(dòng)顯示蓋板用透明微晶玻璃
- 基建基礎(chǔ)知識(shí)培訓(xùn)課件教學(xué)
- 交通事件持續(xù)時(shí)間預(yù)測方法:多模型對(duì)比與優(yōu)化策略
- 中國漢族人群風(fēng)濕性心臟病遺傳易感性的深度剖析與探究
- SpltNPV感染甜菜夜蛾幼蟲的病理學(xué)特征及機(jī)制解析
- 初二英語比較級(jí)測試試卷及答案
- 基層民警業(yè)務(wù)知識(shí)培訓(xùn)課件
- 六自由度擺缸關(guān)節(jié)機(jī)械臂的液壓系統(tǒng)設(shè)計(jì)開題報(bào)告
- 新解讀《GB-T 36805.2-2020塑料 高應(yīng)變速率下的拉伸性能測定 第2部分:直接測試法》
- 培訓(xùn)課件打造
- 手機(jī)媒體概論(自考14237)復(fù)習(xí)題庫(含真題、典型題)
- 2025-2030中國直升機(jī)旅游行業(yè)市場深度調(diào)研及發(fā)展趨勢與投資前景預(yù)測研究報(bào)告
- 鉤針編織技術(shù)課件
- 2025年中考數(shù)學(xué)幾何模型歸納訓(xùn)練:最值模型之阿氏圓模型解讀與提分訓(xùn)練
- 2025年民航安全試題簡答題及答案
- 2025年事業(yè)編畜牧筆試試題及答案
- 江蘇省職教高考烹飪類專業(yè)知識(shí)考試復(fù)習(xí)題(附答案)
- 焊接技術(shù)培訓(xùn)(基礎(chǔ)教程)課件
- 珠海廣東珠海萬山海洋開發(fā)試驗(yàn)區(qū)發(fā)展改革和政策研究局招聘合同制職員筆試歷年典型考點(diǎn)(頻考版試卷)附帶答案詳解
- 特種設(shè)備安全法培訓(xùn)課件
- 2024年機(jī)動(dòng)車檢測站質(zhì)量手冊程序文件記錄表格合集(根據(jù)補(bǔ)充要求編制)
評(píng)論
0/150
提交評(píng)論