




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、7.6 DMA方式方式7.5 程序中斷方式程序中斷方式7.4 程序查詢方式程序查詢方式7.3 I/O接口接口7.2 外部設(shè)備外部設(shè)備7.1 概述概述計(jì)算機(jī)計(jì)算機(jī)I/O系統(tǒng)結(jié)構(gòu)圖系統(tǒng)結(jié)構(gòu)圖7.1 概概 述述一、輸入輸出系統(tǒng)的開展概況一、輸入輸出系統(tǒng)的開展概況無無I/O技術(shù)技術(shù)程序查詢程序查詢I/O方式方式程序中斷方式程序中斷方式直接內(nèi)存存取直接內(nèi)存存取(Direct Memory Access, DMA)方式方式通道通道(Channel)方式方式外圍處理機(jī)外圍處理機(jī)(Peripheral Processor Unit, PPU)方式方式1、無、無I/O技術(shù)技術(shù)(1) 輻射式連接輻射式連接 外設(shè)外
2、設(shè) 外設(shè)外設(shè) 外設(shè)外設(shè) 主主機(jī)機(jī)特點(diǎn)特點(diǎn)1每個(gè)每個(gè)I/O設(shè)備利用各自的邏輯控制電路與設(shè)備利用各自的邏輯控制電路與CPU相連相連2I/O與與CPU交換信息時(shí),交換信息時(shí),CPU必須停止其他工作必須停止其他工作3I/O設(shè)備控制電路與設(shè)備控制電路與CPU控制器緊密結(jié)合不分隔控制器緊密結(jié)合不分隔缺點(diǎn):線路復(fù)雜缺點(diǎn):線路復(fù)雜缺點(diǎn):效率低下缺點(diǎn):效率低下缺點(diǎn):不易擴(kuò)充設(shè)備缺點(diǎn):不易擴(kuò)充設(shè)備2總線及接口技術(shù)的引入總線及接口技術(shù)的引入 主主 機(jī)機(jī)接接 口口接接 口口設(shè)設(shè) 備備 1設(shè)設(shè) 備備n 總線總線特點(diǎn):特點(diǎn):1總線連接,易于刪減設(shè)備,故障率低總線連接,易于刪減設(shè)備,故障率低 2接口可以使不同的外設(shè)更方便的
3、接入計(jì)算機(jī)系統(tǒng)接口可以使不同的外設(shè)更方便的接入計(jì)算機(jī)系統(tǒng)2、程序查詢、程序查詢I/O方式方式CPU讀讀I/O狀態(tài)狀態(tài)檢查狀態(tài)檢查狀態(tài)未準(zhǔn)備就緒未準(zhǔn)備就緒N數(shù)據(jù)傳送數(shù)據(jù)傳送YCPU主動(dòng)去查詢外設(shè)主動(dòng)去查詢外設(shè) 在這種方式中數(shù)據(jù)在在這種方式中數(shù)據(jù)在CPU與外圍設(shè)備之間的傳送完全與外圍設(shè)備之間的傳送完全靠計(jì)算機(jī)程序控制,是在靠計(jì)算機(jī)程序控制,是在CPU主動(dòng)控制下進(jìn)行的當(dāng)輸入主動(dòng)控制下進(jìn)行的當(dāng)輸入輸出時(shí),輸出時(shí),CPU暫停執(zhí)行本程序,轉(zhuǎn)去執(zhí)行輸入輸出的效勞暫停執(zhí)行本程序,轉(zhuǎn)去執(zhí)行輸入輸出的效勞程序,根據(jù)效勞程序中的程序,根據(jù)效勞程序中的I/O指令進(jìn)行數(shù)據(jù)傳送指令進(jìn)行數(shù)據(jù)傳送踏步等待踏步等待3. 程序中
4、斷方式程序中斷方式I/O 工作工作CPU 不查詢不查詢CPU 暫停現(xiàn)行程序暫?,F(xiàn)行程序自身準(zhǔn)備自身準(zhǔn)備與主機(jī)交換信息與主機(jī)交換信息CPU 和和 I/O 并行工作并行工作 啟動(dòng)啟動(dòng) I/O設(shè)備設(shè)備現(xiàn)行程序現(xiàn)行程序 中斷服務(wù)程序中斷服務(wù)程序KK+1沒有踏步等待現(xiàn)象沒有踏步等待現(xiàn)象中斷現(xiàn)行程序中斷現(xiàn)行程序程序中斷方式流程程序中斷方式流程CPU 向向 I/O 發(fā)讀指令發(fā)讀指令CPU 讀讀 I/O 狀態(tài)狀態(tài)檢查狀態(tài)檢查狀態(tài)完成否?完成否?CPU 做其他事情做其他事情I/O 設(shè)備工作設(shè)備工作準(zhǔn)備就緒準(zhǔn)備就緒CPU I/O從從 CPU 向主存寫入一個(gè)字向主存寫入一個(gè)字CPU 主存主存從從 I/O 接口中讀一
5、個(gè)字到接口中讀一個(gè)字到CPUI/O CPU中斷請(qǐng)求中斷請(qǐng)求I/O CPU出錯(cuò)出錯(cuò)是是否否未錯(cuò)未錯(cuò)4. DMA 方式方式主存和主存和 I/O 之間有一條直接數(shù)據(jù)通道之間有一條直接數(shù)據(jù)通道不中斷現(xiàn)行程序不中斷現(xiàn)行程序周期挪用周期竊取周期挪用周期竊取CPU 和和 I/O 并行工作并行工作存取周期結(jié)束存取周期結(jié)束CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)行程序CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)行程序DMA請(qǐng)求請(qǐng)求啟動(dòng)啟動(dòng)I/OI/O準(zhǔn)備準(zhǔn)備I/O準(zhǔn)備準(zhǔn)備一個(gè)存取周期一個(gè)存取周期實(shí)現(xiàn)實(shí)現(xiàn)I/O與主存之間的傳送與主存之間的傳送三種方式的三種方式的 CPU 工作效率比較工作效率比較存取周期結(jié)束存取周期結(jié)束CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)
6、行程序CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)行程序DMA請(qǐng)求請(qǐng)求啟動(dòng)啟動(dòng)I/OI/O準(zhǔn)備準(zhǔn)備I/O準(zhǔn)備準(zhǔn)備一個(gè)存取周期一個(gè)存取周期實(shí)現(xiàn)實(shí)現(xiàn)I/O與主存與主存之間的傳送之間的傳送CPU 執(zhí)行執(zhí)行現(xiàn)行程序現(xiàn)行程序CPU查詢等待并傳輸查詢等待并傳輸I/O數(shù)據(jù)數(shù)據(jù)CPU 執(zhí)行執(zhí)行現(xiàn)行程序現(xiàn)行程序啟動(dòng)啟動(dòng)I/OI/O 準(zhǔn)備及傳送準(zhǔn)備及傳送指令執(zhí)行周期結(jié)束指令執(zhí)行周期結(jié)束CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)行程序CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)行程序啟動(dòng)啟動(dòng)I/O中斷請(qǐng)求中斷請(qǐng)求I/O準(zhǔn)備準(zhǔn)備I/O準(zhǔn)備準(zhǔn)備CPU 處理中斷服務(wù)程序處理中斷服務(wù)程序?qū)崿F(xiàn)實(shí)現(xiàn) I/O 與主機(jī)之間的傳送與主機(jī)之間的傳送間間斷斷啟動(dòng)啟動(dòng)I/O啟動(dòng)啟動(dòng)I/OI
7、/O準(zhǔn)備準(zhǔn)備中斷請(qǐng)求中斷請(qǐng)求啟動(dòng)啟動(dòng)I/OI/O準(zhǔn)備準(zhǔn)備一個(gè)存取周期一個(gè)存取周期DMA請(qǐng)求請(qǐng)求程序程序查詢查詢方式方式程序程序中斷中斷方式方式DMA 方式方式I/O 準(zhǔn)備及傳送準(zhǔn)備及傳送間間斷斷I/O準(zhǔn)備準(zhǔn)備I/O準(zhǔn)備準(zhǔn)備5. 具有通道結(jié)構(gòu)的階段具有通道結(jié)構(gòu)的階段 CPUM.M通通 道道I/O特點(diǎn):特點(diǎn): 1通道可以看作是一個(gè)通道可以看作是一個(gè)I/O處理器,有專用通道指令。處理器,有專用通道指令。 2 I/O通道受通道受CPU控制:?jiǎn)?dòng)、停止控制:?jiǎn)?dòng)、停止 3通道可以代替通道可以代替CPU來控制來控制I/O設(shè)備以及控制設(shè)備以及控制I/O與主與主機(jī)進(jìn)行數(shù)據(jù)交換。機(jī)進(jìn)行數(shù)據(jù)交換。6. 具有具有
8、I/O 處理機(jī)的階段處理機(jī)的階段 I/O 處理機(jī)又稱外圍處理機(jī)處理機(jī)又稱外圍處理機(jī)PPU,根本獨(dú)立于主機(jī)工作。它即可以完成,根本獨(dú)立于主機(jī)工作。它即可以完成I/O控控制,還可以完成碼制轉(zhuǎn)換、數(shù)據(jù)校驗(yàn)等功能。使制,還可以完成碼制轉(zhuǎn)換、數(shù)據(jù)校驗(yàn)等功能。使I/O系統(tǒng)對(duì)主機(jī)來說獨(dú)立性更高。系統(tǒng)對(duì)主機(jī)來說獨(dú)立性更高。二、輸入輸出系統(tǒng)的組成二、輸入輸出系統(tǒng)的組成7.2 外部設(shè)備外部設(shè)備一、概述一、概述1.外設(shè)的根本組成外設(shè)的根本組成常用的常用的I/O設(shè)備設(shè)備輸輸入入輸輸出出設(shè)設(shè)備備終端設(shè)備(鍵盤終端設(shè)備(鍵盤+顯示器)顯示器)漢字處理設(shè)備漢字處理設(shè)備A/D、D/A轉(zhuǎn)換轉(zhuǎn)換多媒體多媒體脫機(jī)輸入脫機(jī)輸入/輸出
9、設(shè)備(軟磁盤數(shù)據(jù)站)輸出設(shè)備(軟磁盤數(shù)據(jù)站)顯示器(字符、漢字、圖形、圖像)顯示器(字符、漢字、圖形、圖像)打印設(shè)備(點(diǎn)陣式打印機(jī)、激光打印機(jī)、噴墨打印機(jī))打印設(shè)備(點(diǎn)陣式打印機(jī)、激光打印機(jī)、噴墨打印機(jī))繪圖儀(平板式、滾筒式)繪圖儀(平板式、滾筒式)語音輸出語音輸出輸輸出出設(shè)設(shè)備備鍵盤鍵盤圖形輸入設(shè)備(鼠標(biāo)器、圖形板、跟蹤球、操縱桿、光筆)圖形輸入設(shè)備(鼠標(biāo)器、圖形板、跟蹤球、操縱桿、光筆)圖像輸入設(shè)備(攝像機(jī)、掃描儀、傳真機(jī))圖像輸入設(shè)備(攝像機(jī)、掃描儀、傳真機(jī))條形碼,光學(xué)字符識(shí)別,語言與文字輸入條形碼,光學(xué)字符識(shí)別,語言與文字輸入輸輸入入設(shè)設(shè)備備7.3 I/O 接接 口口一、概述一、概
10、述 接口接口硬件上廣義指計(jì)算機(jī)各部件間進(jìn)行連接的邏輯部件。硬件上廣義指計(jì)算機(jī)各部件間進(jìn)行連接的邏輯部件。一般指一般指CPU和和I/O設(shè)備間的連接部件,即設(shè)備間的連接部件,即I/O接口。接口。1 引入接口的原因:由外設(shè)的特點(diǎn)決定的引入接口的原因:由外設(shè)的特點(diǎn)決定的 外設(shè)的特點(diǎn):種類和品種繁多;外設(shè)的特點(diǎn):種類和品種繁多; 工作速度慢;工作速度慢; 信號(hào)類型和電平種類不同信號(hào)類型和電平種類不同2設(shè)置接口的理由:設(shè)置接口的理由: 1、通過設(shè)置數(shù)據(jù)緩沖實(shí)現(xiàn)、通過設(shè)置數(shù)據(jù)緩沖實(shí)現(xiàn)CPU與與I/O間的速度匹配;間的速度匹配; 2、通過串、通過串并或并并或并串轉(zhuǎn)換電路實(shí)現(xiàn)串轉(zhuǎn)換電路實(shí)現(xiàn)CPU與與I/O之間的
11、之間的數(shù)據(jù)格式轉(zhuǎn)換;數(shù)據(jù)格式轉(zhuǎn)換; 3、通過電平匹配實(shí)現(xiàn)、通過電平匹配實(shí)現(xiàn)CPU與與I/O之間的電氣轉(zhuǎn)換;之間的電氣轉(zhuǎn)換; 4、通過接收與傳達(dá)控制命令實(shí)現(xiàn)、通過接收與傳達(dá)控制命令實(shí)現(xiàn)CPU對(duì)對(duì)I/O接口的控制;接口的控制; 5、通過保存與傳送、通過保存與傳送I/O狀態(tài)實(shí)現(xiàn)狀態(tài)實(shí)現(xiàn)CPU對(duì)對(duì)I/O的查詢;的查詢; 6、通過設(shè)備選擇電路向、通過設(shè)備選擇電路向CPU提供提供I/O尋址功能。尋址功能。二、接口的功能和組成二、接口的功能和組成(1) 設(shè)備選擇線設(shè)備選擇線(2) 數(shù)據(jù)線數(shù)據(jù)線(3) 命令線命令線(4) 狀態(tài)線狀態(tài)線I/O 接口接口設(shè)備設(shè)備I/O 接口接口設(shè)備設(shè)備數(shù)據(jù)線數(shù)據(jù)線命令線命令線狀態(tài)
12、線狀態(tài)線I/O總線總線設(shè)備選擇線設(shè)備選擇線 總線連接方式的總線連接方式的 I/O 接口電路接口電路2. 接口的功能和組成接口的功能和組成接口的主要功能有:接口的主要功能有:1地址識(shí)別與設(shè)備選擇地址識(shí)別與設(shè)備選擇2接收、保存接收、保存CPU的的I/O控制命令控制命令 3反映外設(shè)的工作狀態(tài)反映外設(shè)的工作狀態(tài)4信號(hào)轉(zhuǎn)換信號(hào)轉(zhuǎn)換5數(shù)據(jù)格式、碼制的轉(zhuǎn)換與數(shù)據(jù)檢錯(cuò)數(shù)據(jù)格式、碼制的轉(zhuǎn)換與數(shù)據(jù)檢錯(cuò)/糾錯(cuò)糾錯(cuò) 6傳送數(shù)據(jù)傳送數(shù)據(jù)7中斷中斷3. I/O 接口的根本組接口的根本組 成成 命令寄存器命令寄存器和命令譯碼器和命令譯碼器 設(shè)備選擇設(shè)備選擇 電路電路 設(shè)備狀態(tài)設(shè)備狀態(tài) 標(biāo)記標(biāo)記 數(shù)據(jù)緩沖數(shù)據(jù)緩沖 寄存器寄存
13、器DBR 控制邏輯電路控制邏輯電路I/O接口接口外外 部部 設(shè)設(shè) 備備數(shù)據(jù)線數(shù)據(jù)線命令命令狀態(tài)狀態(tài)數(shù)據(jù)線數(shù)據(jù)線命令線命令線狀態(tài)線狀態(tài)線CPU地址線地址線接口中包含的端口接口中包含的端口數(shù)據(jù)端口數(shù)據(jù)端口控制端口控制端口狀態(tài)端口狀態(tài)端口暫存數(shù)據(jù)信息暫存數(shù)據(jù)信息接受控制信息接受控制信息反映接口外設(shè)的狀態(tài)信息反映接口外設(shè)的狀態(tài)信息在用戶看來:在用戶看來: CPU了解外設(shè)的狀態(tài)、了解外設(shè)的狀態(tài)、 控制外設(shè)的工作、控制外設(shè)的工作、 與外設(shè)交換數(shù)據(jù),與外設(shè)交換數(shù)據(jù), 都是通過接口中用戶可見的存放器都是通過接口中用戶可見的存放器端口端口(Port) 的的“讀讀/寫寫來實(shí)現(xiàn)的。這些端口通過總線與來實(shí)現(xiàn)的。這些端
14、口通過總線與CPU互連?;ミB。CPUI/O外設(shè)外設(shè)系統(tǒng)系統(tǒng)外設(shè)外設(shè)I/O接口電路接口電路數(shù)據(jù)口數(shù)據(jù)口狀態(tài)口狀態(tài)口命令口命令口端口地址端口地址譯碼選擇譯碼選擇控制邏輯控制邏輯ABDBDB狀態(tài)信息狀態(tài)信息命令數(shù)據(jù)命令數(shù)據(jù)CBCB1統(tǒng)一編址:統(tǒng)一編址:I/O與內(nèi)存統(tǒng)一進(jìn)行編址與內(nèi)存統(tǒng)一進(jìn)行編址p占用內(nèi)存編址空間占用內(nèi)存編址空間p可利用訪存指令訪問可利用訪存指令訪問I/O口口 特點(diǎn):特點(diǎn): 圖示:圖示:內(nèi)存空間內(nèi)存空間00000HFFFFFH供供I/O口使用口使用p不占用內(nèi)存的編址空間不占用內(nèi)存的編址空間p有專門的輸入輸出指令有專門的輸入輸出指令 特點(diǎn):特點(diǎn): 圖示:圖示:內(nèi)存空間內(nèi)存空間00000H
15、FFFFFHI/O空間空間0000HFFFFH互不干擾互不干擾2獨(dú)立編址:獨(dú)立編址:I/O與內(nèi)存有各自獨(dú)立的與內(nèi)存有各自獨(dú)立的 地址空間,互不干擾。地址空間,互不干擾。5. I/O 口的編址方式口的編址方式三、接口類型三、接口類型并行接口并行接口串行接口串行接口可編程接口可編程接口不可編程接口不可編程接口通用接口通用接口專用接口專用接口1. 按數(shù)據(jù)按數(shù)據(jù) 傳送方式傳送方式 分類分類2. 按功能按功能 選擇的靈活性選擇的靈活性 分類分類3. 按按 通用性通用性 分類分類4. 按數(shù)據(jù)傳送的按數(shù)據(jù)傳送的 控制方式控制方式 分類分類中斷接口中斷接口DMA 接口接口Intel 8255Intel 825
16、1Intel 8255、 Intel 8251Intel 8212Intel 8255、 Intel 8251Intel 8279、 Intel 8275Intel 8259Intel 82577.4 程序查詢方式程序查詢方式一、含義:在這種方式中數(shù)據(jù)在一、含義:在這種方式中數(shù)據(jù)在CPU與外圍設(shè)備之間的傳送與外圍設(shè)備之間的傳送完全靠計(jì)算機(jī)程序控制,是在完全靠計(jì)算機(jī)程序控制,是在CPU主動(dòng)控制下進(jìn)行的當(dāng)輸入主動(dòng)控制下進(jìn)行的當(dāng)輸入輸出時(shí),輸出時(shí),CPU暫停執(zhí)行本程序,轉(zhuǎn)去執(zhí)行輸入輸出的效勞暫停執(zhí)行本程序,轉(zhuǎn)去執(zhí)行輸入輸出的效勞程序,根據(jù)效勞程序中的程序,根據(jù)效勞程序中的I/O指令進(jìn)行數(shù)據(jù)傳送指令進(jìn)
17、行數(shù)據(jù)傳送三、程序查詢方式的接口電路三、程序查詢方式的接口電路設(shè)備選擇電設(shè)備選擇電 路路QQ&準(zhǔn)備就準(zhǔn)備就 緒緒啟動(dòng)命啟動(dòng)命 令令地址地址 線線SEL啟動(dòng)設(shè)備啟動(dòng)設(shè)備設(shè)備工作設(shè)備工作 結(jié)束結(jié)束 DB10 10RRSSQn+1=S+/RQn ;SR=0設(shè)備選擇電路設(shè)備選擇電路DBRQQ&數(shù)據(jù)數(shù)據(jù) 線線準(zhǔn)備就緒準(zhǔn)備就緒啟動(dòng)命令啟動(dòng)命令地址線地址線SEL輸入數(shù)據(jù)輸入數(shù)據(jù)啟動(dòng)設(shè)備啟動(dòng)設(shè)備設(shè)備工作設(shè)備工作 結(jié)束結(jié)束DB10 10工作過程工作過程以輸入為例以輸入為例KK+1中斷服務(wù)程序中斷服務(wù)程序入口入口7.5 程序中斷方式程序中斷方式 但凡向但凡向CPU提出中斷請(qǐng)求的各種因素,統(tǒng)稱為中斷
18、源。提出中斷請(qǐng)求的各種因素,統(tǒng)稱為中斷源??梢允怯布部梢允擒浖梢允怯布部梢允擒浖?. 引起中斷的各種因素引起中斷的各種因素(1) 人為設(shè)置的中斷人為設(shè)置的中斷(2) 程序性事故程序性事故如如 轉(zhuǎn)管指令轉(zhuǎn)管指令溢出、操作碼不能識(shí)別、除法非法溢出、操作碼不能識(shí)別、除法非法(5) 外部事件外部事件(4) I/O 設(shè)備設(shè)備(3) 硬件故障硬件故障用用 鍵盤中斷鍵盤中斷 現(xiàn)行程序現(xiàn)行程序轉(zhuǎn)管指令轉(zhuǎn)管指令管理程序管理程序3.中斷的內(nèi)容中斷的內(nèi)容 其中,中斷請(qǐng)求和中斷判優(yōu)一般由其中,中斷請(qǐng)求和中斷判優(yōu)一般由IO接口完成;而接口完成;而中斷響應(yīng)、中斷效勞和中斷返回由中斷響應(yīng)、中斷效勞和中斷返回由CPU完
19、成完成 處理器內(nèi)部必須增加相關(guān)的硬件,如:處理器內(nèi)部必須增加相關(guān)的硬件,如:接受中斷請(qǐng)求信號(hào)的引腳接受中斷請(qǐng)求信號(hào)的引腳INTR、發(fā)出中斷響應(yīng)信號(hào)的引腳發(fā)出中斷響應(yīng)信號(hào)的引腳INTA、“中斷狀態(tài)觸發(fā)器中斷狀態(tài)觸發(fā)器INT、“中斷允許標(biāo)志中斷允許標(biāo)志EINT、將將ENIT置為置為1的的“開中斷指令開中斷指令STI、將將ENIT清為清為0的的“關(guān)中斷指令關(guān)中斷指令CLI將程序斷點(diǎn)將程序斷點(diǎn)“彈回彈回PC的中斷返回指令的中斷返回指令 IRET等,等,要支持中斷,需要多方的配合:要支持中斷,需要多方的配合:接口中要設(shè)置:接口中要設(shè)置: 中斷請(qǐng)求觸發(fā)器中斷請(qǐng)求觸發(fā)器“INTR 中斷屏蔽觸發(fā)器中斷屏蔽觸發(fā)
20、器MASK。CPUF主存中必須存儲(chǔ):主存中必須存儲(chǔ):F 處理不同中斷請(qǐng)求的中斷效勞程序。處理不同中斷請(qǐng)求的中斷效勞程序。中斷接口中斷接口主存主存實(shí)現(xiàn)中斷的軟實(shí)現(xiàn)中斷的軟/硬件,總稱為硬件,總稱為。二、中斷的特點(diǎn)及其作用二、中斷的特點(diǎn)及其作用1.特點(diǎn):實(shí)時(shí)性隨機(jī)性特點(diǎn):實(shí)時(shí)性隨機(jī)性2.作用作用CPU 與與 I/O 設(shè)備并行工作設(shè)備并行工作硬件故障報(bào)警與處理硬件故障報(bào)警與處理實(shí)現(xiàn)人機(jī)交互聯(lián)系實(shí)現(xiàn)人機(jī)交互聯(lián)系實(shí)現(xiàn)多道程序分時(shí)運(yùn)行實(shí)現(xiàn)多道程序分時(shí)運(yùn)行實(shí)現(xiàn)實(shí)時(shí)控制與實(shí)時(shí)處理實(shí)現(xiàn)實(shí)時(shí)控制與實(shí)時(shí)處理實(shí)現(xiàn)多處理機(jī)和多計(jì)算機(jī)間的聯(lián)系實(shí)現(xiàn)多處理機(jī)和多計(jì)算機(jī)間的聯(lián)系實(shí)現(xiàn)用戶程序和操作系統(tǒng)程序間的轉(zhuǎn)換實(shí)現(xiàn)用戶程序和操
21、作系統(tǒng)程序間的轉(zhuǎn)換注意:注意: 中斷的發(fā)生是隨機(jī)的。在實(shí)現(xiàn)中斷時(shí),必須做到:不管中斷的發(fā)生是隨機(jī)的。在實(shí)現(xiàn)中斷時(shí),必須做到:不管一個(gè)程序在執(zhí)行的過程中,是否被中斷,中斷多少次,其最終一個(gè)程序在執(zhí)行的過程中,是否被中斷,中斷多少次,其最終的運(yùn)行結(jié)果必須是唯一的。的運(yùn)行結(jié)果必須是唯一的。 當(dāng)有多個(gè)中斷源向當(dāng)有多個(gè)中斷源向CPU提出中斷請(qǐng)求時(shí),提出中斷請(qǐng)求時(shí),CPU必須堅(jiān)持的必須堅(jiān)持的原那么是:在任何一個(gè)時(shí)刻只能為一個(gè)中斷源的請(qǐng)求提供效勞。原那么是:在任何一個(gè)時(shí)刻只能為一個(gè)中斷源的請(qǐng)求提供效勞。發(fā)中斷請(qǐng)求發(fā)中斷請(qǐng)求 空空 閑閑接接 收收數(shù)據(jù)數(shù)據(jù)接接 收收數(shù)據(jù)數(shù)據(jù)準(zhǔn)準(zhǔn) 備備發(fā)中斷請(qǐng)求發(fā)中斷請(qǐng)求 打打
22、印印打打 印印打印機(jī)打印機(jī)執(zhí)行主程序執(zhí)行主程序繼續(xù)執(zhí)行主程序繼續(xù)執(zhí)行主程序繼續(xù)執(zhí)行主程序繼續(xù)執(zhí)行主程序響應(yīng)中響應(yīng)中 斷斷中斷返中斷返 回回響應(yīng)中響應(yīng)中 斷斷中斷返中斷返 回回 啟動(dòng)啟動(dòng)打印打印 機(jī)機(jī)傳送傳送數(shù)數(shù) 據(jù)據(jù)傳傳 送送數(shù)數(shù) 據(jù)據(jù)CPU四、四、 中斷系統(tǒng)需解決的問題中斷系統(tǒng)需解決的問題(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í)間、以什么、以什么 方式方式
23、 響應(yīng)中斷響應(yīng)中斷 ?(6) 如何如何 恢復(fù)現(xiàn)場(chǎng)恢復(fù)現(xiàn)場(chǎng),如何,如何 返回返回 ?(7) 處理中斷的過程中又處理中斷的過程中又 出現(xiàn)新的中斷出現(xiàn)新的中斷 怎么辦怎么辦 ?硬件硬件 軟件軟件配置中斷請(qǐng)求觸發(fā)器和中斷屏蔽觸發(fā)配置中斷請(qǐng)求觸發(fā)器和中斷屏蔽觸發(fā) 器器DQ&1INTR 中斷請(qǐng)求觸發(fā)中斷請(qǐng)求觸發(fā) 器器MASK 中斷屏蔽觸發(fā)中斷屏蔽觸發(fā) 器器來自來自 CPU 的的中斷查詢信中斷查詢信 號(hào)號(hào)受設(shè)備本身控受設(shè)備本身控 制制INTR D MASKQD 完成觸發(fā)器完成觸發(fā)器 中斷請(qǐng)求中斷請(qǐng)求 1 1 1 & 1 & 1 &INTR1INTR2INTR3INTR4INT
24、P1INTP2INTP3INTP4INTR1 、 INTR2 、 INTR3 、 INTR4 優(yōu)先級(jí)優(yōu)先級(jí) 按按 降序降序 排列排列 2. 中斷判優(yōu)邏輯中斷判優(yōu)邏輯1INTP11INTP21INTP31INTP4&INTR1INTR2INTR3INTR4INTR1INTR2INTR3INTR4 1& 1& 1& 1& INTP1 INTP2INTP3 INTP4 INTR2INTR1INTR1INTR21&INTP2A、B、C 優(yōu)先級(jí)按優(yōu)先級(jí)按 降序降序 排列排列(3) 軟件實(shí)現(xiàn)程序查詢軟件實(shí)現(xiàn)程序查詢否否是否是否 A 請(qǐng)求?請(qǐng)求?是否是否 B
25、請(qǐng)求?請(qǐng)求?是否是否 C 請(qǐng)求?請(qǐng)求?轉(zhuǎn)轉(zhuǎn) A 的效勞程序的效勞程序入口地址入口地址轉(zhuǎn)轉(zhuǎn) B 的效勞程序的效勞程序入口地址入口地址轉(zhuǎn)轉(zhuǎn) C 的效勞程序的效勞程序入口地址入口地址是是是是是是否否否否3.中斷效勞程序入口地址的尋找中斷效勞程序入口地址的尋找1 軟件查詢法軟件查詢法中斷識(shí)別程序中斷識(shí)別程序(入口地址(入口地址 M)地地 址址說說 明明指指 令令 M JMP 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
26、 = 1 轉(zhuǎn)轉(zhuǎn)8# 服務(wù)程序服務(wù)程序八個(gè)中斷源八個(gè)中斷源 1、2、 8 按按 降序降序 排列排列 SKP DZ 1#1# D = 0 跳跳(D為完成觸發(fā)器)為完成觸發(fā)器)優(yōu)點(diǎn):不需要增加硬件,可以靈活改變中斷源的優(yōu)先級(jí);優(yōu)點(diǎn):不需要增加硬件,可以靈活改變中斷源的優(yōu)先級(jí);缺點(diǎn):占用缺點(diǎn):占用CPU時(shí)間,處理速度慢,優(yōu)先級(jí)低的中斷請(qǐng)求需要等時(shí)間,處理速度慢,優(yōu)先級(jí)低的中斷請(qǐng)求需要等待較長(zhǎng)時(shí)間才能開始中斷效勞待較長(zhǎng)時(shí)間才能開始中斷效勞2 硬件向量法硬件向量法入口地址入口地址 200入口地址入口地址 300入口地址入口地址 40012 H13 H14 H主存主存12 H13 H14 HJMP 200J
27、MP 300JMP 400主存主存向量地址向量地址 12H、13H、14H入口地址入口地址 200、 300、 400向量地向量地 址址排隊(duì)器輸排隊(duì)器輸 出出中斷向量地址中斷向量地址 形成部件形成部件 設(shè)備設(shè)備編碼器編碼器1 0 0 0000100100 1 0 0000100111 CPU 響應(yīng)中斷的條件和時(shí)響應(yīng)中斷的條件和時(shí) 間間(1) 條件條件(2) 時(shí)間時(shí)間中斷中斷允許觸發(fā)器允許觸發(fā)器 EINT = 1用用 開中斷開中斷 指令置指令置 “1 EINT用用 關(guān)中斷關(guān)中斷 指令置指令置“ 0 EINT 或硬件或硬件 自動(dòng)復(fù)位自動(dòng)復(fù)位當(dāng)當(dāng) D = 1隨機(jī)且隨機(jī)且 MASK = 0 時(shí)時(shí)在每條
28、指令執(zhí)行階段的結(jié)束前在每條指令執(zhí)行階段的結(jié)束前CPU 發(fā)發(fā) 中斷查詢信號(hào)將中斷查詢信號(hào)將 INTR 置置“14. 中斷響應(yīng)中斷響應(yīng)2 中斷隱指令中斷隱指令(1) 保護(hù)程序斷點(diǎn)保護(hù)程序斷點(diǎn)(2) 尋找效勞程序入口地址尋找效勞程序入口地址(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 中斷狀態(tài)中斷狀態(tài)EINT 允許中斷允許中斷R S 觸發(fā)器觸發(fā)器向量地址向量地址PC (硬件向量法)(硬件向量法)中斷識(shí)別程序中斷識(shí)別程序 入口地址入口地址MPC
29、(軟件查詢法)(軟件查詢法) CPU 工作周期的標(biāo)志工作周期的標(biāo)志CPU 訪存有四種性質(zhì)訪存有四種性質(zhì)取取 指令指令取取 地址地址取取 操作數(shù)操作數(shù)存存 程序斷點(diǎn)程序斷點(diǎn)取指周期取指周期間址周期間址周期執(zhí)行周期執(zhí)行周期中斷周期中斷周期FEDINDDINTDCLK1FE1IND1EX1INTEXDCPU 的的4個(gè)工作周期個(gè)工作周期5.保護(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)其他效勞程序其他效勞程序恢復(fù)現(xiàn)場(chǎng)恢復(fù)現(xiàn)場(chǎng)中斷返回中斷返回PUSH視不同請(qǐng)求源而定視不同請(qǐng)求源而定POP中斷效勞程序中斷效勞程序 完成完成中中斷斷服服
30、務(wù)務(wù)程程序序中斷隱指令中斷隱指令 完成完成中斷效勞程序中斷效勞程序 完成完成IRET五、中斷效勞程序流程五、中斷效勞程序流程1. 中斷效勞程序的流程中斷效勞程序的流程(1) 保護(hù)現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng)(2) 中斷效勞中斷效勞(3) 恢復(fù)現(xiàn)場(chǎng)恢復(fù)現(xiàn)場(chǎng)(4) 中斷返回中斷返回對(duì)不同的對(duì)不同的 I/O 設(shè)備具有不同內(nèi)容的設(shè)備效勞設(shè)備具有不同內(nèi)容的設(shè)備效勞中斷返回指令中斷返回指令2. 單重中斷和多重中斷單重中斷和多重中斷中斷隱指令完成中斷隱指令完成進(jìn)棧指令進(jìn)棧指令出棧指令出棧指令程序斷點(diǎn)的保護(hù)程序斷點(diǎn)的保護(hù)寄存器內(nèi)容的保護(hù)寄存器內(nèi)容的保護(hù) 在處理中斷的過程中,可能有新的、優(yōu)先級(jí)更高的中斷請(qǐng)?jiān)谔幚碇袛嗟倪^程中,可
31、能有新的、優(yōu)先級(jí)更高的中斷請(qǐng)求到來。當(dāng)這種現(xiàn)象發(fā)生時(shí),假設(shè)允許求到來。當(dāng)這種現(xiàn)象發(fā)生時(shí),假設(shè)允許CPU暫?,F(xiàn)行的中斷效暫?,F(xiàn)行的中斷效勞程序,轉(zhuǎn)去處理新的中斷請(qǐng)求,這種現(xiàn)象稱為多重中斷或中勞程序,轉(zhuǎn)去處理新的中斷請(qǐng)求,這種現(xiàn)象稱為多重中斷或中斷嵌套,否那么為單重中斷。斷嵌套,否那么為單重中斷。不允許中斷不允許中斷 現(xiàn)行的現(xiàn)行的 中斷效勞程序中斷效勞程序單重單重 中斷中斷 多重多重 中中 斷斷 允許級(jí)別更高允許級(jí)別更高 的中斷源的中斷源中斷中斷 現(xiàn)行的現(xiàn)行的 中斷服務(wù)程序中斷服務(wù)程序klmk +1l +1m +1第一次第一次 中斷中斷第二次第二次 中斷中斷第三次第三次 中斷中斷程序斷點(diǎn)程序斷點(diǎn)
32、k+1 , l+1 , m+13. 實(shí)現(xiàn)多重中斷的條件實(shí)現(xiàn)多重中斷的條件B, CA中斷中斷請(qǐng)求請(qǐng)求主程序主程序(2) 優(yōu)先級(jí)別高優(yōu)先級(jí)別高 的中斷源的中斷源 有權(quán)中斷優(yōu)先級(jí)別低有權(quán)中斷優(yōu)先級(jí)別低 的中斷源的中斷源(1) 提前提前 設(shè)置設(shè)置 開中斷開中斷 指令指令A(yù)BCD中斷服務(wù)程序中斷服務(wù)程序( A、B、 C、 D 優(yōu)先級(jí)按優(yōu)先級(jí)按 降序降序 排列)排列)D4. 單重中斷和多重中斷的效勞程序流程單重中斷和多重中斷的效勞程序流程中斷否?中斷否?保護(hù)現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng)設(shè)備服務(wù)設(shè)備服務(wù)恢復(fù)現(xiàn)場(chǎng)恢復(fù)現(xiàn)場(chǎng) 開中斷開中斷中斷返回中斷返回取指令取指令執(zhí)行指令執(zhí)行指令中斷服務(wù)程序中斷服務(wù)程序 中斷響應(yīng)中斷響應(yīng) 程序
33、斷點(diǎn)進(jìn)棧程序斷點(diǎn)進(jìn)棧 關(guān)中斷關(guān)中斷 向量地址向量地址 PC中斷周期中斷周期是是中斷返回中斷返回保護(hù)現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng)設(shè)備服務(wù)設(shè)備服務(wù)關(guān)中斷關(guān)中斷恢復(fù)現(xiàn)場(chǎng)恢復(fù)現(xiàn)場(chǎng)開中斷開中斷開中斷開中斷開中斷開中斷開中斷開中斷中斷隱指令中斷隱指令中斷隱指令中斷隱指令否否取指令取指令執(zhí)行指令執(zhí)行指令中斷否?中斷否?否否 中斷響應(yīng)中斷響應(yīng) 程序斷點(diǎn)進(jìn)棧程序斷點(diǎn)進(jìn)棧 關(guān)中斷關(guān)中斷向量地址向量地址 PC中斷周期中斷周期是是中斷服務(wù)程序中斷服務(wù)程序單重單重 多重多重 六、中斷屏蔽六、中斷屏蔽 中斷判優(yōu)和中斷響應(yīng),通常是由硬件完成的。這樣,在中中斷判優(yōu)和中斷響應(yīng),通常是由硬件完成的。這樣,在中斷優(yōu)先級(jí)確定后,中斷響應(yīng)的順序也就隨
34、之確定了。能否在運(yùn)斷優(yōu)先級(jí)確定后,中斷響應(yīng)的順序也就隨之確定了。能否在運(yùn)行時(shí),臨時(shí)調(diào)整中斷的效勞順序呢?行時(shí),臨時(shí)調(diào)整中斷的效勞順序呢? 答復(fù)是肯定的,一個(gè)可行的解決方案就是引入由操作系統(tǒng)答復(fù)是肯定的,一個(gè)可行的解決方案就是引入由操作系統(tǒng)管理的、可變的管理的、可變的“中斷屏蔽字。中斷屏蔽字。 在在CPU響應(yīng)了某級(jí)中斷的某個(gè)中斷源發(fā)來的中斷請(qǐng)求后,響應(yīng)了某級(jí)中斷的某個(gè)中斷源發(fā)來的中斷請(qǐng)求后,系統(tǒng)將該中斷源所屬中斷級(jí)別對(duì)應(yīng)的中斷屏蔽字,寫入中斷屏系統(tǒng)將該中斷源所屬中斷級(jí)別對(duì)應(yīng)的中斷屏蔽字,寫入中斷屏蔽存放器蔽存放器 IMR。 CPU根據(jù)中斷屏蔽字決定屏蔽掉某些級(jí)別中斷的請(qǐng)求信號(hào),根據(jù)中斷屏蔽字決定
35、屏蔽掉某些級(jí)別中斷的請(qǐng)求信號(hào),使其不能進(jìn)入排隊(duì)器排隊(duì),從而間接地改變中斷響應(yīng)順序。使其不能進(jìn)入排隊(duì)器排隊(duì),從而間接地改變中斷響應(yīng)順序。 &1. 屏蔽觸發(fā)器的作用屏蔽觸發(fā)器的作用MASK = 0未屏蔽未屏蔽INTR 能被置能被置 “1 1 & & & 1 1 1 1INTP1INTP2INTP3INTP4INTR1INTR2INTR3INTR4MASK1MASK2MASK3MASK4DQ 1 DINTR MASKQCPU查詢查詢MASKi = 1 屏蔽屏蔽INTPi = 0 不能被排隊(duì)選中不能被排隊(duì)選中中斷處理中斷處理程序級(jí)別程序級(jí)別中斷級(jí)屏蔽位中斷級(jí)屏蔽位1 級(jí)
36、級(jí)2 級(jí)級(jí)3 級(jí)級(jí)4 級(jí)級(jí)第第 1 級(jí)級(jí)第第 2 級(jí)級(jí)第第 3 級(jí)級(jí)第第 4 級(jí)級(jí)1000110011101111中斷處理順序就是中斷響應(yīng)順序時(shí)的中斷屏蔽字中斷處理順序就是中斷響應(yīng)順序時(shí)的中斷屏蔽字設(shè)設(shè)“1代表屏蔽,代表屏蔽,“0表示開放表示開放2. 屏蔽字屏蔽字優(yōu)先級(jí)優(yōu)先級(jí)屏屏 蔽蔽 字字 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 0 1 1 1 1 1 1 1 1 1 1 1 1 1 10 0 0 1 1 1 1 1 1 1 1 1 1 1 1 10 0 0 0 1 1 1 1 1 1 1 1 1 1 1
37、 10 0 0 0 0 1 1 1 1 1 1 1 1 1 1 10 0 0 0 0 0 0 0 0 0 0 0 0 0 1 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1123456151616個(gè)中斷源個(gè)中斷源 1、2、3 16 按按 降序降序 排列排列3. 屏蔽技術(shù)可改變處理優(yōu)先等級(jí)屏蔽技術(shù)可改變處理優(yōu)先等級(jí)響應(yīng)優(yōu)先級(jí)響應(yīng)優(yōu)先級(jí)響應(yīng)優(yōu)先級(jí)響應(yīng)優(yōu)先級(jí) ABCD 降序排列降序排列 不可改變不可改變處理優(yōu)先級(jí)處理優(yōu)先級(jí)可改變通過重新設(shè)置屏蔽字可改變通過重新設(shè)置屏蔽字中斷源中斷源原屏蔽字原屏蔽字新屏蔽字新屏蔽字ABCD 1 1 1 10 1 1 10 0 1 10 0 0 1 1
38、 1 1 10 1 0 00 1 1 00 1 1 1 處理優(yōu)先級(jí)處理優(yōu)先級(jí) ADCB 降序排列降序排列服務(wù)程序服務(wù)程序B處理完處理完C處理完處理完D處理完處理完A處理完處理完t主程序主程序A程序程序B程序程序C程序程序D程序程序A、B、C、D同時(shí)請(qǐng)求中斷同時(shí)請(qǐng)求中斷CPU 執(zhí)行程序軌跡(原屏蔽字)執(zhí)行程序軌跡(原屏蔽字)3. 屏蔽技術(shù)可改變處理優(yōu)先等級(jí)屏蔽技術(shù)可改變處理優(yōu)先等級(jí)4. 屏蔽技術(shù)的其他作用屏蔽技術(shù)的其他作用 便于程序控制便于程序控制可以可以 人為地屏蔽人為地屏蔽 某個(gè)中斷源的請(qǐng)求某個(gè)中斷源的請(qǐng)求服務(wù)程序服務(wù)程序D處理完處理完C處理完處理完B處理完處理完A處理完處理完t主程序主程序
39、A程序程序B程序程序C程序程序D程序程序A、B、C、D同時(shí)請(qǐng)求中斷同時(shí)請(qǐng)求中斷CPU 執(zhí)行程序軌跡(新屏蔽字)執(zhí)行程序軌跡(新屏蔽字)3. 屏蔽技術(shù)可改變處理優(yōu)先等級(jí)屏蔽技術(shù)可改變處理優(yōu)先等級(jí)5. 新屏蔽字的設(shè)新屏蔽字的設(shè) 置置 保護(hù)現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng) 置屏蔽字置屏蔽字 開中斷開中斷 中斷服務(wù)中斷服務(wù) 關(guān)中斷關(guān)中斷 恢復(fù)現(xiàn)場(chǎng)恢復(fù)現(xiàn)場(chǎng) 恢復(fù)屏蔽字恢復(fù)屏蔽字 開中斷開中斷 中斷返回中斷返回 置屏蔽字置屏蔽字 恢復(fù)屏蔽字恢復(fù)屏蔽字 關(guān)中斷關(guān)中斷 開中斷開中斷設(shè)備選擇電路設(shè)備選擇電路DBR DQ&數(shù)據(jù)線數(shù)據(jù)線啟動(dòng)命令啟動(dòng)命令地址線地址線SEL輸入數(shù)據(jù)輸入數(shù)據(jù)啟動(dòng)設(shè)備啟動(dòng)設(shè)備設(shè)備工作設(shè)備工作 結(jié)束結(jié)束
40、&1QQDINTR BQQ MASK設(shè)備編碼器設(shè)備編碼器排隊(duì)器排隊(duì)器中斷查詢中斷查詢來自高一級(jí)來自高一級(jí) 的排隊(duì)器的排隊(duì)器至低一級(jí)至低一級(jí)的排隊(duì)器的排隊(duì)器向量地址向量地址中斷響應(yīng)中斷響應(yīng) INTA中斷請(qǐng)求中斷請(qǐng)求命令譯碼命令譯碼七、七、 I/O 中斷處理過程中斷處理過程10&DBR設(shè)備選擇電路設(shè)備選擇電路01以輸入為例以輸入為例主程序和效勞程序搶占主程序和效勞程序搶占 CPU 示意示意準(zhǔn)備工作準(zhǔn)備工作準(zhǔn)備工作準(zhǔn)備工作準(zhǔn)備工作準(zhǔn)備工作傳送數(shù)據(jù)傳送數(shù)據(jù)傳送數(shù)據(jù)傳送數(shù)據(jù)發(fā)中斷請(qǐng)求發(fā)中斷請(qǐng)求發(fā)中斷請(qǐng)求發(fā)中斷請(qǐng)求I/O宏觀宏觀 上上 CPU 和和 I/O 并行并行 工作工作微觀微觀 上上
41、 CPU 中斷現(xiàn)行程序中斷現(xiàn)行程序 為為 I/O 效勞效勞主程序主程序繼續(xù)執(zhí)行主程序繼續(xù)執(zhí)行主程序啟動(dòng)外設(shè)啟動(dòng)外設(shè) 服務(wù)程序服務(wù)程序(傳送數(shù)據(jù))(傳送數(shù)據(jù)) 服務(wù)程序服務(wù)程序(傳送數(shù)據(jù))(傳送數(shù)據(jù))繼續(xù)執(zhí)行主程序繼續(xù)執(zhí)行主程序CPU程序中斷接口芯片程序中斷接口芯片 8259A 的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu) 內(nèi)部總線內(nèi)部總線 緩沖器緩沖器讀讀 / 寫寫邏邏 輯輯級(jí)聯(lián)緩沖級(jí)聯(lián)緩沖器器/比較器比較器優(yōu)先權(quán)優(yōu)先權(quán)比較器比較器 ( PR ) 中斷中斷 服務(wù)服務(wù) 寄存寄存 器器(ISR) 中斷中斷 請(qǐng)求請(qǐng)求 寄存寄存 器器(IRR)中斷屏蔽寄存器中斷屏蔽寄存器 (IMR)控制邏輯控制邏輯INT INTAD7D0A
42、0RDWRCSCAS0CAS1CAS2SP/ENIR0IR1IR2IR3IR4IR5IR6IR7內(nèi)部總內(nèi)部總 線線八、八、 中斷控制器中斷控制器8259A8259A的主要引腳描述如下:的主要引腳描述如下:IR7IR0 :輸入引腳,用于接收來至外設(shè)的中斷請(qǐng)求信號(hào):輸入引腳,用于接收來至外設(shè)的中斷請(qǐng)求信號(hào)INT:輸出引腳,一般與:輸出引腳,一般與CPU的的INTR引腳連接。當(dāng)引腳連接。當(dāng)8259A接接收到外設(shè)的中斷請(qǐng)求信號(hào)后,通過該引腳統(tǒng)一向收到外設(shè)的中斷請(qǐng)求信號(hào)后,通過該引腳統(tǒng)一向CPU發(fā)中斷發(fā)中斷請(qǐng)求。請(qǐng)求。1. INTA:這是一個(gè)輸入引腳,用于接收來至:這是一個(gè)輸入引腳,用于接收來至CPU的
43、中斷響應(yīng)信的中斷響應(yīng)信號(hào)號(hào)INTA。4. CS:片選信號(hào),允許:片選信號(hào),允許8259A進(jìn)行編程與控制。進(jìn)行編程與控制。5. WR:低電位有效,與系統(tǒng)的寫入控制線連接。:低電位有效,與系統(tǒng)的寫入控制線連接。6. RD:低電位有效,與系統(tǒng)的寫入控制線連接。低電位有效,與系統(tǒng)的寫入控制線連接。7. A0:用:用A0的取值來選擇的取值來選擇8259A內(nèi)部不同的命令字。內(nèi)部不同的命令字。8259A的主要引腳描述如下:的主要引腳描述如下:8. SP/EN:主從定義:主從定義/緩沖器方向。接高電平時(shí)為主片,緩沖器方向。接高電平時(shí)為主片,接低電平時(shí)為從片。當(dāng)接低電平時(shí)為從片。當(dāng)8259A工作于緩沖器方式時(shí),
44、工作于緩沖器方式時(shí), 它作為控制緩沖器傳送方向的輸出控制線;否那么為它作為控制緩沖器傳送方向的輸出控制線;否那么為輸入線。輸入線。9. CAS2CAS0:級(jí)連控制信號(hào),主片為輸出,從片為:級(jí)連控制信號(hào),主片為輸出,從片為輸出。主片輸出一個(gè)識(shí)別碼,哪一個(gè)從片的識(shí)別碼與輸出。主片輸出一個(gè)識(shí)別碼,哪一個(gè)從片的識(shí)別碼與其相符,那么該從片的中斷請(qǐng)求被準(zhǔn)許。主片最多可其相符,那么該從片的中斷請(qǐng)求被準(zhǔn)許。主片最多可以控制以控制8個(gè)從片。個(gè)從片。九、九、 8086/8088微處理器的中斷系統(tǒng)微處理器的中斷系統(tǒng) 1. 1.概述概述 8086/8088微處理器的中斷源分為兩類:微處理器的中斷源分為兩類: 位于處理
45、器外部、由硬件引起的硬件中斷或外部中斷位于處理器外部、由硬件引起的硬件中斷或外部中斷 硬件中斷又分為不可屏蔽中斷和可屏蔽中斷。它們的請(qǐng)求信號(hào),分別由不硬件中斷又分為不可屏蔽中斷和可屏蔽中斷。它們的請(qǐng)求信號(hào),分別由不可屏蔽中斷請(qǐng)求輸入引腳可屏蔽中斷請(qǐng)求輸入引腳NMI和可屏蔽中斷請(qǐng)求輸入引腳和可屏蔽中斷請(qǐng)求輸入引腳INTR輸入到處理器中。輸入到處理器中。 當(dāng)有不可屏蔽中斷請(qǐng)求信號(hào)到來時(shí),處理器會(huì)在結(jié)束當(dāng)前指令的執(zhí)行后,當(dāng)有不可屏蔽中斷請(qǐng)求信號(hào)到來時(shí),處理器會(huì)在結(jié)束當(dāng)前指令的執(zhí)行后,立即轉(zhuǎn)去執(zhí)行不可屏蔽中斷處理程序。立即轉(zhuǎn)去執(zhí)行不可屏蔽中斷處理程序。 來自處理器內(nèi)部、由某條指令的執(zhí)行或某個(gè)標(biāo)志位的設(shè)
46、置而引起的軟件中來自處理器內(nèi)部、由某條指令的執(zhí)行或某個(gè)標(biāo)志位的設(shè)置而引起的軟件中斷或內(nèi)部中斷。斷或內(nèi)部中斷。8086/8088微處理器的中斷系統(tǒng)框圖微處理器的中斷系統(tǒng)框圖 “屏蔽是通過標(biāo)志存放器中的中斷允許標(biāo)志屏蔽是通過標(biāo)志存放器中的中斷允許標(biāo)志IF來實(shí)現(xiàn)的。來實(shí)現(xiàn)的。處理器會(huì)在每條指令執(zhí)行的末尾,掃描處理器會(huì)在每條指令執(zhí)行的末尾,掃描INTR引腳。當(dāng)檢測(cè)到請(qǐng)引腳。當(dāng)檢測(cè)到請(qǐng)求信號(hào)時(shí),那么檢查求信號(hào)時(shí),那么檢查IF。假設(shè)假設(shè)IF=1,那么表示屏蔽中斷、不響應(yīng),那么表示屏蔽中斷、不響應(yīng),否那么響應(yīng)。響應(yīng)信號(hào)通過否那么響應(yīng)。響應(yīng)信號(hào)通過INTA引腳發(fā)給中斷源。引腳發(fā)給中斷源。軟件中斷有軟件中斷有5
47、類:類:除法錯(cuò)誤溢出或除數(shù)為除法錯(cuò)誤溢出或除數(shù)為0、定點(diǎn)加法溢出、定點(diǎn)加法溢出、斷點(diǎn)中斷、斷點(diǎn)中斷、單步中斷單步中斷中斷指令中斷指令I(lǐng)NT n。 軟件中斷不會(huì)發(fā)出請(qǐng)求信號(hào),也不需要響應(yīng)信號(hào)軟件中斷不會(huì)發(fā)出請(qǐng)求信號(hào),也不需要響應(yīng)信號(hào)。除單步。除單步中斷外,內(nèi)部中斷無法用軟件禁止。中斷外,內(nèi)部中斷無法用軟件禁止。 響應(yīng)中斷后,響應(yīng)中斷后,8086/8088微處理器進(jìn)入中斷周期。微處理器進(jìn)入中斷周期。中斷周期內(nèi),中斷周期內(nèi),8086/8088微處理器將執(zhí)行的操作是:微處理器將執(zhí)行的操作是:1發(fā)出中斷響應(yīng)信號(hào)發(fā)出中斷響應(yīng)信號(hào)INTA.2將標(biāo)志存放器將標(biāo)志存放器FR壓入堆棧,將壓入堆棧,將IF和和TF清
48、為清為0.3依次將存放器依次將存放器CS和和IP壓入堆棧壓入堆棧.4根據(jù)中斷類型號(hào)找到中斷處理程序的入口地址,根據(jù)中斷類型號(hào)找到中斷處理程序的入口地址,并將其寫入存放器并將其寫入存放器CS和和IP.2. 中斷向量和向量表中斷向量和向量表 8086/8088微處理器的中斷處理程序的入口地址表微處理器的中斷處理程序的入口地址表示為:示為:中斷向量中斷向量“CS:IP 8086/8088微處理器被設(shè)計(jì)成最多能管理微處理器被設(shè)計(jì)成最多能管理256個(gè)中斷。這些個(gè)中斷。這些中斷的中斷的中斷向量中斷向量組成組成中斷中斷向量表向量表。每個(gè)中斷向量長(zhǎng)。每個(gè)中斷向量長(zhǎng)4個(gè)字節(jié)個(gè)字節(jié),故中斷向量表的大小為故中斷向量
49、表的大小為1024字節(jié)字節(jié)00000HFFFFFH00001H00002H00003H0號(hào)中斷的號(hào)中斷的中斷向量(地中斷向量(地 址)址)003FCH003FDH003FEH003FFH256號(hào)中斷的號(hào)中斷的中斷向量(地址)中斷向量(地址) CSIPCSIP 8086/8088微處理器管理中斷是通過中斷類型號(hào)微處理器管理中斷是通過中斷類型號(hào)0255來實(shí)現(xiàn)的。來實(shí)現(xiàn)的。 前前32個(gè)中斷向量為系統(tǒng)專用。個(gè)中斷向量為系統(tǒng)專用。其中,其中, 0號(hào)是號(hào)是“除法錯(cuò)誤中斷,除法錯(cuò)誤中斷, 1號(hào)是號(hào)是“單步中斷,單步中斷, 2號(hào)是號(hào)是“非屏蔽中斷,非屏蔽中斷, 3號(hào)是號(hào)是“斷點(diǎn)中斷或斷點(diǎn)中斷或INT3, 4號(hào)
50、是號(hào)是“溢出中斷或溢出中斷或INTO。中斷類型中斷類型5到到31,系統(tǒng)保存使用。,系統(tǒng)保存使用。0號(hào)中號(hào)中 斷斷1號(hào)中號(hào)中 斷斷2號(hào)中斷號(hào)中斷 3號(hào)中號(hào)中 斷斷4號(hào)中號(hào)中 斷斷5號(hào)中號(hào)中 斷斷31號(hào)中號(hào)中 斷斷255號(hào)中號(hào)中 斷斷3. 中斷指令中斷指令I(lǐng)NT n和中斷返回指令和中斷返回指令I(lǐng)RET廣義上的廣義上的INT n指令,包括了:指令,包括了: INT3即斷點(diǎn)中斷和即斷點(diǎn)中斷和 INT4即即INTO。 但除但除INT 3和和INTO為單字節(jié)指令外,其余為單字節(jié)指令外,其余INT n指令為指令為2個(gè)字個(gè)字節(jié)的指令,第節(jié)的指令,第1個(gè)字節(jié)是操作碼,第個(gè)字節(jié)是操作碼,第2個(gè)字節(jié)是操作數(shù)。操作數(shù)
51、個(gè)字節(jié)是操作數(shù)。操作數(shù)n為中斷類型號(hào),當(dāng)執(zhí)行為中斷類型號(hào),當(dāng)執(zhí)行 INT n時(shí),系統(tǒng)根據(jù)類型號(hào)時(shí),系統(tǒng)根據(jù)類型號(hào)n找到中斷找到中斷處理程序的入口地址。處理程序的入口地址。 中斷返回指令中斷返回指令I(lǐng)RET的功能是順序從堆棧中彈出的功能是順序從堆棧中彈出3個(gè)字,依次個(gè)字,依次送入存放器送入存放器IP、CS和和FR。 中斷優(yōu)先級(jí),由高到低,依次為:中斷優(yōu)先級(jí),由高到低,依次為: 軟件中斷不含單步中斷軟件中斷不含單步中斷 不可屏蔽中斷、不可屏蔽中斷、 可屏蔽中斷、可屏蔽中斷、 單步中斷。單步中斷。7.6 DMA 方式方式一、一、DMA 方式的特點(diǎn)及應(yīng)用方式的特點(diǎn)及應(yīng)用。CPU主主存存ACC 中斷接口
52、中斷接口DMA 接口接口I/O 設(shè)設(shè) 備備中斷方式數(shù)據(jù)傳送通路中斷方式數(shù)據(jù)傳送通路輸入指令輸入指令輸出指令輸出指令DMA方式數(shù)據(jù)傳送通路方式數(shù)據(jù)傳送通路2. DMA 與主存交換數(shù)據(jù)的三種方式與主存交換數(shù)據(jù)的三種方式主存工作時(shí)間主存工作時(shí)間CPU不執(zhí)行程序不執(zhí)行程序DMA不工作不工作DMA不工作不工作DMA工作工作 CPU控制控制并使用主存并使用主存 DMA控制控制并使用主存并使用主存t主存工作時(shí)間主存工作時(shí)間 CPU控制控制并使用主存并使用主存 DMA控制控制并使用主存并使用主存t主存工作時(shí)間主存工作時(shí)間 DMA控制控制并使用主存并使用主存 CPU控制控制并使用主存并使用主存t的特點(diǎn)及應(yīng)用的特
53、點(diǎn)及應(yīng)用1特點(diǎn):靠硬件控制傳送特點(diǎn):靠硬件控制傳送 不用保護(hù)現(xiàn)場(chǎng)不用保護(hù)現(xiàn)場(chǎng) 不具備處理故障的能力不具備處理故障的能力 優(yōu)先級(jí)高,響應(yīng)速度快優(yōu)先級(jí)高,響應(yīng)速度快2DMA應(yīng)用場(chǎng)合:用于高速數(shù)據(jù)傳送的場(chǎng)合應(yīng)用場(chǎng)合:用于高速數(shù)據(jù)傳送的場(chǎng)合 硬盤及軟盤的硬盤及軟盤的I/O接口接口 通信信道的通信信道的I/O接口接口 多處理機(jī)和多任務(wù)系統(tǒng)多處理機(jī)和多任務(wù)系統(tǒng) CRT掃描掃描二、二、DMA 接口的功能和組成接口的功能和組成(1) 向向 CPU 申請(qǐng)申請(qǐng) DMA 傳送傳送(2) 處理總線處理總線 控制權(quán)的轉(zhuǎn)交控制權(quán)的轉(zhuǎn)交(3) 管理管理 系統(tǒng)總線、系統(tǒng)總線、控制控制 數(shù)據(jù)傳送數(shù)據(jù)傳送(4) 確定確定 數(shù)據(jù)傳送的數(shù)據(jù)傳送的 首地址和長(zhǎng)度首地址和長(zhǎng)度(5) DMA 傳送結(jié)束時(shí),傳送結(jié)束時(shí),給出操作完成信號(hào)給出操作完成信號(hào)修正修正 傳送過程中的數(shù)據(jù)傳送過程中的數(shù)據(jù) 地址地址 和和 長(zhǎng)度長(zhǎng)度2.
溫馨提示
- 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. 人人文庫(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度健康體檢勞務(wù)合同解除標(biāo)準(zhǔn)指南
- 2025年度無人機(jī)技術(shù)研發(fā)與應(yīng)用合作資源協(xié)議書
- 二零二五年度藝術(shù)衍生品市場(chǎng)正規(guī)藝術(shù)家合作協(xié)議
- 二零二五年度塔吊安裝與吊裝作業(yè)安全保障協(xié)議
- 二零二五年度特色商業(yè)街車位包銷及夜間經(jīng)濟(jì)合同
- 2025年度智慧城市安防系統(tǒng)服務(wù)合同
- 二零二五年度會(huì)議室租賃及茶歇服務(wù)協(xié)議
- 水暖消防工程承包合同
- 小學(xué)生感恩教育故事感悟
- 超市日常運(yùn)營(yíng)管理服務(wù)合同
- 新統(tǒng)編版五年級(jí)下冊(cè)道德與法治全冊(cè)課時(shí)練一課一練(同步練習(xí))(含答案)
- 法律方法階梯PPT課件
- 計(jì)算機(jī)2級(jí)二級(jí)浙江旅游概述
- 《色彩基礎(chǔ)知識(shí)》PPT課件(完整版)
- 故事我把媽媽弄丟了ppt課件
- NACE產(chǎn)品金屬材料要求
- 布朗德戰(zhàn)略導(dǎo)向的薪酬管理體系
- 食品經(jīng)營(yíng)餐飲操作流程(共1頁)
- 中儲(chǔ)糧購(gòu)銷電子交易平臺(tái)成交合同
- SL/T212-2020 水工預(yù)應(yīng)力錨固技術(shù)規(guī)范_(高清-有效)
- 河北省省直行政事業(yè)單位資產(chǎn)(房屋)租賃合同書(共7頁)
評(píng)論
0/150
提交評(píng)論