野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 138|回复: 1

STM32H7系列的RAM分配问题

[复制链接]
发表于 5 天前 | 显示全部楼层 |阅读模式

在STM32H7这类Cortex-M7处理器中,内存被划分为不同的区域,以适应不同的性能和功能需求。1M的RAM被划分为以下几个主要区域:

  • TCM(Tightly Coupled Memory):


    • ITCM(Instruction TCM):用于存储程序代码,地址从0x0000 0000开始,大小为64KB。
    • DTCM(Data TCM):用于数据存取,地址从0x2000 0000开始,大小为128KB。[color=var(--msh-chat-segment-quoteIcon-color)][backcolor=var(--msh-chat-segment-quoteIcon-bg)]
  • AXI SRAM区:


    • 位于D1域,挂在AXI总线上,速度为200MHz。
    • 地址从0x2400 0000开始,大小为512KB。[color=var(--msh-chat-segment-quoteIcon-color)][backcolor=var(--msh-chat-segment-quoteIcon-bg)]
  • SRAM1、SRAM2、SRAM3区:


    • 位于D2域,挂在AHB总线上,速度为200MHz。
    • SRAM1地址从0x3000 0000开始,大小为128KB。
    • SRAM2地址从0x3002 0000开始,大小为128KB。
    • SRAM3地址从0x3004 0000开始,大小为32KB。[color=var(--msh-chat-segment-quoteIcon-color)][backcolor=var(--msh-chat-segment-quoteIcon-bg)]
  • SRAM4区:


    • 位于D3域,挂在AHB总线上,速度为200MHz。
    • 地址从0x3800 0000开始,大小为64KB。[color=var(--msh-chat-segment-quoteIcon-color)][backcolor=var(--msh-chat-segment-quoteIcon-bg)]
  • Backup SRAM区:


    • 位于D3域,挂在AHB总线上,速度为200MHz。
    • 地址从0x3880 0000开始,大小为4KB。

DTCM区仅有CPU能访问,在火哥的ADC+DMA采样例程中__IO uint16_t ADC_ConvertedValue[4];DMA目标地址并没有指定内存区,是编译器自己分配到了AXI_RAM了吗?如果分配在128k的DTCM区,DMA就无法吧ADC转换的数据搬运到ADC_ConvertedValue吧?希望有大神能解释下。符图:

野火论坛202410181101527922..png 野火论坛202410181101199927..png 野火论坛202410181100575716..png

回复

使用道具 举报

发表于 昨天 11:01 | 显示全部楼层
改下 ALIGN_32BYTES (__attribute__ ((at(0x30000000)))
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-10-23 05:42 , Processed in 0.119905 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表