




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第8章CPU的結構和功能8.1CPU的結構8.3指令流水8.2指令周期8.4中斷系統8.1CPU的結構一、CPU的功能取指令分析指令執行指令,發出各種操作命令控制程序輸入及結果的輸出總線管理處理異常情況和特殊請求1.控制器的功能2.運算器的功能實現算術運算和邏輯運算指令控制操作控制時間控制數據加工處理中斷二、CPU結構框圖PCIR指令控制操作控制時間控制數據加工處理中斷ALU寄存器中斷系統1.CPU與系統總線CU時序電路寄存器ALU
中斷
系統CUCPU控制總線數據總線地址總線8.12.CPU的內部結構8.1算術和布爾邏輯取反移位狀態標志內部數據總線寄存器CU中斷系統ALU控制信號…CPU1.用戶可見寄存器(1)通用寄存器三、CPU的寄存器存放操作數可作某種尋址方式所需的專用寄存器(2)數據寄存器存放操作數(滿足各種數據類型)兩個寄存器拼接存放雙倍字長數據(3)地址寄存器存放地址,其位數應滿足最大的地址范圍用于特殊的尋址方式段基值棧指針(4)條件碼寄存器存放條件碼,可作程序分支的依據如正、負、零、溢出、進位等8.12.控制和狀態寄存器(1)控制寄存器PC控制CPU操作(2)狀態寄存器狀態寄存器其中MAR、MDR、IR
用戶不可見存放條件碼PSW寄存器存放程序狀態字
PC
用戶可見3.舉例Z80008086MC68000MARMMDRIR8.1四、控制單元CU和中斷系統1.CU產生全部指令的微操作命令序列組合邏輯設計微程序設計硬連線邏輯存儲邏輯2.中斷系統參見第4篇五、ALU參見8.4節參見第6章8.18.2指令周期一、指令周期的基本概念1.指令周期取出并執行一條指令所需的全部時間完成一條指令執行取指、分析取指階段取指周期執行階段執行周期(取指、分析)(執行指令)指令周期取指周期執行周期2.每條指令的指令周期不同取指周期指令周期取指周期執行周期指令周期NOPADDmemMULmem8.2取指周期執行周期指令周期…3.具有間接尋址的指令周期4.帶有中斷周期的指令周期取指周期間址周期指令周期執行周期取指周期間址周期指令周期執行周期中斷周期8.25.指令周期流程取指周期執行周期有間址嗎?有中斷嗎?間址周期中斷周期是是否否8.26.CPU工作周期的標志CPU訪存有四種性質取指令取地址取操作數存程序斷點取指周期間址周期執行周期中斷周期FEDINDDINTDCLK1FE1IND1EX1INTEXDCPU的4個工作周期8.21.取指周期數據流二、指令周期的數據流MDRCUMARPCIR存儲器CPU地址總線數據總線控制總線IR+18.22.間址周期數據流MDRCUMARCPU地址總線數據總線控制總線PCIR存儲器MDR8.23.執行周期數據流4.中斷周期數據流不同指令的執行周期數據流不同MDRCUMARCPU地址總線數據總線控制總線PC存儲器8.28.3指令流水一、如何提高機器速度1.提高訪存速度2.提高I/O和主機之間的傳送速度提高整機處理能力高速芯片Cache多體并行I/O處理機DMA多總線通道高速器件改進系統結構,開發系統的并行性中斷3.提高運算器速度高速芯片改進算法快速進位鏈二、系統的并行性時間上互相重疊2.并行性的等級指令級(指令之間)(指令內部)過程級(程序、進程)兩個或兩個以上事件在同一時刻發生兩個或兩個以上事件在同一時間段發生并行1.并行的概念粗粒度軟件實現細粒度硬件實現并發同時8.3取指令3執行指令3三、指令流水原理2.指令的二級流水1.指令的串行執行取指令
取指令部件完成總有一個部件空閑指令預取若取指和執行階段時間上完全重疊指令周期減半速度提高1倍…執行指令
執行指令部件
完成取指令1執行指令1取指令2執行指令2取指令3執行指令3取指令2執行指令2取指令1執行指令18.3必須等上條指令執行結束,才能確定下條指令的地址,造成時間損失3.影響指令流水效率加倍的因素(1)執行時間>取指時間
(2)條件轉移指令對指令流水的影響
解決辦法
?取指令部件指令部件緩沖區執行指令部件猜測法8.34.指令的六級流水六級流水14個時間單位串行執行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.結構相關8.3不同指令爭用同一功能部件產生資源沖突程序的相近指令之間出現某種關聯使指令流水出現停頓,影響流水線效率解決辦法?停頓?指令存儲器和數據存儲器分開?指令預取技術(適用于訪存周期短的情況)2.數據相關不同指令因重疊操作,可能改變操作數的讀/寫訪問順序采用旁路技術解決辦法8.3寫后讀相關(RAW)SUBR1,R2,R3ADDR4,R5,R1;(R2)
(R3)R1;(R5)+(R1)R4讀后寫相關(WAR)STAM,R2ADDR2,R4,R5;(R2)M存儲單元;(R4)+(R5)R2寫后寫相關(WAW)后推法MULR3,R2,R1SUB
R3,R4,R5;(R2)×
(R1)R3;(R4)(R5)
R33.控制相關8.3BNE指令必須等CPX指令的結果才能判斷出是轉移還是順序執行LDA#0LDX#0INXCPX#NBNEMDIV#NSTAANSADDX,DM由轉移指令引起3.控制相關8.3WOEIFOCODIWOEIFODIFIFIDIFICOFIFOCODIFIWOEIFOCODIFIDIFOEIWOEIFOCOFIDICOWODIFICOFI指令1指令2指令3指令4指令5指令6指令7指令15指令161234567891011121314轉移損失t設指令3是轉移指令五、流水線性能1.吞吐率單位時間內流水線所完成指令或輸出結果的數量8.3最大吞吐率實際吞吐率連續處理n條指令的吞吐率為設m
段的流水線各段時間為ΔtTpmax=Δ1tTp=m
·Δ
+(n-1)·
Δ
ntt2.加速比Sp
8.3
m
段的流水線的速度與等功能的非流水線的速度之比設流水線各段時間為Δt完成n條指令在m
段流水線上共需
T=m
·
+(n-1)·
ttΔΔ完成n條指令在等效的非流水線上共需
T
′=nm
·tΔSp
=
m
·+(n-1)·
nm·=nmm
+n-1
ΔtΔΔtt
則由于流水線有建立時間和排空時間因此各功能段的設備不可能
一直處于工作狀態
8.3流水線中各功能段的利用率3.效率
mΔt31245312453124531245………………………………n-1nn-1nn-1nn-1nT時間S空間空間S4S3S2S1(n-1)Δt8.3m(m
+n-1)Δt
=mnΔt
流水線各段處于工作時間的時空區流水線中各段總的時空區
效率=3.效率
mΔt31245312453124531245………………………………n-1nn-1nn-1nn-1nT時間S空間空間S4S3S2S1(n-1)Δt流水線中各功能段的利用率六、流水線的多發技術1.超標量技術每個時鐘周期內可并發多條獨立指令
不能調整指令的執行順序配置多個功能部件通過編譯優化技術,把可并行執行的指令搭配起來8.3IFIDEX
WR0123
45
678
910111213時鐘周期指令序列2.超流水線技術在一個時鐘周期內再分段(3段)
不能調整指令的執行順序在一個時鐘周期內一個功能部件使用多次(3次)靠編譯程序解決優化問題流水線速度是原來速度的3倍8.3IFIDEXWR0
1
2
345
67
8
9
10111213時鐘周期指令序列3.超長指令字技術采用多個處理部件具有多個操作碼字段的超長指令字(可達幾百位)由編譯程序挖掘出指令間潛在的并行性,將多條能并行操作的指令組合成一條8.3IFIDEXWR012345678910111213時鐘周期指令序列七、流水線結構1.指令流水線結構完成一條指令分7段,每段需一個時鐘周期若流水線不出現斷流1個時鐘周期出1結果不采用流水技術7個時鐘周期出1結果理想情況下,7級流水的速度是不采用流水技術的7倍地址形成部件指令譯碼部件取操作數部件取指令部件操作執行部件回寫結果部件修改指令指針部件鎖存鎖存鎖存鎖存鎖存鎖存8.32.運算流水線完成浮點加減運算可分對階、尾數求和、規格化三段分段原則每段操作時間盡量一致鎖存器對階功能部件第一段尾數加部件鎖存器第二段規格化部件鎖存器第三段8.38.4中斷系統一、概述1.引起中斷的各種因素(1)人為設置的中斷(2)程序性事故如轉管指令溢出、操作碼不能識別、除法非法(5)外部事件(4)I/O設備(3)硬件故障用鍵盤中斷現行程序轉管指令……管理程序2.中斷系統需解決的問題(1)各中斷源如何向CPU提出請求?(2)各中斷源同時提出請求怎么辦?(5)如何尋找入口地址?(4)如何保護現場?(3)CPU什么條件、什么時間、以什么方式
響應中斷?(6)如何恢復現場,如何返回?(7)處理中斷的過程中又出現新的中斷怎么辦?硬件
+軟件8.4二、中斷請求標記和中斷判優邏輯1.中斷請求標記INTR一個請求源
一個INTR
中斷請求標記觸發器多個INTR
組成中斷請求標記寄存器INTR
分散在各個中斷源的接口電路中INTR集中在CPU
的中斷系統內12345n掉電過熱階上溢主存讀寫校驗錯非法除法鍵盤輸入打印機輸出8.42.中斷判優邏輯①
分散在各個中斷源的接口電路中鏈式排隊器②集中在CPU
內(1)硬件實現(排隊器)111&1
&1&參見第五章INTR1INTR2INTR3INTR4INTR1、
INTR2、
INTR3、
INTR4
優先級按降序排列
INTP1INTP2INTP3INTP48.4A、B、C
優先級按降序排列(2)軟件實現(程序查詢)否…是否A
請求?是否B
請求?是否C
請求?轉A
的服務程序入口地址轉B
的服務程序入口地址轉C
的服務程序入口地址是是是否否8.4三、中斷服務程序入口地址的尋找1.硬件向量法入口地址200入口地址300入口地址40012H13H14H主存12H13H14HJMP200JMP300JMP400主存向量地址形成部件……中斷向量排隊器輸出向量地址12H、13H、14H入口地址200、300、4008.42.軟件查詢法
M
JMP1#SR1#D=1轉1#服務程序
SKPDZ2#
JMP2#SR2#D=0跳2#D=1轉2#服務程序
SKPDZ8#
JMP8#SR8#D=0跳8#D=1轉8#服務程序八個中斷源1,2,8按降序排列……8.4
SKPDZ1#1#D=0跳(D為完成觸發器)中斷識別程序(入口地址M)地址說明指令四、中斷響應1.響應中斷的條件允許中斷觸發器EINT=12.響應中斷的時間指令執行周期結束時刻由CPU發查詢信號
CPU中斷查詢INTR1DQINTR2DQINTRnDQ中斷源1中斷源2中斷源n…至排隊器8.43.中斷隱指令(1)保護程序斷點(2)尋找服務程序入口地址(3)硬件關中斷向量地址形成部件INTSQREINTSQRPC
1&≥1排隊器……斷點存于特定地址(0號地址)內斷點進棧INT中斷標記EINT允許中斷R–S
觸發器8.4向量地址PC(硬件向量法)中斷識別程序入口地址MPC(軟件查詢法)五、保護現場和恢復現場1.保護現場2.恢復現場寄存器內容斷點保護現場其它服務程序恢復現場中斷返回PUSH視不同請求源而定POP中斷服務程序完成中斷服務程序中斷隱指令完成中斷服務程序完成8.4IRET1.多重中斷的概念klmk
+1l
+1m
+1第一次中斷第二次中斷第三次中斷程序斷點k+1,l+1,m+1六、中斷屏蔽技術8.42.實現多重中斷的條件B、CA中斷請求主程序(2)優先級別高的中斷源有權中斷優先級別低的中斷源(1)提前設置開中斷指令ABCD中斷服務程序(A、B、C、D優先級按降序排列)D8.4
&3.屏蔽技術(1)屏蔽觸發器的作用MASK=0(未屏蔽)INTR能被置“1”
&
&
&
&
1
1
1
1INTP1INTP2INTP3INTP4INTR1INTR2INTR3INTR4MASK1MASK2MASK3MASK4DQ1DINTR
MASKQCPU查詢MASKi
=1(屏蔽)INTPi
=0(不能被排隊選中)8.4(2)屏蔽字8.4
優先級屏蔽字111111111111111101111111111111110011111111111111000111111111111100001111111111110000011111111111…000000000000001100000000000000011234561516…16個中斷源1,2,3,
16按降序排列…(3)屏蔽技術可改變處理優先等級響應優先級響應優先級A→B→C→D
降序排列
8.4不可改變處理優先級可改變(通過重新設置屏蔽字)中斷源原屏蔽字新屏蔽字ABCD11110111001100011111010001100111處理優先級A→D→C→B降序排列(3)屏蔽技術可改變處理優先等級8.4服務程序B處理完C處理完D處理完A處理完t主程序A程序B程序C程序D程序A、B、C、D同時請求中斷CPU執行程序軌跡(原屏蔽字)(3)屏蔽技術可改變處理優先等級(4)屏蔽技術的其他作用8.4便于程序控制可以人為地屏蔽某個中斷源的請求服務程序D處理完C處理完B處理完A處理完t主程序A程序B程序C程序D程序A、B、C、D同時請求中斷CPU執行程序軌跡(新屏蔽字)8.4(5)新屏蔽字的設置保護現場置屏蔽字開中斷中斷服務關中斷恢復現場恢復屏蔽字開中斷中斷返回置屏蔽字恢復屏蔽字關中斷開中斷(1)斷點進棧(2)斷點存入“0”地址中斷隱指令完成中斷周期命令存儲器寫0MARPCMDR(MDR)存入存儲器三次中斷,三個斷點都存入“0”地址4.多重中斷的斷點保護斷點MDR?如何保證斷點不丟失?中斷隱指令完成8.4(3)程序斷點存入“0”地址的斷點保護××××05JMPSERVE××××SAVE××××RETURNSTASAVE…0地址內容轉存其他服務內容SERVELDASAVEJMP@RETURN存程序斷點5為向量地址…保護現場恢復現場間址返回存放ACC內容轉存0地址內容開中斷ENILDA0STARETURN置屏蔽字8.4地址內容說明第9章控制單元的功能9.1操作命令的分析9.2控制單元的功能9.1操作命令的分析完成一條指令分4個工作周期取指周期間址周期執行周期中斷周期一、取指周期PCMAR地址線1RM(MAR)MDRMDRIR(PC)+1PC+1MDRCUMAR
PC
IR存儲器CPU地址總線數據總線控制總線9.1操作命令的分析OP(IR)CU二、間址周期M(MAR)MDR1RAd(IR)MARMDRAd(IR)指令形式地址MAR9.1MDRCUMARCPU地址總線數據總線控制總線IR存儲器三、執行周期1.非訪存指令(1)CLA
清A(2)COM
取反(4)CSL
循環左移(3)SHR
算術右移(5)STP
停機指令0ACCACCACCL(ACC)R(ACC),ACC0ACC0R(ACC)L(ACC),ACC0ACCn0G9.12.訪存指令Ad(IR)MAR1RM(MAR)MDR(ACC)+(MDR)ACCAd(IR)
MAR1WACCMDRMDRM(MAR)STAXADDX(2)存數指令(1)加法指令9.1(3)取數指令Ad(IR)
MAR1RM(MAR)
MDRMDRACC3.轉移指令(1)無條件轉(2)條件轉移Ad(IR)
PCA0?Ad(IR)+A0(PC)PCLDAXJMPXBANX(負則轉)9.14.三類指令的指令周期取指周期執行周期取指周期執行周期取指周期執行周期取指周期間址周期執行周期非訪存指令周期直接訪存指令周期間接訪存指令周期轉移指令周期9.1取指周期間址周期執行周期間接轉移指令周期四、中斷周期程序斷點存入“0”地址程序斷點進棧0
MAR1WPCMDRMDRM(MAR)向量地址PC0EINT(置“0”)0EINT(置“0”)向量地址PCMDRM(MAR)PCMDR1W中斷識別程序入口地址MPC9.1(SP)1
MAR9.2控制單元的功能一、控制單元的外特性指令寄存器控制單元
CU…時鐘標志CPU內部的控制信號到系統總線的控制信號來自系統總線的控制信號系統總線1.輸入信號(1)時鐘(2)指令寄存器(4)外來信號(3)標志CU受時鐘控制控制信號與操作碼有關OP(IR)CUCU受標志控制INTR中斷請求HRQ總線請求一個時鐘脈沖發一個操作命令或一組需同時執行的操作命令如9.22.輸出信號(1)CPU內的各種控制信號(2)送至控制總線的信號Ri
Rj(PC)+1PCINTAHLDA訪存控制信號訪IO/
存儲器的控制信號讀命令寫命令中斷響應信號總線響應信號MREQIO/MRDWRALU+、-、與、或……9.2二、控制信號舉例PCIRACCU時鐘ALU………控制信號標志控制信號C0C1C2C3C4取指周期以ADD@X為例PCIRCU9.21.不采用CPU內部總線的方式PCPCPC
MDR
MAR
MDR
MARPCIRACCU時鐘ALU………控制信號標志控制信號
MDR
MAR二、控制信號舉例1.不采用CPU內部總線的方式C1C2C3C5ADD@X間址周期IR9.2
MDR
MDR
MARPCIRACCU時鐘ALU………控制信號標志控制信號
MDR
MAR二、控制信號舉例1.不采用CPU內部總線的方式C1C2C5ADD@X執行周期C7C6C8ACALU…控制信號9.2
MDR
MAR
MDRMDRMDRCU(1)ADD@X取指周期
PC
CU
發讀命令1R
MDROP(IR)(PC)+1PCIRPCMARAC
YALUZ…控制信號IRiIRiPCOPCOMARiMARiMDROMDRO…數據線數據線控制信號CPU
內部總線時鐘2.采用CPU內部總線方式地址線地址線MARMDRIRCU9.2IRPCPCMDRMARCUIRPCPCCU(2)ADD@X間址周期
MDR1R
MDR有效地址
Ad(IR)MDROMDRO數據線數據線時鐘CUIRPCMARMDRACYALUZ…控制信號…控制信號CPU
內部總線MDRIRMARi
MARi地址線地址線MARIRiIRiMARMDRIRMDRMDRMDROMDROMDROMDROMDRO形式地址MAR
9.2CU時鐘CUIRPCMARMDRACYALUZ…控制信號CPU
內部總線MDROMDRO(3)ADD@X執行周期1R
MDR
Z
AC(AC)+(Y)
MDR控制信號…MARMDR地址線地址線數據線數據線MARMDRYMDRMDRMDROMDROMDROMDROMDROMDROMDROYiYi
YALUACACOACOALUiALUiALUALUACZZZZOZOACiACiACACACACMARi
MARiALUAC9.2CU三、多級時序系統1.機器周期(1)機器周期的概念(2)確定機器周期需考慮的因素(3)基準時間的確定所有指令執行過程中的一個基準時間每條指令的執行步驟每一步驟所需的時間以完成最復雜指令功能的時間為準以訪問一次存儲器的時間為基準若指令字長=存儲字長取指周期
=
機器周期9.22.時鐘周期(節拍、狀態)
一個機器周期內可完成若干個微操作每個微操作需一定的時間時鐘周期是控制計算機操作的最小單位時間將一個機器周期分成若干個時間相等的時間段(節拍、狀態、時鐘周期)9.2用時鐘周期控制產生一個或幾個微操作命令CLKT0T1T2T3時鐘周期2.時鐘周期(節拍、狀態)
機器周期機器周期T0T1T2T3T0T1T2T39.23.多級時序系統機器周期、節拍(狀態)組成多級時序系統一個指令周期包含若干個機器周期一個機器周期包含若干個時鐘周期CLK機器周期機器周期機器周期
(取指令)(取有效地址)(執行指令)指令周期T0T1T2T3T0T1T2T3T0T1T2T3機器周期機器周期(取指令)(執行指令)指令周期T0T1T2T3T0T1T2節拍(狀態)節拍(狀態)9.24.機器速度與機器主頻的關系機器的主頻f越快機器的速度也越快在機器周期所含時鐘周期數相同的前提下,兩機平均指令執行速度之比等于兩機主頻之比機器速度不僅與主頻有關,還與機器周期中所含時鐘周期(主頻的倒數)數以及指令周期中所含的機器周期數有關9.2MIPS1MIPS2=f1f2四、控制方式產生不同微操作命令序列所用的時序控制方式1.同步控制方式任一微操作均由統一基準時標的時序信號控制CLK機器周期機器周期機器周期(取指令)(取有效地址)(執行指令)指令周期T0T1T2T3T0T1T2T3T0T1T2T3(1)采用定長的機器周期以最長的微操作序列和最繁的微操作作為標準9.2機器周期內節拍數相同(2)采用不定長的機器周期機器周期機器周期(取指令)(執行指令)指令周期T0T1T2T3T0T1T2節拍(狀態)機器周期機器周期(取指令)(執行指令)T0T1T2T3T0T1T2T3TT延長9.2機器周期內節拍數不等(3)采用中央控制和局部控制相結合的方法T0T1T2T3T0T1T2中央控制節拍
T3T0T1中央控制節拍機器周期執行周期指令周期取指周期T0T1T2T39.2局部控制的節拍寬度與中央控制的節拍寬度一致T*T*T*局部控制節拍…2.異步控制方式無基準時標信號無固定的周期節拍和嚴格的時鐘同步采用應答方式3.聯合控制方式4.人工控制方式(1)Reset(2)連續和單條指令執行轉換開關(3)符合停機開關同步與異步相結合9.2五、多級時序系統實例分析1.8085的組成9.2A15~A8中斷控制AC(8)TR(8)FR(5)IR(8)IDAL(16)PC(16)SP(16)L(8)H(8)E(8)D(8)C(8)B(8)
指令譯碼和機器周期編碼ALU定時和控制時鐘控制狀態DMA復位ABR(8)ADBR(8)8位內部數據總線I/O控制INTAINTRSIDSODCLKReadyRDWRALEIO/MHLDAResetoutAD7~AD02.8085的外部引腳(1)地址和數據信號(2)定時和控制信號(3)存儲器和I/O初始化A15~A8
AD7~AD0SIDSOD入X1X2入HOLDReady出
HLDA出CLK
ALES0S1
IO/M
RD
WR12345678910111213141516171819204039383736353433323130292827262524232221X1X2ResetoutSODSIDTrapRST7.5RST6.5RST5.5INTAAD0AD1AD2AD3AD4AD5AD6AD7VSSINTRVCCHOLDHLDACLK(out)RsestinReadyIO/MS1RDWRALES0A15A14A13A12A11A10A9A89.2(4)與中斷有關的信號(5)CPU初始化(6)電源和地出INTATrap重新啟動中斷入INTR入Resetin出ResetoutVCC+5VVSS
地12345678910111213141516171819204039383736353433323130292827262524232221X1X2ResetoutSODSIDTrapRST7.5RST6.5RST5.5INTAAD0AD1AD2AD3AD4AD5AD6AD7VSSINTRVCCHOLDHLDACLK(out)RsestinReadyIO/MS1RDWRALES0A15A14A13A12A11A10A9A89.23.機器周期和節拍(狀態)與控制信號的關系9.2T1T2T3T4T1T2T3T1T2T3M1M2M3PCoutPC+1InsIRXPCoutPC+1ByZZoutAPortIOPORTACCbytePCLInstrPCLPCHPCHIOPORT3MHZCLKA15~A8AD7~AD0ALERDWRIO/M小結每個控制信號在指定機器周期的指定節拍T
時刻發出機器周期M1
取指令操作碼機器周期M2
取設備地址機器周期M3
執行ACC的內容寫入設備以一條輸出指令(I/O寫)為例9.2第10章控制單元的設計10.1組合邏輯設計10.2微程序設計10.1組合邏輯設計一、組合邏輯控制單元框圖1.CU
外特性IR節拍發生器CUT0T1Tn…CLK(機器主頻)…標志012n-1…C0C1Cn操作碼譯碼n
位操作碼
2.節拍信號CLKT0T1T2T3時鐘周期機器周期機器周期T0T1T2T3T0T1T2T310.1
二、微操作的節拍安排采用
同步控制方式CPU
內部結構采用非總線方式一個
機器周期
內有
3
個節拍(時鐘周期)10.1PCIRACCU時鐘ALU………C1C2C5C9C0C10C3C7C4C6C12C11C8控制信號標志控制信號
MDR
MAR
1.安排微操作時序的原則原則一微操作的先后順序不得隨意更改原則二被控對象不同的微操作盡量安排在一個節拍內完成原則三占用時間較短的微操作盡量安排在一個節拍內完成并允許有先后順序10.12.取指周期微操作的節拍安排PCMARM(MAR)MDRMDRIR(PC)+1PC原則二原則二原則三3.間址周期微操作的節拍安排M(MAR)MDRMDRAd(IR)T0T1T2T0T1T21ROP(IR)IDAd(IR)MAR1R10.14.執行周期微操作的節拍安排①CLA②COM
③SHRT0T1T2T0T1T2T0T1T2AC0AC0L(AC)
R(AC)0ACACAC10.1④CSL⑤STP⑥ADDX⑦STAXR(AC)
L(AC)AC0ACnT0T1T20
GT0T1T2T0T1T2T0T1T2Ad(IR)MARM(MAR)MDR(AC)+(MDR)ACAd(IR)MARACMDRMDRM(MAR)1R1W10.1⑧LDAX⑨JMPX⑩BANXT0T1T2Ad(IR)MARM(MAR)MDRMDRACT0T1T2T0T1T2Ad(IR)PC1RA0?Ad(IR)+A0?
PCPC10.15.中斷周期微操作的節拍安排T0T1T20MARPCMDRMDRM(MAR)硬件關中斷向量地址PC中斷隱指令完成1W10.1三、組合邏輯設計步驟1.列出操作時間表T2T1T0FE取指JMPLDASTAADDCOMCLA微操作命令信號狀態條件節拍工作周期標記PCMAR1RM(MAR)MDR(PC)+1PCMDRIROP(IR)ID1IND1EXII10.1間址特征三、組合邏輯設計步驟1.列出操作時間表T2T1T0
IND間址JMPLDASTAADDCOMCLA微操作命令信號狀態條件節拍工作周期標記Ad(IR)MAR1RM(MAR)MDRMDRAd(IR)1EXIND10.1間址周期標志T2T1T0EX執行JMPLDASTAADDCOMCLA微操作命令信號狀態條件節拍工作周期標記Ad(IR)MAR1RM(MAR)MDRACMDR(AC)+(MDR)
ACMDRM(MAR)MDRAC0AC三、組合邏輯設計步驟1.列出操作時間表1W10.1三、組合邏輯設計步驟1.列出操作時間表T2T1T0FE取指JMPLDASTAADDCOMCLA微操作命令信號狀態條件節拍工作周期標記PCMAR1RM(MAR)MDR(PC)+1PCMDRIROP(IR)ID1IND1EXII111111111111111111111111111111111111111111111110.1三、組合邏輯設計步驟1.列出操作時間表T2T1T0
IND間址JMPLDASTAADDCOMCLA微操作命令信號狀態條件節拍工作周期標記Ad(IR)MAR1RM(MAR)MDRMDRAd(IR)1EXIND1111111111111111111110.1三、組合邏輯設計步驟1.列出操作時間表T2T1T0EX執行JMPLDASTAADDCOMCLA微操作命令信號狀態條件節拍工作周期標記Ad(IR)MAR1RM(MAR)MDRACMDR(AC)+(MDR)ACMDRM(MAR)MDRAC0AC1W111111111111110.12.寫出微操作命令的最簡表達式=FE
·T1+IND·T1(ADD+STA+LDA+JMP+BAN)+EX·T1(ADD+LDA)M(MAR)MDR=T1{FE+IND(ADD+STA+LDA+JMP+BAN)+EX(ADD+LDA)}10.13.畫出邏輯圖特點
思路清晰,簡單明了
龐雜,調試困難,修改困難
速度快&&&11&&&&&≥1FEINDEXLDAADDJMPBANSTAT1M(MAR)MDR(RISC)&&10.110.2微程序設計一、微程序設計思想的產生1951英國劍橋大學教授Wilkes完成一條機器指令微操作命令1微操作命令2微操作命令n…微指令110100000微指令n微程序00010010存儲邏輯一條機器指令對應一個微程序…存入ROM二、微程序控制單元框圖及工作原理1.機器指令對應的微程序M+1MM+2P+1KK+2PP+2K+1…取指周期微程序對應LDA操作的微程序對應STA操作的微程序間址周期微程序中斷周期微程序10.22.微程序控制單元的基本框圖
微地址
形成部件順序邏輯CMAR地址譯碼控制存儲器標志CLK下地址CMDR至CPU內部和系統總線的控制信號OPIR順序控制操作控制微指令基本格式10.2二、微程序控制單元框圖及工作原理M+1MM+2P+1KK+2PP+2K+1…取指周期微程序對應
LDA操作的微程序對應STA
操作的微程序間址周期微程序中斷周期微程序M+1M+2P+1P+2K+1K+2MM轉執行周期微程序…轉取指周期微程序…10.2×××3.工作原理LDAXADDYSTAZ主存STP用戶程序10.2控存M+1MM+2P+1QQ+2PP+2Q+1…取指周期
微程序對應
LDA操作的微程序對應ADD
操作的微程序Q+1Q+2MM+1M+2P+1P+2M………對應STA
操作的微程序K+1K+2MKK+2K+1×××3.工作原理(1)取指階段MCMARCM(CMAR)CMDR由CMDR發命令形成下條微指令地址Ad(CMDR)CMARCM(CMAR)CMDR由CMDR發命令Ad(CMDR)CMARCM(CMAR)CMDR由CMDR發命令M+1M+2PCMAR1RM(MAR)MDR(PC)+1PCMDRIR100001M+1M…010010M+2M+1…形成下條微指令地址執行取指微程序10.20010000M+2…×××(2)執行階段CM(CMAR)CMDR由CMDR發命令Ad(CMDR)CMARCM(CMAR)CMDR由CMDR發命令Ad(CMDR)CMARCM(CMAR)CMDR由CMDR發命令OP(IR)微地址形成部件
CMAR(PCMAR)Ad(CMDR)CMARAd(IR)MAR1RM(MAR)MDRMDRAC00000010P+2…M執行LDA微程序形成下條微指令地址P+1形成下條微指令地址P+2形成下條微指令地址M(MCMAR)01000P+2P+1…0001001P+1P…10.2(3)取指階段CM(CMAR)CMDR由CMDR發命令MCMARPCMAR1R全部微指令存在CM中,程序執行過程中只需讀出關鍵微指令的操作控制字段如何形成微操作命令微指令的后續地址如何形成執行取指微程序…10.2100
001M+1M…三、微指令的編碼方式(控制方式)1.直接編碼(直接控制)方式在微指令的操作控制字段中,
每一位代表一個微操作命令速度最快下地址…控制信號操作控制某位為“1”表示該控制信號有效10.22.字段直接編碼方式將微指令的控制字段分成若干“段”,每段經譯碼后發出控制信號每個字段中的命令是互斥的譯碼…譯碼…譯碼…下地址操作控制控制信號縮短了微指令字長,增加了譯碼時間微程序執行速度較慢10.2顯式編碼3.字段間接編碼方式4.混合編碼直接編碼和字段編碼(直接和間接)混合使用5.其他…字段1…字段2譯碼譯碼譯碼…操作控制控制信號…字段n下地址……控制信號10.2隱式編碼四、微指令序列地址的形成1.微指令的下地址字段指出2.根據機器指令的操作碼形成3.增量計數器4.分支轉移(CMAR)+1CMAR轉移地址操作控制字段
轉移方式轉移方式指明判別條件轉移地址指明轉移成功后的去向10.25.通過測試網絡6.由硬件產生微程序入口地址第一條微指令地址由專門硬件產生中斷周期由硬件產生中斷周期微程序首地址非測試地址h測試地址l測試網絡……測試源微指令地址CMDR操作控制順序控制HL10.27.后續微指令地址形成方式原理圖地址選擇+1CMAR地址譯碼下地址轉移方式CMDR控制存儲器…控制信號
分支
邏輯…標志微程序入口10.2OPIR
微地址
形成部件
多路選擇五、微指令格式1.水平型微指令如直接編碼、字段直接編碼、字段間接編碼、直接和字段混合編碼2.垂直型微指令類似機器指令操作碼的方式一次能定義并執行多個并行操作由微操作碼字段規定微指令的功能10.23.兩種微指令格式的比較(1)水平型微指令比垂直型微指令并行操作能力強
,
靈活性強(2)
水平型微指令執行一條機器指令所要的微指令數目少,速度快(3)
水平型微指令用較短的微程序結構換取較長的微指令結構(4)
水平型微指令與機器指令差別大10.2六、靜態微程序設計和動態微程序設計靜態微程序無須改變,采用ROM動態通過改變微指令和微程序改變機器指令,有利于仿真,采用
EPROM七、毫微程序設計1.毫微程序設計的基本概念微程序設計用微程序解釋機器指令毫微程序設計用毫微程序解釋微程序毫微指令與微指令的關系好比微指令與機器指令的關系10.22.
毫微程序控制存儲器的基本組成
控制存儲器(微程序)CMAR1MOPOP轉移地址垂直型微指令IR+1CMDR1CMAR2
控制存儲器(毫微程序)水平型微指令…控制信號CMDR210.2八、串行微程序控
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025學年高中歷史 第二單元 商鞅變法 第1課 改革變法風潮與秦國歷史機遇(2)教學教學設計 新人教版選修1
- Unit 3 My School Section A 2a~2f 教學設計 2024-2025學年人教版(2024)七年級英語上冊
- 2023六年級語文下冊 第五單元 15 真理誕生于一百個問號之后新學習單教學設計 新人教版
- 2 百分數(二)-利率 第二課時(教學設計)-2023-2024學年六年級下冊數學人教版
- 5《走近我們的老師》第二課時(教學設計)-統編版道德與法治三年級上冊
- 25 《劉姥姥進大觀園》(教學設計)九年級語文上冊同步備課系列(統編版)
- 輸血不良反應護理措施
- 5 語文園地五 (教學設計)2024-2025學年統編版語文二年級下冊
- Unit 4 I have a ball. (Lesson 19)(教學設計)-2023-2024學年人教精通版英語三年級上冊
- 《猜謎謠》(教學設計)-2024-2025學年人教版(2012)音樂二年級上冊
- DEEPSEEK了解及使用攻略高效使用技巧培訓課件
- 玉盤二部合唱簡譜
- 《Python程序設計基礎教程(微課版)》全套教學課件
- 中期引產病人護理pPT
- 化妝品經營使用單位現場檢查表
- 骨料檢測知識培訓講義
- DB33∕T 2387-2021 外貿綜合服務企業服務規范
- 農藥經營許可管理制度
- 通用精美電子小報模板(35)
- 廣州大學畢業論文格式
- 浮頭式換熱器設計畢業論文
評論
0/150
提交評論