控制單元的設(shè)計(jì)教案_第1頁
控制單元的設(shè)計(jì)教案_第2頁
控制單元的設(shè)計(jì)教案_第3頁
控制單元的設(shè)計(jì)教案_第4頁
控制單元的設(shè)計(jì)教案_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、計(jì)算機(jī)組成原理第十章控制單元的設(shè)計(jì)主要內(nèi)容: 控制單元的設(shè)計(jì)方法微程序設(shè)計(jì)及控制單元。目的:掌握控制單元設(shè)計(jì)思路和基本原則、步驟。重點(diǎn)內(nèi)容:( 1)組合邏輯設(shè)計(jì);( 2)微操作的節(jié)拍安排和基本原則;( 3) 組合邏輯設(shè)計(jì)步驟?;局v授內(nèi)容:(1)組合邏輯控制單元;(2)節(jié)拍安排的基本原則和典型微操作節(jié)拍:a. 取指周期節(jié)拍安排b. 間址周期節(jié)拍安排c. 中斷周期節(jié)拍安排d. 執(zhí)行周期節(jié)拍安排(略講) );(3)組合邏輯設(shè)計(jì)步驟:a. 微操作操作時(shí)間表b. 最簡邏輯表達(dá)式c. 操作命令邏輯圖(4) 微程序設(shè)計(jì)a. 微程序控制單元基本工作原理b.微指令的編碼方式 c. 微指令序列地址形成d. 微指

2、令格式e. 靜態(tài)微程序和動(dòng)態(tài)微程序(略)1計(jì)算機(jī)組成原理10.1組合邏輯設(shè)計(jì)1 組合邏輯控制單元框圖圖 1 為簡化的控制單元框圖。存放在 ir 的 n 位操作碼經(jīng)過一個(gè)譯碼電路產(chǎn)生 2“個(gè)輸出,每對應(yīng)一種操作碼都有一個(gè)輸出送至 cu??刂茊卧臅r(shí)鐘輸入實(shí)際上是一個(gè)脈沖序列,其頻率即為機(jī)器的主頻,它使 cu能按一定的節(jié)拍( t)發(fā)出各種控制信號。以時(shí)鐘為計(jì)數(shù)脈沖,通過一個(gè)計(jì)數(shù)器(又稱節(jié)拍發(fā)生器)便可產(chǎn)生一個(gè)與時(shí)鐘周期等寬的節(jié)拍序列。圖 1 帶譯碼和節(jié)拍輸入的控制單元框圖2 微操作的節(jié)拍安排假設(shè)機(jī)器采用同步控制,每個(gè)機(jī)器周期包含 3 個(gè)節(jié)拍,而且 cpu內(nèi)部結(jié)構(gòu)如圖 93 所示,其中 mar和 m

3、dr分別直接和地址總線和數(shù)據(jù)總線相連,并假設(shè) ir 的地址碼部分與 mar之間有通路。2計(jì)算機(jī)組成原理控制信號圖 9.3 未采用 cpu內(nèi)部總線方式的數(shù)據(jù)通路和控制信號安排微操作節(jié)拍時(shí)應(yīng)注意三點(diǎn):第一,有些微操作的次序是不容改變的,故安排微操作節(jié)拍時(shí)必須注意微操作的先后順序。第二,凡是被控制對象不同的微操作,若能在一個(gè)節(jié)拍內(nèi)執(zhí)行,應(yīng)盡可能安排在同一個(gè)節(jié)拍內(nèi),以節(jié)省時(shí)間。第三,如果有些微操作所占的時(shí)間不長,應(yīng)該將它們安排在一個(gè)節(jié)拍內(nèi)完成,并且允許這些微操作有先后次序。按上述三條原則,以 91 所分析的 10 條指令為例,其微操作的節(jié)拍安排如下:1)、取指周期微操作的節(jié)拍安排根據(jù)原則二, t0 節(jié)

4、拍安排兩個(gè)微操作: pcmar,1r;根據(jù)原則二, t1 節(jié)拍安排兩個(gè)微操作:m(mar)mdr和(pc)+1pct2 節(jié)拍安排 mdrir,可同時(shí)安排指令譯碼op(ir) id(pc)+1pc操作也可安排在t2 節(jié)拍內(nèi),因 pcmar后,pc的內(nèi)容就可修改。2)、間址周期微操作的節(jié)拍安排t0:ad(ir) mar,l r3計(jì)算機(jī)組成原理t1:m(mar)mdrt2:mdrad(ir)3)、執(zhí)行周期微操作的節(jié)拍安排? 非訪存指令 清除累加器指令 cla。該指令在執(zhí)行周期只有一個(gè)微操作,按同步控制的原則,此操作可安排在 t0t2 的任一節(jié)拍內(nèi),其余節(jié)拍空,如t0t1t2 0 ac 累加器取反指令

