第七章_狀態(tài)機設計_第1頁
第七章_狀態(tài)機設計_第2頁
第七章_狀態(tài)機設計_第3頁
第七章_狀態(tài)機設計_第4頁
第七章_狀態(tài)機設計_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、EDAEDA技術技術實用教程實用教程X康芯科技康芯科技7.1 一般有限狀態(tài)機的設計一般有限狀態(tài)機的設計7.1.1 用戶自定義數(shù)據(jù)類型定義語句用戶自定義數(shù)據(jù)類型定義語句TYPETYPE語句用法語句用法如下:如下:TYPE TYPE 數(shù)據(jù)類型名數(shù)據(jù)類型名 IS IS 數(shù)據(jù)類型定義數(shù)據(jù)類型定義 OF OF 基本數(shù)據(jù)類型基本數(shù)據(jù)類型 ; ;或或TYPE TYPE 數(shù)據(jù)類型名數(shù)據(jù)類型名 IS IS 數(shù)據(jù)類型定義數(shù)據(jù)類型定義 ; ;以下列出了兩種不同的定義方式:以下列出了兩種不同的定義方式:TYPE st1 IS ARRAY ( 0 TO 15 ) OF STD_LOGIC ;TYPE st1 IS AR

2、RAY ( 0 TO 15 ) OF STD_LOGIC ;TYPE week IS (sunTYPE week IS (sun,monmon,tuetue,wedwed,thuthu,frifri,sat) ;sat) ;X康芯科技康芯科技7.1 一般有限狀態(tài)機的設計一般有限狀態(tài)機的設計7.1.1 用戶自定義數(shù)據(jù)類型定義語句用戶自定義數(shù)據(jù)類型定義語句TYPE m_state IS ( st0,st1,st2,st3,st4,st5 ) ; SIGNAL present_state,next_state : m_state ;布爾數(shù)據(jù)類型的定義語句是:布爾數(shù)據(jù)類型的定義語句是: TYPE BO

3、OLEAN IS TYPE BOOLEAN IS (FALSEFALSE,TRUETRUE) ;TYPE my_logic IS ( 1 TYPE my_logic IS ( 1 ,Z Z ,U U ,0 ) ;0 ) ; SIGNAL s1 : my_logic ; SIGNAL s1 : my_logic ; s1 = Z ; s1 = Z ; X康芯科技康芯科技7.1 一般有限狀態(tài)機的設計一般有限狀態(tài)機的設計7.1.1 用戶自定義數(shù)據(jù)類型定義語句用戶自定義數(shù)據(jù)類型定義語句子類型子類型SUBTYPE的語句格式如下:的語句格式如下:SUBTYPE SUBTYPE 子類型名子類型名 IS IS

4、 基本數(shù)據(jù)類型基本數(shù)據(jù)類型 RANGE RANGE 約束范圍約束范圍; ; SUBTYPE digits IS INTEGER RANGE 0 to 9 ;SUBTYPE digits IS INTEGER RANGE 0 to 9 ;X康芯科技康芯科技7.1.2 為什么要使用狀態(tài)機為什么要使用狀態(tài)機7.1 一般有限狀態(tài)機的設計一般有限狀態(tài)機的設計 有限狀態(tài)機克服了純硬件數(shù)字系統(tǒng)順序方式控制不靈活有限狀態(tài)機克服了純硬件數(shù)字系統(tǒng)順序方式控制不靈活的缺點。的缺點。 狀態(tài)機的結構模式相對簡單狀態(tài)機的結構模式相對簡單。 狀態(tài)機容易構成性能良好的同步時序邏輯模塊狀態(tài)機容易構成性能良好的同步時序邏輯模塊。

