0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

i.MX RT1xxx上SDMMC出厂模式

恩智浦MCU加油站 来源:恩智浦MCU加油站 2023-05-18 09:25 次阅读

如果你在i.MX RT1xxx板卡上尝试过从SD/eMMC卡启动,你会发现一个奇怪的现象:通常在BOOT_MODE[1:0]设置为从串行NOR Flash启动,如果在Flash中没有可启动App情况下,芯片会自动转入串行下载模式,但是如果此时SD/eMMC卡槽中插着存有可以正常运行的App程序,此时芯片是可以正常启动的,并且启动是 SD/eMMC里的程序,这是怎么回事?

今天就跟大家介绍下导致这个现象背后的神秘力量——SDMMC manufacture mode(出厂模式)。

注:只有i.MX RT四位数的产品支持SDMMC出厂模式。

回顾i.MX RT的启动设备

所有i.MX RT系列均没有内部非易失性存储器,需要配置一个外部存储器存放启动代码,这个外部存储器我们也称作启动设备。 i.MX RT 支持的启动设备类型非常多,并且因为启动设备受板级环境影响可能导致启动代码读取异常,因此i.MX RT上设计了多级启动保障,如下图所示: 16ac28a2-f51a-11ed-90ce-dac502259ad0.png 芯片上电之后,首先按照BOOT_MODE引脚的配置,执行Primary Boot即第一级启动流程;当第一级流程启动失败后,则进入第二级Recovery Boot启动流程;如果第二级启动仍然失败,则将进入Manufacture Boot启动流程,尝试从SD/eMMC启动。 以下将具体谈谈这个第三级的,出厂启动模式。

何为SDMMC出厂模式

i.MX RT1xxx系列支持的一级启动设备有很多:串行NOR/NAND、并行NOR/NAND、SD/eMMC,当这些一级启动设备中的App未能正常启动时,为了保证系统仍能运行正常,将会自动进入备份启动方案(默认没开启,需要主动运行eFuse 开启),我在之前介绍过一期《从Serial(1-bit SPI) EEPROM/NOR恢复启动》。

如果这个备份启动方案仍然失败了怎么办?那就需要进入今天的主角,第三级也是最后一级启动方案-SDMMC manufacture方式启动(默认开启,可以启动eFuse关闭。对于RT1050系列,配置在eFuse 0x470[3]-Disable SDMMC Manufacture mode),简单说就是i.MX RT会做最后的努力:尝试从SD/eMMC中启动App。 需要注意的是这个SDMMC manufacture启动方式和作为《一级启动设备 SD/eMMC 方式》两者区别如下: 一级启动设备SD/eMMC可以有很多用户配置(由BT_CFG引脚或者eFuse决定),但是SDMMC manufacture启动与用户配置完全无关,其固定从uSDHC1口以1bit bus width,3.3V模式去读取启动 App。

何时进入SDMMC出厂模式

在i.MX RT芯片参考手册System Boot章节可以找到如下流程图,图中介绍了两种进 入SDMMC manufacture模式的途径。 16d00ad8-f51a-11ed-90ce-dac502259ad0.png 第一种途径是在BOOT_MODE[1:0]=2'b10(或者BOOT_MODE[1:0]=2'b00且BT_FUSE_SEL=1'b1)时,主启动设备以及备份启动设备(假设已使能)均失败的情况下自动进入,这种方法属于被动式进入,当然这也是该模式的主要用意。 第二种途径是在BOOT_MODE[1:0]=2'b00且BT_FUSE_SEL=1'b0时,主动进入 SDMMC manufacture模式,这有点将该模式升级成一级启动设备地位的感觉。   最后提一下,i.MX RT上的SDMMC manufacture模式特性完全继承自i.MX系列,我们知道在MPU世界里使用SD卡场景非常多,因此使能这个功能很自然,在i.MX RT上如果应用里也有SD卡相关设计,那么不妨也关注下这个特性,可以多一重保障。    

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    38

    文章

    7444

    浏览量

    163547
  • 程序
    +关注

    关注

    116

    文章

    3769

    浏览量

    80793
  • sdmmc
    +关注

    关注

    0

    文章

    4

    浏览量

    2028

原文标题:一起聊聊i.MX RT1xxx上的神秘力量——SDMMC出厂模式

