二. I.MX6U开发板简介

1. I.MX6U-ALPHA/Mini 开发平台介绍

(1) 开发板底板资源

在这里插入图片描述

(2) 开发板核心板资源

在这里插入图片描述
CPU: MCIMX6Y2CVM08AB(工业级), 800MHz(实际 792MHz), BGA289
外扩 DDR3L: NT5CC256M16EP-EK, 512MB 字节,商业级。
EMMC: KLM8G1GET,这是一个 8GB 的 EMMC 芯片。
两个 2*30 的防反插 BTB 座,共引出 120 PIN

2.启动方式

(1)启动方式

根据IO管脚: BOOT_MODE[1:0]确定启动方式:
在这里插入图片描述
BOOT_MODE接到开发板的 BOOT_CFG的拨码开关1,2:
在这里插入图片描述

<1> FUSE启动

根据eFUSE(熔丝)的值确定启动流程。GPIO的值被忽略。
暂时可以忽略。

<2>串行下载

通过 USB或UART将代码下载到板子的外置存储设备。
需要用到NXP提供的软件,量产的时候会采用该方式烧写。

<3> 内部BOOT模式

执行内部的boot ROM的代码,固化的代码,无法通过外部方式访问。
(1)初始化必要的硬件(时钟,MMU,Cache,异常向量。。)
(2)从外部boot设备中,将代码拷贝到指定的RAM中。

(2)启动设备

启动管脚:BOOT_CFG1[7:0],BOOT_CFG2[7:0],BOOT_CFG4[7:0]
1,2: BOOT_MODE[2:1]:确定启动方式
3: BOOT_CFG2[3]:0 SDHC1,1 SDHC2; 板子上 SDHC2连接EMMC
8~5:BOOT_CFG1[7-4]:0100:SD卡启动;1001:NAND 启动
在这里插入图片描述
在这里插入图片描述

3. 镜像烧写

使用 imxdownload 这个软件将 led.bin 烧写到了 SD 卡。
imxdownload会在 .bin 文件头部添加 IVT+Boot data+DCD 生成 load.imx

下面图示,imx文件拷贝到 RAM 中的地址(Memory Map的线性地址):
在这里插入图片描述

(1)IVT(Image Vector Table)

大小为32个字节,包含 IVT, Boot data,DCD 和 bin的RAM地址信息:
<1> Head (0x0 - 0x3)
第一字节为 Tag, 二三字节为 IVT的大小, 第四个字节为 Version
<2> entry (0x4 - 0x7) 镜像(.bin)的起始地址 0X87800000
<3> DCD的地址 (0xC - 0xF) DCD的起始地址 0X877FF42C
<4> Boot Data (0x10 - 0x13)Boot Data的起始地址 0X877FF420
<5> self (0x14 - 0x17)IVT的起始地址 0X877FF400

(2) Boot Data

start (0x20 - 0x23)imx的起始地址(0X877FF000)
Leng (0x24 - 0x27) Image的大小(0X00200000)

(3)DCD 数据

寄存器地址和对应的配置信息集合
Boot ROM 会使用这些寄存器地址和配置集合来初始化相应的寄存器
在这里插入图片描述
上面的地址主要包括三个方面:
<1> CCGR0 - CCGR6, 时钟使能寄存器,默认打开所有外设时钟
<2> 配置 DDR3 所有的IO
<3> 配置 MMDC 控制器, 初始化 DDR3

(4) 启动流程

  1. 上电后,会先执行 bootRom 程序
  2. bootRom 会把 EMMC 或 TF 卡的前 4K 数据读入到芯片内部 RAM 运行
  3. bootRom 根据 DCD 进行初始化 DDR。
  4. bootRom 根据 IVT,从 EMMC 或 TF 卡中将 led.bin 读到 DDR 的0x80100000(0X87800000) 地址
    1. 跳转到 DDR 的 0x80100000(0X87800000) 地址执行
      在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值