5、 狀態(tài)機的狀態(tài)機的VHDLVHDL表述豐富多樣表述豐富多樣。 在高速運算和控制方面,狀態(tài)機更有其巨大的優(yōu)勢在高速運算和控制方面,狀態(tài)機更有其巨大的優(yōu)勢。 就可靠性而言,狀態(tài)機的優(yōu)勢也是十分明顯的就可靠性而言,狀態(tài)機的優(yōu)勢也是十分明顯的。X康芯科技康芯科技7.1.3 一般有限狀態(tài)機的設計一般有限狀態(tài)機的設計7.1 一般有限狀態(tài)機的設計一般有限狀態(tài)機的設計1. 1. 說明部分說明部分2. 2. 主控時序進程主控時序進程com b_outputsstate_inputsresetclkF S M :s_m achineC O Mnext_statecurrent_stateP R O C E S S

6、R E GP R O C E S S圖圖7-1 一般狀態(tài)機結構框圖工作示意圖一般狀態(tài)機結構框圖工作示意圖ARCHITECTURE .IS TYPE FSM_ST IS (s0,s1,s2,s3); SIGNAL current_state, next_state: FSM_ST; . X康芯科技康芯科技3. 3. 主控組合進程主控組合進程7.1.3 一般有限狀態(tài)機的設計一般有限狀態(tài)機的設計 控組合進程的任務是根據(jù)外部輸入的控制信號(包控組合進程的任務是根據(jù)外部輸入的控制信號(包括來自狀態(tài)機外部的信號和來自狀態(tài)機內部其它非主控括來自狀態(tài)機外部的信號和來自狀態(tài)機內部其它非主控的組合或時序進程的信號

7、),或(和)當前狀態(tài)的狀態(tài)的組合或時序進程的信號),或(和)當前狀態(tài)的狀態(tài)值確定下一狀態(tài)(值確定下一狀態(tài)(next_statenext_state)的取向,即的取向,即next_statenext_state的取值內容,以及確定對外輸出或對內部其它組合或時的取值內容,以及確定對外輸出或對內部其它組合或時序進程輸出控制信號的內容。序進程輸出控制信號的內容。X康芯科技康芯科技4. 4. 輔助進程輔助進程【例7-1】LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY s_machine IS PORT ( clk,reset : IN STD_LOGIC;

8、 state_inputs : IN STD_LOGIC_VECTOR (0 TO 1); comb_outputs : OUT INTEGER RANGE 0 TO 15 );END s_machine;ARCHITECTURE behv OF s_machine IS TYPE FSM_ST IS (s0, s1, s2, s3); SIGNAL current_state, next_state: FSM_ST;BEGIN REG: PROCESS (reset,clk) BEGIN IF reset = 1 THEN current_state = s0; ELSIF clk=1 AN

9、D clkEVENT THEN current_state comb_outputs= 5; IF state_inputs = 00 THEN next_state=s0; ELSE next_state comb_outputs= 8; IF state_inputs = 00 THEN next_state=s1; ELSE next_state comb_outputs= 12; IF state_inputs = 11 THEN next_state = s0; ELSE next_state comb_outputs = 14; IF state_inputs = 11 THEN

10、next_state = s3; ELSE next_state = s0; END IF; END case; END PROCESS; END behv;接上頁接上頁X康芯科技康芯科技圖圖7-2 例例7-1狀態(tài)機的工作時序圖狀態(tài)機的工作時序圖7.1.3 一般有限狀態(tài)機的設計一般有限狀態(tài)機的設計4. 4. 輔助進程輔助進程X康芯科技康芯科技X康芯科技康芯科技 VHDL綜合器易于優(yōu)化 易構成性能良好的時序邏輯模塊 結構模式簡單、層次分明、易讀易懂、易排錯 運行模式類似于CPU,易于進行順序控制 利用同步時序和全局時鐘線可實現(xiàn)高速FSM 高可靠性,非法狀態(tài)易控制 X康芯科技康芯科技7.2 Moo

11、re型有限狀態(tài)機的設計型有限狀態(tài)機的設計7.2.1 三進程有限狀態(tài)機三進程有限狀態(tài)機CECS RC K12/8 A0工 作 狀 態(tài)0XXXX禁止X1XXX禁止100X0啟動12位轉換100X1啟動8位轉換1011X12位并行輸出有效10100高8位并行輸出有效10101低4位加上尾隨4個0有效表表7-1 AD574邏輯控制真值表(邏輯控制真值表(X表示任意)表示任意)X康芯科技康芯科技7.2.1 三進程有限狀態(tài)機三進程有限狀態(tài)機圖圖7-3 AD574工作時序工作時序 X康芯科技康芯科技7.2.1 三進程有限狀態(tài)機三進程有限狀態(tài)機圖圖7-4 AD574工作時序工作時序X康芯科技康芯科技7.2.1

12、 三進程有限狀態(tài)機三進程有限狀態(tài)機圖圖7-5 采樣狀態(tài)機結構框圖采樣狀態(tài)機結構框圖X康芯科技康芯科技【例【例7-2】LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY AD574 IS PORT (D :IN STD_LOGIC_VECTOR(11 DOWNTO 0); CLK ,STATUS : IN STD_LOGIC;-狀態(tài)機時鐘狀態(tài)機時鐘CLK,AD574狀態(tài)信號狀態(tài)信號STATUS LOCK0 : OUT STD_LOGIC; -內部鎖存信號內部鎖存信號LOCK的測試信號的測試信號 CS,A0,RC,K12X8 : OUT STD_LO

13、GIC; -AD574控制信號控制信號 Q : OUT STD_LOGIC_VECTOR(11 DOWNTO 0); -鎖存數(shù)據(jù)輸出鎖存數(shù)據(jù)輸出END AD574;ARCHITECTURE behav OF AD574 ISTYPE states IS (st0, st1, st2, st3,st4); SIGNAL current_state, next_state: states :=st0 ; SIGNAL REGL : STD_LOGIC_VECTOR(11 DOWNTO 0); SIGNAL LOCK : STD_LOGIC; BEGIN K12X8 = 1; LOCK0 next_

14、state next_state IF (STATUS=1) THEN next_state = st2; ELSE next_state next_state next_state next_state CS=1; A0=1;RC=1;LOCK CS=0; A0=0;RC=0;LOCK CS=0; A0=0;RC=0;LOCK CS=0; A0=0;RC=1;LOCK CS=0; A0=0;RC=1;LOCKCS=1; A0=1;RC=1;LOCK=0;-其它情況返回初始態(tài)其它情況返回初始態(tài) 接下頁接下頁接上頁接上頁X康芯科技康芯科技END CASE ; END PROCESS COM2 ;

15、 REG: PROCESS (CLK) - 時序進程時序進程 BEGIN IF ( CLKEVENT AND CLK=1) THEN current_state = next_state; END IF; END PROCESS REG; LATCH1 : PROCESS (LOCK) - 數(shù)據(jù)鎖存器進程數(shù)據(jù)鎖存器進程 BEGIN IF LOCK=1 AND LOCKEVENT THEN REGL = D ; END IF; END PROCESS ; Q next_state = st1; CS=1; A0=1;RC=1;LOCK next_state = st2; CS=0; A0=0;R

16、C=0;LOCK IF (STATUS=1) THEN next_state = st2; ELSE next_state = st3; END IF ; CS=0; A0=0;RC=0;LOCK next_state = st4; CS=0; A0=0;RC=1;LOCK next_state = st0; CS=0; A0=0;RC=1;LOCK next_state CS=1; A0=0; RC=0; LOCK=0; next_state CS=0; A0=0; RC=0; LOCK=0; next_state CS=0; A0=0; RC=0; LOCK=0; IF (STATUS=1

17、) THEN next_state = st2;ELSE next_state CS=0; A0=0; RC=1; LOCK=0; next_state CS=0; A0=1; RC=1; LOCK=1; next_state next_state = st0; END CASE ; END PROCESS COM ; REG:PROCESS (CLK) BEGIN IF ( CLKEVENT AND CLK=1) THEN current_state = next_state; END IF; END PROCESS REG; LATCH: PROCESS (LOCK) BEGIN IF L

18、OCK=1 AND LOCKEVENT THEN REGL = D ; END IF; END PROCESS ; Q = REGL; END behav; K12X8 = 1 ;狀態(tài)機狀態(tài)機VHDL源程序源程序X康芯科技康芯科技狀態(tài)機RTL電路圖X康芯科技康芯科技狀態(tài)機工作時序圖狀態(tài)狀態(tài)2:等待:等待X康芯科技康芯科技7.2.2 單進程單進程Moore型有限狀態(tài)機型有限狀態(tài)機【例【例7-4】LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MOORE1 IS PORT (DATAIN :IN STD_LOGIC_VECTOR(1 DOWNTO 0

19、); CLK,RST : IN STD_LOGIC; Q : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END MOORE1;ARCHITECTURE behav OF MOORE1 IS TYPE ST_TYPE IS (ST0, ST1, ST2, ST3,ST4); SIGNAL C_ST : ST_TYPE ; BEGIN PROCESS(CLK,RST) BEGIN IF RST =1 THEN C_ST = ST0 ; Q IF DATAIN =10 THEN C_ST = ST1 ; ELSE C_ST = ST0 ; END IF; Q IF DATAI

20、N =11 THEN C_ST = ST2 ; ELSE C_ST = ST1 ;END IF; Q IF DATAIN =01 THEN C_ST = ST3 ; ELSE C_ST = ST0 ;END IF; Q IF DATAIN =00 THEN C_ST = ST4 ; ELSE C_ST = ST2 ;END IF; Q IF DATAIN =11 THEN C_ST = ST0 ; ELSE C_ST = ST3 ;END IF; Q C_ST = ST0; END CASE; END IF; END PROCESS;END behav;接上頁接上頁X康芯科技康芯科技圖圖7-7

21、 例例7-4狀態(tài)機綜合后的狀態(tài)機綜合后的RTL電路模塊圖電路模塊圖7.2.2 單進程單進程Moore型有限狀態(tài)機型有限狀態(tài)機X康芯科技康芯科技7.2.2 單進程單進程Moore型有限狀態(tài)機型有限狀態(tài)機圖圖7-8 例例7-4單進程狀態(tài)機工作時序單進程狀態(tài)機工作時序X康芯科技康芯科技7.2.2 單進程單進程Moore型有限狀態(tài)機型有限狀態(tài)機圖圖7-9 對應于例對應于例7-4的的2進程狀態(tài)機工作時序圖進程狀態(tài)機工作時序圖X康芯科技康芯科技7.3 Mealy型有限狀態(tài)機的設計型有限狀態(tài)機的設計【例【例7-5】 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;ENTI

22、TY MEALY1 ISPORT ( CLK ,DATAIN,RESET : IN STD_LOGIC; Q : OUT STD_LOGIC_VECTOR(4 DOWNTO 0);END MEALY1;ARCHITECTURE behav OF MEALY1 IS TYPE states IS (st0, st1, st2, st3,st4); SIGNAL STX : states ; BEGIN COMREG : PROCESS(CLK,RESET) BEGIN -決定轉換狀態(tài)的進程決定轉換狀態(tài)的進程 IF RESET =1 THEN STX IF DATAIN = 1 THEN STX

23、IF DATAIN = 0 THEN STX IF DATAIN = 1 THEN STX IF DATAIN = 0 THEN STX IF DATAIN = 1 THEN STX STX IF DATAIN = 1 THEN Q = 10000 ; ELSE Q IF DATAIN = 0 THEN Q = 10111 ; ELSE Q IF DATAIN = 1 THEN Q = 10101 ; ELSE Q IF DATAIN = 0 THEN Q = 11011 ; ELSE Q IF DATAIN = 1 THEN Q = 11101 ; ELSE Q Q=00000 ; END

24、CASE ;END PROCESS COM1 ;END behav;接上頁接上頁圖圖7-10 例例7-5狀態(tài)機工作時序圖狀態(tài)機工作時序圖X康芯科技康芯科技【例【例7-6】 MEALY2 LIBRARY IEEE; -MEALY FSMUSE IEEE.STD_LOGIC_1164.ALL;ENTITY MEALY2 IS PORT ( CLK ,DATAIN,RESET : IN STD_LOGIC; Q : OUT STD_LOGIC_VECTOR(4 DOWNTO 0);END MEALY2;ARCHITECTURE behav OF MEALY2 IS TYPE states IS (s

25、t0, st1, st2, st3,st4); SIGNAL STX : states ; SIGNAL Q1 : STD_LOGIC_VECTOR(4 DOWNTO 0); BEGIN COMREG : PROCESS(CLK,RESET) -決定轉換狀態(tài)的進程決定轉換狀態(tài)的進程 BEGIN IF RESET =1 THEN STX IF DATAIN = 1 THEN STX IF DATAIN = 0 THEN STX IF DATAIN = 1 THEN STX IF DATAIN = 0 THEN STX IF DATAIN = 1 THEN STX STX IF DATAIN =

26、1 THEN Q2 := 10000 ; ELSE Q2 := 01010 ; END IF ; WHEN st1 = IF DATAIN = 0 THEN Q2 := 10111 ; ELSE Q2:=10100 ; END IF ; WHEN st2 = IF DATAIN = 1 THEN Q2 := 10101 ; ELSE Q2:=10011 ; END IF ; WHEN st3= IF DATAIN = 0 THEN Q2 := 11011 ; ELSE Q2:=01001 ; END IF ; WHEN st4= IF DATAIN = 1 THEN Q2 := 11101 ;

27、 ELSE Q2:=01101 ; END IF ; WHEN OTHERS = Q2:=00000 ; END CASE ; 接下頁接下頁X康芯科技康芯科技IF CLKEVENT AND CLK = 1 THEN Q1=Q2; END IF; END PROCESS COM1 ; Q next_state next_state IF (STATUS=1) THEN next_state = st2; ELSE next_state next_state next_state next_state = st0; END CASE ; OUT4 = current_state(4 DOWNTO

28、1); END PROCESS COM1 ; REG: PROCESS (CLK) - 時序進程時序進程 BEGIN IF ( CLKEVENT AND CLK=1) THEN current_state = next_state; END IF; END PROCESS REG; LK = current_state(1) ; LATCH1 : PROCESS ( LK ) - 數(shù)據(jù)鎖存器進程數(shù)據(jù)鎖存器進程 BEGIN IF LK=1 AND LKEVENT THEN REGL = D ; 接下頁接下頁X康芯科技康芯科技END IF; END PROCESS ; Q next_state =

29、 st0; END case;【例【例7-10】.alarm = (st0 AND (st1 OR st2 OR st3 OR st4 OR st5) OR (st1 AND (st0 OR st2 OR st3 OR st4 OR st5) OR (st2 AND (st0 OR st1 OR st3 OR st4 OR st5) OR (st3 AND (st0 OR st1 OR st2 OR st4 OR st5) OR (st4 AND (st0 OR st1 OR st2 OR st3 OR st5) OR (st5 AND (st0 OR st1 OR st2 OR st3 OR

30、 st4) ;X康芯科技康芯科技狀態(tài)機X康芯科技康芯科技X康芯科技康芯科技實實 驗驗(1)實驗目的:)實驗目的: 用狀態(tài)機實現(xiàn)序用狀態(tài)機實現(xiàn)序列檢測器的設計,列檢測器的設計,并對其進行仿真和并對其進行仿真和硬件測試。硬件測試。實驗實驗7-1 用狀態(tài)機實現(xiàn)序列檢測器的設計用狀態(tài)機實現(xiàn)序列檢測器的設計(2)實驗原理:實驗原理: 序列檢測器的序列檢測器的工作原理已在工作原理已在習題習題7-37-3中作了中作了說明。說明。X康芯科技康芯科技實實 驗驗實驗實驗7-1 用狀態(tài)機實現(xiàn)序列檢測器的設計用狀態(tài)機實現(xiàn)序列檢測器的設計(3)實驗內容)實驗內容1: 仔細完成習題仔細完成習題7-37-3的全部內容,利用

31、的全部內容,利用MAX+MAX+plusIIplusII對例對例7-117-11進行文本編輯輸入、仿真測試并給出仿真波形,了解控制進行文本編輯輸入、仿真測試并給出仿真波形,了解控制信號的時序,最后進行引腳鎖定并完成硬件測試實驗。信號的時序,最后進行引腳鎖定并完成硬件測試實驗。 建議用鍵建議用鍵7 7(PIO11PIO11)控制復位信號控制復位信號CLRCLR;鍵鍵6 6(PIO9PIO9)控制狀控制狀態(tài)機工作時鐘態(tài)機工作時鐘CLKCLK;待檢測串行序列數(shù)輸入待檢測串行序列數(shù)輸入DINDIN接接PIO10PIO10(左移,最左移,最高位在前);指示輸出高位在前);指示輸出ABAB接接PIO39P

32、IO39PIO36PIO36(顯示于數(shù)碼管顯示于數(shù)碼管6 6)。下)。下載后:按實驗板載后:按實驗板“系統(tǒng)復位系統(tǒng)復位”鍵;用鍵鍵;用鍵2 2和鍵和鍵1 1輸入輸入2 2位十六進位十六進制待測序列數(shù)制待測序列數(shù)“11100101”“11100101”;按鍵;按鍵7 7復位(平時數(shù)碼復位(平時數(shù)碼6 6指示顯指示顯“B”B”););4 4、按鍵按鍵6(6(CLK) 8CLK) 8次,這時若串行輸入的次,這時若串行輸入的8 8位二進制序列位二進制序列碼(顯示于數(shù)碼碼(顯示于數(shù)碼2/12/1和發(fā)光管和發(fā)光管D8D8D0D0)與預置碼與預置碼“11100101”“11100101”相同相同,則數(shù)碼,則

33、數(shù)碼6 6應從原來的應從原來的B B變成變成A A ,表示序列檢測正確,否則仍為表示序列檢測正確,否則仍為B B。X康芯科技康芯科技實實 驗驗實驗實驗7-1 用狀態(tài)機實現(xiàn)序列檢測器的設計用狀態(tài)機實現(xiàn)序列檢測器的設計(4)實驗內容)實驗內容2: 根據(jù)習題根據(jù)習題7-37-3中中的習題要求的習題要求3 3,提,提出的設計方案重出的設計方案重復以上實驗內容復以上實驗內容(將(將8 8位待檢測預位待檢測預置數(shù)由鍵置數(shù)由鍵4/4/鍵鍵3 3作作為外部輸入,從為外部輸入,從而可隨時改變檢而可隨時改變檢測密碼)。測密碼)。(5)實驗思考題:)實驗思考題: 如果待檢測預如果待檢測預置數(shù)必須以右移置數(shù)必須以右移

34、方式進入序列檢方式進入序列檢測器,寫出該檢測器,寫出該檢測器的測器的VHDLVHDL代碼代碼(兩進程符號化(兩進程符號化有限狀態(tài)機),有限狀態(tài)機),并提出測試該序并提出測試該序列檢測器的實驗列檢測器的實驗方案。方案。(6 6)實驗報告:)實驗報告: 根據(jù)以上的實根據(jù)以上的實驗內容寫出實驗驗內容寫出實驗報告,包括設計報告,包括設計原理、程序設計原理、程序設計、程序分析、仿、程序分析、仿真分析、硬件測真分析、硬件測試和詳細實驗過試和詳細實驗過程。程。X康芯科技康芯科技實實 驗驗實驗實驗7-2 用狀態(tài)機對用狀態(tài)機對ADC0809的采樣控制電路實現(xiàn)的采樣控制電路實現(xiàn)(1)實驗目的:)實驗目的:學習用狀

35、態(tài)機對學習用狀態(tài)機對A/DA/D轉換器轉換器ADC0809ADC0809的采樣控的采樣控制電路的實現(xiàn)。制電路的實現(xiàn)。(2 2)實驗原理:)實驗原理:ADC0809ADC0809的采樣控制原理已在習題的采樣控制原理已在習題7-67-6中作了中作了詳細說明。詳細說明。(3 3)實驗內容:)實驗內容:利用利用MAX+MAX+plusIIplusII對例對例7-127-12進行文本編輯輸入進行文本編輯輸入和仿真測試;給出仿真波形。最后進行引腳鎖定并進行測試和仿真測試;給出仿真波形。最后進行引腳鎖定并進行測試,硬件驗證例,硬件驗證例7-127-12電路對電路對ADC0809ADC0809的控制功能。的控

36、制功能。X康芯科技康芯科技實實 驗驗實驗實驗7-2 用狀態(tài)機對用狀態(tài)機對ADC0809的采樣控制電路實現(xiàn)的采樣控制電路實現(xiàn)測試步驟:測試步驟:根據(jù)附圖根據(jù)附圖1-121-12,建議引腳鎖定為:,建議引腳鎖定為:STARTSTART接接PIO34PIO34,OEOE接接PIO35PIO35,EOCEOC接接PIO8PIO8,ALEALE接接PIO33PIO33,狀態(tài)機時鐘狀態(tài)機時鐘CLKCLK接接clock0clock0(PIN2PIN2,可選可選“65536“65536Hz”Hz”或更高),或更高),ADDAADDA接接PIO32PIO32(ADDBADDB和和ADDCADDC都接都接GNDG

37、ND),),ADC0809ADC0809的的8 8位輸出數(shù)據(jù)線接位輸出數(shù)據(jù)線接PIO23PIO23PIO16PIO16,鎖存輸出鎖存輸出Q Q顯示于數(shù)碼顯示于數(shù)碼8/8/數(shù)碼數(shù)碼7 7(PIO47PIO47PIO40PIO40),), 設目標器件是設目標器件是EPF10K10EPF10K10,建議選擇實驗電路結構圖建議選擇實驗電路結構圖NO.5NO.5(即即結構圖結構圖NO.5ANO.5A,附圖附圖1-121-12,由該圖可見,由該圖可見,ADC0809ADC0809的轉換時鐘的轉換時鐘CLKCLK已經(jīng)事先接有已經(jīng)事先接有750750KHzKHz的頻率),將實驗系統(tǒng)左下角選擇插的頻率),將實驗

