-
1 # 使用者1430558932451
-
2 # 米哈關愛
DMA有兩種方式,一種是查詢方式,一種是中斷方式。是問這兩種方式有什麼區別麼?查詢方式是透過查詢標誌位來判定DMA結束,中斷方式是DMA結束的時候返回中斷,在程式中不需要一直查詢標誌位。 DMA與中斷的區別 ⑴中斷方式是在資料緩衝暫存器滿之後發出中斷,要求CPU進行中斷處理,而DMA方式則是在所要求傳送的資料塊全部傳送結束時要求CPU 進行中斷處理。這就大大減少了CPU進行中斷處理的次數。 ⑵中斷方式的資料傳送是在中斷處理時由CPU控制完成的,而DMA方式則是在DMA控制器的控制下,不經過CPU控制完成的。這就排除了CPU因並行裝置過多而來不及處理以及因速度不匹配而造成資料丟失等現象。 DMA方式的優缺點 在DMA方式中,由於I/O裝置直接同記憶體發生成塊的資料交換,因此I/O效率比較高。由於DMA技術可以提高I/O效率,因此在現代計算機系統中,得到了廣泛的應用。許多輸入輸出裝置的控制器,特別是塊裝置的控制器,都支援DMA方式。 透過上述分析可以看出,DMA控制器功能的強弱,是決定DMA效率的關鍵因素。DMA控制器需要為每次資料傳送做大量的工作,資料傳送單位的增大意味著傳送次數的減少。另外,DMA方式竊取了始終週期,CPU處理效率降低了,要想盡量少地竊取始終週期,就要設法提高DMA控制器的效能,這樣可以較少地影響CPU出理效率。四、通道方式 輸入/輸出通道是一個獨立於CPU的,專門管理I/O的處理機,它控制裝置與記憶體直接進行資料交換。它有自己的通道指令,這些通道指令由CPU啟動,並在操作結束時向CPU發出中斷訊號,見圖6-3。 輸入/輸出通道控制是一種以記憶體為中心,實現裝置和內參內直接交換資料的控制方式。在通道方式中,資料的傳送方向、存放資料的記憶體起始地址以及傳送的資料塊長度等都由通道來進行控制。 另外,通道控制方式可以做到一個通道控制多臺裝置與記憶體進行資料交換。因而,通道方式進一步減輕了CPU的工作負擔,增加了計算機系統的並行工作程度。 輸入/輸出通道分類 按照資訊交換方式和所連線的裝置種類不同,通道可以分為以下三種類型: ⑴位元組多路通道 它適用於連線印表機、終端等低速或中速的I/O裝置。這種通道以位元組為單位交叉工作:當為一臺裝置傳送一個位元組後,立即轉去為另一它裝置傳送一個位元組。 ⑵選擇通道 它適用於連線磁碟、磁帶等高速裝置。這種通道以“組方式”工作,每次傳送一批資料,傳送速率很高,但在一段時間只能為一臺裝置服務。每當一個I/O請求處理完之後,就選擇另一臺裝置併為其服務。 ⑶成組多路通道 這種通道綜合了位元組多路通道分時工作和選擇通道傳輸速率高的特點,其實質是:對通道程式採用多道程式設計技術,使得與通道連線的裝置可以並行工作。
回覆列表
即DMA傳輸前,CPU要把匯流排控制權交給DMA控制器,而在結束DMA傳輸後,DMA控制器應立即把匯流排控制權再交回給CPU。 一個完整的DMA傳輸過程必須經過下面的4個步驟。
1.DMA請求CPU對DMA控制器初始化,並向I/O介面發出操作命令,I/O介面提出DMA請求。
2.DMA響應DMA控制器對DMA請求判別優選級及遮蔽,向匯流排裁決邏輯提出匯流排請求。當CPU執行完當前匯流排週期即可釋放匯流排控制權。此時,匯流排裁決邏輯輸出匯流排應答,表示DMA已經響應,透過DMA控制器通知I/O介面開始DMA傳輸。
3.DMA傳輸DMA控制器獲得匯流排控制權後,CPU即刻掛起或只執行內部操作,由DMA控制器輸出讀寫命令,直接控制RAM與I/O介面進行DMA傳輸。
4.DMA結束當完成規定的成批資料傳送後,DMA控制器即釋放匯流排控制權,並向I/O介面發出結束訊號。當I/O介面收到結束訊號後,一方面停止I/O裝置的工作,另一方面向CPU提出中斷請求,使CPU從不介入的狀態解脫,並執行一段檢查本次DMA傳輸操作正確性的程式碼。最後,帶著本次操作結果及狀態繼續執行原來的程式。