




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優(yōu)質文檔-傾情為你奉上實驗1 連續(xù)節(jié)拍發(fā)生電路設計實驗一、 實驗內容掌握節(jié)拍發(fā)生器的設計方法,理解節(jié)拍脈沖發(fā)生器的工作原理。二、 實驗原理1. 連續(xù)節(jié)拍發(fā)生電路連續(xù)節(jié)拍發(fā)生電路由四個D觸發(fā)器組成,可產(chǎn)生四個等間隔的時序信號T1-T4。其中CLK1為時鐘信號。當RST1為低電平時,T1輸出為“1”,而T2、T3、T4輸出為“0”;當RST1由低電平變?yōu)楦唠娖胶螅琓1-T4將在CLK1的輸入脈沖作用下,周期性輪流的輸出正脈沖,機器進入連續(xù)運行狀態(tài)(EXEC)。T1-T4以及CLK1、RST的工作波形如下所示。圖1-1 連續(xù)節(jié)拍發(fā)生電路2. 單步節(jié)拍發(fā)生電路將圖1-1電路稍加改變即可得到圖1-2
2、所示的單步運行電路。每當RST1出現(xiàn)一個負脈沖后,該電路僅輸出一組T1、T2、T3、T4節(jié)拍信號,直到RST1出現(xiàn)下一個負脈沖。圖1-2 單步節(jié)拍發(fā)生電路3. 單步/連續(xù)節(jié)拍發(fā)生電路 增加兩個2選一多路選擇器,可將1-2的電路改變?yōu)?-3的電路。S0是單步或連續(xù)節(jié)拍發(fā)生控制信號,當S0=0,選擇單步運行模式;當S0=1,選擇連續(xù)運行方式。圖1-3 單步/連續(xù)節(jié)拍發(fā)生電路三、 實驗任務1. 連續(xù)節(jié)拍發(fā)生電路示例頂層文件是T4.bdf。硬件電路如圖1-1所示。下載T4.sof文件,選擇實驗模式No.1,CLOCK0接4Hz,鍵8控制RST1,高電平時可以看到,發(fā)光管1-4分別顯示T1-T4的輸出電
3、平。實驗結果與書上的仿真波形圖比較。2. 單步節(jié)拍發(fā)生電路用單步節(jié)拍發(fā)生電路可以對微程序進行單步調試運行,電路如1-2所示。該電路每當RST1出現(xiàn)一個負脈沖后,僅輸出一組T1、T2、T3、T4節(jié)拍信號,直到RST1出現(xiàn)下一個負脈沖。頂層文件是T5.bdf。下載T5.sof文件,選擇實驗模式No.1,CLOCK0接4Hz,鍵8控制RST1。實驗結果與書上的仿真波形圖比較。3. 單步/連續(xù)節(jié)拍發(fā)生電路增加兩個2選1多路選擇器,可將圖1-2的電路改變?yōu)閳D1-3的電路。S0是單步或連續(xù)節(jié)拍發(fā)生控制信號,當S0=0,選擇單步運行方式;當S0=1,選擇連續(xù)運行方式。頂層文件是TS5.bdf。下載TS5.s
4、of文件,選擇實驗模式No.1,CLOCK0接4Hz,鍵8控制RST1。實驗結果與書上的仿真波形圖比較。 四、 實驗步驟1.軟件編譯2.仿真波形圖a.連續(xù)節(jié)拍發(fā)生電路 圖1-4連續(xù)節(jié)拍發(fā)生電路b.單步節(jié)拍發(fā)生電路 圖1-5單步節(jié)拍發(fā)生電路c.單步/連續(xù)節(jié)拍發(fā)生電路圖1-6單步/連續(xù)節(jié)拍發(fā)生電路3.分析報告a.連續(xù)節(jié)拍發(fā)生電路 高電平時可以看到,發(fā)光管1-4分別顯示T1-T4的輸出電平。b.單步節(jié)拍發(fā)生電路 每出現(xiàn)一個負脈沖,發(fā)光管1-4分別顯示T1-T4的輸出電平一次。c.單步/連續(xù)節(jié)拍發(fā)生電路發(fā)光管1-4分別顯示T1-T4的輸出電平。五、 問題分析1. 單步運行于連續(xù)運行有何區(qū)別,它們各自的
5、使用環(huán)境怎樣? 單步運行只運行固定時鐘周期的信號,而連續(xù)運行會一直發(fā)生信號。2. 如何實現(xiàn)單步/連續(xù)運行工作方式的切換?使用S0引腳控制21MUX的2選1控制端。當 S0=0 時,Y=A,為單步方式;當 S0=1 時,Y=B,為連續(xù)方式。3. 給出每個電路的原理圖分析說明為何能產(chǎn)生所需節(jié)拍。對于實驗任務2特別要對比沒有t5輸入時的仿真時序圖,借此說明t5的作用。任務1由四個D觸發(fā)器組成,可產(chǎn)生四個等間隔的時序信號T1-T4。當RST1為低電平時,T1輸出為1,而T2、T3、T4輸出為0;當RST1由低電平變?yōu)楦唠娖胶螅琓1-T4將在CLK1的輸入脈沖作用下,周期性地輪流輸出正脈沖;任務2中,每
6、當RST1出現(xiàn)一個負脈沖后,該電路僅輸出一組T1、T2、T3、T4節(jié)拍信號,直到RST1出現(xiàn)下一個負脈沖;沒有T5時,一個周期結束后,下一個時鐘信號到來時,會進入下一周期,為連續(xù)節(jié)拍發(fā)生器;有T5時,在一個周期結束后,T5=1,所有觸發(fā)器收得的時鐘信號始終為1,不會有下一個時鐘信號上升沿到來,為單步節(jié)拍發(fā)生器。在任務3中,S0為單步或連續(xù)節(jié)拍發(fā)生控制信號,可以選擇運行方式。實驗2 LPM_ROM與 LPM_RAM一、 實驗內容1. LPM_ROM掌握FPGA中LPM_ROM的設置,作為只讀存儲器ROM的工作特性和配置方法;用文本編輯器編輯MIF文件配置ROM,學習將程序代碼以MIF格式文件加載
7、于LPM_ROM中;在初始化存儲器編輯窗口編輯MIF文件配置ROM;驗證FPGA中LPM_ROM的功能。2. LPM_RAM了解FPGA中RAM lpm_ram_dq的功能;掌握lpm_ram_dq的參數(shù)設置和使用方法;掌握lpm_ram_dq作為隨機存儲器RAM的仿真測試方法、工作特性和讀寫方法。二、 實驗原理1. LPM_ROM程序存儲器是用來存放用戶程序的,通常采用只讀存儲器ROM來存儲程序。CPU中的一些重要部件,如RAM、ROM等,可直接調用LPM模塊構成。圖2-1 LPM_ROM圖2-2 rom_a.mif2. LPM_RAM數(shù)據(jù)存儲器存放運算數(shù)據(jù)及中間結果,一般采用隨機存儲器RA
8、M來實現(xiàn)其功能。CPU中的一些重要部件,如RAM、ROM等,可直接調用LPM模塊構成。圖2-3 LPM_RAM三、 實驗任務1. LPM_ROM用圖形編輯設計LPM_ROM。要求:用LPM元件庫設計LPM_ROM,地址總線寬度address和數(shù)據(jù)總線寬度q分別為6位和24位;建立相應的工程文件,設置LPM_ROM數(shù)據(jù)參數(shù),LPM_ROM配置文件的路徑(ROM_A.mif),并設置在系統(tǒng)ROM/RAM讀寫允許,以便能對FPGA中的ROM在系統(tǒng)讀寫;鎖定輸入輸出引腳;完成全程編譯;下載SOF文件至FPGA,改變LPM_ROM的地址a5.0,外加讀脈沖,通過實驗臺上的數(shù)碼管比較讀出的數(shù)據(jù)是否與初始化
9、數(shù)據(jù)(rom4.mif中的數(shù)據(jù))一致;打開QuartusII的在系統(tǒng)存儲模塊讀寫工具,了解FPGA中的ROM中的數(shù)據(jù),并對其進行在系統(tǒng)寫操作;記錄實驗數(shù)據(jù),寫出實驗報告,給出仿真波形圖。2. LPM_RAM 數(shù)據(jù)從ram_dp0的左邊D7.0輸入,從右邊Q7.0輸出,R/W為讀/寫控制信號端。數(shù)據(jù)的寫入:當輸入數(shù)據(jù)和地址準備好以后,在inclock是地址鎖存時鐘,當信號上升沿到來時,地址被鎖存,數(shù)據(jù)寫入存儲單元。 數(shù)據(jù)的讀出:從A7.0輸入存儲單元地址,在CLK信號上升沿到來時,該單元數(shù)據(jù)從Q7.0輸出。四、 實驗步驟 1.軟件編譯2.仿真波形圖a. LPM_ROM圖2-4 ROM讀
10、寫情況b. LPM_RAM圖2-5 RAM讀寫情況圖2-6 仿真波形圖4. 分析報告a. LPM_ROM 24位數(shù)據(jù)輸出由數(shù)碼管8-3顯示,六位地址由鍵2、鍵1輸入,鍵1負責低四位,地址鎖存時鐘CLK由鍵8控制,每一次上升沿,將地址鎖入,數(shù)碼管8-3將顯示ROM中輸出的數(shù)據(jù)。發(fā)光管8-1顯示輸入的6位地址值。b. LPM_RAM 通過鍵1、鍵2輸入RAM的8位數(shù)據(jù),鍵3、鍵4輸入存儲器的8位地址。鍵8控制讀寫允許,低電平時讀允許,高電平時寫允許;鍵7(CLK0)產(chǎn)生讀寫時鐘脈沖,即生成寫地址鎖存脈沖,對lpm_ram_dq進行寫/讀操作。五、 問題分析如何建立lpm_ram_dq的數(shù)據(jù)初始化,
11、如何導入和存儲lpm_ram_dq參數(shù)文件?生成一個MIF文件,并導入以上的RAM中。 數(shù)據(jù)從左邊D7.0輸入,從右邊Q7.0輸出。在lpm_ram_dq中可以加入初始化文件(如:5_ram.mif)。首先控制讀出初始化數(shù)據(jù),與載入的初始化文件中的數(shù)據(jù)進行比較,然后控制寫入一些數(shù)據(jù),再讀出比較;寫入的數(shù)據(jù)也可以在讀寫窗口中觀察mif文件的變化,導入的數(shù)據(jù)存儲在mif文件中。實驗3 程序計數(shù)器PC與地址寄存器AR實驗一、 實驗內容掌握地址單元的工作原理;掌握PC的兩種工作方式,加1計數(shù)和重裝計數(shù)器初值的實現(xiàn)方法;掌握地址寄存器AR從程序計數(shù)器PC獲得數(shù)據(jù)和從內部總線BUS獲得數(shù)據(jù)的實現(xiàn)方法。二、
12、 實驗原理a. 采用總線多路開關聯(lián)接方式地址單元主要由三部分組成:程序計數(shù)器PC、地址寄存器AR和多路開關BUSMUX。程序計數(shù)器PC用以指出下一條指令在主存中的存放地址,CPU正是根據(jù)PC的內容去存取指令的。因程序中指令是順序執(zhí)行的,所以PC有自增功能。程序計數(shù)器提供下一條程序指令的地址,如圖4-64所示,在T4時鐘脈沖的作用下具有自動加1的功能;在LDPC信號的作用下可以預置計數(shù)器的初值(如子程序調用或中斷相應等)。當LDPC為高電平時,計數(shù)器裝入data 端輸入的數(shù)據(jù)。aclr是計數(shù)器的清0端,高電平有效(高電平清零);aclr為低電平時,允許計數(shù)器正常計數(shù)。 地址寄存器AR(DFF_8
13、)鎖存訪問內存SRAM的地址。地址寄存器AR的地址來自兩個渠道,一是程序計數(shù)器PC的輸出,通常是下一條指令的地址;二是來自于內部數(shù)據(jù)總線的數(shù)據(jù),通常是被訪問操作數(shù)的地址。為了實現(xiàn)對兩路輸入數(shù)據(jù)的切換,在FPGA的內部通過總線多路開關BUSMUX進行選擇。LDAR與多路選擇器的sel相連,當LDAR為低電平,選擇程序計數(shù)器的輸出;當LDAR為高電平時,選擇內部數(shù)據(jù)總線的數(shù)據(jù)。圖3-1采用總線多路開關聯(lián)接方式b. 采用PC、AR通過三態(tài)門lpm_bustri與BUS連接程序計數(shù)器PC與地址寄存器AR結合,產(chǎn)生對存儲器RAM進行讀寫的地址。地址單元主要由三部分組成:程序計數(shù)器PC、地址寄存器AR和三
14、態(tài)門lpm_bustri。程序計數(shù)器PC用以指出下一條指令在主存中的存放地址,CPU正是根據(jù)PC的內容去存取指令的。程序計數(shù)器提供下一條程序指令的地址,在時鐘脈沖PC_CLK的作用下具有自動加1的功能;在LOAD_PC信號的作用下可以預置計數(shù)器的初值(如子程序調用或中斷響應等)。當LOAD_PC為高電平時,計數(shù)器裝入data7.0端輸入的數(shù)據(jù)。RST是計數(shù)器的清零端,高電平有效(高電平清零);RST為低電平時,允許計數(shù)器正常計數(shù)。地址寄存器AR采用鎖存器lpm_latch結構,鎖存訪問內存SRAM的地址。圖3-2 采用PC、AR通過三態(tài)門lpm_bustri與BUS連接三、 實驗任務a. 采用
15、總線多路開關聯(lián)接方式按照圖4-1,程序計數(shù)器原理圖編輯、輸入電路,實驗臺選擇0工作模式。對輸入原理圖進行編譯、引腳鎖定、并下載到實驗臺。首先下載pc_unit.sof,用模式鍵選模式“0”,再按一次右側的復位鍵;鍵2和鍵1可輸入8位總線數(shù)據(jù)B7.0(此值顯示于發(fā)光管D1D8和數(shù)碼管2/1);CLR(鍵5)按2次(010),產(chǎn)生一正脈沖,高電平清零;LDAR(鍵6)=0時,BUSMUX輸出程序計數(shù)器PC的值;LDAR=1時,BUSMUX輸出B7.0總線數(shù)據(jù)。LDPC(鍵7):程序計數(shù)器PC預置控制端,當LDPC=1時,將B7.0總線數(shù)據(jù)裝入程序計數(shù)器PC;當LDPC=0時,程序計數(shù)器PC處于計數(shù)
16、自動工作狀態(tài),對T4進行計數(shù);T4(鍵8):程序計數(shù)器PC的計數(shù)時鐘CLK,鍵8按動兩次產(chǎn)生一個計數(shù)脈沖。 通過B7.0設置程序計數(shù)器的預加載數(shù)據(jù)。當LDPC=0時,觀察程序計數(shù)器自動加1的功能;當LDPC=1時,觀察程序計數(shù)器加載輸出情況。b. 采用PC、AR通過三態(tài)門lpm_bustri與BUS連接按照圖4-2,對程序計數(shù)器原理圖進行編輯、輸入電路,采用LPM庫中的元件lpm_latch鎖存器、lpm_counter計數(shù)器和lpm_bustri總線三態(tài)輸出緩沖器進行設計,選擇電路模式No.0。四、 實驗步驟 1.軟件編譯2.仿真波形圖圖3-3 仿真波形圖3. 分析報告a. 采用總
17、線多路開關聯(lián)接方式所有鍵置0,鍵2/鍵1輸入A5;按鍵5àPC計數(shù)器清0(0à1à0); 連續(xù)按動鍵8,可以從數(shù)碼8/7上看到AR的輸出,即PC值;按鍵6,輸出高電平 1,選通直接輸出總線上的數(shù)據(jù)A5作為PC值,按鍵8,產(chǎn)生一個脈沖上升沿,即可看到AR(顯示在數(shù)碼8/7)的輸出為A5;使鍵6=0,仍選通PC計數(shù)器輸出,這時鍵2/1輸入86,按鍵7產(chǎn)生一個上升脈沖(0à1à0),即用LDPC將86加載進PC計數(shù)器;連續(xù)按動鍵8,可以發(fā)現(xiàn)AR的輸出在86上累加輸出:86、87、88等。b. 采用PC、AR通過三態(tài)門lpm_bustri與BUS連接鍵
18、1、鍵2輸入8位地址數(shù)據(jù),鍵3-8分別作為RST、PC_CLK、LOAD_PC、INPUT_B、PC_B、AR_CLK;D1-D8顯示輸入的地址數(shù)據(jù),數(shù)碼管1、2顯示地址鎖存器的輸出數(shù)據(jù)AR7.0,數(shù)碼管3、4顯示程序計數(shù)器的輸出數(shù)據(jù)PC7.0。對輸入原理如進行編譯、引腳鎖定,并下載到實驗臺進行硬件驗證。五、 問題分析從存儲器讀取運算數(shù)據(jù)和執(zhí)行指令操作時,地址控制單元完成的操作有何不同?存取運算數(shù)據(jù)時,PC計數(shù)器加一,AR從PC中讀取數(shù)據(jù);取指令操作時,PC和AR均從總線中讀取數(shù)據(jù)。實驗4 算術邏輯單元(ALU)設計實驗一、 實驗內容了解運算器的數(shù)據(jù)傳輸通路;驗證運算器的組合功能;掌握算術邏輯
19、運算加、減工作原理;驗證實驗臺運算的8位加、減、與、直通功能;按給定數(shù)據(jù),完成幾種指定的算術運算和邏輯運算。二、 實驗原理算術邏輯單元ALU的數(shù)據(jù)通路如圖4-1所示。圖4-1 算術邏輯單元ALU其中運算器ALU181根據(jù)74LS181的功能用VHDL硬件描述語言編輯而成,構成8位字長的ALU,VHDL語言的部分示例如圖4-2所示。參加運算的兩個8位數(shù)據(jù)分別為A7.0和B7.0。運算模式由S3.0的16種組合決定,而S3.0的值由4位二進制計數(shù)器LPM_COUNTER產(chǎn)生,計數(shù)時鐘是Sclk。ALU181的運算功能由圖4-3所示。圖4-2 生成ALU的VHDL程序圖4-3 ALU181的運算功能
20、三、 實驗任務按照圖4-1所示,在此驗證性示例中用A0_B1(鍵3)產(chǎn)生鎖存信號,將IN7.0的8位數(shù)據(jù)進入對應的8位數(shù)據(jù)鎖存器中;即首先使A0_B1(鍵3)=0,用鍵2、鍵1分別向A7.0置數(shù)(55H),這時在數(shù)碼管2、1上顯示輸入的數(shù)據(jù)(55H);然后用鍵3輸入高電平1,再用鍵2、鍵1分別向B7.0置數(shù)(AAH),這時在數(shù)碼管4、3上顯示輸入的數(shù)據(jù)(AAH);這時表示在圖中的兩個8位數(shù)據(jù)鎖存器中分別鎖入了加數(shù)55H和被加數(shù)AAH。設定鍵8為低電平,即M=0(允許算術操作),鍵6控制時鐘Sclk。若設定鍵8為高電平,即M=1,鍵6控制時鐘Sclk,設置S3.0=0-F,鍵7設置CN=0或CN
21、=1,驗證ALU的邏輯運算功能,并記錄實驗數(shù)據(jù)。四、 實驗步驟 1.軟件編譯2.仿真波形圖與ALU數(shù)據(jù)表表4-1 ALU數(shù)據(jù)表S3S2S1S0A7.0B7.0算術運算M=0邏輯運算M=1CN=0(無進位)CN=1(有進位)0000AA55AAAB550001AA55FF00000010AA55AAAB550011AA5500FF000100AA555455FF0101AA55A9AAAA0110AA555554FF0111AA55AAA9AA1000AA55AAAB551001AA55FF00001010AA55AAAB551011AA5500FF001100AA555455011101AA5
22、5A9AAAA1110AA555455FF1111AA55AAA9AA圖4-4 ALU仿真波形圖3.分析報告ALU數(shù)據(jù)表主要由計算得出,在給予S3、S2、S1和S0的初始值的前提下,根據(jù)圖4-3中的公式,使用算術計算或邏輯計算,得到所求值得結果,再在數(shù)碼管的顯示中判斷自己的計算是否正確。五、 實驗結果及問題分析或結論在實驗中,我們得到了正確的實驗結果及波形圖,在下載到試驗箱后,也看到了正確的顯示。實驗5 微控制器組成實驗一、 實驗內容掌握微程序控制器的工作原理和構成原理;掌握微程序的編寫、輸入,觀察微程序的運行。二、 實驗原理微程序控制電路是CPU控制器的核心電路,控制產(chǎn)生指令執(zhí)行時各部件協(xié)調
23、工作的所有控制信號,以及下一條指令的地址。微程序控制器的組成如圖5-1所示,主要由三個部件組成,分別是微指令控制電路、微指令寄存器和微指令存儲器LPM_ROM。圖5-1微程序控制器的電路結構a. 微指令控制電路微指令控制電路用組合電路對指令中的I7.2、操作臺控制信號SWA和SWB的狀態(tài)、狀態(tài)寄存器的輸出狀態(tài)FC、FZ,產(chǎn)生微地址變化的控制信號,實現(xiàn)對微地址控制,原理圖如圖5-2所示:圖5-2 微指令控制電路b. 微地址寄存器電路微地址寄存器控制電路的基本輸入信號是微指令存儲器的下地址字段M6.1,同時還受微指令控制電路的輸出信號SE6.1和復位信號RST的控制,輸出下一個微指令的地址;原理圖
24、如圖5-3所示:圖5-3 微地址寄存器電路c. 數(shù)據(jù)寄存器譯碼控制電路在指令中除了操作碼以外,還有源操作數(shù)寄存器和目的操作數(shù)寄存器。原理圖如5-4所示:圖5-4 數(shù)據(jù)寄存器譯碼控制三、 實驗任務a. 微指令控制電路輸入圖5-2微指令控制電路,并按照圖中說明鎖定引腳,編譯、下載到實驗系統(tǒng)中,選擇實驗臺電路模式1。根據(jù)微程序控制器的內部結構,記錄當FC、FZ變化時,微指令I7.2的變化對輸出微地址控制信號SE6.1的影響。觀察、記錄當微指令I7.2的值變化時,SE6.1的變化情況。觀察、記錄分支信號P4.1有效時,微指令I7.2的變化對輸出微地址控制信號SE6.1的影響。觀察、記錄SWA、SWB對
25、輸出微地址控制信號SE6.1的影響。b. 微地址寄存器電路輸入圖5-3微地址寄存器電路,并按照圖中說明鎖定引腳,編譯、下載到實驗系統(tǒng)中,選擇實驗臺電路模式1。觀察記錄微地址寄存器在正常工作情況下,由d6.1輸入、q6.1輸出的微地址實驗數(shù)據(jù),以及發(fā)生控制/轉移情況下,當S6.1信號有效時,q6.1輸出的微地址發(fā)生變化的情況。c. 數(shù)據(jù)寄存器譯碼控制電路輸入圖5-4數(shù)據(jù)寄存器譯碼控制電路,并按照圖中說明鎖定引腳,編譯、下載到實驗系統(tǒng)中,選擇實驗臺電路模式5。觀察、記錄微指令信號中I3.0的變化,控制信號LDRI、RD_B、RS_B、RJ_B的變化,對輸出選通信號LDR0-LDR2、R0_B-R2
26、_B的影響。四、 實驗步驟 1.軟件編譯2.分析報告a. 微指令控制電路鍵1、鍵2輸入6位微指令數(shù)據(jù)I7.2,鍵2中的高兩位還作為標志位FC、FZ;鍵3輸入分支控制信號P4.1;鍵4輸入控制臺的控制信號SWA、SWB;鍵8輸入節(jié)拍信號T4;數(shù)碼管5、6顯示微地址控制信號SE6.1。b. 微地址寄存器電路鍵1、鍵2輸入D觸發(fā)器數(shù)據(jù)d6.1;鍵4、鍵3輸入D觸發(fā)器置“1”控制信號S6.1,低電平有效;鍵7輸入D觸發(fā)器復位(清零)控制信號,低電平有效;鍵8輸入時鐘信號CLK;數(shù)據(jù)管7、8顯示D觸發(fā)器輸出信號q6.1。c. 數(shù)據(jù)寄存器譯碼控制電路LDR0-LDR2、R0_B-R2_B發(fā)光管顯示出譯碼的
27、結果。五、 問題分析當控制信號SWA、SWB取不同的值時,對微指令控制電路中輸出S6.1有何影響?SE6=1SE5=(FC+FZ)+T4+P3SE4=I7+T4+P1SE3=I6+T4+P1SE2=(I5*T4*P1+ I3*T4*P2+ SWB*T4*P4)SE1=(I4*T4*P1+ I2*T4*P2+ SWA*T4*P4)實驗6 基本模型機設計與實現(xiàn)一、 實驗內容深入理解基本模型計算機的功能和組成知識;深入學習計算機各類典型指令的執(zhí)行流程;學習微程序控制器的設計過程和相關技術,掌握LPM_ROM的配置方法;在掌握部件單元電路實驗的基礎上,進一步將單元電路組成系統(tǒng),構造成一臺基本模型計算機
28、;定義五條機器指令,并編寫相應的微程序,上機調試,掌握計算機整機概念,掌握微程序的設計方法,學會編寫二進制微指令代碼表;通過完整的計算機的設計,全面了解并掌握微程序控制方式計算機的設計方法。二、 實驗原理在微過程的控制下自動產(chǎn)生各部件單元控制信號,實現(xiàn)特定的功能。實驗中,計算機數(shù)據(jù)通路的控制將由微過程控制器來完成,CPU從內存中取出一條機器指令到指令執(zhí)行結束的一個指令周期,全部由微指令組成的序列來完成,即一條機器指令對應一個微程序。本實驗采用五條機器指令:IN(輸入)、ADD(二進制加法)、STA(存數(shù))、OUT(輸出)、JMP(無條件轉移)。8位模型計算機的數(shù)據(jù)通路框圖如圖6-1所示,微指令
29、流程圖如圖6-2所示。圖6-1 8位CPU的頂層設計電路原理圖圖6-2 微指令流程圖三、 實驗任務了解所有控制信號的作用;掌握在QuartusII環(huán)境下,采用圖形編輯方法的設計技術;掌握在微程序控制下機器指令的寫入、讀出和程序設計方法;掌握LPM_RAM的配置方法,實現(xiàn)對機器指令輸入;掌握微程序的設計方法,學會編寫二進制微指令代碼表;掌握對LPM_ROM的配置方法,實現(xiàn)微指令代碼表的輸入;設計新的指令和包含新指令的程序,在此CPU中運行。四、 實驗步驟 1.軟件編譯2.仿真波形圖無3.分析報告通過液晶屏,觀察各相關寄存器、ALU、DR1、PC、IR、AR、BUS、MC等內容的變化情況,根據(jù)圖6
30、-2微指令控制流程,單步跟蹤微程序的執(zhí)行情況。通過INPUT(鍵2、鍵1)輸入運算數(shù)據(jù),跟蹤程序的執(zhí)行情況,并詳細記錄每條微指令執(zhí)行后,相關單元輸出數(shù)據(jù)的變化情況,依次執(zhí)行機器指令,從而驗證所設計的正確性。最終可由液晶屏的顯示得到程序設計取得了正確的結果。五、 問題分析除了已有的IN、ADD、STA、OUT、JMP指令外,再設計減法SUB、帶進位加法ADDC、邏輯與AND、邏輯或OR和異或XOR指令,共10條指令;編寫相應微程序流程圖,寫出微程序代碼表,硬件實現(xiàn)選作。在原有指令的基礎上再添加五條新指令,微指令流程圖如下:圖6-3 補充后的微指令流程圖實驗7 K8051單片機核基本系統(tǒng)構建和測試
31、一、 具體應用描述在本次實驗中,我們使用K8051單片機核進行音樂播放器的構建和測試;在實驗中,我們使用了中斷發(fā)聲的方式,使用8051芯片內置定時器1的模式1(16位計時模式)來產(chǎn)生驅動喇叭的方波,通過設置計時值來控制產(chǎn)生聲波的頻率,而音節(jié)播放的時間通過使用循環(huán)指令實現(xiàn);通過對載入ROM內的匯編程序進行進一步編輯,我們在原有播放音樂的基礎上,進一步加入了暫停、快進、切歌的功能。二、 Quartus下硬件設計原理圖、模式及引腳說明1. 硬件設計原理圖 圖7-1 硬件設計原理圖我們使用K8051單片機核,單片機工作時鐘設置在20MHz。2. 模式及引腳說明在實驗中我們使用模式1,其中,復位鍵由鍵8
32、控制,高電平復位;鍵1控制快進,0為不快進,1為快進;鍵2控制暫停,0為不暫停,1為暫停;鍵3控制切歌,0為第一首歌,1為第二首歌。根據(jù)各鍵的功能鎖定引腳。除此之外,數(shù)碼管8、7顯示當前播放的音符,數(shù)碼管1顯示快進鍵的當前值,數(shù)碼管2顯示暫停鍵的當前值,數(shù)碼管顯示切歌鍵的當前值,從而方便調試與運行。除此之外,Dx發(fā)光管也根據(jù)頻率閃爍。結 束快進判斷是否暫停判斷是否快進取下一個音符和時長初始化切歌判斷是否切歌開 始暫停三、 軟件設計流程圖及相關描述首先,對初始環(huán)境進行初始化,然后判斷切歌鍵是否按下,若按下,則根據(jù)按鍵來判斷播放的音樂,若未按下,則繼續(xù)播放;再判斷是否按下暫停鍵,若按下,則暫停播放
33、,否則繼續(xù)播放;再判斷是否按下快進鍵,若按下,則快進播放樂曲,否則以正常速度播放。四、 音符計時值表格及計算方法圖7-2 各音符不同八度的頻率計時值 = 65536-11M/(12×頻率×2)經(jīng)過計算得到的音符頻率如下:圖7-3 計算得的各音符計時值五、 匯編源代碼(需加詳細注釋) ;用定時器T1方式1來產(chǎn)生歌譜中各音符對應頻率的方波,由P1.0輸出驅動喇叭。;節(jié)拍控制可通過調用延時子程序次數(shù)來實現(xiàn)。SPK EQU P1.0 ; 蜂鳴器所在端口PAUEQU P0.4QUIEQU P0.0SWI EQU P3.0ORG0000H;程序入口地址JMPSTARTORG001BH;
34、timer1中斷處理程序入口地址JMPTIME ;*;30H TAB OFFSET;31H DELAYCON OFFSET;32H TAB2 OFFSET;33H DELAYCON2 OFFSETORG0035HSWIVALUE:DB 01H;35HSWI VALUEORG0040HSTART:MOVTMOD,#10H;timer1方式1,16進制計數(shù)MOVIE,#88H;允許timer1中斷MOV30H,#0HMOV31H,#0HMOV32H,#0HMOV33H,#0HAG5:;CALLDELAYTEST;JMPAG5CLREACLRTR1MOVR1,#0E0HMOVR0,#00HMOVA,
35、R1 MOV P2,AMOVTH1,R1;計數(shù)值高8位MOVTL1,R0;低8位SETBTR1SETBEA;JMPAG5AG2:CLREAMOVA,SWIVALUE ;對切歌鍵的輸入進行判斷做數(shù)據(jù)準備ORLA,#0HJNZAG20MOVDPTR,#TAB1;樂譜1始地址MOVA,30HMOVCA,A+DPTRMOV R1,A;高8位INC30HMOVA,30HMOVDPTR,#TAB1;樂譜1始地址MOVCA,A+DPTRMOVR0,A;低8位JMPAG21AG20:MOVDPTR,#TAB2;樂譜2始地址MOVA,32HMOVCA,A+DPTRMOV R1,A;高8位INC32HMOVA,3
36、2HMOVDPTR,#TAB2;樂譜2始地址MOVCA,A+DPTRMOVR0,A;低8位AG21:SETBEAMOVA,R1MOV P2,AORLA,#00HJNZAG31JMPSTARTAG31:CLREACLRTR1MOVTH1,R1;計數(shù)值高8位MOVTL1,R0;低8位SETBTR1SETBEAMOVA,SWIVALUEORLA,#0HJNZAG22MOVA,31HMOVDPTR,#DELAYCON1;DELAYCON地址(音符的持續(xù)時長)MOVCA,A+DPTRJMPAG23AG22:MOVA,33HMOVDPTR,#DELAYCON2;DELAYCON地址MOVCA,A+DPTR
37、JMPAG23AG23:MOVR2,A;延時常數(shù)LOOP1:JMPDELAYAG33:DJNZR2,LOOP1;CPLP0.5MOVA,SWIVALUEORLA,#0HJNZAG24INC30HINC31HJMPAG25AG24:INC32HINC33HAG25:AJMPAG2;*產(chǎn)生定時延遲*;200MSDELAY:MOVR4,#006HDEL1:MOVR3,#0FFHAG1:MOVR5,#0FFHDJNZR5,$DJNZR3,AG1 ;SWITCHJBSWI,AG28;SWI=0MOVA,SWIVALUEORLA,#0HJZAG29;35H=1MOVSWIVALUE,#00HJMPSTAR
38、TJMPAG29AG28:;SWI=1MOVA,SWIVALUEORLA,#0HJNZAG29;35H=0MOVSWIVALUE,#1HJMPSTARTAG29:;PAUSE暫停JNBPAU,AG8CLRTR1AG9:JNBPAU,AG11JMPAG9AG11:SETBTR1AG8:;QUICK快進JNBQUI,AG12JMP AG13AG12:DJNZR4,DEL1AG13:JMPAG33;200MSDELAYTEST:MOVR4,#011HDEL10:MOVR3,#0FFHAG10:MOV A,R1MOV R6,AAG30:NOPNOPNOPNOPNOPNOPNOPNOPDJNZ R6,AG30CPLP1.
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 行政管理心理學中有效團隊建設試題及答案
- 深入探討建筑項目的商業(yè)模式設計試題及答案
- 行政管理的核心競爭力分析試題及答案
- 行政管理??普n程設置分析試題及答案
- 農地種植回收合同范例
- 行政公文的智能化處理研究試題及答案
- 農藥農膜化肥購銷合同范例
- 2025年管理心理學考試前瞻試題及答案
- 個人租房手寫合同范例
- 工程組織與管理試題及答案
- 醫(yī)療器械追溯制度
- 小學六年級下冊數(shù)學期末考試卷完整版
- 工程倫理案例與分析
- (高清版)WST 227-2024 臨床檢驗項目標準操作程序編寫要求
- 線路保護知識
- 漂珠檢測報告
- 2024年電氣試驗證考試題庫附答案
- 一年級下冊動物王國開大會課件
- 高原疾病急救培訓課件
- 唐代文學中的植物書寫研究
- 習題課 理想氣體的狀態(tài)方程及狀態(tài)變化圖像
評論
0/150
提交評論