




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
VHDL有限狀態機VHDL語言的基本語句1狀態機概念:一類十分重要的時序電路許多數字電路的核心部件結構:組合邏輯部分(狀態譯碼器和輸出譯碼器)時序邏輯部分(寄存器)2狀態機是純硬件數字系統中的順序控制電路,其運行方式上類似于控制靈活和方便的CPU,而在運行速度和工作可靠性方面都優于CPU。狀態機結構模式相對簡單,設計方案相對固定。狀態機的VHDL表述豐富多樣,程序層次分明,結構清晰,易讀易懂;在排錯、修改和模塊移植方面也有其獨到之點。在高速運算和控制方面,狀態機具有巨大的優勢。在VHDL中,一個狀態機可以有多個進程構成,一個結構體中可以包含多個狀態機,而一個單獨的狀態機(或多個并行運行的狀態機)以順序方式所能完成的運算和控制方面的工作與一個CPU的功能類似。因此,一個設計實體的功能便類似于一個含有并行運行的多CPU的高性能微處理器的功能。就運行速度而言:
狀態機的狀態變換周期只有一個時鐘周期,而在每一個狀態中,狀態機可以完成許多并行的運算和控制操作,所以,一個完整的控制程序,即使用多個并行狀態機構成,其狀態數也是十分有限的。一般由狀態機構成的硬件系統比CPU所能完成同樣功能的軟件系統的工作速度要高出三到五個數量級。
就可靠性而言:
由于CPU本身的結構特點與執行軟件指令的工作方式決定了CPU不能獲得圓滿的容錯保障,這已是不爭的事實。而狀態機系統不同,首先由于它是純硬件電路構成,不存在CPU運行軟件過程中許多固有的缺陷;其次是由于狀態機設計中能使用各種完整的容錯技術;第三是狀態機從非法狀態跳出進入正常狀態的耗時十分短暫,通常只有2、3個時鐘周期,約幾十個ns,不足于對系統運行構成損壞,而CPU則是通過復位方式從非法運行方式中恢復過來,耗時達幾十ms,這對于高速高可靠系統顯然是無法容忍的。為什么要使用狀態機?3狀態機的結構狀態譯碼器狀態寄存器(當前狀態)輸出譯碼器輸入信號輸出狀態輸出4狀態機-各部分的功能狀態譯碼器確定狀態機的下一個狀態輸出譯碼器確定狀態機輸出狀態寄存器存儲狀態機的內部狀態5狀態機的基本操作狀態的轉換:下一個狀態由譯碼器根據當前狀態和輸入條件決定。輸出信號的產生:輸出信號由譯碼器根據當前狀態和輸入條件決定。6狀態機的時序同步時序狀態機:由時鐘信號觸發狀態的轉換和信號的輸出異步時序狀態機:狀態的轉移和輸出不與時鐘信號同步注意:可綜合的狀態機設計要求使用同步狀態機!7狀態機的類型狀態一狀態二狀態二摩爾型moore狀態機米勒型mealy狀態機狀態一輸入8狀態機的表達方式狀態圖狀態表流程圖9狀態表10狀態圖11狀態機狀態機的本質是對具有邏輯順序或時序規律事件的一種描述方法。1213三進制計數器S311S101S21014序列檢測器(1110010)S1S2S8S3S4S7S6S51110010/10011010115類型定義語句TYPE用戶自定義數據類型:數據類型名:由設計者自定;數據類型定義:數組型數據類型或枚舉型數據類型TYPE數據類型名IS數據類型定義;TYPE數據類型名IS數據類型定義OF基本數據類型;16類型定義語句TYPETYPEst1ISARRAY(0TO15)OFSTD_LOGIC;
TYPEweekIS(sun,mon,tue,wed,
thu,fri,sat);例如:ARCHITECTUREbhv
OFcnt4ISTYPEm_stateIS(st0,st1,st2,st3,st4,st5);SIGNALpresent_state,next_state
:m_state;BEGIN17狀態機的說明部分使用TYPE
語句定義一個新的數據類型,一般為枚舉型,其元素都用狀態機的狀態名來定義。說明部分一般放在ARCHITECTURE
和BEGIN之間。例如:ARCHITECTURE···IS
TYPEstatesIS(S0,S1,S2,S3);
SIGNALcurrent_state,next_state:states;
BEGIN···18ChapteroverThisistheendofthischapter
ThanksAnyquestion?19實驗部分四選一數據選擇器:x<= (aANDNOT(s(1))ANDNOT(s(0)))OR (bANDNOT(s(1))ANDs(0))OR (cANDs(1)ANDNOT(s(0)))OR (dANDs(1)ANDs(0));方法一:axmuxcbds220實驗部分方法二:WITHsSELECTx<=aWHEN“00”,--meanswhens=“00”bWHEN“01”,cWHEN“10”,dWHENOTHERS;axmuxcbds221實驗部分x<=awhen(s=“00”)elsebwhen(s=“01”)elsecwhen(s=“10”)elsed;方法三:axmuxcbds222實驗部分mux4_1:PROCESS(a,b,c,d,s) BEGIN IFs=“00”THENx<=a; ELSIFs=“01”THENx<=b; ELSIFs=“10”THENx<=c; ELSEx<=d; ENDIF; ENDPROCESSmux4_1;方法四:axmuxcbds223實驗部分8-3編碼器:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYENCODE8_3ISPORT(A:INSTD_LOGIC_VECTOR(7DOWNTO0);
Y:OUTSTD_LOGIC_VECTOR(2DOWNTO0));ENDENTITYENCODE8_3;ARCHITECTUREARTOFENCODE8_3ISBEGIN24WITHASELECT--選擇信號賦值語句Y<="000"WHEN"11111110","001"WHEN"11111101","010"WHEN"11111011","011"WHEN"11110111","100"WHEN"11101111","101"WHEN"11011111","110"WHEN"10111111","111"WHEN"01111111","000"WHENOTHERS;ENDARCHITECTUREART;258-3編碼器P134例5-19,用IF和CASE語句均可!26分
頻
器ENTITYFENPINIS PORT(clk:INBIT;
cout:OUTBIT);ENDFENPIN;ARCHITECTURE
bhvOFFENPINISBEGIN
PROCESS(clk) VARIABLEQ1:INTEGERRANGE
nDOWNTO0;BEGIN IFclk’eventANDclk=‘1’THEN IFQ1<nTHEN Q1:=Q1+1;cout<=‘0’;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 初中數學探索三角形全等的條件2利用ASA和AAS判定全等課件2024-2025學年北師大版數學七年級下冊
- 蒙古族舞蹈的風格特點
- 幼兒舞蹈的基本舞姿與基本舞步
- 上海市金山區九年級歷史下冊 第三單元 兩極下的競爭 第11課 夢幻超級大國教學設計 北師大版
- plc應用基礎知識教程
- 2025電力設施升級改造工程施工合同書范本
- 設備租賃買賣合同模板
- 2025年供暖系統維護保養合同范本
- 2025年電子產品供應合同
- 銷售合同典范
- 2024年世界職業院校技能大賽高職組“市政管線(道)數字化施工組”賽項考試題庫
- 樁基及基坑支護工程技術施工方案(三篇)
- 司法考試2024年知識點背誦版-民法
- 2024年耐磨鑄件項目規劃申請報告樣文
- 重度哮喘診斷與處理中國專家共識(2024)解讀
- 新能源汽車電控系統的新型傳感器應用考核試卷
- 蘇教版數學一年級下學期期中測試卷10套及但
- 2024年全國職業院校技能大賽高職組(法律實務賽項)考試題庫(含答案)
- 全過程工程咨詢管理服務方案投標方案(技術方案)
- 中鐵十五局集團安全質量部管理制度大全
- 2024老年燒創傷創面MEEK植皮技術規范
評論
0/150
提交評論