38、系統(tǒng)左下角選擇插針處的針處的“轉換結束轉換結束”和和“A/DA/D使能使能”用跳線幅短接。下載目標用跳線幅短接。下載目標文件后,可用螺絲刀旋轉實驗系統(tǒng)左下角的電位器,以便為文件后,可用螺絲刀旋轉實驗系統(tǒng)左下角的電位器,以便為ADC0809ADC0809提供變化的待測模擬信號,這時數(shù)碼管提供變化的待測模擬信號,這時數(shù)碼管8 8和和7 7將顯示將顯示ADC0809ADC0809采樣輸出并被鎖存的數(shù)字值(采樣輸出并被鎖存的數(shù)字值(1616進制)。進制)。X康芯科技康芯科技實驗板中實驗板中ADC0809電路原理圖,注意電路原理圖,注意與目標器件的連接與目標器件的連接方法方法X康芯科技康芯科技選擇實驗電

39、路選擇實驗電路模式模式5!X康芯科技康芯科技根據(jù)此表鎖根據(jù)此表鎖定引腳定引腳X康芯科技康芯科技ADC08090809將將0-5V輸入輸入模擬電壓通過模擬電壓通過FPGA中的狀態(tài)機中的狀態(tài)機轉換輸出為轉換輸出為16進進制數(shù):制數(shù):“9D”旋轉此電位器旋轉此電位器可改變可改變0809的的輸出輸出X康芯科技康芯科技注意轉換輸出注意轉換輸出已改變?yōu)椋阂迅淖優(yōu)椋?CX康芯科技康芯科技注意,此項實驗必須將此注意,此項實驗必須將此2撥撥碼向下?lián)?,功能請參考使用碼向下?lián)埽δ苷垍⒖际褂谜f明。實驗結束后,將它們說明。實驗結束后,將它們向上撥回原位向上撥回原位X康芯科技康芯科技實實 驗驗實驗實驗7-2 用狀態(tài)機對

