大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦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空间的。好,闲话少叙,咱们进入正文:
一、FlexSPI连接模式
FlexSPI模块IP本身支持两种连接模式:Individual mode:多个Flash分时复用FlexSPI,同一时刻仅有一个Flash被操作;Parallel mode:同一时刻两个Flash可以一起被操作,FlexSPI会自动合并/拆分数据(read/program)。但i.MXRT500上没有Port B支持,所以实际上Individual mode是唯一选择。
![](https://i-blog.csdnimg.cn/blog_migrate/6613053b26154928370ab9776471e1d1.png)
二、涉及FlexSPI引脚
i.MXRT500一共提供了两种封装(WLCSP141、FOWLP249),并且根据是否选配DSP和GPU,一共有9个型号。下文要介绍的FlexSPI NOR启动连接方式并不一定适用所有封装(主要是WLCSP141连接方式较少)。
![](https://i-blog.csdnimg.cn/blog_migrate/306e152058c72a2d7fad237bbb2da429.png)
我们可以在i.MXRT500芯片参考手册Non-Secure Boot ROM这一章节找到BootROM指定的FlexSPI NOR引脚如下,是的,仅FlexSPI0引脚被用于Flash启动设备连接:
![](https://i-blog.csdnimg.cn/blog_migrate/35f2d199d638fce6c7125edd9f8b71e4.png)
三、单Flash连接方式(2种)
第一种Flash连接方式就是利用FlexSPI0 Port里的6根信号线连接四线QSPI Flash:
![](https://i-blog.csdnimg.cn/blog_migrate/a18ecffc6ac775744b5543c0d1e11841.png)
第二种Flash连接方式就是利用FlexSPI0 Port里的全部12根信号线连接八线Octal Flash(换成Hyper Flash也行)。
![](https://i-blog.csdnimg.cn/blog_migrate/bc619a9fc0f323ee29f5dd5d615a3b14.png)
四、Flash+PSRAM连接方式
i.MXRT500-EVK给出了Flash+PSRAM连接示例,即FlexSPI0连接四线/八线Flash、FlexSPI1连接PSRAM,这也正好符合芯片设计初衷。当然FlexSPI0也可以去连接PSRAM,因为i.MXRT500可以从uSDHC接口去启动(代码存在SD/eMMC里)。
![](https://i-blog.csdnimg.cn/blog_migrate/7dd261822ded23dfd124997baf794f03.png)
附录、FOWLP249封装下FlexSPI相关的引脚定义
![](https://i-blog.csdnimg.cn/blog_migrate/bff12a7e8d73bab4a97b93acab0fece3.png)
至此,恩智浦i.MX RT500的FlexSPI NOR启动的连接方式痞子衡便介绍完毕了,掌声在哪里~~~
欢迎订阅
文章会同时发布到我的 博客园主页、CSDN主页、知乎主页、微信公众号 平台上。
微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦。
![](https://i-blog.csdnimg.cn/blog_migrate/29035c58deddb09da89545344f125a5a.jpeg)