STM32存储器映射学习笔记
一、怎么根据芯片地址范围算容量
1.1、储单元与地址线的关系:
CPU访问存储器的最小单位是存储单元且每个存储单元都有一个地址,1 根地址线可以查找 2 个地址既2个存储单元,16根地址线则可以查找 2^16个存储单元。
1-2、存储字长与数据线的关系 :
存储字长是指存储器中一个存储单元(存储地址)所存储的二进制代码的位数,而二进制代码的位数是由数据线的根数决定的,也就是说: 存储字长 = 数据线根数字节(B)与位(b)的关系 : 计算机里规定 1Byte = 8bit
1-3、怎么根据芯片地址范围算容量
30FFFH +1 - 30800H = 800H = 8 * 16^2 = 2048
如果没说明位数,不用管。该芯片的存储容量为2K 。
1-4、位数是什么
位数是数据线的宽度。如8位单片机系统的数据线是8位( D0 ~ D7),芯片的数据线也是8位(比特,bit,二进制的最小单位)。地址长度2K的芯片,数据线是8位,容量是 8 * 2K = 16Kb ,以字节计算则是 2KB 。B(字节) = 8b(比特)。
二、存储器映射
2.1存储器映射图
2.2存储器区域功能划分(此处举例Block 02区域)
ARM公司给Block 2 片上外设 划分的区域为: 0x4000 0000 ~ 0x5FFF FFFF(512MB)
- 备注 :512M怎么算的:0x5FFF FFFF+1-0x4000 0000=0x2000
0000=(2 * 16^7)/(1024*1024)=536,870,912/1,048,576=512MB