I.MXRT1170从FLEXSPI2启动

电子说

1.3w人已加入

描述

    设计将使用FlexSPI1 接外部的 HyperRAM,FlexSPI2 接QSPI Flash存储器芯片作为RT117引导设备。当代码在内部RAM里面执行的时候是正常的,遇到了从外部Flash启动的问题,如果用FlexSPI2作为引导接口,应该如何配置呢?

-> MCUBoot 工具(https://github.com/JayHeng/NXP-MCUBootUtility)可以识别 FlexSPI2 区域,需要设置 'FlexSPI XIP Region' 选项为 1,默认情况下, "Tools/FlexSPI XIP Region"是0。

XIP 区域0 - 0x3000_0000 代表 FlexSPI1

XIP 区域1 - 0x6000_0000 代表 FlexSPI2

    每个 FlexSPI 都包含两组 pinmux group 选项,都可以用于引导启动。设置MCUBootUtility / Tools / FlexSPI XIP 区域为 1, 将会加载 APP应用程序到 FlexSPI2 区域。

    在开发板上验证 RT1170的 FlexSPI2的启动,它是第一组 pinmux。mcu

   如果连接 Flash 到 GPIO_SD_B1[05:00],如下所示,需要在MCUBootUtility 工具中设置为 2nd pinmux,烧入如下熔丝位。

eFuse 0x940 FLEXSPI_INSTANCE =1(Fuse和GPIO电平判断)

eFuse 0x9A0 FLEXSPI_PIN_GROUP_SEL =1(熔丝位)

eFuse 0x9A0 FLEXSPI_CONNECTION_SEL =0

mcu

mcu

mcumcu

    设置正确的应用程序基地址,对于FlexSPI2,应为0x6000 2000。注意:可引导映像从0x6000 0000开始,其内容介于0x6000 0000和0x6000 2000之间,将自动创建。

mcu

    需要注意:所选的FlexSPI2组的速度有限。

    另外,如果要通过Flexspi1的第二组引脚启动,需要配置Fuse如下。FlexSPI1 的 2nd DQS在BootROM实际上不需要。

mcu


审核编辑 :李倩

 


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分