狀態(tài)機(jī)的基本結(jié)構(gòu)如圖7.1所示。除了輸人信號、輸出信號外,狀態(tài)機(jī)還包含一組寄存器記憶狀態(tài)機(jī)的內(nèi)部狀態(tài)。狀態(tài)機(jī)寄存器的下一個狀態(tài)及輸出,不僅同輸入信號有關(guān),而且還與寄存器的當(dāng)前狀態(tài)有關(guān),狀態(tài)機(jī)可以認(rèn)為是組合邏輯和寄存器邏輯的特殊組合。它包括兩個主要部分:即組合邏輯部分和寄存器。組合邏輯部分又可分為狀態(tài)譯碼器和輸出譯碼器,狀態(tài)譯碼器確定狀態(tài)機(jī)的下一個狀態(tài),即確定狀態(tài)機(jī)的激勵方程,輸出譯碼器確定狀態(tài)機(jī)的輸出,即確定狀態(tài)機(jī)的輸出方程。寄存器用于存儲狀態(tài)機(jī)的內(nèi)部狀態(tài)。
狀態(tài)機(jī)的基本操作有兩種:
1.狀態(tài)機(jī)的內(nèi)部狀態(tài)轉(zhuǎn)換。
狀態(tài)機(jī)經(jīng)歷一系列狀態(tài),下一狀態(tài)由狀態(tài)譯碼器根據(jù)當(dāng)前狀態(tài)和輸入條件決定。
2.產(chǎn)生輸出信號序列。
輸出信號由輸出譯碼器根據(jù)當(dāng)前狀態(tài)和輸入條件確定。
用輸入信號決定下一狀態(tài)也稱為“轉(zhuǎn)移”。除了轉(zhuǎn)移之外,復(fù)雜的狀態(tài)機(jī)還具有重復(fù)和歷程功能。從一個狀態(tài)轉(zhuǎn)移到另一狀態(tài)稱為控制定序,而決定下一狀態(tài)所需的邏輯稱為轉(zhuǎn)移函數(shù)。
在產(chǎn)生輸出的過程中,根據(jù)是否使用輸入信號可以確定狀態(tài)機(jī)的類型。兩種典型的狀態(tài)機(jī)是米立(Mealy)狀態(tài)機(jī)和摩爾(Moore)狀態(tài)機(jī)。摩爾狀態(tài)機(jī)的輸出只是當(dāng)前狀態(tài)的函數(shù),而米立狀態(tài)機(jī)的輸出一般是當(dāng)前狀態(tài)和輸入信號的函數(shù)。對于這兩類狀態(tài)機(jī),控制定序都取決于當(dāng)前狀態(tài)和輸入信號。大多數(shù)實用的狀態(tài)機(jī)都是同步的時序電路,由時鐘信號觸發(fā)進(jìn)行狀態(tài)的轉(zhuǎn)換。時鐘信號同所有的邊沿觸發(fā)的狀態(tài)寄存器和輸出寄存器相連,使?fàn)顟B(tài)的改變發(fā)生在時鐘的上升或下降沿。