EDA有限狀態(tài)機設計技術PPT學習教案_第1頁
EDA有限狀態(tài)機設計技術PPT學習教案_第2頁
EDA有限狀態(tài)機設計技術PPT學習教案_第3頁
EDA有限狀態(tài)機設計技術PPT學習教案_第4頁
EDA有限狀態(tài)機設計技術PPT學習教案_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、會計學1EDA有限狀態(tài)機設計技術有限狀態(tài)機設計技術 有限狀態(tài)機分類有限狀態(tài)機分類Moore型型有限狀態(tài)機和有限狀態(tài)機和Mealy型型有限狀態(tài)機。有限狀態(tài)機。Moore型有限狀態(tài)機型有限狀態(tài)機次態(tài)次態(tài) 邏輯邏輯狀態(tài)狀態(tài) 寄存器寄存器輸出輸出 邏輯邏輯輸入輸入次態(tài)次態(tài)現(xiàn)態(tài)現(xiàn)態(tài)輸出輸出時鐘時鐘復位復位Moore型:輸出信號型:輸出信號僅與當前狀態(tài)有關僅與當前狀態(tài)有關。有限狀態(tài)機的簡介有限狀態(tài)機的簡介第1頁/共25頁Mealy型有限狀態(tài)機型有限狀態(tài)機Mealy型:輸出信號型:輸出信號不僅與當前狀態(tài)有關,還與所有不僅與當前狀態(tài)有關,還與所有 輸入信號有關輸入信號有關。次態(tài)次態(tài) 邏輯邏輯狀態(tài)狀態(tài) 寄存器寄

2、存器輸出輸出 邏輯邏輯輸入輸入次態(tài)次態(tài)現(xiàn)態(tài)現(xiàn)態(tài)輸出輸出時鐘時鐘復位復位有限狀態(tài)機的簡介有限狀態(tài)機的簡介第2頁/共25頁 有限狀態(tài)機(有限狀態(tài)機(FSM,F(xiàn)inite State Machine)是時)是時序電路設計中經(jīng)常采用的一種方式,尤其適于設計數(shù)序電路設計中經(jīng)常采用的一種方式,尤其適于設計數(shù)字系統(tǒng)的字系統(tǒng)的控制模塊控制模塊。用。用Verilog的的case、if-else等語句能等語句能很好地描述基于狀態(tài)機的設計。很好地描述基于狀態(tài)機的設計。1. 說明部分說明部分狀態(tài)轉換變量的定義和所有可能狀態(tài)的說明狀態(tài)轉換變量的定義和所有可能狀態(tài)的說明 2005版版參數(shù)說明關鍵字參數(shù)說明關鍵字param

3、eter第3頁/共25頁2. 主控時序過程主控時序過程:狀態(tài)機的運轉和狀態(tài)轉換的過程狀態(tài)機的運轉和狀態(tài)轉換的過程3. 主控組合過程主控組合過程 :根據(jù)當前狀態(tài)和外部的信號發(fā)出根據(jù)當前狀態(tài)和外部的信號發(fā)出控制信號,同時確定下一狀態(tài)的走向控制信號,同時確定下一狀態(tài)的走向 4. 輔助過程:輔助過程:配合狀態(tài)機工作的組合過程和時序過程配合狀態(tài)機工作的組合過程和時序過程。 第4頁/共25頁說明部分說明部分主控時序過程主控時序過程第5頁/共25頁主控組合過程主控組合過程第6頁/共25頁第7頁/共25頁 用狀態(tài)機設計一個二進制序列檢測器,其功能是檢測用狀態(tài)機設計一個二進制序列檢測器,其功能是檢測一個一個4位

4、二進制序列位二進制序列“1111”,即輸入序列中如果有,即輸入序列中如果有4個或個或4個以上連續(xù)的個以上連續(xù)的“1”出現(xiàn),輸出為出現(xiàn),輸出為1,其它情況下,輸出為,其它情況下,輸出為0。輸出輸出z:000 000 000 000 000 100 001 110 000其輸入輸出如下所示:其輸入輸出如下所示:輸入輸入x:000 101 010 110 111 101 111 110 101第8頁/共25頁“1111”序列檢測器狀態(tài)轉換圖序列檢測器狀態(tài)轉換圖 第9頁/共25頁module fsm_seq(x,z,clk,reset,state);input x,clk,reset;output z

5、;output2:0 state;reg z;parameter s0=0,s1=1,s2=2,s3=3,s4=4;reg 2:0 current_state,next_state;assign state=current_state;always (posedge clk or posedge reset)begin if(reset) current_state=s0; else current_state=next_state; endalways (current_state or x)begin casex(current_state) 第10頁/共25頁 s0: beginif(x

6、=0) begin next_state=s0; z=0; endelse begin next_state=s1; z=0; end end s1: beginif(x=0) begin next_state=s0; z=0; end else begin next_state=s2; z=0; end ends2: beginif(x=0) begin next_state=s0; z=0; end else begin next_state=s3; z=0; end ends3: begin if(x=0) begin next_state=s0; z=0; endelse begin