5、com累加器取反操作可安排在t0 t2 的任一節(jié)拍中,即t0t1t2 ac ac 算術(shù)右移一位指令shrt0t1t2 l(ac) r(ac),ac0ac0 循環(huán)左移一位指令cslt0t1t2 r(ac) l(ac),ac0acn 停機(jī)指令 stpt0t1t2 o g? 訪存指令 加法指令 addxt0 ad(ir)mar,1r4計(jì)算機(jī)組成原理t1 m(mar)mdrt2 (ac)+(mdr) ac(實(shí)際含 (ac)alu,(mdr)alu,alu ac) 存數(shù)指令 staxt0 ad(ir)mar,1wt1 ac mdrt2 mdrm(mar) 取數(shù)指令 ldaxt0 ad(ir)mar,1r

6、t1 m(mar)mdrt2 mdrac? 轉(zhuǎn)移類指令 無條件轉(zhuǎn)移指令 jmpxt0t1t2 ad(ir)pc 有條件轉(zhuǎn)移 ( 負(fù)則轉(zhuǎn) ) 指令 banxt0t1t2 a 0?ad(ir) a0?(pc) pc4)、中斷周期微操作的節(jié)拍安排cpu進(jìn)入中斷周期, 由中斷隱指令完成下列操作 (假設(shè)程序斷點(diǎn)存入主存 0 號地址單元內(nèi)):t0 0 mar,1wt1 pc mdrt2 mdrm(mar),向量地址 pccpu進(jìn)入中斷周期,由硬件將允許中斷觸發(fā)器eint 置為“ 0”。3 組合邏輯設(shè)計(jì)步驟組合邏輯設(shè)計(jì)控制單元步驟:? 根據(jù)上述微操作的節(jié)拍安排,列出微操作命令的操作時(shí)間表;5計(jì)算機(jī)組成原理?

7、 寫出每一個(gè)微操作命令 ( 控制信號 ) 的邏輯表達(dá)式;? 根據(jù)邏輯表達(dá)式畫出相應(yīng)的組合邏輯電路圖。1)、列出微操作命令的操作時(shí)間表表 1 列出了上述 10 條機(jī)器指令微操作命令的操作時(shí)間表。表中:fe、ind 和 ex為 cpu工作周期標(biāo)志, t0 t2 為節(jié)拍, i 為間址標(biāo)志。工作周期標(biāo)記fe( 取指 )ind( 間址 )ex( 執(zhí)行 )表 1操作時(shí)間表狀態(tài)微操作命令信號calcom shrcslstpaddsatldajmpban節(jié)拍條件t0pc mar11111111111 r1111111111t1m(mar) mdr1111111111(pc)+1 pc1111111111mdr

8、 ir1111111111t2op(m) id11111111111 ind11111ii1 ex1111111l1lt0ad(ir) mar111111一 r11111t1m(mar) mdr11111t2mdr ad(ir)111111 ex11111/indt0ad(ir) mar1111 r111 w1t1m(mar) mdr11(ac) mdr1(ac)+(mdr) ac1mdr m(mar)1mdr ac10 ac1/ac ac1t2r(ac) l(ac) ,1aco不變 -1 (ac)1ad(ir) pc1aoad(ir) pc!o g16計(jì)算機(jī)組成原理2)、寫出微操作命令的最簡

9、邏輯表達(dá)式根據(jù)表 10.1 可列出每一個(gè)微操作命令的初始邏輯表達(dá)式,經(jīng)化簡、整理便可獲得能用現(xiàn)成電路實(shí)現(xiàn)的微操作命令邏輯表達(dá)式。例如,根據(jù)表可寫出m(mar)mdr微命令的邏輯表達(dá)式:m(mar)mdrfe?t1+ind?t1(add+sta十 lda+jmp+ban)+ex?t1(add+lda)t1fe+ind(add+sta+lda+jmp+ban)+ex(add+lda)式中 add、sta、lda、jmp、ban均來自操作碼譯碼器的輸出。3)、畫出微操作命令的邏輯圖對應(yīng)每一個(gè)微操作命令的邏輯表達(dá)式都可畫出一個(gè)邏輯圖。如m(mar) mdr的邏輯表達(dá)式所對應(yīng)的邏輯圖如圖 10.2 所示

