博主联系方式:
QQ:1540984562
微信:wxid_nz49532kbh9u22
QQ交流群:892023501(嵌入式方向)
QQ交流群:856398158(后端方向)

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传送方式:
在这里插入图片描述