電路設(shè)計第11章PLD及VHDL語言教案課件_第1頁
電路設(shè)計第11章PLD及VHDL語言教案課件_第2頁
電路設(shè)計第11章PLD及VHDL語言教案課件_第3頁
電路設(shè)計第11章PLD及VHDL語言教案課件_第4頁
電路設(shè)計第11章PLD及VHDL語言教案課件_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第11章 PLD及VHDL語言 隨著電子技術(shù)的發(fā)展,日趨完善的ASIC(專用集成電路)技術(shù)使數(shù)字系統(tǒng)的設(shè)計可以直接面向用戶需求,根據(jù)系統(tǒng)行為和功能要求,自上而下地完成描述、綜合、優(yōu)化和仿真,直接生成器件。 由于任意一個組合邏輯都可以用“與-或”表達(dá)式來描述,因此出現(xiàn)了可編程邏輯器件(Programmabel Logic Device,簡稱PLD)。典型的PLD由一個“與”門陣列和一個“或”門陣列組成,能以乘積的形式完成大量的組合邏輯功能,但由于其結(jié)構(gòu)過于簡單,只能實(shí)現(xiàn)規(guī)模較小的電路。 由于PLD只能實(shí)現(xiàn)規(guī)模較小的電路,為了彌補(bǔ)它的不足,Altera 和Xilinx分別推出了CPLD(Compl

2、ex Programmabel Logic Device )和FPGA(Field Programmabel Gate Array)。它們都具有體系結(jié)構(gòu)和邏輯單元靈活、集成度高及適用范圍廣等特點(diǎn),兼容了PLD和通用門陣列的優(yōu)點(diǎn),可實(shí)現(xiàn)較大規(guī)模的電路設(shè)計以及實(shí)時在線檢查和靈活編程。 第11章 PLD及VHDL語言 常見的可編程邏輯器件有FPGA、CPLD、EPLD、GAL、PAL、PLA、和PROM等。從結(jié)構(gòu)上可將其分為兩大類: PLD:通過改變內(nèi)部電路的邏輯功能來編程。 FPGA:通過改變內(nèi)部連線的布線來編程。從集成密度上又可以分成低密度可編程邏輯器件(LDPLD)和高密度可編程邏輯器件(HD

3、PLD)。11.2 PLD的設(shè)計步驟 通常情況下,PLD的設(shè)計包括以下步驟:(1) 選擇合適的語法類型;(2) 創(chuàng)建源文件;(3) 陳述方程式;(4) 選擇目標(biāo)器件;(5) 定義管腳;(6) 編輯源文件。第11章 PLD及VHDL語言 11.3 VHDL語言簡介 VHDL(VHSIC Hardware Decription Language)中VHSIC(Very High Speed Integrated Circuit)是電子設(shè)計自動化的關(guān)鍵技術(shù)之一,是要求用形式化方法來描述硬件系統(tǒng)。VHDL適應(yīng)了這種要求。電子系統(tǒng)VHDL的設(shè)計描述等級分為以下四個等級:(1)行為級(2)RTL級(Reg

4、ister transfer level)(3)邏輯門級(4)版圖級第11章 PLD及VHDL語言VHDL描述硬件實(shí)體的結(jié)構(gòu)如下圖11-1所示。 Entity(實(shí)體)Architecture 1(結(jié)構(gòu)體)Architecture Nprocess(進(jìn)程結(jié)構(gòu)) block(塊結(jié) 構(gòu))subprograms(子程序) procedure(過程) function(函數(shù))圖11-1 VHDL描述硬件實(shí)體的結(jié)構(gòu)第11章 PLD及VHDL語言 VHDL程序包括實(shí)體(Entity)、結(jié)構(gòu)體(Architecture)、配置(Configuration)、包集合(Package)和庫(Library)五個部

5、分。其中前4個部分是可分別編譯的源設(shè)計單元。一個完整的VHDL設(shè)計項目至少包括一個實(shí)體和結(jié)構(gòu)體的定義。實(shí)體用于描述設(shè)計系統(tǒng)的外部接口信號,結(jié)構(gòu)體用于描述系統(tǒng)的行為、系統(tǒng)數(shù)據(jù)的流程或系統(tǒng)組織結(jié)構(gòu)形式。設(shè)計實(shí)體是VHDL程序的基本單元,是電子系統(tǒng)的抽象。簡單的實(shí)體可以是一個與門電路,復(fù)雜的實(shí)體可以是一個微處理器或一個數(shù)字系統(tǒng)。下面我們以半全加器的VHDL描述為例,介紹VHDL語言中的要素。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNE.ALL;第11章 PLD及VHDL語言ENTITY h_adder ISPO

