DMA为什么能够放问所有的物理存储器?

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/17 14:34:58

DMA为什么能够放问所有的物理存储器?
DMA为什么能够放问所有的物理存储器?

DMA为什么能够放问所有的物理存储器?
DMA原理:DMA(Direct Memory Access,直接内存存取) 是所有现代电脑的重要特色,他允许不同速度的硬件装置来沟通,而不需要依于 CPU 的大量 中断 负载.否则,CPU 需要从 来源 把每一片段的资料复制到 暂存器,然后把他们再次写回到新的地方.在这个时间中,CPU 对于其他的工作来说就无法使用.DMA 传输将数据从一个地址空间复制到另外一个地址空间.当 CPU 初始化这个传输动作,传输动作本身是由 DMA 控制器 来实行和完成.典型的例子就是移动一个外部内存的区块到芯片内部更快的内存区.像是这样的操作并没有让处理器工作拖延,反而可以被重新排程去处理其他的工作.DMA 传输对于高效能 嵌入式系统 算法和网络是很重要的.  在实现DMA传输时,是由DMA控制器直接掌管总线,因此,存在着一个总线控制权转移问题.即DMA传输前,CPU要把总线控制权交给DMA控制器,而在结束DMA传输后,DMA控制器应立即把总线控制权再交回给CPU.
一个完整的DMA传输过程必须经过DMA请求、DMA响应、DMA传输、DMA结束4个步骤.