ARM本身有FLASH的驱动程序?
ARM上电时把FLASH中的数据LOAD到SDRAM中。
然后程序在SDRAM中运行。
那请问,ARM本身就带有FLASH的驱动吗?
要不然怎么能上电就能读取FLASH呢?
[解决办法]
上电即对处理器发送一个Reset信号,ARM进入中断模式。从中断向量RESET开始处理(即地址0x0处开始执行),ROM被映射到地址0(硬件完成),此时,送到地址总线的地址是0x0,但对应的却是ROM中offset为0处的代码。
在ROM中进入Main后,就会通过NAND drive将NAND中的代码读到SDRAM,然后做硬件重映射,将SDRAM映射到地址0处,然后在SDRAM中跑。这些是由BootLoad来完成的。