目錄
- 1. 基本概念
- 2. 三種資料傳送方式
- 2.1 程式查詢方式
- 2.2 程式中斷方式
- 2.3 DMA控制方式
1. 基本概念
1. I/O介面
計算機作業程序中,CPU要不斷地和I/O設備進行資訊交換,CPU和主存可以直接進行資訊交換;而CPU與I/O設備不可以直接進行資訊交換,需要一個中間電路進行傳送,這一電路稱為I/O介面電路,
示意圖:

2. 三種資料傳送方式
重點介紹中斷方式
2.1 程式查詢方式
1. 含義
完全通程序式控制主機和外設的資訊傳送,分為無條件傳送和條件傳送兩種方式,
2. 無條件傳送和條件傳送
無條件傳送:
前提條件:外部控制程序各種動作時間是固定的,而且是已知的,CPU不用查詢外設狀態可以直接執行輸入輸出指令,
特點:
適用于外設動作時間已知,在CPU與外設進行資料傳送時,外設保證已準備好的情況;
軟硬體十分簡單,
條件傳送:
在執行輸入或輸出前,要先查詢相應設備的狀態,當輸入設備處于準備好狀態,輸出設備處于空閑狀態時,CPU才執行輸入/輸出指令與外設交換資訊,為此,介面電路中既要有資料埠,還要有狀態埠,
特點:
【優點】
控制簡單,無需額外的硬體支出;
【缺點】
CPU和外設之間只能串行作業,而CPU的速度比外設的速度快很多,CPU將花費大量時間都處于等待、空閑狀態,使系統效率大大降低,
2.2 程式中斷方式
1. 含義
當外設需要與CPU進行資訊交換時,由外設向CPU發出請求信號,CPU暫停正在執行的程式,轉去執行資料的輸入/輸出操作,資料傳送結束后,CPU再繼續執行被暫停的程式,
示意圖:

2. 基本概念
(1)中斷源:
引起中斷的事件,即發出中斷請求的來源,
中斷源的種類
①外中斷:來自處理機外部設備的中斷,如定時器等,
②內中斷:處理器硬體故障或程式出錯引起的中斷,如算術操作溢位、除數為0、校驗錯等,
③軟中斷:程式中預先安排的中斷,如除錯程式設定的斷點,
(2)中斷優先權
多個中斷同時發生時,對各個中斷回應的優先次序稱為中斷優先權,
(3)中斷屏蔽
當產生中斷請求后,用程式方式有選擇地封鎖部分中斷,而允許其余中斷仍然得到回應,稱為中斷屏蔽,
每個中斷源設定一個中斷屏蔽觸發器來屏蔽該設備的中斷請求,將該位置1,屏蔽該中斷源的請求;為0則回應,
(4)中斷屏蔽字
通過中斷屏蔽字可以重新設定中斷優先級,
【舉例】
設機器有5級中斷,L0~L4,其中斷的回應優先級為L0最高,L4最低,從左到右依次降低,現要求將中斷處理次序改為L1>L3>L0>L4>L2,則可將各中斷源屏蔽字設定成

(5)中斷處理程序
中斷請求、中斷回應、保護現場、執行中斷服務子程式、恢復現場、中斷回傳,
(6)中斷回應條件
①外設提出中斷申請;
②本中斷位未被屏蔽;
③本中斷優先級最高;
④ CPU允許中斷,
3. 多重中斷處理程序
原則:當到來的中斷優先級高于正在處理的中斷時,優先處理新到來的優先級更高的中斷,
【舉例】

2.3 DMA控制方式
含義:
DMA是指外部設備不通過CPU而直接與系統記憶體交換資料的介面技術,這樣資料的傳送速度就取決于存盤器和外設的作業速度,
通常系統總線是由CPU管理的,在DMA方式時,就希望CPU把這些總線讓出來,即CPU連到這些總線上的線處于第三態(高阻狀態),而由DMA控制器接管,控制傳送的位元組數,判斷DMA是否結束,以及發出DMA結束信號,
dma徹底解放了cpu與I/O通信的額外負擔,
dma方式下cpu讓出了總線(地址總線,資料總線,控制總線),暫時由dma控制器來接管總線,控制器就能直接完成i/o設備與主存的資料交換,
如果恰好cpu此時需要訪問主存,那它不得不暫停一個存盤周期(不是指令周期),如果只需要訪問暫存器或者cache,那cpu就不會有任何停頓,
三種方式CPU效率比較

圖片來源
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/283231.html
標籤:其他
上一篇:Node.js簡單總結筆記
