
内存直读技术DMA
向CPU发送系统保持信号,并请求总线接管权 在获得CPU允许后,负责对总线进行控制 具备存储器地址寻址能力,支持内存读写操作 确定当前DMA传输块的字节数,并判断传送是否结束 在传送完成后,向CPU发送结束信号,使其恢复正常工作状态 单字节传输:每次DMA操作只传输一字节数据 多字节传输:一次DMA操作传输完整的数据块 停止CPU访问内存 周期性挪用(使用到DMA请求时暂时占用CPU周期) 间隔访问(将CPU周期分成DMA和普通访问两部分)
发布日期:2021-05-15 06:41:11
浏览次数:16
分类:精选文章
本文共 851 字,大约阅读时间需要 2 分钟。
DMA(Direct Memory Access)专文
工作原理
DMA,即直接存储器存取,是一种高效的数据传输机制。它允许外部设备直接与系统内存进行数据交换,而无需通过CPU进行介入。传统的数据传输方式依赖于CPU的控制,而这种方式在面对高速外设或批量数据传输时往往效率低下。DMA通过模拟中断机制,利用专用硬件(DMA控制器)来管理总线接管和数据传送,从而提高了整体系统的性能。
DMA控制器需要具备以下核心功能:
通过DMA,系统可以在高效处理高频I/O设备或大容量数据传输任务时,充分释放CPU处理能力。
传送方式
随着大规模集成电路技术的进步,DMA不再局限于内存与外设之间的数据交换。它已扩展为支持多种场景下的高速数据传输,包括:
- 内存区域间的数据传输
- 两种高速外设之间的数据交换
- 两个存储器区域之间的高效通信
核心实现核心是DMAC(DMAController),这是一个专用的硬件模块。其主要功能包括接管总线控制、地址指针管理、数据块处理等。在操作过程中,DMAC需要根据外设的数据准备状态(如准备信号)和总线传输同步机制来确保数据传输的准确性与高效性。
传送方式主要有两种:
在实际应用中,DMA控制器需要根据具体需求选择最优的传送方式。
DMA与CPU调度
在实际系统中,DMA控制器需要与CPU进行内存使用的协调与分时互配。为了实现这一点,DMA控制器可采用以下调度方式:
这种调度方式设计的目标是二者能够和谐共存,充分发挥系统性能。
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2025年05月03日 09时30分40秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Nintendo - NES Emulators 网站
2019-03-12
android market 开发者注册
2019-03-12
1024程序员节
2019-03-12
删除文件提示“您需要权限才能执行此操作”如何解决
2019-03-12
IC封装图片大全
2019-03-12
自恢复保险丝的选用
2019-03-12
开关电源 误差放大器电路
2019-03-12
Altium Designer唤出关掉的窗口
2019-03-12
输入过欠压保护电路原理图
2019-03-12
altium designer PCB 屏蔽DRC报错
2019-03-12
J-link v8固件修复
2019-03-12
Windows7自动安装驱动功能关闭与开启教程
2019-03-12
MDK编译后生成bin文件占用FLASH大小说明
2019-03-12
六大原则
2019-03-12
Linux自有服务
2019-03-12
BUU-WEB-[CISCN 2019 初赛]Love Math
2019-03-12
python3之list去重
2019-03-12
HDU A + B Problem II
2019-03-12
mask遮罩
2019-03-12