計(jì)算機(jī)組成原理課程相關(guān)課件015new第7章控制器2_第1頁(yè)
計(jì)算機(jī)組成原理課程相關(guān)課件015new第7章控制器2_第2頁(yè)
計(jì)算機(jī)組成原理課程相關(guān)課件015new第7章控制器2_第3頁(yè)
計(jì)算機(jī)組成原理課程相關(guān)課件015new第7章控制器2_第4頁(yè)
計(jì)算機(jī)組成原理課程相關(guān)課件015new第7章控制器2_第5頁(yè)
已閱讀5頁(yè),還剩58頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1 控制器的組成及指令的執(zhí)行控制器的組成及指令的執(zhí)行 7.17.1 硬布線控制器硬布線控制器 7.27.2 微程序控制器微程序控制器 7.37.3 本章小結(jié)本章小結(jié) 2 3 4 控制器的設(shè)計(jì)方法控制器的設(shè)計(jì)方法 一一 硬布線控制器的結(jié)構(gòu)與原理硬布線控制器的結(jié)構(gòu)與原理 二二 硬布線控制器設(shè)計(jì)舉例硬布線控制器設(shè)計(jì)舉例 四四 硬布線控制器時(shí)序系統(tǒng)硬布線控制器時(shí)序系統(tǒng) 五五 多周期多周期CPUCPU的設(shè)計(jì)的設(shè)計(jì) 三三 5 6 7 8 指令系統(tǒng)是軟硬件的交接面,它既是硬件設(shè)計(jì)者的設(shè)指令系統(tǒng)是軟硬件的交接面,它既是硬件設(shè)計(jì)者的設(shè) 計(jì)依據(jù)和設(shè)計(jì)目標(biāo),也是軟件設(shè)計(jì)者控制計(jì)算機(jī)的惟計(jì)依據(jù)和設(shè)計(jì)目標(biāo),也是軟件設(shè)計(jì)

2、者控制計(jì)算機(jī)的惟 一依據(jù)。一依據(jù)。 9 硬布線控制器的組成硬布線控制器的組成 10 v 組合邏輯電路的輸入組合邏輯電路的輸入: 指令譯碼器譯碼產(chǎn)生的指令信息指令譯碼器譯碼產(chǎn)生的指令信息Im 時(shí)序系統(tǒng)產(chǎn)生的機(jī)器周期信號(hào)時(shí)序系統(tǒng)產(chǎn)生的機(jī)器周期信號(hào)Mn和節(jié)拍信號(hào)和節(jié)拍信號(hào)Tn: 用于定序,相當(dāng)于有限狀態(tài)機(jī)中的狀態(tài)序列;用于定序,相當(dāng)于有限狀態(tài)機(jī)中的狀態(tài)序列; 狀態(tài)寄存器的狀態(tài)信號(hào)狀態(tài)寄存器的狀態(tài)信號(hào)Sx 外部控制、狀態(tài)信號(hào)外部控制、狀態(tài)信號(hào)Ej v輸出:輸出:微操作控制信號(hào)微操作控制信號(hào)Ci 一部分為一部分為CPU外部控制信號(hào):構(gòu)成控制總線外部控制信號(hào):構(gòu)成控制總線 另一部分為另一部分為CPU內(nèi)部的

3、微操作控制信號(hào)。內(nèi)部的微操作控制信號(hào)。 11 Ci=fi(Im,Mn,Tn,Sx,Ej) v從邏輯函數(shù)的角度來(lái)看,微操作控制信號(hào)從邏輯函數(shù)的角度來(lái)看,微操作控制信號(hào)Ci是是4種種 輸入信號(hào)的函數(shù):輸入信號(hào)的函數(shù): 12 v1 1、多周期、多周期CPUCPU的數(shù)據(jù)通路的數(shù)據(jù)通路 v2 2、MIPSMIPS指令子集的執(zhí)行過(guò)程指令子集的執(zhí)行過(guò)程 v3 3、多周期、多周期CPUCPU的實(shí)現(xiàn)的實(shí)現(xiàn) 13 14 15 16 17 18 19 無(wú)關(guān)操作無(wú)關(guān)操作 20 21 22 23 24 25 26 27 信號(hào)信號(hào)作用作用值值選擇操作選擇操作 PC_s 選擇更新選擇更新 PC的數(shù)的數(shù) 據(jù)源據(jù)源 00ALU

