最近在研究从友坚买回来的S5PV210开发板,发现是通过USB和NAND来启动的,而S<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />3C6410的板子大多数是支持SD卡和NAND启动的,所以感觉比较模糊,但一直都没有时间研究这个。但是最近想要在210板子上实现从SD卡启动,所以不得不开始研究这些问题了。(其实就是芯片手册没有好好看的原因)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

本文主要将S3C6410和S5PV210的启动模式放到一起进行一个对比学习,先转载S3C6410的启动模式,来自ARM-WinCE,已经做了比较详细的分析,原文地址为http://blog.csdn.net/nanjianhui/article/details/4230565。之后再给出S5PV210的启动模式。
一、先读一下S3C6410 User Manual的第3章 System Controller,在123页列了一张表,如图:
这张表列出了S3C6410所支持的几种启动模式。首先介绍一下和启动模式相关的硬件管脚:
OM[4:0]:选择启动设备及时钟源。OM[0]为0选择XXTlpll,为1选择XEXTCLK。
GPN[15:13]:用于识别所支持的Nandflash的类型,包括Page的类型和地址周期。
XSELNAND:选择Nand启动或者是OneNand启动。0为OneNand,1为Nand。
下面来总结一下S3C6410所支持的启动模式:
1. NORFlash启动
通过Nor Flash启动,此时OM[4:1]为0100或0101,对应8bit和16bit。
2. NandFlash启动
虽然在S3C6410 User Manual中没有提到,但是也是支持的,从S3C6400 User Manual可以找到。OM[4:1]四个硬件管脚决定了Nandflash启动,以及支持的Nandflash的类型,包括大Page和小Page,地址周期为3,4,5。当然,XSELNAND管脚也要为1。
3. OneNAND启动
首先XSELNAND管脚为0,其次OM[4:1]为0110,为OneNand启动模式。
4. MODEM启动
当OM[4:1]为0111的时候,为MODEM启动。S3C6410通过MODEM接口下载boot代码到内部RAM中,然后进行引导。
5. IROM启动
当OM[4:1]为1111的时候,从Internal ROM中启动,此时GPN[15:13]用于识别设备的类型。这种模式以前没见过,这里具体介绍一下。
IROM模式可以支持MoviNand,SD/MMC,iNand,OneNand和Nand等。关于IROM的引导,具体过程如图:
1. 处理器上电后,当OM[4:1]=1111时,运行iROM中的程序,这个程序被称为Bootloader0(BL0),它会做一些初始化的工作。
2. 然后根据GPN[15:13]的管脚设置,选择从相应的设备(SD/MMC/OneNand/Nand)中的指定区域读取4KB的程序到SteppingStone中运行,这段代码被称为Bootloader1(BL1)。
3. BL1可以初始化系统时钟,UART,SDRAM等设备,然后拷贝Bootloader2(BL2)到SDRAM中。
4. 跳转到SDRAM中的BL2,继续运行,BL2可以支持更强大的功能,可以将OS加载到SDRAM中,然后运行OS。
整个过程中,IROM是最先被运行的,它会首先做一些初始化,具体IROM的流程如下:
1. 禁用Watch-dog
2. 初始化TCM
3. 初始化设备拷贝函数,用于拷贝BL1到SteppingStone中
4. 初始化栈区域
5. 初始化PLL
6. 初始化指令Cache
7. 初始化堆区域
8. 拷贝BL1到SteppingStone中
9. 验证BL1
10. 跳转到SteppingStone中运行
二、S5PV210的启动模式可以参照上面的介绍,这里给出datasheet中对应的图解,可以帮助理解。
       首先是S5PV210支持的启动模式的设置。
其次是引导过程的执行顺序图。
最后是启动的流程图。

转载于:https://blog.51cto.com/jazka/602644

