官方文档

1.S5PV210支持多种启动方式(IROM),MoviNAND/iNand, MMC/SD Card ,pure Nand, eMMC, eSSD, UART and USB boot with iROM is supported.

硬件特性:

(1)内核cortex A8

(2)64K的ROM(IROM)

(3)96K的SRAM

(4)通用性的SDRAM控制器

(5)4/8bit高速SD/MMC控制器,4bit SD / 4 bit MMC / 4 or 8 bit eMMC

(6)NandFlash控制器

(7)OneFlash 控制器

(8)UART/USB控制器

启动

注意:有第二启动,当第一启动失败后会自动转到第二启动(SD/MMC的通道2  4bit)。

优点:

(1)降低BOM成本。因为iROM可以使SOC从各种外设启动,因此可以省下一块boot rom(专门用来启动的rom,一般是norflash)

(2)支持各种校验类型的nand ECC

(3)可以在不使用编程器的情况下使用一种外部存储器运行程序来给另一种外部存储器编程烧录。这样生产时就不用额外购买专用编程器了,降低了量产成本。

注意:SD/MMC/eMMC -MMC 通道0第一启动,通道2第二启动。

内部IROM(BL0)启动序列

(1)关看门狗

(2)初始化指令cache

(3)初始化栈

(4)初始化堆

(5)初始化块设备复制函数device copy function

(6)设置SoC时钟系统

(7)复制BL1到内部IRAM(16KB)

(8)检查BL1的校验和

(10)跳转到BL1去执行

210块设备复制函数 device copy function

V210启动流程图:

注意:WakeUp status 唤醒状态(复位状态)

判断OM 的PIN脚 选择第一启动方式

S5PV210的所有启动

(1)先1st启动,通过OMpin选择启动介质

(2)再2nd启动,从SD2

(3)再Uart启动

(4)再USB启动

SD/MMC/eSSD Device Boot Block Assignment  

SD/MMC/eSSD启动布局

1Block=512

BL1写在第1扇区开始。

eMMC,NAND  block0扇区写

文件头,校验头

启动配置:

1'b0:(1'b)二进制,(0)ground

列子=;eSSD第一启动OM5=0,OM4=0,OM3=0,OM2=0,OM1-0,OM0=0or1.

转载于:https://my.oschina.net/vvbest/blog/810560

嵌入式开发笔记(二)嵌入式系统启动过程 (S5pv210)相关推荐

  1. [安卓开发笔记二]android Studio通过jni调用C++代码

    [安卓开发笔记二]android Studio通过jni调用C++代码 16/12/11 更新 此博客基于安卓android studio 1.5所写,现在已经有了android studio2.2的 ...

  2. 嵌入式开发:通过嵌入式虚

    嵌入式虚拟化为实现多核处理能力的优势提供了一种可扩展的机制.嵌入式应用中的虚拟化与其企业和桌面应用有许多共同之处.独特的嵌入式使用案例和专业的底层技术为嵌入式开发人员提供了优化性能和响应设计的新机会. ...

  3. 【Visual C++】游戏开发笔记二十七 Direct3D 11入门级知识介绍

    游戏开发笔记二十七 Direct3D 11入门级知识介绍 作者:毛星云    邮箱: happylifemxy@163.com    期待着与志同道合的朋友们相互交流 上一节里我们介绍了在迈入Dire ...

  4. iOS工程开发笔记二

    iOS工程开发笔记<二> 在Xcode 4, 5的模板工程中可以看到Precompile Prefix Header,但是在Xcode 6被去除了. Xcode 6去掉Precompile ...

  5. 微信小程序开发笔记二(WXSS和CSS样式美化)

    微信小程序开发笔记二(WXSS和CSS样式美化) 一.CSS基本知识 1.Class选择器的定义 2.ID选择器的定义 3.ID选择器和class选择器的区别 4.CSS中设置颜色 5.CSS中的文本 ...

  6. 【Visual C++】游戏开发笔记二十七 Direct3D 11入门级知识介绍

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. http://blog.csdn.net/zhmxy555/article/details/7707628 作者:毛星云 邮箱: happ ...

  7. 【Visual C++】游戏开发笔记二十三 游戏基础物理建模 五 粒子系统模拟 二

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 本系列文 ...

  8. 【Visual C++】游戏开发笔记二十三 游戏基础物理建模(五) 粒子系统模拟(二)

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. http://blog.csdn.net/zhmxy555/article/details/7607916 作者:毛星云    邮箱: h ...

  9. 视频教程-初级玩转Linux+Ubuntu(嵌入式开发基础课程)-嵌入式

    初级玩转Linux+Ubuntu(嵌入式开发基础课程) 6年嵌入式开发经验,在多家半导体公司从事芯片测试.验证.Linux驱动开发都工作.熟悉芯片设计流程.熟悉产品平台方案开发流程. 王利涛 ¥39. ...

  10. 学习笔记:操作系统启动过程

    学习笔记:操作系统启动过程 参考资料: 1.<操作系统真象还原>郑钢 2.<操作系统引导探究> 谢煜波 操作系统启动过程 按下电源后: 电源键连接的电信号线发送一个电信号给主板 ...

最新文章

  1. Ubuntu 13.10 安装Terminalx 后更改默认终端设置
  2. 如何用两种方式同时实现ListBox的滚动功能
  3. 【转】排除被冲销的物料凭证
  4. 总结:数组名和指针完全是两码事
  5. Docker常用操作
  6. sliverlight 开发FAQ
  7. MYSQL快速导入大量数据
  8. 一个励志PM小哥哥的Java转型之路
  9. iOS-启动动态页跳过设计思路
  10. 离线安装Electron
  11. 字符串的碎片整理。。。
  12. 欧姆龙cp1h指令讲解_欧姆龙cp1h常用指令学习(十二)块程序
  13. android 圆形自定义进度条,自定义Android圆形进度条(附源码)
  14. js链接oracle数据库语法,js连接oracle数据库
  15. win10 u盘 修复计算机,怎么用u盘修复windows10专业版系统
  16. FCPX插件:PremiumVFX Ink Title(墨水标题字幕条动画插件)
  17. win7游戏全屏模式通过注册表修改
  18. 改革人工智能时代的劳动技能教育
  19. 数据结构——单链表 | 完善单链表
  20. 为了监控老板,我用Python做了个摸鱼神器

热门文章

  1. ERROR 程序出错,错误原因:'bytes' object has no attribute 'read'
  2. linux上部署javaWeb项目
  3. 微信小程序将于 2017 年 1 月 9 日正式开放
  4. MySQL数据约束和关联查询
  5. Bootstrap表格内容垂直水平居中
  6. MySQL内核月报 2015.01-MySQL · 捉虫动态· replicate filter 和 GTID 一起使用的问题
  7. MySQL去除查询结果重复值
  8. Servlet中参数获取方法
  9. Zookeeper——一致性协议:Zab协议
  10. ElasticSearch中的分析器是什么?