打印

GD32 DMA 功能简介

[复制链接]
1141|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sunmeat|  楼主 | 2015-3-16 16:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    DMA (Direct Memory Access),直接存储器存取,是一种可以大大减轻CPU 工作量的数据存取方式,因而被广泛地使用。 早在 8086 的应用中,就已经有 Intel 的 8237 这种典型的 DMA 控制器。而 GD32 的 DMA 则是以类似外设的形式,添加到 Cortex 内核之外的。
沙发
sunmeat|  楼主 | 2015-3-16 16:15 | 只看该作者
    在硬件系统中,主要由 CPU(内核)、外设、内存(SRAM)、总线等结构组成,数据经常要在内存与外设之间转移,或从外设 A 转移到外设 B。

使用特权

评论回复
板凳
sunmeat|  楼主 | 2015-3-16 16:15 | 只看该作者
    例如:当 CPU 需要处理由 ADC 外设采集回来的数据时, CPU 首先要把数据从 ADC 外设的寄存器读取到内存中(变量),然后进行运算处理,这是一般的处理方法。

使用特权

评论回复
地板
sunmeat|  楼主 | 2015-3-16 16:16 | 只看该作者
    在转移数据的过程中会占用 CPU 十分宝贵的资源,所以我们希望 CPU 更多地被用在数据运算或响应中断之中,而数据转移的工作交由其它部件完成。DMA 正为 CPU 分担了数据转移的工作。因为 DMA 的存在, CPU 被解放出来,它可以在 DMA 转移数据的过程中同时 进行数据运算,响应中断,大大提高效率。

使用特权

评论回复
5
smilingangel| | 2015-3-17 21:45 | 只看该作者
因为 DMA 的存在, CPU 被解放出来,它可以在 DMA 转移数据的过程中同时 进行数据运算,响应中断,大大提高效率。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

208

主题

2132

帖子

13

粉丝