7228|12

241

帖子

4

TA的资源

纯净的硅(初级)

楼主
 

Helper2416-06——Helper2416启动详情 [复制链接]

本帖最后由 yuanlai2010 于 2014-7-10 19:20 编辑

Helper2416启动详情

参与Helper2416开发板助学计划心得

前几天发过一篇有关于S3C2416启动流程的帖子,写的不够详细。在参阅老版本的S3C2416用户手册和Helper2416底板、核心板原理图之后,重新写了这篇帖子,希望对大家有所帮助。





在老版本的用户手册中有这样一张图



比较详细的说明了几种启动方式的配置参数;

下面在查看Helper2416的相关原理图:

核心板原理图(1)

核心板原理图(2)

核心板原理图(3)


底板原理图(4)

由上原理图(3)(4)可以知道当SW7按下或者跳线帽接通1、2时,OM[3]为高电平,否侧为低电平。

由上原理图(2)可以知道当OM[3] = 1 时,OM[1] = OM[2] = 0;当OM[3] = 0 时,OM[1] = 1 ; OM[2] = 0。


结合原理图(1):当按下SW7或者跳线帽接通1、2时,OM[4;0] = 01000    为IROM启动模式;否侧 OM[4;0] = 00010   为Nand启动模式。


IROM启动:



IROM启动即先执行芯片固化代码(在0x0位置处),固化代码先进行初始化芯片,如设置系统时钟,初始化堆栈等,随后会再根据相关引脚的配置([GPC7:GPC5]),确定启动设备是SD/MMC还是NAND,对于IROM NAND启动,固化代码从[GPC7:GPC5]的引脚配置状态得出NANDFLASH的信息,如页大小,地址周期多少。之后固化代码再从NANDFLASH的0x0地址偏移出读出8k的代码到内部RAM地址0x40000000处,这块8k的IRAM就被叫做Steppingstone。因为这8k的IRAM代码往往需要进一步引导用户的其它代码到RAM运行。对于IROM SD/MMC启动,固化代码会直接从SD/MMC卡的一个特殊位置读出8k的代码到0x40000000处的Steppingstone。复制完代码到Steppingstone后,固化代码跳转到0x40000000处开始执行用户的代码。






核心板原理图(5)

由原理图(5)可以知道GPC[7;5] = 000 ;即IROM选择SD/MMC作为启动设备,这就是Helper2416 SD卡启动的具体方式,是通过IROM来实现的。

IROM的大概运行流程

1.  Disable the Watch-Dog Timer
2.  Initialize the Block Device Copy Function. (see “Device Copy Function” on chap 2.6)
3.  Initialize the stack region (see “memory map” on chap 2.4)
4.  Initialize the PLL. (see “clock configuration” on chap 2.7)
5.  Initialize the instruction cache
6.  Initialize the heap region. (see “memory map” on chap 2.4)
7.  Copy the BL1 to the stepping stone region (see “Device Copy Function” on chap 2.6)
8.  Verify the integrity of BL1
9.  Jump to the stepping stone



对于IROM的具体过程请参 S3C2450_51_16_IROM_ApplicationNote.pdf (224.17 KB, 下载次数: 37)




Nand启动:

NAND启动模式下,NAND控制器会自动从NAND FLASH 0x0地址偏移处拷贝8k的代码到内部RAM地址0x0处,用户代码从0x0处开始执行。从Samsung给出的S3C2416数据手册来看,较新的数据手册都已经把NAND启动[OM4:OM0]引脚配置以及内存映射信息都删除了,因此Samsung是推荐用户从IROM NAND启动的,因为这样用户代码可以统一处理IROM SD/MMC或IROM/NAND,而不用考虑过多的启动模式。

所以我还是建议BOSS下一版的核心板都用IROM启动比较好!




论坛ID:yuanlai2010

发表时间:2014-07-10




最新回复

M    K  详情 回复 发表于 2014-10-26 09:54
点赞 关注(3)

回复
举报

554

帖子

0

TA的资源

版主

沙发
 
关于启动的问题,我是有做过详细研究的,以上分析非常透彻,先赞一个!我们之所有没有用IROM启动,原因只有一个,IROM启动NAND的时候会校验8BIT ECC,而当用HTAG这样的工具直接烧写NAND的时候,HJTAG不方便写入8BITECC,所以这种情况烧进去的UBOOT是不能启动的。而直接从NAND启动就没这个问题。

点评

原来如此,是我考虑问题太过于片面了,还是需要用实际经验来武装自己。  详情 回复 发表于 2014-7-10 14:56
 
 

回复

241

帖子

4

TA的资源

纯净的硅(初级)

板凳
 
本帖最后由 yuanlai2010 于 2014-7-10 15:12 编辑
spacexplorer 发表于 2014-7-10 13:36
关于启动的问题,我是有做过详细研究的,以上分析非常透彻,先赞一个!我们之所有没有用IROM启动,原因只有 ...

原来如此,是我考虑问题太过于片面了,还是需要用实际经验来武装自己。
 
 
 

回复

1204

帖子

1

TA的资源

纯净的硅(初级)

4
 
那个官方的程序在哪里?我找不到原理图等等信息了
 
 
 

回复

1204

帖子

1

TA的资源

纯净的硅(初级)

5
 
给我下连接

点评

您指的是哪个官方程序?  详情 回复 发表于 2014-7-11 11:34
 
 
 

回复

241

帖子

4

TA的资源

纯净的硅(初级)

6
 

您指的是哪个官方程序?
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(中级)

7
 
楼主可以共享一下老版本的参考手册吗?我下的手册的Figure 1-3没有Nand Flash Boot那一列。谢啦

点评

请转帖https://bbs.eeworld.com.cn/thread-441448-1-3.html下载,感谢这位网友的分享!  详情 回复 发表于 2014-7-14 12:54
 
 
 

回复

554

帖子

0

TA的资源

版主

8
 
有人本区共享,搜一下就来了
 
 
 

回复

241

帖子

4

TA的资源

纯净的硅(初级)

9
 
sdwuyawen 发表于 2014-7-14 10:13
楼主可以共享一下老版本的参考手册吗?我下的手册的Figure 1-3没有Nand Flash Boot那一列。谢啦

请转帖https://bbs.eeworld.com.cn/thread-441448-1-3.html下载,感谢这位网友的分享!
 
 
 

回复

12

帖子

1

TA的资源

一粒金砂(初级)

10
 
分析非常好,受教了
 
 
 

回复

420

帖子

0

TA的资源

纯净的硅(初级)

11
 
很不错。
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

12
 
mark
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

13
 
M    K
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表