40、用狀態(tài)機對ADC0809的采樣控制電路實現(xiàn)的采樣控制電路實現(xiàn)(4 4)實驗思考題:)實驗思考題:在不改變原代碼功能的條件下將例在不改變原代碼功能的條件下將例7-127-12表表達成用狀態(tài)碼直接輸出型的狀態(tài)機。達成用狀態(tài)碼直接輸出型的狀態(tài)機。(5 5)實驗報告:)實驗報告:根據(jù)以上的實驗要求、實驗內容和實驗思考根據(jù)以上的實驗要求、實驗內容和實驗思考題寫出實驗報告。題寫出實驗報告。X康芯科技康芯科技實實 驗驗實驗實驗7-3 含有含有FIFO存儲器的存儲器的A/D采樣控制電路設計采樣控制電路設計(1 1)實驗目的:)實驗目的:掌握掌握LPMLPM模塊模塊VHDLVHDL元件定制、調用和使用方法;熟悉

41、含有元件定制、調用和使用方法;熟悉含有LPMLPM模塊的模塊的VHDLVHDL電路描述程序的設計、編譯和硬件實驗流程;了解電路描述程序的設計、編譯和硬件實驗流程;了解HDLHDL文本文本描述與原理圖混合設計方法(注,本實驗應在完成第描述與原理圖混合設計方法(注,本實驗應在完成第8 8章的學習后進行)。章的學習后進行)。(2 2)實驗原理:)實驗原理:在第在第8 8、1010小節(jié)中,對含有小節(jié)中,對含有FIFOFIFO的的A/DA/D采樣控制電路系統(tǒng)采樣控制電路系統(tǒng)AD_FIFOAD_FIFO的工作原理作了詳細的說明,并給出了它的原理圖(圖的工作原理作了詳細的說明,并給出了它的原理圖(圖8-38

42、-3)及其)及其VHDLVHDL程序,(例程序,(例8-258-25)。)。(3 3)實驗內容)實驗內容1 1:根據(jù)第根據(jù)第8 8章第章第1010節(jié)的電路原理描述和設計流程,節(jié)的電路原理描述和設計流程,A/DA/D采樣采樣控制電路控制電路AD_FIFOAD_FIFO進行系統(tǒng)設計和仿真測試,給出例進行系統(tǒng)設計和仿真測試,給出例8-258-25詳細的采樣詳細的采樣/ /讀數(shù)讀數(shù)仿真波形。這里假設在采樣周期中完成了仿真波形。這里假設在采樣周期中完成了1010個點的采樣操作,并已將所有數(shù)個點的采樣操作,并已將所有數(shù)據(jù)寫入據(jù)寫入FIFOFIFO中,而在讀數(shù)周期中按中,而在讀數(shù)周期中按FIFOFIFO的讀