4、的輸出的輸出(PC+4)送)送PC 01F暫存器暫存器的內(nèi)容(分支目標(biāo)地址)送的內(nèi)容(分支目標(biāo)地址)送PC 10跳轉(zhuǎn)目標(biāo)地址跳轉(zhuǎn)目標(biāo)地址送送PC I_D_s 選擇選擇主存主存 地址來(lái)源地址來(lái)源 0PC提供主存地址(提供主存地址(指令地址指令地址) 1F暫存器暫存器提供主存地址(提供主存地址(數(shù)據(jù)地址數(shù)據(jù)地址) rd_rt_s 選擇選擇寄存寄存 器寫(xiě)地址器寫(xiě)地址 0寫(xiě)入指令寫(xiě)入指令rd字段指定的寄存器字段指定的寄存器 1寫(xiě)入指令寫(xiě)入指令rt字段指定的寄存器字段指定的寄存器 alu_mem _s 選擇選擇寄存寄存 器寫(xiě)數(shù)據(jù)器寫(xiě)數(shù)據(jù) 0選擇選擇暫存器暫存器F的內(nèi)容寫(xiě)入寄存器的內(nèi)容寫(xiě)入寄存器 1選擇選

5、擇MDR的內(nèi)容寫(xiě)入寄存器的內(nèi)容寫(xiě)入寄存器 28 信號(hào)信號(hào)作用作用值值選擇操作選擇操作 imm_s 選擇符號(hào)選擇符號(hào)/ 無(wú)無(wú)符號(hào)擴(kuò)展符號(hào)擴(kuò)展 0對(duì)指令的對(duì)指令的imm/offset字段進(jìn)行字段進(jìn)行無(wú)符號(hào)擴(kuò)展無(wú)符號(hào)擴(kuò)展 1對(duì)指令的對(duì)指令的imm/offset字段進(jìn)行字段進(jìn)行符號(hào)擴(kuò)展符號(hào)擴(kuò)展 ALU_A_ s 選擇選擇ALU的的 A操作數(shù)操作數(shù) 0PC的內(nèi)容作為的內(nèi)容作為ALU的的A操作數(shù)操作數(shù) 1A暫存器暫存器的內(nèi)容作為的內(nèi)容作為ALU的的A操作數(shù)操作數(shù) ALU_B_ s 選擇選擇ALU的的 B操作數(shù)操作數(shù) 00常數(shù)常數(shù)4作為作為ALU的的B操作數(shù)操作數(shù) 01暫存器暫存器B的內(nèi)容作為的內(nèi)容作為AL

6、U的的B操作數(shù)操作數(shù) 10 指令的指令的imm/offset字段字段擴(kuò)展后的擴(kuò)展后的32位數(shù)位數(shù)作作 為為ALU的的B操作數(shù)操作數(shù) 11 指令的指令的imm/offset字段字段擴(kuò)展后的擴(kuò)展后的32位數(shù)又位數(shù)又 左移左移2為得到的數(shù)為得到的數(shù)作為作為ALU的的B操作數(shù)操作數(shù) 29 30 部件部件控制信號(hào)控制信號(hào)作用作用有效邊沿有效邊沿 PCPC_write寫(xiě)入寫(xiě)入PC指定指定周期周期下跳沿下跳沿 存儲(chǔ)器存儲(chǔ)器 Mem_write存儲(chǔ)器寫(xiě)操作存儲(chǔ)器寫(xiě)操作指定指定周期周期下跳沿下跳沿 Mem_read存儲(chǔ)器讀操作存儲(chǔ)器讀操作電平控制電平控制 IRIR_write寫(xiě)入寫(xiě)入IR指定指定周期周期下跳沿下

7、跳沿 寄存器堆寄存器堆Reg_write寫(xiě)入寄存器寫(xiě)入寄存器指定指定周期周期下跳沿下跳沿 MDR無(wú)無(wú)裝入存儲(chǔ)器讀出數(shù)據(jù)裝入存儲(chǔ)器讀出數(shù)據(jù) 每個(gè)每個(gè)時(shí)鐘周期時(shí)鐘周期下跳沿下跳沿 A無(wú)無(wú)裝入裝入rs寄存器讀出數(shù)據(jù)寄存器讀出數(shù)據(jù) B無(wú)無(wú)裝入裝入rt寄存器讀出數(shù)據(jù)寄存器讀出數(shù)據(jù) F無(wú)無(wú)裝入裝入ALU運(yùn)算結(jié)果運(yùn)算結(jié)果 31 32 33 34 (1)R型指令型指令 時(shí)鐘周期時(shí)鐘周期操作操作發(fā)送控制信號(hào)發(fā)送控制信號(hào) M0 MemPCIR, PC+4PC I_D_s=0,Mem_read,IR_write; ALU_A_s=0, ALU_B_s=00, PC_s=00, PC_write; M1RegrsA,

8、RegrtB無(wú)無(wú) M2A (op)BF ALU_A_s=1, ALU_B_s=01, ALU_OP=*; M3F Regrd rd_rt_s=0,alu_mem_s=0, Reg_write; 35 (2)I型訪存指令:型訪存指令:lw 時(shí)鐘周期時(shí)鐘周期操作操作發(fā)送控制信號(hào)發(fā)送控制信號(hào) M0 MemPCIR, PC+4PC I_D_s=0,Mem_read,IR_write; ALU_A_s=0, ALU_B_s=00, PC_s=00, PC_write; M1RegrsA,RegrtB無(wú)無(wú) M2A + offset F ALU_A_s=1, ALU_B_s=10, imm_s=1,ALU_

9、OP=100; M3MemFMDRI_D_s=1,Mem_read; M4MDR Regrt rd_rt_s=1,alu_mem_s=1, Reg_write; 36 (2)I型訪存指令:型訪存指令:sw 時(shí)鐘周期時(shí)鐘周期操作操作發(fā)送控制信號(hào)發(fā)送控制信號(hào) M0 MemPCIR, PC+4PC I_D_s=0,Mem_read,IR_write; ALU_A_s=0, ALU_B_s=00, PC_s=00, PC_write; M1RegrsA,RegrtB無(wú)無(wú) M2A + offset F ALU_A_s=1, ALU_B_s=10, imm_s=1,ALU_OP=100; M3B MemF

10、I_D_s=1,Mem_write; 37 (3)I型分支指令:型分支指令:beq 時(shí)鐘周期時(shí)鐘周期操作操作發(fā)送控制信號(hào)發(fā)送控制信號(hào) M0 MemPCIR, PC+4PC I_D_s=0,Mem_read,IR_write; ALU_A_s=0, ALU_B_s=00, ALU_OP=100,PC_s=00, PC_write; M1 RegrsA,RegrtB PC+offset*4F ALU_A_s=0, ALU_B_s=11, ALU_OP=100,imm_s=1; M2 A - B ,產(chǎn)生,產(chǎn)生zero zero=1,則,則FPC zero=0,空操作,空操作 ALU_A_s=1, A

11、LU_B_s=01, ALU_OP=101; zero=1:PC_s=01,PC_write 38 (4)J型跳轉(zhuǎn)指令:型跳轉(zhuǎn)指令:J 時(shí)鐘周期時(shí)鐘周期操作操作發(fā)送控制信號(hào)發(fā)送控制信號(hào) M0 MemPCIR, PC+4PC I_D_s=0,Mem_read,IR_write; ALU_A_s=0, ALU_B_s=00, ALU_OP=100,PC_s=00, PC_write; M1 PC31:28,address, 2b00PC PC_s=10,PC_write 39 40 41 42 43 v (1 1)描述每個(gè)時(shí)鐘周期發(fā)送的控制信號(hào),方法是:)描述每個(gè)時(shí)鐘周期發(fā)送的控制信號(hào),方法是:

12、指令指令周期周期狀態(tài):狀態(tài):發(fā)送的控制信號(hào)發(fā)送的控制信號(hào) v M0: I_D_s=0,Mem_read,IR_write;ALU_A_s=0, ALU_B_s=00, PC_s=00, PC_write v RM1:無(wú)(不代表沒(méi)有操作)無(wú)(不代表沒(méi)有操作) v RM2:ALU_A_s=1, ALU_B_s=01, ALU_OP=*; v RM3:rd_rt_s=0,alu_mem_s=0, Reg_write v M0周期時(shí)沒(méi)有指令信號(hào),是因?yàn)椋褐芷跁r(shí)沒(méi)有指令信號(hào),是因?yàn)椋?不知道當(dāng)前是何指令;不知道當(dāng)前是何指令; 所有指令在所有指令在M0周期都執(zhí)行相同的操作(公操作);周期都執(zhí)行相同的操作(

13、公操作); 根據(jù)根據(jù)func 譯碼譯碼 44 v R型指令的型指令的M2周期,周期,ALU_OP要根據(jù)要根據(jù)func字段譯碼,字段譯碼, 真值表如下:真值表如下: 指令指令 輸入輸入輸出輸出 RM2funcALU_OP add11100000100 sub11100010101 and11100100000 or11100101001 xor11100110010 nor11100111011 sltu11101011110 sllv11000100111 45 46 47 條件條件發(fā)送控制信號(hào)發(fā)送控制信號(hào) M0 I_D_s=0,Mem_read,IR_write;ALU_A_s=0, ALU

