一、S5P4418启动流程:
(1)芯片上电后首先自动运行IROM里的代码,IROM是芯片中的一个包含固化代码的ROM存储空间,该段代码主要侦测启动脚的配制,从相应启动介质中抓取16KB代码(Block1-Block32)到ISRAM(0xFFFF0000)中运行。
(2)运行内部ISRAM中的2ndboot.bin代码,复制u-boot.bin到DDR中。
(3)在DDR中运行u-boot.bin。
二、NanoPi2 MMC镜像分布:
三、NanoPi2 MMC镜像解析:
NanoPi2镜像中的2ndboot.bin包含Nish.bin和initalboot.bin两部分。
(1)NISH1.bin:
NISH1.bin文件占一个Block(512字节),被烧录在SD卡上的第1号Block。上电启动后被复制到从0xFFFF0000开始的地址空间(ISRAM)中。反编译后可以得到部分指令:
可以看到NISH1.bin前8行指令均为跳转指令,即ResetV、UndefV、SWIV、PAbortV、DAbortV、UnusedV、IRQV、FIQV等8种用户异常向量表。从图中第20行可以看出:当发生以上中断时,系统将会跳转到0xFFFF0200、0