Exynos4412 的启动过程详解(二)

目录

Exynos4412 启动框架图

Exynos4412 一般启动过程

Exynos4412 安全启动过程

Exynos4412 几种启动模式


Exynos4412 启动框架图

Exynos4412 一般启动过程

1. Exynos4412 有 64 KB ROM (iROM) 和 256 KB SRAM (iRAM) 作为 SoC内部存储

2. SoC上电时首选运行 iROM 中的程序,这段程序由三星出厂时烧录。这段程序会初始化系统时钟和栈空间,并根据 OM(Operating Mode,工作模式)从不同的启动介质中(NAND、SD/MMC、eMMC、USB)中加载镜像到 SRAM 中。这个阶段为 启动阶段 的 BL0 (BootLoader 0)阶段

3. 上述被加载到 iRAM 中运行的镜像中,需要有一段代码为按照官方要求实现的代码,这段代码在 iRAM 中首先被运行。用于初始化 DDR 和其所需的系统时钟,待初始化 DDR 完成后再将 OS 加载到 DDR 中运行。这段代码就是用于 BL1 阶段的代码。

Exynos4412 安全启动过程

除了上述的启动过程以外,Exynos4412 提供了一种安全启动的方式,也是更通用的启动方式。即将原有的 BL1 拆分为 BL1 和 BL2。 BL1 由三星提供,而 BL2 由用户提供。这样的好处是将芯片部分和平台部分分开,不管外设如何,BL1 只需提供将 BL2 程序加载到 iRAM 中的函数即可。BL1 同时提供了安全校验的方式保证 BL2 的完整性。

Exynos4412 几种启动模式

1. Exynos4412 提供了如上 9 中启动模式,启动模式决定在 BL0 阶段读取哪种介质中的程序。值得一提的是 USB 这种方式不作为常规启动模式,一帮用于 Debug 模式。

2. SD、 NAND、eMMC 这些是什么我在《存储器这个小话题 -- 闪存(3)》一文中简单介绍过,此处不再赘述。

3. 2nd Device 是一种冗余设计,旨在 1st Device 无法正常启动过程时使用 2nd Device 方式进行启动。上述的 2nd Device 提供了 USB 和 SDMMC 两种方式,如果你的设备支持,可以尝试破坏 1st Device 中的镜像, 让设备从 2nd Device 启动。

2021年8月8日

Kilento

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值