計算機(jī)組成原理第八章CPU的結(jié)構(gòu)和功能_第1頁
計算機(jī)組成原理第八章CPU的結(jié)構(gòu)和功能_第2頁
計算機(jī)組成原理第八章CPU的結(jié)構(gòu)和功能_第3頁
計算機(jī)組成原理第八章CPU的結(jié)構(gòu)和功能_第4頁
計算機(jī)組成原理第八章CPU的結(jié)構(gòu)和功能_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第八章CPU的結(jié)構(gòu)和功能8.1CPU的結(jié)構(gòu)8.3指令流水8.2指令周期8.4中斷系統(tǒng)8.1CPU的結(jié)構(gòu)一、CPU的功能取指令分析指令執(zhí)行指令,發(fā)出各種操作命令控制程序輸入及結(jié)果的輸出總線管理處理異常情況和特殊請求1.控制器的功能2.運(yùn)算器的功能實(shí)現(xiàn)算術(shù)運(yùn)算和邏輯運(yùn)算指令控制操作控制時間控制數(shù)據(jù)加工處理中斷二、CPU結(jié)構(gòu)框圖PCIR指令控制操作控制時間控制數(shù)據(jù)加工處理中斷ALU寄存器中斷系統(tǒng)1.CPU與系統(tǒng)總線CU時序電路寄存器ALU

中斷

系統(tǒng)CUCPU控制總線數(shù)據(jù)總線地址總線8.12.CPU的內(nèi)部結(jié)構(gòu)算術(shù)和布爾邏輯取反移位狀態(tài)標(biāo)志內(nèi)部數(shù)據(jù)總線CPU寄存器CU中斷系統(tǒng)ALU控制信號…8.11.用戶可見寄存器(1)通用寄存器三、CPU的寄存器存放操作數(shù)可作某種尋址方式所需的專用寄存器(2)數(shù)據(jù)寄存器存放操作數(shù)(滿足各種數(shù)據(jù)類型)兩個寄存器拼接存放雙倍字長數(shù)據(jù)(3)地址寄存器存放地址,其位數(shù)應(yīng)滿足最大的地址范圍用于特殊的尋址方式段基值棧指針(4)條件碼寄存器存放條件碼,可作程序分支的依據(jù)如正、負(fù)、零、溢出、進(jìn)位等8.12.控制和狀態(tài)寄存器(1)控制寄存器PC控制CPU操作(2)狀態(tài)寄存器狀態(tài)寄存器其中MARMDRIR

用戶不可見存放條件碼PSW寄存器存放程序狀態(tài)字

PC

