版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第第章章 輸入輸出系統(tǒng)輸入輸出系統(tǒng) 5.6 DMA方式方式 5.5 程序中斷方式程序中斷方式 5.4 程序查詢方式程序查詢方式 5.3 I/O接口接口 5.2 外部設(shè)備外部設(shè)備 5.1 概述概述 重點:1、輸入輸出系統(tǒng)結(jié)構(gòu) 2、 I/O接口與端口 3、主機(jī)與I/O 交換的三種控制方式: 程序查詢、程序中斷和DMA。 難點:1、 I/O接口分析與設(shè)計(軟、硬) 2、中斷技術(shù)(CPU響應(yīng)中斷) 3、 DMA過程、DMA周期 5.1 概概 述述 I/O系統(tǒng):指外圍設(shè)備及其接口、通道、系統(tǒng):指外圍設(shè)備及其接口、通道、 輸入輸入/輸出處理器及輸入輸出處理器及輸入/輸出軟件。輸出軟件。 I/O系統(tǒng)解決問題
2、:對各種形式信息的輸系統(tǒng)解決問題:對各種形式信息的輸 入、輸出進(jìn)行轉(zhuǎn)換和控制。入、輸出進(jìn)行轉(zhuǎn)換和控制。 一、輸入輸出系統(tǒng)的發(fā)展概況一、輸入輸出系統(tǒng)的發(fā)展概況 1. 早期早期 分散連接分散連接 CPU 和和 I/O設(shè)備設(shè)備 串行串行 工作工作程序查詢方式程序查詢方式 2. 接口模塊和接口模塊和 DMA 階段階段 總線連接總線連接 CPU 和和 I/O設(shè)備設(shè)備 并行并行 工作工作 3. 具有通道結(jié)構(gòu)的階段具有通道結(jié)構(gòu)的階段 4. 具有具有 I/O 處理機(jī)的階段處理機(jī)的階段 中斷方式中斷方式 DMA 方式方式 二、輸入輸出系統(tǒng)的組成二、輸入輸出系統(tǒng)的組成 1. I/O 軟件軟件 (1) I/O 指令
3、指令 (2) 通道指令通道指令 CPU 指令的一部分指令的一部分 通道自身的指令通道自身的指令 指出數(shù)組的首地址、傳送字?jǐn)?shù)、操作命令指出數(shù)組的首地址、傳送字?jǐn)?shù)、操作命令 2. I/O 硬件硬件 設(shè)備設(shè)備I/O 接口接口 設(shè)備控制器設(shè)備控制器通道通道 操作碼操作碼命令碼命令碼設(shè)備碼設(shè)備碼 三、三、I/O 設(shè)備與主機(jī)的聯(lián)系方式設(shè)備與主機(jī)的聯(lián)系方式 1. I/O 設(shè)備編址方式設(shè)備編址方式 (1) 統(tǒng)一編址統(tǒng)一編址 (2) 不統(tǒng)一編址不統(tǒng)一編址 與訪存指令一致與訪存指令一致 有專門的有專門的 I/O 指令指令 2. 設(shè)備尋址設(shè)備尋址 識別或被選中識別或被選中 3. 傳送方式傳送方式 (1) 串行串行
4、(2) 并行并行 數(shù)據(jù)字?jǐn)?shù)據(jù)字命令字命令字命令字命令字 0 1 1 0 1 0 0 0 起始位起始位 終止位終止位 4. 聯(lián)絡(luò)方式(聯(lián)絡(luò)方式(I/O響應(yīng)方式)響應(yīng)方式) (1) 立即響應(yīng)立即響應(yīng) (2) 異步工作異步工作: 應(yīng)答信號應(yīng)答信號 “Ready” “Strobe” I/O 接接 口口 I/O 設(shè)設(shè) 備備 CPU (3) 同步工作同步工作: 同步時標(biāo)同步時標(biāo) 并行并行 串行串行 (幀)(幀) 5. I/O 設(shè)備與主機(jī)的連接方式設(shè)備與主機(jī)的連接方式 (1) 輻射式連接輻射式連接 (2) 總線連接總線連接 外設(shè)外設(shè) 外設(shè)外設(shè) 外設(shè)外設(shè) 主主 機(jī)機(jī) 每臺設(shè)備都配有一套每臺設(shè)備都配有一套 控制
5、線路和一組信號線控制線路和一組信號線 四、四、I/O設(shè)備與主機(jī)信息傳送的控制方式設(shè)備與主機(jī)信息傳送的控制方式 1. 程序查詢方式程序查詢方式 CPU 和和 I/O 串行工作串行工作 踏步等待踏步等待 CPU讀讀I/O狀態(tài)狀態(tài) 檢查狀態(tài)檢查狀態(tài) 未準(zhǔn)備就緒未準(zhǔn)備就緒出錯出錯 從從I/O接口中讀接口中讀 一個字到一個字到CPU 從從CPU向主存向主存 寫入一個字寫入一個字 CPU向向I/O發(fā)發(fā) 讀指令讀指令 CPU讀讀I/O狀態(tài)狀態(tài) 檢查狀態(tài)檢查狀態(tài) 完成否完成否 未準(zhǔn)備就緒未準(zhǔn)備就緒 現(xiàn)行程序現(xiàn)行程序 是是 出錯出錯 已準(zhǔn)備就緒已準(zhǔn)備就緒 否否 (I/O讀)讀) 2. 程序中斷方式程序中斷方式
6、I/O 工作工作 CPU 不查詢不查詢 CPU 暫停現(xiàn)行程序暫?,F(xiàn)行程序 自身準(zhǔn)備自身準(zhǔn)備 與主機(jī)交換信息與主機(jī)交換信息 CPU 和和 I/O 并行工作并行工作 啟動啟動 I/O設(shè)備設(shè)備 現(xiàn)行程序現(xiàn)行程序 中斷服務(wù)程序中斷服務(wù)程序 K K+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 向主存寫入一個字向主存寫入一個字CPU 主存主存
7、從從 I/O 接口中讀一個字到接口中讀一個字到CPUI/O CPU 中斷請求中斷請求 I/O CPU 出錯出錯 是是 否否 未錯未錯 3. 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請求請求啟動啟動I/O I/O準(zhǔn)備準(zhǔn)備I/O準(zhǔn)備準(zhǔn)備 一個存取周期一個存取周期 實現(xiàn)實現(xiàn)I/O與主存之間的傳送與主存之間的傳送 三種方式的三種方式的 CPU 工作效
8、率比較工作效率比較 存取周期結(jié)束存取周期結(jié)束 CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)行程序CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)行程序 DMA請求請求啟動啟動I/O I/O準(zhǔn)備準(zhǔn)備I/O準(zhǔn)備準(zhǔn)備 一個存取周期一個存取周期 實現(xiàn)實現(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)行程序 啟動啟動I/O I/O 準(zhǔn)備及傳送準(zhǔn)備及傳送 指令執(zhí)行周期結(jié)束指令執(zhí)行周期結(jié)束 CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)行程序CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)行程序 啟動啟動I/O中斷請求中斷請求 I/O準(zhǔn)備準(zhǔn)備 I/O準(zhǔn)備準(zhǔn)備 CPU 處理中斷服務(wù)
9、程序處理中斷服務(wù)程序 實現(xiàn)實現(xiàn) I/O 與主機(jī)之間的傳送與主機(jī)之間的傳送 間間 斷斷 啟動啟動I/O 啟動啟動I/O I/O準(zhǔn)備準(zhǔn)備 中斷請求中斷請求 啟動啟動I/O I/O準(zhǔn)備準(zhǔn)備 一個存取周期一個存取周期 DMA請求請求 程序程序 查詢查詢 方式方式 程序程序 中斷中斷 方式方式 DMA 方式方式 I/O 準(zhǔn)備及傳送準(zhǔn)備及傳送 間間 斷斷 I/O準(zhǔn)備準(zhǔn)備 I/O準(zhǔn)備準(zhǔn)備 5.2 I/O設(shè)備設(shè)備 主機(jī)主機(jī) 設(shè)備設(shè)備 控制器控制器 機(jī)、電機(jī)、電 磁、光磁、光 部分部分 I/O 接接 口口 外部設(shè)備外部設(shè)備 外部設(shè)備大致分三類外部設(shè)備大致分三類: 鍵盤、鼠標(biāo)、打印機(jī)、顯示器鍵盤、鼠標(biāo)、打印機(jī)、顯
10、示器 磁盤、光盤、磁帶磁盤、光盤、磁帶 1. 人機(jī)交互設(shè)備人機(jī)交互設(shè)備 2. 信息存儲設(shè)備信息存儲設(shè)備 3. 通信設(shè)備通信設(shè)備調(diào)制解調(diào)器等調(diào)制解調(diào)器等 單單CPU 多采用中斷控制方式多采用中斷控制方式 5.3 I/O 接接 口口 一、概述一、概述 接口:接口: 兩個系統(tǒng)或兩個部件的交接部分。兩個系統(tǒng)或兩個部件的交接部分。 I/O接口:接口: 主機(jī)與主機(jī)與I/O設(shè)備之間的硬件電設(shè)備之間的硬件電 路及其相應(yīng)控制軟件。路及其相應(yīng)控制軟件。 I/O接口功能或作用:接口功能或作用: 1. 實現(xiàn)設(shè)備的選擇實現(xiàn)設(shè)備的選擇 2. 實現(xiàn)數(shù)據(jù)緩沖達(dá)到速度匹配實現(xiàn)數(shù)據(jù)緩沖達(dá)到速度匹配 4. 實現(xiàn)電平轉(zhuǎn)換實現(xiàn)電平轉(zhuǎn)換
11、 5. 傳送控制命令傳送控制命令 6. 反映設(shè)備的狀態(tài)(反映設(shè)備的狀態(tài)(“忙忙”、“就緒就緒”、“中斷請求中斷請求”) 3. 實現(xiàn)數(shù)據(jù)串實現(xiàn)數(shù)據(jù)串 并格式轉(zhuǎn)換并格式轉(zhuǎn)換 I/O接口結(jié)構(gòu):接口結(jié)構(gòu): I/O 設(shè)設(shè) 備備 DR CR SR 主主 機(jī)機(jī) CB DB AB 狀態(tài)狀態(tài) 命令命令 數(shù)據(jù)數(shù)據(jù) 端口:端口:CPU可通過軟件或指令訪問的接口內(nèi)部可通過軟件或指令訪問的接口內(nèi)部 寄存器或電路。寄存器或電路。 數(shù)據(jù)端口數(shù)據(jù)端口 命令端口命令端口 狀態(tài)端口狀態(tài)端口 數(shù)字量數(shù)字量 模擬量模擬量 開關(guān)量開關(guān)量 CPU按地址訪問端口按地址訪問端口 端口信息一般通過端口信息一般通過DB傳送傳送 命令寄存器命令寄
12、存器 和命令譯碼器和命令譯碼器 設(shè)備選擇設(shè)備選擇 電路電路 設(shè)備狀態(tài)設(shè)備狀態(tài) 標(biāo)記標(biāo)記 數(shù)據(jù)緩沖數(shù)據(jù)緩沖 寄存器寄存器DBR 控制邏輯電路 控制邏輯電路 I/O接口接口 外外 部部 設(shè)設(shè) 備備 數(shù)據(jù)線數(shù)據(jù)線 命令命令 狀態(tài)狀態(tài) DB CB CPU AB 二、接口基本組成二、接口基本組成 三、接口類型三、接口類型(標(biāo)準(zhǔn)化)(標(biāo)準(zhǔn)化) 并行接口并行接口 串行接口串行接口 可編程接口可編程接口 不可編程接口不可編程接口 通用接口通用接口 專用接口專用接口 1. 按數(shù)據(jù)按數(shù)據(jù) 傳送方式傳送方式 分類分類 2. 按功能按功能 選擇的靈活性選擇的靈活性 分類分類 3. 按按 通用性通用性 分類分類 4.
13、按數(shù)據(jù)傳送的按數(shù)據(jù)傳送的 控制方式控制方式 分類分類 中斷接口中斷接口 DMA 接口接口 Intel 8255 Intel 8251 Intel 8255、 Intel 8251 Intel 8212 Intel 8255、 Intel 8251 Intel 8279 Intel 8259 Intel 8237 I/O 設(shè)設(shè) 備備 DR CR SR 主主 機(jī)機(jī) CB DB AB 狀態(tài)狀態(tài) 命令命令 數(shù)據(jù)數(shù)據(jù) 端口:端口:CPU可訪問的接口內(nèi)部寄存器或電路??稍L問的接口內(nèi)部寄存器或電路。 數(shù)字量數(shù)字量 模擬量模擬量 開關(guān)量開關(guān)量 CPU按地址訪問端口按地址訪問端口 I/O接口接口 命令寄存器命令
14、寄存器 和命令譯碼器和命令譯碼器 設(shè)備選擇設(shè)備選擇 電路電路 設(shè)備狀態(tài)設(shè)備狀態(tài) 標(biāo)記標(biāo)記 數(shù)據(jù)緩沖數(shù)據(jù)緩沖 寄存器寄存器DBR 控制邏輯電路 控制邏輯電路 I/O接口接口 外外 部部 設(shè)設(shè) 備備 數(shù)據(jù)線數(shù)據(jù)線 命令命令 狀態(tài)狀態(tài) DB CB CPU AB 接口基本組成接口基本組成: 5.4 程序查詢方式程序查詢方式 一、程序查詢流程一、程序查詢流程 檢查狀態(tài)標(biāo)記檢查狀態(tài)標(biāo)記1 設(shè)備設(shè)備1 準(zhǔn)備就緒?準(zhǔn)備就緒? 檢查狀態(tài)標(biāo)記檢查狀態(tài)標(biāo)記N 設(shè)備設(shè)備N 準(zhǔn)備就緒?準(zhǔn)備就緒? 處理設(shè)備處理設(shè)備1 是是 否否 否否 處理設(shè)備處理設(shè)備N 是是 檢查狀態(tài)標(biāo)記檢查狀態(tài)標(biāo)記 交換數(shù)據(jù)交換數(shù)據(jù) 準(zhǔn)備就緒準(zhǔn)備就緒
15、? 是是 否否 單個設(shè)備單個設(shè)備 多個設(shè)備多個設(shè)備 測測 試試 指指 令令 轉(zhuǎn)轉(zhuǎn) 移移 指指 令令 傳傳 送送 指指 令令 數(shù)據(jù)傳送的實質(zhì):數(shù)據(jù)傳送的實質(zhì): M I/O 設(shè)備選擇電路設(shè)備選擇電路 DBR QQ & 數(shù)據(jù)線數(shù)據(jù)線 準(zhǔn)備就緒準(zhǔn)備就緒 啟動命令啟動命令 地址線地址線 SEL 輸入數(shù)據(jù)輸入數(shù)據(jù) 啟動設(shè)備啟動設(shè)備 設(shè)備工作設(shè)備工作 結(jié)束結(jié)束 DB 二、程序查詢方式的接口電路二、程序查詢方式的接口電路 1 0 1 0 以輸入為例:以輸入為例: 模型機(jī)指令格式: 操作碼操作碼地址碼地址碼 OP(6b)Ad(10b) 可操作類型 (指令個數(shù)) 26 可訪問外部空間 210 (000H-3FFH
16、) 查詢工作方式舉例查詢工作方式舉例1: 存儲器空間: (000H-3EFH) I/O空間: (3F0H-3FFH) 功能功能 指令指令 助記符助記符 操作碼操作碼 地址碼地址碼 ACC M000001LDA M M ACC000010STA M ACCACC+ M 000011ADD M ACC ACC *M000100MUL M 打印打印 M 000101PRT M 停機(jī)停機(jī)000110HALT Z ACC ACCDataAND #Data Z=1 PC addrJZ addr 指令系統(tǒng): 某設(shè)備通過查詢式I/O接口與模型機(jī)交換 信息。 I/O接口控制端口地址為3F0H, 控制端口的寫操作
17、表示啟動設(shè)備命令; 狀態(tài)端口地址為3F1H,狀態(tài)端口中D0為 1表示輸入緩沖區(qū)中有一個字?jǐn)?shù)據(jù)準(zhǔn)備好, 可以輸入數(shù)據(jù); 數(shù)據(jù)端口地址為3F2H 。 試設(shè)計接口原理電路; 試設(shè)計接口程序?qū)崿F(xiàn)查詢式輸入一個字 數(shù)據(jù),并將數(shù)據(jù)存入200H存儲單元。 設(shè)備選擇電路設(shè)備選擇電路 DBR QQ & 數(shù)據(jù)線數(shù)據(jù)線 準(zhǔn)備就緒準(zhǔn)備就緒 啟動命令啟動命令 地址線地址線 SEL 輸入數(shù)據(jù)輸入數(shù)據(jù) 啟動設(shè)備啟動設(shè)備 設(shè)備工作設(shè)備工作 結(jié)束結(jié)束 DB 通用接口: 模型機(jī)查詢式I/O輸入接口: 3F0H3F0H 3F1H3F1H 3F2H3F2H STA 3F0H LOOP: LDA 3F1H AND #0001H JZ
18、LOOP LDA 3F2H STA 200H HALT 模型機(jī)查詢式模型機(jī)查詢式I/OI/O輸入接口程序:輸入接口程序: 5.5 程序中斷方式程序中斷方式 一、中斷的概念一、中斷的概念 K K+1 Q Q+1 中斷服務(wù)程序中斷服務(wù)程序 1 中斷服務(wù)程序中斷服務(wù)程序 2 入口入口1 入口入口2 斷點斷點 保護(hù)保護(hù) 中斷響應(yīng):當(dāng)中斷響應(yīng):當(dāng) 前指令執(zhí)行結(jié)束前指令執(zhí)行結(jié)束 中斷服務(wù)中斷服務(wù) 程序入口程序入口 中斷中斷 請求管請求管 理理 二、程序中斷方式的接口電路二、程序中斷方式的接口電路 1. 中斷請求觸發(fā)器和中斷屏蔽觸發(fā)器中斷請求觸發(fā)器和中斷屏蔽觸發(fā)器 D Q & 1 INTR 中斷請求觸發(fā)器中
19、斷請求觸發(fā)器 INTR = 1 有請求有請求 MASK 中斷屏蔽觸發(fā)器中斷屏蔽觸發(fā)器 MASK = 1 被屏蔽被屏蔽 來自來自 CPU 的中斷查詢的中斷查詢 信號信號 (當(dāng)前指令當(dāng)前指令 執(zhí)行結(jié)束執(zhí)行結(jié)束) INTR D MASK Q D: 完成觸發(fā)器完成觸發(fā)器 中斷請求中斷請求 INTRi ? ? 外設(shè)外設(shè) 發(fā)出中斷發(fā)出中斷 請求條件請求條件 2. 排隊器排隊器 排隊排隊 -鏈?zhǔn)脚抨犉麈準(zhǔn)脚抨犉饔布布?軟件軟件 INTP1INTP2INTP3INTP4 INTR1INTR2INTR3INTR4 1& 1& 1& 1& INTR1 設(shè)備設(shè)備 1#、2#、3#、4# 優(yōu)先級按優(yōu)先級按 降序排列
20、降序排列 INTRi = 1 有請求有請求 即即 INTRi = 0 1 INTP1 1 INTP2 1 INTP3 1 INTP4 & INTR1INTR2INTR3INTR4 INTR1INTR2INTR3INTR4 1& 1& 1& 1& INTP1INTP2INTP3INTP4 INTR2INTR1 INTR1INTR2 1 & INTP2 2. 排隊器排隊器 排隊排隊 鏈?zhǔn)脚抨犉麈準(zhǔn)脚抨犉饔布布?軟件軟件 3. 中斷向量地址形成部件中斷向量地址形成部件 入口地址入口地址 向量地址向量地址 排隊器輸出排隊器輸出 由軟件產(chǎn)生由軟件產(chǎn)生 硬件向量法硬件向量法 顯示器服務(wù)程序顯示器服務(wù)程序
21、 打印機(jī)服務(wù)程序打印機(jī)服務(wù)程序 JMP 400 JMP 300 JMP 200 主存主存 12H 13H 14H 200 300 向量地址向量地址 入口地址入口地址 入口地址入口地址 中斷向量地址中斷向量地址 形成部件形成部件 設(shè)備設(shè)備 編碼器編碼器 1 0 0 0 00010010 0 1 0 0 00010011 由由 硬件硬件 產(chǎn)生產(chǎn)生 向量地址向量地址 再由再由 向量地址向量地址 找到找到 入口地址入口地址 中斷向量:一個由中斷源直接提供的地址,中斷向量:一個由中斷源直接提供的地址, 利用此地址可以找到相應(yīng)中斷服務(wù)程序入口利用此地址可以找到相應(yīng)中斷服務(wù)程序入口 地址。地址。 中斷向量表
22、:由各中斷服務(wù)程序入口地址組中斷向量表:由各中斷服務(wù)程序入口地址組 成的一張表,通常被存放在內(nèi)存制定區(qū)域。成的一張表,通常被存放在內(nèi)存制定區(qū)域。 中斷向量傳遞:通過中斷向量傳遞:通過DB。 中斷向量中斷向量中斷服務(wù)程序入口地址:中斷服務(wù)程序入口地址: 轉(zhuǎn)移指令或中斷向量表查閱指令轉(zhuǎn)移指令或中斷向量表查閱指令 P197 例例5.2 INTPA INTPB INTPC D5 D4 D3 D2 D1 D0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 1 1 0 0 1 0 0 1 1 0 0 EN 1 1 1 0 0 0 0 z z z z z z 排隊目的:中斷響應(yīng)周期,優(yōu)先級
23、高的排隊目的:中斷響應(yīng)周期,優(yōu)先級高的INTRi發(fā)發(fā) 出中斷向量地址。出中斷向量地址。 外設(shè)發(fā)出中斷請求信號外設(shè)發(fā)出中斷請求信號 三、三、I/O 中斷處理過程中斷處理過程 1. CPU 響應(yīng)中斷的條件和時間響應(yīng)中斷的條件和時間 (1) 條件條件 (2) 時間時間 允許中斷觸發(fā)器允許中斷觸發(fā)器 EINT = 1 (用(用 開中斷開中斷 指令將指令將 EINT 置置 “1”) (用(用 關(guān)中斷關(guān)中斷 指令將指令將 EINT 置置“ 0” 或硬件或硬件 自動復(fù)自動復(fù) 位)位) 當(dāng)前指令執(zhí)行結(jié)束當(dāng)前指令執(zhí)行結(jié)束 設(shè)備選擇電路設(shè)備選擇電路 DBR D Q & 數(shù)據(jù)線數(shù)據(jù)線 啟動命令啟動命令 地址線地址線
24、 SEL 輸入數(shù)據(jù)輸入數(shù)據(jù) 啟動設(shè)備啟動設(shè)備 設(shè)備工作設(shè)備工作 結(jié)束結(jié)束 & 1 Q Q D INTR B Q Q MASK 設(shè)備編碼器設(shè)備編碼器 排隊器排隊器 中斷查詢中斷查詢 來自高一級來自高一級 的排隊器的排隊器 至低一級至低一級 的排隊器的排隊器 向量地址向量地址 中斷響應(yīng)中斷響應(yīng) INTA 中斷請求中斷請求 INTR 命令譯碼命令譯碼 2. I/O 中斷處理過程中斷處理過程 10 & DBR 設(shè)備選擇電路設(shè)備選擇電路 01 以輸入為例以輸入為例 四、中斷服務(wù)程序流程四、中斷服務(wù)程序流程 1. 中斷服務(wù)程序的流程中斷服務(wù)程序的流程 (1) 保護(hù)現(xiàn)場保護(hù)現(xiàn)場 (2) 中斷服務(wù)中斷服務(wù) (
25、3) 恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場 (4) 中斷返回中斷返回 對不同的對不同的 I/O 設(shè)備具有不同內(nèi)容的設(shè)備服務(wù)設(shè)備具有不同內(nèi)容的設(shè)備服務(wù) 中斷返回指令中斷返回指令 中斷隱指令完成中斷隱指令完成 進(jìn)棧指令進(jìn)棧指令 出棧指令出棧指令 程序斷點的保護(hù)程序斷點的保護(hù) 寄存器內(nèi)容等的保護(hù)寄存器內(nèi)容等的保護(hù) 隱指令隱指令:沒有操作碼,不能供編程使用,僅:沒有操作碼,不能供編程使用,僅CPU 執(zhí)行的硬件指令。執(zhí)行的硬件指令。 中斷隱指令中斷隱指令:一條指令執(zhí)行完成后,:一條指令執(zhí)行完成后,CPU為響為響 應(yīng)中斷,插入的幾個執(zhí)行步驟(總線周期),構(gòu)應(yīng)中斷,插入的幾個執(zhí)行步驟(總線周期),構(gòu) 成中斷周期,完成關(guān)中斷、斷
26、點進(jìn)棧、中斷服務(wù)成中斷周期,完成關(guān)中斷、斷點進(jìn)棧、中斷服務(wù) 入口地址傳送等工作。入口地址傳送等工作。 中斷周期、中斷服務(wù)、中斷服務(wù)流程中斷周期、中斷服務(wù)、中斷服務(wù)流程 四、中斷服務(wù)程序流程四、中斷服務(wù)程序流程 2. 單重中斷和多重中斷單重中斷和多重中斷(中斷嵌套中斷嵌套) 不允許中斷不允許中斷 現(xiàn)行的現(xiàn)行的 中斷服務(wù)程序中斷服務(wù)程序單重單重 中斷中斷 多重多重 中斷中斷 允許級別更高允許級別更高 的中斷源的中斷源 中斷中斷 現(xiàn)行的現(xiàn)行的 中斷服務(wù)程序中斷服務(wù)程序 中斷否?中斷否? 保護(hù)現(xiàn)場保護(hù)現(xiàn)場 設(shè)備服務(wù)設(shè)備服務(wù) 恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場 開中斷開中斷 中斷返回中斷返回 取指令取指令 執(zhí)行指令執(zhí)行指
27、令 中斷服務(wù) 中斷服務(wù) 中斷響應(yīng)中斷響應(yīng) 程序斷點進(jìn)棧程序斷點進(jìn)棧 關(guān)中斷關(guān)中斷 向量地址向量地址 PC 中斷周期中斷周期 是是 中斷返回中斷返回 保護(hù)現(xiàn)場保護(hù)現(xiàn)場 設(shè)備服務(wù)設(shè)備服務(wù) 恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場 開中斷開中斷 開中斷開中斷 開中斷開中斷 中斷隱指令中斷隱指令 中斷隱指令中斷隱指令 否否 取指令取指令 執(zhí)行指令執(zhí)行指令 中斷否?中斷否? 否否 中斷響應(yīng)中斷響應(yīng) 程序斷點進(jìn)棧程序斷點進(jìn)棧 關(guān)中斷關(guān)中斷 向量地址向量地址 PC 中斷周期中斷周期 是是 中斷服務(wù) 中斷服務(wù) 單重單重 : 多重:多重: 程序中斷接口芯片程序中斷接口芯片 Intel 8259A 的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu): 內(nèi)部總線內(nèi)部總
28、線 緩沖器緩沖器 讀讀 / 寫寫 邏邏 輯輯 級聯(lián)緩沖級聯(lián)緩沖 器器/比較器比較器 優(yōu)先權(quán)優(yōu)先權(quán) 比較器比較器 ( PR ) 中斷中斷 服務(wù)服務(wù) 寄存寄存 器器 (ISR) 中斷中斷 請求請求 寄存寄存 器器 (IRR) 中斷屏蔽寄存器中斷屏蔽寄存器 (IMR) 控制邏輯控制邏輯 INT INTA D7D0 A0 RD WR CS CAS0 CAS1 CAS2 SP/EN IR0 IR1 IR2 IR3 IR4 IR5 IR6 IR7 內(nèi)部總線內(nèi)部總線 5.6 DMA 方式方式 一、一、DMA 方式的特點方式的特點 1. DMA 和程序中斷兩種方式的數(shù)據(jù)通路和程序中斷兩種方式的數(shù)據(jù)通路 CPU
29、 主主 存存 ACC 中斷接口中斷接口 DMA 接口接口 I/O 設(shè)設(shè) 備備 中斷方式數(shù)據(jù)傳送通路中斷方式數(shù)據(jù)傳送通路 輸入指令輸入指令 輸出指令輸出指令 DMA方式數(shù)據(jù)傳送通路方式數(shù)據(jù)傳送通路 DMACDMAC 主設(shè)備主設(shè)備 2. DMA 數(shù)據(jù)傳送過程數(shù)據(jù)傳送過程: 硬件方式(硬件方式(DMAC);); 不中斷不中斷CPU現(xiàn)行程序執(zhí)行;現(xiàn)行程序執(zhí)行; 存在存在CPU與與DMA同時訪問主存的沖突。同時訪問主存的沖突。 3. DMA 與主存交換數(shù)據(jù)的三種方式與主存交換數(shù)據(jù)的三種方式 DMA 訪問主存有三種可能:訪問主存有三種可能: CPU 此時不訪存此時不訪存 CPU 正在訪存正在訪存-等待等待
30、CPU訪問結(jié)束訪問結(jié)束 CPU 與與 DMA 同時請求訪存同時請求訪存-I/O訪問優(yōu)先訪問優(yōu)先 CPU 將總線控制權(quán)讓給將總線控制權(quán)讓給 DMAC (1) 停止停止 CPU 訪問主存訪問主存 控制簡單控制簡單 CPU 處于不能訪問主存或保持狀態(tài)處于不能訪問主存或保持狀態(tài) 未充分發(fā)揮未充分發(fā)揮 CPU 對主存的利用率對主存的利用率 主存工作時間主存工作時間 CPU不能訪問主存不能訪問主存 DMA不工作不工作DMA不工作不工作 DMA工作工作 CPU控制控制 并使用主存并使用主存 DMA控制控制 并使用主存并使用主存 t 3. DMA 與主存交換數(shù)據(jù)的三種方式與主存交換數(shù)據(jù)的三種方式 (2) 周期
31、挪用(或周期竊?。┲芷谂灿茫ɑ蛑芷诟`取) 主存工作時間主存工作時間 CPU控制控制 并使用主存并使用主存 DMA控制控制 并使用主存并使用主存 t (2) 需需申請申請-建立建立-(傳送傳送)-歸還歸還 總線使總線使 用權(quán),用權(quán), 形成形成DMA周期。周期。 (3) DMA 與與 CPU 交替訪問交替訪問 主存工作時間主存工作時間 DMA控制控制 并使用主存并使用主存 CPU控制控制 并使用主存并使用主存 t CPU 工作周期工作周期 C1 專供專供 DMA 訪存訪存 C2 專供專供 CPU 訪存訪存 所有指令執(zhí)行過程中的一個基準(zhǔn)時間所有指令執(zhí)行過程中的一個基準(zhǔn)時間 不需要不需要 申請建立和歸
32、還申請建立和歸還 總線的使用權(quán)總線的使用權(quán) 二、二、DMA 接口的功能和組成接口的功能和組成 1. DMA 接口功能接口功能 (1) 向向 CPU 申請申請 DMA 傳送傳送 (2) 處理總線處理總線 控制權(quán)的轉(zhuǎn)交控制權(quán)的轉(zhuǎn)交 (3) 管理管理 系統(tǒng)總線、系統(tǒng)總線、控制控制 數(shù)據(jù)傳送數(shù)據(jù)傳送 確定確定 數(shù)據(jù)傳送的數(shù)據(jù)傳送的 首地址和長度首地址和長度 (4 ) DMA 傳送結(jié)束時,給出操作完成信號。傳送結(jié)束時,給出操作完成信號。 修正修正 傳送過程中的數(shù)據(jù)傳送過程中的數(shù)據(jù) 地址地址 和和 長度長度 DMA接口接口 主主 存存 CPU 2. DMA 接口組成接口組成 DMA 控控 制制 邏邏 輯輯
33、 中中 斷斷 機(jī)機(jī) 構(gòu)構(gòu) 設(shè)備設(shè)備 HLDA AR WC DAR HRQ 中斷請求中斷請求 +1 +1 溢出信號溢出信號 DREQ DACK BR 啟動啟動 三、三、DMA 的工作過程的工作過程 預(yù)處理預(yù)處理-數(shù)據(jù)傳送數(shù)據(jù)傳送-后處理后處理 (1) 預(yù)處理預(yù)處理(啟動啟動 DMAC) 通過幾條輸入輸出指令預(yù)置如下信息通過幾條輸入輸出指令預(yù)置如下信息 通知通知 DMA 控制邏輯傳送方向(入控制邏輯傳送方向(入/出)出) 設(shè)備地址設(shè)備地址 DMA 的的 DAR 主存地址主存地址 DMA 的的 AR 傳送字?jǐn)?shù)傳送字?jǐn)?shù) DMA 的的 WC 啟動啟動 I/O (2) DMA 數(shù)據(jù)傳送(數(shù)據(jù)傳送( DMA
34、周期周期 ) 申請申請:外設(shè)準(zhǔn)備結(jié)束且允許,通過:外設(shè)準(zhǔn)備結(jié)束且允許,通過DMAC 提出提出DMA請求;請求; 建立建立:CPU響應(yīng)響應(yīng)DMA后,后,DMAC接管總線;接管總線; (CPU DMA響應(yīng)時間條件:響應(yīng)時間條件: 任一存取周期結(jié)束任一存取周期結(jié)束) 傳送傳送:發(fā)送主存地址、傳送數(shù)據(jù);:發(fā)送主存地址、傳送數(shù)據(jù); 修改主存地址及數(shù)據(jù)長度;修改主存地址及數(shù)據(jù)長度; 傳送結(jié)束,向傳送結(jié)束,向CPU申請后處理中斷申請后處理中斷 并并歸還歸還總線??偩€。 預(yù)處理預(yù)處理: 主存起始地址主存起始地址 設(shè)備地址設(shè)備地址 傳送數(shù)據(jù)個數(shù)傳送數(shù)據(jù)個數(shù) 啟動設(shè)備啟動設(shè)備 DMA DMA DMA 數(shù)據(jù)傳送數(shù)據(jù)
35、傳送: 繼續(xù)執(zhí)行主程序繼續(xù)執(zhí)行主程序 同時完成一批數(shù)據(jù)傳送同時完成一批數(shù)據(jù)傳送 后處理后處理: 中斷服務(wù)程序中斷服務(wù)程序 做做 DMA 結(jié)束處理結(jié)束處理 繼續(xù)執(zhí)行主程序繼續(xù)執(zhí)行主程序 CPU DMA 傳送過程示意圖:傳送過程示意圖: 允許傳送?允許傳送? 主存地址送總線主存地址送總線 數(shù)據(jù)送數(shù)據(jù)送I/O設(shè)備(或主存設(shè)備(或主存 ) 修改修改 主存地址主存地址 修改修改 字計數(shù)器字計數(shù)器 數(shù)據(jù)塊數(shù)據(jù)塊 傳送結(jié)束?傳送結(jié)束? 向向CPU申請申請 程序中斷程序中斷 DMA請求請求 否否 否否 是是 是是 數(shù)據(jù)傳送數(shù)據(jù)傳送 BR 設(shè)備設(shè)備 DMA 控控 制制 邏邏 輯輯 中中 斷斷 機(jī)機(jī) 構(gòu)構(gòu) AR
36、WC DAR DMA接口接口 主主 存存 CPU +1 +1 數(shù)據(jù)傳送過程(輸入)數(shù)據(jù)傳送過程(輸入) DREQ HRQ HLDA 地址線地址線 DACK 數(shù)據(jù)線數(shù)據(jù)線 溢出信號溢出信號 中斷請中斷請 求求 AR WC +1 +1 BRBRBRBRBR 啟動啟動 (3) 后處理后處理 校驗送入主存的數(shù)是否正確;校驗送入主存的數(shù)是否正確; 停止停止I/O; 測試傳送過程是否正確,錯則轉(zhuǎn)診斷程序;測試傳送過程是否正確,錯則轉(zhuǎn)診斷程序; 由中斷服務(wù)程序完成由中斷服務(wù)程序完成 停止停止 DMAC,結(jié)束一次,結(jié)束一次DMA過程。過程。 例例5.3:(P208) 四、四、DMA 接口的類型接口的類型 1. 選擇型選擇型在在 物理上物理上
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年外研銜接版五年級語文上冊月考試卷含答案
- 2025年人教版七年級物理上冊月考試卷
- 二零二五年度職業(yè)學(xué)校小賣部經(jīng)營管理合同3篇
- 二零二五年度瓷磚銷售區(qū)域保護(hù)合同4篇
- 二零二五年度化妝品代銷采購合同標(biāo)準(zhǔn)3篇
- 2025年人教版PEP九年級物理上冊階段測試試卷含答案
- 2025年水電工專業(yè)培訓(xùn)與承包服務(wù)合同3篇
- 2025年新科版六年級數(shù)學(xué)下冊月考試卷含答案
- 2025年度西瓜采摘園生態(tài)旅游合作合同3篇
- 虛擬化網(wǎng)絡(luò)安全性分析-洞察分析
- 第22單元(二次函數(shù))-單元測試卷(2)-2024-2025學(xué)年數(shù)學(xué)人教版九年級上冊(含答案解析)
- 藍(lán)色3D風(fēng)工作總結(jié)匯報模板
- 安全常識課件
- 河北省石家莊市2023-2024學(xué)年高一上學(xué)期期末聯(lián)考化學(xué)試題(含答案)
- 2024年江蘇省導(dǎo)游服務(wù)技能大賽理論考試題庫(含答案)
- 2024年中考英語閱讀理解表格型解題技巧講解(含練習(xí)題及答案)
- 新版中國食物成分表
- 浙江省溫州市溫州中學(xué)2025屆數(shù)學(xué)高二上期末綜合測試試題含解析
- 2024年山東省青島市中考生物試題(含答案)
- 保安公司市場拓展方案-保安拓展工作方案
- GB/T 15843.2-2024網(wǎng)絡(luò)安全技術(shù)實體鑒別第2部分:采用鑒別式加密的機(jī)制
評論
0/150
提交評論