GD32 DMA 功能简介

[复制链接]
1699|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 转移数据的过程中同时 进行数据运算,响应中断,大大提高效率。
smilingangel 发表于 2015-3-17 21:45 | 显示全部楼层
因为 DMA 的存在, CPU 被解放出来,它可以在 DMA 转移数据的过程中同时 进行数据运算,响应中断,大大提高效率。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

208

主题

2132

帖子

13

粉丝
快速回复 在线客服 返回列表 返回顶部