用戶可見3.舉例Z80008086MC68000MARMMDRIR8.1四、控制單元CU和中斷系統(tǒng)1.CU產(chǎn)生全部指令的微操作命令序列組合邏輯設(shè)計微程序設(shè)計硬連線邏輯存儲邏輯2.中斷系統(tǒng)參見第四篇五、ALU參見8.4參見第六章8.18.2指令周期一、指令周期的基本概念1.指令周期取出并執(zhí)行一條指令所需的全部時間完成一條指令執(zhí)行取指、分析取指階段取指周期執(zhí)行階段執(zhí)行周期(取指、分析)(執(zhí)行指令)指令周期取指周期執(zhí)行周期2.每條指令的指令周期不同取指周期指令周期取指周期執(zhí)行階段指令周期取指周期執(zhí)行周期指令周期NOPADDmemMULmem8.23.具有間接尋址的指令周期4.帶有中斷周期的指令周期取指周期間址周期指令周期執(zhí)行周期取指周期間址周期指令周期執(zhí)行周期中斷周期8.25.指令周期流程取指周期執(zhí)行周期有間址嗎?有中斷嗎?間址周期中斷周期是是否否8.26.CPU工作周期的標(biāo)志CPU訪存有4種性質(zhì)取指令取地址取操作數(shù)存程序斷點(diǎn)取指周期間址周期執(zhí)行周期中斷周期FEDINDDINTDCLK1FE1IND1EX1INTEXDCPU的4個工作周期8.21.取指周期數(shù)據(jù)流二、指令周期的數(shù)據(jù)流MDRCUMARPCIR存儲器CPU地址總線數(shù)據(jù)總線控制總線IR+18.22.間址周期數(shù)據(jù)流MDRCUMARCPU地址總線數(shù)據(jù)總線控制總線PCIR存儲器MDR8.23.執(zhí)行周期數(shù)據(jù)流4.中斷周期數(shù)據(jù)流不同指令的執(zhí)行周期數(shù)據(jù)流不同MDRCUMARCPU地址總線數(shù)據(jù)總線控制總線PC存儲器8.28.3指令流水一、如何提高機(jī)器速度1.提高訪存速度2.提高I/O和主機(jī)之間的傳送速度提高整機(jī)處理能力高速芯片Cache多體并行多總線DMAI/O處理機(jī)通道高速器件改進(jìn)系統(tǒng)結(jié)構(gòu),開發(fā)系統(tǒng)的并行性中斷3.提高運(yùn)算器速度高速芯片改進(jìn)算法快速進(jìn)位鏈二、系統(tǒng)的并行性時間上互相重疊2.并行性的等級指令級(指令之間)過程級(程序、進(jìn)程)兩個或兩個以上事件在同一時刻發(fā)生兩個或兩個以上事件在同一時間段發(fā)生并行1.并行的概念粗粒度軟件實(shí)現(xiàn)細(xì)粒度硬件實(shí)現(xiàn)并發(fā)同時8.3取指令3執(zhí)行指令3三、指令流水原理2.指令的二級流水1.指令的串行執(zhí)行取指令

取指令部件完成總有一個部件空閑指令預(yù)取若取指和執(zhí)行階段時間上完全重疊指令周期減半速度提高1倍…執(zhí)行指令

執(zhí)行指令部件

完成取指令1執(zhí)行指令1取指令2執(zhí)行指令2取指令3執(zhí)行指令3取指令2執(zhí)行指令2取指令1執(zhí)行指令18.3必須等上條指令執(zhí)行結(jié)束,才能確定下條指令的地址造成時間損失3.影響指令流水效率加倍的因素(1)執(zhí)行時間>取指時間

(2)條件轉(zhuǎn)移指令對指令流水的影響

解決辦法

?取指令部件指令部件緩沖區(qū)執(zhí)行指令部件猜測法8.34.指令的六級流水六級流水14個時間單位串行執(zhí)行6×9=54時間單位完成一條指令6個時間單位COFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFI指令1指令2指令3指令4指令5指令6指令7指令8指令91234567891011121314t8.3指令1與指令4沖突指令2與指令5沖突指令1、指令3、指令6沖突……COFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFI指令1指令2指令3指令4指令5指令6指令7指令8指令91234567891011121314t三、影響指令流水性能的因素1.訪存沖突解決辦法?指令存儲器和數(shù)據(jù)存儲器分開?指令預(yù)取技術(shù)(適用于訪存周期短的情況)8.32.相關(guān)問題程序的相近指令之間出現(xiàn)某種關(guān)聯(lián)使指令流水出現(xiàn)停頓影響流水線效率(1)控制相關(guān)8.3WOEIFOCODIWOEIFODIFIFIDIFICOFIFOCODIFIWOEIFOCODIFIDIFOEIWOEIFOCOFIDICOWODIFICOFI指令1指令2指令3指令4指令5指令6指令7指令15指令161234567891011121314轉(zhuǎn)移損失t設(shè)指令3是轉(zhuǎn)移指令BNE指令必須等CPX指令的結(jié)果才能判斷出是轉(zhuǎn)移還是順序執(zhí)行LDA#0LDX#0INXCPX#NBNEMDIV#NSTAANSADDX,DM(2)數(shù)據(jù)相關(guān)幾條相近的指令間,共用同一存儲單元或同一寄存器時,會出現(xiàn)數(shù)據(jù)相關(guān)ADDR1,R2如:SUBR1,R3采用旁路技術(shù)解決辦法寄存器組鎖存器鎖存器ALU8.3四、流水線的多發(fā)技術(shù)1.超標(biāo)量技術(shù)每個時鐘周期內(nèi)可并發(fā)多條獨(dú)立指令

