OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2367|回复: 2

[疑问]关于uboot重定位之前的代码

[复制链接]

1

主题

4

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2019-3-12
在线时间
5 小时
发表于 2023-6-5 12:23:54 来自手机 | 显示全部楼层 |阅读模式
我有个疑问没搞明白,看资料uboot是就在内部ram里执行,然后跑到重定位部分,跑完后接下来uboot程序就在外部的ddr那执行了。

在这里没提到的一点是,这里uboot是完整被拷贝到了内部ram吗还是只拷贝一部分,如果是拷贝的话会拷贝多少,这个大小又是哪里设置的?拷贝部分的话怎么保证重定位之前需要执行的代码都被拷贝进了内部ram。

我看编译出来的uboot大小内部ram是放不下的。

有知道的给讲讲启动这部分,不胜感激。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

4

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2019-3-12
在线时间
5 小时
 楼主| 发表于 2023-6-10 19:43:23 | 显示全部楼层
回复 支持 反对

使用道具 举报

2

主题

8

帖子

0

精华

新手上路

积分
38
金钱
38
注册时间
2023-2-16
在线时间
5 小时
发表于 2023-6-29 15:37:17 | 显示全部楼层
我也在研究uboot启动流程这部分的内容,楼主你有相关的书或者资料教程分享吗?
我的理解是这样的:
首先,板子上电后,最开始会执行内部ROM里面的Boot ROM代码,这部分代码的作用是完成时钟寄存器配置、根据boot引脚电平选择外部介质的启动方式、将外部介质中的uboot前4KB内容拷贝到内部RAM中,这4KB内容包括(IVT+Boot Data+DCD),然后在内部RAM中完成部分初始化,其中包括初始化外部DDR,之后将4KB之后的uboot拷贝到外部DDR中执行。
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-23 04:29

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表