10、,圖中未考慮門的扇入系數(shù)。圖 2 產(chǎn)生 m(mar)mdr命令的邏輯圖組合邏輯設(shè)計(jì)方法的特點(diǎn):? 思路清晰,簡單明了;? 每一個(gè)微操作命令都對應(yīng)一個(gè)邏輯電路;? 線路結(jié)構(gòu)十分龐雜,也不規(guī)范;? 指令系統(tǒng)功能越全,線路也越復(fù)雜,調(diào)試越困難。7計(jì)算機(jī)組成原理10.2微程序設(shè)計(jì)1 微程序設(shè)計(jì)思想的產(chǎn)生微程序設(shè)計(jì)思想由英國劍橋大學(xué)教授m.v.wilkes 在 1951 年提出。? 設(shè)想采用與存儲程序類似的辦法解決微操作命令序列的形成;? 將一條機(jī)器指令編寫成一個(gè)微程序,每一個(gè)微程序包含若干條微指令,每一條微指令對應(yīng)一個(gè)或幾個(gè)微操作命令。? 微指令以二進(jìn)制代碼形式表示,每位代表一個(gè)控制信號;? 微程序存

11、于控制存儲器(簡稱控存) ;優(yōu)點(diǎn):? 設(shè)計(jì)更簡便,無需化簡邏輯表達(dá)式,無需考慮邏輯門級數(shù)和門的扇入系數(shù)。? 修改微指令代碼就可改變操作內(nèi)容,便于調(diào)試、修改和仿真。2 微程序控制單元框圖及工作原理(1)、機(jī)器指令對應(yīng)的微程序一條機(jī)器指令對應(yīng)一個(gè)微程序(微操作命令序列)??刂拼鎯ζ鱩m+1m+1m+2取指周期微程序m+2間址周期微程序轉(zhuǎn)執(zhí)行周期微程序中斷周期微程序轉(zhuǎn)取指周期微程序pp+1p+1p+2對應(yīng) lda操作的微程序p+2mqq+1q+1q+2對應(yīng) add操作的微程序q+2mkk+1k+1k+2對應(yīng) sta操作的微程序k+2m8計(jì)算機(jī)組成原理jj+1j+1m對應(yīng) jmp操作的微程序圖 3 不

12、同機(jī)器指令所對應(yīng)的微程序? 每一條機(jī)器指令都與一個(gè)微程序?qū)?yīng)。? 取指周期、間址周期和中斷周期的操作編成獨(dú)立的微程序;(2)微程序控制單元的基本框圖標(biāo)志clk圖 4 微程序控制單元的基本組成操作控制順序控制圖 5微指令的基本格式(3)、工作原理假設(shè)有一個(gè)用戶程序如下所示(存在2000h開設(shè)的主存空間內(nèi))ldaxaddy9計(jì)算機(jī)組成原理stazstp微程序控制單元的工作原理:首先將用戶程序的首地址送至pc,然后進(jìn)入取指階段。(1) 取指階段將取指周期微程序首地址 mcmar:取微指令,將對應(yīng)控存 m 地址單元中的第一條微指令讀到控存數(shù)據(jù)寄存器中,記作cm(cmar)cmdr:產(chǎn)生微操作命令;第一

13、條微指令的操作控制字段中為“l(fā) ”的各位發(fā)出控制信號,如pcmar,l r,命令主存接受程序首地址并進(jìn)行讀操作。形成下一條微指令的地址:微指令的順序控制字段指出了下一條微指令的地址為m+1,將 m+1送至cmar。取下一條微指令;將控存 m+1地址單元的第二條微指令讀到cmdr中,即cm(cmar)cmdr產(chǎn)生微操作指令;由第二條微指令的操作控制字段中對應(yīng)“ 1”的各位發(fā)出控制信號,如m(mar)mdr使對應(yīng)主存 2000h地址單元中的第一條機(jī)器指令從主存中讀出送至 mdr中。形成下一條微指令的地址:將第二條微指令下地址字段指出的地址m+2送至 cmar,即ad(cmdr)cmar如此類推,直

14、到取出取指周期最后一條微指令,并發(fā)出微命令為止,此時(shí)第一條機(jī)器指令 lda x 已存至指令寄存器 ir 中。(2) 執(zhí)行階段取數(shù)指令微程序首地址的形成:當(dāng)取數(shù)指令存入 ir 后,其操作碼 op(ir) 直接送到微地址形成部件, 該10產(chǎn)生微操作命令:如此類推,直到取出取數(shù)指令微程序的最后一條微指令計(jì)算機(jī)組成原理部件的輸出即為取數(shù)指令微程序的首地址p,且將 p送至 cmar,記作 op(ir) cmar取微指令;將對應(yīng)控存 p 地址單元中的微指令讀到 cmdr中,即cm(cmar) cmdr產(chǎn)生微操作命令;由微指令操作控制字段中對應(yīng) “1”的各位發(fā)出控制信號, 如 ad(ir) mar,1r,命

