|
NAND Flash启动时,启动代码中调用RdNF2SDRAM()这个函数实现复制NAND Flash代码到SDRAM,问题是此时代码是运行在4K Steppingstone中的,那是不是RdNF2SDRAM()被编译到这4K Steppingstone引导代码中?如何知道呢?
nand_boot_beg
[ {FALSE}
bl RdNF2SDRAM ;复制NAND Flash到SDRAM
]
ldr pc, =copy_proc_beg
还有以下代码什么情况才执行
0
ldmia r0!, {r4-r7}
stmia r2!, {r4-r7}
cmp r2, r3
bcc %B0
注释上说是把程序复制到RAM中;
但当从NAND Flash启动时,因为前面已经有复制到RAM的代码了(bl RdNF2SDRAM),故不会运行,当从RAM调试中启动时,也不用RAM复制到RAM,那只有一种可能,就是从NOR FLASH启动时,但NOR FLASH中可以直接运行代码,不需要把代码copy到sdram中;那这段代码是不是多余的?
望各位赐教,不胜感激! |
|