1.一个家用路由器的u-boot address space:
memstart = 0x80000000, memsize = 0x02000000
flashstart = 0xBF000000, flashsize = 0x00400000
images in flash:
u-boot:0xBF000000
ecos: 0xBF050000
linux: 0xBF0C0000
u-boot启动信息:
分析:
1.内存地址范围从0x80000000开始,到0x82000000结束。
2.u-boot被load到内存地址0x81fc0000.
3.启动流程:AP83上电后首先运行flash上面的cpu/mips/start.S这个汇编程序,并没有进入内存。接着,start.S把u-boot的代码段全部copy到内存地址0x81fc0000,并从该地址开始转入内存运行。
2.MIPS的地址空间
1.综述:
一般嵌入式的hardware有两部分存贮器,一个是RAM,另一个是ROM(flash). flash用来存放code,包括操作系统本身,当然也包括bootloader(u-boot). RAM就是相当于PC的内存了,比flash速度快的多,但掉电后会丢失所有数据,所以用作动态内存。
2.MIPS的地址空间:
32位mips的地址空间跟PC一样,是2^32=4G字节。对于嵌入式设备来说,所有的设备的地址都存在于一个地址空间。如下图:flash的地址空间一般放在Kseg1段,而RAM的地址空间一般则放在kseg0段。
阅读(2914) | 评论(0) | 转发(0) |