計(jì)算機(jī)組成原理第八章_第1頁(yè)
計(jì)算機(jī)組成原理第八章_第2頁(yè)
計(jì)算機(jī)組成原理第八章_第3頁(yè)
計(jì)算機(jī)組成原理第八章_第4頁(yè)
計(jì)算機(jī)組成原理第八章_第5頁(yè)
已閱讀5頁(yè),還剩38頁(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、第八章第八章 CPU CPU的結(jié)構(gòu)和功能的結(jié)構(gòu)和功能8.1.1 CPU8.1.1 CPU的功能的功能 CPUCPU是計(jì)算機(jī)中是計(jì)算機(jī)中執(zhí)行程序執(zhí)行程序的部件。表現(xiàn)在四的部件。表現(xiàn)在四個(gè)個(gè)方面的功能,由不同部件完成。方面的功能,由不同部件完成。 1.1.順序控制順序控制:即對(duì)程序中指令的執(zhí)行順序加以控:即對(duì)程序中指令的執(zhí)行順序加以控制;制;2.2.操作控制操作控制:按照一條指令要完成的功能,向相:按照一條指令要完成的功能,向相應(yīng)部件發(fā)出操作控制信號(hào);應(yīng)部件發(fā)出操作控制信號(hào);3.3.時(shí)間控制時(shí)間控制:對(duì)各種操作執(zhí)行的時(shí)間進(jìn)行定時(shí);:對(duì)各種操作執(zhí)行的時(shí)間進(jìn)行定時(shí);4.4.數(shù)據(jù)加工數(shù)據(jù)加工:對(duì)數(shù)據(jù)進(jìn)行

2、算邏運(yùn)算和中斷處理;:對(duì)數(shù)據(jù)進(jìn)行算邏運(yùn)算和中斷處理;8.1 CPU8.1 CPU的結(jié)構(gòu)的結(jié)構(gòu)8.1.2 CPU8.1.2 CPU的結(jié)構(gòu)的結(jié)構(gòu)ALU 使用使用系統(tǒng)總線的系統(tǒng)總線的CPU結(jié)構(gòu)框圖結(jié)構(gòu)框圖寄存器寄存器中斷中斷系統(tǒng)系統(tǒng)控制控制單元單元 CPU控控制制總總線線數(shù)數(shù)據(jù)據(jù)總總線線地地址址總總線線系統(tǒng)總線系統(tǒng)總線8.1.3 CPU8.1.3 CPU中的主要寄存器中的主要寄存器用戶可見寄存器(可編程) 通用寄存器通用寄存器 數(shù)據(jù)數(shù)據(jù)寄存器寄存器 地址地址寄存器寄存器 累加寄存器(累加寄存器(ACC) 條件條件碼碼寄存器(寄存器(PSW)用戶不可見寄存器(不可編程)作用:控制CPU的操作或運(yùn)算,對(duì)

3、用戶透明。 存儲(chǔ)器地址寄存器存儲(chǔ)器地址寄存器MAR,存放將被訪問(wèn)的存儲(chǔ),存放將被訪問(wèn)的存儲(chǔ)單元的地址。單元的地址。 存儲(chǔ)器數(shù)據(jù)寄存器存儲(chǔ)器數(shù)據(jù)寄存器MDR,存放欲存入存儲(chǔ)器中,存放欲存入存儲(chǔ)器中的數(shù)據(jù)或最近從存儲(chǔ)器中讀出的數(shù)據(jù)。的數(shù)據(jù)或最近從存儲(chǔ)器中讀出的數(shù)據(jù)。 指令寄存器指令寄存器IR,存放當(dāng)前欲執(zhí)行的指令。,存放當(dāng)前欲執(zhí)行的指令。 程序計(jì)數(shù)器程序計(jì)數(shù)器PC,存放現(xiàn)行指令的地址,可自加,存放現(xiàn)行指令的地址,可自加一。一。8.1.4 指令的執(zhí)行過(guò)程取指令指令地址送入主存地址寄存器讀內(nèi)存,讀出內(nèi)容送入指令寄存器分析指令指令操作碼譯碼按指令規(guī)定內(nèi)容執(zhí)行指令不同指令的操作步驟數(shù),和具體操作內(nèi)容差異很

4、大檢查有無(wú)中斷請(qǐng)求若有,則轉(zhuǎn)中斷處理若無(wú),則轉(zhuǎn)入下一條指令的執(zhí)行過(guò)程形成下一條指令地址形成下一條指令地址8.2 8.2 指令周期指令周期 CPUCPU取出并執(zhí)行一條指令所需要的時(shí)間叫作取出并執(zhí)行一條指令所需要的時(shí)間叫作指令周期指令周期。指令周期又包含:指令周期又包含:取指令、分析指令和執(zhí)行指令取指令、分析指令和執(zhí)行指令三個(gè)階三個(gè)階段,其中分析指令時(shí)間很短,可以合并至取指令階段。段,其中分析指令時(shí)間很短,可以合并至取指令階段。取指階段取指階段執(zhí)行階段執(zhí)行階段取指周期取指周期執(zhí)行周期執(zhí)行周期指令周期指令周期 由于各種指令所完成的操作及尋址方式不同,故各種由于各種指令所完成的操作及尋址方式不同,故各

5、種指令的指令的指令周期是不等長(zhǎng)指令周期是不等長(zhǎng)的。例如:的。例如:取指周期取指周期取指周期取指周期執(zhí)行周期執(zhí)行周期取指周期取指周期間址周期間址周期執(zhí)行周期執(zhí)行周期取指周期取指周期執(zhí)行周期執(zhí)行周期JMP XADD XADD XMUL X指令周期指令周期指令周期指令周期指令周期指令周期指令周期指令周期 CPUCPU在每條指令執(zhí)行階段在每條指令執(zhí)行階段結(jié)束前結(jié)束前,都要發(fā)出,都要發(fā)出中斷查中斷查詢信號(hào)詢信號(hào),以檢查是否有,以檢查是否有中斷中斷請(qǐng)求。若有,則進(jìn)入中斷請(qǐng)求。若有,則進(jìn)入中斷周期,進(jìn)行中斷響應(yīng)。周期,進(jìn)行中斷響應(yīng)。否則否則,進(jìn)入下一條指令周期。,進(jìn)入下一條指令周期。取指周期取指周期有間址嗎

6、?有間址嗎?有中斷嗎?有中斷嗎?執(zhí)行周期執(zhí)行周期N間址周期間址周期Y中斷周期中斷周期YN8.2.1 指令周期流程圖 為了教學(xué)的目的,采用一個(gè)假想計(jì)算機(jī)模型,為了教學(xué)的目的,采用一個(gè)假想計(jì)算機(jī)模型,說(shuō)明各說(shuō)明各CPU周期中的數(shù)據(jù)流。周期中的數(shù)據(jù)流。 1. 取指令周期取指令周期8.2.2 指令周期數(shù)據(jù)流 MARCUMDRPCIR存儲(chǔ)器存儲(chǔ)器地地址址總總線線數(shù)數(shù)據(jù)據(jù)總總線線控控制制總總線線 CPU 取指令周期取指令周期 將當(dāng)前指令地址送存儲(chǔ)器地址寄存器將當(dāng)前指令地址送存儲(chǔ)器地址寄存器, ,記作記作 PCMAR; 向主存發(fā)讀命令,啟動(dòng)主存做讀操作,記作向主存發(fā)讀命令,啟動(dòng)主存做讀操作,記作 1 R;

7、將主存單元內(nèi)容經(jīng)數(shù)據(jù)總線讀至將主存單元內(nèi)容經(jīng)數(shù)據(jù)總線讀至MDRMDR內(nèi),記作內(nèi),記作M(MAR) MDR; 將將MDRMDR內(nèi)容送至內(nèi)容送至IRIR內(nèi),記作內(nèi),記作 MDR IR ; 將將IRIR中的指令送控制單元進(jìn)行指令分析,記作中的指令送控制單元進(jìn)行指令分析,記作 IR CU; 對(duì)對(duì)PCPC進(jìn)行修正,形成下一條指令的地址,記作進(jìn)行修正,形成下一條指令的地址,記作 (PC)+1 PC 。2. 間址周期間址周期 (以(以 ADD X 指令為例)指令為例) MARCUMDR存儲(chǔ)器存儲(chǔ)器地地址址總總線線數(shù)數(shù)據(jù)據(jù)總總線線控控制制總總線線 CPU 將指令的地址部分(形式地址)送存儲(chǔ)器地址寄存器將指令的

8、地址部分(形式地址)送存儲(chǔ)器地址寄存器, ,記記作作 Ad(IR)MAR; 向主存發(fā)讀命令,啟動(dòng)主存做讀操作,記作向主存發(fā)讀命令,啟動(dòng)主存做讀操作,記作 1 R; 將主存單元內(nèi)容經(jīng)數(shù)據(jù)總線讀至將主存單元內(nèi)容經(jīng)數(shù)據(jù)總線讀至MDRMDR內(nèi),記作內(nèi),記作M(MAR) MDR; 將有效地址送指令寄存器的地址碼字段,記作將有效地址送指令寄存器的地址碼字段,記作MDR Ad(IR) 。間址周期間址周期3. 執(zhí)行周期執(zhí)行周期(以(以 ADD X 指令為例)指令為例)MARCUMDR存儲(chǔ)器存儲(chǔ)器地地址址總總線線數(shù)數(shù)據(jù)據(jù)總總線線控控制制總總線線ACCALU CPU 將指令地址碼部分送存儲(chǔ)器地址寄存器,記作將指令

9、地址碼部分送存儲(chǔ)器地址寄存器,記作 Ad(IR)MAR; 向主存發(fā)讀命令,啟動(dòng)主存做讀操作,記作向主存發(fā)讀命令,啟動(dòng)主存做讀操作,記作 1 R; 將主存單元內(nèi)容經(jīng)數(shù)據(jù)總線讀至將主存單元內(nèi)容經(jīng)數(shù)據(jù)總線讀至MDRMDR內(nèi),記作內(nèi),記作 M(MAR) MDR; 給給ALU發(fā)發(fā)“加加”命令,將命令,將AC內(nèi)容和內(nèi)容和MDR內(nèi)容相內(nèi)容相加,結(jié)果送加,結(jié)果送AC,記作記作 (AC)+(MDR) AC。4. 中斷周期中斷周期 MARCUMDRPC存儲(chǔ)器存儲(chǔ)器地地址址總總線線數(shù)數(shù)據(jù)據(jù)總總線線控控制制總總線線CPU 中斷中斷系統(tǒng)系統(tǒng) 中斷周期中斷周期 將堆棧指示器內(nèi)容送存儲(chǔ)器地址寄存器將堆棧指示器內(nèi)容送存儲(chǔ)器地

10、址寄存器, ,記作記作 SPMAR; 向主存發(fā)寫命令,啟動(dòng)主存寫操作,記作向主存發(fā)寫命令,啟動(dòng)主存寫操作,記作1 W; 將將PCPC內(nèi)容送至內(nèi)容送至MDRMDR內(nèi),記作內(nèi),記作 PC MDR; 將將MDRMDR內(nèi)容寫入到內(nèi)容寫入到MARMAR所指內(nèi)存單元,記作所指內(nèi)存單元,記作 MDR M(MAR) 。 將向量地址形成部件的輸出送至將向量地址形成部件的輸出送至PCPC,記作,記作向量地址向量地址 PC ; 關(guān)中斷,即將中斷允許觸發(fā)器清關(guān)中斷,即將中斷允許觸發(fā)器清0 0, 記作記作 0 EINT 。8.3 指令流水 為提高處理器執(zhí)行指令的效率,把一條指令的操作分成為提高處理器執(zhí)行指令的效率,把一

11、條指令的操作分成多個(gè)細(xì)小的步驟,每個(gè)步驟由專門的電路完成。多個(gè)細(xì)小的步驟,每個(gè)步驟由專門的電路完成。 例如例如假設(shè)假設(shè)一條指令要執(zhí)行要經(jīng)過(guò)一條指令要執(zhí)行要經(jīng)過(guò)3個(gè)階段:取指令、譯個(gè)階段:取指令、譯碼碼和和執(zhí)行執(zhí)行階段,試比較采用流水和未采用流水所需的周期。階段,試比較采用流水和未采用流水所需的周期。1. 提高訪存速度提高訪存速度2. 提高提高 I/O 和主機(jī)之間的傳送速度和主機(jī)之間的傳送速度 提高整機(jī)處理能力提高整機(jī)處理能力高速芯片高速芯片CacheI/O 處理機(jī)處理機(jī)DMA多總線多總線通道通道高速器件高速器件改進(jìn)系統(tǒng)結(jié)構(gòu)改進(jìn)系統(tǒng)結(jié)構(gòu) ,開發(fā)系統(tǒng)的,開發(fā)系統(tǒng)的并行性并行性中斷中斷3. 提高運(yùn)算

12、器速度提高運(yùn)算器速度高速芯片高速芯片改進(jìn)算法改進(jìn)算法取指令取指令 3執(zhí)行指令執(zhí)行指令 32. 指令的二級(jí)流水指令的二級(jí)流水1. 指令的串行執(zhí)行指令的串行執(zhí)行指令預(yù)取指令預(yù)取若若 取指取指 和和 執(zhí)行執(zhí)行 階段時(shí)間上階段時(shí)間上 完全重疊完全重疊指令周期指令周期 減半減半 速度提高速度提高 1 倍倍取指令取指令 1執(zhí)行執(zhí)行指令指令 1 取取指令指令 2 執(zhí)行執(zhí)行指令指令 2 取取指令指令 3 執(zhí)行指令執(zhí)行指令 3取指令取指令 2執(zhí)行指令執(zhí)行指令 2取指令取指令 1執(zhí)行指令執(zhí)行指令 13. 指令的六級(jí)流水指令的六級(jí)流水完成完成 一一條指令需條指令需6 個(gè)時(shí)間單位個(gè)時(shí)間單位tCOFOEIWODIFIC

13、OFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFI指令指令 1指令指令 2指令指令 3指令指令 4指令指令 5指令指令 6指令指令 7指令指令 8指令指令 9 1 2 3 4 5 6 7 8 9 10 11 12 13 14試比較串行和流水執(zhí)行九條指令所需的時(shí)間。試比較串行和流水執(zhí)行九條指令所需的時(shí)間。8.4 中斷系統(tǒng) 當(dāng)前的計(jì)算機(jī)系統(tǒng)中,除了輸入當(dāng)前的計(jì)算機(jī)系統(tǒng)中,除了輸入/輸出外,還有很多事輸出外,還有很多事情都可以通過(guò)中斷的方式來(lái)處理。為此情都可以通

14、過(guò)中斷的方式來(lái)處理。為此CPU中設(shè)有專門的中中設(shè)有專門的中斷處理機(jī)構(gòu),即斷處理機(jī)構(gòu),即中斷系統(tǒng)中斷系統(tǒng),以解決各種中斷的共性問(wèn)題。,以解決各種中斷的共性問(wèn)題。 中斷源及其分類中斷源及其分類 把能引起中斷的事件或能夠發(fā)生中斷請(qǐng)求的來(lái)源稱為把能引起中斷的事件或能夠發(fā)生中斷請(qǐng)求的來(lái)源稱為中中斷源斷源??煞譃橐韵聨最悾???煞譃橐韵聨最悾?.4.1 中斷源分類中斷源分類 中斷源中斷源 內(nèi)部中斷:內(nèi)部中斷:CPU執(zhí)行程序引起的中斷。執(zhí)行程序引起的中斷。 外部中斷:外部中斷:系統(tǒng)中硬件引起的中斷。系統(tǒng)中硬件引起的中斷。 例如:軟中斷例如:軟中斷 程序性事故程序性事故 例如:例如:I/O設(shè)備設(shè)備 硬件故障硬件

15、故障8.4.2 中斷系統(tǒng)須解決的問(wèn)題中斷系統(tǒng)須解決的問(wèn)題1. 1. 各中斷源如何向各中斷源如何向CPUCPU提出中斷請(qǐng)求;提出中斷請(qǐng)求;2. 2. 多個(gè)中斷源同時(shí)提出請(qǐng)求時(shí),如何確定優(yōu)先順序;多個(gè)中斷源同時(shí)提出請(qǐng)求時(shí),如何確定優(yōu)先順序; 3. CPU3. CPU在什么條件、什么時(shí)候、以什么方式響應(yīng)中斷;在什么條件、什么時(shí)候、以什么方式響應(yīng)中斷;4. 4. 響應(yīng)中斷后,如何保護(hù)程序現(xiàn)場(chǎng)及斷點(diǎn);響應(yīng)中斷后,如何保護(hù)程序現(xiàn)場(chǎng)及斷點(diǎn);5. 5. 如何停止現(xiàn)行程序,轉(zhuǎn)到中斷服務(wù)程序的入口如何停止現(xiàn)行程序,轉(zhuǎn)到中斷服務(wù)程序的入口處;處; 6. 6. 中斷結(jié)束后,如何恢復(fù)程序現(xiàn)場(chǎng)及原程序的執(zhí)行;中斷結(jié)束后,

16、如何恢復(fù)程序現(xiàn)場(chǎng)及原程序的執(zhí)行; 7. 7. 在中斷處理過(guò)程中,若又出現(xiàn)了新的中斷請(qǐng)求,在中斷處理過(guò)程中,若又出現(xiàn)了新的中斷請(qǐng)求, CPUCPU如何處理。如何處理。8.4.3 中斷請(qǐng)求標(biāo)記和中斷判優(yōu)邏輯中斷請(qǐng)求標(biāo)記和中斷判優(yōu)邏輯1.1.中斷請(qǐng)求標(biāo)記中斷請(qǐng)求標(biāo)記 在中斷系統(tǒng)中,為每一個(gè)中斷源設(shè)置一個(gè)中斷在中斷系統(tǒng)中,為每一個(gè)中斷源設(shè)置一個(gè)中斷請(qǐng)求觸發(fā)器(請(qǐng)求觸發(fā)器(INTRINTR),用來(lái)記錄有無(wú)中斷請(qǐng)求。),用來(lái)記錄有無(wú)中斷請(qǐng)求。2.2.中斷判優(yōu)邏輯中斷判優(yōu)邏輯 由于由于CUPCUP一次只能執(zhí)行一個(gè)程序,當(dāng)多個(gè)中斷一次只能執(zhí)行一個(gè)程序,當(dāng)多個(gè)中斷源同時(shí)向源同時(shí)向CPUCPU提出中斷請(qǐng)求時(shí),提出

17、中斷請(qǐng)求時(shí),CPUCPU必須按中斷源必須按中斷源的優(yōu)先次序依次響應(yīng)。中斷判優(yōu)邏輯可以實(shí)現(xiàn)優(yōu)的優(yōu)先次序依次響應(yīng)。中斷判優(yōu)邏輯可以實(shí)現(xiàn)優(yōu)先級(jí)判別。先級(jí)判別。 8.4.4 中斷判優(yōu)邏輯中斷判優(yōu)邏輯 1. 1. 硬件排隊(duì) 有有串行排隊(duì)串行排隊(duì)判優(yōu)邏輯和判優(yōu)邏輯和并行排隊(duì)并行排隊(duì)判優(yōu)邏輯兩種。判優(yōu)邏輯兩種。串行排隊(duì)判優(yōu)邏輯串行排隊(duì)判優(yōu)邏輯略略。并行排隊(duì)判優(yōu)邏輯如下。并行排隊(duì)判優(yōu)邏輯如下圖圖:111& 1& 1& INTP1INTP2INTP3INTP4INTR1INTR2INTR3INTR4優(yōu)先級(jí)優(yōu)先級(jí) 高高 低低 2. 2. 軟件排隊(duì)軟件排隊(duì) 通過(guò)通過(guò)程序查詢程序查詢實(shí)現(xiàn)。實(shí)現(xiàn)

18、。A有請(qǐng)求嗎?有請(qǐng)求嗎?Y轉(zhuǎn)轉(zhuǎn)A的服務(wù)的服務(wù)程序入口程序入口Y轉(zhuǎn)轉(zhuǎn)B的服務(wù)的服務(wù)程序入口程序入口B有請(qǐng)求嗎?有請(qǐng)求嗎?NY轉(zhuǎn)轉(zhuǎn)C的服務(wù)的服務(wù)程序入口程序入口C有請(qǐng)求嗎?有請(qǐng)求嗎?NNY轉(zhuǎn)轉(zhuǎn)A的服務(wù)的服務(wù)程序入口程序入口Y轉(zhuǎn)轉(zhuǎn)B的服務(wù)的服務(wù)程序入口程序入口8.4.5 獲得中斷服務(wù)程序入口地址獲得中斷服務(wù)程序入口地址 1. 1. 硬件向量法 利用硬件產(chǎn)生利用硬件產(chǎn)生向量地址向量地址,再由向量地址找到中斷,再由向量地址找到中斷服務(wù)程序入口地址。服務(wù)程序入口地址。 實(shí)現(xiàn)時(shí)可以采取兩種辦法。一種通過(guò)無(wú)條件轉(zhuǎn)移實(shí)現(xiàn)時(shí)可以采取兩種辦法。一種通過(guò)無(wú)條件轉(zhuǎn)移命令,向量地址送入;另一種是在主存中留出命令,向量地址

19、送入;另一種是在主存中留出一段區(qū)域,用以存放一段區(qū)域,用以存放中斷向量表,如下圖中斷向量表,如下圖。向量地址向量地址形成部件形成部件 INTP1INTP2INTPn中斷向量地址中斷向量地址主存主存12H13H14H向量地址向量地址200300400中斷服務(wù)程序中斷服務(wù)程序入口地址入口地址或稱中斷向量或稱中斷向量 2. 2. 軟件查尋法軟件查尋法 對(duì)應(yīng)于軟件排隊(duì)判優(yōu)法。利用跳轉(zhuǎn)指令直接轉(zhuǎn)移對(duì)應(yīng)于軟件排隊(duì)判優(yōu)法。利用跳轉(zhuǎn)指令直接轉(zhuǎn)移至中斷服務(wù)程序入口處。至中斷服務(wù)程序入口處。1. 響應(yīng)中斷的條件中斷系統(tǒng)中設(shè)置了一個(gè)中斷允許觸發(fā)器(中斷系統(tǒng)中設(shè)置了一個(gè)中斷允許觸發(fā)器(EINT),它可通),它可通過(guò)開

20、、關(guān)中斷指令來(lái)置位和復(fù)位。當(dāng)過(guò)開、關(guān)中斷指令來(lái)置位和復(fù)位。當(dāng)EINT=1時(shí),表示開中斷,時(shí),表示開中斷,即即CPU允許響應(yīng)中斷請(qǐng)求;當(dāng)允許響應(yīng)中斷請(qǐng)求;當(dāng)EINT=0時(shí),表示關(guān)中斷,即時(shí),表示關(guān)中斷,即CPU不允許響應(yīng)中斷請(qǐng)求。所以,不允許響應(yīng)中斷請(qǐng)求。所以,CPU響應(yīng)中斷請(qǐng)求的必要條件響應(yīng)中斷請(qǐng)求的必要條件是:是:EINT=1,且有中斷請(qǐng)求(,且有中斷請(qǐng)求(INTRi=1)。)。8.4.6 中斷響應(yīng)中斷響應(yīng)2. 響應(yīng)中斷時(shí)間響應(yīng)中斷時(shí)間中斷請(qǐng)求是隨機(jī)產(chǎn)生的,但中斷請(qǐng)求是隨機(jī)產(chǎn)生的,但CPU只有在只有在指令執(zhí)行指令執(zhí)行周期末周期末,才能響應(yīng)中斷源的中斷請(qǐng)求。,才能響應(yīng)中斷源的中斷請(qǐng)求。通常,通

21、常,CPU在指令執(zhí)行周期結(jié)束時(shí)刻向所有中斷在指令執(zhí)行周期結(jié)束時(shí)刻向所有中斷源發(fā)出源發(fā)出中斷查詢信號(hào)中斷查詢信號(hào),獲知是否有中斷請(qǐng)求,繼而進(jìn),獲知是否有中斷請(qǐng)求,繼而進(jìn)入入中斷周期中斷周期。3. 中斷隱指令中斷隱指令在中斷周期內(nèi),在中斷周期內(nèi),CPU要自動(dòng)完成:要自動(dòng)完成: 保護(hù)程序保護(hù)程序斷點(diǎn)斷點(diǎn) 獲得中斷服務(wù)程序入口地址獲得中斷服務(wù)程序入口地址 關(guān)中斷關(guān)中斷的的操作,對(duì)于程序設(shè)計(jì)者來(lái)說(shuō),這些操作可以認(rèn)為由操作,對(duì)于程序設(shè)計(jì)者來(lái)說(shuō),這些操作可以認(rèn)為由一條隱含指令完成,稱為一條隱含指令完成,稱為中斷隱指令中斷隱指令。 為了在中斷處理后,現(xiàn)行程序能繼續(xù)執(zhí)行,在為了在中斷處理后,現(xiàn)行程序能繼續(xù)執(zhí)行,

22、在進(jìn)入中斷服務(wù)程序執(zhí)行之前,需要保護(hù)現(xiàn)行程序的進(jìn)入中斷服務(wù)程序執(zhí)行之前,需要保護(hù)現(xiàn)行程序的斷點(diǎn)和斷點(diǎn)和CPU內(nèi)寄存器的值,稱作內(nèi)寄存器的值,稱作保護(hù)現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng)。 中斷返回之前,必須恢復(fù)寄存器的值,也是在中斷中斷返回之前,必須恢復(fù)寄存器的值,也是在中斷服務(wù)程序內(nèi)完成。服務(wù)程序內(nèi)完成。8.4.7 保護(hù)現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)8.4.8 中斷屏蔽技術(shù)中斷屏蔽技術(shù)多重中斷的概念例行程序例行程序A中斷源中斷源請(qǐng)求請(qǐng)求A服務(wù)程序服務(wù)程序B中斷源中斷源請(qǐng)求請(qǐng)求B服務(wù)程序服務(wù)程序單重中斷過(guò)程示意單重中斷過(guò)程示意A中斷源中斷源請(qǐng)求請(qǐng)求B中斷源中斷源請(qǐng)求請(qǐng)求C中斷源中斷源請(qǐng)求請(qǐng)求例行程序例行程序A服務(wù)服

23、務(wù)程序程序B服務(wù)服務(wù)程序程序C服務(wù)服務(wù)程序程序多重中斷過(guò)程示意多重中斷過(guò)程示意2.2.實(shí)現(xiàn)多重中斷的條件 開中斷 在中斷周期中,由隱指令自動(dòng)置在中斷周期中,由隱指令自動(dòng)置EINT=0EINT=0,即關(guān)中,即關(guān)中斷。為了在中斷服務(wù)程序中能再次響應(yīng)中斷,必須在斷。為了在中斷服務(wù)程序中能再次響應(yīng)中斷,必須在服務(wù)程序中開中斷。服務(wù)程序中開中斷。 多重中斷一般嵌套規(guī)則多重中斷一般嵌套規(guī)則 優(yōu)先級(jí)高的中斷源可以中斷優(yōu)先級(jí)低的中斷源;優(yōu)先級(jí)高的中斷源可以中斷優(yōu)先級(jí)低的中斷源; 同級(jí)中斷源不能中斷同級(jí)中斷;同級(jí)中斷源不能中斷同級(jí)中斷; 優(yōu)先級(jí)低的中斷源不能中斷優(yōu)先級(jí)高的中斷源。優(yōu)先級(jí)低的中斷源不能中斷優(yōu)先級(jí)高的中斷源。3. 3. 屏蔽技術(shù) 屏蔽觸發(fā)器和屏蔽字 在中斷系統(tǒng)中,為每個(gè)在中斷系統(tǒng)中,為每個(gè)可屏蔽中斷源可屏蔽中斷源設(shè)置一個(gè)屏蔽觸發(fā)設(shè)置一個(gè)屏蔽觸發(fā)器(器(MASKMASKi i,即一個(gè)標(biāo)志位),即一個(gè)標(biāo)志位), 當(dāng)當(dāng)MASKMASKi i=1=1時(shí),對(duì)應(yīng)中斷源時(shí),對(duì)應(yīng)中斷源被被屏蔽屏蔽,CPUCPU不能得到此

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論