6 計數(shù)器與序列檢測器仿真實驗報告_第1頁
6 計數(shù)器與序列檢測器仿真實驗報告_第2頁
6 計數(shù)器與序列檢測器仿真實驗報告_第3頁
6 計數(shù)器與序列檢測器仿真實驗報告_第4頁
6 計數(shù)器與序列檢測器仿真實驗報告_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGEPAGE4實驗六計數(shù)器與序列檢測器的仿真一、實驗內(nèi)容1.用VHDL語言設(shè)計一個按余3碼順序計數(shù)的計數(shù)器,并進行仿真與分析;2.用VHDL語言設(shè)計一個“1101001”位串的序列檢測器,并仿真與分析。二、實驗要求1.進實驗室前,請寫一份預(yù)習(xí)報告;進實驗室時經(jīng)指導(dǎo)老師檢查后,才可上機操作。2.預(yù)習(xí)報告內(nèi)容有:用VHDL語言編寫余3碼計數(shù)器程序;用VHDL語言編寫“1101001”序列檢測器程序。3.在文本編輯區(qū)使用VHDL硬件描述語言設(shè)計邏輯電路,再利用波形編輯區(qū)進行邏輯功能仿真,以此驗證電路的邏輯功能是否正確,最后在實驗箱上進行下載驗證。4.實驗結(jié)束前,由指導(dǎo)老師檢查了仿真波形和實驗箱上的實驗結(jié)果后方可離開。三、電路功能介紹1、計數(shù)器計數(shù)器:一般來說,在狀態(tài)圖中包含有一個循環(huán)(見下圖)的任何時鐘時序電路都可稱為計數(shù)器。計數(shù)器的模是指在循環(huán)中的狀態(tài)個數(shù)。一個有m個狀態(tài)的計數(shù)器稱為模m計數(shù)器,有時也稱為m分頻計數(shù)器。如果一個計數(shù)器的模不是2的冪,就會有多余狀態(tài),在正常工作時是不用這些狀態(tài)的。最常用的計數(shù)器可能就是n位二進制計數(shù)器。這樣的計數(shù)器有n個觸發(fā)器及2n種狀態(tài),這些狀態(tài)的循環(huán)順序是0,1,2,...,2n-1,0,1,...。其中,每一種狀態(tài)都被編碼成對應(yīng)的n位二進制整數(shù)。行波計數(shù)器:當某一位由1變到0,這一位就會向高位產(chǎn)生一個進位,由低位到高位,每次傳送一位,如T觸發(fā)器。同步計數(shù)器:所有的觸發(fā)器都共用一個CLK信號,在經(jīng)過僅僅tTQ納秒的延遲后,所有的觸發(fā)器的輸出都同時變化,它包括兩種結(jié)構(gòu):同步串行計數(shù)器和同步并行計數(shù)器。1.同步串行計數(shù)器:采用一個主計數(shù)使能信號CNTEN來實現(xiàn)控制。每一個T觸發(fā)器要發(fā)生翻轉(zhuǎn)的充要條件是CNTEN信號有效且所有的低階計數(shù)位都為1,同步n位二進制計數(shù)器的每一位都可以用一定數(shù)量的邏輯元件來實現(xiàn),它的缺點是組合型的使能信號由最低位到最高位串行傳送,如果時鐘周期太短的話,計數(shù)器LSB(最低位)的變化可能來不及傳送到MSB(最高位)。2.同步并行計數(shù)器:每一個EN輸入都用一個專門的與門來驅(qū)動,這樣,CNTEN信號到達各個觸發(fā)器的EN輸入端只需要經(jīng)過一級邏輯電路,它是最快的二進制計數(shù)器的結(jié)構(gòu)形式。 2.序列檢測器應(yīng)用狀態(tài)機的概念設(shè)計一個序列檢測器,以“1110010”序列檢測器的設(shè)計為例。該序列檢測器收到一組串行碼(1110010)后輸出檢測標志為‘1’,否則為‘0’。

計數(shù)器VHDL語言實現(xiàn)libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitycountisport(clk,clr,en:instd_logic;a:outstd_logic_vector(3downto0);cout:outstd_logic);endcount;architecturebhvofcountissignalb:std_logic_vector(3downto0);beginprocess(clk,clr,en,b)beginif(clr='1')thenb<="0011";elsif(clk'eventandclk='1')thenif(en='1')thenif(b<"1100")thenb<=b+1;elseb<="0011";endif;endif;endif;if(b="1100")thencout<='1';elsecout<='0';endif;a<=b;endprocess;endbhv;波形仿真邏輯圖二、序列檢測器1.VHDL實現(xiàn)libraryieee;useieee.std_logic_1164.all;entityxulieisport(clk,rst,d:instd_logic;z:outstd_logic);endxulie;architecturebhvofxulieistypestate_typeis(s0,s1,s2,s3,s4,s5,s6);--狀態(tài)定義signalstate:state_type;--狀態(tài)寄存器beginprocess(clk,rst)--次態(tài)設(shè)置beginifrst='1'thenstate<=s0;--異步重啟elsif(clk'eventandclk='1')thencasestateis--根據(jù)d判斷狀態(tài)轉(zhuǎn)移whens0=>ifd='1'thenstate<=s1;elsestate<=s0;endif;whens1=>ifd='1'thenstate<=s2;elsestate<=s0;endif;whens2=>ifd='0'thenstate<=s3;elsestate<=s2;endif;whens3=>ifd='1'thenstate<=s4;elsestate<=s0;endif;whens4=>ifd='0'thenstate<=s5;elsestate<=s2;endif;whens5=>ifd='0'thenstate<=s6;elsestate<=s1;endif;whens6=>ifd='1'thenstate<=s0;elsestate<=s0;endif;endcase;endif;endprocess;--輸出設(shè)置process(state,d)begincasestateiswhens6=>ifd='1'thenz<='1';--1101001檢測成功elsez<='0';endif;whenothers=>z<='0';endcase;endprocess;endbhv;2.仿真3.邏輯圖4.序列檢測器的Mealy機狀態(tài)表:現(xiàn)態(tài)(present_state)次態(tài)/輸出(next_state/cout)cin=0 cin=1S0S0/0S1/0S1S0/0S2/0S2S0/0S3/0S3

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論