7、next_state=s4; z=1; end ends4: beginif(x=0) begin next_state=s0; z=0; endelse begin next_state=s4; z=1; end end default: begin next_state=s0; end endcase endendmodule第11頁/共25頁Moore型有限狀態(tài)機型有限狀態(tài)機次態(tài)次態(tài) 邏輯邏輯狀態(tài)狀態(tài) 寄存器寄存器輸出輸出 邏輯邏輯輸入輸入次態(tài)次態(tài)現(xiàn)態(tài)現(xiàn)態(tài)輸出輸出時鐘時鐘復位復位Moore型:輸出信號型:輸出信號僅與當前狀態(tài)有關僅與當前狀態(tài)有關。屬于同。屬于同步輸出狀態(tài)機,當輸入發(fā)生變化

8、時還必須等步輸出狀態(tài)機,當輸入發(fā)生變化時還必須等待一個時鐘的到來,輸出才變化。待一個時鐘的到來,輸出才變化。第12頁/共25頁ADC0809采樣控制器設計:采樣控制器設計: 工作時序工作時序第13頁/共25頁狀態(tài)轉換圖:狀態(tài)轉換圖:第14頁/共25頁8.2.1 多過程結構型狀態(tài)機多過程結構型狀態(tài)機 第15頁/共25頁8.2.1 多過程結構型狀態(tài)機多過程結構型狀態(tài)機 接下頁接下頁第16頁/共25頁8.2.1 多過程結構型狀態(tài)機多過程結構型狀態(tài)機 接上頁接上頁第17頁/共25頁描述方式描述方式過程描述功能過程描述功能過程數(shù)過程數(shù)3段式描述方式段式描述方式過程過程1:描述次態(tài)邏輯:描述次態(tài)邏輯過程過

9、程2:輸出邏輯:輸出邏輯過程過程3:描述狀態(tài)寄存器:描述狀態(tài)寄存器 32段式描述方式段式描述方式過程過程1:主控組合過程:主控組合過程 次態(tài)、輸出邏輯次態(tài)、輸出邏輯 過程過程2:主控時序過程:主控時序過程 狀態(tài)寄存器狀態(tài)寄存器21段式描述方式段式描述方式過程過程1:次態(tài)、狀態(tài)、輸出次態(tài)、狀態(tài)、輸出1描述方式描述方式第18頁/共25頁輸出次態(tài)邏輯輸出次態(tài)邏輯 輸出邏輯輸出邏輯 第19頁/共25頁Mealy型有限狀態(tài)機型有限狀態(tài)機Mealy型:輸出信號型:輸出信號不僅與當前狀態(tài)有關,還與所有不僅與當前狀態(tài)有關,還與所有 輸入信號有關輸入信號有關。次態(tài)次態(tài) 邏輯邏輯狀態(tài)狀態(tài) 寄存器寄存器輸出輸出 邏

10、輯邏輯輸入輸入次態(tài)次態(tài)現(xiàn)態(tài)現(xiàn)態(tài)輸出輸出時鐘時鐘復位復位第20頁/共25頁第21頁/共25頁1起始狀態(tài)的選擇起始狀態(tài)的選擇起始狀態(tài)是指電路復位后所處的狀態(tài),選擇一個合理的起始狀態(tài)將使起始狀態(tài)是指電路復位后所處的狀態(tài),選擇一個合理的起始狀態(tài)將使整個系統(tǒng)簡潔高效。有的整個系統(tǒng)簡潔高效。有的EDA軟件會自動為基于狀態(tài)機的設計選擇一軟件會自動為基于狀態(tài)機的設計選擇一個最佳的起始狀態(tài)。個最佳的起始狀態(tài)。2狀態(tài)編碼狀態(tài)編碼狀態(tài)編碼主要有狀態(tài)編碼主要有二進制編碼、順序編碼和一位獨熱編碼二進制編碼、順序編碼和一位獨熱編碼等方式。等方式。二進制編碼(二進制編碼(Binary State Machine)順序編碼(

11、順序編碼(Sequential State Machine)一位熱碼編碼(一位熱碼編碼(One-Hot State Machine Encoding)一位熱碼編碼即采用一位熱碼編碼即采用n位(或位(或n個觸發(fā)器)來編碼具有個觸發(fā)器)來編碼具有n個狀態(tài)的狀態(tài)機個狀態(tài)的狀態(tài)機。比如對于。比如對于state0、state1、state2、state3 四個狀態(tài)可用碼字四個狀態(tài)可用碼字1000、0100、0010、0001來代表。來代表。第22頁/共25頁3狀態(tài)編碼的定義狀態(tài)編碼的定義在在Verilog語言中,有兩種方式可用于定義狀態(tài)編碼,分別用語言中,有兩種方式可用于定義狀態(tài)編碼,分別用parame

12、ter和和define語句實現(xiàn),比如要為語句實現(xiàn),比如要為state0、state1、state2、state3四個狀態(tài)定義碼四個狀態(tài)定義碼字為:字為:00、01、11、10,可采用下面兩種方式。,可采用下面兩種方式。方式方式1:用:用parameter參數(shù)定義參數(shù)定義 parameter state1=2b00,state2=2b01,state3=2b11,state4=2b10; case(state) state1:; /調用調用 state2:; 第23頁/共25頁4狀態(tài)轉換的描述狀態(tài)轉換的描述一般使用一般使用case語句來描述狀態(tài)之間的轉換,用語句來描述狀態(tài)之間的轉換,用case語句表述比用語句表述比用if-else語句語句更清晰明

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論