一、DTCM
在MM32F5270中有:
– 多达 192KB 的 SRAM,其中包括 32KB 指令 TCM(ITCM), 32KB 数据 TCM(DTCM)和 128KB 的系统 RAM,DTCM地址是从0x20000000开始,大小32KB
TCM=Tightly Coupled Memory,是一种被直接集成在CPU芯片中的 高速缓存 。DS有两种TCM,分别是 ITCM (Instruction TCM)和 DTCM (Data TCM)。
DTCM 用于数据存取,特点是跟内核速度一样
内置 32K 字节指令 TCM SRAM 和 32K 字节数据 TCM SRAM。指令 TCM(ITCM)起始地址为 0x00000000,数据 TCM(DTCM)起始地址为 0x2000 0000。
TCM SRAM 可以被 CPU 或者 DMA 用最快的系统时钟且不插入任何等待进行访问。
二、使用DTCM
1、我们打开keil魔术棒工具:
0x300000000 开始是SRAM1的区域,勾选后是给Keil进行管理
2、我们点击 Linker
点击编辑
3、我们就可以在这里开始编写一部分代码
RW_RAM1 0x20000000 0x00008000{ ;DTCM
*(.RAM_D1)
}
分配一个用户段(section),段的名字是RAM_D1,段的地址是 0x2000000
4、接着,使用_attribute__((section(“name”)))声明变量。定义变量后,一定编译成功,Build Analyzer才会更新。一定保存后要更新!!
测试
进入debug的watch加入查看
可以看出在DTCM的地址范围内。
原作者:kings669669
|