痞子衡嵌入式:恩智浦i.MX RTxxx系列MCU启动那些事(6.B)- FlexSPI NOR连接方式大全(RT500)
大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MX RT500的FlexSPI NOR启动的连接方式。
这个i.MXRT FlexSPI NOR启动连接方式系列文章,痞子衡在一年前写过四篇,把当时已面世的所有i.MXRT型号(RT600/1010/1015/1020/1050/1060/1064)都囊括了。最近这一年里,i.MXRT系列又新增了两个型号,分别是属于i.MXRTxxx阵营的二号选手i.MXRT500、属于i.MXRT1xxx阵营的第一代战神i.MXRT1170,所以痞子衡要继续更文了。
痞子衡今天要介绍的是i.MXRT500的FlexSPI NOR启动连接方式,在阅读本文前最好把 《FlexSPI NOR启动连接方式(RT600)》 先看完,对i.MXRTxxx系列有一个基本认识。我们知道i.MXRT500是基于ARM Cortex-M33内核的超低功耗MCU,主要面向智能可穿戴市场。与i.MXRT600一样没有内部非易失性存储器,通过FlexSPI接口连接串行NOR Flash是启动设备首选。
i.MXRT500内部有两个双通道8bit的FlexSPI模块,比i.MXRT600单FlexSPI模块有所增强,但是这两个FlexSPI模块在芯片I/O上都没有引出Port B,只能使用一个Port(即Port A),因此在启动连接方式上反而更简单了。此外FlexSPI0设计上主要用于连接Flash(仅它在芯片内部连上了OTFAD,可实现在线解密),而FlexSPI1设计上是用于连接HyperRAM/PSRAM去拓展图形显示Buffer空间的。好,闲话少叙,咱们进入正文:
- Note1 : i.MXRT500 可启动 NOR Flash 仅能挂载在 FlexSPI0 上,在系统映射地址空间分配上,给 FlexSPI0 分配的起始地址是 0x08000000,因此 XIP 应用程序需要从 0x08000000 之后的空间开始链接
一、FlexSPI连接模式
FlexSPI模块IP本身支持两种连接模式:Individual mode:多个Flash分时复用FlexSPI,同一时刻仅有一个Flash被操作;Parallel mode:同一时刻两个Flash可以一起被操作,FlexSPI会自动合并/拆分数据(read/program)。但i.MXRT500上没有Port B支持,所以实际上Individual mode是唯一选择。
二、涉及FlexSPI引脚
i.MXRT500一共提供了两种封装(WLCSP141、FOWLP249),并且根据是否选配DSP和GPU,一共有9个型号。下文要介绍的FlexSPI NOR启动连接方式并不一定适用所有封装(主要是WLCSP141连接方式较少)。
我们可以在i.MXRT500芯片参考手册Non-Secure Boot ROM这一章节找到BootROM指定的FlexSPI NOR引脚如下,是的,仅FlexSPI0引脚被用于Flash启动设备连接:
三、单Flash连接方式(2种)
第一种Flash连接方式就是利用FlexSPI0 Port里的6根信号线连接四线QSPI Flash:
第二种Flash连接方式就是利用FlexSPI0 Port里的全部12根信号线连接八线Octal Flash(换成Hyper Flash也行)。
四、Flash+PSRAM连接方式
i.MXRT500-EVK给出了Flash+PSRAM连接示例,即FlexSPI0连接四线/八线Flash、FlexSPI1连接PSRAM,这也正好符合芯片设计初衷。当然FlexSPI0也可以去连接PSRAM,因为i.MXRT500可以从uSDHC接口去启动(代码存在SD/eMMC里)。
附录、FOWLP249封装下FlexSPI相关的引脚定义
至此,恩智浦i.MX RT500的FlexSPI NOR启动的连接方式痞子衡便介绍完毕了,掌声在哪里~~~
欢迎订阅
文章会同时发布到我的 博客园主页、CSDN主页、知乎主页、微信公众号 平台上。
微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦。
最后欢迎关注痞子衡个人微信公众号【痞子衡嵌入式】,一个专注嵌入式技术的公众号,跟着痞子衡一起玩转嵌入式。



衡杰(痞子衡),目前就职于某全球顶级半导体原厂MCU系统部门,担任高级嵌入式系统应用工程师。
专栏内所有文章的转载请注明出处:http://www.cnblogs.com/henjay724/
与痞子衡进一步交流或咨询业务合作请发邮件至 hengjie1989@foxmail.com
可以关注痞子衡的Github主页 https://github.com/JayHeng,有很多好玩的嵌入式项目。
关于专栏文章有任何疑问请直接在博客下面留言,痞子衡会及时回复免费(划重点)答疑。
痞子衡邮箱已被私信挤爆,技术问题不推荐私信,坚持私信请先扫码付款(5元起步)再发。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· 【全网最全教程】使用最强DeepSeekR1+联网的火山引擎,没有生成长度限制,DeepSeek本体