DMA與普通中斷方式的區別


普通中斷方式是在數據緩沖寄存器滿后,發中斷請求,CPU進行中斷處理
DMA方式則是以數據塊為單位傳輸的,在所要求傳送的數據塊全部傳送結束時要求CPU進行中斷處理,大大減少了CPU進行中斷處理的次數

總結:DMA方式不需CPU干預傳送操作,僅僅是開始和結尾借用CPU一點時間,其余不占用CPU任何資源,中斷方式是程序切換,每次操作需要保護和恢復現場

中斷控制方式雖然在某種程度上解決了上述問題,但由於中斷次數多,因而CPU仍需要花較多的時間處理中斷,而且能夠並行操作的設備台數也受到中斷處理時間的限制,中斷次數增多導致數據丟失。

DMA方式和通道方式較好地解決了上述問題。這兩種方式采用了外設和內存直接交換數據的方式。只有在一段數據傳送結束時,這兩種方式才發出中斷信號要求CPU做善后處理,從而大大減少了CPU的工作負擔。中斷控制方式雖然在某種程度上解決了上述問題,但由於中斷次數多,因而CPU仍需要花較多的時間處理中斷,而且能夠並行操作的設備台數也受到中斷處理時間的限制,中斷次數增多導致數據丟失。DMA方式和通道方式較好地解決了上述問題。這兩種方式采用了外設和內存直接交換數據的方式。只有在一段數據傳送結束時,這兩種方式才發出中斷信號要求CPU做善后處理,從而大大減少了CPU的工作負擔。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM