第三章-硬件描述語言VHDL基礎(chǔ).ppt_第1頁
第三章-硬件描述語言VHDL基礎(chǔ).ppt_第2頁
第三章-硬件描述語言VHDL基礎(chǔ).ppt_第3頁
第三章-硬件描述語言VHDL基礎(chǔ).ppt_第4頁
第三章-硬件描述語言VHDL基礎(chǔ).ppt_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余67頁可下載查看

下載本文檔

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

文檔簡介

1、第1、3章硬件描述語言VHDL基礎(chǔ)、3.1 VHDL語言程序的基本結(jié)構(gòu)3.2 VHDL語言的數(shù)據(jù)類型和運(yùn)算符3.3 VHDL語言的基本說明語句3.4 VHDL語言組件的說明方法、2、3.1 VHDL語言程序的基本結(jié)構(gòu)實(shí)體(Entity)、構(gòu)造函數(shù)(archh配置(Configuration)在籌碼級(jí)別,表示特定芯片的針腳。實(shí)體說明ENTITY實(shí)體名稱IS PORT(通信端口名稱(,通信端口名稱):方向數(shù)據(jù)類型名稱;通信端口名稱(,通信端口名稱):方向數(shù)據(jù)類型名稱);END實(shí)體名稱;entity eq comp4is port (a,b 3360 in STD _ logic _ vector(

2、3 down to 0);equal : out STD _ logic);End eqcomp4,4,基本數(shù)據(jù)類型:BIT和BIT_VECTOR STD_LOGIC和STD_LOGIC_VECTOR通信端口模式,5,Out和Buffer之間的區(qū)別,entity test1 is port BEnd test1architecture a of test1 is begin b=not(a);c=b;-Error end a;entity test 2 is port(a : in STD _ logic;B : buffer std _ logicc : out STD _ logic);E

3、nd test2architecture a of test 2 is begin b=not(a);c=b;end a;結(jié)論:全部表示輸出,但是BUFFER聲明的信號(hào)可以反饋到實(shí)體內(nèi)部,而OUT聲明的信號(hào)則不是。6,核心描述設(shè)計(jì)單元的特定功能結(jié)構(gòu)具有三種茄子描述方法行為描述(behavioral)數(shù)據(jù)流描述(dataflow)結(jié)構(gòu)描述(structural)格式:ARCHITECTURE核心名稱OF實(shí)體名稱IS定義語句內(nèi)部信號(hào),常量順序語句:在進(jìn)程語句(PROCESS)內(nèi)按寫入順序執(zhí)行。示例:entity sample is port (a,b : in STD _ logicc : out

4、 STD _ logic);End samplearchitecture beha of sample is signal d : STD _ logic;begin d=a and b;c=not(d);End beha,8,3.1.2組件的子結(jié)構(gòu)說明三種茄子形式的子結(jié)構(gòu)說明:塊說明(塊說明)進(jìn)程說明(進(jìn)程說明)子節(jié)目說明(子說明)BLOCK語句說明格式:塊標(biāo)簽:BLOCK BLOCK中語句的執(zhí)行順序:并行執(zhí)行,9q : OUT BIT);END muxarchitecture connect of mux is signal TM P1、tmp2、tmp : bitbegin cale :

5、 block begin TM P1=D1和selTmp2=d0 AND(非sel);T MP3=tmp 1或tmp 2;Q=tmp3END BLOCK caleEND connect,10,進(jìn)程描述格式:進(jìn)程名稱:PROCESS(信號(hào)1,信號(hào)2,)begin: endprocess進(jìn)程名稱;敏感度:PROCESS的輸入信號(hào),寫在“PROCESS”后面的括號(hào)中。如果PROCESS具有的敏感度發(fā)生變化,則PROCESS中的語句將執(zhí)行一次。語句執(zhí)行順序:按順序執(zhí)行。多進(jìn)程關(guān)系:并行執(zhí)行;11示例:電路entity mux1 is port (d0、D1、sel : in bitq : OUT BI

6、T);END mux1architecture connect of mux 1 is begin cale : process(d0、D1、sel) variable tmp 1、tmp 2、t MP3 3360 bit-會(huì)話中定義的變量BEGIN tmp1:=d0 AND sel-輸入端口將tmp2:=d1 AND (NOT sel)值分配給變量。Tmp 3:=tmp 1或tmp 2;Q=tmp3END PROCESS caleEND connect,12,子程序說明了過程格式PROCEDURE過程名(參數(shù)1,參數(shù)2) IS定義變量語句BEGIN序列處理語句END過程名。參數(shù):可以是輸入或

