【ARM 裸机】I.MX 启动方式之启动头文件 1

接上一节:【ARM 裸机】I.MX 启动方式之启动设备的选择

2、启动头文件

当 BOOT_MODE1 为 1,BOOT_MODE0 为 0 的时候此内部 BOOT 模式,在此模式下,芯片会执
行内部的 BOOT ROM 代码,这段 BOOT ROM 代码会进行硬件初始化(一部分外设),然后从 BOOT 设备(就是存放代码的设备、比如 SD/EMMC、NAND)中将代码拷贝出来复制到指定的 RAM 中,一般是 DDR。

2.1、BOOT ROM 做什么

设置内核时钟频率为 396 MHz,使能 MMU 和 Cache,使能 MMU 和 L1 Cache 和 L2 Cache 是为了加速启动;另外还要从 BOOT_CFG 设置的存储中,读取 image,然后做相应的处理;
在这里插入图片描述
在这里插入图片描述

2.2、IVT 和 BOOT DATA

之前说,bin 文件前面会添加一个头部,我们烧写的 load.imx 文件在 SD卡上的起始地址 0x400,也就是 1024;
在这里插入图片描述
在这里插入图片描述
头部的大小是 3 KB,加上偏移的 1 KB,一共是 4 KByte,因此 bin 文件在 SD卡上的起始地址为 4096;IVT 的大小为 32 个字节,8 条;
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-21 09:08:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-21 09:08:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-21 09:08:02       87 阅读
  4. Python语言-面向对象

    2024-04-21 09:08:02       97 阅读

热门阅读

  1. Mysql 和 PostgreSQL 到底选啥?

    2024-04-21 09:08:02       39 阅读
  2. NLOS中如何提取出首达路径

    2024-04-21 09:08:02       30 阅读
  3. 【python】python基础学习笔记

    2024-04-21 09:08:02       36 阅读
  4. 使用 Cucumber框架进行BDD测试的一些项目

    2024-04-21 09:08:02       30 阅读
  5. 2024年学习计划

    2024-04-21 09:08:02       31 阅读
  6. Stylus 入门使用方法

    2024-04-21 09:08:02       32 阅读
  7. Stylus入门使用方法

    2024-04-21 09:08:02       45 阅读
  8. stylus入门使用方法

    2024-04-21 09:08:02       43 阅读
  9. leetcode748-Shortest Completing Word

    2024-04-21 09:08:02       33 阅读
  10. 游程编码(Run-Length Encoding, RLE)的python实现

    2024-04-21 09:08:02       24 阅读
  11. 吉林教育报社投稿信箱投稿邮箱

    2024-04-21 09:08:02       29 阅读