14、_B_s=00, PC_s=00, PC_write RM1無(wú)(不代表沒(méi)有操作)無(wú)(不代表沒(méi)有操作) RM2ALU_A_s=1, ALU_B_s=01, ALU_OP=*; RM3rd_rt_s=0,alu_mem_s=0, Reg_write lwM1無(wú)(不代表沒(méi)有操作)無(wú)(不代表沒(méi)有操作) lwM2ALU_A_s=1, ALU_B_s=10, imm_s=1, ALU_OP=100 lwM3I_D_s=1,Mem_read lwM4rd_rt_s=1,alu_mem_s=1, Reg_write swM1無(wú)(不代表沒(méi)有操作)無(wú)(不代表沒(méi)有操作) swM2ALU_A_s=1, ALU_B_s

15、=10, imm_s=1, ALU_OP=100 swM3 I_D_s=1,Mem_write beqM1ALU_A_s=0, ALU_B_s=11, ALU_OP=100,imm_s=1 beqM2ALU_A_s=1, ALU_B_s=01, ALU_OP=101 beqM2zeroPC_s=01,PC_write JM1PC_s=10,PC_write 48 49 50 51 52 53 54 計(jì)算機(jī)工作的過(guò)程的就是循環(huán)往復(fù)地取指令、計(jì)算機(jī)工作的過(guò)程的就是循環(huán)往復(fù)地取指令、 分析指令、執(zhí)行指令的過(guò)程。分析指令、執(zhí)行指令的過(guò)程。 55 56 指令周期、機(jī)器周期與節(jié)拍指令周期、機(jī)器周期與節(jié)拍 57 機(jī)器周期信號(hào)產(chǎn)生電路機(jī)器周期信號(hào)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論