×
单片机 > 单片机程序设计 > 详情

ARM的存储器映射与存储器重映射

发布时间:2020-06-01 发布时间:
|
   1.存储器映射:处理器产生的地址按其某种规则转移到具体的物理地址;用户可见的,开机后固定不变的。

    2.存储器重映射:重新修改局部(64字节异常向量表);可选操作,稳定运行时由用户需要进行改变(用户程序)。

    MEMMAP=0:开机默认值,Boot装载模式----向量表(0x00000000-0x0000003c)映射的是BootBlock中的0x7FFFE000-0x7FFFF03c中的值;芯片复位时,启动boot装载程序,boot装载程序检查P0.14口的状态和用户的异常向量,判断是进入ISP状态还是启动用户程序,若启动用户程序,则自动设置MEMMAP=1(片内flash启动)或3(片外程序存储器启动)。

    MEMMAP=1:中断向量表就在片内flash中,地址就是0x00000000-0x0000003c,相当于没有映射;

    MEMMAP=2:最为主要的设置,即是重映射的关键之所在,当设置MEMMAP=2 时,中断向量表(0x00000000-0x0000003c)映射的是片内SRAM中的0x40000000-0x4000003c中的值,而因为是SRAM,所以在程序运行的过程中是可以改变的,这样就可以达到重映射的目的啦(中断向量表可以随时修改)。

    MEMMAP=3:中断向量表就在片外flash中,中断向量表(0x00000000-0x0000003c)映射到是片外flash中的0x80000000-0x8000003c中的值;功能上与MEMMAP=1时的差不多,因为一旦程序固化到flash中,即为只读,只是数值映射而已。

关键字:ARM  存储器映射  存储器重映射

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
TQ210天嵌开发板S5PV210 LED闪烁程序C语言代码记录