6、RT(a,b: IN STD_LOGIC;co,so:OUT STD_LOGIC );END ENTITY h_adder;ARCHITECTURE fh1 OF h_adder IS SIGNAL abc: STD_LOGIC_VECTOR(1 DOWNTO 0);BEGIN abcso=0; coso=1; coso=1; coso=0; coNULL;END CASS;END PROCESS;END ARCHITECTURE fh1;第11章 PLD及VHDL語言 設(shè)計實(shí)體用ENTITY來標(biāo)識,結(jié)構(gòu)體由ARCHITECTURE來標(biāo)識。系統(tǒng)設(shè)計中的實(shí)體提供該設(shè)計系統(tǒng)的公共信息,結(jié)構(gòu)體定義了

7、各個模塊的操作特性。一個設(shè)計實(shí)例必須包括一個結(jié)構(gòu)體,也可以是多個結(jié)構(gòu)體。1. 實(shí)體實(shí)體作為一個設(shè)計實(shí)體的組成部分,其功能是對這個設(shè)計實(shí)體與外部電路進(jìn)行接口描述,實(shí)體是設(shè)計體的表層設(shè)計單元,說明部分規(guī)定了設(shè)計單元的輸入輸出接口信號或引腳,它是設(shè)計實(shí)體對外的一個通信界面。實(shí)體的一般格式為: ENTITY 實(shí)體名 IS GENERIC (類型表); PORT (端口表); BEGIN實(shí)體語句部分;END ENTITY 實(shí)體名;第11章 PLD及VHDL語言2. 端口說明端口說明是對設(shè)計實(shí)體與外部接口的描述,是設(shè)計實(shí)體和外部環(huán)境動態(tài)通信的通道,其功能對應(yīng)于電路符號的引腳,其中包括對每一接口的輸入輸出模

8、式和數(shù)據(jù)類型的定義。端口說明的一般格式為:PORT(端口名:端口方向 數(shù)據(jù)類型; . . . 端口名:端口方向 數(shù)據(jù)類型;) 其中方向有: IN 、OUT、INOUT、BUFFER和LINKAGE 。IN 信號只能被引用,不能被賦值;OUT 信號只能被賦值,不能被引用;BUFFER 信號可以被引用;也可以被賦值。也就是說IN 不可以出現(xiàn)在= 或 : = 的左邊;OUT不可以出現(xiàn)在= 或 : = 的右邊;BUFFER可以出現(xiàn)在= 或 : = 的兩邊。第11章 PLD及VHDL語言例如: 端口說明只是定義了實(shí)體的接口的輸入輸出模式和數(shù)據(jù)類型,其內(nèi)部結(jié)構(gòu)將由Architecture(結(jié)構(gòu)體)來描述第

9、11章 PLD及VHDL語言3. 結(jié)構(gòu)體結(jié)構(gòu)體是實(shí)體所定義的設(shè)計實(shí)體的一部分。結(jié)構(gòu)體描述設(shè)計實(shí)體的內(nèi)部結(jié)構(gòu)和外部設(shè)計實(shí)體端口間的邏輯關(guān)系。結(jié)構(gòu)體由以下部分組成:(1) 對數(shù)據(jù)類型、常數(shù)、信號、子程序和元器件等元素的說明部分。(2) 描述實(shí)體邏輯行為的、以各種不同的描述風(fēng)格表達(dá)的功能描述語句。(3) 以元器件例化語句為特征的外部元件端口間的連接。結(jié)構(gòu)體的一般格式為: ARCHITECTURE 結(jié)構(gòu)體名 OF 實(shí)體名 IS 定義語句,內(nèi)部信號,常數(shù),數(shù)據(jù)類型,函數(shù)定義 BEGIN 并行處理語句和block、process、function、procedureEND 結(jié)構(gòu)體名;第11章 PLD及VH

10、DL語言例如: 4.庫 庫是數(shù)據(jù)的集合。內(nèi)含各類包定義、實(shí)體、構(gòu)造體等。當(dāng)您的VHDL文件被編譯后,編譯的結(jié)果儲存在特定的目錄下,這個目錄的邏輯名稱即Library,此目錄下的內(nèi)容亦即是這個Library的內(nèi)容。STD庫是VHDL的標(biāo)準(zhǔn)庫。IEEE庫是VHDL的標(biāo)準(zhǔn)庫的擴(kuò)展第11章 PLD及VHDL語言5.Package(包集合) Package屬于庫結(jié)構(gòu)的一個層次,存放信號定義、常數(shù)定義、數(shù)據(jù)類型、元件語句、函數(shù)定義和過程定義。Package Body 具有獨(dú)立對端口(port)的package。configuration(配置)描述層與層之間的連接關(guān)系以及實(shí)體與構(gòu)造體之間關(guān)系。 對于VHDL對象、操作符、數(shù)據(jù)類型以及順序語句等,這里就不多介紹了。讀者可以參考相關(guān)書籍進(jìn)行學(xué)習(xí)。第11章 PLD及VHDL語言11.4

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論