美文网首页
DMA与CPU总线控制问题

DMA与CPU总线控制问题

作者: 时光总是美好的 | 来源:发表于2018-12-06 15:32 被阅读0次

转自 https://bbs.csdn.net/topics/392159760?page=1
zhouxiangbai的实验结果:
DMA源端:音频模块的数据FIFO
DMA目的端:内存Buffer
DMA传输方式:循环列表链表(linked list)
实验结果:启动DMA传输,DMA在不停的从DMA源取数据(因为是传输方式是循环列表,且在传输过程中没有使能任何传输中断),CPU是可以做其他事情的。

问了一下同事,他解释是:芯片是分时给CPU和DMA的,当分时给哪一方时,哪一方就独占总线,另一方被挂起。至于芯片是不是这么设计的、具体怎么设计的,我们都搞不清楚。但是他这样解释我倒是觉得有道理,可以解释我最初的疑惑

不喝冰的解释:
在STM32中是采用这种方法:
DMA控制器和Cortex™-M3核心共享系统数据总线,执行直接存储器数据传输。当CPU和DMA
同时访问相同的目标(RAM或外设)时, DMA请求会暂停CPU访问系统总线达若干个周期,总线
仲裁器执行循环调度,以保证CPU至少可以得到一半的系统总线(存储器或外设)带宽。
DMA技术的出现,使得外围设备可以通过DMA控制器直接访问内存,与此同时,CPU可以继续执行程序.那么DMA控制器与CPU怎样分时使用内存呢?通常采用以下三种方法:(1)停止CPU访内存;(2)周期挪用;(3)DMA与CPU交替访问内存.

总结来说:目前的实验现象说明,在DMA连续传输过程中,CPU可以正常工作,CPU一定以某种方式获得了总线的控制权。CPU和DMA时分复用了总线。

相关文章

  • DMA与CPU总线控制问题

    转自 https://bbs.csdn.net/topics/392159760?page=1zhouxiangb...

  • 网络工程师错题知识点集合(二)

    网络工程师纠错本 本题考查计算机组成基础知识。DMA控制器在需要的时候代替CPU作为总线主设备,在不受CPU干预的...

  • 10.17总结

    今天学习啦DMA原理 DMA传输不需要CPU直接控制传输,这样使CPU得效率提高也为它减负。 下午跟着其他小组学习...

  • 汇编笔记

    cpu和存储器芯片通过总线交互,总线从逻辑上分为三类:地址总线,控制总线和数据总线,比如cpu从内存中读取数据:地...

  • 微机原理与接口技术浅谈(持续更新)

    本质 各种存储器都和CPU的地址总线(AB)、数据总线(DB)、控制总线(CB)相连,CPU在操控它们的时候把它们...

  • 操作系统|设备与CPU之间数据传输控制方式

    设备与CPU之间数据传输控制方式有4种,它们是程序直接控制方式、中断控制方式、直接内存访问(DMA)方式和通道控制...

  • DMA总线

    DMA 是所有现代电脑的重要特色,他允许不同速度的硬件装置来沟通,而不需要依于 CPU 的大量 中断 负载。否则,...

  • 1.26 嵌入式

    今天老师讲了DMA,DMA把数据从一个地址空间复制到另一个空间地址,无需cpu直接控制,提高了cpu效率。理解起来...

  • 运动控制器35:STM32的存储器和BOOT设置

    系统架构 四个驱动单元:DCODE总线,系统总线,DMA1和DMA2 四个被动单元:SRAM,FLASH,FSMC...

  • 8086 总线和内存

    总线 总线就是一根根导线的集合,每一个cpu都有许多与管脚相连的总线,cpu通过总线与外部器件交互。总线分为地址总...

网友评论

      本文标题:DMA与CPU总线控制问题

      本文链接:https://www.haomeiwen.com/subject/kceocqtx.html