15、令主存讀操作數(shù)。形成下一條微指令的地址;將此條微指令下地址字段指出的 p+1送至 cmar,即 ad(cmdr)cmar 取微指令,即 cm(cmar)cmdr:p+2,并發(fā)出微命令,至此即完成了將主存x 地址單元中的操作數(shù)取至累加器ac的操作。自此可見,對微程序控制單元的控存而言,內(nèi)部信息一旦按所設(shè)計(jì)的微程序被灌注后, 在機(jī)器運(yùn)行過程中,只須具有讀出的性能即可,故可采用 rom 實(shí)現(xiàn)。3 微指令的編碼方式微指令的編碼方式又叫微指令的控制方式,它是指如何對微指令的控制字段進(jìn)行編碼,以形成控制信號。(1)、直接編碼 ( 直接控制 ) 方式? 在微指令的操作控制字段中,每一位代表一個(gè)微命令,這種編

16、碼方式即為直接編碼方式。? 控制字段中的某位為“ l ”表示控制信號有效,某位為“ 0”表示控制信號無效。? 特點(diǎn)含義清晰,但機(jī)器中微命令較多,可能使微指令操作控制字段達(dá)幾百位,造成控存容量極大??刂菩盘?1計(jì)算機(jī)組成原理下地址操作控制圖 6 直接編碼方式(2)、字段直接編碼方式將微指令的操作控制字段分成若干段,每一段為一個(gè)微命令的編碼,通過對字段譯碼后產(chǎn)生微命令。? 采用編碼技術(shù)可以縮短微指令的長度。? 同一組的微命令相互排斥,不能并行。? 需要譯碼電路,使微程序的執(zhí)行速度稍微減慢。(3)、字段間接編碼方式與字段直接編碼方式類似,但一個(gè)字段的某些微命令還需由另一個(gè)字段中的某些微命令來解釋。特

17、點(diǎn):可以進(jìn)一步縮短微指令字長,但因削弱了微指令的并行控制能力,因此通常用作字段直接編碼法的一種輔助手段??刂菩盘栕g碼譯碼譯碼字段 1字段 2字段 3下地址操作控制圖 7 宇段直接編碼方式控制信號控制信號12計(jì)算機(jī)組成原理譯碼譯碼譯碼字段 1字段 2字段 n下地址操作控制圖 8 字段間接編碼方式4、混合編碼這種方法是把直接編碼和字段編碼( 直接或間接 ) 混合使用,以便能綜合考慮微指令的字長、靈活性和執(zhí)行微程序的速度等方面的要求。5、其他微指令中還可設(shè)置常數(shù)字段,用來提供常數(shù)、計(jì)數(shù)器初值等。常數(shù)字段還可以和某些解釋位配合, 如解釋位為 0,表示該字段提供常數(shù); 解釋位為 1,表示該字段提供某種命

18、令,使微指令更靈活。4 微指令序列地址的形成主要有兩種常用方式:(1)、直接由微指令的下地址字段指出(2)、根據(jù)機(jī)器指令的操作碼形成當(dāng)機(jī)器指令取至指令寄存器后,微指令的地址由操作碼經(jīng)微地址形成部件形成。微地址形成部件實(shí)際是一個(gè)編碼器,其輸入為指令操作碼,輸出就是對應(yīng)該機(jī)器指令微程序的首地址。它可采用 prom實(shí)現(xiàn),以指令的操作碼作為 prom的地址,而相應(yīng)的存儲單元內(nèi)容就是對應(yīng)該指令微程序的首地址。(3)、增量計(jì)數(shù)器法對于地址連續(xù)的微指令可采用增量計(jì)數(shù)方法,即 (cmar)+1cmar來形成后繼微指令的地址。13計(jì)算機(jī)組成原理(4)、分支轉(zhuǎn)移當(dāng)遇到條件轉(zhuǎn)移指令時(shí),微指令出現(xiàn)了分支,必須根據(jù)各種標(biāo)志來決定下一條微指令的地址。微指令的格式為:其中轉(zhuǎn)移方式是指明判別條件,轉(zhuǎn)移地址是指明轉(zhuǎn)移成功后的去向,若不成功則順序執(zhí)行。也有的轉(zhuǎn)移微指令中設(shè)兩個(gè)轉(zhuǎn)移地址,條件滿足時(shí)選擇其中一個(gè)轉(zhuǎn)移地址:條件不滿足時(shí)選擇另一個(gè)轉(zhuǎn)移

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論