Alientek I.MX6UL Linux-第九章 I.MX6U的启动方式

本文详细介绍了I.MX6U系列芯片的两种启动模式:改写eFUSE和通过GPIO选择,重点讲解了串行下载和内部BOOT模式的工作原理。此外,还深入探讨了BOOT_CFG引脚的配置方法,以及镜像烧写过程中的关键文件,包括IVT、Bootdata、DCD和用户代码。
摘要由CSDN通过智能技术生成

启动方式选择

  BOOT模式有两种
  1.改写eFUSE(熔丝);
  2. 修改相应的GPIO高低电平。
  第一种修改eFUSE的方式只能修改一次,后面就不能再修改了,所以作为学习与调试我们不能使用。第二种是修改GPIO对应的高低电平来选择启动方式,所有的开发板都使用这种方式。

BOTE_MODE[1:0]BOOT类型
00从FUSE启动
01串行下载
10内部BOOT模式
11保留

  开发板只用到第二和第三种BOOT方式。

串行下载

  串行下载是指可以通过USB或UART将代码下载到外置存储设备中,所以我们可以使用OTG1这个USB口向开发板的存储设备下载代码。使用时需要用到NXP提供的一个软件,一般用来最终量产的时候烧写到外置存储设备中。

内部BOOT模式

  在此模式下,芯片会执行内部boot ROM代码,这段boot ROM代码会进行硬件初始化,然后从boot设备(存储代码的设备如SD/EMMC/NAND)将代码拷贝至指定的RAM,一般是DDR。

BOOT ROM初始化内容

BOOT 启动设备

在这里插入图片描述

BOOT_CFG引脚含义

在这里插入图片描述

BOOT选择拨码开关

除了BOOT_MODE1和BOOT_MODE0必须引出来,LCD_DATA3LCDDATA7、LCD_DTAT11这六个IO也被引出来,可以通过拨码开关进行设置,其中LCD_DTAT11是BOOT_CFG2[3],LCD_DAT3LCD_DATA7就是BOOT_CFG[3]~BOOT_CFG1[7],这六个IO配置如下:

BOOT_CFG引脚[1:0]对应LCD引脚含义
BOOT_CFG2[3]LCD_DATA11LCD_DATA11|为0时从SDHC上的SD/EMMC启动,为1时从SDHC2上的SD/EMMC启动
BOOT_CFG1[3]LCD_DATA3当从SD/EMMC启动的时候设置启动速度,当从NAND启动的话设置NAND数量
BOOT_CFG1[4]LCD_DATA4 BOOT_CFG1[7:4]
0000 NOR/OneNAND(EIM)启动。
0001 QSPI 启动。
0011 SPI启动。
010x SD/eSD/SDXC启动。
011x MMC/eMMC启动。
1xxx NAND Flash启动。
BOOT_CFG1[5]LCD_DATA5
BOOT_CFG1[6]LCD_DATA6
BOOT_CFG1[7]LCD_DATA7

镜像烧写

  I.MX6U最终可烧写文件组成如下:
  1.Image vector table 简称 IVT,IVT里面包含了一系列的地址信息,这些地址信息在 ROM中按照固定的地址存放着。
  2.Boot data,启动数据,包含了镜像要拷贝到哪个地址,拷贝的大小是多少等等。
  3.Device configuration data,简称 DCD,设备配置信息,重点是 DDR3的初始化配置。
  4.用户代码可执行文件,比如 led.bin。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值