




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
./第7章狀態(tài)機及其VHDL設(shè)計容提要:有限狀態(tài)機〔FiniteStateMachine,簡稱FSM是一類很重要的時序電路,是許多數(shù)字系統(tǒng)的核心部件,也是實時系統(tǒng)設(shè)計中的一種數(shù)學(xué)模型,是一種重要的、易于建立的、應(yīng)用比較廣泛的、以描述控制特性為主的建模方法,它可以應(yīng)用于從系統(tǒng)分析到設(shè)計的所有階段。有限狀態(tài)機的優(yōu)點在于簡單易用,狀態(tài)間的關(guān)系清晰直觀。建立有限狀態(tài)機主要有兩種方法:"狀態(tài)轉(zhuǎn)移圖"和"狀態(tài)轉(zhuǎn)移表"。標準狀態(tài)機通常可分為Moore和Mealy兩種類型。本章主要介紹了基于VHDL的常見有限狀態(tài)機的類型、結(jié)構(gòu)、功能及表達方法,重點是如何有效地設(shè)計與實現(xiàn)。學(xué)習要求:了解狀態(tài)機的基本結(jié)構(gòu)、功能和分類,掌握有限狀態(tài)機的一般設(shè)計思路與方法、狀態(tài)機編碼方案的恰當選取、Moore和Mealy狀態(tài)機的本質(zhì)區(qū)別及設(shè)計實現(xiàn)。關(guān)鍵詞:狀態(tài)機<StateMachine>,Moore,Mealy,VHDL設(shè)計<VHDLDesign>7.1狀態(tài)機的基本結(jié)構(gòu)和功能7.2一般狀態(tài)機的VHDL設(shè)計7.2.1狀態(tài)機的一般組成7.2.2狀態(tài)機的編碼方案7.3摩爾狀態(tài)機的VHDL設(shè)計7.4米立狀態(tài)機的VHDL設(shè)計7.1狀態(tài)機的基本結(jié)構(gòu)和功能狀態(tài)機的基本結(jié)構(gòu)如圖7.1所示。除了輸人信號、輸出信號外,狀態(tài)機還包含一組寄存器記憶狀態(tài)機的部狀態(tài)。狀態(tài)機寄存器的下一個狀態(tài)及輸出,不僅同輸入信號有關(guān),而且還與寄存器的當前狀態(tài)有關(guān),狀態(tài)機可以認為是組合邏輯和寄存器邏輯的特殊組合。它包括兩個主要部分:即組合邏輯部分和寄存器。組合邏輯部分又可分為狀態(tài)譯碼器和輸出譯碼器,狀態(tài)譯碼器確定狀態(tài)機的下一個狀態(tài),即確定狀態(tài)機的激勵方程,輸出譯碼器確定狀態(tài)機的輸出,即確定狀態(tài)機的輸出方程。寄存器用于存儲狀態(tài)機的部狀態(tài)。輸出輸出輸入狀態(tài)譯碼器狀態(tài)寄存器狀態(tài)狀態(tài)圖7.1狀態(tài)機的基本結(jié)構(gòu)圖7.1狀態(tài)機的基本結(jié)構(gòu)狀態(tài)機的基本操作有兩種:1.狀態(tài)機的部狀態(tài)轉(zhuǎn)換。狀態(tài)機經(jīng)歷一系列狀態(tài),下一狀態(tài)由狀態(tài)譯碼器根據(jù)當前狀態(tài)和輸入條件決定。2.產(chǎn)生輸出信號序列。輸出信號由輸出譯碼器根據(jù)當前狀態(tài)和輸入條件確定。用輸入信號決定下一狀態(tài)也稱為"轉(zhuǎn)移"。除了轉(zhuǎn)移之外,復(fù)雜的狀態(tài)機還具有重復(fù)和歷程功能。從一個狀態(tài)轉(zhuǎn)移到另一狀態(tài)稱為控制定序,而決定下一狀態(tài)所需的邏輯稱為轉(zhuǎn)移函數(shù)。在產(chǎn)生輸出的過程中,根據(jù)是否使用輸入信號可以確定狀態(tài)機的類型。兩種典型的狀態(tài)機是米立〔Mealy狀態(tài)機和摩爾〔Moore狀態(tài)機。摩爾狀態(tài)機的輸出只是當前狀態(tài)的函數(shù),而米立狀態(tài)機的輸出一般是當前狀態(tài)和輸入信號的函數(shù)。對于這兩類狀態(tài)機,控制定序都取決于當前狀態(tài)和輸入信號。大多數(shù)實用的狀態(tài)機都是同步的時序電路,由時鐘信號觸發(fā)進行狀態(tài)的轉(zhuǎn)換。時鐘信號同所有的邊沿觸發(fā)的狀態(tài)寄存器和輸出寄存器相連,使狀態(tài)的改變發(fā)生在時鐘的上升或下降沿。在數(shù)字系統(tǒng)中.那些輸出取決于過去的輸入和當前的輸入的部分都可以作為有限狀態(tài)機。有限狀態(tài)機的全部"歷史"都反映在當前狀態(tài)上。當給FSM一個新的輸入時,它就會產(chǎn)生一個輸出。輸出由當前狀態(tài)和輸入共同決定,同時FSM也會轉(zhuǎn)移到下一個新狀態(tài),也是隨著FSM的當前狀態(tài)和輸入而定。FSM中,其部狀態(tài)存放在寄存器中,下一狀態(tài)的值由狀態(tài)譯碼器中的一個組合邏輯——轉(zhuǎn)移函數(shù)產(chǎn)生,狀態(tài)機的輸出由另一個組合邏輯——輸出函數(shù)產(chǎn)生。建立有限狀態(tài)機主要有兩種方法:狀態(tài)轉(zhuǎn)移圖〔狀態(tài)圖和狀態(tài)轉(zhuǎn)移表〔狀態(tài)表。它們是等價的,相互之間可以轉(zhuǎn)換。狀態(tài)轉(zhuǎn)移圖如圖7.2所示,圖中每個橢圓表示狀態(tài)機的一個狀態(tài),而箭頭表示狀態(tài)之間的一個轉(zhuǎn)換,引起轉(zhuǎn)換的輸入信號及當前輸出表示在轉(zhuǎn)換箭頭上。摩爾狀態(tài)機和米立狀態(tài)機的表示方法不同,摩爾狀態(tài)機的狀態(tài)譯碼輸出寫在狀態(tài)圈,米立狀態(tài)機的狀態(tài)譯碼輸出寫在箭頭旁,如圖7.3所示。輸入輸入/出輸入/出輸入/出輸入/出輸入/出輸入/出狀態(tài)A狀態(tài)B狀態(tài)C狀態(tài)D狀態(tài)E狀態(tài)狀態(tài)B01狀態(tài)A00I/01I/01狀態(tài)A狀態(tài)B圖7.2狀態(tài)轉(zhuǎn)移圖圖7.3摩爾和米立狀態(tài)機圖7.2狀態(tài)轉(zhuǎn)移圖圖7.3摩爾和米立狀態(tài)機如果能夠?qū)懗鯢SM的狀態(tài)轉(zhuǎn)移圖,就可以使用VHDL的狀態(tài)機語句對它進行描述。狀態(tài)轉(zhuǎn)移表形式如表7.1所示。表中的行列出了全部可能的輸入信號組合和部狀態(tài)以及相應(yīng)的次狀態(tài)和輸出,因此狀態(tài)表規(guī)定了狀態(tài)機的轉(zhuǎn)換函數(shù)和輸出函數(shù)。然而,狀態(tài)表不適合具有大量輸入的系統(tǒng),因為隨著輸入的增加其狀態(tài)數(shù)和系統(tǒng)的復(fù)雜性會顯著增加。表7.1狀態(tài)轉(zhuǎn)移表現(xiàn)態(tài)輸入次態(tài)輸出S0-SnI0-ImS0-SnQ0-QP狀態(tài)轉(zhuǎn)移圖、狀態(tài)轉(zhuǎn)移表這兩種有限狀態(tài)機的建立方法是等價的,都描述了同一硬件結(jié)構(gòu),它們可以相互轉(zhuǎn)換,但各有優(yōu)缺點,分別適合于不同場合。7.2一般狀態(tài)機的VHDL設(shè)計7.2.1狀態(tài)機的一般組成用VHDL設(shè)計有限狀態(tài)機方法有多種,但最一般和最常用的狀態(tài)機設(shè)計通常包括說明部分,主控時序部分,主控組合部分和輔助進程部分。1>說明部分說明部分中使用TYPE語句定義新的數(shù)據(jù)類型,此數(shù)據(jù)類型為枚舉型,其元素通常都用狀態(tài)機的狀態(tài)名來定義。狀態(tài)變量定義為信號,便于信息傳遞,并將狀態(tài)變量的數(shù)據(jù)類型定義為含有既定狀態(tài)元素的新定義的數(shù)據(jù)類型。說明部分一般放在結(jié)構(gòu)體的ARCHITECTURE和BEGIN之間。2>主控時序進程是指負責狀態(tài)機運轉(zhuǎn)和在時鐘驅(qū)動正負現(xiàn)狀態(tài)機轉(zhuǎn)換的進程。狀態(tài)機隨外部時鐘信號以同步方式工作,當時鐘的有效跳變到來時,時序進程將代表次態(tài)的信號next_state中的容送入現(xiàn)態(tài)信號current_state中,而next_state中的容完全由其他進程根據(jù)實際情況而定,此進程中往往也包括一些清零或置位的控制信號。3>主控組合進程根據(jù)外部輸入的控制信號〔包括來自外部的和狀態(tài)機容的非主控進程的信號或〔和當前狀態(tài)值確定下一狀態(tài)next_state的取值容,以及對外或?qū)Σ科渌M程輸出控制信號的容。4>輔助進程用于配合狀態(tài)機工作的組合、時序進程或配合狀態(tài)機工作的其他時序進程。在一般狀態(tài)機的設(shè)計過程中,為了能獲得可綜合的,高效的VHDL狀態(tài)機描述,建議使用枚舉類數(shù)據(jù)類型來定義狀態(tài)機的狀態(tài),并使用多進程方式來描述狀態(tài)機的部邏輯。例如可使用兩個進程來描述,—個進程描述時序邏輯,包括狀態(tài)寄存器的工作和寄存器狀態(tài)的輸出,另一個進程描述組合邏輯,包括進程間狀態(tài)值的傳遞邏輯以及狀態(tài)轉(zhuǎn)換值的輸出。必要時還可以引入第三個進程完成其它的邏輯功能。下例描述的狀態(tài)機由兩個主控進程構(gòu)成,其中進程REG為主控時序進程,COM為主控組合進程。[例7.1]LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYs_machineISPORT<clk,reset:INSTD_LOGIC;State_inputs:INSTD_LOGIC_VECTOR<0TO1>;comb_outputs:OUTSTD_LOGIC_VECTOR<0TO1>>;ENDENTITYs_machine;ARCHITECTUREbehvOFs_machineISTYPEstatesIS<st0,st1,st2,st3>;--定義states為枚舉型數(shù)據(jù)類型SIGNALcurrent_state,next_state:states;BEGINREG:PROCESS<reset,clk>--時序邏輯進程BEGINIFreset='1'THEN--異步復(fù)位Current_state<=st0;ELSIFclk='1'ANDclk'EVENTTHENcurrent_state<=next_state;--當檢測到時鐘上升沿時轉(zhuǎn)換至下一狀態(tài)ENDIF;ENDPROCESS;--由信號current_state將當前狀態(tài)值帶出此進程,進入進程COMCOM:PROCESS<current_state,state_Inputs>--組合邏輯進程BEGINCASEcurrent_stateIS--確定當前狀態(tài)的狀態(tài)值WHENst0=>comb_outputs<="00";--初始狀態(tài)譯碼輸出"00"IFstate_inputs="00"THEN--根據(jù)外部的狀態(tài)控制輸入"00"next_state<=st0;--在下一時鐘后,進程REG的狀態(tài)將維持為st0ELSEnext_state<=st1;--否則,在下一時鐘后,進程REG的狀態(tài)將為st1ENDIF;WHENst1=>comb_outputs<="01";--對應(yīng)狀態(tài)st1的譯碼輸出"01"IFstate_inputs="00"THEN--根據(jù)外部的狀態(tài)控制輸人"00"next_state<=st1;--在下一時鐘后,進程REG的狀態(tài)將維持為st1ELSEnext_state<=st2;--否則,在下一時鐘后,進程REG的狀態(tài)將為st2ENDIF;WHENst2=>comb_outputs<="10";--以下依次類推IFstate_inputs="11"THENnext_state<=st2;ELSEnext_state<=st3;ENDIF;WHENst3=>comb_outputs<="11";IFstate_inputs="11"THENnext_state<=st3;ELSEnext_state<=st0;ENDIF;ENDCASE;ENDPROCESS;ENDARCHITECTUREbehv;圖7.4為上述狀態(tài)機的工作時序圖。reset為異步復(fù)位信號,低電平有效,而clk為上升沿有效。如在第3個脈沖上升沿到來時current_state="st0",state_inputs="01",輸出comb_outputs="01"。第4個脈沖上升沿到來時current_state="st1",state_inputs="00",輸出comb_outputs="01"。綜合后的RTL圖如圖7.5所示。圖7.4例7.1狀態(tài)機的工作時序圖圖7.5例7.1狀態(tài)機的RTL圖一般來說,程序的不同進程間是并行運行的,但由于敏感信號設(shè)置的不同和電路的延遲,在時序上進程間的動作是有先后的。如對上例中的狀態(tài)轉(zhuǎn)換行為來說,有進程REG和COM,它們的敏感信號表分別為〔reset,clk和〔current_state,state_inputs,在clk上升沿到來時,進程REG將首先運行,完成狀態(tài)轉(zhuǎn)換的賦值操作。如果外部控制信號state_inputs不變,只有當來自進程REG的信號current_state改變時,進程COM才開始動作,并將根據(jù)current_state和state_inputs的值來決定下一有效時鐘沿到來后,進程REG的狀態(tài)轉(zhuǎn)換方向。這個狀態(tài)機的兩位組合邏輯輸出comb_outputs是對當前狀態(tài)的譯碼。我們可以通過這個輸出值來了解狀態(tài)機部的運行情況,同時還可以利用外部控制信號state_inputs任意改變狀態(tài)機的狀態(tài)變化模式。注意:在上例中,有兩個信號起到了互反饋的作用,完成了兩個進程間的信息傳遞的功能,這兩個信號分別是current_state〔進程REG->進程COM>和next_state<進程COM->進程REG>。在VHDL中可以有兩種方式來創(chuàng)建反饋機制:即使用信號的方式和使用變量的方式。通常傾向于使用信號的方式〔如例7.1。一般而言,在進程中使用變量傳遞數(shù)據(jù),然后使用信號將數(shù)據(jù)帶出進程。在設(shè)計過程中,如果希望輸出的信號具有寄存器鎖存功能,則需要為此輸出寫第3個進程,并把clk和reset信號放入敏感信號表中。但必須注意避免由于寄存器的引入而創(chuàng)建了不必要的異步反饋路徑。根據(jù)VHDL綜合器的規(guī)則,對于所有可能的輸入條件,如果進程中的輸出信號沒有被明確的賦值時,此信號將自動被指定,即在未列出的條件下保持原值,這就意味著引入了寄存器。因此,我們在程序的綜合過程中,應(yīng)密切注意VHDL綜合器給出的警告信息,并根據(jù)警告信息對程序作必要的修改。一般來說,利用狀態(tài)機進行設(shè)計有如下幾個步驟:<1>分析設(shè)計要求,列出狀態(tài)機的全部可能狀態(tài),并對每一個狀態(tài)進行編碼。<2>根據(jù)狀態(tài)轉(zhuǎn)移關(guān)系和輸出函數(shù)畫出狀態(tài)轉(zhuǎn)移圖。<3>由狀態(tài)轉(zhuǎn)移圖,用VHDL語句對狀態(tài)機描述。7.2.2狀態(tài)機的編碼方案在狀態(tài)機的編碼方案中,有兩種重要的編碼方法:二進制編碼和一位熱碼<One—Hot>編碼。在二進制編碼的狀態(tài)機中,狀態(tài)位<B>與狀態(tài)<S>的數(shù)目之間的關(guān)系為B=log2S,如兩位狀態(tài)位就有00,01,10,11四個不同狀態(tài),它們在不同的控制信號下可以進行狀態(tài)轉(zhuǎn)換,但如果各觸發(fā)器又沒有準確地同時改變其輸出值,那么在狀態(tài)01變到10時則會出現(xiàn)暫時的11或00狀態(tài)輸出,這類險象可能使整個系統(tǒng)造成不可預(yù)測的結(jié)果。這時,采用格雷碼二進制編碼是特別有益,在該編碼方案中,每次僅一個狀態(tài)位的值發(fā)生變化。一位熱碼編碼就是用n個觸發(fā)器來實現(xiàn)n個狀態(tài)的編碼方式,狀態(tài)機中的每一個狀態(tài)都由其中一個觸發(fā)器的狀態(tài)來表示。如4個狀態(tài)的狀態(tài)機需4個觸發(fā)器,同一時間僅一個狀態(tài)位處于邏輯1電平,四個狀態(tài)分別為:0001、0010、0100、1000。在實際應(yīng)用中,根據(jù)狀態(tài)機的復(fù)雜程度、所使用的器件系列和從非法狀態(tài)退出所需的條件來選擇最適合的編碼方案,使之能確保高效的性能和資源的利用。對復(fù)雜的狀態(tài)機,二進制編碼需用的觸發(fā)器的數(shù)目比一位熱碼編碼的少。如100個狀態(tài)的狀態(tài)機按二進制編碼僅用7個觸發(fā)器就可以實現(xiàn),而一位熱碼編碼則要求100個觸發(fā)器。另一方面,雖然一位熱碼編碼要求用較多的觸發(fā)器,但邏輯上通常相對簡單些。在二進制編碼的狀態(tài)機中,控制從一個狀態(tài)轉(zhuǎn)換到另一個狀態(tài)的邏輯與所有7個狀態(tài)位以及狀態(tài)機的輸入均有關(guān)。這類邏輯通常要求到狀態(tài)位輸入的函數(shù)是多輸入變量的。然而,在一熱戀位編碼的狀態(tài)機中,到狀態(tài)位的輸入常常是其它狀態(tài)位的簡單函數(shù)。站在器件結(jié)構(gòu)的角度,不同結(jié)構(gòu)支持其確定的編碼類型。MAX+plusII編譯程序?qū)λ捎玫钠骷盗凶詣拥剡x擇最合適的編碼方法〔除非在設(shè)計文件中規(guī)定了具體的編碼方案。例如,FLEX7000器件系列是寄存器增強型〔Register-intensive,以這類器件為對象的狀態(tài)機最好選用一位熱碼編碼方案來實現(xiàn)。由于一位熱碼編碼的狀態(tài)機降低了送到每一個狀態(tài)位的邏輯電路的復(fù)雜程度,因而可提高用FLEX7000器件實現(xiàn)的狀態(tài)機的性能。MAX5000和MAX7000器件系列最適合二進制狀態(tài)機編碼方案。這兩類器件都能夠利用共享和并聯(lián)的擴展乘積項有效地實現(xiàn)復(fù)雜的邏輯函數(shù)。因此,在這兩類器件小,可以容納復(fù)雜的組合邏輯函數(shù)而不會浪費資源或損失性能。另外,在選擇編碼方案時,必須考慮狀態(tài)機可能進入的潛在的非法狀態(tài)的數(shù)目。如果違反了狀態(tài)位觸發(fā)器的建立或保持時間,又沒有定義所有可能出現(xiàn)的狀態(tài),則你的設(shè)計會終止在非法狀態(tài)上。MAX+plusII設(shè)計進入方法允許你定義非法狀態(tài)和規(guī)定你的狀態(tài)機如何從非法狀態(tài)中退出。例如,用二進制編碼實現(xiàn)一個14個狀態(tài)的狀態(tài)機需4個狀態(tài)位。這將有16個可能的狀態(tài),故該狀態(tài)機僅有兩個可能的狀態(tài)是非法狀態(tài)。然而一位熱碼編碼的狀態(tài)機通常有更多的潛在的非法狀態(tài)。14個狀態(tài)的一位熱碼編碼的狀態(tài)機需要14個狀態(tài)。一位熱碼編碼的狀態(tài)機的非法狀態(tài)數(shù)目由方程式〔2n-n確定,其中n為狀態(tài)機的狀態(tài)個數(shù)。因此,一位熱碼編碼的14位狀態(tài)共有16370個可能的非法狀態(tài)。然而,只要設(shè)計中不違反狀態(tài)位觸發(fā)器的建立和保持時間,狀態(tài)機將不會進入非法狀態(tài)。7.3摩爾狀態(tài)機的VHDL設(shè)計摩爾有限狀態(tài)機輸出只與當前狀態(tài)有關(guān),與輸入信號的當前值無關(guān),是嚴格的現(xiàn)態(tài)函數(shù)。在時鐘脈沖的有效邊沿作用后的有限個門延后,輸出達到穩(wěn)定值。即使在時鐘周期輸入信號發(fā)生變化,輸出也會保持穩(wěn)定不變。從時序上看,Moore狀態(tài)機屬于同步輸出狀態(tài)機。Moore有限狀態(tài)機最重要的特點就是將輸入與輸出信號隔離開來。例7.2就是一個典型的Moore型狀態(tài)機實例。狀態(tài)機的狀態(tài)圖如圖7.6所示。000011S10001S41000S20010S30100圖7.6Moore狀態(tài)機的狀態(tài)圖[例7.2]LIBRARYieee;USEieee.std_logic_1164.ALL;USEieee.std_logic_unsigned.ALL;ENTITYmooreISPORT<clk,datain,reset:INstd_logic;dataout:OUTstd_logic_vector<3DOWNTO0>>;ENDENTITYmoore;ARCHITECTUREarcOFmooreISTYPEstate_typeIS<s1,s2,s3,s4>;SIGNALstate:state_type;BEGINstate_process:PROCESS<clk,reset>--時序邏輯進程BEGINIFreset='1'THEN--異步復(fù)位state<=s1;ELSIFclk'eventandclk='1'THEN--當檢測到時鐘上升沿時執(zhí)行CASE語句CASEstateISWHENS1=>IFdatain='1'THENstate<=s2;ENDIF;WHENs2=>IFdatain='0'THENstate<=s3;ENDIF;WHENs3=>IFdatain='1'THENstate<=s4;ENDIF;WHENs4=>IFdatain='0'THENstate<=s1;ENDIF;ENDCASE;ENDIF;ENDPROCESS;--由信號state將當前狀態(tài)值帶出此進程,進入進程output_poutput_p:PROCESS<state>--組合邏輯進程BEGINCASEstateIS--確定當前狀態(tài)值WHENs1=>dataout<="0001";--對應(yīng)狀態(tài)s1的數(shù)據(jù)輸出為"0001"WHENs2=>dataout<="0010";WHENs3=>dataout<="0100";WHENs4=>dataout<="1000";ENDCASE;ENDPROCESS;ENDARCHITECTURarc;上例的VHDL描述中包含了兩個進程:state_process和output_p,分別為時序邏輯進程和組合邏輯進程。圖7.7是例7.2的工作時序圖,由圖可見,狀態(tài)機在異步復(fù)位信號后state=s1,在第500ns有效上升時鐘沿到來時,state=s1,datain=1,從而state由s1轉(zhuǎn)換為s2,輸出dataout=0010,即使在500ns后的一個時鐘周期輸入信號發(fā)生變化,輸出也會維持穩(wěn)定不變。綜合后的結(jié)果見圖7.8所示。圖7.7Moore的工作時序圖圖7.8Moore的RTL圖7.4米立狀態(tài)機的VHDL設(shè)計Mealy狀態(tài)機的輸出是現(xiàn)態(tài)和所有輸入的函數(shù),隨輸入變化而隨時發(fā)生變化。從時序上看,Mealy狀態(tài)機屬于異步輸出狀態(tài)機,它不依賴于時鐘,但Mealy狀態(tài)機和Moore狀態(tài)機的設(shè)計基本上相同。例7.2就是一個典型的Mealy型狀態(tài)機實例。狀態(tài)機的狀態(tài)圖如圖7.9所示。1/00011/00010/00010/00001/00010/10000/00101/01001/0001S1S4S2S3圖圖7.9Moore狀態(tài)機的狀態(tài)圖例[7.3]LIBRARYieee;USEieee.std_logic_1164.ALL;USEieee.std_logic_unsigned.ALL;ENTITYmealyISPORT<clk,datain,reset:INstd_logic;dataout:OUTstd_logic_vector<3DOWNTO0>>;ENDENTITYmealy;ARCHITECTUREarcOFmealyISTYPEstate_typeIS<s1,s2,s3,s4>;SIGNALstate:state_type;BEGINstate_process:PROCESS<clk,reset>--時序邏輯進程BEGINIFreset='1'THEN--異步復(fù)位state<=s1;ELSIFclk'eventandclk='1'THEN--當檢測到時鐘上升沿時執(zhí)行CASE語句CASEstateISWHENS1=>IFdatain='1'THENstate<=s2;ENDIF;WHENs2=>IFdatain='0'THENstate<=s3;ENDIF;WHENs3=>IFdatain='1'THENstate<=s4;ENDIF;WHE
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025項目綠化施工合同
- 新興汽車故障解決方案試題及答案
- 證券投資學(xué)教案
- 南京機電職業(yè)技術(shù)學(xué)院《民族音樂概論1》2023-2024學(xué)年第一學(xué)期期末試卷
- 浙江省效實中學(xué)2024-2025學(xué)年高考語文試題3年高考模擬題透析2年模擬試題含解析
- 武漢船舶職業(yè)技術(shù)學(xué)院《輕松學(xué)營銷》2023-2024學(xué)年第一學(xué)期期末試卷
- 茂名職業(yè)技術(shù)學(xué)院《行書創(chuàng)作》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖北師范大學(xué)文理學(xué)院《網(wǎng)絡(luò)技術(shù)與應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 北京電子科技學(xué)院《數(shù)值計算方法》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年廣西桂平市高三下學(xué)期質(zhì)量調(diào)研(一模)歷史試題含解析
- 2025-2030羊毛制品行業(yè)市場調(diào)研分析及發(fā)展趨勢與投資前景研究報告
- 房建資料員知識培訓(xùn)課件
- 新零售背景下的電子商務(wù)嘗試試題及答案
- 《商務(wù)溝通與談判》課件 第二章 商務(wù)溝通原理
- 2024年四川內(nèi)江中考滿分作文《我也有自己的光芒》8
- 深信服aES產(chǎn)品技術(shù)白皮書-V1.5
- (高清版)DB11∕T2316-2024重大活動應(yīng)急預(yù)案編制指南
- 小學(xué)生航天科技教育課件
- 人工智能機器人研發(fā)合同
- 放射防護知識培訓(xùn)
- 《社區(qū)智慧養(yǎng)老模式研究的國內(nèi)外文獻綜述》4200字
評論
0/150
提交評論