版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、本章討論:,輸入/輸出系統(tǒng),接口的基本概念,DMA方式及其接口組成,總線的基本概念,中斷方式及其接口組成,為什么需要I/O接口(電路)? 外部設(shè)備多種多樣 工作原理、驅(qū)動(dòng)方式、信息格式、以及工作速度方面彼此差別很大 它們不能與CPU直接相連 必須經(jīng)過中間電路再與系統(tǒng)相連 這部分電路被稱為I/O接口電路,輸入輸出接口概述,什么是I/O接口(電路)? I/O接口是位于系統(tǒng)與外設(shè)間、用來協(xié)助完成數(shù)據(jù)傳送和控制任務(wù)的邏輯電路 PC機(jī)系統(tǒng)板的可編程接口芯片、I/O總線槽的電路板(適配器)都是接口電路,接口主要功能,接收CPU送來的地址碼,選擇接口中的寄存器供CPU訪問。,1.尋址,2.數(shù)據(jù)緩沖,實(shí)現(xiàn)主機(jī)
2、與外設(shè)的速度匹配。緩沖深度與傳送的數(shù)據(jù)量有關(guān)。,串-并格式轉(zhuǎn)換(串口),3.預(yù)處理,傳送控制命令與狀態(tài)信息,實(shí)現(xiàn)I/O傳送控制方式。,數(shù)據(jù)通路寬度轉(zhuǎn)換(并口),電平轉(zhuǎn)換,4.控制功能,主機(jī)與外部設(shè)備的連接方式大致可分為三類。,1) 輻射型(星型)連接 特點(diǎn):各設(shè)備通路獨(dú)立,具有較高的信息流量,且控制簡單。結(jié)構(gòu)復(fù)雜,連接線多,系統(tǒng)擴(kuò)展不方便,靈活性差。 2) 總線型連接 特點(diǎn):成本低,結(jié)構(gòu)簡單,易于擴(kuò)展。只有一組總線時(shí),信息交換速度較低,且總線控制邏輯較復(fù)雜。 3) 通道控制方式 特點(diǎn):主機(jī)與通道間是輻射型連接,通道與外設(shè)之間采用總線連接,既具有較高的信息交換速度,又有良好的可擴(kuò)展性。但成本較高
3、。,I/O接口電路的基本結(jié)構(gòu),從編程角度看,接口內(nèi)部主要包括一個(gè)或多個(gè) CPU可以進(jìn)行讀/寫操作的寄存器,又稱為I/O端口。 各I/O端口由端口地址區(qū)分。,接口電路的內(nèi)部結(jié)構(gòu),CPU與外設(shè)主要有數(shù)據(jù)、狀態(tài)和控制信息需要相互交換,于是從應(yīng)用角度看內(nèi)部: 數(shù)據(jù)寄存器 保存外設(shè)給CPU和CPU發(fā)往外設(shè)的數(shù)據(jù) 狀態(tài)寄存器 保存外設(shè)或接口電路的狀態(tài) 控制寄存器 保存CPU給外設(shè)或接口電路的命令,接口電路的外部特性,面向CPU一側(cè)的信號(hào): 用于與CPU連接 主要是數(shù)據(jù)、地址和控制信號(hào) 面向外設(shè)一側(cè)的信號(hào): 用于與外設(shè)連接 提供的信號(hào)五花八門 功能定義、時(shí)序及有效電平等差異較大,接口芯片的分類,接口電路核心
4、部分往往是一塊或數(shù)塊大規(guī)模集成電路芯片(接口芯片): 通用接口芯片 支持通用的數(shù)據(jù)輸入輸出和控制的接口芯片 面向外設(shè)的專用接口芯片 針對(duì)某種外設(shè)設(shè)計(jì)、與該種外設(shè)接口 面向系統(tǒng)的專用接口芯片 與CPU和系統(tǒng)配套使用,以增強(qiáng)其總體功能,接口電路的可編程性,許多接口電路具有多種功能和工作方式,可以通過編程的方法選定其中一種 接口需要進(jìn)行物理連接,還需要編寫接口軟件 接口軟件有兩類: 初始化程序段設(shè)定芯片工作方式等 數(shù)據(jù)交換程序段管理、控制、驅(qū)動(dòng)外設(shè),負(fù)責(zé)外設(shè)和系統(tǒng)間信息交換,1數(shù)據(jù)信息流 數(shù)據(jù)輸入信息流經(jīng)傳送線送入接口中的輸入端口(輸入寄存器),然后通過數(shù)據(jù)總線送入主機(jī); 數(shù)據(jù)輸出信息流經(jīng)數(shù)據(jù)總線送
5、入接口中的輸出端口(輸出寄存器),然后通過傳送線送入輸出設(shè)備并以某種形式輸出。 2控制信息流 由主機(jī)通過數(shù)據(jù)總線送入接口中的控制端口(控制寄存器)。,輸入/輸出接口的信息流,3狀態(tài)信息流 由狀態(tài)口通過數(shù)據(jù)總線送入主機(jī)。 4聯(lián)絡(luò)信息流 在主機(jī)與接口之間,通過控制總線可做單向或雙向流動(dòng)。 5外設(shè)識(shí)別信息流 通常由主機(jī)通過地址總線送入接口中的識(shí)別線路。,端口(PORT),端口即I/O地址,是呈現(xiàn)給程序員的外設(shè) I/O端口通常以其地址為標(biāo)識(shí),1個(gè)端口一般對(duì)應(yīng)1個(gè)可以被用戶訪問的寄存器 數(shù)據(jù)寄存器保存數(shù)據(jù)(芯片中可能含多個(gè)) 控制寄存器保存控制信息(芯片中可能含多個(gè)) 狀態(tài)寄存器保存狀態(tài)信息(芯片中可能
6、含多個(gè)) 1個(gè)接口電路可以具有多個(gè)I/O端口,每個(gè)端口保存不同的信息(用以與CPU或外設(shè)進(jìn)行信息交換) 輸入端口和輸出端口可以使用同一個(gè)I/O地址,(a)統(tǒng)一編址 這種編址的出發(fā)點(diǎn)是把接口中的每一個(gè)端口視為一個(gè)存儲(chǔ)器單元,并賦以相應(yīng)的存儲(chǔ)器地址。訪存指令同樣適合于I/O端口。 優(yōu)缺點(diǎn): 無需專門的I/O指令,簡化了指令系統(tǒng);但要占用原本就有限的一部分存儲(chǔ)空間。,外設(shè)的編址方式,(b)單獨(dú)編址方式 這種編址的出發(fā)點(diǎn)是把所有外設(shè)的端口看作是一個(gè)獨(dú)立于存儲(chǔ)器空間的I/O空間。在這個(gè)I/O空間內(nèi),每一端口都被分配給一個(gè)地址與之對(duì)應(yīng)。 優(yōu)缺點(diǎn):指令系統(tǒng)中必須設(shè)有專門的輸入/輸出指令;但不占用存儲(chǔ)空間。,
7、端口地址譯碼的方法有多種,可以靈活的進(jìn)行設(shè)計(jì)。 (1)用門電路進(jìn)行口地址譯碼 (2)用譯碼器進(jìn)行口地址譯碼 (3) 用比較器進(jìn)行口地址譯碼,外設(shè)的識(shí)別,I/O地址的譯碼,I/O地址的譯碼方法與存儲(chǔ)器地址的譯碼方法一樣,但有它的特點(diǎn): 每個(gè)接口電路通常占用少數(shù)幾個(gè)I/O地址。 I/O地址不象內(nèi)存地址,不那么強(qiáng)調(diào)地址的連續(xù)性。 部分譯碼時(shí),可能中間地址線不連接,也有最低地址線不連接的情況。 常采用門電路進(jìn)行地址譯碼或線選譯碼,除采用譯碼器、門電路進(jìn)行譯碼外,I/O地址譯碼還經(jīng)常采用可編程邏輯器件PLD。 為了給系統(tǒng)一定的選擇余地,有些接口電路采用數(shù)字比較器、開關(guān)或跳線器等進(jìn)行可選擇的地址譯碼,IB
8、M PC/AT主機(jī)板的I/O譯碼電路,接口芯片內(nèi)部譯碼,A0A4,DMA控制器1 中斷控制器1 定時(shí)計(jì)數(shù)器 并行接口電路 DMA頁面寄存器 中斷控制器2 DMA控制器2 協(xié)處理器,A5 A6 A7 A8 A9,ALS138譯碼器,HLDA MASTER,Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7,主機(jī)與外設(shè)的信息交換方式,經(jīng)歷了由低級(jí)到高級(jí),由簡單到復(fù)雜,由集中控制到分散控制的發(fā)展過程,按其發(fā)展的先后和主機(jī)與外設(shè)并行工作的程度,通常有以下四種方式: 1. 程序查詢方式 2. 程序中斷方式 3. DMA方式 4. 通道方式,主機(jī)與外設(shè)的信息交換方式,接口分類,1.按數(shù)據(jù)傳送格式劃分,(1)并
9、行接口,接口與系統(tǒng)總線、接口與外設(shè)均按并行方式傳送數(shù)據(jù)。,并,并,數(shù)據(jù)各位同時(shí)傳送。,(2)串行接口,適用于設(shè)備本身并行工作,距主機(jī)較近的場(chǎng)合。,并,串,接口與系統(tǒng)總線并行傳送,接口與外設(shè)串行傳送。,數(shù)據(jù)逐位分時(shí)傳送。,適用于設(shè)備本身串行工作,或距主機(jī)較遠(yuǎn),或需減少傳送線的情況。,2.按時(shí)序控制方式劃分,(1)同步接口,接口與系統(tǒng)總線的信息傳送由統(tǒng)一時(shí)序信號(hào)控制。,(2)異步接口,接口與系統(tǒng)總線的信息傳送采用異步應(yīng)答方式。,3.按I/O傳送控制方式劃分,(1)程序查詢方式 特點(diǎn):控制簡單,硬件開銷?。籆PU與外設(shè)是串行工作的,系統(tǒng)效率低。 適用場(chǎng)合:CPU不太忙且傳送速度要求不太高的情況。,(
10、2)程序中斷方式 特點(diǎn):CPU和外設(shè)可并行工作,提高了CPU的效率,不僅適用于主機(jī)和外設(shè)的數(shù)據(jù)處理,特別適用于對(duì)外界隨機(jī)事件的處理,不適合于批量數(shù)據(jù)的高速傳送。 適用場(chǎng)合:適用與CPU較忙,傳送速度不太高的系統(tǒng)中,尤其適合實(shí)時(shí)控制及緊急事件的處理。,(3)DMA方式 完全由硬件完成信息交換,信息傳遞從以CPU為中心,轉(zhuǎn)為以內(nèi)存為中心, DMA控制器來實(shí)現(xiàn)內(nèi)存和外設(shè)之間的信息交換,保證了CPU的高效率,對(duì)高速大批量數(shù)據(jù)傳送特別有用。 缺點(diǎn):只能進(jìn)行簡單數(shù)據(jù)交換,電路結(jié)構(gòu)復(fù)雜,硬件開銷大。,(4)通道方式 主機(jī)、外設(shè)和通道間具有很強(qiáng)的并行工作能力,大大減輕了CPU的負(fù)擔(dān),顯著提高了系統(tǒng)的運(yùn)行效率。
11、 也是一種直接存取傳輸控制,但比一般的DMA控制器要強(qiáng)得多。,總線,1.定義:,一組能為多個(gè)部件分時(shí)共享的信息傳送線路。,2.特點(diǎn):,分時(shí)、共享。,通常作法:發(fā)送部件通過OC組件或三態(tài)門分時(shí)發(fā)送信息,由打入脈沖將信息送入指定接收部件。,3.實(shí)體:,一組傳送線與相應(yīng)控制邏輯,CPU內(nèi)設(shè)置控制邏輯,設(shè)置總線控制器,總線分類,1.按功能劃分,(1)CPU內(nèi)總線,CPU芯片內(nèi)寄存器與算邏部件之間互連的總線。(ALU總線),單組數(shù)據(jù)線(單向、雙向)或多組數(shù)據(jù)線,或多種總線。,(2)部件內(nèi)總線,插件板內(nèi)各芯片之間互連的總線。,(局部總線、片級(jí)總線),分為地址、數(shù)據(jù)、控制線。,(3)系統(tǒng)總線,計(jì)算機(jī)系統(tǒng)內(nèi)各
12、功能部件之間,或各插件板之間互連的總線。,(板級(jí)總線),分為地址、數(shù)據(jù)、控制線。,(4)外總線,計(jì)算機(jī)系統(tǒng)之間,或計(jì)算機(jī)系統(tǒng)與其他系統(tǒng)之間互連的總線。,(通信總線),分為數(shù)據(jù)線(與地址復(fù)用)、控制線。,2.按時(shí)序控制方式劃分,(1)同步總線,由統(tǒng)一時(shí)序控制總線傳送操作。,時(shí)鐘周期、同步脈沖,在固定時(shí)鐘周期內(nèi)完成數(shù)據(jù)傳送,由同步脈沖定時(shí)打入。,例.,打入地址,打入數(shù)據(jù),總線請(qǐng)求,(2)異步總線,無固定時(shí)鐘周期劃分,總線周期時(shí)間由傳送實(shí)際需要決定;以異步應(yīng)答方式控制總線傳送操作。,例.,總線批準(zhǔn),主同步,從同步,總線周期,總線傳送,(時(shí)間可變),(時(shí)間可變),總線權(quán)切換,(3)擴(kuò)展同步總線,以時(shí)鐘
13、周期為時(shí)序基礎(chǔ),允許總線周期中的時(shí)鐘數(shù)可變。,注意幾個(gè)“周期”概念:,時(shí)鐘周期:,CPU一步操作(一次內(nèi)部數(shù)據(jù)通路傳送)時(shí)間。,總線周期:,經(jīng)過總線的一次數(shù)據(jù)傳送(訪存)時(shí)間。,通常包含若干時(shí)鐘周期。,工作周期:,指令周期中的一個(gè)操作階段。,可包含多個(gè)總線周期。,(模型機(jī)的一個(gè)總線周期只包含一個(gè)時(shí)鐘周期。),3.按數(shù)據(jù)傳送格式劃分,(1)并行總線:,同時(shí)傳送各位信息。,(2)串行總線:,分時(shí)逐位傳送各位信息。,CPU內(nèi)總線:同步、并行,系統(tǒng)總線:同步、異步、擴(kuò)展同步、并行,外總線:異步、并行、串行,對(duì)總線信號(hào)組成、信號(hào)引腳含義、信號(hào)電平等作統(tǒng)一規(guī)定。,便于靈活組成系統(tǒng)。,電源、地址、數(shù)據(jù)、控制
14、,時(shí)序:時(shí)鐘、定時(shí)、應(yīng)答,總線標(biāo)準(zhǔn),為何制定總線標(biāo)準(zhǔn),系統(tǒng)總線信號(hào)組成,數(shù)傳控制:M讀/寫、IO讀/寫,中斷請(qǐng)求、響應(yīng),總線請(qǐng)求、響應(yīng),復(fù)位,程序查詢傳送方式,“就緒(Ready)”的含義,在輸入場(chǎng)合: “就緒” 說明輸入接口已準(zhǔn)備好送往CPU的數(shù)據(jù),正等著CPU來讀取 該狀態(tài)也可用接口中數(shù)據(jù)緩沖器已“滿”來描述 在輸出場(chǎng)合: “就緒” 說明輸出接口已做好準(zhǔn)備,等待接收CPU要輸出的數(shù)據(jù) 該狀態(tài)也可用接口數(shù)據(jù)緩沖器已 “空”、或者用接口(外設(shè))“閑” 或 “不忙” 來描述,程序查詢傳送方式,CPU先了解(查詢)外設(shè)的工作狀態(tài),在外設(shè)就緒(可以交換信息的情況下)實(shí)現(xiàn)數(shù)據(jù)的輸入或輸出 對(duì)多個(gè)外設(shè)的
15、情況,則CPU按一定順序依次查詢(輪詢)。先查詢的外設(shè)將優(yōu)先進(jìn)行數(shù)據(jù)交換 查詢傳送的特點(diǎn)是:工作可靠,適用面寬,但傳送效率低,(1)預(yù)置參數(shù):設(shè)定數(shù)據(jù)傳送長度;設(shè)置數(shù)據(jù)緩沖區(qū)首地址; (2)向外設(shè)發(fā)出命令,啟動(dòng)外設(shè)開始工作,并請(qǐng)求進(jìn)行數(shù)據(jù)交換; (3)從外設(shè)讀取反映外設(shè)當(dāng)前工作進(jìn)程的狀態(tài)字; (4)檢查狀態(tài)字中的標(biāo)志,看外設(shè)能否進(jìn)行數(shù)據(jù)交換; (5)如果外設(shè)沒有準(zhǔn)備就緒,則重復(fù)上述(3)和(4),一直到這個(gè)外設(shè)準(zhǔn)備就緒,發(fā)出準(zhǔn)備就緒信號(hào)為止; (6)CPU從外設(shè)輸入數(shù)據(jù),或?qū)?shù)據(jù)輸出給外設(shè),完成數(shù)據(jù)交換;同時(shí),CPU將狀態(tài)字中的外設(shè)就緒狀態(tài)信號(hào)標(biāo)志清除。,程序查詢工作過程,1、 外設(shè)狀態(tài)寄存器
16、 2、 數(shù)據(jù)緩沖寄存器 3、 地址譯碼器 4、 控制邏輯,查詢接口電路,程序中斷方式,當(dāng)計(jì)算機(jī)執(zhí)行正常程序時(shí),系統(tǒng)中出現(xiàn)某些異常情況或特殊請(qǐng)求,這些情況和請(qǐng)求可能來自計(jì)算機(jī)內(nèi)部,也可能來自計(jì)算機(jī)外部;一旦有上述事件發(fā)生,計(jì)算機(jī)執(zhí)行正常程序的狀態(tài)被中斷,就是說,CPU要暫停它正在執(zhí)行的程序,而轉(zhuǎn)去處理所發(fā)生的事件(通常就是執(zhí)行一段特殊程序,被稱為中斷服務(wù)程序);CPU處理完畢后,自動(dòng)返回到原來被中斷了的程序繼續(xù)運(yùn)行。,概念,(1)類似:正常程序: 主程序 中斷服務(wù)程序: 子程序 (2)區(qū)別: (A)子程序的執(zhí)行是程序員事先安排好的; 中斷服務(wù)程序的執(zhí)行則是由隨機(jī)的中斷事件引起的,比如電源掉電、請(qǐng)
17、求I/O數(shù)據(jù)傳送、現(xiàn)場(chǎng)報(bào)警等。,與子程序調(diào)用的比較,(B)子程序的執(zhí)行往往與主程序有關(guān); 中斷服務(wù)程序可能與被中斷的程序毫無關(guān)系。 (C)有可能出現(xiàn)多個(gè)中斷事件同時(shí)請(qǐng)求的情況,此時(shí),主機(jī)就需要進(jìn)行判優(yōu),進(jìn)而決定為哪一個(gè)請(qǐng)求服務(wù)。 子程序不存在此種情況。,與子程序調(diào)用的比較,1、主機(jī)與外部設(shè)備并行工作 2、實(shí)現(xiàn)實(shí)時(shí)處理 3、硬件故障處理 4、實(shí)現(xiàn)多道程序和分時(shí)操作,中斷的作用,查詢:,程序,并行操作,主機(jī),外設(shè),空閑,啟動(dòng),等待,工作,程序,交換數(shù)據(jù),中斷:,主機(jī),程序,外設(shè),空閑,啟動(dòng),工作,程序,請(qǐng)求,中斷程序,交換數(shù)據(jù),程序,(1) 概念:能夠引起CPU中斷的原因就是中斷源。中斷源是指形成
18、這個(gè)原因的設(shè)備、部件或條件。 (2) 種類: 輸入輸出設(shè)備。系統(tǒng)中的外部設(shè)備都可以設(shè)計(jì)成為以中斷方式與主機(jī)進(jìn)行數(shù)據(jù)的交換,從而作為系統(tǒng)的中斷源。 故障與錯(cuò)誤。系統(tǒng)運(yùn)行中會(huì)出現(xiàn)諸如電源掉電、運(yùn)算出錯(cuò)、非法指令等問題,它們也常采用中斷方式請(qǐng)求CPU立即處理。,中斷源, 實(shí)時(shí)時(shí)鐘。系統(tǒng)中的時(shí)鐘定時(shí)電路是必不可少的,若定時(shí)時(shí)間到,時(shí)鐘電路就可以通過中斷告知主機(jī)。 程序調(diào)試和軟件中斷。程序調(diào)試中常常采用設(shè)置中斷斷點(diǎn)的方法來觀察程序運(yùn)行是否正確;有些機(jī)器的指令系統(tǒng)設(shè)計(jì)有軟件中斷指令,利用中斷機(jī)制實(shí)現(xiàn)操作系統(tǒng)的功能調(diào)用以及調(diào)試程序。需要說明一點(diǎn),這類中斷是由程序員事先安排好的,和調(diào)用子程序的作用一樣,與上述
19、由外部硬件產(chǎn)生的中斷有些不同。,中斷源,(1)按中斷源是在主機(jī)之內(nèi)還是外分: (A)內(nèi)部中斷 內(nèi)部中斷是指中斷源來自主機(jī)內(nèi)部,如運(yùn)算出錯(cuò)、程序調(diào)試和軟件中斷等; (B)外部中斷 外部中斷來自主機(jī)之外,如外部設(shè)備、實(shí)時(shí)時(shí)鐘和硬件故障產(chǎn)生的中斷等。,中斷的分類,(2)按中斷對(duì)CPU的打擾情況分: (A)程序中斷 CPU要用專門的中斷服務(wù)程序?yàn)橹袛嘣捶?wù),并且在服務(wù)前要進(jìn)行斷點(diǎn)和現(xiàn)場(chǎng)的保護(hù),在服務(wù)后要進(jìn)行現(xiàn)場(chǎng)和斷點(diǎn)恢復(fù)的中斷。這種中斷就是一般所說的中斷,是大多數(shù)中低速外設(shè)以及內(nèi)中斷常用的中斷方式。,中斷的分類,(B)簡單中斷 當(dāng)這種中斷發(fā)生時(shí),相應(yīng)的請(qǐng)求源只是請(qǐng)求CPU的正常程序暫停一下,通常稱為總
20、線請(qǐng)求或DMA請(qǐng)求。暫停的目的是把主存和接口的數(shù)據(jù)通路讓給請(qǐng)求源使用(即總線使用權(quán)),使得能在主存和請(qǐng)求源之間直接進(jìn)行一次數(shù)據(jù)傳送,當(dāng)這次傳送結(jié)束后,請(qǐng)求源立即把這個(gè)使用權(quán)歸還給CPU。接著運(yùn)行剛才暫停的程序,這個(gè)暫停時(shí)間通常一次一個(gè)存取周期。,中斷的分類,(3)按尋找中斷服務(wù)程序入口的實(shí)現(xiàn)方法區(qū)分: (A)向量中斷(矢量中斷):中斷服務(wù)程序入口由中斷源自己提供。 (B)非向量中斷:入口由CPU查詢得到。,中斷的分類,中斷的工作過程分為六個(gè)階段: 1、中斷請(qǐng)求 2、中斷判優(yōu) 3、中斷響應(yīng) 4、中斷識(shí)別 5、中斷服務(wù) 6、中斷返回,中斷工作過程,(1)中斷請(qǐng)求是中斷源向CPU發(fā)出中斷請(qǐng)求信號(hào),要
21、求CPU為它服務(wù)的過程。 (2)何時(shí)?基本條件兩個(gè): (A)外設(shè)本身工作已經(jīng)完成 (B)外設(shè)被允許中斷,1、中斷請(qǐng)求,(3)硬件支持: 中斷請(qǐng)求電路,基本組成是兩個(gè)觸發(fā)器: (A)一個(gè)反映外設(shè)工作是否完成,其形成與程序查詢的準(zhǔn)備就緒狀態(tài)標(biāo)志一樣; (B)另一個(gè)反映外設(shè)是否允許采用中斷方式,即中斷屏蔽功能。只有當(dāng)外設(shè)工作完成而且被允許中斷時(shí),相應(yīng)中斷源才可以通過這個(gè)請(qǐng)求電路形成中斷請(qǐng)求信號(hào)。,(1)中斷優(yōu)先級(jí)有兩個(gè)方面的含義: (A) 一是中斷請(qǐng)求與CPU現(xiàn)行程序優(yōu)先級(jí)的問題; (B) 另一含義是各中斷源之間,誰更迫切的問題。,2、中斷判優(yōu),(2)方法: (A)軟件 (B)硬件:為了得到較高的效
22、率,一般采用硬件判優(yōu)方法。判優(yōu)邏輯隨著判優(yōu)方案的不同可有不同的結(jié)構(gòu),其組成部分既可能在設(shè)備接口之中,也可能在CPU內(nèi)部,也可能這兩部分都有。其作用是決定CPU的響應(yīng)并且找出最高優(yōu)先請(qǐng)求者,如果確定接收這個(gè)請(qǐng)求的話,就由CPU發(fā)出中斷響應(yīng)信號(hào)INTA (C) 軟硬件結(jié)合。,(1)CPU響應(yīng)最高優(yōu)先級(jí)的中斷請(qǐng)求,并且在適當(dāng)時(shí)會(huì)向中斷源提供一個(gè)應(yīng)答的響應(yīng)信號(hào),表明主機(jī)承認(rèn)了它的請(qǐng)求,這就是中斷響應(yīng)。在采用硬件向量中斷的方式中,通常,CPU還要利用它告知中斷接口電路向CPU提供一個(gè)中斷向量。,3、中斷響應(yīng),(2)響應(yīng)條件: (A) 一條指令執(zhí)行結(jié)束時(shí)刻 (B) 中斷允許: (a) 可屏蔽中斷(Mask
23、able Interrupt):計(jì)算機(jī)中斷系統(tǒng)對(duì)一般外設(shè)的中斷請(qǐng)求就采用受中斷標(biāo)志位控制的方法; (b) 非屏蔽中斷(Non-Maskable Interrupt):而對(duì)必須立刻響應(yīng)的中斷請(qǐng)求,如電源掉電、機(jī)器故障等,則采用不受中斷標(biāo)志位控制。,(3)中斷屏蔽與中斷允許 概念:對(duì)中斷的允許或禁止的控制。 軟硬結(jié)合和內(nèi)外結(jié)合的方法。不同的計(jì)算機(jī)可能在具體措施上有差異,但基本的思想是相同的。 (A)中斷屏蔽: 外部中斷請(qǐng)求電路設(shè)置中斷屏蔽觸發(fā)器控制某一個(gè)中斷源能否產(chǎn)生中斷請(qǐng)求信號(hào)。 一般計(jì)算機(jī)中都有實(shí)現(xiàn)中斷屏蔽的指令和相應(yīng)的硬件電路。,在外部中斷源的接口,一般都設(shè)立中斷屏蔽觸發(fā)器,通常這個(gè)觸發(fā)器的
24、狀態(tài)可由CPU用指令改變。例如當(dāng)這個(gè)觸發(fā)器為“1”時(shí),表示不允許該中斷源發(fā)出中斷請(qǐng)求,否則為允許。 IBMPC,8259可編程中斷控制器,有中斷屏蔽寄存器,8259可接收來自外設(shè)的8個(gè)各自獨(dú)立的中斷請(qǐng)求,信號(hào)分別為IRQ0IRQ7,IRQ0優(yōu)先級(jí)最高,中斷源07對(duì)應(yīng)于中斷類型號(hào)08H0FH,(其中IRQ3和IRQ5未用)。,8259A的內(nèi)部結(jié)構(gòu),D7D0,-INTA,INT,中斷請(qǐng)求寄存器,中斷屏蔽寄存器,數(shù)據(jù) 總線 緩沖器,IR0,IR7,讀/寫 控制 邏輯,級(jí)聯(lián) 緩沖器 比較器,-RD,-WR,A0,-CS,CAS0,CSA1,CAS2,-SP/-EN,優(yōu)先權(quán)判別電路,中斷服務(wù)寄存器,控制
25、邏輯,(B)中斷允許:CPU內(nèi)部設(shè)置中斷標(biāo)志位用于控制全部可屏蔽中斷的響應(yīng)。 在大多數(shù)計(jì)算機(jī)CPU內(nèi),都設(shè)置一個(gè)中斷觸發(fā)器,由這個(gè)觸發(fā)器的狀態(tài)來決定CPU對(duì)中斷請(qǐng)求是否響應(yīng)。 能使中斷觸發(fā)器置“1”的指令,一般稱為開中斷指令,表示系統(tǒng)允許中斷;能使中斷觸發(fā)器置“0”的指令,一般稱為關(guān)中斷指令,表示系統(tǒng)禁止中斷。 用戶在適當(dāng)時(shí)可以用這些指令來對(duì)中斷的能與否進(jìn)行選擇和控制。,例如8088/8086 CPU中,其程序狀態(tài)字PSW寄存器中就有IF位(第10位),開中斷指令STI可以使IF位置為“1”,達(dá)到允許中斷的目的,關(guān)中斷指令CLI可以使IF位清“0”,達(dá)到禁止中斷的目的。,(1)中斷源的識(shí)別 (
26、A)識(shí)別的主體:WHO:CPU識(shí)別 (B)與中斷優(yōu)先級(jí)的判定密切相關(guān):中斷優(yōu)先級(jí)的判定是解決這一問題的前提和基礎(chǔ)。 (C)目的:使CPU轉(zhuǎn)入相應(yīng)的服務(wù)程序。,4、中斷識(shí)別,(2)方法: (A)軟件查詢法:采用與程序查詢傳送方式一樣的方法,用軟件查詢程序段檢測(cè)中斷請(qǐng)求的標(biāo)志,同時(shí)還可以實(shí)現(xiàn)中斷判優(yōu)。 (B)硬件向量法: (a)中斷向量是中斷源向CPU提供的唯一識(shí)別碼; (b)識(shí)別碼實(shí)際是主存的一個(gè)地址碼; (c)硬件支持: 接口電路中:向量地址產(chǎn)生器 主機(jī)之內(nèi):保存向量的R (d)向量地址的存在情況: (i)服務(wù)程序入口地址 (ii)服務(wù)程序入口地址的地址,(1)中斷現(xiàn)場(chǎng):中斷現(xiàn)場(chǎng)是指在發(fā)生中斷
27、時(shí),CPU及其現(xiàn)行程序的當(dāng)前主要狀態(tài)。這其中最為關(guān)鍵的狀態(tài)是程序計(jì)數(shù)器PC的值,也就是CPU現(xiàn)行程序被中斷時(shí)的下條指令的存儲(chǔ)地址,即斷點(diǎn)地址,簡稱斷點(diǎn)。除斷點(diǎn)外,中斷現(xiàn)場(chǎng)應(yīng)包含CPU程序運(yùn)行情況的狀態(tài),這些狀態(tài)有程序狀態(tài)字PSW以及程序執(zhí)行的當(dāng)前結(jié)果等。,5、中斷服務(wù),(2)中斷服務(wù)程序:3個(gè)部分 (A)起始部分: 起始部分的主要功能是保護(hù)CPU原來程序的一些現(xiàn)場(chǎng),另一個(gè)功能是控制系統(tǒng)在執(zhí)行中斷服務(wù)程序過程中是否允許再被中斷。 (B)主體部分: 主體部分的主要功能應(yīng)該是完成中斷源的請(qǐng)求任務(wù)。對(duì)一般輸入輸出外部設(shè)備來說,就是進(jìn)行數(shù)據(jù)的輸入輸出操作,并且修改相應(yīng)的傳送參數(shù)。這部分是中斷服務(wù)程序中核
28、心的,也就是實(shí)質(zhì)性的部分。,(C) 結(jié)尾部分: 結(jié)尾部分的主要功能是恢復(fù)起始部分所保護(hù)的現(xiàn)場(chǎng)內(nèi)容,然后準(zhǔn)備返回。通常是用一條返回指令作為整個(gè)中斷服務(wù)程序的最后一條指令。,中斷服務(wù)程序的結(jié)束是一條中斷返回指令,由它實(shí)現(xiàn)從中斷處理過程返回被中斷的程序斷點(diǎn)位置處繼續(xù)執(zhí)行,從而完成了一次中斷過程。 以上所述的6個(gè)階段是外部設(shè)備作為中斷源引起中斷的全過程。顯然, 整個(gè)過程只有中斷服務(wù)這個(gè)階段才是實(shí)際有效的部分,其中的關(guān)鍵是執(zhí)行I/O指令實(shí)現(xiàn)數(shù)據(jù)交換。其余幾個(gè)階段可認(rèn)為是中斷服務(wù)的前后處理,是一種輔助性的但不可缺少的操作。當(dāng)中斷頻繁發(fā)生時(shí),這個(gè)輔助性操作是降低CPU利用率和限制外設(shè)速度的原因所在。,6、中
29、斷返回,1、概念:是指當(dāng)一個(gè)中斷服務(wù)程序執(zhí)行其間,系統(tǒng)出現(xiàn)了更高優(yōu)先級(jí)的中斷請(qǐng)求,CPU暫?,F(xiàn)行的中斷服務(wù)程序的執(zhí)行而轉(zhuǎn)去執(zhí)行優(yōu)先級(jí)更高的中斷源服務(wù)程序的過程。 2、實(shí)現(xiàn)多重中斷的基本保證: (1)系統(tǒng)要具備對(duì)多個(gè)中斷現(xiàn)場(chǎng)的保護(hù)能力:堆棧 (2)保證中斷優(yōu)先級(jí)高的中斷源首先得到CPU的服務(wù); (3)在CPU進(jìn)入中斷服務(wù)程序后,系統(tǒng)必須處于開中斷狀態(tài)。,多重中斷,具體作法是,進(jìn)入中斷服務(wù)程序后,在關(guān)中斷的情況下進(jìn)行一些必要的現(xiàn)場(chǎng)保護(hù),然后采用軟件手段,如8088/8086中的STI來達(dá)到開中斷的目的,使CPU在執(zhí)行中斷服務(wù)程序期間是允許中斷的。,一、中斷判優(yōu)的目的 1、為了解決多個(gè)中斷源同時(shí)發(fā)出
30、中斷請(qǐng)求的問題。 2、為了解決當(dāng)系統(tǒng)正在為某個(gè)中斷源服務(wù)時(shí),又產(chǎn)生新的中斷請(qǐng)求,CPU是否轉(zhuǎn)入新的中斷服務(wù)程序中,從而形成中斷嵌套(或稱多重中斷)的問題。,中斷優(yōu)先級(jí)判定,二、中斷判優(yōu)方法: 1、軟件查詢判優(yōu)法 (1)實(shí)現(xiàn): (2)優(yōu)點(diǎn): (A)優(yōu)先權(quán)的排隊(duì)順序可以由程序很方便地改變,因此很靈活。 (B)硬件成本較小,只要在每個(gè)中斷源電路中設(shè)立供CPU查詢的中斷請(qǐng)求標(biāo)志(狀態(tài)位)即可。 (C)能與軟件識(shí)別中斷源方法結(jié)合在一起使用。 (3)缺點(diǎn): (A) 占用CPU的時(shí)間;(B) 速度慢效率低。,2、鏈?zhǔn)诫娐放袃?yōu)法 (1)實(shí)現(xiàn):鏈?zhǔn)脚袃?yōu)電路如圖5-15、5-16。 (A) INTR線共用 (B)
31、 INTA以串行方式依此連接所有外設(shè) (C) 處于前面的設(shè)備若接收INTA信號(hào)便阻塞后面的設(shè)備。 (2)優(yōu)點(diǎn):電路較簡單 缺點(diǎn):是優(yōu)先權(quán)不靈活,一旦線路連接好之后,想要改變或調(diào)整優(yōu)先權(quán)就困難。此時(shí),只有使用程序?qū)δ承?中斷源的請(qǐng)求進(jìn)行屏蔽的辦法來改變先后次序。,3、多組結(jié)構(gòu)判優(yōu)法 (1)實(shí)現(xiàn):多組結(jié)構(gòu)判優(yōu)如圖5-17, 這是一種兩維的優(yōu)先權(quán)結(jié)構(gòu)。中斷請(qǐng)求以組的形式發(fā)向CPU,每組有一條中斷請(qǐng)求線,各組的中斷請(qǐng)求都通過自己的請(qǐng)求線到達(dá)CPU。CPU對(duì)各組的優(yōu)先權(quán)進(jìn)行判定,然后對(duì)最高優(yōu)先權(quán)組發(fā)出相應(yīng)的響應(yīng)信號(hào)。每組都有自己的中斷響應(yīng)線,接收到CPU發(fā)來的響應(yīng)信號(hào)的組再進(jìn)行組內(nèi)設(shè)備的優(yōu)先權(quán)判定。組內(nèi)
32、設(shè)備優(yōu)先權(quán)判定采用了串行鏈?zhǔn)诫娐罚ó?dāng)然也可以采用編碼比較電路),處在前面的中斷源設(shè)備,其優(yōu)先權(quán)高。,(2)兩級(jí)判優(yōu):當(dāng)有一個(gè)或多個(gè)中斷請(qǐng)求發(fā)生時(shí),CPU先進(jìn)行組間優(yōu)先權(quán)的判定,確定其中最高優(yōu)先權(quán)組,再對(duì)這個(gè)組發(fā)出中斷響應(yīng)信號(hào),進(jìn)行組內(nèi)的優(yōu)先權(quán)判定,經(jīng)過兩次選優(yōu)后,就可得到同時(shí)請(qǐng)求設(shè)備中最高優(yōu)先權(quán)組的最高優(yōu)先權(quán)設(shè)備。,中斷屏蔽技術(shù)的應(yīng)用,禁止同一級(jí)或級(jí)別更低優(yōu)先級(jí)的其它請(qǐng)求 利用屏蔽技術(shù)動(dòng)態(tài)的修改優(yōu)先級(jí),向量中斷方式:,響應(yīng)過程,發(fā)響應(yīng)信號(hào)INTA,進(jìn)入中斷周期,關(guān)中斷,保存斷點(diǎn),獲得中斷號(hào),轉(zhuǎn)換為向量地址,查向量表,取中斷向量,轉(zhuǎn)中斷服務(wù)程序,CPU執(zhí)行中斷隱指令,(硬件完成),中斷處理,CP
33、U執(zhí)行中斷服務(wù)程序。,(1)單級(jí)中斷:,CPU響應(yīng)后只處理一個(gè)中斷源的請(qǐng)求,處理完畢后才能響應(yīng)新的請(qǐng)求。,(2)多重中斷:,在某次中斷服務(wù)過程中,允許響應(yīng)處理更高級(jí)別的中斷請(qǐng)求。,單級(jí)中斷流程:,保護(hù)現(xiàn)場(chǎng),具體服務(wù)處理,恢復(fù)現(xiàn)場(chǎng),開中斷、返回,外中斷: 數(shù)據(jù)傳送,禁止同級(jí)或更低級(jí)別的請(qǐng)求,開放更高級(jí)別的請(qǐng)求,多重中斷流程:,開中斷、返回,保護(hù)現(xiàn)場(chǎng),送新屏蔽字、開中斷,具體服務(wù)處理,關(guān)中斷,恢復(fù)現(xiàn)場(chǎng)及原屏蔽字,直接存儲(chǔ)器存取(DMA)方式,(1)定義,DMA控制器接,直接依靠硬件實(shí)現(xiàn)主存與I/O間的數(shù)據(jù)傳送, 傳送期間不需CPU程序干預(yù)。,1)I/O與主存,而不是I/O與CPU。,2)早期由CPU控制傳送; 現(xiàn)在由DMA控制器控制傳送,,管總線權(quán),,傳送完畢再交還總線權(quán)。,3)傳送期間只要CPU不訪存,可并行操作。,4)傳送前和傳送后需要程序干預(yù)。,1、DMA獨(dú)占系統(tǒng)總線(成組連續(xù)傳送)方式
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 中學(xué)在職教師培訓(xùn)制度
- 培訓(xùn)學(xué)校托管安全制度
- 學(xué)徒培訓(xùn)管理制度
- 舞蹈培訓(xùn)學(xué)員考勤制度
- 培訓(xùn)期間考試制度
- 入職培訓(xùn)積分管理制度
- 企業(yè)班長線上培訓(xùn)制度
- 水電站設(shè)備檢修標(biāo)準(zhǔn)方案
- 培訓(xùn)反哺積分制度
- 微商培訓(xùn)師薪酬制度
- 掛名法人免責(zé)協(xié)議書
- 一件代發(fā)采購合同協(xié)議書范本
- 《機(jī)械密封知識(shí)》課件
- 2023-2024學(xué)年浙江省杭州外國語學(xué)校七年級(jí)(上)期末英語試卷
- 足療店消防安全制度
- 房屋自愿放棄繼承協(xié)議
- 智能安全帽解決方案-智能安全帽
- 2024年版煙霧病和煙霧綜合征診斷與治療專家共識(shí)(完整版)
- 2023年-2025年國企改革深化提升方案
- 研學(xué)旅行指導(dǎo)手冊(cè)
- 開封大學(xué)單招職業(yè)技能測(cè)試參考試題庫(含答案)
評(píng)論
0/150
提交評(píng)論