常见SOC启动流程分析

本文深入剖析了s5pv210 SOC的启动流程,包括从内部IROM执行BL0代码,通过GPIO判断启动介质,加载SRAM中的BL1,以及U-boot的SPL阶段。启动流程涉及介质检测、代码加载和校验,为理解嵌入式系统启动机制提供了详细指南。
摘要由CSDN通过智能技术生成

常见SOC启动流程分析

本文以s5pv210这款SOC为例,分析了其启动流程

在s5pv210的SOC内部,存在着一个内部的ROM和一个内部的RAM

  • 这个内部的ROM叫做 IROM,它是norflash的一种。其不同于板子上外接的inand/sd(mmc),它优点是一上电无需初始化即可使用,缺点是又小又贵…
  • 这个内部的RAM叫做 SRAM,其不同于板子上外接的 DDR(DRAM),它优点也是一上电无需初始化即可使用…..缺点也是又小又贵…

由于它俩的优异特性,一上电后的很多工作就由它俩来负责了

1.判断启动介质

  • 首先一上电,cpu先从SOC内部的IROM中执行预先设置的代码(s5pv210称其为BL0),初始化CPU时钟、关看门狗、并且通过读取特定gpio来判断启动介质。(注:IROM中代码可以直接执行,不用放到SRAM中)
  • 对于有些SOC来说,他们不通过读gpio来判断启动介质,而是根据启动介质的优先级,来依次尝试从各个启动介质启动,直到某个启动介质成功启动SOC

2.加载第一部分引导代码

  • 判断完启动介质后,cpu会执行IROM中相应启动介质初始化代码,并从启动介质的特定扇区开始读取U-boot头部的少量代码(对于s5pv210来说是16k的代码,称其为BL1),然后放到至SRAM并执行。近年来的U-boot将这一小段代码称为“SPL”,并开始支持单独编译它
  • 为什么不直接加载整个U-boot呢ÿ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值