• 资料介绍
  • 在线预览
  • 相关推荐
申请入驻 产业图谱

AN5593 如何对 STM32U575/585 微控制器使用 GPDMA

2025/01/15
933
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

AN5593 如何对 STM32U575/585 微控制器使用 GPDMA

559.68 KB

本应用笔记与 STM32U575/585 微控制器(MCU)中嵌入的通用 DMA(GPDMA)相关。GPDMA 是一种系统外设,是 AHB 总线上的双端口主设备。它被用于通过链表在外设和/或存储器之间传输数据。所有 GPDMA 可编程传输均在系统层面提供更高性能,并使 CPU 无需执行这些数据传输任务。

本文档的目的不是将现有的 GPDMA 专用章节重新编写到产品参考手册中,而是为系统开发人员提供一些以性能为导向的编程指南。

本文档以 GPDMA 和可能受到 GPDMA 协助的外设的组合功能为基础。本文档聚焦于为了优化系统性能和满足应用要求而需要考虑的所有关键点。

本应用笔记包含关于以下内容的原理阐述和建议:

  • GPDMA 通道分配
  • GPDMA 端口分配

–对于始于存储器映射源位置的传输

–对于止于存储器映射目标位置的传输

  • GPDMA 传输优先级分配
  • GPDMA 源/目标突发编程,包含数据宽度和突发长度

GPDMA 概述

在减载 CPU 的控制下,GPDMA 控制器通过链表执行存储器映射外设和/或存储器之间的可编程数据传输。

GPDMA 是双端口 AHB 主设备和系统外设。大多数外设和存储器都与之建立连接。在需要数据传输时,这一点提供了很大的灵活性并提高了系统性能。链表是存储器中程序化的数据结构,旨在让每个 GPDMA 通道为链接和安排DMA 数据传输做好准备。GPDMA 有 16 个通道。

GPDMA 通道分配

用户必须分配一个通道用于 GPDMA 传输。为了能够同时处理来自源的 GPDMA 传输(读访问)和到达目标的GPDMA 传输(写访问),GPDMA 对给定 GPDMA 通道使用专用 FIFO。

FIFO 单元的单位是一个字节。FIFO 的大小决定了通道能够有效处理的最大 DMA 突发大小(突发长度与数据宽度的乘积)。注意,通常突发越大,系统总体性能越好:更高吞吐率/带宽传输,更低系统总线占用率。

鉴于系统总线为 32 位字宽,建议将 DMA 源/目标数据宽度设定为 32 位(GPDMA_CxTR1 中的 S/DDW_LOG2[1:0]),以便最大限度减少总线使用量。

GPDMA 端口选择

用户必须为始于源(GPDMA_CxTR1 中的 SAP)的传输分配一个端口,并且为止于目标(GPDMA_CxTR1 中的DAP)的传输分配一个端口。在执行下一次数据传输之前,会通过下一个链表项和数据结构动态更新此分配。

在线预览

相关推荐

意法半导体拥有49,000名半导体技术的创造者和创新者,掌握半导体供应链和先进的制造设备。作为一 家半导体垂直整合制造商(IDM),意法半导体与二十多万家客户、成千上万名合作伙伴一起研发产品和 解决方案,共同构建生态系统,帮助他们更好地应对各种挑战和新机遇,满足世界对可持续发展的更高需 求。意法半导体的技术让人们的出行更智能,让电源和能源管理更高效,让云连接的自主化设备应用更广 泛。我们正按计划在所有直接和间接排放(包括范围1和范围2)、产品运输、商务旅行以及员工通勤排 放(重点关注的范围3)方面实现碳中和,并在2027年底前实现100%使用可再生电力的目标。 详情请浏 览意法半导体公司网站:www.st.com.cn