文章目录
1 I.MX6ULL镜像文件
boot ROM程序:
选择内部启动方式,启动boot ROM程序
- 初始化时钟、外部DDR3
- 从外部存储介质加载代码
必须解决两个问题:DDR3初始化参数如何确定?代码加载到哪里?镜像文件中就描述了这些问题。
镜像文件的五要素:
- 空偏移
- 芯片厂商设定
- Image vector table,简称IVT
- 关键数据位置
- Boot data,启动数据
- 镜像加载地址、大小
- Device configuration data,简称DCD
- 关键外设的寄存器配置信息(时钟、DDR3相关)
- bin文件
- 真正程序文件
8.7.1 Image Vector Table and Boot Data
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9cQhZBnd-1596880013227)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20200704091452248.png)]](https://i-blog.csdnimg.cn/blog_migrate/27150a5a9db6011a0047ddf10e2f965c.png)
空偏移:
镜像不是从介质头部开始存储的,不同介质分别对应一段偏移地址。
8.7.1 Image Vector Table and Boot Data
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1vtPfJnb-1596880013250)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20200704092110555.png)]](https://i-blog.csdnimg.cn/blog_migrate/adeb6a99ba6942a086fcc6b57c31480a.png)
- Boot Device Type:不同启动介质
- Image Vector Table Offset :镜像有效数据偏移位置
- Initial Load Region Size:boot rom程序读取程序大小
IVT表:
记录关键数据的位置。
8.7.1.1 Image vector table structure
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cUN4Yp0E-1596880013251)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20200704093152444.png)]](https://i-blog.csdnimg.cn/blog_migrate/11d919e56089307aad45a6174970edd3.png)
- header:IVT的长度、大小
- entry:程序运行地址
- dcd:内存中DCD数据地址
- boot data:内存中boot data地址
- self:内存中IVT自己所在地址
Boot data:
记录"镜像"在内存中的加载地址和大小。
8.7.1.2 Boot data structure
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lPR2mKHT-1596880013253)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20200704094321719.png)]](https://i-blog.csdnimg.cn/blog_migrate/e52f279529689fa5cd090655c8a8d55d.png)
- start:镜像在内存中的加载地址,包括空偏移
- length:镜像长度,包括空偏移
DCD表:
外设寄存器配置信息,初始化关键外设。
8.7.2 Device Configuration Data (DCD)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tYcmluep-1596880013254)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20200704100124427.png)]](https://i-blog.csdnimg.cn/blog_migrate/418567b32f9c4073674384d03de72537.png)
- Header:记录DCD大小、版本
- CMD:寄存器初始化列表
Table 8-28. Write data command format

- Tag:DCD命令,一般为写寄存器
- Length:表示命令的大小
- Parameter:设置写寄存器方式(写值/清位/设置位)
- Address:寄存器地址,主要是时钟、DDR3相关外设地址
- Value:具体设置值
参考资料:
1281

被折叠的 条评论
为什么被折叠?



