版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
3.3
VHDL順序語句
順序語句只能出現(xiàn)在進(jìn)程(PROCESS)、過程(PROCEDURE)和函數(shù)(FUNCTION)中,其特點(diǎn)與傳統(tǒng)的計(jì)算機(jī)編程語句類似,是按程序書寫的順序自上而下、一條一條地執(zhí)行。利用順序語句可以描述數(shù)字邏輯系統(tǒng)中的組合邏輯電路和時(shí)序邏輯電路。VHDL的順序語句有賦值語句、流程控制語句、等待語句、子程序調(diào)用語句、返回語句、空操作語句等六類。
3.3.1
VHDL賦值語句順序語句——在進(jìn)程(PROCESS)或子程序(PROCEDURE)、函數(shù)(FUNCTION)中使用,按程序書寫的順序自上而下、一個(gè)一個(gè)語句地執(zhí)行;并行語句——出現(xiàn)在結(jié)構(gòu)體中,各語句并行(同步)執(zhí)行,與書寫的順序無關(guān)。
一、變量賦值語句格式:目標(biāo)變量名:=賦值源(表達(dá)式);例如:x:=5.0;二、
信號賦值語句格式:目標(biāo)信號名<=賦值源;例如:y<=‘1’;說明:該語句若出現(xiàn)在進(jìn)程或子程序中則是順序語句,若出現(xiàn)在結(jié)構(gòu)體中則是并行語句。三、數(shù)組元素賦值例如:SIGNALa,b:STD
LOGIC
VECTOR(1TO4);
a<=“1101”;
a(1TO2)<=“10” a(1TO2)<=b(2TO3);
3.3.2
流程控制語句
一、IF語句格式1:IF條件句Then
順序語句; ENDIF;格式2:IF條件句Then
順序語句; ELSE
順序語句; ENDIF;格式3:IF條件句Then
順序語句; ELSIF條件句Then
順序語句;
… ELSE
順序語句; ENDIF;例1:用VHDL語言描述下圖硬件電路cabyLIBRARYIEEE;USEIEEE.STD
LOGIC
1164.ALLENTITYcontrol
stmtsISPORT(a,b,c:INBOOLEAN;
y:OUTBOOLEAN);ENDcontrol
stmts;ARCHITECTUREexample1OFcontrol
stmtsISBEGIN PROCESS(a,b,c)
VARIABLEn:BOOLEAN;
BEGIN IFaTHENn:=b;
ELSE n:=c;
ENDIF; y<=n;
ENDPROCESS;ENDexample1;
例2,8線-3線優(yōu)先編碼器的設(shè)計(jì)
(真值表)輸入
輸出a0a1a2a3a4a5a6a7y0y1y2xxxxxxx0111xxxxxx01011xxxxx011101xxxx0111001xxx01111110xx011111010x011111110001111111000LIBRARYIEEE;USEIEEE.STD
LOGIC
1164.ALLENTITYcoderISPORT(a:INSTD
LOGIC
VECTOR(0TO7);
y:OUTSTD
LOGIC
VECTOR(0TO2));ENDcoder;ARCHITECTUREexample2OFcoderISBEGINPROCESS(a)
BEGIN IF(a(7)=‘0’)THENy<=”111”;
ELSIF(a(6)=’0’) THENy<=”011”; ELSIF(a(5)=’0’) THENy<=”101”; ELSIF(a(4)=’0’) THENy<=”001”; ELSIF(a(3)=’0’) THENy<=”110”; ELSIF(a(2)=’0’) THENy<=”010”; ELSIF(a(1)=’0’) THENy<=”100”; ELSEy<=”000”; ENDIF; ENDPROCESS;ENDexample2;
二、CASE語句格式:CASE表達(dá)式IS When選擇值=>順序語句; When選擇值=>順序語句;
… WhenOTHERS=>順序語句;
ENDCASE;說明:“=>”不是運(yùn)算符,相當(dāng)“THEN”例3,用CASE語句描述4選1數(shù)據(jù)選擇器數(shù)據(jù)選擇器as2zbcds1LIBRARYIEEE;USEIEEE.STD
LOGIC
1164.ALLENTITYmux41ISPORT(s1,s2:INSTD
LOGIC;
a,b,c,d:INSTD
LOGIC;
z:OUTSTD
LOGIC);ENDmux41;ARCHITECTUREexample3OFmux41ISSIGNALs:STD
LOGIC
VECTOR(1DOWNTO0)BEGIN s<=s1&s2 PROCESS(s1,s2,a,b,c,d)
BEGIN CASEsIS WHEN“00”=>z<=a;
WHEN“01”=>z<=b;
WHEN“10”=>z<=c;
WHEN“11”=>z<=d;
WHENOTHERS=>z<=‘X’;
ENDCASE;
ENDPROCESS;ENDexample3;
三、FORLOOP語句格式1:[標(biāo)號:]FOR循環(huán)變量IN初值TO終值LOOP
順序語句; ENDLOOP[標(biāo)號];例4,8位奇偶校驗(yàn)器的描述8位奇偶校驗(yàn)器a(0)za(1)a(2)a(3)a(4)a(5)a(6)a(7)8位奇偶校驗(yàn)器za(7..0)LIBRARYIEEE;USEIEEE.STD
LOGIC
1164.ALLENTITYp
checkISPORT(a:INSTD_LOGIC_VECTOR(7DOWNTO0);
y:OUTSTD
LOGIC);ENDp
check;ARCHITECTUREexample4OFp
checkISBEGINPROCESS(a)VARIABLEtemp:STD_LOGIC; BEGIN temp:='0'; FORnIN7DOWNTO0LOOP temp:=tempXORa(n); ENDLOOP; y<=temp; ENDPROCESS; ENDexample4;
四、NEXT語句格式:NEXT[標(biāo)號][WHEN條件];功能:(1)NEXT——無條件結(jié)束本次循環(huán)(2)NEXT標(biāo)號——結(jié)束本次循環(huán),從“標(biāo)號”規(guī)定的位置繼續(xù)循環(huán);(3)NEXTWHEN條件——當(dāng)“條件”滿足時(shí)結(jié)束本次循環(huán),否則繼續(xù)循環(huán)。五、EXIT語句格式:EXIT[標(biāo)號][WHEN條件];功能:(1)EXIT——無條件跳出循環(huán)(2)EXIT標(biāo)號——跳出循環(huán),從“標(biāo)號”規(guī)定的位置開始循環(huán);(3)EXITWHEN條件——當(dāng)“條件”滿足時(shí)跳出循環(huán),否則繼續(xù)循環(huán)。
3.3.3
WAIT語句
一、格式1:WAITON敏感信號表;功能:將運(yùn)行的程序掛起直至敏感信號表中的任一信號發(fā)生變化時(shí)結(jié)束掛起,重新執(zhí)行程序。例如:SIGNALs1,s2:STD
LOGIC;
PROCESS … WAITONs1,s2;
ENDPROCESS;注意:含WAIT語句的進(jìn)程PROCESS的括弧中后不能加敏感信號,否則是非法的,例如
PROCESS(s1,s2)二、格式2:WAITUNTIL條件表達(dá)式;功能:將運(yùn)行的程序掛起直至表達(dá)式中的敏感信號發(fā)生變化,而且滿足表達(dá)式設(shè)置的條件時(shí)結(jié)束掛起,重新執(zhí)行程序。例如:WAITUNTILenable=‘1’;3.3.4
斷言(ASSERT)語句格式:ASSERT條件表達(dá)式[ REPORT字符串][ SEVERITY錯誤等級]功能:當(dāng)條件為“真”時(shí),向下執(zhí)行另一個(gè)語句,為“假”時(shí),則輸出“字符串”信息并指出“錯誤等級”。用途:用于仿真、調(diào)試程序時(shí)的人機(jī)對話。例如ASSERT(S=‘1’ANDR=‘1’)REPORT“BothvaluesofSandRareequal‘1’”SEVERITYERROR;錯誤等級:NOTE(注意),WARNING(警告),ERROR(出錯),F(xiàn)AILURE(失?。?.3.5
屬性(ATTRIBUTE)描述與定義語句
功能:用于檢出時(shí)鐘邊沿、完成定時(shí)檢查、獲得未約束的數(shù)據(jù)類型的范圍等。格式:屬性測試項(xiàng)目名‘屬性標(biāo)識符;--S‘屬性標(biāo)識符預(yù)定義屬性函數(shù)標(biāo)識符及功能:例如:TYPEnumberISINTEGERRANGE9DOWNTO0;
I:=number‘LEFT;--I=9 I:=number‘RIGTH;--I=0 I:=number‘HIGH;--I=9 I:=number‘LOW;--I=0EVENT——表示對當(dāng)前的一個(gè)極小的時(shí)間段內(nèi)發(fā)生事件的情況進(jìn)行檢測(如時(shí)鐘的邊沿)。例如:clock‘EVENT --檢測以clock為屬性測試項(xiàng)目的事件
clock‘EVENTANDclock=‘1’; --檢測clock的上升沿
clock‘EVENTANDclock=‘0’; --檢測clock的下降沿LAST_EVENT——從信號最近一次的發(fā)生至今所經(jīng)歷的時(shí)間,常用于檢查定時(shí)時(shí)間、建立時(shí)間、保持時(shí)間和脈沖寬度等。例如:檢查D觸發(fā)器的D輸入端的建立時(shí)間是否達(dá)到要求。LIBRARYIEEE;USEIEEE.STD
LOGIC
1164.ALLENTITYdffISGENERIC(setup_time,hold_time:TIME); PORT(d,clk:INSTD
LOGIC;
q:OUTSTD
LOGIC);BEGINSetup_checkPROCESS(clk)
BEGIN IF(clk=’1’)AND(clk’EVENT)THEN ASSERT(d’LAST_EVENT>=setup_time) REPORT“SETUPVIOLATION” SEVERITYERROR; ENDIF;ENDPROCESS;ENDdff;ARCHITECTUREdff_behavOFdffISBEGINDff_PROCESS:PROCESS(clk) BEGIN IF( clk=’1’)AND(
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年博羅縣長寧鎮(zhèn)福田衛(wèi)生院公開招聘臨床醫(yī)師和臨床護(hù)士各1名備考題庫完整答案詳解
- 2025年浙江大學(xué)醫(yī)學(xué)院紀(jì)俊峰團(tuán)隊(duì)招聘科研助理備考題庫參考答案詳解
- 2025年菏澤醫(yī)學(xué)??茖W(xué)校公開招聘高層次人才10人備考題庫及答案詳解1套
- 2025年金平縣金水河鎮(zhèn)衛(wèi)生院招聘鄉(xiāng)村醫(yī)生備考題庫完整答案詳解
- 2025年海口市瓊山區(qū)龍?zhí)伶?zhèn)中心幼兒園勞務(wù)派遣服務(wù)項(xiàng)目遴選備考題庫附答案詳解
- 2025年三明市工會社會工作者及專職集體協(xié)商指導(dǎo)員補(bǔ)充招聘21人備考題庫及完整答案詳解1套
- 2025年全國青少年井岡山革命傳統(tǒng)教育基地管理中心社會人員公開招聘備考題庫及參考答案詳解一套
- 四川省擔(dān)保集團(tuán)有限公司2025年下半年公開招聘備考題庫參考答案詳解
- 2025貴州六盤水市水城區(qū)招聘城市社區(qū)工作者162人筆試備考重點(diǎn)題庫及答案解析
- 2025北京首都醫(yī)科大學(xué)宣武醫(yī)院面向應(yīng)屆畢業(yè)生(含社會人員)招聘198人筆試備考重點(diǎn)試題及答案解析
- 太平鳥服裝庫存管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)的任務(wù)書
- 輔導(dǎo)員基礎(chǔ)知識試題及答案
- 75個(gè)高中數(shù)學(xué)高考知識點(diǎn)總結(jié)
- 《公共部門人力資源管理》機(jī)考真題題庫及答案
- 《數(shù)字影像設(shè)計(jì)與制作》統(tǒng)考復(fù)習(xí)考試題庫(匯總版)
- 國際學(xué)術(shù)交流英語知到章節(jié)答案智慧樹2023年哈爾濱工業(yè)大學(xué)
- DB14-T 2644-2023旅游氣候舒適度等級劃分與評價(jià)方法
- EVA福音戰(zhàn)士-國際動漫課件
- GB/T 37563-2019壓力型水電解制氫系統(tǒng)安全要求
- GB/T 25085.3-2020道路車輛汽車電纜第3部分:交流30 V或直流60 V單芯銅導(dǎo)體電纜的尺寸和要求
- GB/T 1182-2018產(chǎn)品幾何技術(shù)規(guī)范(GPS)幾何公差形狀、方向、位置和跳動公差標(biāo)注
評論
0/150
提交評論