Chinaunix首页 | 论坛 | 博客
  • 博客访问: 386417
  • 博文数量: 73
  • 博客积分: 2620
  • 博客等级: 少校
  • 技术积分: 1212
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-09 10:47
文章分类
文章存档

2011年(18)

2010年(50)

2009年(5)

我的朋友

分类: 嵌入式

2010-04-20 11:54:03

1 存储器重映射机制
LPC2468系列芯片都存在存储器地址重映射的情况。LPC2468内部含有一个BOOT ROM,地址固定在整个存储器空间的最高地址0x7fff_ffff,其中含有异常向量表和某些用户会使用的功能性二进制代码。LPC2468中的存储器映射控制寄存器MAMMAP负责选择将BOOT ROM中的代码映射到片内512K Flash、片内SRAM或片外Flash Bank0之一。
BOOT ROM地址固定原因是不同芯片的片内Flash大小不同,所以若要调用BOOT ROM中的代码可以由厂商一次性编译后烧写到BOOT ROM中,然后通过MAMMAP的选择将代码映射到不同的存储区上,这样当用户访问被映射的存储区时就相当于访问BOOT ROM中的对应代码,访问异常向量表的情况与此相同。
2 芯片启动过程
LPC2138上电复位,处理器核将PC置为0,选择执行地址0x0000_0000处Flash中的代码,但MAMMAP默认置为00,即BOOT LOADER模式,该模式将BOOT ROM中的异常向量表映射到0x0000_0000处,程序转而执行BOOT ROM中的异常向量表处理程序,并由BOOT ROM中的代码决定接下来的程序执行流向。
 
参考文件:
 
阅读(2382) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~