文章出处:【微信号:NXP_SMART_HARDWARE,微信公众号:恩智浦MCU加油站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    i.MX RT1xxx 系列的时钟系统以及相关功能引脚

    目前 i.MXRT1xxx 系列主要分为 i.MX RT10xx 和 i.MXRT11xx 两大分支。这两个分支的时钟系统设计是有一些差异的,不过总体来说,架构差别不大,我们以如下
    发表于 07-08 17:01 754次阅读

    i.MX RT10xx系列外部晶振相关引脚的作用

    之前写过一篇关于时钟引脚的文章 《i.MX RT1xxx系列MCU时钟相关功能引脚的作用》,里面简单提及了外部晶振相关引脚的作用,但是并没有详细展开。
    的头像 发表于 10-13 09:08 1421次阅读

    i.MXRT1xxx Boot的Serial Downloader模式相关资料分享

      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MX RT1xxx系列MCU的Flashloader。  在上一篇文章 Serial Downloader模式
    发表于 01-26 08:12

    介绍的是i.MX RT1xxx系列MCU的Parallel NOR启动

      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MX RT1xxx系列MCU的Parallel NOR启动。  一篇讲i.MXRT1xxx从Raw NA
    发表于 02-22 06:31

    介绍i.MX RT1xxx系列MCU的Raw NAND启动

      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MX RT1xxx系列MCU的Raw NAND启动。  前面铺垫了七篇启动系列文章,终于该讲具体Boot Device了
    发表于 02-22 07:20

    i.MX RT开发笔记-08 | i.MX RT1062嵌套中断向量控制器NVIC(按键中断检测)

    系列文章目录i.MX RT开发笔记-01 | 初识 i.MX RT1062 跨界MCUi.MX RT
    发表于 12-01 13:51 2次下载
    <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>开发笔记-08 | <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>1062嵌套中断向量控制器NVIC(按键中断检测)

    痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU硬件那些事(2.2)- 在串行NOR Flash XIP调试原理...

      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MX RT1xxx系列EVK在串行NOR Flash调试的原理。  本文是i.MXRT硬件那些事系列第二篇的续集,在
    发表于 12-01 20:51 0次下载
    痞子衡嵌入式:恩智浦<b class='flag-5'>i.MX</b> <b class='flag-5'>RT1xxx</b>系列MCU硬件那些事(2.2)- 在串行NOR Flash XIP调试原理...

    痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU启动那些事(4)- Flashloader初体验(blhost)...

      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MX RT1xxx系列MCU的Flashloader。  在上一篇文章 Serial Downloader模式
    发表于 12-02 09:36 7次下载
    痞子衡嵌入式:恩智浦<b class='flag-5'>i.MX</b> <b class='flag-5'>RT1xxx</b>系列MCU启动那些事(4)- Flashloader初体验(blhost)...

    痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU启动那些事(9)- 从Parallel NOR启动

      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MX RT1xxx系列MCU的Parallel NOR启动。  一篇讲i.MXRT1xxx从Raw NA
    发表于 12-28 19:19 8次下载
    痞子衡嵌入式:恩智浦<b class='flag-5'>i.MX</b> <b class='flag-5'>RT1xxx</b>系列MCU启动那些事(9)- 从Parallel NOR启动

    痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU启动那些事(8)- 从Raw NAND启动

      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MX RT1xxx系列MCU的Raw NAND启动。  前面铺垫了七篇启动系列文章,终于该讲具体Boot Device了
    发表于 12-28 19:19 10次下载
    痞子衡嵌入式:恩智浦<b class='flag-5'>i.MX</b> <b class='flag-5'>RT1xxx</b>系列MCU启动那些事(8)- 从Raw NAND启动

    i.MX RT超低功耗模式捉虫记

    SNVS模式i.MX RT10XX和i.MX RT11XX系列MCU中功耗最低的状态,其标志性特点是除SNVS电源域保持供电,其余的电源域
    发表于 02-08 15:14 0次下载
    <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>超低功耗<b class='flag-5'>模式</b>捉虫记

    利用i.MX RT1xxx系列ROM集成的DCD功能可轻松配置指定外设

    关于i.MX RT1xxx系列芯片BootROM中集成的DCD功能这个话题,早就想写了,但是一直没有动笔,毕竟这个话题比较生涩,单独讲会比较枯燥。最近在支持一个i.MX RT1170客
    的头像 发表于 04-20 15:54 1242次阅读

    i.MX RT1xxx从SD/eMMC启动

    最近在恩智浦官方社区支持了一个关于i.MX RT从SD卡启动的案例,这让我想起了一年前写过的一篇《i.MX RT600从SD/eMMC启动
    的头像 发表于 05-11 14:34 1243次阅读
    <b class='flag-5'>i.MX</b> <b class='flag-5'>RT1xxx</b>从SD/eMMC启动

    Serial NAND i.MX RT1xxx启动

    很多关于  i.MXRT1xxx Serial NAND 启动的 咨询 问题,这个启动设备突然火热起来了~ 借此机会,今天跟大家介绍一下 Serial NAND 制作、下载、启动程序的方法
    的头像 发表于 08-17 08:50 626次阅读
    Serial NAND <b class='flag-5'>i.MX</b> <b class='flag-5'>RT1xxx</b>启动

    i.MX RT的FlexRAM配置问题

    i.MX RT的FlexRAM配置问题
    的头像 发表于 10-24 15:46 770次阅读
    <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>的FlexRAM配置问题