版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、微程序控制器實(shí)驗(yàn)實(shí)驗(yàn)?zāi)康?掌握微程序控制器的組成原理。2掌握微程序的編制、寫入方法。3觀察并掌握微程序的運(yùn)行過程。二.實(shí)驗(yàn)原理微程序控制器的基本任務(wù)是完成當(dāng)前指令的翻譯和執(zhí)行,即將當(dāng)前指令的功能轉(zhuǎn)換成可 以控制的硬件邏輯部件工作的微命令序列,完成數(shù)據(jù)傳送和各種處理操作。它的執(zhí)行方法就 是將控制各部件動(dòng)作的微命令的集合進(jìn)行編碼,即將微命令的集合仿照機(jī)器指令一樣,用數(shù) 字代碼的形式表示,這種表示稱為微指令。這樣就可以用一個(gè)由多條微指令組成的序列表示 一條機(jī)器指令,這種微指令序列稱為微程序。微程序存儲(chǔ)在一種專用的存儲(chǔ)器小,稱為控制 存儲(chǔ)器,微程序控制器原理框圖如圖3.25所示。圖3.25微程序控制器
2、組成原理框圖控制器是嚴(yán)格按照系統(tǒng)時(shí)序來工作的,因而時(shí)序控制對于控制器的設(shè)訃是非常重要的, 從時(shí)序發(fā)生器設(shè)計(jì)實(shí)驗(yàn)可以很清楚地了解時(shí)序電路的工作原理,本實(shí)驗(yàn)所用的時(shí)序由時(shí)序單 元來提供,分為mjfltsl和ts2 o本實(shí)驗(yàn)所用的微程序控制器單元主要由編程部分和核心微控器組成,如圖3.26所示。 其屮,控制存儲(chǔ)器采用3片2816的e2pr0m構(gòu)成,具有掉電保護(hù)功能;微命令寄存器18位,用兩片8d觸發(fā)器(273)和一片4d觸發(fā)器(175)組成;微地址寄存器6位,用三片 正沿觸發(fā)的雙d觸發(fā)器(74)組成,它們帶有清“0”端和預(yù)置端,通過一個(gè)74ls245輸入 微地址,并通過ma5ma0顯示;微代碼由co
3、n單元的sd27sd20、sd17sd10、sd07sd00共24個(gè)二進(jìn)制開關(guān)給出,通過3個(gè)74ls245輸入并在m23m0上顯示;t1為微地址輸出鎖 存器(74ls74)、微代碼輸岀鎖存器(74ls273、74ls175)的時(shí)鐘信號(hào)。在不判別測試的情 況下,t1時(shí)刻打入微地址寄存器的內(nèi)容即為下一條微指令地址。當(dāng)t2時(shí)刻進(jìn)行測試判別時(shí), 轉(zhuǎn)移邏輯滿足條件后輸出的負(fù)脈沖通過強(qiáng)置端將某一觸發(fā)器置為“1”狀態(tài),完成地址修改;clr為清零信號(hào)的引出端, 實(shí)驗(yàn)平臺(tái)中已接至con單元中最右邊的clr按鈕上, 該二進(jìn)制 按鈕為clr專用;se3-se0端掛接到cpu指令譯碼器的輸出端,通過譯碼器確定相應(yīng)機(jī)器
4、指 令的微代碼入口,也可人為手動(dòng)模擬cpu指令譯碼器的輸出,達(dá)到同樣的目的。編程部分通過編程開關(guān)的相應(yīng)狀態(tài)選擇及由t1引入的節(jié)拍脈沖,來完成將預(yù)先定義的 微程序代碼寫入具有掉電保護(hù)功能的控制存儲(chǔ)器中,并可以對控制存儲(chǔ)器中的程序進(jìn)行校驗(yàn), 方便實(shí)現(xiàn)本機(jī)現(xiàn)場直接編程功能。程序開關(guān)位于實(shí)驗(yàn)平臺(tái)的左邊中部,它具有三種狀態(tài):編程、校驗(yàn)、運(yùn)行。(1)處于“編程”狀態(tài)吋,微地址由addr單元給出,微代碼輸入三態(tài)門打開,后續(xù)微 地址三態(tài)門關(guān)閉,同時(shí)控制存儲(chǔ)器2816寫有效、讀無效。此時(shí)若啟動(dòng)時(shí)序電路,即可根據(jù) 微地址和微指令格式將微指令二進(jìn)制代碼寫入到控制存儲(chǔ)器2816中,并在相應(yīng)的顯示燈上 顯示。(2)處于
5、“校驗(yàn)”狀態(tài)時(shí),微地址由addr單元給出,微代碼輸入三態(tài)門關(guān)閉,后續(xù)微 地址三態(tài)門關(guān)閉,同吋控制存儲(chǔ)器2816讀有效、寫無效。可以讀出相應(yīng)微地址中的微代碼 并在微代碼顯示燈(m23m0)上顯示,對寫入控制存儲(chǔ)器中的二進(jìn)制代碼進(jìn)行驗(yàn)證,判斷 寫入的二進(jìn)制代碼是否正確。(3)處于“運(yùn)行”狀態(tài)時(shí),微地址由微地址寄存器給出,微代碼輸入三態(tài)門關(guān)閉,后續(xù) 微地址三態(tài)門打開,同時(shí)2816讀有效、寫無效。此時(shí)若啟動(dòng)時(shí)序電路,即從微地址顯示燈(ma5-ma0)顯示的微程序入口微地址開始,根據(jù)微程序流程圖自動(dòng)執(zhí)行微程序。編程和校驗(yàn)狀態(tài)均需要按照接線圖接線。此外,圖中的微地址寄存器輸出端增加了一組三態(tài)門,冃的是隔離
6、觸發(fā)器的輸出,增加 抗干擾能力,并用來驅(qū)動(dòng)微地址顯示燈。核心微控器主要是接收機(jī)器指令譯碼器送來的代碼, 使控制轉(zhuǎn)向相應(yīng)機(jī)器指令對應(yīng)的首 條微代碼程序,對機(jī)器指令的功能進(jìn)行解釋或執(zhí)行的工作。具體來講,就是通過接收cpu指令譯碼器發(fā)來的信號(hào),找到該機(jī)器指令對應(yīng)的首條微代碼的入口微地址,再通過由t1引 入的時(shí)序節(jié)拍脈沖的控制,逐條讀出微代碼。然后,其中幾位經(jīng)過譯碼,一并產(chǎn)生實(shí)驗(yàn)平臺(tái) 所需的控制信號(hào),將它們加到數(shù)據(jù)通路屮相應(yīng)的控制位,可對該機(jī)器指令的功能進(jìn)行解釋和 執(zhí)行。指令解釋到最后,再繼續(xù)接收下一條機(jī)器指令代碼,并使控制轉(zhuǎn)到對應(yīng)的入口微地址, 這樣周而復(fù)始,即可實(shí)現(xiàn)機(jī)器指令程序的運(yùn)行。匝 326感
7、輕jpm圭一誰m崔yajd7 . dot 二.a 言fess m,b3円養(yǎng)鬥s er &j;g 333 3s3 3二禺往左房比 c5dp-d-g &q-m-q-q-o-e q_q_n.o_p_q-qq.n_138譯碼138譯碼b-iecnmivion*nrj74ls245 c|q138譯碼c rec|:a 74ls1754d728161a5 . afl-m h d - 彳-0-q-5 o-b-sb27 .別20s17 s10 sm7 .74ls232816csmax. mw巧ao74isji7貶28,6ia5 . ao見p22p2.1p2qan單片機(jī)cm跟元核心微控器是根據(jù)m2
8、3m0所顯示的相應(yīng)控制位,再經(jīng)過部分譯碼產(chǎn)生的二進(jìn)制信號(hào) 實(shí)現(xiàn)機(jī)器指令程序的順序、分支以及循環(huán)運(yùn)行,所以有效地定義24位微代碼對系統(tǒng)的設(shè)計(jì) 至關(guān)重要。本實(shí)驗(yàn)中的微指令字長共24位,控制位順序如表3.8所示。表3.8微指令格式232221201918-1514-1211-98-65-0m23m22wr rdi0ms3-s0a字段b字段c字段ma5-ma0其屮,ma5-ma0為6位的后續(xù)微地址;a、b、c為三個(gè)譯碼字段,分別由三個(gè)控制位 譯碼出多位,c字段中的p為測試字位。其功能是根據(jù)機(jī)器指令及相應(yīng)微代碼進(jìn)行譯碼, 使微程序轉(zhuǎn)入相應(yīng)的微地址入口,從而實(shí)現(xiàn)完成對指令的識(shí)別,并實(shí)現(xiàn)微程序的分支,本實(shí)
9、驗(yàn)系統(tǒng)中的指令譯碼原理如圖1.6所示,指令譯碼邏輯在ir單元的ins_dec (gal20v8)中 實(shí)現(xiàn), 其中17-12為指令寄存器的第7-2位輸出,se3-se0為微控器單元微地址鎖存器的強(qiáng) 置端輸出。從圖3.26中也可以看出,微控器產(chǎn)生的控制信號(hào)比表3.8中的要多,這是因?yàn)閷?shí)驗(yàn)的不 同,所需的控制信號(hào)也不一樣,本實(shí)驗(yàn)只用了部分的控制信號(hào)。本實(shí)驗(yàn)除了用到指令寄存器(ir)和通用寄存器r0外,還要用到in和out單元,從微 控器出來的信號(hào)中只有iom. wr和rd三個(gè)信號(hào),所以對這兩個(gè)單元的讀寫信號(hào)還應(yīng)先經(jīng) 過譯碼,其譯碼原理如圖1.16所示。ir單元的原理圖如圖1.5所示,r0單元原理如圖
10、1.3所示,in單元的原理圖見圖1.14所示,out單元的原理圖見圖1.15所示。本實(shí)驗(yàn)安排了四條機(jī)器指令,分別為add(0000 0000)in(0010 0000)out(0011 0000)和hlt (01010000),括號(hào)中為各指令的二進(jìn)制代碼,指令格式如表3.9所示,其中高4位 為操作碼。表3.9指令格式助記符機(jī)器指令碼說明in0010 0000in troadd0000 0000r0 + rot r0out0011 0000rotouthlt0101 0000停機(jī)實(shí)驗(yàn)中的4條機(jī)器指令由con單元的二進(jìn)制開關(guān)手動(dòng)給出,其余單元的控制信號(hào)均市 微程序控制器自動(dòng)產(chǎn)生,為此可以設(shè)計(jì)出相應(yīng)
11、的數(shù)據(jù)通路圖,見圖3 . 2 7所示。4條機(jī)器指令對應(yīng)的參考微程序流程圖如圖3.28所示。圖中一個(gè)矩形方框表示一條微指 令,方框中的內(nèi)容為該指令執(zhí)行的微操作,右上角的數(shù)字是該條指令的微地址,右下角的數(shù) 字是該條指令的后續(xù)微地址,所有微地址均用16進(jìn)制表示。向下的箭頭指出了下一條要執(zhí)a字段b字段c 字段14 13 12選擇000nop001lda010ldb011ldr0100保留101保留110保留111ldir11 109選擇000nop001alu b010ro b011保甬100保留101保留110保留111保留876選擇000nop001p010保留011保留100保留101保留110
12、保留111保留行的指令。pv1為測試字,根據(jù)條件使微程序產(chǎn)生分支。00將全部微程序按微指令格式變成二進(jìn)制微代碼,可得到表3.10的二進(jìn)制代碼表。表3.1()二進(jìn)制微代碼表地址地址十六進(jìn)制十六進(jìn)制高五位高五位s3-s0a 字段字段b 字段字段c 字段字段ma5-ma00000 00 010000000000000000000000010100 70 700000000001110000011100000400 24 050000000000100100000001010501 b2 01000001001oil0010000000013000 14 04000000000001010000000
13、1003218 30 01000110000oil0000000000013328 04 010010100000000100000000013500 00 35000000000000000000110101三.實(shí)驗(yàn)結(jié)果1.加法指令:(1)將微程序?qū)懭胛募?lián)機(jī)軟件提供了微程序下載功能,以代替手動(dòng)讀寫微控器,但微程序得以指定的格式寫 入到以txt為后綴的文件中,微程序的格式如下:微指令格式說明:$m xx xxxxxxf微指令代碼- 十六進(jìn)制地址-微指令標(biāo)志如$m if 112233,表示微指令的地址為1fh,微指令值為11h(高)、22h(中)、33h(低),本次實(shí)驗(yàn)的微程序如下,其中分號(hào)“
14、;”為注釋符,分號(hào)后面的內(nèi)容在下載時(shí)將被忽略掉。/*;/微控器實(shí)驗(yàn)指令文件/;/;*start of microcontroller data * /$m 00 000001; nop$m 01 007070 ; con(ins)-ir, p$m 04 002405 ; r0-b$m 05 04b201; a加b-r0$m 30 001404 ; r0-a$m 32 183001; in-r0/;/*/$m 33 280401; ro-out$m 35 000035; nop;/* end of microcontroller data * /(2)寫入微程序用聯(lián)機(jī)軟件的“轉(zhuǎn)儲(chǔ)”- “裝載”功
15、能將該格式(xtxt )文件裝載入實(shí)驗(yàn)系統(tǒng)。裝入 過程屮,在軟件的輸出區(qū)的“結(jié)果”欄會(huì)顯示裝載信息,如當(dāng)前正在裝載的是機(jī)器指令還是 微指令,還剩多少條指令等。(3)校驗(yàn)微程序選擇聯(lián)機(jī)軟件的“轉(zhuǎn)儲(chǔ)”- “刷新指令區(qū)”可以讀出下位機(jī)所有的機(jī)器指令和微指令, 并在指令區(qū)顯示。檢查微控器相應(yīng)地址單元的數(shù)據(jù)是否和表3.10屮的十六進(jìn)制數(shù)據(jù)相同, 如果不同,則說明寫入操作失敗,應(yīng)重新寫入,可以通過聯(lián)機(jī)軟件單獨(dú)修改某個(gè)單元的微指 令,先用鼠標(biāo)左鍵單擊指令區(qū)的“微存”tab按鈕,然后再單擊需修改單元的數(shù)據(jù),此吋該 單元變?yōu)榫庉嬁?,輸?位數(shù)據(jù)并回車,編輯框消失,并以紅色顯示寫入的數(shù)據(jù)。運(yùn)行微程序按圖3.30所
16、示連接實(shí)驗(yàn)線路,仔細(xì)查線無誤后接通電源。如果有“嘀”報(bào)警聲,說明 總線有競爭現(xiàn)象,應(yīng)關(guān)閉電源,檢查接線,直到錯(cuò)誤排除。運(yùn)行吋也分兩種情況:本機(jī)運(yùn)行和聯(lián)機(jī)運(yùn)行。1)本機(jī)運(yùn)行圖3.30實(shí)驗(yàn)接線圖(1)將mc單元的編程開關(guān)置為“運(yùn)行”檔,mem單元的編程開關(guān)也置為“運(yùn)行”檔, 按動(dòng)con單元的clr按鈕, 將微地址寄存器(mar)清零, 同吋也將指令寄存器(ir)、alu單元的暫存器a和暫存器b清零。(2)將時(shí)序單元的狀態(tài)開關(guān)置為“單拍”檔,然后按動(dòng)ts按鈕,體會(huì)系統(tǒng)在t1和t2節(jié)拍中各做的工作。t1節(jié)拍微控器將后續(xù)微地址(下條執(zhí)行的微指令的地址)打入微地址 寄存器,當(dāng)前微指令打入微指令寄存器,并產(chǎn)
17、生執(zhí)行部件相應(yīng)的控制信號(hào);t2節(jié)拍根據(jù)t1擴(kuò)展單元t1t2wrri)10mrs bu)rialu bldaldbs3sold1rpse5seoall balu單元b7*. b0*時(shí)序單元ts1ts2控制總線10rwrrd1( (lda【 )b7. b0cpl內(nèi)總線ld1kp1r單元節(jié)拍產(chǎn)生的控制信號(hào)做出相應(yīng)的執(zhí)行動(dòng)作,如果測試位有效,還要根據(jù)機(jī)器指令及當(dāng)前微地 址寄存器中的內(nèi)容進(jìn)行譯碼,使微程序轉(zhuǎn)入相應(yīng)的微地址入口,實(shí)現(xiàn)微程序的分支。(3)按動(dòng)con單元的clr按鈕, 清零微地址寄存器(mar)等, 并將時(shí)序單元的狀態(tài)開 關(guān)置為“單步”檔。置in單元數(shù)據(jù)為00100011,按動(dòng)ts按鈕,當(dāng)mc
18、單元后續(xù)微地址顯示為000001時(shí), 在con單元的sd27sd20模擬給出in指令00100000并繼續(xù)單步執(zhí)行, 當(dāng)mc單元后續(xù)微 地址顯示為000001時(shí),說明當(dāng)前指令已執(zhí)行完;在con單元的sd27sd20給出add指令00000000,該指令將會(huì)在下個(gè)t2被打入指令寄存器(ir),它將r0屮的數(shù)據(jù)和其自身相加 后送r0;接下來在con單元的sd27sd20給出out指令00110000并繼續(xù)單步執(zhí)行,在mc單元后續(xù)微地址顯示為000001時(shí),觀查out單元的顯示值是否為olooolloo以下為加法的截圖:控制狀杰羨件控制址杏條件ap33總t二4 =二一*:t tt t0s.h80s.h8ld0ld00 0養(yǎng)2減法指令:只需要加載新的微程序文件即可,如下:/*;/微控器實(shí)驗(yàn)指令文件/;/*;*start of microcontroller data * /$m 00 000001; nop$m 01 007070 ; con(ins)-ir, p$m 04 002405 ; r0-b$m 05 05b201; a減b-r0$m 30 001404 ; r0-a$m 32 183001; in-r0$m 33 280401; r0-out
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度灌注樁勞務(wù)分包合同合同履行中的合同解除與終止
- 2025年度核電站施工合同核安全與應(yīng)急響應(yīng)預(yù)案
- 2025年度酒店廚房設(shè)備承包合同書示范文本
- 2025年度山林生態(tài)旅游產(chǎn)品研發(fā)與生產(chǎn)合同
- 2025年度建筑周轉(zhuǎn)材料租賃與綠色施工合同
- 2025年度智慧倉儲(chǔ)庫房租賃服務(wù)合同
- 2025年度古建筑修復(fù)刮大白工程合同
- 2025年度國際貨運(yùn)代理服務(wù)合同(2025年度特別版)
- 2025年度工地門衛(wèi)勞動(dòng)合同范本及績效考核細(xì)則
- 2025年國際酒店集團(tuán)特色菜品樣品引進(jìn)合同模板
- 病案管理質(zhì)量控制指標(biāo)檢查要點(diǎn)
- 2024年西藏中考物理模擬試題及參考答案
- 九型人格與領(lǐng)導(dǎo)力講義
- 藥品經(jīng)營和使用質(zhì)量監(jiān)督管理辦法培訓(xùn)試題及答案2023年9月27日國家市場監(jiān)督管理總局令第84號(hào)公布
- 人教版五年級(jí)上冊數(shù)學(xué)脫式計(jì)算練習(xí)200題及答案
- 卵巢黃體囊腫破裂教學(xué)查房
- 醫(yī)院定崗定編
- 計(jì)算機(jī)網(wǎng)絡(luò)畢業(yè)論文3000字
- 2023年大學(xué)物理化學(xué)實(shí)驗(yàn)報(bào)告化學(xué)電池溫度系數(shù)的測定
- 腦出血的護(hù)理課件腦出血護(hù)理查房PPT
- 煤礦機(jī)電運(yùn)輸安全培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論