微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > STM32学习记录10:存储器结构

STM32学习记录10:存储器结构

时间:11-13 来源:互联网 点击:
一直以来对存储器的结构都十分的模糊,初学单片机是完全看不懂,以至于有心理阴影,今天彻底消灭他吧!!

存储器映射是指把芯片中或芯片外的FLASH,RAM,外设,BOOTBLOCK等进行统一编址。即用地址来表示对象。这个地址绝大多数是由厂家规定好的,用户只能用而不能改。用户只能在挂外部RAM或FLASH的情况下可进行自定义。

1:CM3存储器映射

如图,是Cortex-M3存储器映射结构图摘自《CM3技术手册》。

Cortex-M3是32位的内核,因此其PC指针可以指向2^32=4G的地址空间,也就是0x0000_0000——0xFFFF_FFFF这一大块空间。

好,根据图中描述,Cortex-M3内核将0x0000_0000——0xFFFF_FFFF这块4G大小的空间分成8大块:代码、SRAM、外设、外部RAM、外部设备、专用外设总线-内部、专用外设总线-外部、特定厂商等。导致了,使用该内核的芯片厂家必须按照这个进行各自芯片的存储器结构设计。

2:STM32存储器映射

下面的图摘自stm32f107vct6的说明文档

说明:

1:Peripherals:外设的存储器映射,对该区域操作,就是对相应的外设进行操作;

2:SRAM:运行时临时存放代码的地方;

3:Flash:存放代码的地方;

4:System Memory:STM32出厂时自带的你只能使用,不能写或擦除;

5:Option Bytes:可以按照用户的需要进行配置(如配置看门狗为硬件实现还是软件实现);

3:FLASH

STM32的Flash,严格说,应该是Flash模块。

该Flash模块包括:Flash主存储区(Main memory)、Flash信息区(Information block),以及Flash存储接口寄存器区(Flash memory interface)。


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top