43、寫時序規(guī)律將所有寫入的數(shù)據(jù)的讀寫時序規(guī)律將所有寫入的數(shù)據(jù)隨著隨著RD_ENRD_EN時鐘的輸入,由時鐘的輸入,由Q7.0Q7.0輸出。分析它們的時序關系。輸出。分析它們的時序關系。X康芯科技康芯科技實實 驗驗實驗實驗7-3 含有含有FIFO存儲器的存儲器的A/D采樣控制電路設計采樣控制電路設計(4 4)實驗內容)實驗內容2 2:硬件實驗測試按照本章實驗硬件實驗測試按照本章實驗2 2給出的實驗板設置方法進給出的實驗板設置方法進行。適當控制狀態(tài)機工作時鐘行。適當控制狀態(tài)機工作時鐘CLKCLK的頻率,的頻率,08090809的模擬信號輸入仍然使用的模擬信號輸入仍然使用電位器輸出,其間,使一次采樣周期中的采樣點數(shù)不超過電位器輸出,其間,使一次采樣周期中的采樣點數(shù)不超過512512個,然后通個,然后通過鍵控進入過鍵控進入FIFOFIFO讀數(shù)周期,使數(shù)碼管顯示在采樣過程中寫入的數(shù)據(jù)。讀數(shù)周期,使數(shù)碼管顯示在采樣過程中寫入的數(shù)據(jù)。(5 5)實驗內容)實驗內容3 3:使用使用HDLHDL文本描述與原理圖混合設計方

溫馨提示

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

評論

0/150

提交評論