不能調(diào)整指令的執(zhí)行順序配置多個功能部件通過編譯優(yōu)化技術(shù),把可并行執(zhí)行的指令搭配起來IFIDEX

WR0123

45

678

910111213t8.32.超流水技術(shù)在一個時鐘周期內(nèi)再分段(3段)

不能調(diào)整指令的執(zhí)行順序在一個時鐘周期內(nèi)一個功能部件使用多次(3次)靠編譯程序解決優(yōu)化問題流水線速度是原來速度的3倍IFIDEXWR0

1

2

345

67

8

9

10111213t8.33.超長指令字采用多個處理部件具有多個操作碼字段的超長指令字(可達(dá)幾百位)由編譯程序挖掘出指令間潛在的并行性,將多條能并行操作的指令組合成一條IFIDEXWR012345678910111213t8.3五、流水線結(jié)構(gòu)1.指令流水線結(jié)構(gòu)完成一條指令分7段,每段需一個時鐘周期若流水線不出現(xiàn)斷流1個時鐘周期出1結(jié)果不采用流水技術(shù)7個時鐘周期出1結(jié)果理想情況下,7級流水的速度是不采用流水技術(shù)的7倍地址形成部件指令譯碼部件取操作數(shù)部件取指令部件操作執(zhí)行部件回寫結(jié)果部件修改指令指針部件鎖存鎖存鎖存鎖存鎖存鎖存8.32.運(yùn)算流水線完成浮點(diǎn)加減運(yùn)算可分對階、尾數(shù)求和、規(guī)格化三段分段原則每段操作時間盡量一致鎖存器對階功能部件第一段尾數(shù)加部件鎖存器第二段規(guī)格化部件鎖存器第三段8.38.4中斷系統(tǒng)一、概述1.引起中斷的各種因素(1)人為設(shè)置的中斷(2)程序性事故如轉(zhuǎn)管指令溢出、操作碼不能識別、除法非法(5)外部事件(4)I/O設(shè)備(3)硬件故障用鍵盤中斷現(xiàn)行程序轉(zhuǎn)管指令………管理程序2.中斷系統(tǒng)需解決的問題(1)各中斷源如何向CPU提出請求?(2)各中斷源同時提出請求怎么辦?(5)如何尋找入口地址?(4)如何保護(hù)現(xiàn)場?(3)CPU什么條件、什么時間、以什么方式

響應(yīng)中斷?(6)如何恢復(fù)現(xiàn)場,如何返回?(7)處理中斷的過程中又出現(xiàn)新的中斷怎么辦?硬件

+軟件8.4二、中斷請求標(biāo)記和中斷判優(yōu)邏輯1.中斷請求標(biāo)記INTR一個請求源

一個INTR

中斷請求標(biāo)記觸發(fā)器多個INTR

組成中斷請求標(biāo)記寄存器INTR

分散在各個中斷源的接口電路中INTR集中在CPU

的中斷系統(tǒng)內(nèi)12345n掉電過熱階上溢內(nèi)存讀寫校驗(yàn)錯非法除法鍵盤打印機(jī)8.42.中斷判優(yōu)邏輯①

分散在各個中斷源的接口電路中鏈?zhǔn)脚抨犉鳍诩性贑PU

內(nèi)(1)硬件實(shí)現(xiàn)(排隊器)111&1

