關(guān)于狀態(tài)機(jī)時(shí)序與功能仿真中存在的問(wèn)題_第1頁(yè)
關(guān)于狀態(tài)機(jī)時(shí)序與功能仿真中存在的問(wèn)題_第2頁(yè)
關(guān)于狀態(tài)機(jī)時(shí)序與功能仿真中存在的問(wèn)題_第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、關(guān)于狀態(tài)機(jī)時(shí)序與功能仿真中存在的問(wèn)題下圖是一個(gè)狀態(tài)機(jī)的狀態(tài)轉(zhuǎn)移圖(黃色圓圈中的數(shù)字為該狀態(tài)下的輸出,曲線上方的等式為狀態(tài)轉(zhuǎn)移條件)圖1 由s0、s1、s2、s3四種狀態(tài)構(gòu)成的狀態(tài)機(jī)下面的代碼實(shí)現(xiàn)了上圖所示的狀態(tài)機(jī)(出自VHDL經(jīng)典實(shí)例黃任),library ieee;entity moore isport ( reset :in std_logic; clock : in std_logic; din : in std_logic; dout : out std_logic_vector(2 downto 0) );end;architecture mooremachine of moore

2、is type state_type is (s0,s1,s2,s3);signal presentstate:state_type;signal nextstate :state_type;begin state_reg: process(reset,clock) /*綜合成時(shí)序邏輯,很可能是一個(gè)D觸發(fā)器*/ begin if reset='1' then /*這里的nextstate信號(hào)即是該D觸發(fā)器的輸入, presentstate<=s0; presentstate信號(hào)即是D觸發(fā)器的輸出*/ elsif rising_edge(clock) then presen

3、tstate<=nextstate; end if; end process;change_state: process(presentstate,din) /*綜合成組合邏輯,輸出即是nextstate信號(hào),故存在延時(shí)*/ begin case presentstate is when s0=> if din='1' then nextstate<=s1; else nextstate<=s0; end if; dout<="001" when s1=> if din='1' then nextstate

4、<=s2; else nextstate<=s1; end if; dout<="011" when s2=> if din='1' then nextstate<=s3; else nextstate<=s2; end if; dout<="101" when s3=> if din='1' then nextstate<=s0; else nextstate<=s1; end if; dout<="111" end case; end

5、 process;end;將上面的代碼在quartus 6.0中編譯后可以得到一些它的功能仿真圖。(設(shè)定復(fù)位后presentstate的初始狀態(tài)為:s0 )首先看如下輸入波形時(shí)的功能仿真圖形,其結(jié)果很容易分析,與預(yù)期的一致。圖2 功能仿真圖形再看一種特殊輸入波形條件下的功能仿真圖形,通過(guò)特殊情形來(lái)尋找問(wèn)題圖3 功能仿真圖形從圖中可以清楚的看到,在時(shí)鐘的上升沿時(shí)刻,因?yàn)楣δ芊抡鏁r(shí)不考慮由presentstate和din構(gòu)成的組合邏輯的延遲。也就是說(shuō):兩者構(gòu)成的組合邏輯的輸出結(jié)果,即nextstate信號(hào)在時(shí)鐘clock的上升沿時(shí)刻,恰好也是din的下降沿時(shí)刻,din和presentstate組合邏輯的結(jié)果始終是s0,最終導(dǎo)致了狀態(tài)機(jī)presentstate保持s0態(tài)! 這也是很容易理解的。接著看它的時(shí)序仿真圖,這下就有問(wèn)題了!圖4 時(shí)序仿真圖型很明顯,用quartus II 在進(jìn)行時(shí)序仿真時(shí),考慮了組合邏輯延遲,建立時(shí)間、保持時(shí)間等??墒俏业囊苫笤谟?,在圖中50ns處,clock與din同時(shí)出現(xiàn)跳變。din與presentstate組合邏輯的結(jié)果(即nextstate)應(yīng)

溫馨提示

  • 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)論