7、輸出語句的執(zhí)行方式。調(diào)用方在調(diào)用過程之前將初始值傳遞給過程的輸入?yún)?shù)值,然后過程語句開始,過程結(jié)構(gòu)中的語句從上到下執(zhí)行,執(zhí)行結(jié)束后,輸出值將復(fù)制到調(diào)用方的“OUT”和“INOUT”定義的變量或信號(hào)中。,13例:查找最大電路庫IEEEuse IEEE . STD _ logic _ 1164 . all;Entity con pro isport (da,db 3360 in STD _ logic _ vector(7 down to 0);o 1: out STD _ logic _ vector(7 down to 0);End conpro,14,architecture beha of

8、 con prois,procedure max(a : in STD _ logic _ vector;B:in std _ logic _ vectorq : out STD _ logic _ vector)is begin if(ab)then q :=a;else q :=b;End ifEnd max,beginprocess (da,db)variable temp 3360 STD _ logic _ vector(7 down to 0);Begin max(da、db、temp);O1=tempEnd processEnd beha,15,函數(shù)格式FUNCTION函數(shù)名稱(

9、參數(shù)1,參數(shù)2)。)RETURN數(shù)據(jù)類型名稱IS定義變量語句BEGIN順序處理語句RETURN返回變量名稱。END函數(shù)名稱;參數(shù):輸入?yún)?shù)的數(shù)量沒有限制,在函數(shù)名稱后的括號(hào)中聲明,在return語句后僅聲明其中一個(gè)輸出參數(shù)??梢院雎运蠭/o參數(shù)屬性。語句執(zhí)行方法:按順序執(zhí)行。16示例:最大電路architecture beha of con pack is,function max(a : STD _ logic _ vector;b : STD _ logic _ vector)return STD _ logic _ vector is variable temp 3360 STD _

10、logic _ vector(7 down to bectorelse temp 3360=b:End if;Return tempEnd max,begin o1=max(da,db);End beha,17,3.1.3軟件包集合,庫和配置庫:存儲(chǔ)編譯后數(shù)據(jù)集合庫的族IEEE庫:std_logic STD庫:standard,textio WORK庫:ASIC庫:用戶定義庫:Use library ,18例:LIBRARY IEEE;USE IEEE。STD_LOGIC_1164。ALL示例:LIBRARY STD;USE STD。TEXTIO . ALL庫的范圍:從實(shí)體說明開始,到該庫所屬

11、的結(jié)構(gòu),再到配置。如果在一個(gè)源程序中出現(xiàn)兩個(gè)或多個(gè)實(shí)體的使用說明語句,則必須在每個(gè)實(shí)體說明語句之前重復(fù)寫入。示例:19,Library IEEEuse IEEE . STD _ logic _ 1164 . all;Entity and1 is End and1architecture beha 1 of and 1 is begin end beha 1;Library IEEEuse IEEE . STD _ logic _ 1164 . all;Entity and1 is End and1architecture beha 2 of and 1 is begin end beha 2;

12、20,包集合:在庫結(jié)構(gòu)中編譯為分層格式PACKAGE包集合名稱IS說明語句END包集合名稱。PACKAGE BODY包名稱IS說明語句END包集合名稱;使用use library _ name . package _ name . item _ name(例如,使用在軟件包集合bpac中定義的max函數(shù))。21,library IEEEuse IEEE . STD _ logic _ 1164 . all;package bpac is function max(a : STD _ logic _ vector;b : STD _ logic _ vector)return STD _ log

13、ic _ vector;End bpac,package body bpac is function max(a : STD _ logic _ vector;b : STD _ logic _ vector)return STD _ logic _ vector is variable temp 3360 STD _ logic _ vector(7 down to bectorelse temp 3360=b:End if;Return tempEnd maxEnd bpac,22,library IEEEuse IEEE . STD _ logic _ 1164 . all;Librar

14、y workuse work . bpac . all;Entity conpack isport (da,db 3360 in STD _ logic _ vector(7 down to 0);o 1: out STD _ logic _ vector(7 down to 0);End conpackarchitecture beha of con pack is begin O1=max(da,db);End beha,當(dāng)前工作庫可以省略,23,配置角色:描述層和層之間的連接以及實(shí)體和結(jié)構(gòu)之間的連接,以便于調(diào)試和設(shè)計(jì)。格式:CONFIGURATION配置名稱OF實(shí)體名稱IS說明語句END

15、配置名稱;示例:使用兩種不同結(jié)構(gòu)的配置實(shí)施RS觸發(fā)器Entity RS is port (set,reset : in bit);q,QB : BUFFER BIT);END RS,24,architecture rsf f1 of RS is component NAND 2 port(a,b : in bitc : OUT BIT);END COMPONENTbegin u 13360 NAND 2 port map(a=set,b=QB,c=q)u 23360 NAND 2 port map(a=reset,b=q,c=)architecture rsf F2 of RS is begi

16、n q=not(QB and set);Qb=not (q和reset);END rsff2選擇CONFIGRATION rscon OF RS IS-rsf f1 FOR rsf f1 END FOR rsf f1 END。END rscon、25,32 VHDL語言的數(shù)據(jù)類型和運(yùn)算符321 VHDL語言的對(duì)象(數(shù)據(jù)對(duì)象)對(duì)象:在VHDL語言中,可以指定值的所有對(duì)象稱為對(duì)象。信號(hào)分類:表示物理設(shè)計(jì)中的硬件連接線。變量:表示存放特定值的托架。常數(shù):表示數(shù)字電路中的電源和地線。26、常數(shù)語義:將固定值賦給常數(shù)名稱。整合后連接電源和地面。格式:常數(shù)常數(shù)名稱:資料類型:=表示式;例如:CONSTANT Vcc: REAL:=5.0變量格式:變量名:數(shù)據(jù)類型約束:=表達(dá)式;例如:variable count 3360 integer range 0 to 2553360=10;特征:臨時(shí)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論