广告

如何使用DMA在低功耗可穿戴设备中加快外设监测

时间:2022-04-12 11:46:23 作者:Brandon Hurst,ADI公司硬件和嵌入式固件工程师 阅读:
在嵌入式系统中,利用DMA的微控制器,通过有效地管理外部输入,释放CPU的高速处理能力,从而有效提高CPU的运行效率。本文介绍使用直接内存访问的用例和优缺点,描述了DMA如何与外设和内存模块交互,还将为读者介绍不同的DMA总线访问架构及各自的优点。
广告

嵌入式系统执行的一个常见任务是管理外部输入。管理输入会给处理器带来很多不必要的计算压力,导致处理器处于有功功率模式下的时间更长,响应速度更慢。为了优化功率,保持对事件的快速响应以及管理大量数据连续传输,具有直接内存访问(DMA)的微控制器可提供更好的解决方案。

直接内存访问

在涉及外设的系统应用中,微处理器在许多点可能都会遭遇瓶颈。例如,在管理一个不断发送数据的ADC时,处理器可能时常被中断,导致它很难完成其他任务。DMA是一种在大型或快速数据处理事务中移动数据和尽量减少处理器参与的方法。您可以将DMA控制器当作一个协处理器,它的唯一作用就是与存储器和外设交互。通过这种方式,主处理器可以成功管理工作量大的外设,专注于处理其他任务,甚至可以在后台处理数据时进入睡眠状态,以节省功率。例如,在Arm®架构上,DMA模块可以在LP2(睡眠)或LP3(运行)模式下运行。对于需要更长的电池寿命的应用,例如可穿戴传感器中枢和智能手表,这具有明显的优势。

优点和缺点

在许多数字系统中,DMA很有用处,有时甚至用于管理大量总线流量。它还用于网卡、显卡,甚至一些原始的IBM个人电脑中。也就是说,将DMA集成到设计中时,确实需要进行一些权衡考量。

总线访问和CPU周期

虽然DMA控制器在节能或加速嵌入式系统方面非常有效,但它们的实现方案还没有高度标准化。可以使用多种方案来确保不会与CPU同时授予内部总线访问权限。总线访问方案的主要目标是避免同时访问相同的存储器位置,以免发生缓存区不连续和逻辑错误。单个DMA控制器通常配置为采用这些方案之一,因为使用每种方案可能需要不同的硬件或固件控制。大多数DMA控制器使用的总线访问方案是突发、周期窃用和透明模式的DMA。

图1:DMA运行期间,突发DMA的架构图。

突发DMA是借由不常见的大型突发事件发生,在此期间,DMA会根据缓冲区可以存储的容量,向目标缓冲区发送尽可能多的数据。DMA控制器会在短时间内阻止CPU运行,以移动大量内存,然后将总线交还给主CPU,并一直重复该过程,直到传输完成。突发DMA通常被认为是速度最快的类型。

图2:在DMA运行期间,周期窃用DMA发生在两个CPU周期之间。

相反,单字节传输或周期窃用DMA从CPU获取提示,并且仅在CPU指令之间执行操作。它在两个CPU周期之间插入一个操作,因此实际上“窃取”了CPU时间。由于一次只能执行一项操作的限制,它通常比突发DMA慢。

图3:在DMA运行期间,透明DMA在处理器处理不访问数据或地址总线的任务时发生。

透明DMA一次只能执行一项操作,但是,它也必须等待处理器执行指令,以获得对所需数据或地址总线的访问。验证这种访问限制需要使用额外的逻辑,这种类型DMA的速度通常最慢。在不需要访问存储器总线但需要进行额外的处理的应用中,透明DMA可能具有优势。在这种情况下,优势在于消除了对CPU的节流,因为处理器无需完全停止运行。

突发DMA架构示例

图4:MAX32660上的DMA控制器的架构图。

关于突发DMA控制器示例,可以参见MAX32660(参见图4)。上方路径对应数据流,下方路径代表先进的高性能总线(AHB)和DMA逻辑之间的控制/状态流。DMA控制器可以用作AHB和存储器或外设模块之间的缓冲区接口,具体取决于其配置方式。DMA逻辑位于DMA缓冲区和每个外设之间,用于在处理期间独立管理每个唯一的外设总线。DMA运行一次可以移动多达32个字节,只要源/目标缓冲区中可以包含这么多数据。缓冲区最高可存储16 MB,除了内部存储器传输外,还可以配置为发送或接收I2C、SPI、I2S和UART。编程DMA控制可能会因协议的不同而略有不同,但外设事务完全由DMA控制器管理。仲裁模块控制四个DMA通道和CPU之间的总线访问限制,根据优先级系统批准请求。

现代DMA选项

总之,对于管理大量传感器并要求高吞吐量、高效率和低功耗操作的现代嵌入式系统来说,DMA是一个关键特性。它就像是一个专门用于处理存储器和外设总线事务的协处理器。

许多应用必须使用DMA,以尽可能降低功耗和减轻处理器负载。例如,健康和可穿戴设备可以处理大量的数据吞吐量,但它们也必须尽可能地节省电池电量,同时还要处理敏感数据。ADI公司在适用于低功耗可穿戴设备的微控制器上采用快速突发DMA架构,例如MAX32660和MAX32670。此外,DARWIN Arm微控制器(例如MAX32666)是为集成Bluetooth® 5的可穿戴设备和物联网应用而设计的。这些器件采用2个8通道突发DMA控制器,支持基于事件的事务。它们甚至配备了出色的安全硬件,具有安全引导加载程序和信任保护单元(TPU),可以加速ECDSA、SHA-2和AES加密。从早期的IBM电脑到网卡,再到现在的安全、低功耗可穿戴设备和物联网设备,DMA是现代数字系统的基本特征。

(参考原文:How to Accelerate Peripheral Monitoring in Low Power Wearables with DMA )

本文为《电子工程专辑》2021年4月刊杂志文章,版权所有,禁止转载。点击申请免费杂志订

责编:Amy.wu
本文为EET电子工程专辑原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 深入浅出讲解『人工神经网络』的原理和运行机制 深度学习,(人工)神经网络等概念在随处可见的人工智能下现在变得耳熟能详,那么,人工神经网络的原理是什么?它的运行机制是怎样的,涉及到了哪些高深的“概念”?其实很简单,本文将用深入浅出的方法为您介绍神经网络,绝对让您也能轻松了解它!(如果您很在意结果,可以先看末尾的小结,再回过头来一步一步看)。
  • 解决比较器的主要挑战:负输入和相位反转 当比较器中的负输入电压较大、超出输入共模电压范围时,会出现不正确的输出行为。如果无法避免负输入电压,请务必保护比较器的输入引脚并防止发生相位反转现象,这一点非常重要......
  • 消除接点弹跳?全靠“铝箔”救场 水银开关不会发生弹跳现象,但却存在水银外泄的危害,因此必须寻求另一种防弹跳开关的方法。”铝箔”在此派上用场...
  • 硅穿孔(Through-Silicon Vias, TSV)简史 TSV,是英文Through-Silicon Via的缩写,即是穿过硅基板的垂直电互连。如果说Wire bonding(引线键合)和Flip-Chip(倒装焊)的Bumping(凸点)提供了芯片对外部的电互连,RDL(再布线)提供了芯片内部水平方向的电互连,那么TSV则提供了硅片内部垂直方向的电互连。
  • 自耦变压器和风扇设计方案 由于我的SPICE版本中并不包括自耦变压器。因此,我必须设计一个使用两个 1:1 匝数比变压器的模型。
  • 2022 年人工智能的五大预测 如今,人工智能的发展速度非常快。我们周围事物的复杂性不断增长,这促使每个人都依赖人工智能,以多种方式帮助人类,从检测欺诈交易、预测市场价格到在高层相关者中做出决策。在人工智能蓬勃发展与应用的面前,任何企业都没有理由不尝试人工智能。基于2021年AI技术的发展,可以对人工智能在2022的发展进行预测。
  • 新款iPad Pro 2021成最受欢迎的 由于采用性能相对强大的M1处理器和mini-LED屏幕以及更多的创新,新款iPad Pro 2021已经成为消费者心目中最受欢迎。然而,iPad 2却已经在全球范围内被列入“复古和过时”的名单中。
  • 三星折叠屏手机Galaxy Z Fold 3 目前来看,折叠屏新机作为一种新的生产力工具,逐渐成为高端/平板的一种趋势,有报料称三星的Galaxy Z Fold 3发布时间或为7月,并且会引入新手势操控。
  • Porotech动态像素调整技术实现Micr 由于我们彻底巅覆 GaN 的半导体材料和结构技术,让我们突破在单位像素上呈现全光谱颜色。同时,PoroGaN微显示平台的光电特性,简化了电子和光电系统设计集成的过程。目前微米纳米级的Micro-LED 和 Mini-LED 显示器在制造所需的多阶段工艺仍然具有挑战性,凭借 Porotech 的多孔氮化镓 (GaN) 技术和架构平台,可以大幅简化现有质量转移(Mass Transfer)或拾取和放置(Pick-and-Place)等Micro-LED制程。
  • 豪威集团在AutoSens展会上首次推出 OAX4600可实现无缝隙的驾驶员/乘员监控系统功能和灵活的汽车设计,在较小的封装内集成低功耗的RGB-IR ISP和两个NPU 
广告
热门推荐
广告
广告
广告
EE直播间
在线研讨会
广告
广告
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了