你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32 DMAMUX:DMA 请求路由器

[复制链接]
STMCU小助手 发布时间:2022-7-21 19:17
引言
为了从 CPU 减荷某些数据传输任务,STM32 微控制器嵌入了直接存储器访问(DMA)控制器。DMA 可以在外设请求或软件触发时执行面向块的数据传输。
每个 DMA 通道都有一个软件可配置的外设选择,用于请求其服务。在传统 STM32 产品上,通道请求选择在 DMA 控制器内实现,该控制器带有面向给定通道的受限外设请求列表。软件应用程序不能自由地将任何外设请求映射到任何通道。
DMA 请求复用器(DMAMUX 外设)增强了 STM32 DMA 请求路由功能。DMAMUX 增加了更多灵活性,可以提供完全动态的DMA 外设请求映射,而不是伪动态映射。它提供从给定外设到任何 DMA 控制器和/或控制器 DMA 通道的任何 DMA 请求完全可配置路由。
本应用说明解释了下表中所列产品的各种 DMAMUX 特性:如何配置 DMAMUX,以及如何使用新的同步和请求生成功能。

0UE[11Z)A%LZ2S[E`F32A1L.png 1 DMAMUX 描述
外设通过设置其 DMA 请求信号来指示 DMA 传输请求。DMA 控制器会处理 DMA 请求并生成 DMA 确认信号,而且相应的 DMA 请求信号也将变为无效,但在此之前 DMA 请求一直处于挂起状态。
本文档中并未明确描述 DMA 请求/确认协议所需的控制信号组,而是将其称作外设 DMA 请求线。
DMA 请求路由器可以看作是 DMA 控制器的扩展。它将 DMA 外设请求路由到 DMA 控制器本身。
DMAMUX 请求复用器可将外设的 DMA 请求线路由到产品 DMA 控制器。该路由功能通过可编程的多通道 DMA 请求线复用器来确保实现。每个通道(下图示例中的 DMAMUX 通道 0)选择一个唯一的 DMA 请求线转发(无条件或同步地)到关联的 DMA 控制器通道(下图示例中的 DMA 通道 0)。这就允许高度灵活地管理 DMA 请求,使并发运行的 DMA 请求数量最大化。


UB~144@5{3L6V3R9(_R2S45.png

2 DMAMUX 功能
下图是一个简化的 DMAMUX 框图。根据 DMAMUX 管理的 DMA 通道数量,“请求复用器”结构被重复 N 次

(P{CR`D`)WC$}_D@WVFSNLH.png

– dmamux_reqx:来自外设的 DMA 请求(dmamux_req_inx)或来自请求生成器(dmamux_req_genx) 的 DMA 请求
dmamux_req_gen[0..n]分别受 dmamux_req[1..n+1]的影响;而 dmamux_req_inx 受 dmamux_req[n+2]
的影响。
– dmamux_syncx:可选同步事件
• 输出:
– dmamux_req_outx:DMA 请求 dmamux_reqx 从输入转发到输出
– dmamux_evtx:可选的生成事件,可用于触发/同步其他 DMAMUX 通道
请求生成器允许根据中断信号或事件生成 DMA 请求,输入/输出如下:
• 输入:dmamux_trgx,请求生成器子块的触发事件输入
• 输出:dmamux_req_genx,从请求生成器子块到 DMAMUX 请求复用器通道的 DMA 请求
请求复用器块的数量取决于 DMAMUX 管理的 DMA 通道数量。
例如:
• 如果是 8 通道 DMA,必须有 8 个请求复用器通道。
• 如果某产品有两个 DMA 控制器(每个 DMA 控制器各有 8 个通道),则必须有 16 个请求复用器通道。
一旦请求生成器由 DMAMUX 实例化。它包含 N 个能够生成 DMA 请求的通道(取决于产品)。有关详细信息,请参阅产品参考手册中的“DMAMUX 实现”部分。
因为有请求生成器块,用户软件可以基于未实现 DMA 请求的外设发出的信号触发 DMA 传输。

现 DMA 请求的外设发出的信号触发 DMA 传输。

2.1 请求路由与同步
2.1.1 无条件请求转发
为了执行外设到内存或内存到外设的传输,DMA 控制器通道每次都需要一个外设 DMA 请求线。每次发生请求时,DMA 通道将数据传入/传出外设。DMAMUX 请求复用器通道 X 允许选择/路由外设 DMA 请求线到 DMA 通道 X。
当复用器设置之后(DMAREQ_ID 不等于零),它确保 DMA 请求线的实际路由。通过通道控制寄存器(DMAMUX_CxCR)的 DMAREQ_ID 位中的编码 ID 选择外设 DMA 请求到复用器通道输出的连接。
对于产品中的每个外设 DMA 请求线,都会影响唯一的 ID。值 0(DMAREQ_ID = 0x00)对应于没有选择 DMA 请求线。
在配置 DMAMUX 通道之后,可以依次配置相应的 DMA 控制器通道。不能将两个不同的 DMAMUX 通道配置为选择相同的外设 DMA 请求线作为源。

完整版请查看:附件


DM00535045_ZHV2.pdf

下载

371.91 KB, 下载次数: 13

收藏 评论0 发布时间:2022-7-21 19:17

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版