




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、7.1 機(jī)器指令機(jī)器指令 7.2 操作數(shù)類型和操作類型操作數(shù)類型和操作類型 7.3 尋址方式尋址方式 7.4 指令格式舉例指令格式舉例 7.5 RISC 技術(shù)技術(shù) 一、指令的一般格式一、指令的一般格式 操作碼字段操作碼字段 地址碼字段地址碼字段1. 操作碼操作碼反映機(jī)器做什么操作反映機(jī)器做什么操作(1) 長(zhǎng)度固定長(zhǎng)度固定(2) 長(zhǎng)度可變長(zhǎng)度可變用于指令字長(zhǎng)較長(zhǎng)的情況用于指令字長(zhǎng)較長(zhǎng)的情況 ,RISC如如 IBM 370操作碼操作碼 8 位位操作碼分散在指令字的不同字段中操作碼分散在指令字的不同字段中(3) 擴(kuò)展操作碼技術(shù)擴(kuò)展操作碼技術(shù)操作碼的位數(shù)隨地址數(shù)的減少而增加操作碼的位數(shù)隨地址數(shù)的減少而
2、增加OP A1 A2 A3000000011110A1A1A1A2A2A2A3A3A3A2A2A2A3A3A3111111111111000000011110111111111111111111111111111111111111000000011111111111111111111111111111A3A3A30000000111104 位操作碼位操作碼8 位操作碼位操作碼12 位操作碼位操作碼16 位操作碼位操作碼最多最多15條三地址指令條三地址指令最多最多15條二地址指令條二地址指令最多最多15條一地址指令條一地址指令16條零地址指令條零地址指令(3) 擴(kuò)展操作碼技術(shù)擴(kuò)展操作碼技術(shù)操作碼
3、的位數(shù)隨地址數(shù)的減少而增加操作碼的位數(shù)隨地址數(shù)的減少而增加OP A1 A2 A3000000011110A1A1A1A2A2A2A3A3A3A2A2A2A3A3A3111111111111000000011110111111111111111111111111111111111111000000011111111111111111111111111111A3A3A30000000111104 位操作碼位操作碼8 位操作碼位操作碼12 位操作碼位操作碼16 位操作碼位操作碼三地址指令操作碼三地址指令操作碼每減少一種可多構(gòu)成每減少一種可多構(gòu)成24 種二地址指令種二地址指令二地址指令操作碼二地址指令
4、操作碼每減少一種可多構(gòu)成每減少一種可多構(gòu)成24 種一地址指令種一地址指令2. 地址碼地址碼(1) 四地址四地址(2) 三地址三地址OP A1 A2 A3 A48 6 6 6 6A1 第一操作數(shù)地址第一操作數(shù)地址A2 第二操作數(shù)地址第二操作數(shù)地址A3 結(jié)果的地址結(jié)果的地址A4 下一條指令地址下一條指令地址若若 PC 代替代替 A4(A1) OP (A2) A38 8 8 8 OP A1 A2 A3(A1) OP (A2) A34 次訪存次訪存4 次訪存次訪存尋址范圍尋址范圍 26 = 64尋址范圍尋址范圍 28 = 256若若 A3 用用 A1 或或 A2 代替代替設(shè)指令字長(zhǎng)為設(shè)指令字長(zhǎng)為 32
5、 位位操作碼固定為操作碼固定為 8 位位(3) 二地址二地址OP A1 A28 12 12(A1) OP (A2) A1(A1) OP (A2) A2或或4 次訪存次訪存若若ACC 代替代替 A1(或或A2)若結(jié)果存于若結(jié)果存于 ACC (4) 一地址一地址(5) 零地址零地址OP A18 24無(wú)地址碼無(wú)地址碼(ACC) OP (A1) ACC2 次訪存次訪存尋址范圍尋址范圍 212 = 4 K尋址范圍尋址范圍 224 = 16 M 3次訪存次訪存二、指令字長(zhǎng)二、指令字長(zhǎng)指令字長(zhǎng)決定于指令字長(zhǎng)決定于操作碼的長(zhǎng)度操作碼的長(zhǎng)度指令字長(zhǎng)指令字長(zhǎng) = 存儲(chǔ)字長(zhǎng)存儲(chǔ)字長(zhǎng)2. 指令字長(zhǎng)指令字長(zhǎng) 可變可變操
6、作數(shù)地址的長(zhǎng)度操作數(shù)地址的長(zhǎng)度操作數(shù)地址的個(gè)數(shù)操作數(shù)地址的個(gè)數(shù)1. 指令字長(zhǎng)指令字長(zhǎng) 固定固定按字節(jié)的倍數(shù)變化按字節(jié)的倍數(shù)變化小結(jié)小結(jié) 當(dāng)用一些硬件資源代替指令字中的地址碼字段后當(dāng)用一些硬件資源代替指令字中的地址碼字段后 當(dāng)指令的地址字段為寄存器時(shí)當(dāng)指令的地址字段為寄存器時(shí) 可擴(kuò)大指令操作數(shù)的尋址范圍可擴(kuò)大指令操作數(shù)的尋址范圍 可縮短指令字長(zhǎng)可縮短指令字長(zhǎng) 可減少訪存次數(shù)可減少訪存次數(shù) 三地址三地址 OP R1, R2, R3 二地址二地址 OP R1, R2 一地址一地址 OP R1 指令執(zhí)行階段不訪存指令執(zhí)行階段不訪存 可縮短指令字長(zhǎng)可縮短指令字長(zhǎng)一、操作數(shù)類型一、操作數(shù)類型地址地址數(shù)字?jǐn)?shù)
7、字字符字符邏輯數(shù)邏輯數(shù)無(wú)符號(hào)整數(shù)無(wú)符號(hào)整數(shù)定點(diǎn)數(shù)、浮點(diǎn)數(shù)、十進(jìn)制數(shù)定點(diǎn)數(shù)、浮點(diǎn)數(shù)、十進(jìn)制數(shù)ASCII邏輯運(yùn)算邏輯運(yùn)算二、數(shù)據(jù)在存儲(chǔ)器中的存放方式二、數(shù)據(jù)在存儲(chǔ)器中的存放方式字地址字地址 為為 低字節(jié)低字節(jié) 地址地址字地址字地址 為為 高字節(jié)高字節(jié) 地址地址37621540字地址字地址04低字節(jié)低字節(jié)04512673字地址字地址04低字節(jié)低字節(jié)存儲(chǔ)器中的數(shù)據(jù)存放(存儲(chǔ)字長(zhǎng)為存儲(chǔ)器中的數(shù)據(jù)存放(存儲(chǔ)字長(zhǎng)為 32 位)位)地址(十進(jìn)制)地址(十進(jìn)制) 0 4 812162024283236雙字雙字雙字(地址雙字(地址32)雙字雙字雙字(地址雙字(地址24)半字(地址半字(地址20)半字(地址半字(地
8、址22)半字(地址半字(地址16)半字(地址半字(地址18)字節(jié)(地址字節(jié)(地址 8)字節(jié)(地址字節(jié)(地址 9)字節(jié)(地址字節(jié)(地址10)字節(jié)(地址字節(jié)(地址11)字(地址字(地址 4)字(地址字(地址 0)字節(jié)(地址字節(jié)(地址14) 字節(jié)(地址字節(jié)(地址15)字節(jié)(地址字節(jié)(地址13) 字節(jié)(地址字節(jié)(地址12)邊界對(duì)準(zhǔn)邊界對(duì)準(zhǔn)地址(十進(jìn)制)地址(十進(jìn)制)048字節(jié)字節(jié)( 地址地址7)字節(jié)字節(jié)( 地址地址6)字字( 地址地址2)半字半字( 地址地址10)半字半字( 地址地址8)半字半字( 地址地址0)字字( 地址地址4)邊界未對(duì)準(zhǔn)邊界未對(duì)準(zhǔn) 三、操作類型三、操作類型1. 數(shù)據(jù)傳送數(shù)據(jù)傳送源源
9、目的目的寄存器寄存器寄存器寄存器寄存器寄存器寄存器寄存器存儲(chǔ)器存儲(chǔ)器存儲(chǔ)器存儲(chǔ)器存儲(chǔ)器存儲(chǔ)器存儲(chǔ)器存儲(chǔ)器置置“1”,清,清“0”2. 算術(shù)邏輯操作算術(shù)邏輯操作加、減、乘、除、增加、減、乘、除、增 1、減、減 1、求補(bǔ)、浮點(diǎn)運(yùn)算、十進(jìn)制運(yùn)算、求補(bǔ)、浮點(diǎn)運(yùn)算、十進(jìn)制運(yùn)算與、或、非、異或、位操作、位測(cè)試、位清除、位求反與、或、非、異或、位操作、位測(cè)試、位清除、位求反如如 8086MOVESTORELOADMOVEPUSHPOP例如例如MOVEMOVEADD SUB MUL DIV INC DEC CMP NEG AAA AAS AAM AAD AND OR NOT XOR TEST3. 移位操作移位
10、操作算術(shù)移位算術(shù)移位4. 轉(zhuǎn)移轉(zhuǎn)移(1) 無(wú)條件轉(zhuǎn)移無(wú)條件轉(zhuǎn)移 JMP(2) 條件轉(zhuǎn)移條件轉(zhuǎn)移結(jié)果為零轉(zhuǎn)結(jié)果為零轉(zhuǎn) (Z = 1) JZ結(jié)果溢出轉(zhuǎn)結(jié)果溢出轉(zhuǎn) (O = 1)JO結(jié)果有進(jìn)位轉(zhuǎn)(結(jié)果有進(jìn)位轉(zhuǎn)(C = 1)JC跳過(guò)一條指令跳過(guò)一條指令 SKP循環(huán)移位(帶進(jìn)位和不帶進(jìn)位)循環(huán)移位(帶進(jìn)位和不帶進(jìn)位)如如300305306307SKP DZ D = 0 則跳則跳邏輯移位邏輯移位完成觸發(fā)器完成觸發(fā)器(3) 調(diào)用和返回調(diào)用和返回CALL SUB1.CALL SUB2.CALL SUB2RETURNRETURN主程序主程序地址地址200021002101子程序子程序SUB12400250025
11、01256025612700主存空間分配主存空間分配程序執(zhí)行流程程序執(zhí)行流程子程序子程序SUB2.IN AX, nOUT DX, ALOUT n, AXOUT DX, AX(4) 陷阱(陷阱(Trap)與陷阱指令與陷阱指令意外事故的中斷意外事故的中斷 設(shè)置供用戶使用的陷阱指令設(shè)置供用戶使用的陷阱指令如如 8086 INT TYPE 軟中斷軟中斷提供給用戶使用的陷阱指令,完成系統(tǒng)調(diào)用提供給用戶使用的陷阱指令,完成系統(tǒng)調(diào)用5. 輸入輸出輸入輸出 一般不提供給用戶直接使用一般不提供給用戶直接使用 在出現(xiàn)事故時(shí),由在出現(xiàn)事故時(shí),由 CPU 自動(dòng)產(chǎn)生并執(zhí)行(隱指令)自動(dòng)產(chǎn)生并執(zhí)行(隱指令)IN AL,
12、DXIN AX, DX入入 端口地址端口地址 CPU 的寄存器的寄存器出出 CPU 的寄存器的寄存器 端口地址端口地址如如如如IN AL, nOUT n, AL尋址方式尋址方式 確定確定 本條指令本條指令 的的 操作數(shù)地址操作數(shù)地址下一條下一條 欲執(zhí)行欲執(zhí)行 指令指令 的的 指令地址指令地址指令尋址指令尋址數(shù)據(jù)尋址數(shù)據(jù)尋址尋址方式尋址方式一、指令尋址一、指令尋址順序順序( PC ) + 1 PC跳躍跳躍由轉(zhuǎn)移指令指出由轉(zhuǎn)移指令指出LDA 1000ADD 1001DEC 1200JMP 7LDA 2000SUB 2001INCSTA 2500LDA 1100.0123456789PC+1指令地址
13、尋址方式指令地址尋址方式指令地址指令地址指令指令順序?qū)ぶ讽樞驅(qū)ぶ?順序?qū)ぶ讽樞驅(qū)ぶ?順序?qū)ぶ讽樞驅(qū)ぶ?跳躍尋址跳躍尋址7順序?qū)ぶ讽樞驅(qū)ぶ?二、數(shù)據(jù)尋址二、數(shù)據(jù)尋址 形式地址形式地址 指令字中的地址指令字中的地址 有效地址有效地址 操作數(shù)的真實(shí)地址操作數(shù)的真實(shí)地址 約定約定 指令字長(zhǎng)指令字長(zhǎng) = 存儲(chǔ)字長(zhǎng)存儲(chǔ)字長(zhǎng) = 機(jī)器字長(zhǎng)機(jī)器字長(zhǎng)1. 立即尋址立即尋址 指令執(zhí)行階段不訪存指令執(zhí)行階段不訪存 A 的位數(shù)限制了立即數(shù)的范圍的位數(shù)限制了立即數(shù)的范圍形式地址形式地址 A操作碼操作碼尋址特征尋址特征OP # A立即尋址特征立即尋址特征立即數(shù)立即數(shù) 可正可負(fù)可正可負(fù) 補(bǔ)碼補(bǔ)碼形式地址形式地址 A 就是操
14、作數(shù)就是操作數(shù)2. 直接尋址直接尋址EA = A操作數(shù)操作數(shù)主存主存尋址特征尋址特征LDAAAACC 執(zhí)行階段訪問(wèn)一次存儲(chǔ)器執(zhí)行階段訪問(wèn)一次存儲(chǔ)器 A 的位數(shù)決定了該指令操作數(shù)的尋址范圍的位數(shù)決定了該指令操作數(shù)的尋址范圍 操作數(shù)的地址不易修改(必須修改操作數(shù)的地址不易修改(必須修改A)有效地址由形式地址直接給出有效地址由形式地址直接給出3. 隱含尋址隱含尋址操作數(shù)地址隱含在操作碼中操作數(shù)地址隱含在操作碼中ADDA操作數(shù)操作數(shù)主存主存尋址特征尋址特征AACC暫存暫存ALU另一個(gè)操作數(shù)另一個(gè)操作數(shù)隱含在隱含在 ACC 中中如如 8086MUL 指令指令被乘數(shù)隱含在被乘數(shù)隱含在 AX(16位)或位)
15、或 AL(8位)中位)中MOVS 指令指令源操作數(shù)的地址隱含在源操作數(shù)的地址隱含在 SI 中中目的操作數(shù)的地址隱含在目的操作數(shù)的地址隱含在 DI 中中 指令字中少了一個(gè)地址字段,可縮短指令字長(zhǎng)指令字中少了一個(gè)地址字段,可縮短指令字長(zhǎng)4. 間接尋址間接尋址EA =(A) 有效地址由形式地址間接提供有效地址由形式地址間接提供OPA尋址特征尋址特征AEA主存主存EAA1EA A1主存主存 EA10 執(zhí)行指令階段執(zhí)行指令階段 2 次訪存次訪存 可擴(kuò)大尋址范圍可擴(kuò)大尋址范圍 便于編制程序便于編制程序OPA尋址特征尋址特征A一次間址一次間址多次間址多次間址操作數(shù)操作數(shù)操作數(shù)操作數(shù)多次訪存多次訪存 子程序子
16、程序主程序主程序8081201202調(diào)用子程序調(diào)用子程序調(diào)用子程序調(diào)用子程序間接尋址編程舉例間接尋址編程舉例(A) = 81(A) = 202 間址特征間址特征JMP A 5. 寄存器尋址寄存器尋址EA = Ri 執(zhí)行階段不訪存,只訪問(wèn)寄存器,執(zhí)行速度快執(zhí)行階段不訪存,只訪問(wèn)寄存器,執(zhí)行速度快OPRi尋址特征尋址特征 寄存器個(gè)數(shù)有限,可縮短指令字長(zhǎng)寄存器個(gè)數(shù)有限,可縮短指令字長(zhǎng)操作數(shù)操作數(shù)R0RiRn寄存器寄存器有效地址即為寄存器編號(hào)有效地址即為寄存器編號(hào)EA = ( Ri )6. 寄存器間接尋址寄存器間接尋址 有效地址在寄存器中,有效地址在寄存器中, 操作數(shù)在存儲(chǔ)器中,執(zhí)行階段訪存操作數(shù)在存
17、儲(chǔ)器中,執(zhí)行階段訪存操作數(shù)操作數(shù)主存主存OPRi尋址特征尋址特征 便于編制循環(huán)程序便于編制循環(huán)程序地址地址R0RiRn寄存器寄存器有效地址在寄存器中有效地址在寄存器中7. 基址尋址基址尋址(1) 采用專用寄存器作基址寄存器采用專用寄存器作基址寄存器EA = ( BR ) + ABR 為基址寄存器為基址寄存器OPA操作數(shù)操作數(shù)主存主存尋址特征尋址特征ALUBR 可擴(kuò)大尋址范圍可擴(kuò)大尋址范圍 有利于多道程序有利于多道程序 BR 內(nèi)容由操作系統(tǒng)或管理程序確定內(nèi)容由操作系統(tǒng)或管理程序確定 在程序的執(zhí)行過(guò)程中在程序的執(zhí)行過(guò)程中 BR 內(nèi)容不變,形式地址內(nèi)容不變,形式地址 A 可變可變(2) 采用通用寄存
18、器作基址寄存器采用通用寄存器作基址寄存器操作數(shù)操作數(shù)主存主存尋址特征尋址特征ALUOPR0AR0 作基址寄存器作基址寄存器 由用戶指定哪個(gè)通用寄存器作為基址寄存器由用戶指定哪個(gè)通用寄存器作為基址寄存器通用寄存器通用寄存器R0Rn-1R1 基址寄存器的內(nèi)容由操作系統(tǒng)確定基址寄存器的內(nèi)容由操作系統(tǒng)確定 在程序的執(zhí)行過(guò)程中在程序的執(zhí)行過(guò)程中 R0 內(nèi)容不變,形式地址內(nèi)容不變,形式地址 A 可變可變8. 變址尋址變址尋址EA = ( IX ) +AOPA操作數(shù)操作數(shù)主存主存尋址特征尋址特征ALUIX 可擴(kuò)大尋址范圍可擴(kuò)大尋址范圍 便于處理數(shù)組問(wèn)題便于處理數(shù)組問(wèn)題 IX 的內(nèi)容由用戶給定的內(nèi)容由用戶給定
19、 IX 為變址寄存器(專用)為變址寄存器(專用) 在程序的執(zhí)行過(guò)程中在程序的執(zhí)行過(guò)程中 IX 內(nèi)容可變,形式地址內(nèi)容可變,形式地址 A 不變不變通用寄存器也可以作為變址寄存器通用寄存器也可以作為變址寄存器例例 設(shè)數(shù)據(jù)塊首地址為設(shè)數(shù)據(jù)塊首地址為 D,求求 N 個(gè)數(shù)的平均值個(gè)數(shù)的平均值直接尋址直接尋址變址尋址變址尋址LDA DADD D + 1ADD D + 2ADD D + ( N -1 )DIV # NSTA ANSLDA # 0LDX # 0INXCPX # NBNE MDIV # NSTA ANS共共 N + 2 條指令條指令共共 8 條指令條指令A(yù)DD X, DMX 為變址寄存器為變址寄
20、存器D 為形式地址為形式地址(X) 和和 #N 比較比較(X) +1 X結(jié)果不為零則轉(zhuǎn)結(jié)果不為零則轉(zhuǎn)9. 相對(duì)尋址相對(duì)尋址 EA = ( PC ) + AA 是相對(duì)于當(dāng)前指令的位移量(可正可負(fù),補(bǔ)碼)是相對(duì)于當(dāng)前指令的位移量(可正可負(fù),補(bǔ)碼) A 的位數(shù)決定操作數(shù)的尋址范圍的位數(shù)決定操作數(shù)的尋址范圍 程序浮動(dòng)程序浮動(dòng) 廣泛用于轉(zhuǎn)移指令廣泛用于轉(zhuǎn)移指令操作數(shù)操作數(shù)尋址特征尋址特征ALUOPA相對(duì)距離相對(duì)距離 A1000PC 主存主存1000AOP (1) 相對(duì)尋址舉例相對(duì)尋址舉例M 隨程序所在存儲(chǔ)空間的位置不同而不同隨程序所在存儲(chǔ)空間的位置不同而不同EA = ( M+3 ) 3 = M 3*LD
21、A # 0LDX # 0ADD X, DINXCPX # NBNE MDIV # NSTA ANSMM+1M+2M+3而指令而指令 BNE 與與 指令指令 ADD X, D 相對(duì)位移量不變相對(duì)位移量不變 3* 指令指令 BNE操作數(shù)的有效地址為操作數(shù)的有效地址為 3* 相對(duì)尋址特征相對(duì)尋址特征*(2) 按字節(jié)尋址的相對(duì)尋址舉例按字節(jié)尋址的相對(duì)尋址舉例OP位移量位移量2000 H2008 H8JMP * + 8OP06 H2000 H2008 H8設(shè)設(shè) 當(dāng)前指令地址當(dāng)前指令地址 PC = 2000H轉(zhuǎn)移后的目的地址為轉(zhuǎn)移后的目的地址為 2008H因?yàn)橐驗(yàn)?取出取出 JMP * + 8 后后 PC
22、 = 2002H二字節(jié)指令二字節(jié)指令故故 JMP * + 8 指令指令 的第二字節(jié)為的第二字節(jié)為 2008H - 2002H = 06H10. 堆棧尋址堆棧尋址(1) 堆棧的特點(diǎn)堆棧的特點(diǎn)堆棧堆棧硬堆棧硬堆棧軟堆棧軟堆棧多個(gè)寄存器多個(gè)寄存器指定的存儲(chǔ)空間指定的存儲(chǔ)空間先進(jìn)后出先進(jìn)后出(一個(gè)入出口)(一個(gè)入出口) 棧頂?shù)刂窏m數(shù)刂?由由 SP 指出指出 11FFFH +12000 H進(jìn)棧進(jìn)棧 (SP) 1 SP出棧出棧 (SP)+ 1 SP棧頂棧頂棧底棧底2000 HSP2000 H1FFF HSP1FFFH棧頂棧頂棧底棧底進(jìn)棧進(jìn)棧出棧出棧 1FFF H棧頂棧頂 2000 H棧頂棧頂(2) 堆棧
23、尋址舉例堆棧尋址舉例15200HACCSPX棧頂棧頂200H棧底棧底主存主存151FFHACCSP15棧頂棧頂200H棧底棧底主存主存X1FFHPUSH A 前前PUSH A 后后POP A 前前POP A 后后Y1FFHACCSPX棧頂棧頂200H棧底棧底主存主存151FFH15200HACCSP棧頂棧頂200H棧底棧底主存主存X15(3) SP 的修改與主存編址方法有關(guān)的修改與主存編址方法有關(guān) 按按 字字 編址編址進(jìn)棧進(jìn)棧出棧出棧(SP) 1 SP(SP)+ 1 SP 按按 字節(jié)字節(jié) 編址編址存儲(chǔ)字長(zhǎng)存儲(chǔ)字長(zhǎng) 16 位位進(jìn)棧進(jìn)棧出棧出棧(SP) 2 SP(SP)+ 2 SP存儲(chǔ)字長(zhǎng)存儲(chǔ)字長(zhǎng)
24、 32 位位進(jìn)棧進(jìn)棧出棧出棧(SP) 4 SP(SP)+ 4 SP一、設(shè)計(jì)指令格式時(shí)應(yīng)考慮的各種因素一、設(shè)計(jì)指令格式時(shí)應(yīng)考慮的各種因素1. 指令系統(tǒng)的指令系統(tǒng)的 兼容性兼容性 (向上兼容)(向上兼容)2. 其他因素其他因素操作類型操作類型數(shù)據(jù)類型數(shù)據(jù)類型指令格式指令格式包括指令個(gè)數(shù)及操作的難易程度包括指令個(gè)數(shù)及操作的難易程度指令字長(zhǎng)是否固定指令字長(zhǎng)是否固定尋址方式尋址方式寄存器個(gè)數(shù)寄存器個(gè)數(shù)地址碼位數(shù)、地址個(gè)數(shù)、尋址方式類型地址碼位數(shù)、地址個(gè)數(shù)、尋址方式類型操作碼位數(shù)、是否采用擴(kuò)展操作碼技術(shù),操作碼位數(shù)、是否采用擴(kuò)展操作碼技術(shù),確定哪些數(shù)據(jù)類型可參與操作確定哪些數(shù)據(jù)類型可參與操作指令尋址、操作
25、數(shù)尋址指令尋址、操作數(shù)尋址寄存器的多少直接影響指令的執(zhí)行時(shí)間寄存器的多少直接影響指令的執(zhí)行時(shí)間二、指令格式舉例二、指令格式舉例1. PDP 8指令字長(zhǎng)固定指令字長(zhǎng)固定 12 位位 操作碼操作碼 間間 頁(yè)頁(yè) 地址碼地址碼訪存類指令訪存類指令0235411寄存器類指令寄存器類指令 1 1 1 輔助操作碼輔助操作碼02 311I/O 類指令類指令 1 1 0 設(shè)備設(shè)備 操作碼操作碼02 31198采用擴(kuò)展操作碼技術(shù)采用擴(kuò)展操作碼技術(shù)2. PDP 11源地址源地址OP4 6 6 16 16目的地址目的地址存儲(chǔ)器地址存儲(chǔ)器地址1存儲(chǔ)器地址存儲(chǔ)器地址2OP10 6 16目的地址目的地址存儲(chǔ)器地址存儲(chǔ)器地址
26、目的地址目的地址4 6 6源地址源地址OP 10 6目的地址目的地址OP-CODE16OP-CODE指令字長(zhǎng)有指令字長(zhǎng)有 16 位、位、32 位、位、48 位三種位三種零地址零地址 (16 位位)一地址一地址 (16 位位)二地址二地址 R R (16 位位)二地址二地址 R M (32 位位)二地址二地址 M M (48 位位)擴(kuò)展操作碼技術(shù)擴(kuò)展操作碼技術(shù)3. IBM 360OPR1R2 RR格式格式8 4 4OPR1XBD RX格式格式8 4 4 4 12OPR1R3BD RS格式格式8 4 4 4 12OPBDI SI格式格式8 8 4 12二地址二地址 R R基址加變址尋址基址加變址尋
27、址二地址二地址 R M三地址三地址 R M基址尋址基址尋址二地址二地址 M M基址尋址基址尋址基址尋址基址尋址立即數(shù)立即數(shù) MOPB1D1LB2D2 SS格式格式884124124. Intel 8086(1) 指令字長(zhǎng)指令字長(zhǎng)(2) 地址格式地址格式1 6 個(gè)字節(jié)個(gè)字節(jié)MOV WORD PTR0204, 0138H 6 字節(jié)字節(jié)INC AX 1 字節(jié)字節(jié)一地址一地址NOP 1 字節(jié)字節(jié)CALL段內(nèi)調(diào)用段內(nèi)調(diào)用 3 字節(jié)字節(jié)零地址零地址 5 字節(jié)字節(jié)段間調(diào)用段間調(diào)用寄存器寄存器 寄存器寄存器寄存器寄存器 立即數(shù)立即數(shù)寄存器寄存器 存儲(chǔ)器存儲(chǔ)器ADD AX,BX 2 字節(jié)字節(jié)ADD AX,304
28、8H 4 字節(jié)字節(jié)ADD AX,3048H 3 字節(jié)字節(jié)二地址二地址CALL一、一、RISC 的產(chǎn)生和發(fā)展的產(chǎn)生和發(fā)展 80 20 規(guī)律規(guī)律 典型程序中典型程序中 80% 的語(yǔ)句僅僅使的語(yǔ)句僅僅使 用處理機(jī)中用處理機(jī)中 20% 的指令的指令 執(zhí)行頻度高的簡(jiǎn)單指令,因復(fù)雜指令執(zhí)行頻度高的簡(jiǎn)單指令,因復(fù)雜指令 的存在,執(zhí)行速度無(wú)法提高的存在,執(zhí)行速度無(wú)法提高RISC(Reduced Instruction Set Computer)CISC(Complex Instruction Set Computer) RISC技術(shù)技術(shù) 能否用能否用 20% 的簡(jiǎn)單指令組合不常用的的簡(jiǎn)單指令組合不常用的 80
29、% 的指令功能的指令功能?二、二、RISC 的主要特征的主要特征 選用使用頻度較高的一些選用使用頻度較高的一些 簡(jiǎn)單指令簡(jiǎn)單指令, 復(fù)雜指令的功能由簡(jiǎn)單指令來(lái)組合復(fù)雜指令的功能由簡(jiǎn)單指令來(lái)組合 指令指令 長(zhǎng)度固定長(zhǎng)度固定、指令格式種類少指令格式種類少、尋址方式少尋址方式少 只有只有 LOAD / STORE 指令訪存指令訪存 采用采用 流水技術(shù)流水技術(shù) 一個(gè)時(shí)鐘周期一個(gè)時(shí)鐘周期 內(nèi)完成一條指令內(nèi)完成一條指令 采用采用 組合邏輯組合邏輯 實(shí)現(xiàn)控制器實(shí)現(xiàn)控制器 CPU 中有中有多個(gè)多個(gè) 通用通用 寄存器寄存器 采用采用 優(yōu)化優(yōu)化 的的 編譯編譯 程序程序 三、三、CISC 的主要特征的主要特征 系
30、統(tǒng)指令系統(tǒng)指令 復(fù)雜龐大復(fù)雜龐大,各種指令使用頻度相差大,各種指令使用頻度相差大 指令指令 長(zhǎng)度不固定長(zhǎng)度不固定、指令格式種類多指令格式種類多、尋址方式多尋址方式多 訪存訪存 指令指令 不受限制不受限制 大大多數(shù)指令需要多數(shù)指令需要 多個(gè)時(shí)鐘周期多個(gè)時(shí)鐘周期 執(zhí)行完畢執(zhí)行完畢 采用采用 微程序微程序 控制器控制器 CPU 中設(shè)有中設(shè)有 專用寄存器專用寄存器 難以難以 用用 優(yōu)化編譯優(yōu)化編譯 生成高效的目的代碼生成高效的目的代碼 四、四、RISC和和CISC 的比較的比較 1. RISC更能更能 充分利用充分利用 VLSI 芯片芯片的面積的面積2. RISC 更能更能 提高計(jì)算機(jī)運(yùn)算速度提高計(jì)算
31、機(jī)運(yùn)算速度指令數(shù)指令數(shù)、指令格式指令格式、尋址方式少尋址方式少,通用通用 寄存器多寄存器多,采用,采用 組合邏輯組合邏輯 ,便于實(shí)現(xiàn)便于實(shí)現(xiàn) 指令流水指令流水3. RISC 便于設(shè)計(jì)便于設(shè)計(jì),可,可 降低成本降低成本,提高,提高 可靠性可靠性4. RISC 有利于編譯程序代碼優(yōu)化有利于編譯程序代碼優(yōu)化 5. RISC 不易不易 實(shí)現(xiàn)實(shí)現(xiàn) 指令系統(tǒng)兼容指令系統(tǒng)兼容 l7.6l7.9l7.15l7.16l7.19l7.208.1 CPU 的結(jié)構(gòu)的結(jié)構(gòu)8.3 指令流水指令流水8.2 指令周期指令周期8.4 中斷系統(tǒng)中斷系統(tǒng)一、一、 CPU 的功能的功能取指令取指令分析指令分析指令執(zhí)行指令,發(fā)出各種操
32、作命令執(zhí)行指令,發(fā)出各種操作命令控制程序輸入及結(jié)果的輸出控制程序輸入及結(jié)果的輸出總線管理總線管理處理異常情況和特殊請(qǐng)求處理異常情況和特殊請(qǐng)求1. 控制器的功能控制器的功能2. 運(yùn)算器的功能運(yùn)算器的功能實(shí)現(xiàn)算術(shù)運(yùn)算和邏輯運(yùn)算實(shí)現(xiàn)算術(shù)運(yùn)算和邏輯運(yùn)算指令控制指令控制操作控制操作控制時(shí)間控制時(shí)間控制數(shù)據(jù)加工數(shù)據(jù)加工處理中斷處理中斷二、二、CPU 結(jié)構(gòu)框圖結(jié)構(gòu)框圖PC IR指令控制指令控制操作控制操作控制時(shí)間控制時(shí)間控制數(shù)據(jù)加工數(shù)據(jù)加工處理中斷處理中斷ALU 寄存器寄存器中斷系統(tǒng)中斷系統(tǒng)1. CPU 與系統(tǒng)總線與系統(tǒng)總線CU 時(shí)序電路時(shí)序電路寄存器寄存器ALU 中斷中斷 系統(tǒng)系統(tǒng)CUCPU控制總線控制總
33、線數(shù)據(jù)總線數(shù)據(jù)總線地址總線地址總線2. CPU 的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu) 算術(shù)和算術(shù)和布爾邏輯布爾邏輯取反取反移位移位狀態(tài)標(biāo)志狀態(tài)標(biāo)志內(nèi)部?jī)?nèi)部 數(shù)據(jù)總線數(shù)據(jù)總線寄存器寄存器CU中斷中斷系統(tǒng)系統(tǒng)ALU控制信號(hào)控制信號(hào)C P U1. 用戶用戶可見(可操作)寄存器可見(可操作)寄存器(1) 通用寄存器通用寄存器三、三、 CPU 的寄存器的寄存器存放操作數(shù)存放操作數(shù)也可也可作作 某種尋址方式所需的某種尋址方式所需的 寄存器寄存器(2) 數(shù)據(jù)寄存器數(shù)據(jù)寄存器存放操作數(shù)存放操作數(shù)(位數(shù)應(yīng)滿足多種(位數(shù)應(yīng)滿足多種數(shù)據(jù)類型)數(shù)據(jù)類型)兩個(gè)寄存器拼接存放雙倍字長(zhǎng)數(shù)據(jù)兩個(gè)寄存器拼接存放雙倍字長(zhǎng)數(shù)據(jù)(3) 地址寄存器地
34、址寄存器存放地址存放地址,其位數(shù)應(yīng)滿足最大的地址范圍,其位數(shù)應(yīng)滿足最大的地址范圍也可用也可用于特殊的尋址方式于特殊的尋址方式 ,如基址尋址,如基址尋址的段基的段基值值 和堆棧尋址的棧指針和堆棧尋址的棧指針(4) 條件碼寄存器條件碼寄存器存放條件碼存放條件碼,可作程序分支的依據(jù),可作程序分支的依據(jù)如如 正、負(fù)、零、溢出、進(jìn)位等正、負(fù)、零、溢出、進(jìn)位等2. 控制和狀態(tài)寄存器控制和狀態(tài)寄存器(1) 控制寄存器控制寄存器PC控制控制 CPU 操作操作(2) 狀態(tài)寄存器狀態(tài)寄存器狀態(tài)寄存器狀態(tài)寄存器其中其中 MAR、MDR、IR 用戶不用戶不可見(不可操作)可見(不可操作) 存放條件碼存放條件碼PSW
35、寄存器寄存器存放程序狀態(tài)字存放程序狀態(tài)字 PC 用戶可見用戶可見 MARMMDRIR四、四、 控制單元控制單元 CU 和中斷系統(tǒng)和中斷系統(tǒng)1. CU 產(chǎn)生全部指令的微操作命令序列產(chǎn)生全部指令的微操作命令序列組合邏輯設(shè)計(jì)組合邏輯設(shè)計(jì)微程序設(shè)計(jì)微程序設(shè)計(jì)硬連線邏輯硬連線邏輯存儲(chǔ)邏輯存儲(chǔ)邏輯2. 中斷系統(tǒng)中斷系統(tǒng)參見參見 第篇第篇 五、五、ALU參見參見 8.4 節(jié)節(jié)參見參見 第章第章一、一、 指令周期的基本概念指令周期的基本概念1 . 指令周期指令周期取出并執(zhí)行一條指令所需的全部時(shí)間取出并執(zhí)行一條指令所需的全部時(shí)間完成一條指令完成一條指令執(zhí)行執(zhí)行取指、分析取指、分析取指階段取指階段取指周期取指周期
36、執(zhí)行階段執(zhí)行階段執(zhí)行周期執(zhí)行周期(取指、分析)(取指、分析)(執(zhí)行指令)(執(zhí)行指令)指令周期指令周期取指周期取指周期執(zhí)行周期執(zhí)行周期2. 每條指令的指令周期不同每條指令的指令周期不同取指周期取指周期指令周期指令周期取指周期取指周期 執(zhí)行周期執(zhí)行周期指令周期指令周期NOPADD mem MUL mem取指周期取指周期執(zhí)行周期執(zhí)行周期指令周期指令周期3. 具有間接尋址的指令周期具有間接尋址的指令周期4. 帶有中斷周期的指令周期帶有中斷周期的指令周期取指周期取指周期間址周期間址周期指令周期指令周期執(zhí)行周期執(zhí)行周期取指周期取指周期間址周期間址周期指令周期指令周期執(zhí)行周期執(zhí)行周期中斷周期中斷周期5. 指
37、令周期流程指令周期流程取指周期取指周期執(zhí)行周期執(zhí)行周期有間址嗎?有間址嗎?有中斷嗎?有中斷嗎?間址周期間址周期中斷周期中斷周期是是是是否否否否6. CPU 工作周期的標(biāo)志工作周期的標(biāo)志CPU 訪存有四種性質(zhì)訪存有四種性質(zhì)取取 指令指令取取 地址地址取取 操作數(shù)操作數(shù)存存 程序斷點(diǎn)程序斷點(diǎn)取指周期取指周期間址周期間址周期執(zhí)行周期執(zhí)行周期中斷周期中斷周期FEDINDDINTDCLK1FE1IND1EX1INTEXDCPU 的的4個(gè)工作周期個(gè)工作周期1. 取指周期數(shù)據(jù)流取指周期數(shù)據(jù)流二、二、 指令周期的數(shù)據(jù)流指令周期的數(shù)據(jù)流MDRCUMARPCIR存儲(chǔ)器存儲(chǔ)器CPU地址總線地址總線數(shù)據(jù)總線數(shù)據(jù)總線控
38、制總線控制總線IR+1 2. 間址周期數(shù)據(jù)流間址周期數(shù)據(jù)流MDRCUMARCPU地址總線地址總線數(shù)據(jù)總線數(shù)據(jù)總線控制總線控制總線PCIR存儲(chǔ)器存儲(chǔ)器MDR3. 執(zhí)行周期數(shù)據(jù)流執(zhí)行周期數(shù)據(jù)流4 . 中斷周期數(shù)據(jù)流中斷周期數(shù)據(jù)流不同指令的執(zhí)行周期數(shù)據(jù)流不同不同指令的執(zhí)行周期數(shù)據(jù)流不同MDRCUMARCPU地址總線地址總線數(shù)據(jù)總線數(shù)據(jù)總線控制總線控制總線PC存儲(chǔ)器存儲(chǔ)器一、如何提高機(jī)器速度一、如何提高機(jī)器速度1. 提高訪存速度提高訪存速度2. 提高提高 I/O 和主機(jī)之間的傳送速度和主機(jī)之間的傳送速度 提高整機(jī)處理能力提高整機(jī)處理能力高速芯片高速芯片Cache多體并行多體并行I/O 處理機(jī)處理機(jī)DM
39、A多總線多總線通道通道高速器件高速器件改進(jìn)系統(tǒng)結(jié)構(gòu)改進(jìn)系統(tǒng)結(jié)構(gòu) ,開發(fā)系統(tǒng)的并行性開發(fā)系統(tǒng)的并行性中斷中斷3. 提高運(yùn)算器速度提高運(yùn)算器速度高速芯片高速芯片改進(jìn)算法改進(jìn)算法快速進(jìn)位鏈快速進(jìn)位鏈二、系統(tǒng)的并行性二、系統(tǒng)的并行性時(shí)間上互相重疊時(shí)間上互相重疊2. 并行性的等級(jí)并行性的等級(jí)指令級(jí)(指令之間)指令級(jí)(指令之間)(指令內(nèi)部)(指令內(nèi)部)過(guò)程級(jí)(程序、進(jìn)程)過(guò)程級(jí)(程序、進(jìn)程)兩個(gè)或兩個(gè)以上事件在兩個(gè)或兩個(gè)以上事件在 同一時(shí)刻同一時(shí)刻 發(fā)生發(fā)生兩個(gè)或兩個(gè)以上事件在兩個(gè)或兩個(gè)以上事件在 同一時(shí)間段同一時(shí)間段 發(fā)生發(fā)生并行并行1. 并行的概念并行的概念粗粒度粗粒度軟件實(shí)現(xiàn)軟件實(shí)現(xiàn)細(xì)粒度細(xì)粒度硬件
40、實(shí)現(xiàn)硬件實(shí)現(xiàn)并發(fā)并發(fā)同時(shí)同時(shí)取指令取指令 3執(zhí)行指令執(zhí)行指令 3三、指令流水原理三、指令流水原理2. 指令的二級(jí)流水指令的二級(jí)流水1. 指令的串行執(zhí)行指令的串行執(zhí)行取指令取指令 取指令部件取指令部件 完成完成總有一個(gè)部件總有一個(gè)部件 空閑空閑指令預(yù)取指令預(yù)取若若 取指取指 和和 執(zhí)行執(zhí)行 階段時(shí)間上階段時(shí)間上 完全重疊完全重疊指令周期指令周期 減半減半 速度提高速度提高 1 倍倍執(zhí)行指令執(zhí)行指令 執(zhí)行指令部件執(zhí)行指令部件 完成完成取指令取指令 1執(zhí)行執(zhí)行指令指令 1取取指令指令 2執(zhí)行執(zhí)行指令指令 2取取指令指令 3執(zhí)行指令執(zhí)行指令 3取指令取指令 2執(zhí)行指令執(zhí)行指令 2取指令取指令 1執(zhí)行指
41、令執(zhí)行指令 1 必須等必須等 上條上條 指令執(zhí)行結(jié)束,才能確定指令執(zhí)行結(jié)束,才能確定 下條下條 指令的地址,指令的地址, 造成時(shí)間損失造成時(shí)間損失3. 影響指令流水效率加倍的因素影響指令流水效率加倍的因素(1) 執(zhí)行時(shí)間執(zhí)行時(shí)間 取指時(shí)間取指時(shí)間 (2) 條件轉(zhuǎn)移指令條件轉(zhuǎn)移指令 對(duì)指令流水的影響對(duì)指令流水的影響 解決辦法解決辦法 ?取指令取指令部件部件指令部件指令部件緩沖區(qū)緩沖區(qū)執(zhí)行指令執(zhí)行指令部件部件猜測(cè)法猜測(cè)法4. 指令的六級(jí)流水指令的六級(jí)流水六級(jí)流水六級(jí)流水14 個(gè)時(shí)間單位個(gè)時(shí)間單位串行執(zhí)行串行執(zhí)行6 9 54個(gè)時(shí)間單位個(gè)時(shí)間單位完成完成 一條指令一條指令6 個(gè)時(shí)間單位個(gè)時(shí)間單位COF
42、OEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFI指令指令 1指令指令 2指令指令 3指令指令 4指令指令 5指令指令 6指令指令 7指令指令 8指令指令 9 1 2 3 4 5 6 7 8 9 10 11 12 13 14t指令指令 1 與指令與指令 4 沖突沖突指令指令 2 與指令與指令 5 沖突沖突指令指令1、指令、指令3、指令、指令 6 沖突沖突COFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEI
43、WODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFI指令指令 1指令指令 2指令指令 3指令指令 4指令指令 5指令指令 6指令指令 7指令指令 8指令指令 9 1 2 3 4 5 6 7 8 9 10 11 12 13 14t四、影響指令流水線性能的因素四、影響指令流水線性能的因素1. 結(jié)構(gòu)相關(guān)結(jié)構(gòu)相關(guān)不同指令爭(zhēng)用同一功能部件產(chǎn)生資源沖突不同指令爭(zhēng)用同一功能部件產(chǎn)生資源沖突程序的相近指令之間出現(xiàn)某種關(guān)聯(lián)程序的相近指令之間出現(xiàn)某種關(guān)聯(lián)使指令流水出現(xiàn)停頓,影響流水線效率使指令流水出現(xiàn)停頓,影響流水線效率解決辦法解決辦
44、法 停頓停頓 指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開 指令預(yù)取技術(shù)指令預(yù)取技術(shù) (適用于訪存周期短的情況)(適用于訪存周期短的情況)2. 數(shù)據(jù)相關(guān)數(shù)據(jù)相關(guān)不同指令因重疊操作,可能改變操作數(shù)的不同指令因重疊操作,可能改變操作數(shù)的 讀讀/寫寫 訪問(wèn)順序訪問(wèn)順序 采用采用 旁路技術(shù)旁路技術(shù)解決辦法解決辦法 寫后讀相關(guān)(寫后讀相關(guān)(RAW)SUB R1,R2,R3ADD R4,R5,R1;(;(R2) (R3) R1;(;(R5)+(R1) R4 讀后寫相關(guān)(讀后寫相關(guān)(WAR)STA M,R2ADD R2,R4,R5;(;(R2) M 存儲(chǔ)單元存儲(chǔ)單元;(;(R4)+(R5) R2 寫
45、后寫相關(guān)(寫后寫相關(guān)(WAW) 后推法后推法MUL R3,R2,R1SUB R3,R4,R5;(;(R2) (R1) R3;(;(R4) (R5) R33. 控制相關(guān)控制相關(guān)BNE 指令必須等指令必須等CPX 指令的結(jié)果指令的結(jié)果才能判斷出才能判斷出是轉(zhuǎn)移是轉(zhuǎn)移還是順序執(zhí)行還是順序執(zhí)行LDA # 0LDX # 0INXCPX # NBNE MDIV # NSTA ANSADD X, DM由轉(zhuǎn)移指令引起由轉(zhuǎn)移指令引起3. 控制相關(guān)控制相關(guān)WOEIFOCODIWOEIFODIFIFIDIFICOFIFOCODIFIWOEIFOCODIFIDIFOEIWOEIFOCOFIDICOWODIFICOFI
46、指令指令 1指令指令 2指令指令 3指令指令 4指令指令 5指令指令 6指令指令 7指令指令15指令指令16 1 2 3 4 5 6 7 8 9 10 11 12 13 14轉(zhuǎn)移損失轉(zhuǎn)移損失t設(shè)設(shè) 指令指令3 是轉(zhuǎn)移指令是轉(zhuǎn)移指令五、流水線性能五、流水線性能 1. 吞吐率吞吐率 單位時(shí)間內(nèi)單位時(shí)間內(nèi) 流水線所完成指令流水線所完成指令 或或 輸出結(jié)果輸出結(jié)果 的的 數(shù)量數(shù)量 最大吞吐率最大吞吐率 實(shí)際吞吐率實(shí)際吞吐率 連續(xù)處理連續(xù)處理 n 條指令的吞吐率為條指令的吞吐率為設(shè)設(shè) m 段的流水線各段時(shí)間為段的流水線各段時(shí)間為t tTpmax =1t tTp =m + (n-1) nt tt t2.
47、加速比加速比 Sp m 段的段的 流水線的速度流水線的速度 與等功能的與等功能的 非流水線的速度非流水線的速度 之比之比 設(shè)流水線各段時(shí)間為設(shè)流水線各段時(shí)間為 t 完成完成 n 條指令在條指令在 m 段流水線上共需段流水線上共需 T = m + (n-1) t t 完成完成 n 條指令在等效的非流水線上共需條指令在等效的非流水線上共需 T = nmt Sp = m +(n-1) nm =nmm + n -1 t t t 則則由于流水線有由于流水線有 建立時(shí)間建立時(shí)間 和和 排空時(shí)間排空時(shí)間因此各功能段的因此各功能段的 設(shè)備不可能設(shè)備不可能 一直一直 處于處于 工作工作 狀態(tài)狀態(tài) 流水線中各功能
48、段的流水線中各功能段的 利用率利用率3. 效率效率 mt31245312453124531245 n-1 nn-1 nn-1 nn-1 nT時(shí)間時(shí)間S空間空間空間空間S4S3S2S1(n-1) tm(m + n -1) t = mnt 流水線各段處于工作時(shí)間的時(shí)空區(qū)流水線各段處于工作時(shí)間的時(shí)空區(qū)流水線中各段總的時(shí)空區(qū)流水線中各段總的時(shí)空區(qū) 效率效率 = 3. 效率效率 mt31245312453124531245 n-1 nn-1 nn-1 nn-1 nT時(shí)間時(shí)間S空間空間空間空間S4S3S2S1(n-1) t流水線中各功能段的流水線中各功能段的 利用率利用率六、流水線的多發(fā)技術(shù)六、流水線的多
49、發(fā)技術(shù) 1. 超標(biāo)量技術(shù)超標(biāo)量技術(shù) 每個(gè)時(shí)鐘周期內(nèi)可每個(gè)時(shí)鐘周期內(nèi)可 并發(fā)多條獨(dú)立指令并發(fā)多條獨(dú)立指令 不能調(diào)整不能調(diào)整 指令的指令的 執(zhí)行順序執(zhí)行順序配置多個(gè)功能部件配置多個(gè)功能部件 通過(guò)編譯優(yōu)化技術(shù),把可并行執(zhí)行的指令搭配起來(lái)通過(guò)編譯優(yōu)化技術(shù),把可并行執(zhí)行的指令搭配起來(lái)IF ID EX WR0 1 2 3 4 5 6 7 8 9 10 11 12 13時(shí)鐘時(shí)鐘周期周期指令序列指令序列2. 超流水線技術(shù)超流水線技術(shù) 在在 一個(gè)時(shí)鐘周期一個(gè)時(shí)鐘周期 內(nèi)內(nèi) 再分段再分段 ( 3 段)段) 不能調(diào)整不能調(diào)整 指令的指令的 執(zhí)行順序執(zhí)行順序在一個(gè)時(shí)鐘周期內(nèi)在一個(gè)時(shí)鐘周期內(nèi) 一個(gè)功能部件使用多次一個(gè)功
50、能部件使用多次( 3 次)次)靠編譯程序解決優(yōu)化問(wèn)題靠編譯程序解決優(yōu)化問(wèn)題流水線速度是原來(lái)速度的流水線速度是原來(lái)速度的 3 倍倍IF ID EX WR0 1 2 3 4 5 6 7 8 9 10 11 12 13時(shí)鐘周期時(shí)鐘周期指令序列指令序列3. 超長(zhǎng)指令字技術(shù)超長(zhǎng)指令字技術(shù) 采用采用 多個(gè)處理部件多個(gè)處理部件具有具有 多個(gè)操作碼字段多個(gè)操作碼字段 的的 超長(zhǎng)指令字超長(zhǎng)指令字(可達(dá)幾百位)(可達(dá)幾百位) 由編譯程序由編譯程序 挖掘挖掘 出指令間出指令間 潛在潛在 的的 并行性并行性,將將 多條多條 能能 并行操作并行操作 的指令組合成的指令組合成 一條一條IF ID EX WR0 1 2 3
51、 4 5 6 7 8 9 10 11 12 13時(shí)鐘周期時(shí)鐘周期指令序列指令序列七、流水線結(jié)構(gòu)七、流水線結(jié)構(gòu)1. 指令流水線結(jié)構(gòu)指令流水線結(jié)構(gòu)完成一條指令分完成一條指令分 7 段段, 每段需一個(gè)時(shí)鐘周期每段需一個(gè)時(shí)鐘周期若若 流水線不出現(xiàn)斷流流水線不出現(xiàn)斷流1 個(gè)時(shí)鐘周期出個(gè)時(shí)鐘周期出 1 結(jié)果結(jié)果不采用流水技術(shù)不采用流水技術(shù)7 個(gè)時(shí)鐘周期出個(gè)時(shí)鐘周期出 1 結(jié)果結(jié)果理想情況下,理想情況下,7 級(jí)流水級(jí)流水 的速度是不采用流水技術(shù)的的速度是不采用流水技術(shù)的 7 倍倍地址形成部件地址形成部件指令譯碼部件指令譯碼部件取操作數(shù)部件取操作數(shù)部件取指令部件取指令部件操作執(zhí)行部件操作執(zhí)行部件回寫結(jié)果部件回
52、寫結(jié)果部件修改指令指針部件修改指令指針部件鎖存鎖存鎖存鎖存鎖存鎖存鎖存鎖存鎖存鎖存鎖存鎖存2. 運(yùn)算流水線運(yùn)算流水線完成完成 浮點(diǎn)加減浮點(diǎn)加減 運(yùn)算運(yùn)算 可分可分對(duì)階對(duì)階、尾數(shù)求和尾數(shù)求和、規(guī)格化規(guī)格化 三段三段分段原則分段原則 每段每段 操作時(shí)間操作時(shí)間 盡量盡量 一致一致鎖存器鎖存器對(duì)階功能部件對(duì)階功能部件第一段第一段尾數(shù)加部件尾數(shù)加部件鎖存器鎖存器第二段第二段規(guī)格化部件規(guī)格化部件鎖存器鎖存器第三段第三段一、概述一、概述1. 引起中斷的各種因素引起中斷的各種因素(1) 人為設(shè)置的中斷人為設(shè)置的中斷(2) 程序性事故程序性事故如如 轉(zhuǎn)管指令轉(zhuǎn)管指令溢出、操作碼不能識(shí)別、除法非法溢出、操作碼不
53、能識(shí)別、除法非法(5) 外部事件外部事件(4) I/O 設(shè)備設(shè)備(3) 硬件故障硬件故障用用 鍵盤中斷鍵盤中斷 現(xiàn)行程序現(xiàn)行程序轉(zhuǎn)管指令轉(zhuǎn)管指令管理程序管理程序2. 中斷系統(tǒng)需解決的問(wèn)題中斷系統(tǒng)需解決的問(wèn)題(1) 各中斷源各中斷源 如何如何 向向 CPU 提出請(qǐng)求提出請(qǐng)求 ?(2) 各中斷源各中斷源 同時(shí)同時(shí) 提出提出 請(qǐng)求請(qǐng)求 怎么辦怎么辦 ?(5) 如何如何 尋找入口地址尋找入口地址 ?(4) 如何如何 保護(hù)現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng) ?(3) CPU 什么什么 條件條件、什么、什么 時(shí)間時(shí)間、以什么以什么 方式方式 響應(yīng)中斷響應(yīng)中斷 ?(6) 如何如何 恢復(fù)現(xiàn)場(chǎng)恢復(fù)現(xiàn)場(chǎng),如何,如何 返回返回 ?(7)
54、 處理中斷的過(guò)程中又處理中斷的過(guò)程中又 出現(xiàn)新的中斷出現(xiàn)新的中斷 怎么辦怎么辦 ?硬件硬件 軟件軟件二、中斷請(qǐng)求標(biāo)記和中斷判優(yōu)邏輯二、中斷請(qǐng)求標(biāo)記和中斷判優(yōu)邏輯1. 中斷請(qǐng)求標(biāo)記中斷請(qǐng)求標(biāo)記 INTR一個(gè)請(qǐng)求源一個(gè)請(qǐng)求源 一個(gè)一個(gè) INTR 中斷請(qǐng)求標(biāo)記觸發(fā)器中斷請(qǐng)求標(biāo)記觸發(fā)器多個(gè)多個(gè)INTR 組成組成 中斷請(qǐng)求標(biāo)記寄存器中斷請(qǐng)求標(biāo)記寄存器INTR 分散分散 在各個(gè)中斷源的在各個(gè)中斷源的 接口電路中接口電路中INTR 集中集中 在在 CPU 的中斷系統(tǒng)的中斷系統(tǒng) 內(nèi)內(nèi)12345n掉電掉電過(guò)熱過(guò)熱階上溢階上溢主存讀寫校驗(yàn)錯(cuò)主存讀寫校驗(yàn)錯(cuò)非法除法非法除法鍵盤輸入鍵盤輸入打印機(jī)輸出打印機(jī)輸出2. 中
55、斷判優(yōu)邏輯中斷判優(yōu)邏輯 分散分散 在各個(gè)中斷源的在各個(gè)中斷源的 接口電路中接口電路中 鏈?zhǔn)脚抨?duì)器鏈?zhǔn)脚抨?duì)器 集中集中 在在 CPU 內(nèi)內(nèi)(1) 硬件實(shí)現(xiàn)(排隊(duì)器)硬件實(shí)現(xiàn)(排隊(duì)器) 1 1 1 & 1 & 1 &參見參見 第五章第五章INTR1INTR2INTR3INTR4INTR1 、 INTR2 、 INTR3 、 INTR4 優(yōu)先級(jí)優(yōu)先級(jí) 按按 降序降序 排列排列 INTP1INTP2INTP3INTP4A、B、C 優(yōu)先級(jí)按優(yōu)先級(jí)按 降序降序 排列排列(2) 軟件實(shí)現(xiàn)(程序查詢)軟件實(shí)現(xiàn)(程序查詢)否否是否是否 A 請(qǐng)求?請(qǐng)求?是否是否 B 請(qǐng)求?請(qǐng)求?是否是否 C 請(qǐng)求?請(qǐng)求?轉(zhuǎn)轉(zhuǎn) A
56、 的服務(wù)程序的服務(wù)程序入口地址入口地址轉(zhuǎn)轉(zhuǎn) B 的服務(wù)程序的服務(wù)程序入口地址入口地址轉(zhuǎn)轉(zhuǎn) C 的服務(wù)程序的服務(wù)程序入口地址入口地址是是是是是是否否否否三、中斷服務(wù)程序入口地址的尋找三、中斷服務(wù)程序入口地址的尋找1. 硬件向量法硬件向量法入口地址入口地址 200入口地址入口地址 300入口地址入口地址 40012 H13 H14 H主存主存12 H13 H14 HJMP 200JMP 300JMP 400主存主存向量地址向量地址形成部件形成部件中斷向量中斷向量排隊(duì)器輸出排隊(duì)器輸出向量地址向量地址 12H、13H、14H入口地址入口地址 200、 300、 4002. 軟件查詢法軟件查詢法 M J
57、MP 1# SR1# D = 1 轉(zhuǎn)轉(zhuǎn)1# 服務(wù)程序服務(wù)程序 SKP DZ 2# JMP 2# SR2# D = 0 跳跳2# D = 1 轉(zhuǎn)轉(zhuǎn)2# 服務(wù)程序服務(wù)程序 SKP DZ 8# JMP 8# SR8# D = 0 跳跳8# D = 1 轉(zhuǎn)轉(zhuǎn)8# 服務(wù)程序服務(wù)程序八個(gè)中斷源八個(gè)中斷源 1,2, 8 按按 降序降序 排列排列 SKP DZ 1#1# D = 0 跳跳(D為完成觸發(fā)器)為完成觸發(fā)器)中斷識(shí)別程序中斷識(shí)別程序(入口地址(入口地址 M)地地 址址說(shuō)說(shuō) 明明指指 令令四、中斷響應(yīng)四、中斷響應(yīng)1. 響應(yīng)中斷的響應(yīng)中斷的 條件條件允許中斷觸發(fā)器允許中斷觸發(fā)器 EINT = 12. 響
58、應(yīng)中斷的響應(yīng)中斷的 時(shí)間時(shí)間指令執(zhí)行周期結(jié)束時(shí)刻由指令執(zhí)行周期結(jié)束時(shí)刻由CPU 發(fā)查詢信號(hào)發(fā)查詢信號(hào) CPU中斷查詢中斷查詢INTR1DQINTR2DQINTRnDQ中斷源中斷源 1中斷源中斷源 2中斷源中斷源 n至排隊(duì)器至排隊(duì)器3. 中斷隱指令中斷隱指令(1) 保護(hù)程序斷點(diǎn)保護(hù)程序斷點(diǎn)(2) 尋找服務(wù)程序入口地址尋找服務(wù)程序入口地址(3) 硬件硬件 關(guān)中斷關(guān)中斷向量地址向量地址形成部件形成部件INTSQREINTSQRPC 1 &1排隊(duì)器排隊(duì)器斷點(diǎn)存于斷點(diǎn)存于 特定地址特定地址( 0 號(hào)地址)號(hào)地址) 內(nèi)內(nèi)斷點(diǎn)斷點(diǎn) 進(jìn)棧進(jìn)棧INT 中斷標(biāo)記中斷標(biāo)記EINT 允許中斷允許中斷R S 觸發(fā)器觸發(fā)器向量地址向量地址PC (硬件向量法)(硬件向量法)中斷識(shí)別程序中斷識(shí)別程序 入口地址入口地址MPC(軟件查詢法)(軟件查詢法)五、保護(hù)現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)五、保護(hù)現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)1. 保護(hù)現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng)2. 恢復(fù)現(xiàn)場(chǎng)恢復(fù)現(xiàn)場(chǎng)寄存器寄存器 內(nèi)容內(nèi)容斷點(diǎn)斷點(diǎn)保護(hù)現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng)其它服務(wù)程序其它服務(wù)程序恢復(fù)現(xiàn)場(chǎng)恢復(fù)現(xiàn)場(chǎng)中斷返回中斷返回PUSH視不同請(qǐng)求源而定視不同請(qǐng)求源而定POP中斷服務(wù)程序中斷服務(wù)程序 完成完成中中斷斷服服務(wù)務(wù)程程序序中斷隱指令中斷隱指令 完成完成中斷服務(wù)程序中斷服務(wù)程序 完
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年節(jié)能型空氣分離設(shè)備項(xiàng)目發(fā)展計(jì)劃
- 出售通達(dá)公寓合同范本
- 交通安全員聘用合同范例
- 鋼管防腐施工方案
- 會(huì)議廣告制作服務(wù)合同范例
- 加工覆膜合同范例
- 加盟合同范例300例
- 加盟店物料采購(gòu)合同范例
- 基于居民幸福感的老舊小區(qū)交通環(huán)境評(píng)價(jià)研究
- 兒買工程合同范例
- 教師命題培訓(xùn)
- 【地理】亞洲的自然環(huán)境第3課時(shí) 2024-2025學(xué)年七年級(jí)地理下冊(cè)同步課件(人教版2024)
- 2024年江蘇護(hù)理職業(yè)學(xué)院高職單招語(yǔ)文歷年參考題庫(kù)含答案解析
- 2025年春新冀教版英語(yǔ)三年級(jí)下冊(cè)課件 2L3
- 城市公園綠化養(yǎng)護(hù)協(xié)議
- 2025中智集團(tuán)總部及下屬企業(yè)公開招聘4人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024年租賃助聽器合同范本
- 小學(xué)生雪豹課件
- 基于深度強(qiáng)化學(xué)習(xí)的機(jī)械臂自主抓取算法
- 名企參考:比亞迪組織結(jié)構(gòu)及部門職責(zé)
評(píng)論
0/150
提交評(píng)論