博主聯系方式:
QQ:1540984562
QQ交流群:892023501
群里會有往屆的smarters和電賽選手,群里也會不時分享一些有用的資料,有問題可以在群里多問問。
DMA三種方式:數據塊傳送方式、周期挪用方式、交替訪存方式
數據塊傳送方式:在I/O接口電路中設置一個比較大的數據緩沖區,一般能存放一個數據塊,I/O接口電路與內存之間的數據交換以數據塊為單位。總線仲裁器判定究竟是DMA控制器還是CPU能獲得總線的使用權。
周期挪用方式:當I/O接口沒有DMA請求時,CPU按程序要求訪問內存;一旦I/P接口有DMA請求,則I/O接口挪用一個或幾個周期。缺點是:數據輸入或庶出過程中實際占用了CPU時間。
交替訪存方式:CPU與DMA控制器交替訪問內存。不需要總線使用權的申請、建立和歸還過程。
效率高,但實現起來有困難,基本上不被使用。
DMA方式特點:
1、內存既可以被CPU訪問也可以被DMA控制器訪問,CPU和DMA控制器會競爭總線的使用權,因而需要仲裁機制
2、外部設備與內存之間的整個數據交換過程全部在DMA控制器的控制下完成,CPU能夠與外部設備并行工作,大大提高了效率
3、在DMA方式開始之前CPU要對DMA控制器進行初始化,在DMA方式結束之后,CPU要申請中斷,對內存緩沖區進行后處理。
I/O接口電路DMA傳送方式: