恩智浦(NXP) i.MX RT系列MCU存储器区域功能划分学习

ICache

即指令缓存(Instruction Cache)i.MX RT有32K

DCache

即数据缓存(Data Cache),i.MX RT有32K

FlexRAM

译为灵活的RAM,i.MX RT有512K, (SRAM)

  • 专用于存储指令的ITCM
  • 专用于存储数据的DTCM
  • 通用功能的OCRAM

各存储器访问的速度排名

存储器类型数据位宽优先级
ICache64位1
DCache64位1
ITCM64位2
DTCM双32位3
OCRAM32位4

存储器区域功能划分

序号用途地址范围容量
Block0Code0x0000 0000 ~ 0x1FFF FFFF512MB
Block1SRAM0x2000 0000 ~ 0x3FFF FFFF512MB
Block2Peripheral(片上外设)0x4000 0000 ~ 0x5FFF FFFF512MB
Block3External RAM(外部RAM)0x6000 0000 ~ 0x9FFF FFFF1024MB
Block4External device(外部设备)0xA000 0000 ~ 0xDFFF FFFF1024MB
Block5内核私有外设内部总线0xE000 0000 ~ 0xE003 FFFF256KB

比较重要的三个区域:

  • Block0 主要用于存储程序代码,一般采用FLASH 存储器,
  • Block1 主要用于运行时的内存,一般采用SRAM 存储器,
  • Block2 用来设计成片上的外设,内核通过相应的地址访问片上外设

Block0 内部区域功能划分

起始地址结束地址大小描述备注
0x1000_00000x1FFF_FFFF256MBSEMC (Aliased)内存映射别名区域
0x0800_00000x0FFF_FFFF128MBFlexSPI (Aliased)闪存控制器别名区域
0x0040_00000x07FF_FFFF128MBReserved
0x0028_00000x003F_FFFF1536KBReserved保留未使用区域
0x0021_80000x0027_FFFF416KBROMCP ReservedROM协处理器保留区
0x0020_00000x0021_7FFF96KBROMCPROM协处理器主区域
0x0010_00000x001F_FFFF1MBITCM Reserved指令紧耦合内存保留区
0x0008_00000x000F_FFFF512KBITCM Reserved指令紧耦合内存保留区
0x0000_00000x0007_FFFF512KBITCM指令紧耦合内存主区域
  1. ITCM 是Instruction Tightly-Coupled Memory 的缩写,译为指令紧耦合内存。对于那些我们希望有着极高执行速度的代码,我们可以要求内核上电后把相应的代码从外
    部FLASH 加载至ITCM,那么在运行时,代码的执行速度就不会因外部FLASH 的访问速度而存
    在瓶颈。
  2. ROMCP,这是一小段ROM 空间,用于存储芯片启动时的加载代码,即bootloader,
    bootloader 负责把指令从外部存储器加载至ITCM
  3. SEMC 及FlexSPI 是RT1052 可用于控制外部并行及串行NorFlash 的两个外设,此处把它们映射到此代码空间,是为了支持XIP 功能(即指令直接在NorFlash 上运行,不需要加载到内部的ITCM)。

Block1 内部区域的功能划分

Block1 用于设计片内的SRAM,也就是芯片运行时的内存

起始地址结束地址大小描述存储类型功能说明
0x3000_00000x3FFF_FFFF256MBReserved-保留扩展区域
0x2040_00000x2FFF_FFFF252MBReserved-保留扩展区域
0x2028_00000x203F_FFFF1536KBOCRAM ReservedSRAM片上RAM保留区(ECC校验等)
0x2020_00000x2027_FFFF512KBOCRAMSRAM通用片上RAM主区域
0x2010_00000x201F_FFFF1MBReserved-紧耦合内存扩展保留区
0x2008_00000x200F_FFFF512KBDTCM ReservedDTCM数据紧耦合内存保留区
0x2000_00000x2007_FFFF512KBDTCMDTCM数据紧耦合内存主区域
  1. DTCM,是Data Tightly-Coupled Memory 的缩写,译为数据紧耦合内存.它是专门用来存储程序数据的,即代码中变量的存储位置。
  2. OCRAM,它是On-chip RAM 的缩写,即片上内存,可以完全把它理解为传统MCU
    的内部SRAM,它没有像ITCM 和DTCM 的专用限制,可用于存储指令和数据(通用目的)。
  3. ITCM、DTCM 及OCRAM存储器的空间不是固定的,是可以调整的

Block2 内部区域功能划分(此处仅列出AIPS 总线相关部分)

起始地址结束地址大小描述总线类型
0x4030_00000x403F_FFFF1MBAIPS-4 外设区域AIPS-Lite
0x4020_00000x402F_FFFF1MBAIPS-3 外设区域AIPS-Lite
0x4010_00000x401F_FFFF1MBAIPS-2 外设区域AIPS-Lite
0x4000_00000x400F_FFFF1MBAIPS-1 外设区域AIPS-Lite

AIPS 是ARM IP Bus 的缩写,它一边与内核AHB 总线连接,另一边与片上的各种外设连接。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值