用狀態(tài)機實現(xiàn)序列檢測器.pdf

ID:53733762

大小:135.09 KB

頁數(shù):11頁

時間:2020-04-20

用狀態(tài)機實現(xiàn)序列檢測器.pdf_第1頁
用狀態(tài)機實現(xiàn)序列檢測器.pdf_第2頁
用狀態(tài)機實現(xiàn)序列檢測器.pdf_第3頁
用狀態(tài)機實現(xiàn)序列檢測器.pdf_第4頁
用狀態(tài)機實現(xiàn)序列檢測器.pdf_第5頁
資源描述:

《用狀態(tài)機實現(xiàn)序列檢測器.pdf》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、用狀態(tài)機實現(xiàn)序列檢測器1實驗?zāi)康恼莆绽糜邢逘顟B(tài)機實現(xiàn)一般時序邏輯分析的方法,了解一般狀態(tài)機的設(shè)計與應(yīng)用。2實驗內(nèi)容設(shè)計一序列檢測器并在SmartSOPC實驗箱上進行硬件測試。利用Quartus

2、

3、軟件進行設(shè)計、仿真驗證,最后進行引腳鎖定并完成硬件測試。用K3控制復(fù)位;K4控制狀態(tài)機的時鐘;K1~K2控制輸入待檢預(yù)置數(shù)和檢測預(yù)置數(shù)(檢測密碼),并在數(shù)碼管12和45上顯示。上電時,按K2鍵數(shù)碼管1顯示的數(shù)累增;按1次K1后,按K2則數(shù)碼管2顯示的數(shù)累增;再按1次K1后,按K2則數(shù)碼管4顯示的數(shù)累增;再按1次K1后,按K2則數(shù)碼管5顯示的數(shù)累增;再按1次

4、K1后,按K2則數(shù)碼管1顯示的數(shù)累增,如此循環(huán)。3實驗原理(1)序列檢測器可用于檢測由二進制碼組成的脈沖序列信號。當序列檢測器連續(xù)收到一組串行二進制碼后,如果這組序列碼與檢測器中預(yù)先設(shè)置的序列碼相同,則輸出1,否則輸出0。這種檢測的關(guān)鍵是必須收到連續(xù)的正確碼,所以要求檢測器必須對前一次接受到的序列碼做記憶分析,直到在連續(xù)檢測中所收到的每一位二進制碼都與預(yù)置序列碼對應(yīng)相同。在檢測過程中,只要有一位不相等都將回到初始狀態(tài)重新開始檢測,不考慮重疊的可能。(2)為了配合硬件測試,需要設(shè)計一個測試模塊(schk_test),該模塊主要產(chǎn)生序列檢測器所需的時鐘、復(fù)位

5、、串行輸入序列碼及預(yù)置數(shù)等信號。對模塊的各端口說明如下:硬件設(shè)計語言—袁紅星clock系統(tǒng)時鐘輸入(48MHz)key[3..0]按鍵輸入disp[3..0]序列檢測器檢測結(jié)果輸入(顯示于數(shù)碼管8)sda串行序列碼輸出clkout序列檢測器狀態(tài)機時鐘輸出rstout序列檢測器復(fù)位信號輸出dat[7..0]檢測預(yù)置數(shù)輸出led7..0]LED輸出seg[7..0]數(shù)碼管段輸出dig[7..0]數(shù)碼管位輸出4實驗步驟(1)啟動Quartus

6、

7、建立一個空白工程,然后命名為schk_top.qpf。(2)新建VerilogHDL源程序文件schk_test(測

8、試信號生成模塊),輸入程序代碼并保存,將VerilogHDL源程序文件轉(zhuǎn)換成圖形文件。若在編譯過程中發(fā)現(xiàn)錯誤,則找出并更正錯誤,直至編譯成功為止。(3)新建VerilogHDL源程序文件schk_v(序列檢測模塊),輸入程序代碼并保存,將VerilogHDL源程序文件轉(zhuǎn)換成圖形文件。若在編譯過程中發(fā)現(xiàn)錯誤,則找出并更正錯誤,直至編譯成功為止。(4)新建圖形設(shè)計文件命名為schk_top.bdf并保存,其模塊原理圖如下:(5)選擇目標器件并對相應(yīng)的引腳進行定義鎖定,在這里所選擇的器件為EP1C12Q240C8芯片,將未使用的引腳設(shè)置為三態(tài)輸入。引腳分配如下

9、表所示:信號引腳信號引腳信號引腳seg[0]169seg[7]164dig[6]238硬件設(shè)計語言—袁紅星seg[1]170dig[0]160dig[7]239seg[2]167dig[1]159key[0]121seg[3]168dig[2]162key[1]122seg[4]165dig[3]161key[2]123seg[5]166dig[4]236key[3]124seg[6]163dig[5]237clock28(6)將schk_top.bdf設(shè)置為頂層實體,對該工程進行全程編譯處理,若在編譯過程中發(fā)現(xiàn)錯誤,則找出錯誤并更正錯誤,直至編譯成功為

10、止。(7)硬件連接、下載程序。5實驗程序模塊1為:moduleschk_test(clock,key,sda,clkout,rstout,dat,disp,led,seg,dig);//外接I/O口inputclock;//系統(tǒng)時鐘input[3:0]key;//按鍵輸入output[7:0]led;//輸出接LEDoutput[7:0]seg;//輸出接數(shù)碼管段碼output[7:0]dig;//輸出接數(shù)碼管位碼//序列碼檢測模塊I/O口outputsda;//串行序列碼輸出outputclkout;//產(chǎn)生時鐘信號輸出outputrstout;//產(chǎn)

11、生復(fù)位信號輸出output[7:0]dat;//8位預(yù)置數(shù)輸出input[3:0]disp;//輸入檢測結(jié)果reg[7:0]dat_r;//輸出寄存器reg[7:0]led_r;reg[7:0]seg_r;硬件設(shè)計語言—袁紅星reg[7:0]dig_r;reg[16:0]count;//時鐘分頻計數(shù)器reg[7:0]data;//內(nèi)部寄存器reg[8:0]data_shift;reg[3:0]dout1,dout2,dout3,buff;//消抖寄存器reg[2:0]cnt3;//數(shù)碼管掃描計數(shù)器reg[1:0]cnt2;reg[3:0]disp_dat

12、;//數(shù)碼管掃描顯存regdiv_clk;//分頻時鐘,用于消抖和掃描wire[

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。
关闭