S3C6410和S5PV210的启动模式介绍相关推荐

  1. S3C6410启动模式介绍

    目前的ARM处理器都支持多种启动模式,S3C6410和以前的Samsung的ARM处理器一样,通过外部管脚OM[4:0]的拉高拉低来决定是从哪个存储设备上启动.我认为S3C6410的User Manu ...

  2. linux maskrom模式,微雪电子RK3308主板CC启动模式介绍

    描述 启动模式说明 前言 ROC-RK3308-CC 有着非常灵活的启动方式.一般情况下,除非硬件损坏,ROC-RK3308-CC 主板是不会变砖的. 如果在升级过程中出现意外,bootloader ...

  3. Android启动模式介绍

    安卓Android一般有Meta.Normal.Bootloader.Recovery.Factory等启动模式,这些模式都需要在系统启动时通过按键等方式触发进入,除了Normal模式,其它模式都属于 ...

  4. [project X] tiny210(s5pv210)上电启动流程(BL0-BL2)

    建议参考文档: S5PV210-iROM-ApplicationNote-Preliminary-20091126 S5PV210_UM_REV1.1 项目介绍参考 [project X] tiny2 ...

  5. Android入门:Activity四种启动模式

    2019独角兽企业重金招聘Python工程师标准>>> 一.启动模式介绍 启动模式简单地说就是Activity启动时的策略,在Android Manifest.xml中的标签的and ...

  6. activity 启动模式_Android世界:Activity的启动模式及其适用范围

    一.Activity启动模式简介 activity启动模式,可以理解为activity在任务栈(也叫"回退栈")的回退规则,即点击"back"键时,activi ...

  7. Android 源码分析 Activity的启动模式

    一直想抽空针对AMS进行源码分析,无奈一方面因为很忙,另外AMS很复杂,涉及的知识点也比较多,今天利用五一假期对AMS的一个方面,Activity的启动模式进行源码分析,这里面包括了ActivityR ...

  8. bootloader的两种启动模式

    启动模式介绍     大多数 Boot Loader 都包含两种不同的操作模式:"启动加载"模式和"下载"模式,这种区别仅对于开发人 员才有意义.但从最终用户的 ...

  9. Android入门之Activity四种启动模式

    一.启动模式介绍 启动模式简单地说就是Activity启动时的策略,在AndroidManifest.xml中的<Activity>标签的android:launchMode属性设置: 启 ...

  10. S5PV210开发 -- 烧写/启动模式

    如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/78315508 和 Hi3516A.DM368 开发流程一样,我们先看一下烧写 ...

最新文章

  1. 轻量级高精度人脸关键点推荐
  2. python网络爬虫的论文模板_Python简单网络爬虫实战—下载论文名称,作者信息(上)...
  3. html手机pc不同页面,PC端和手机端如何同时生成静态页
  4. [python opencv 计算机视觉零基础到实战] 十六、用opencv画画
  5. 是什么东西_隐形牙套附件是什么东西?
  6. FTP Client Setup
  7. emacs+cedet解析源码定义位置
  8. 全国计算机vfp是什么,计算机二级VFP数据库简介
  9. 实验7 多个交换机虚拟局域网
  10. 成都国税打造全能“电子税务局”
  11. Usage of API documented as @since 1.8+”报错的解决办法
  12. 计算ip地址是否在同一网段
  13. 硬件设计23之三极管开关原理与场效应管开关原理
  14. 三国志战略版360区S4服务器合并信息,三国志战略版S3赛季哪些大区合并
  15. OpenCV入门系列 —— boxFilter盒子滤波
  16. 用例图包含关系、扩展关系、泛化关系解析
  17. 如何使用WebService服务
  18. android通讯录开发(粗糙实现微信通讯录的功能)
  19. matlab自定义函数的使用方法,Matlab自定义函数的几种方法
  20. QT中$$PWD的意思(转)

热门文章

  1. golang 语言中关于err的函数的封装使用
  2. python无法启动此程序因为_(python shell怎么用)为啥我按照python安装教程,总说无法启动此程序,因为计算机中丢失?...
  3. python3 open打开文件_Python3基础 file open 打开txt文件并打印出全文
  4. NPM — JavaScript 的包管理器
  5. Net设计模式实例之建造者模式(Builder Pattern)(1)
  6. qml demo分析(maskedmousearea-异形窗口)
  7. 1007. 素数对猜想 (20)
  8. 取代SharedPreferences的多进程解决方案
  9. SAP QM 可以控制到没有收到Vendor 的certificate的话就不能做UD.
  10. 史上最全的phpstorm常用配置