OpenEdv-开源电子网

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

关于镜像文件头信息中DCD段的一点疑惑

[复制链接]

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
186
金钱
186
注册时间
2020-5-13
在线时间
20 小时
发表于 2021-10-7 00:32:38 | 显示全部楼层 |阅读模式
1金钱
I.MX6U内部的boot ROM代码会初始化时钟,然后将镜像下载到DDR中去;

然后镜像头信息中的DCD段又会打开所有的时钟,配置初始化DDR,这一步骤是不是显得有些多余了;

还有头信息中的内容是在下载镜像之前就被执行了吗?

开发指南中有这样一句话 “load.imx 在用户代码前面又有 3KByte 的 IVT+Boot Data+DCD 数据,因此 load.imx 在 DDR 中的起始地址就是 0X87800000-3072=0X877FF400”,运行地址是
0X87800000,那么前面的指令是如何被执行到的?



希望有人帮忙解答一下,谢谢!!!


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
58
金钱
58
注册时间
2021-7-25
在线时间
6 小时
发表于 2021-10-9 09:56:27 | 显示全部楼层
跟不上你的思维了
然后镜像头信息中的DCD段又会打开所有的时钟,配置初始化DDR,这一步骤是不是显得有些多余了--------时钟和DDR都是必须初始化的,你认为多余的理由是啥?
头信息中的内容是在下载镜像之前就被执行了吗-------一般程序被执行,就是程序的各个段被放到对应的链接地址以后执行的,下载之前怎么可能被执行了呢。
那么前面的指令是如何被执行到的-----这个前面的指令是指哪些指令捏?

回复

使用道具 举报

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
186
金钱
186
注册时间
2020-5-13
在线时间
20 小时
 楼主| 发表于 2021-10-10 16:42:17 | 显示全部楼层
boot ROM代码会初始化时钟,DCD段又再来一遍;
程序是从起始地址开始运行的,程序的起始地址是0X87800000,那么0X87800000前边加的文件头里边的指令是如何被执行的;
”下载之前就被执行“我的意思是“程序从SD加载到内存之前文件头中的内容就被执行了吗”;
“前边的指令”就是指的文件头;
回复

使用道具 举报

0

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
58
金钱
58
注册时间
2021-7-25
在线时间
6 小时
发表于 2021-10-11 09:59:30 | 显示全部楼层
个人见解:
boot ROM代码会初始化时钟,DCD段又再来一遍;---boot ROM代码的那是厂家写的初始化,到了用户这里是要再次初始化的。

程序是从起始地址开始运行的,程序的起始地址是0X87800000,那么0X87800000前边加的文件头里边的指令是如何被执行的;-----文件头的指令不会被执行吧,这个还是去看Uboot源码吧

“程序从SD加载到内存之前文件头中的内容就被执行了吗”;---没
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-25 14:37

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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