&1&參見第五章INTR1INTR2INTR3INTR4INTR1、

INTR2、

INTR3、

INTR4

優(yōu)先級按降序排列

INTP1INTP2INTP3INTP48.4A、B、C

優(yōu)先級按降序排列(2)軟件實(shí)現(xiàn)(程序查詢)否……是否A

請求?是否B

請求?是否C

請求?轉(zhuǎn)A

的服務(wù)程序入口地址轉(zhuǎn)B

的服務(wù)程序入口地址轉(zhuǎn)C

的服務(wù)程序入口地址是是是否否8.4三、中斷服務(wù)程序入口地址的尋找1.硬件向量法入口地址200入口地址300入口地址40012H13H14H主存12H13H14HJMP200JMP300JMP400主存向量地址形成部件…………中斷向量排隊器輸出向量地址12H、13H、14H入口地址200、300、4008.42.軟件查詢法中斷識別程序(入口地址M)地址說明指令

M

JMP1#SR1#D=1轉(zhuǎn)1#服務(wù)程序

SKPDZ2#

JMP2#SR2#D=0跳2#D=1轉(zhuǎn)2#服務(wù)程序

SKPDZ8#

JMP8#SR8#D=0跳8#D=1轉(zhuǎn)8#服務(wù)程序八個中斷源1、2、8按降序排列…………8.4

SKPDZ1#1#D=0跳(D為完成觸發(fā)器)四、中斷響應(yīng)1.響應(yīng)中斷的條件允許中斷觸發(fā)器EINT=12.響應(yīng)中斷的時間指令執(zhí)行周期結(jié)束時刻由CPU發(fā)查詢信號

CPU中斷查詢INTR1DQINTR2DQINTRnDQ中斷源1中斷源2中斷源n……至排隊器8.43.中斷隱指令(1)保護(hù)程序斷點(diǎn)(2)尋找服務(wù)程序入口地址(3)硬件關(guān)中斷向量地址形成部件INTSQREINTSQRPC

1&≥1排隊器……斷點(diǎn)存于特定地址(0號地址)內(nèi)斷點(diǎn)進(jìn)棧INT中斷標(biāo)記EINT允許中斷R–S

觸發(fā)器8.4向量地址PC(硬件向量法)中斷識別程序入口地址MPC(軟件查詢法)五、保護(hù)現(xiàn)場和恢復(fù)現(xiàn)場1.保護(hù)現(xiàn)場2.恢復(fù)現(xiàn)場寄存器內(nèi)容斷點(diǎn)保護(hù)現(xiàn)場其他服務(wù)程序恢復(fù)現(xiàn)場中斷返回PUSH視不同請求源而定POP中斷服務(wù)程序完成中斷服務(wù)程序中斷隱指令完成中斷服務(wù)程序完成8.4IRET1.多重中斷的概念klmk

+1l

+1m

+1第一次中斷第二次中斷第三次中斷程序斷點(diǎn)k+1,l+1,m+1六、中斷屏蔽技術(shù)8.42.實(shí)現(xiàn)多重中斷的條件B,CA中斷請求主程序(2)優(yōu)先級別高的中斷源有權(quán)中斷優(yōu)先級別低的中斷源(1)提前設(shè)置開中斷指令A(yù)BCD中斷服務(wù)程序(A、B、C、D優(yōu)先級按降序排列)D8.4

&3.屏蔽技術(shù)(1)屏蔽觸發(fā)器的作用MASK=0(未屏蔽)INTR能被置“1”

1

&

&

&

1

1

1

1INTP1INTP2INTP3INTP4INTR1INTR2INTR3INTR4MASK1MASK2MASK3MASK4DQ1DINTR

MASKQCPU查詢MASKi

=1(屏蔽)INTPi

=0(不能被排隊選中)8.4(2)屏蔽字優(yōu)先級屏蔽字111111111111111101111111111111110011111111111111000111111111

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論