版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 第第8章章 輸入輸出輸入輸出 系統(tǒng)系統(tǒng) 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 第第8章章 計(jì)算機(jī)的輸入輸出系統(tǒng)是整個(gè)計(jì)算計(jì)算機(jī)的輸入輸出系統(tǒng)是整個(gè)計(jì)算 機(jī)系統(tǒng)中最具有多樣性和復(fù)雜性的部機(jī)系統(tǒng)中最具有多樣性和復(fù)雜性的部 分,本章首先介紹主機(jī)與外設(shè)之間的分,本章首先介紹主機(jī)與外設(shè)之間的 連接問題,接著重點(diǎn)介紹程序查詢方連接問題,接著重點(diǎn)介紹程序查詢方 式、程序中斷方式、式、程序中斷方式、DMA方式和通道方式和通道 方式。方式。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9
2、 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 8.1.1 輸入輸出接口輸入輸出接口 主機(jī)和外設(shè)的連接方式有輻射型連接、主機(jī)和外設(shè)的連接方式有輻射型連接、 總線型連接等。輸入總線型連接等。輸入/輸出接口(輸出接口(I/O接口)接口) 是主機(jī)和外設(shè)之間的交接界面,通過接口是主機(jī)和外設(shè)之間的交接界面,通過接口 可以實(shí)現(xiàn)主機(jī)和外設(shè)之間的信息交換??梢詫?shí)現(xiàn)主機(jī)和外設(shè)之間的信息交換。 主機(jī)和外設(shè)各自具有自己的工作特點(diǎn),主機(jī)和外設(shè)各自具有自己的工作特點(diǎn), 它們在信息形式和工作速度上具有很大的它們在信息形式和工作速度上具有很大的 差異,接口正是為了解決這些差異而設(shè)置差異,接口正
3、是為了解決這些差異而設(shè)置 的。的。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 主機(jī)和外設(shè)之間需要交換的信息主機(jī)和外設(shè)之間需要交換的信息有:有: 1. 數(shù)據(jù)信息數(shù)據(jù)信息 這類信息可以是通過輸入設(shè)備送到計(jì)這類信息可以是通過輸入設(shè)備送到計(jì) 算機(jī)的輸入數(shù)據(jù),也可以是經(jīng)過計(jì)算機(jī)運(yùn)算算機(jī)的輸入數(shù)據(jù),也可以是經(jīng)過計(jì)算機(jī)運(yùn)算 處理和加工后,送到輸出設(shè)備的結(jié)果數(shù)據(jù)。處理和加工后,送到輸出設(shè)備的結(jié)果數(shù)據(jù)。 傳送可以是并行的,也可以是串行的。傳送可以是并行的,也可以是串行的。 2. 控制信息控制信息 這是這是CPU對外設(shè)的控制信息或管
4、理命對外設(shè)的控制信息或管理命 令,如外設(shè)的啟動(dòng)和停止控制、令,如外設(shè)的啟動(dòng)和停止控制、 輸入或輸輸入或輸 出操作的指定、工作方式的選擇、中斷功能出操作的指定、工作方式的選擇、中斷功能 的允許和禁止等。的允許和禁止等。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 3. 狀態(tài)信息狀態(tài)信息 這類信息用來標(biāo)志外設(shè)的工作狀態(tài),這類信息用來標(biāo)志外設(shè)的工作狀態(tài), 比如,輸入設(shè)備數(shù)據(jù)準(zhǔn)備好標(biāo)志,輸出設(shè)備比如,輸入設(shè)備數(shù)據(jù)準(zhǔn)備好標(biāo)志,輸出設(shè)備 忙閑標(biāo)志等。忙閑標(biāo)志等。CPU在必要時(shí)可通過對它的查在必要時(shí)可通過對它的查 詢來決定下一步
5、的操作。詢來決定下一步的操作。 4. 聯(lián)絡(luò)信息聯(lián)絡(luò)信息 這是主機(jī)和外設(shè)間工作的時(shí)間配合信這是主機(jī)和外設(shè)間工作的時(shí)間配合信 息,它與主機(jī)和外設(shè)間的信息交換方式密切息,它與主機(jī)和外設(shè)間的信息交換方式密切 相關(guān)。通過聯(lián)絡(luò)信息可以決定不同工作速度相關(guān)。通過聯(lián)絡(luò)信息可以決定不同工作速度 的外設(shè)和主機(jī)之間交換信息的最佳時(shí)刻,以的外設(shè)和主機(jī)之間交換信息的最佳時(shí)刻,以 保證整個(gè)計(jì)算機(jī)系統(tǒng)能統(tǒng)一協(xié)調(diào)地工作。保證整個(gè)計(jì)算機(jī)系統(tǒng)能統(tǒng)一協(xié)調(diào)地工作。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 5. 外設(shè)識別信息外設(shè)識別信息 這是這是I/O
6、尋址的信息,使尋址的信息,使CPU能從眾能從眾 多的外設(shè)中尋找出與自己進(jìn)行信息交換的多的外設(shè)中尋找出與自己進(jìn)行信息交換的 唯唯一外部設(shè)備。一外部設(shè)備。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 8.1.2 接口的功能和基本組成接口的功能和基本組成 1. 接口的功能接口的功能 (1) 實(shí)現(xiàn)主機(jī)和外設(shè)的通信聯(lián)絡(luò)控制實(shí)現(xiàn)主機(jī)和外設(shè)的通信聯(lián)絡(luò)控制 接口中的同步控制電路用來解決主機(jī)接口中的同步控制電路用來解決主機(jī) 與外設(shè)的時(shí)間配合問題。與外設(shè)的時(shí)間配合問題。 (2) 進(jìn)行地址譯碼和設(shè)備選擇進(jìn)行地址譯碼和設(shè)備選擇 當(dāng)當(dāng)CPU
7、送來選擇外設(shè)的地址碼后,接送來選擇外設(shè)的地址碼后,接 口必須對地址進(jìn)行譯碼以產(chǎn)生設(shè)備選擇信口必須對地址進(jìn)行譯碼以產(chǎn)生設(shè)備選擇信 息,使主機(jī)能和指定外設(shè)交換信息。息,使主機(jī)能和指定外設(shè)交換信息。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 (3) 實(shí)現(xiàn)數(shù)據(jù)緩沖實(shí)現(xiàn)數(shù)據(jù)緩沖 在接口電路中,一般設(shè)置有一個(gè)或幾在接口電路中,一般設(shè)置有一個(gè)或幾 個(gè)數(shù)據(jù)緩沖寄存器,用于數(shù)據(jù)的暫存,以個(gè)數(shù)據(jù)緩沖寄存器,用于數(shù)據(jù)的暫存,以 避免因速度不一致而丟失數(shù)據(jù)。避免因速度不一致而丟失數(shù)據(jù)。在傳送過在傳送過 程中,先將數(shù)據(jù)送入數(shù)據(jù)緩沖寄存器中
8、,程中,先將數(shù)據(jù)送入數(shù)據(jù)緩沖寄存器中, 然后再送到輸出設(shè)備或主機(jī)中去。然后再送到輸出設(shè)備或主機(jī)中去。 (4) 數(shù)據(jù)格式的變換數(shù)據(jù)格式的變換 在輸入或輸出操作過程中,為了滿足在輸入或輸出操作過程中,為了滿足 主機(jī)或外設(shè)的各自要求,接口電路中必須主機(jī)或外設(shè)的各自要求,接口電路中必須 具有完成各類數(shù)據(jù)相互轉(zhuǎn)換的功能。具有完成各類數(shù)據(jù)相互轉(zhuǎn)換的功能。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 (5) 傳遞控制命令和狀態(tài)信息傳遞控制命令和狀態(tài)信息 當(dāng)當(dāng)CPU要啟動(dòng)某一外設(shè)時(shí),通過接口要啟動(dòng)某一外設(shè)時(shí),通過接口 中的控制命令
9、寄存器向外設(shè)發(fā)出啟動(dòng)命令;中的控制命令寄存器向外設(shè)發(fā)出啟動(dòng)命令; 當(dāng)外設(shè)準(zhǔn)備就緒時(shí),則有狀態(tài)信息送回接當(dāng)外設(shè)準(zhǔn)備就緒時(shí),則有狀態(tài)信息送回接 口中的狀態(tài)寄存器,為口中的狀態(tài)寄存器,為CPU 提供反饋信息,提供反饋信息, 告訴告訴CPU,I/O設(shè)備已經(jīng)具備和設(shè)備已經(jīng)具備和CPU交換數(shù)交換數(shù) 據(jù)的條件。當(dāng)外設(shè)向據(jù)的條件。當(dāng)外設(shè)向CPU提出提出中斷請求和中斷請求和 DMA請求時(shí),請求時(shí),CPU也有相應(yīng)的響應(yīng)信號反也有相應(yīng)的響應(yīng)信號反 饋給外設(shè)。饋給外設(shè)。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 2. 接口的基本組成接口
10、的基本組成 接口中要分別傳送數(shù)據(jù)信息、控制信接口中要分別傳送數(shù)據(jù)信息、控制信 息和狀態(tài)信息,息和狀態(tài)信息,數(shù)據(jù)信息、控制信息和狀態(tài)數(shù)據(jù)信息、控制信息和狀態(tài) 信息都通過數(shù)據(jù)總線來傳送。信息都通過數(shù)據(jù)總線來傳送。大多數(shù)計(jì)算機(jī)大多數(shù)計(jì)算機(jī) 都把都把I/O設(shè)備的狀態(tài)信息視為輸入數(shù)據(jù),而設(shè)備的狀態(tài)信息視為輸入數(shù)據(jù),而 把控制信息看成輸出數(shù)據(jù),并在接口中分設(shè)把控制信息看成輸出數(shù)據(jù),并在接口中分設(shè) 各自相應(yīng)的寄存器,賦以不同的端口地址,各自相應(yīng)的寄存器,賦以不同的端口地址, 各種信息分時(shí)地使用數(shù)據(jù)總線傳送到各自的各種信息分時(shí)地使用數(shù)據(jù)總線傳送到各自的 寄存器中。寄存器中。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 20
11、21-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 主主 機(jī)機(jī) 外設(shè)識別外設(shè)識別 數(shù)據(jù)數(shù)據(jù)/命令命令/狀態(tài)狀態(tài) 控制電路控制電路 地址信息地址信息 控制聯(lián)絡(luò)控制聯(lián)絡(luò) 信息信息 數(shù)據(jù)數(shù)據(jù)(并并) 外設(shè)外設(shè) 控制聯(lián)絡(luò)控制聯(lián)絡(luò) 數(shù)據(jù)數(shù)據(jù) (并并/串串) 接口接口 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 接口與端口是兩個(gè)不同的概念。接口與端口是兩個(gè)不同的概念。端口端口 是指接口電路中可以進(jìn)行讀是指接口電路中可以進(jìn)行讀/寫的寄存器寫的寄存器, 若干個(gè)端口加上相應(yīng)的控制邏輯電路才組成若
12、干個(gè)端口加上相應(yīng)的控制邏輯電路才組成 接口。接口。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 通常,一個(gè)接口中包含有數(shù)據(jù)端口、通常,一個(gè)接口中包含有數(shù)據(jù)端口、 控制端口和狀態(tài)端口。存放數(shù)據(jù)信息的寄控制端口和狀態(tài)端口。存放數(shù)據(jù)信息的寄 存器稱為數(shù)據(jù)端口,存放控制命令的端口存器稱為數(shù)據(jù)端口,存放控制命令的端口 稱為命令端口,存放狀態(tài)信息的寄存器稱稱為命令端口,存放狀態(tài)信息的寄存器稱 為狀態(tài)端口。為狀態(tài)端口。CPU通過輸入指令可以從有通過輸入指令可以從有 關(guān)端口中讀出信息,通過輸出指令可以把關(guān)端口中讀出信息,通過輸出指
13、令可以把 信息寫入有關(guān)端口。信息寫入有關(guān)端口。對狀態(tài)端口只進(jìn)行輸對狀態(tài)端口只進(jìn)行輸 入操作入操作,將設(shè)備狀態(tài)標(biāo)志送到,將設(shè)備狀態(tài)標(biāo)志送到CPU 中去;中去; 對命令端口只進(jìn)行輸出操作對命令端口只進(jìn)行輸出操作,CPU將向外將向外 設(shè)發(fā)送各種控制命令。因此,在有的接口設(shè)發(fā)送各種控制命令。因此,在有的接口 電路中狀態(tài)信息和控制信息共用一個(gè)寄存電路中狀態(tài)信息和控制信息共用一個(gè)寄存 器,稱之為設(shè)備的控制狀態(tài)寄存器。器,稱之為設(shè)備的控制狀態(tài)寄存器。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 3. 接口的類型接口的類型 (1)
14、 按數(shù)據(jù)傳送方式分類按數(shù)據(jù)傳送方式分類 有串行接口和并行接口。有串行接口和并行接口。這里所說的這里所說的 數(shù)據(jù)傳送方式指的是外設(shè)和接口一側(cè)的傳數(shù)據(jù)傳送方式指的是外設(shè)和接口一側(cè)的傳 送方式,而在主機(jī)和接口一側(cè),數(shù)據(jù)總是送方式,而在主機(jī)和接口一側(cè),數(shù)據(jù)總是 并行傳送的。并行傳送的。 (2) 按主機(jī)訪問按主機(jī)訪問I/O設(shè)備的控制方式分類設(shè)備的控制方式分類 可分為程序查詢式接口、中斷接口、可分為程序查詢式接口、中斷接口、 DMA接口接口等等。 (3) 按功能選擇的靈活性分類按功能選擇的靈活性分類 有可編程接口和不可編程接口。有可編程接口和不可編程接口。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9
15、云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 (4) 按通用性分類按通用性分類 有通用接口和專用接口。有通用接口和專用接口。 (5) 按輸入按輸入/輸出的信號分類輸出的信號分類 有數(shù)字接口和模擬接口。有數(shù)字接口和模擬接口。 (6).按應(yīng)用來分類按應(yīng)用來分類 運(yùn)行輔助接口。運(yùn)行輔助接口。 用戶交互接口。用戶交互接口。 傳感接口。傳感接口。 控制接口。控制接口。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 8.1.3 外設(shè)的識別與端口尋址外設(shè)的識別與端口尋址 外設(shè)識別是通過地址總線和接口電
16、路外設(shè)識別是通過地址總線和接口電路 中的外設(shè)識別電路來實(shí)現(xiàn)的,中的外設(shè)識別電路來實(shí)現(xiàn)的,I/O端口地址端口地址 就是主機(jī)與外設(shè)直接通信的地址,就是主機(jī)與外設(shè)直接通信的地址,CPU可可 以通過端口發(fā)送命令、讀取狀態(tài)和傳送數(shù)據(jù)。以通過端口發(fā)送命令、讀取狀態(tài)和傳送數(shù)據(jù)。 1.端口地址編址方式端口地址編址方式 I/O端口編址方式有兩種:一種是端口編址方式有兩種:一種是I/O 映射方式,即把映射方式,即把I/O端口地址與主存單元地端口地址與主存單元地 址分別進(jìn)行獨(dú)立的編址;另一種是存儲器映址分別進(jìn)行獨(dú)立的編址;另一種是存儲器映 射方式,即把端口地址與主存單元地址統(tǒng)一射方式,即把端口地址與主存單元地址統(tǒng)一
17、 編址。編址。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 (1) 獨(dú)立編址獨(dú)立編址 主存地址空間和主存地址空間和I/O端口地址空間是相端口地址空間是相 對獨(dú)立的,分別單獨(dú)編址。比如對獨(dú)立的,分別單獨(dú)編址。比如,在,在8086中,中, 其主存地址范圍是從其主存地址范圍是從00000HFFFFFH連連 續(xù) 的續(xù) 的 1 M B , 其, 其 I / O 端 口 的 地 址 范 圍 從端 口 的 地 址 范 圍 從 0000HFFFFH,它們互相獨(dú)立,互不影響。,它們互相獨(dú)立,互不影響。 CPU訪問主存時(shí),由主存讀訪問
18、主存時(shí),由主存讀/寫控制線控制;寫控制線控制; 訪問外設(shè)時(shí),由訪問外設(shè)時(shí),由I/O讀讀/寫控制線控制,所以寫控制線控制,所以 在指令系統(tǒng)中必須在指令系統(tǒng)中必須設(shè)置專門的設(shè)置專門的I/O指令指令。當(dāng)。當(dāng) CPU使用使用I/O指令時(shí),其指令的地址字段直指令時(shí),其指令的地址字段直 接或間接的指示出端口地址。接或間接的指示出端口地址。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 (2) 統(tǒng)一編址統(tǒng)一編址 I/O端口地址和主存單元的地址是統(tǒng)一端口地址和主存單元的地址是統(tǒng)一 編址的,把編址的,把I/O接口中的端口作為主存單元接
19、口中的端口作為主存單元 一樣進(jìn)行訪問,一樣進(jìn)行訪問,不設(shè)置專門的不設(shè)置專門的I/O指令指令。 每個(gè)外設(shè)至少有兩個(gè)寄存器:控制狀每個(gè)外設(shè)至少有兩個(gè)寄存器:控制狀 態(tài)寄存器和數(shù)據(jù)緩沖寄存器,外設(shè)寄存器態(tài)寄存器和數(shù)據(jù)緩沖寄存器,外設(shè)寄存器 的地址碼是連續(xù)的。在的地址碼是連續(xù)的。在PDP-11中,把主存中,把主存 的高的高4KB地址空間留給外設(shè)接口寄存器和地址空間留給外設(shè)接口寄存器和 CPU內(nèi)部寄存器使用,這內(nèi)部寄存器使用,這4KB存儲空間不存儲空間不 允許用戶再存放其他內(nèi)允許用戶再存放其他內(nèi)容。容。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)
20、的連接主機(jī)與外設(shè)的連接 2.獨(dú)立編址方式的端口訪問獨(dú)立編址方式的端口訪問 Intel 80 x86最多可直接尋址最多可直接尋址256個(gè)個(gè)字節(jié)字節(jié) 端口端口,可間接尋址,可間接尋址65536 個(gè)個(gè)字節(jié)端口字節(jié)端口。 任意兩個(gè)連續(xù)的任意兩個(gè)連續(xù)的8位端口可作為位端口可作為16位位 端口處理;四個(gè)連續(xù)的端口處理;四個(gè)連續(xù)的8位端口可作為位端口可作為32位位 端口處理。因此,端口處理。因此,I/O地址空間最多能提供地址空間最多能提供 64K個(gè)個(gè)8位端口、位端口、32K個(gè)個(gè)16位端口、位端口、16K個(gè)個(gè) 32位端口或總?cè)萘坎怀^位端口或總?cè)萘坎怀^64KB的不同端口的不同端口 的組合。的組合。 計(jì)算機(jī)組
21、成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 80 x86的專用的專用I/O指令指令I(lǐng)N和和OUT有直接有直接 尋址和間接尋址兩種類型。直接尋址尋址和間接尋址兩種類型。直接尋址I/O端端 口的尋址范圍為口的尋址范圍為00FFH,至多為,至多為256個(gè)端個(gè)端 口地址。這時(shí)程序可以指定:口地址。這時(shí)程序可以指定: 編號編號0到到255的的256個(gè)個(gè)8位端口;位端口; 編號編號0、2、4 252、254的的128個(gè)個(gè)16位位 端口;端口; 編號編號0、4、8 248、252的的64個(gè)個(gè)32位端位端 口。口。 計(jì)算機(jī)組成原理計(jì)算機(jī)組
22、成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 間接尋址由間接尋址由DX寄存器間接給出寄存器間接給出I/O端端 口地址??诘刂?。DX寄存器長寄存器長16位,位,尋址范圍為尋址范圍為 0000FFFFH,最多可,最多可尋址尋址216=64K個(gè)端口個(gè)端口 地址,這時(shí)程序可指定:地址,這時(shí)程序可指定: 編號編號0到到65535的的65536個(gè)個(gè)8位端口;位端口; 編號編號0、2、4 65532、65534的的32768 個(gè)個(gè)16位端口;位端口; 編號編號0、4、8 65528、65532的的16384 個(gè)個(gè)32位端口。位端口。 計(jì)算機(jī)組成原理計(jì)算
23、機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 CPU一次可實(shí)現(xiàn)字節(jié)(一次可實(shí)現(xiàn)字節(jié)(8位)、字位)、字 (16位)或雙字(位)或雙字(32位)的數(shù)據(jù)傳送,與位)的數(shù)據(jù)傳送,與 存儲器中的雙字一樣。存儲器中的雙字一樣。32位端口應(yīng)對準(zhǔn)可位端口應(yīng)對準(zhǔn)可 被被4整除的偶地址,與存儲器中的字一樣,整除的偶地址,與存儲器中的字一樣, 16位端口應(yīng)對準(zhǔn)偶地址,位端口應(yīng)對準(zhǔn)偶地址,8位端口可定位在位端口可定位在 偶地址,也可定位在奇地址。偶地址,也可定位在奇地址。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8
24、.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 8.1.4 輸入輸入/輸出信息傳送控制方式輸出信息傳送控制方式 主機(jī)和外設(shè)之間的信息傳送控制方式,主機(jī)和外設(shè)之間的信息傳送控制方式, 經(jīng)歷了由低級到高級、由簡單到復(fù)雜、由集經(jīng)歷了由低級到高級、由簡單到復(fù)雜、由集 中管理到各部件分散管理的發(fā)展過程,按其中管理到各部件分散管理的發(fā)展過程,按其 發(fā)展的先后次序和主機(jī)與外設(shè)并行工作的程發(fā)展的先后次序和主機(jī)與外設(shè)并行工作的程 度,可以分為四種。度,可以分為四種。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 1. 程序查詢方式程序查詢方式
25、 程序查詢方式是一種程序直接控制方程序查詢方式是一種程序直接控制方 式,這是主機(jī)與外設(shè)間進(jìn)行信息交換的最簡式,這是主機(jī)與外設(shè)間進(jìn)行信息交換的最簡 單方式,輸入和輸出完全是通過單方式,輸入和輸出完全是通過CPU執(zhí)行執(zhí)行 程序來完成的。程序來完成的。 這種方式控制簡單,但外設(shè)和主機(jī)不這種方式控制簡單,但外設(shè)和主機(jī)不 能同時(shí)工作,各外設(shè)之間也不能同時(shí)工作,能同時(shí)工作,各外設(shè)之間也不能同時(shí)工作, 系統(tǒng)效率很低,因此,僅適用于外設(shè)的數(shù)目系統(tǒng)效率很低,因此,僅適用于外設(shè)的數(shù)目 不多,對不多,對I/O處理的實(shí)時(shí)要求不那么高,處理的實(shí)時(shí)要求不那么高, CPU的操作任務(wù)比較單一,并不很忙的情的操作任務(wù)比較單一,
26、并不很忙的情 況。況。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 2. 程序中斷方式程序中斷方式 外設(shè)在作好輸入外設(shè)在作好輸入/輸出準(zhǔn)備時(shí),向主機(jī)輸出準(zhǔn)備時(shí),向主機(jī) 發(fā)中斷請求,主機(jī)接到請求后就暫時(shí)中止原發(fā)中斷請求,主機(jī)接到請求后就暫時(shí)中止原 來執(zhí)行的程序,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序?qū)ν鈦韴?zhí)行的程序,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序?qū)ν?部請求進(jìn)行處理,在中斷處理完畢后返回原部請求進(jìn)行處理,在中斷處理完畢后返回原 來的程序繼續(xù)執(zhí)行。來的程序繼續(xù)執(zhí)行。 程序中斷不僅允許主機(jī)和外設(shè)同時(shí)并程序中斷不僅允許主機(jī)和外設(shè)同時(shí)并 行工作,并且允
27、許一臺主機(jī)管理多臺外設(shè)。行工作,并且允許一臺主機(jī)管理多臺外設(shè)。 但是完成一次程序中斷需要許多輔助操作,但是完成一次程序中斷需要許多輔助操作, 可能可能使使CPU應(yīng)接不暇;對于一些高速外設(shè),應(yīng)接不暇;對于一些高速外設(shè), 可能會(huì)造成信息丟失,因此,它主要適用于可能會(huì)造成信息丟失,因此,它主要適用于 中、低速外設(shè)。中、低速外設(shè)。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 3. 直接存儲器存?。ㄖ苯哟鎯ζ鞔嫒。―MA)方式)方式 DMA方式是在主存儲器和外部設(shè)備之方式是在主存儲器和外部設(shè)備之 間開辟直接的數(shù)據(jù)通路,可以進(jìn)
28、行基本上不間開辟直接的數(shù)據(jù)通路,可以進(jìn)行基本上不 需要需要CPU介入的主存和外設(shè)之間的信息傳介入的主存和外設(shè)之間的信息傳 送,這樣不僅能保證送,這樣不僅能保證CPU的高效率,而且的高效率,而且 能滿足高速外設(shè)的需要。能滿足高速外設(shè)的需要。 DMA方式只能進(jìn)行簡單的數(shù)據(jù)傳送操方式只能進(jìn)行簡單的數(shù)據(jù)傳送操 作,在數(shù)據(jù)塊傳送的起始和結(jié)束時(shí)還需作,在數(shù)據(jù)塊傳送的起始和結(jié)束時(shí)還需 CPU及中斷系統(tǒng)進(jìn)行預(yù)處理和后處理。及中斷系統(tǒng)進(jìn)行預(yù)處理和后處理。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.1 主機(jī)與外設(shè)的連接主機(jī)與外設(shè)的連接 4. I/O通道控制方式通道控制方
29、式 通道是一個(gè)具有特殊功能的處理器,通道是一個(gè)具有特殊功能的處理器, 它能獨(dú)立地執(zhí)行通道程序,產(chǎn)生相應(yīng)的控它能獨(dú)立地執(zhí)行通道程序,產(chǎn)生相應(yīng)的控 制信號,實(shí)現(xiàn)對外設(shè)的統(tǒng)一管理和外設(shè)與制信號,實(shí)現(xiàn)對外設(shè)的統(tǒng)一管理和外設(shè)與 主存之間的數(shù)據(jù)傳送。但它不是一個(gè)完全主存之間的數(shù)據(jù)傳送。但它不是一個(gè)完全 獨(dú)立的處理機(jī),它要在獨(dú)立的處理機(jī),它要在CPU的的I/O指令指揮指令指揮 下才能啟動(dòng)、停止或改變工作狀態(tài),是從下才能啟動(dòng)、停止或改變工作狀態(tài),是從 屬于屬于CPU的一個(gè)專用處理器。的一個(gè)專用處理器。 一個(gè)通道執(zhí)行輸入一個(gè)通道執(zhí)行輸入/輸出過程全部由通輸出過程全部由通 道按照通道程序自行處理,不論交換信息道按
30、照通道程序自行處理,不論交換信息 多少,只打擾多少,只打擾CPU兩次(啟動(dòng)和停止時(shí))。兩次(啟動(dòng)和停止時(shí))。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.2 程序查詢方式及其接口程序查詢方式及其接口 8.2.1 程序查詢方式程序查詢方式 1. 程序查詢的基本思想程序查詢的基本思想 由由CPU執(zhí)行一段輸入、輸出程序來實(shí)執(zhí)行一段輸入、輸出程序來實(shí) 現(xiàn)主存與外設(shè)之間的數(shù)據(jù)傳送方式,叫做程現(xiàn)主存與外設(shè)之間的數(shù)據(jù)傳送方式,叫做程 序直接控制方式。根據(jù)外設(shè)的不同性質(zhì),這序直接控制方式。根據(jù)外設(shè)的不同性質(zhì),這 種傳送方式又可分為無條件傳送和程序查詢種傳送方式又可分為
31、無條件傳送和程序查詢 方式兩種。方式兩種。 在無條件傳送方式中,在無條件傳送方式中,I/O接口總是準(zhǔn)接口總是準(zhǔn) 備好接收主機(jī)的輸出數(shù)據(jù),或總是準(zhǔn)備好向備好接收主機(jī)的輸出數(shù)據(jù),或總是準(zhǔn)備好向 主機(jī)輸入的數(shù)據(jù),因而主機(jī)輸入的數(shù)據(jù),因而CPU無需查詢外設(shè)無需查詢外設(shè) 的工作狀態(tài),而默認(rèn)外設(shè)始終處于準(zhǔn)備就緒的工作狀態(tài),而默認(rèn)外設(shè)始終處于準(zhǔn)備就緒 狀態(tài)。狀態(tài)。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.2 程序查詢方式及其接口程序查詢方式及其接口 許多外設(shè)的工作狀態(tài)是很難事先預(yù)知許多外設(shè)的工作狀態(tài)是很難事先預(yù)知 的,為了保證數(shù)據(jù)傳送的正確進(jìn)行,就要的,為了保證
32、數(shù)據(jù)傳送的正確進(jìn)行,就要 求求CPU在程序中查詢外設(shè)的工作狀態(tài),如在程序中查詢外設(shè)的工作狀態(tài),如 果外設(shè)尚未準(zhǔn)備就緒,果外設(shè)尚未準(zhǔn)備就緒,CPU就等待,只有就等待,只有 外設(shè)已作好準(zhǔn)備,外設(shè)已作好準(zhǔn)備,CPU才能執(zhí)行才能執(zhí)行I/O指令,指令, 這就是程序查詢方式。這就是程序查詢方式。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.2 程序查詢方式及其接口程序查詢方式及其接口 2. 程序查詢方式的工作流程程序查詢方式的工作流程 (1) 預(yù)置傳送參數(shù)預(yù)置傳送參數(shù) 在傳送數(shù)據(jù)之前,由在傳送數(shù)據(jù)之前,由CPU執(zhí)行一段程執(zhí)行一段程 序,預(yù)置傳送參數(shù)。傳送參數(shù)包括存
33、取數(shù)序,預(yù)置傳送參數(shù)。傳送參數(shù)包括存取數(shù) 據(jù)的主存緩沖區(qū)首地址和傳送數(shù)據(jù)的個(gè)數(shù)。據(jù)的主存緩沖區(qū)首地址和傳送數(shù)據(jù)的個(gè)數(shù)。 (2) 向向I/O接口發(fā)命令字接口發(fā)命令字 當(dāng)當(dāng)CPU選中某臺外設(shè)時(shí),執(zhí)行輸出指選中某臺外設(shè)時(shí),執(zhí)行輸出指 令向令向I/O接口發(fā)出命令字,啟動(dòng)外設(shè),為接接口發(fā)出命令字,啟動(dòng)外設(shè),為接 收數(shù)據(jù)或發(fā)送數(shù)據(jù)的操作做準(zhǔn)備。收數(shù)據(jù)或發(fā)送數(shù)據(jù)的操作做準(zhǔn)備。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.2 程序查詢方式及其接口程序查詢方式及其接口 (3) 從從I/O接口取回狀態(tài)字接口取回狀態(tài)字 CPU執(zhí)行輸入指令,從執(zhí)行輸入指令,從I/O接口中取回
34、接口中取回 狀態(tài)字并進(jìn)行測試,判斷數(shù)據(jù)傳送是否可以狀態(tài)字并進(jìn)行測試,判斷數(shù)據(jù)傳送是否可以 進(jìn)行。進(jìn)行。 (4) 查詢外設(shè)標(biāo)志查詢外設(shè)標(biāo)志 CPU不斷查詢狀態(tài)標(biāo)志,如果外設(shè)沒不斷查詢狀態(tài)標(biāo)志,如果外設(shè)沒 有準(zhǔn)備就緒,有準(zhǔn)備就緒,CPU就踏步進(jìn)行等待,一直到就踏步進(jìn)行等待,一直到 這個(gè)外設(shè)準(zhǔn)備就緒,并發(fā)出這個(gè)外設(shè)準(zhǔn)備就緒,并發(fā)出“準(zhǔn)備就緒準(zhǔn)備就緒”信信 號為止。號為止。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.2 程序查詢方式及其接口程序查詢方式及其接口 (5) 傳送數(shù)據(jù)傳送數(shù)據(jù) 只有外設(shè)準(zhǔn)備好,才能實(shí)現(xiàn)主機(jī)與外只有外設(shè)準(zhǔn)備好,才能實(shí)現(xiàn)主機(jī)與外 設(shè)間的
35、一次數(shù)據(jù)傳送。輸入時(shí),設(shè)間的一次數(shù)據(jù)傳送。輸入時(shí),CPU執(zhí)行執(zhí)行 輸入指令,從輸入指令,從I/O接口的數(shù)據(jù)緩沖寄存器中接口的數(shù)據(jù)緩沖寄存器中 接收數(shù)據(jù);輸出時(shí),接收數(shù)據(jù);輸出時(shí),CPU執(zhí)行輸出指令,執(zhí)行輸出指令, 將數(shù)據(jù)寫入將數(shù)據(jù)寫入I/O接口的數(shù)據(jù)緩沖寄存器。接口的數(shù)據(jù)緩沖寄存器。 (6) 修改傳送參數(shù)修改傳送參數(shù) 每進(jìn)行一次數(shù)據(jù)傳送,需要修改傳送每進(jìn)行一次數(shù)據(jù)傳送,需要修改傳送 參數(shù),其中包括主存緩沖區(qū)地址加參數(shù),其中包括主存緩沖區(qū)地址加1,傳,傳 送個(gè)數(shù)減送個(gè)數(shù)減1。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.2 程序查詢方式及其接口程序查詢方
36、式及其接口 (7) 判斷傳送是否結(jié)束判斷傳送是否結(jié)束 如果傳送個(gè)數(shù)不為如果傳送個(gè)數(shù)不為0,則轉(zhuǎn)第,則轉(zhuǎn)第3步,繼步,繼 續(xù)傳送,直到傳送結(jié)束為止。續(xù)傳送,直到傳送結(jié)束為止。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.2 程序查詢方式及其接口程序查詢方式及其接口 預(yù)置傳送參數(shù)預(yù)置傳送參數(shù) 啟動(dòng)外設(shè)啟動(dòng)外設(shè) 取外設(shè)狀態(tài)取外設(shè)狀態(tài) 傳送一次數(shù)據(jù)傳送一次數(shù)據(jù) 修改傳送參數(shù)修改傳送參數(shù) 外設(shè)準(zhǔn)備就緒外設(shè)準(zhǔn)備就緒? 傳送完否傳送完否? Y Y N N 結(jié)束結(jié)束 輸出指令輸出指令(OUT 控制口控制口,AL) 輸入輸入/輸出指令輸出指令 (IN AL,數(shù)據(jù)口數(shù)據(jù)口
37、/OUT 數(shù)據(jù)口數(shù)據(jù)口,AL) 輸入指令輸入指令(IN AL,狀態(tài)口狀態(tài)口) 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.2 程序查詢方式及其接口程序查詢方式及其接口 8.2.2 程序查詢方式接口程序查詢方式接口 最簡單、經(jīng)濟(jì)的最簡單、經(jīng)濟(jì)的I/O方式,只需很少的方式,只需很少的 硬件。硬件。 通常接口中通常接口中至少有兩個(gè)寄存器至少有兩個(gè)寄存器,一個(gè)是,一個(gè)是 數(shù)據(jù)緩沖寄存器,即數(shù)據(jù)端口,用來存放與數(shù)據(jù)緩沖寄存器,即數(shù)據(jù)端口,用來存放與 CPU進(jìn)行傳送的數(shù)據(jù)信息,另一個(gè)是供進(jìn)行傳送的數(shù)據(jù)信息,另一個(gè)是供CPU 查詢的設(shè)備狀態(tài)寄存器,即狀態(tài)端口,這個(gè)查
38、詢的設(shè)備狀態(tài)寄存器,即狀態(tài)端口,這個(gè) 寄存器由多個(gè)標(biāo)志位組成,其中最重要的是寄存器由多個(gè)標(biāo)志位組成,其中最重要的是 設(shè)備準(zhǔn)備就緒標(biāo)志。當(dāng)設(shè)備準(zhǔn)備就緒標(biāo)志。當(dāng)CPU得到這位信息后得到這位信息后 就進(jìn)行判斷,以決定下一步是繼續(xù)循環(huán)等待就進(jìn)行判斷,以決定下一步是繼續(xù)循環(huán)等待 還是進(jìn)行還是進(jìn)行I/O傳送,也有些計(jì)算機(jī)僅設(shè)置狀傳送,也有些計(jì)算機(jī)僅設(shè)置狀 態(tài)標(biāo)志觸發(fā)態(tài)標(biāo)志觸發(fā)器,其作用與設(shè)備狀態(tài)寄存器相器,其作用與設(shè)備狀態(tài)寄存器相 同。同。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 8.3.1 中斷的基本概念中斷
39、的基本概念 1. 中斷的提出中斷的提出 程序查詢方式存在著下列明顯的缺點(diǎn)。程序查詢方式存在著下列明顯的缺點(diǎn)。 在查詢過程中,在查詢過程中,CPU長期處于踏步等待長期處于踏步等待 狀態(tài),使系統(tǒng)效率大大降低。狀態(tài),使系統(tǒng)效率大大降低。 CPU在一段時(shí)間內(nèi)只能和一臺外設(shè)交換在一段時(shí)間內(nèi)只能和一臺外設(shè)交換 信息,其它設(shè)備不能同時(shí)工作。信息,其它設(shè)備不能同時(shí)工作。 不能發(fā)現(xiàn)和處理預(yù)先無法估計(jì)的錯(cuò)誤和不能發(fā)現(xiàn)和處理預(yù)先無法估計(jì)的錯(cuò)誤和 異常情況。異常情況。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 啟動(dòng)啟動(dòng) 工作
40、工作工作工作完成完成完成完成 響應(yīng)響應(yīng)響應(yīng)響應(yīng) 中斷請求中斷請求 中斷請求中斷請求 中斷返回中斷返回 中斷返回中斷返回 外部設(shè)備外部設(shè)備 中斷服務(wù)程序中斷服務(wù)程序 現(xiàn)行程序現(xiàn)行程序 CPU 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 為了提高輸入為了提高輸入/輸出能力和輸出能力和CPU的效率,的效率, 50年代中期,中斷傳送方式被引進(jìn)計(jì)算機(jī)系年代中期,中斷傳送方式被引進(jìn)計(jì)算機(jī)系 統(tǒng)。統(tǒng)。 現(xiàn)代計(jì)算機(jī),無論是巨型機(jī)、大型機(jī)、現(xiàn)代計(jì)算機(jī),無論是巨型機(jī)、大型機(jī)、 小型機(jī)還是微型機(jī)無不具有中斷能力。小型機(jī)還是微
41、型機(jī)無不具有中斷能力。 中斷系統(tǒng)是計(jì)算機(jī)實(shí)現(xiàn)中斷功能的軟中斷系統(tǒng)是計(jì)算機(jī)實(shí)現(xiàn)中斷功能的軟 、硬件總稱。一般在、硬件總稱。一般在CPU中配置中斷機(jī)構(gòu),中配置中斷機(jī)構(gòu), 在外設(shè)接口中配置中斷控制器,在軟件上設(shè)在外設(shè)接口中配置中斷控制器,在軟件上設(shè) 計(jì)相應(yīng)的中斷服務(wù)程序。計(jì)相應(yīng)的中斷服務(wù)程序。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 2. 程序中斷與調(diào)用子程序的區(qū)別程序中斷與調(diào)用子程序的區(qū)別 表面上看起來,計(jì)算機(jī)的中斷處理過表面上看起來,計(jì)算機(jī)的中斷處理過 程有點(diǎn)類似于調(diào)用子程序的過程,這里現(xiàn)程有點(diǎn)類似于
42、調(diào)用子程序的過程,這里現(xiàn) 行程序相當(dāng)于主程序,中斷服務(wù)程序相當(dāng)行程序相當(dāng)于主程序,中斷服務(wù)程序相當(dāng) 于子程序。但是,它們之間卻是有著本質(zhì)于子程序。但是,它們之間卻是有著本質(zhì) 上的區(qū)別的。上的區(qū)別的。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 子程序的執(zhí)行是由程序員事先安排好的子程序的執(zhí)行是由程序員事先安排好的 (由一條調(diào)用子程序指令轉(zhuǎn)入),而中斷(由一條調(diào)用子程序指令轉(zhuǎn)入),而中斷 服務(wù)程序的執(zhí)行則是由隨機(jī)的中斷事件引服務(wù)程序的執(zhí)行則是由隨機(jī)的中斷事件引 起的;起的; 子程序的執(zhí)行受到主程序或上層子程
43、序子程序的執(zhí)行受到主程序或上層子程序 的控制,的控制, 而中斷服務(wù)程序一般與被中斷的而中斷服務(wù)程序一般與被中斷的 現(xiàn)行程序毫無關(guān)系;現(xiàn)行程序毫無關(guān)系; 不存在同時(shí)調(diào)用多個(gè)子程序的情況,而不存在同時(shí)調(diào)用多個(gè)子程序的情況,而 有可能發(fā)生多個(gè)外設(shè)同時(shí)請求有可能發(fā)生多個(gè)外設(shè)同時(shí)請求CPU為自己為自己 服務(wù)的情況。服務(wù)的情況。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 3. 中斷的基本類型中斷的基本類型 (1) 自愿中斷和強(qiáng)迫中斷自愿中斷和強(qiáng)迫中斷 自愿中斷又稱程序自中斷,它不是隨自愿中斷又稱程序自中斷,它不是
44、隨 機(jī)產(chǎn)生的中斷,而是在程序中安排的有關(guān)機(jī)產(chǎn)生的中斷,而是在程序中安排的有關(guān) 指令,這些指令可以使機(jī)器進(jìn)入中斷處理指令,這些指令可以使機(jī)器進(jìn)入中斷處理 的過程,如:指令系統(tǒng)中的軟件中斷指令的過程,如:指令系統(tǒng)中的軟件中斷指令 等。等。 強(qiáng)迫中斷強(qiáng)迫中斷是隨機(jī)產(chǎn)生的中斷,不是程是隨機(jī)產(chǎn)生的中斷,不是程 序中事先安排好的。當(dāng)這種中斷產(chǎn)生后,序中事先安排好的。當(dāng)這種中斷產(chǎn)生后, 由中斷系統(tǒng)強(qiáng)迫計(jì)算機(jī)中止現(xiàn)行程序并轉(zhuǎn)由中斷系統(tǒng)強(qiáng)迫計(jì)算機(jī)中止現(xiàn)行程序并轉(zhuǎn) 入中斷服務(wù)程序。入中斷服務(wù)程序。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷
45、系統(tǒng)和程序中斷方式 (2) 程序中斷和簡單中斷程序中斷和簡單中斷 程序中斷程序中斷就是我們前面提到的中斷,就是我們前面提到的中斷, 主機(jī)在響應(yīng)中斷請求后,通過執(zhí)行一段中主機(jī)在響應(yīng)中斷請求后,通過執(zhí)行一段中 斷服務(wù)程序來處理更緊迫的任務(wù)。斷服務(wù)程序來處理更緊迫的任務(wù)。 簡單中斷就是外設(shè)與主存間直接進(jìn)行簡單中斷就是外設(shè)與主存間直接進(jìn)行 信息交換的方法,即信息交換的方法,即DMA方式。這種方式。這種“中中 斷斷”不去執(zhí)行中斷服務(wù)程序,故不破壞現(xiàn)不去執(zhí)行中斷服務(wù)程序,故不破壞現(xiàn) 行程序的狀態(tài)。主機(jī)發(fā)現(xiàn)有簡單中斷請求行程序的狀態(tài)。主機(jī)發(fā)現(xiàn)有簡單中斷請求 (也就是(也就是DMA請求)時(shí),將讓出一個(gè)或幾請求
46、)時(shí),將讓出一個(gè)或幾 個(gè)存取周期供外設(shè)與主存交換信息,然后個(gè)存取周期供外設(shè)與主存交換信息,然后 繼續(xù)執(zhí)行程序。繼續(xù)執(zhí)行程序。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 (3)內(nèi)中斷和外中斷內(nèi)中斷和外中斷 內(nèi)中斷是指由于內(nèi)中斷是指由于CPU內(nèi)部硬件或軟件內(nèi)部硬件或軟件 原因引起的中斷。原因引起的中斷。 外中斷外中斷是指是指CPU以外的部件引起的中以外的部件引起的中 斷。斷。 (4) 向量中斷和非向量中斷向量中斷和非向量中斷 向量中斷向量中斷是指那些中斷服務(wù)程序的入是指那些中斷服務(wù)程序的入 口地址是由中斷
47、事件自己提供的中斷。中口地址是由中斷事件自己提供的中斷。中 斷事件在提出中斷請求的同時(shí),通過硬件斷事件在提出中斷請求的同時(shí),通過硬件 向主機(jī)提供中斷服務(wù)程序入口地址,即向向主機(jī)提供中斷服務(wù)程序入口地址,即向 量地址。量地址。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 非向量中斷非向量中斷的中斷事件不能直接提供的中斷事件不能直接提供 中斷服務(wù)程序的入口地址,而由中斷服務(wù)程序的入口地址,而由CPU 查詢查詢 之后得到。之后得到。 (5) 單重中斷和多重中斷單重中斷和多重中斷 單重中斷單重中斷在在CPU執(zhí)行
48、中斷服務(wù)程序的執(zhí)行中斷服務(wù)程序的 過程中不能被再打斷。過程中不能被再打斷。 多重中斷多重中斷在執(zhí)行某個(gè)中斷服務(wù)程序的在執(zhí)行某個(gè)中斷服務(wù)程序的 過程中,過程中,CPU 可去響應(yīng)級別更高的中斷請可去響應(yīng)級別更高的中斷請 求,又稱為中斷嵌套。求,又稱為中斷嵌套。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 8.3.2 中斷請求中斷請求和中斷判優(yōu)和中斷判優(yōu) 1. 中斷源和中斷請求中斷源和中斷請求信號信號 中斷源是指中斷的來源,即任何引起計(jì)中斷源是指中斷的來源,即任何引起計(jì) 算機(jī)中斷的事件算機(jī)中斷的事件,一般計(jì)算
49、機(jī)都有多個(gè)中斷,一般計(jì)算機(jī)都有多個(gè)中斷 源。由于每個(gè)中斷源向源。由于每個(gè)中斷源向CPU發(fā)出中斷請求的發(fā)出中斷請求的 時(shí)間是隨機(jī)的,為了記錄中斷事件并區(qū)分不時(shí)間是隨機(jī)的,為了記錄中斷事件并區(qū)分不 同的中斷源,可采用具有存儲功能的觸發(fā)器同的中斷源,可采用具有存儲功能的觸發(fā)器 來記錄中斷源,稱為中斷請求觸發(fā)器。當(dāng)某來記錄中斷源,稱為中斷請求觸發(fā)器。當(dāng)某 一個(gè)中斷源有中斷請求時(shí),其相應(yīng)的中斷請一個(gè)中斷源有中斷請求時(shí),其相應(yīng)的中斷請 求觸發(fā)器置成求觸發(fā)器置成“1”狀態(tài),狀態(tài),此時(shí),該中斷源此時(shí),該中斷源向向 CPU發(fā)出中斷請求信號。發(fā)出中斷請求信號。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡
50、礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 多個(gè)中斷請求觸發(fā)器構(gòu)成一個(gè)中斷請多個(gè)中斷請求觸發(fā)器構(gòu)成一個(gè)中斷請 求寄存器,其中每一位對應(yīng)一個(gè)中斷源,求寄存器,其中每一位對應(yīng)一個(gè)中斷源, 中斷請求寄存器的內(nèi)容稱為中斷字或中斷中斷請求寄存器的內(nèi)容稱為中斷字或中斷 碼,中斷字中為碼,中斷字中為“1”的位就表示對應(yīng)的中的位就表示對應(yīng)的中 斷源有中斷請求。斷源有中斷請求。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 2. 中斷請求信號的傳送中斷請求信號的傳送 (1)獨(dú)立請求線
51、獨(dú)立請求線 每個(gè)中斷源單獨(dú)設(shè)置中斷請求線,將每個(gè)中斷源單獨(dú)設(shè)置中斷請求線,將 中斷請求信號直接送往中斷請求信號直接送往CPU,這種方式的,這種方式的 特點(diǎn)是特點(diǎn)是CPU在接到中斷請求的同時(shí)也就知在接到中斷請求的同時(shí)也就知 道了中斷源是誰,其中斷服務(wù)程序的入口道了中斷源是誰,其中斷服務(wù)程序的入口 地址在哪里。地址在哪里。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 (2) 公共請求線公共請求線 多個(gè)中斷源共有一根公共請求線,這多個(gè)中斷源共有一根公共請求線,這 種方式的特點(diǎn)是在負(fù)載允許的情況下,中種方式的特
52、點(diǎn)是在負(fù)載允許的情況下,中 斷源的數(shù)目可隨意擴(kuò)充,但斷源的數(shù)目可隨意擴(kuò)充,但CPU在接到中在接到中 斷請求后,必須通過軟件或硬件的方法來斷請求后,必須通過軟件或硬件的方法來 識別中斷源,然后再找出中斷服務(wù)程序的識別中斷源,然后再找出中斷服務(wù)程序的 入口地址。入口地址。 (3) 二維結(jié)構(gòu)二維結(jié)構(gòu) 將中斷請求線連成二維結(jié)構(gòu),同一優(yōu)將中斷請求線連成二維結(jié)構(gòu),同一優(yōu) 先級別的中斷源,先級別的中斷源, 采用一根公共的請求線,采用一根公共的請求線, 不同請求線上的中斷源優(yōu)先級別不同,這不同請求線上的中斷源優(yōu)先級別不同,這 種方式綜合了前兩種方式的優(yōu)點(diǎn),在中斷種方式綜合了前兩種方式的優(yōu)點(diǎn),在中斷 源較多的系
53、統(tǒng)中常采用這種方式。源較多的系統(tǒng)中常采用這種方式。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 3. 中斷優(yōu)先級與判優(yōu)方法中斷優(yōu)先級與判優(yōu)方法 當(dāng)多個(gè)中斷源同時(shí)發(fā)出中斷請求時(shí)當(dāng)多個(gè)中斷源同時(shí)發(fā)出中斷請求時(shí), CPU在任何瞬間只能接受一個(gè)中斷源的請求。在任何瞬間只能接受一個(gè)中斷源的請求。 通常,把全部中斷源按中斷的性質(zhì)和處理的通常,把全部中斷源按中斷的性質(zhì)和處理的 輕重緩急安排優(yōu)先級,并進(jìn)行排隊(duì)。輕重緩急安排優(yōu)先級,并進(jìn)行排隊(duì)。 確定中斷優(yōu)先級的原則是:對那些提確定中斷優(yōu)先級的原則是:對那些提 出中斷請求
54、后需要立刻處理,否則就會(huì)造成出中斷請求后需要立刻處理,否則就會(huì)造成 嚴(yán)重后果的中斷源規(guī)定最高的優(yōu)先級;而對嚴(yán)重后果的中斷源規(guī)定最高的優(yōu)先級;而對 那些可以延遲響應(yīng)和處理的中斷源規(guī)定較低那些可以延遲響應(yīng)和處理的中斷源規(guī)定較低 的優(yōu)先級。如故障中斷一般優(yōu)先級較高,接的優(yōu)先級。如故障中斷一般優(yōu)先級較高,接 著才是著才是I/O設(shè)備中斷。而設(shè)備中斷。而在在I/O設(shè)備中又可以設(shè)備中又可以 根據(jù)各個(gè)設(shè)備的速度來決定優(yōu)先級。根據(jù)各個(gè)設(shè)備的速度來決定優(yōu)先級。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 每個(gè)中斷源均有一個(gè)
55、為其服務(wù)的中斷服每個(gè)中斷源均有一個(gè)為其服務(wù)的中斷服 務(wù)程序,每個(gè)中斷服務(wù)程序都有與之對應(yīng)的務(wù)程序,每個(gè)中斷服務(wù)程序都有與之對應(yīng)的 優(yōu)先級別。另外,優(yōu)先級別。另外,CPU正在執(zhí)行的程序也有正在執(zhí)行的程序也有 優(yōu)先級。只有當(dāng)某個(gè)中斷源的優(yōu)先級別高于優(yōu)先級。只有當(dāng)某個(gè)中斷源的優(yōu)先級別高于 CPU現(xiàn)在的優(yōu)先級時(shí),才能中止現(xiàn)在的優(yōu)先級時(shí),才能中止CPU執(zhí)行執(zhí)行 現(xiàn)在的程序。現(xiàn)在的程序。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 (1) 軟件判優(yōu)法軟件判優(yōu)法 軟件判優(yōu)法,軟件判優(yōu)法, 就是用程序來判別就是用程序來
56、判別 優(yōu)先級,這是最簡優(yōu)先級,這是最簡 單的中斷判優(yōu)方法。單的中斷判優(yōu)方法。 INT1? INT2? INT3? INTn? 對1號中斷源服務(wù) 對2號中斷源服務(wù) 對3號中斷源服務(wù) 對n號中斷源服務(wù) Y Y Y Y N N N N 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 當(dāng)當(dāng)CPU接到中斷請求信號后,就執(zhí)行接到中斷請求信號后,就執(zhí)行 查詢程序,逐個(gè)檢測中斷請求寄存器的各查詢程序,逐個(gè)檢測中斷請求寄存器的各 位狀態(tài),檢測順序是按優(yōu)先級的大小排列位狀態(tài),檢測順序是按優(yōu)先級的大小排列 的,最先檢測的中斷源具
57、有最高的優(yōu)先級,的,最先檢測的中斷源具有最高的優(yōu)先級, 其次檢測的中斷源具有次高優(yōu)先級,如此其次檢測的中斷源具有次高優(yōu)先級,如此 下去,最后下去,最后檢測的中斷源具有最低的優(yōu)先檢測的中斷源具有最低的優(yōu)先 級。級。 顯然,軟件判優(yōu)是與識別中斷源結(jié)合顯然,軟件判優(yōu)是與識別中斷源結(jié)合 在一起的,當(dāng)查詢到中斷請求信號的發(fā)出在一起的,當(dāng)查詢到中斷請求信號的發(fā)出 者,也就是找到了中斷源,程序立即可以者,也就是找到了中斷源,程序立即可以 轉(zhuǎn)入對應(yīng)的中斷服務(wù)程序中去。轉(zhuǎn)入對應(yīng)的中斷服務(wù)程序中去。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中
58、斷系統(tǒng)和程序中斷方式 (2) 硬件判優(yōu)電路硬件判優(yōu)電路 采用硬件實(shí)現(xiàn)中斷優(yōu)先級判定可節(jié)省采用硬件實(shí)現(xiàn)中斷優(yōu)先級判定可節(jié)省 CPU時(shí)間,而且速度快,但是成本較高。時(shí)間,而且速度快,但是成本較高。 根據(jù)中斷請求信號的傳送方式不同,根據(jù)中斷請求信號的傳送方式不同, 有不同的優(yōu)先排隊(duì)電路,常見的有以下幾有不同的優(yōu)先排隊(duì)電路,常見的有以下幾 種方案。種方案。 獨(dú)立請求線的優(yōu)先排隊(duì)電路獨(dú)立請求線的優(yōu)先排隊(duì)電路 公共請求線的優(yōu)先排隊(duì)電路公共請求線的優(yōu)先排隊(duì)電路 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 8.3.3
59、中斷響應(yīng)和中斷處理中斷響應(yīng)和中斷處理 1. CPU響應(yīng)中斷的條件響應(yīng)中斷的條件 (1) CPU接收到中斷請求信號接收到中斷請求信號 首先中斷源要發(fā)出中斷請求,同時(shí)首先中斷源要發(fā)出中斷請求,同時(shí) CPU還要接收到這個(gè)中斷請求信號。還要接收到這個(gè)中斷請求信號。 (2) CPU允許中斷允許中斷 CPU允許中斷即開中斷。允許中斷即開中斷。CPU內(nèi)部有內(nèi)部有 一個(gè)中斷允許觸發(fā)器,只有當(dāng)其被置位時(shí),一個(gè)中斷允許觸發(fā)器,只有當(dāng)其被置位時(shí), CPU才可能響應(yīng)中斷源的中斷請求(中斷才可能響應(yīng)中斷源的中斷請求(中斷 開放)。如其被復(fù)位,開放)。如其被復(fù)位,CPU處于不可中斷處于不可中斷 狀態(tài),即使中斷源有中斷請求
60、,狀態(tài),即使中斷源有中斷請求,CPU也不也不 響應(yīng)(中斷關(guān)閉)。響應(yīng)(中斷關(guān)閉)。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 2021-8-9 云岡礦計(jì)算機(jī)中心云岡礦計(jì)算機(jī)中心 8.3 中斷系統(tǒng)和程序中斷方式中斷系統(tǒng)和程序中斷方式 (3) 一條指令執(zhí)行完畢一條指令執(zhí)行完畢 一般情況下,一般情況下,CPU在一條指令執(zhí)行完在一條指令執(zhí)行完 畢,且沒有畢,且沒有更緊迫的任務(wù)時(shí)才能響應(yīng)中斷更緊迫的任務(wù)時(shí)才能響應(yīng)中斷 請求。請求。 2. 中斷隱指令中斷隱指令 CPU響應(yīng)中斷之后,經(jīng)過某些操作,響應(yīng)中斷之后,經(jīng)過某些操作, 轉(zhuǎn)去執(zhí)行中斷服務(wù)程序。轉(zhuǎn)去執(zhí)行中斷服務(wù)程序。 這些操作是由硬這些操作是由硬 件直接實(shí)現(xiàn)的,我們
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東生態(tài)植物墻施工方案
- 2025年逆變器項(xiàng)目可行性研究報(bào)告
- 企業(yè)并購房產(chǎn)居間合同模板
- 礦權(quán)交易風(fēng)險(xiǎn)防范協(xié)議
- 航空廢料清運(yùn)服務(wù)協(xié)議
- 眼鏡盒運(yùn)輸司機(jī)勞務(wù)協(xié)議
- 湖北文理學(xué)院《建筑裝飾工程施工技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年度水利工程招標(biāo)廉政監(jiān)督服務(wù)合同3篇
- 2025年度舞蹈教育項(xiàng)目舞蹈教師與臨時(shí)工聘用合同3篇
- 清遠(yuǎn)2024年廣東清遠(yuǎn)陽山縣招聘事業(yè)單位工作人員47人筆試歷年參考題庫附帶答案詳解
- 下肢皮牽引護(hù)理PPT課件(19頁P(yáng)PT)
- 臺資企業(yè)A股上市相關(guān)資料
- 電 梯 工 程 預(yù) 算 書
- 參會(huì)嘉賓簽到表
- 機(jī)械車間員工績效考核表
- 形式發(fā)票格式2 INVOICE
- 2.48低危胸痛患者后繼治療評估流程圖
- 人力資源管理之績效考核 一、什么是績效 所謂績效簡單的講就是對
- 山東省醫(yī)院目錄
- 云南地方本科高校部分基礎(chǔ)研究
- 廢品管理流程圖
評論
0/150
提交評論