ky51 发表于 2012-4-29 20:24:19

ky51 发表于 2012-4-29 20:50:54

wgyoume 发表于 2012-5-2 18:47:47

ARM启动有Nand 和Nor Flash启动两种方式,当系统从Nand启动时,硬件会完成以下操作:1.通过nand flash控制器将nand flash中前4kb的指令数据复制到stepping stone中。2.将0x0地址映射到stepping stone所在的地址。3.CPU从0x0地址处取址执行。可以看一下《嵌入式linux开发完全手册》韦东山以及他的视频,里面讲得很清楚。我也是新手,哈哈

yulutong 发表于 2012-5-2 19:22:08

"如果我这样理解就又有疑惑了,那么nor flash里面的bootloader有什么用(除了通过uboot通过串口将程序烧写到nand flash)"
NOR FLASH,NAND FLASH的结构不一样。NAND 便宜,大容量,有坏块,通常需要上系统,硬件上有专门的NAND接口才能驱动。
NOR 容量小,相对来说贵(16Mb,10元左右),驱动简单,51都可以。
nor里放的是搬运代码,初始化硬件,配置MMU等
写程序的时候就约定好,程序在NAND的存放的起始位置,和长度,有NOR的搬运代码来完成。
NAND是整块读写的,相当于说程序不能跳转了。

有限ARM不需要NOR启动也可以的,会自动复制NAND的代码到内嵌SRAM上,然后再执行启动。实际上也是在做NOR的工作。

明白了吧楼主?

ky51 发表于 2012-5-3 11:00:43

ky51 发表于 2012-5-3 11:08:24

ky51 发表于 2012-5-3 11:08:46

ky51 发表于 2012-5-3 11:10:36

页: [1]
查看完整版本: 关于arm程序执行