EDA技術(shù)-VHDL-4.11-用狀態(tài)機(jī)實(shí)現(xiàn)序列檢測(cè)器的設(shè)計(jì)_第1頁(yè)
EDA技術(shù)-VHDL-4.11-用狀態(tài)機(jī)實(shí)現(xiàn)序列檢測(cè)器的設(shè)計(jì)_第2頁(yè)
EDA技術(shù)-VHDL-4.11-用狀態(tài)機(jī)實(shí)現(xiàn)序列檢測(cè)器的設(shè)計(jì)_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、4.11 用狀態(tài)機(jī)實(shí)現(xiàn)序列檢測(cè)器的程序設(shè)計(jì)與仿真1 實(shí)驗(yàn)?zāi)康挠脿顟B(tài)機(jī)實(shí)現(xiàn)序列檢測(cè)器的設(shè)計(jì),并對(duì)其進(jìn)行仿真和硬什測(cè)試。2 實(shí)驗(yàn)原理序列檢測(cè)器可用于檢測(cè)一組或多組由二進(jìn)制碼組成的脈沖序列信號(hào),當(dāng)序列檢測(cè)器連續(xù)收到組串行二進(jìn)制碼后,如果這組碼與檢測(cè)器中預(yù)先設(shè)置的碼相同,則輸出“I”,否則輸出“0”。由于這種檢測(cè)的關(guān)鍵在于正確碼的收到必須是連續(xù)的,這就要求檢測(cè)器必須記住前一次的正確碼及正確序列,直到在連續(xù)的檢測(cè)中所收到的每一位碼都與預(yù)置數(shù)的對(duì)應(yīng)碼相同。在檢測(cè)過(guò)程中,任何一位不相等都將回到初始狀態(tài)重新開始檢測(cè)。該實(shí)驗(yàn)源程序描述的電路完成對(duì)序列數(shù)“11l00101”的檢測(cè),當(dāng)這一串序列數(shù)高位在前(左移)串

2、行進(jìn)入檢測(cè)器后,若此數(shù)與預(yù)置的密碼數(shù)相同,則輸出“A”,否則輸出“B”。3 實(shí)驗(yàn)內(nèi)容(1) 用VHDL語(yǔ)言編寫序列檢測(cè)器的源程序。 (2)將源程序進(jìn)行綜合、優(yōu)化及功能仿真,并給出仿真波形,了解控制信號(hào)的時(shí)序,最后進(jìn)行引腳鎖定并完成硬件測(cè)試實(shí)驗(yàn)。 建議用鍵7(PIO11)控制復(fù)位信號(hào)CLR;鍵6(PI09)控制狀態(tài)機(jī)工作時(shí)鐘CLK;待檢測(cè)串行系列數(shù)輸入DIN接PIO10(左移,最高位在前):指示輸出AB接PI039PI036(顯示于數(shù)碼管6),下載后:按實(shí)驗(yàn)板“系統(tǒng)復(fù)位”鍵:用鍵2和鍵1輸入2位十六進(jìn)制待測(cè)序列數(shù)“”;按鍵7復(fù)位(平時(shí)數(shù)碼6指示顯“B”):按鍵6(CLK)8次,這時(shí)若串行輸入的8

3、位二進(jìn)制序列碼(顯示于數(shù)碼 21和發(fā)光管D8D6)與預(yù)置碼”相同,則數(shù)碼6應(yīng)從原來(lái)的B變成A,表示序列檢測(cè)正確,否則仍為B。4 實(shí)驗(yàn)預(yù)習(xí)思考(1)說(shuō)明源程序的代碼表達(dá)的是什么類型的狀態(tài)機(jī),它的優(yōu)點(diǎn)是什么?詳述其功能和對(duì)序列數(shù)檢測(cè)的邏輯過(guò)程。(2) 寫出由兩個(gè)主控進(jìn)程構(gòu)成的相同功能的符號(hào)化Moore型有限狀態(tài)機(jī),畫出狀態(tài)圖,井給出其仿真測(cè)試波形。5 程序設(shè)計(jì)與仿真 (1)程序設(shè)計(jì)為此工程新建一個(gè)文件夾。啟動(dòng)Quartus軟件工作平臺(tái)。新建工程設(shè)計(jì)文件名為SCHK.vhd。在新建的VHDL模型窗口下編寫的源程序如下:LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL

4、;ENTITY SCHK IS PORT(DIN, CLK, CLR : IN STD_LOGIC; -串行輸入數(shù)據(jù)位/工作時(shí)鐘/復(fù)位信號(hào) AB : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); -檢測(cè)結(jié)果輸出END SCHK;ARCHITECTURE behav OF SCHK IS SIGNAL Q : INTEGER RANGE 0 TO 8 ; SIGNAL D : STD_LOGIC_VECTOR(7 DOWNTO 0); -8位待檢測(cè)預(yù)置數(shù)BEGIN D = ; -8位待檢測(cè)預(yù)置數(shù):密碼:E5H PROCESS( CLK, CLR ) BEGIN IF CLR

5、 = 1 THEN Q IF DIN = D(7) THEN Q = 1 ; ELSE Q IF DIN = D(6) THEN Q = 2 ; ELSE Q IF DIN = D(5) THEN Q = 3 ; ELSE Q IF DIN = D(4) THEN Q = 4 ; ELSE Q IF DIN = D(3) THEN Q = 5 ; ELSE Q IF DIN = D(2) THEN Q = 6 ; ELSE Q IF DIN = D(1) THEN Q = 7 ; ELSE Q IF DIN = D(0) THEN Q = 8 ; ELSE Q Q = 0 ; END CASE

6、 ; END IF ; END PROCESS ; PROCESS( Q ) -檢測(cè)結(jié)果判斷輸出 BEGIN IF Q = 8 THEN AB = 1010 ; -序列數(shù)檢測(cè)正確,輸出 A ELSE AB = 1011 ; -序列數(shù)檢測(cè)錯(cuò)誤,輸出 B END IF ; END PROCESS ;END behav ; (2) 創(chuàng)建工程及全程編譯完成源代碼輸入后即可創(chuàng)建工程。然后進(jìn)行全程編譯,檢查設(shè)計(jì)程序是否正確。(2)仿真請(qǐng)參照2.1.5節(jié)建立波形編輯文件進(jìn)行功能仿真,仿真結(jié)果如圖4.11.1所示,從圖中的仿真結(jié)果可知,輸入的待檢測(cè)的數(shù)是,當(dāng)8位數(shù)未檢測(cè)完成時(shí)輸出錯(cuò)誤結(jié)果為1011,當(dāng)檢測(cè)完成后,輸出為1010,表示檢測(cè)正確。圖4.11.1 序列檢測(cè)器仿真結(jié)果6 實(shí)驗(yàn)報(bào)告根據(jù)以上的實(shí)驗(yàn)內(nèi)容寫出實(shí)驗(yàn)報(bào)告,包括設(shè)計(jì)原理、程序設(shè)計(jì)、程序分析、仿真分析、硬件測(cè)試和詳細(xì)實(shí)驗(yàn)過(guò)程。7.實(shí)驗(yàn)練習(xí)題(3) 將8位待檢測(cè)預(yù)置數(shù)作

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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)論