




已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
六、VHDL語(yǔ)言的并行語(yǔ)句,1、并行信號(hào)賦值語(yǔ)句,4、進(jìn)程語(yǔ)句,3、塊語(yǔ)句,2、條件信號(hào)賦值語(yǔ)句,5、元件例化語(yǔ)句,6、生成語(yǔ)句,7、并行過(guò)程調(diào)用語(yǔ)句,結(jié)構(gòu)體,1,結(jié)構(gòu)體中的并行語(yǔ)句模塊,2,1、并行信號(hào)賦值語(yǔ)句,賦值目標(biāo)=表達(dá)式,例ARCHITECTUREcurtOFbc1ISSIGNALs1,e,f,g,h:STD_LOGIC;BEGINoutput1=aANDb;output2=c+d;g=eORf;h=eXORf;s1=g;ENDARCHITECTUREcurt;,3,2、條件信號(hào)賦值語(yǔ)句,賦值目標(biāo)=表達(dá)式WHEN賦值條件ELSE表達(dá)式WHEN賦值條件ELSE.表達(dá)式;,例ENTITYmuxISPORT(a,b,c:INBIT;p1,p2:INBIT;z:OUTBIT);END;ARCHITECTUREbehvOFmuxISBEGINz=aWHENp1=1ELSEbWHENp2=1ELSEc;END;,4,選擇信號(hào)賦值語(yǔ)句,WITH選擇表達(dá)式SELECT賦值目標(biāo)信號(hào)=表達(dá)式WHEN選擇值,表達(dá)式WHEN選擇值,.,表達(dá)式WHEN選擇值;,例.WITHseltSELECTmuxout=aWHEN0|1,-0或1bWHEN2TO5,-2或3,或4或5cWHEN6,dWHEN7,ZWHENOTHERS;.,5,3、塊語(yǔ)句,塊標(biāo)號(hào):BLOCK(塊保護(hù)表達(dá)式)接口說(shuō)明;類(lèi)屬說(shuō)明;BEGIN并行語(yǔ)句;ENDBLOCK塊標(biāo)號(hào);,與大部分的VHDL語(yǔ)句不同,BLOCK語(yǔ)句的應(yīng)用,包括其中的類(lèi)屬說(shuō)明和端口定義,都不會(huì)影響對(duì)原結(jié)構(gòu)體的邏輯功能的仿真結(jié)果。,6,例.b1:BLOCKSIGNALs1:BIT;BEGINS1=aANDb;b2:BLOCKSIGNALs2:BIT;BEGINs2=cANDd;b3:BLOCKBEGINZ=s2;ENDBLOCKb3;ENDBLOCKb2;y=s1;ENDBLOCKb1;.,7,4、進(jìn)程語(yǔ)句,進(jìn)程標(biāo)號(hào):PROCESS(敏感信號(hào)參數(shù)表)IS進(jìn)程說(shuō)明部分BEGIN順序描述語(yǔ)句;ENDPROCESS進(jìn)程標(biāo)號(hào);,PROCESS語(yǔ)句結(jié)構(gòu)的一般表達(dá)格式如下,在一個(gè)結(jié)構(gòu)體中多個(gè)PROCESS語(yǔ)句可以同時(shí)并發(fā)運(yùn)行,而進(jìn)程內(nèi)部語(yǔ)句之間是順序關(guān)系。PROCESS語(yǔ)句在VHDL程序中,是描述硬件并行工作行為的最常用、最基本的語(yǔ)句。,8,PROCESS組成,PROCESS語(yǔ)句結(jié)構(gòu),進(jìn)程說(shuō)明,順序描述語(yǔ)句,敏感信號(hào)參數(shù)表,信號(hào)賦值語(yǔ)句,變量賦值語(yǔ)句,進(jìn)程啟動(dòng)語(yǔ)句,子程序調(diào)用語(yǔ)句,順序描述語(yǔ)句,進(jìn)程跳出語(yǔ)句,9,(1)進(jìn)程說(shuō)明部分主要定義一些局部量,可包括數(shù)據(jù)類(lèi)型、常數(shù)、屬性、子程序等。但需注意,在進(jìn)程說(shuō)明部分中不允許定義信號(hào)和共享變量。,(2)順序描述語(yǔ)句部分可分為賦值語(yǔ)句、進(jìn)程啟動(dòng)語(yǔ)句、子程序調(diào)用語(yǔ)句、順序描述語(yǔ)句和進(jìn)程跳出語(yǔ)句等。,(3)為啟動(dòng)進(jìn)程,在進(jìn)程中必須包含有一個(gè)顯式的敏感信號(hào)量表或者包含一個(gè)WAIT語(yǔ)句;敏感信號(hào)表應(yīng)當(dāng)緊跟在PROCESS之后,含有敏感信號(hào)表的進(jìn)程語(yǔ)句中不允許再顯式出現(xiàn)WAIT語(yǔ)句。,說(shuō)明,10,1.PROCESS為一無(wú)限循環(huán)語(yǔ)句,2.PROCESS語(yǔ)句具有順序/并行運(yùn)行雙重性,3.進(jìn)程必須由敏感信號(hào)的變化來(lái)啟動(dòng),4.信號(hào)是多個(gè)進(jìn)程間的通信線,PROCESS語(yǔ)句特點(diǎn),5.一個(gè)進(jìn)程中只允許描述對(duì)應(yīng)于一個(gè)時(shí)鐘信號(hào)的同步時(shí)序邏輯,11,例:ENTITYmulISPORT(a,b,c,selx,sely:INBIT;data_out:OUTBIT);ENDmul;ARCHITECTUREexOFmulISSIGNALtemp:BIT;BEGINp_a:PROCESS(a,b,selx)BEGINIF(selx=0)THENtemp=a;ELSEtemp=b;ENDIF;ENDPROCESSp_a;p_b:PROCESS(temp,c,sely)BEGINIF(sely=0)THENdata_out=temp;ELSEdata_out=c;ENDIF;ENDPROCESSp_b;ENDex;,12,上例的綜合結(jié)果,13,例:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCNT10ISPORT(CLR:INSTD_LOGIC;IN1:INSTD_LOGIC_VECTOR(3DOWNTO0);OUT1:OUTSTD_LOGIC_VECTOR(3DOWNTO0);ENDENTITYCNT10;ARCHITECTUREARTOFCNT10ISBEGINPROCESS(IN1,CLR)ISBEGINIF(CLR=1ORIN1=1001)THENOUT1S2,B=D1);-名字關(guān)聯(lián)方式U3:ND2PORTMAP(S1,S2,C=Z1);-混合關(guān)聯(lián)方式ENDARCHITECTUREARTORD41;,例:,20,6、生成語(yǔ)句,標(biāo)號(hào):FOR循環(huán)變量IN取值范圍GENERATE說(shuō)明;BEGIN并行語(yǔ)句;ENDGENERATE標(biāo)號(hào);,表達(dá)式TO表達(dá)式;-遞增方式,如1TO5表達(dá)式DOWNTO表達(dá)式;-遞減方式,如5DOWNTO1,標(biāo)號(hào):IF條件GENERATE說(shuō)明;BEGIN并行語(yǔ)句;ENDGENERATE標(biāo)號(hào);,取值范圍,生成語(yǔ)句有一種復(fù)制作用,在設(shè)計(jì)中,只要根據(jù)某些條件,設(shè)定好某一元件或設(shè)計(jì)單位,就可以利用生成語(yǔ)句復(fù)制一組完全相同的并行元件或設(shè)計(jì)單元電路結(jié)構(gòu)。,:,生成語(yǔ)句的兩種形式,21,例:利用生成語(yǔ)句產(chǎn)生的八個(gè)相同的電路模塊,22,主要的VHDL程序如下:COMPONENTCOMPISPORT(X:INSTD_LOGIC;Y:OUTSTD_LOGIC);ENDCOMPONENTCOMP;SIGNALA,B:STD_LOGIC_VECTOR(0TO7);GEN:FORIINARANGEGENERATEU1:COMPPORTMAP(X=A(I),Y=B(I);ENDGENERATEGEN;,23,7、并行過(guò)程調(diào)用語(yǔ)句,PROCEDURE過(guò)程名(參數(shù)1;參數(shù)2;)IS聲明語(yǔ)句;BEGIN順序處理語(yǔ)句;END過(guò)程名;,并行過(guò)程調(diào)用語(yǔ)句可以作為一個(gè)并行語(yǔ)句直接出現(xiàn)在結(jié)構(gòu)體或塊語(yǔ)句中。并行過(guò)程調(diào)用語(yǔ)句的功能等效于包含了同一個(gè)過(guò)程調(diào)用語(yǔ)句的進(jìn)程。并行過(guò)程調(diào)用語(yǔ)句的語(yǔ)句調(diào)用格式與前面講的順序過(guò)程調(diào)用語(yǔ)句是相同的。,過(guò)程調(diào)用的實(shí)質(zhì)內(nèi)容要先裝入程序包中(Package):,24,過(guò)程名(關(guān)聯(lián)參數(shù)表);,并行過(guò)程調(diào)用:,位置關(guān)聯(lián)方式,名字關(guān)聯(lián)方式=,參數(shù)關(guān)聯(lián)方式,例:設(shè)有一過(guò)程PROCEDUREvect(a,b:INBIT;x,y:INOUTBIT);則調(diào)用時(shí):位置關(guān)聯(lián)方式:vect(in1,in2,out1,out2);名字關(guān)聯(lián)方式:vect(a=in1,b=in2,x=out1,y=out2);,25,使用說(shuō)明,1、過(guò)程的參數(shù)表中可以使用IN、OUT、INOUT三種;(不能理解為端口)2、過(guò)程可以返回多個(gè)變量(通過(guò)OUT、INOUT定義的參數(shù)返回);3、參數(shù)對(duì)象可以為常量(IN方式)、信號(hào)、變量;4、在進(jìn)程外的過(guò)程調(diào)用為并行過(guò)程調(diào)用;在進(jìn)程內(nèi)的為順序過(guò)程調(diào)用;,26,函數(shù)調(diào)用:,FUNCTION函數(shù)名(參數(shù)1;參數(shù)2)RETURN數(shù)據(jù)類(lèi)型名IS定義變量語(yǔ)句;BEGIN順序處理語(yǔ)句;RETURN返回變量名;END函數(shù)名;,函數(shù)調(diào)用的實(shí)質(zhì)內(nèi)容要先裝入程序包中(Package):,函數(shù)名(關(guān)聯(lián)參數(shù)表);,27,使用說(shuō)明,1、函數(shù)的參數(shù)表中只能為IN的信號(hào)與常量;2、函數(shù)返回值只有一個(gè)(通過(guò)RETURN實(shí)現(xiàn),由函數(shù)名傳給調(diào)用者);3、也可以像過(guò)程一樣使用位置關(guān)聯(lián)方式和名字關(guān)聯(lián)方式;,1、過(guò)程可以有多個(gè)返回值,函數(shù)只有一個(gè);2、參數(shù)傳遞方式不同:過(guò)程(INOUTINOUT)函數(shù)(IN),過(guò)程(Procedure)函數(shù)(Function)兩者的主要區(qū)別:,28,1庫(kù)的種類(lèi),A.IEEE庫(kù),B.STD庫(kù),C.WORK庫(kù),D.VITAL庫(kù),七、VHDL庫(kù),29,2庫(kù)的用法,LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.STD_ULOGIC;USEIEEE.STD_LOGIC_1164.RISING_EDGE;,USE語(yǔ)句的使用有兩種常用格式:USE庫(kù)名.程序包名.項(xiàng)目名;USE庫(kù)名.程序包名.ALL;,庫(kù)的作用范圍從一個(gè)實(shí)體說(shuō)明開(kāi)始到它所屬的結(jié)構(gòu)體、配置為止,當(dāng)有兩個(gè)實(shí)體時(shí),第二個(gè)實(shí)體前要另加庫(kù)和包的說(shuō)明。,30,程序包,常數(shù)說(shuō)明,VHDL數(shù)據(jù)類(lèi)型說(shuō)明,元件定義,子程序,定義程序包的一般語(yǔ)句結(jié)構(gòu)如下:PACKAGE程序包名IS-程序包首程序包首說(shuō)明部分;END程序包名;PACKAGEBODY程序包名IS-程序包體程序包體說(shuō)明部分以及包體內(nèi)順序語(yǔ)句;END程序包名;,3VHDL程序包,31,例:程序包首,PACKAGElogicISTYPEthree_level_logicIS(0,1,z);-數(shù)據(jù)類(lèi)型項(xiàng)目CONSTANTunknown_value:three_level_logic:=0;-常數(shù)項(xiàng)目FUNCTIONinvert(input:three_level_logic)RETURNthree_level_logic;-函數(shù)項(xiàng)目ENDlogic;,32,PACKAGEBODYlogicISFUNCTIONinvert(input:three_level_logic);-函數(shù)項(xiàng)目描述BEGINCASEinputISWHEN0=RETURN1;WHEN1=RETURN0;WHENZ=RETURNZ;ENDCASE;ENDinvert;ENDlogic;,程序包體,33,USElogic.three_level_logic,logic.invert;-使用數(shù)據(jù)類(lèi)型和函數(shù)兩個(gè)項(xiàng)目ENTITYinverterISPORT(x:INthree_level_logic;y:OUTthree_level_logic);ENDinverter;ARCHITECTUREinverter_bodyOFinverterISBEGINkk:PROCESSBEGINY=invert(x)AFTER10ns;WAITONx;ENDPROCESS;ENDinverter_body;,該包使用例:,34,PACKAGEsevenISSUBTYPEsegmentsisBIT_VECTOR(0TO6);TYPEbcdISRANGE0TO9;ENDseven;USEWORK.seven.ALL;-WORK庫(kù)默認(rèn)是打開(kāi)的,ENTITYdecoderISPORT(input:bcd;drive:outsegments);ENDdecoder;ARCHITECTUREsimpleOFdecoderISBEGINWITHinputSELECTdrive=B1111110WHEN0,B0110000WHEN1,B1101101WHEN2,B1111001WHEN3,B0110011WHEN4,B1011011WHEN5,B1011111WHEN6,B1110000WHEN7,B1111111WHEN8,B1111011WHEN9,B0000000WHENOTHERS;ENDsimple;,例:,35,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 從輔助工具到學(xué)習(xí)伙伴-談教育機(jī)器人的發(fā)展趨勢(shì)
- 天津美術(shù)學(xué)院《影視導(dǎo)演藝術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 鶴壁能源化工職業(yè)學(xué)院《植物學(xué)B》2023-2024學(xué)年第二學(xué)期期末試卷
- 鄂州職業(yè)大學(xué)《中醫(yī)藥資源與開(kāi)發(fā)利用》2023-2024學(xué)年第二學(xué)期期末試卷
- 中國(guó)計(jì)量大學(xué)現(xiàn)代科技學(xué)院《循證醫(yī)學(xué)與流行病學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 眉毛護(hù)膚知識(shí)培訓(xùn)課件圖
- 湖南大眾傳媒職業(yè)技術(shù)學(xué)院《馬克思主義文學(xué)理論下》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧農(nóng)業(yè)職業(yè)技術(shù)學(xué)院《英語(yǔ)語(yǔ)言學(xué)概論》2023-2024學(xué)年第二學(xué)期期末試卷
- 昆明醫(yī)科大學(xué)《害蟲(chóng)生物防治》2023-2024學(xué)年第二學(xué)期期末試卷
- 哈爾濱學(xué)院《土木工程計(jì)算機(jī)軟件應(yīng)用A》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年光大金甌資產(chǎn)管理有限公司招聘筆試參考題庫(kù)含答案解析
- 《國(guó)有資產(chǎn)管理》課件
- 苗木采購(gòu)管理規(guī)章制度
- 附件9:未取得國(guó)外國(guó)籍的聲明
- 2022版義務(wù)教育語(yǔ)文課程標(biāo)準(zhǔn)(2022版含新增和修訂部分)
- 新題型大綱樣題(考研英語(yǔ)一)
- 幼兒園課件:《鉛筆不能咬》
- 沒(méi)有斑馬線的馬路課件
- excel自動(dòng)生產(chǎn)計(jì)劃排程(至柔Ⅱ)
- 門(mén)窗工程掛靠合同書(shū)
- 班主任團(tuán)隊(duì)建設(shè)與管理
評(píng)論
0/150
提交評(píng)論