查看: 1921|回复: 1

[分享] i.MXRT1010 FlexSPI NOR启动连接方式

[复制链接]
  • TA的每日心情
    开心
    2024-3-26 15:16
  • 签到天数: 266 天

    [LV.8]以坛为家I

    3300

    主题

    6547

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    32035
    最后登录
    2024-4-26
    发表于 2020-4-8 09:33:54 | 显示全部楼层 |阅读模式
           i.MXRT1010 FlexSPI NOR启动连接方式


           今天痞子衡给大家介绍的是恩智浦i.MX RT1010的FlexSPI NOR启动的连接方式。


      在写完 《FlexSPI NOR启动连接方式(RT1015/1020/1050)》 和 《FlexSPI NOR启动连接方式(RT1060/1064(SIP))》这两篇之后,现在再来写今天的主角i.MXRT1010要相对轻松一些,毕竟i.MXRT1010是i.MXRT家族里的小弟弟。
      i.MXRT1010是恩智浦于2019年推出的新品,小身材大能量,相比其他几位i.MXRT哥哥的BGA196、LQFP144、LQFP100封装,i.MXRT1010的LQFP80的亲民封装深得硬件工程师的欢心,引脚少了,板级设计上也就没那么多弯弯绕绕。
      i.MXRT1010的市场定位类似于传统8位MCU或入门级32位MCU,它跟i.MXRT1015/1020/1050一样内部只集成了一个双通道8bit的FlexSPI模块,从低成本开发角度考虑外挂的芯片应该越少越好,因此本文主要介绍单Flash连接,不再像前面几款i.MXRT芯片那样去额外介绍双Flash连接设计了。
      我们知道i.MXRT1010内部RAM大小为128KB,并且其没有搭配图像相关IP模块(CSI、PxP、LCD),原则上内部RAM足够满足一般的应用需求了。但因为它的特殊性,本文会重点展开其怎么外挂RAM,具体i.MXRT1010特殊在哪里,且往下看:

    一、涉及FlexSPI引脚
    1.1 BootROM指定
      我们可以在i.MXRT1010芯片参考手册System Boot这一章节找到BootROM指定的FlexSPI NOR引脚,痞子衡整理如下:
    5.png
    1.2 BootROM未指定
      在此也列出不在BootROM指定的FlelxSPI NOR引脚,方便后续设计Flash+外扩RAM时参考。


    二、单Flash连接方式(2种)
      参考文章FlexSPI NOR启动连接方式(RT1015/1020/1050)的 《三、单Flash连接方式(3种)》章节,前两种连接方式,i.MXRT1010与i.MXRT1050是一样的。
    6.png
    三、Flash+外扩RAM连接方式(2种)
      痞子衡前面讲了,i.MXRT1010是特殊的,它到底特殊在哪里?i.MXRT1010是迄今为止唯一的一颗仅支持从FlexSPI NOR启动(不支持其他类型启动设备)的i.MXRT芯片,而且它还跟i.MXRT1015一样是唯二的没有搭配SEMC模块(可用于外扩SDRAM)的i.MXRT芯片。你可能还没理解这意味着什么,这意味着如果i.MXRT1010的内部128KB RAM不满足你的应用需求的话,外扩RAM(这里主要指的是能直接AHB访问)是一件有点麻烦的事。
      让我们回顾i.MXRT1010的那些大哥哥们,它们支持外扩RAM的方式就简单多了,既可以通过SEMC扩SDRAM,也可以通过FlexSPI扩HyperRAM。哪怕就是i.MX1015,它还可以支持从LPSPI接口的QSPI NOR Flash启动,把FlexSPI完全让给HyperRAM。
    7.png
    那么i.MXRT1010该怎么办?其实也不是没有办法,痞子衡找到了如下两种方法:第一种是连接8线HyperFlash+HyperRAM,第二种是连接四线QSPI Flash+PSRAM。第一种方案性能高,但比较贵,用在i.MXRT1010上显得不那么搭配。第二种是比较推荐的连法,而且QSPI PSRAM性价比很不错,不过当前生产QSPI PSRAM厂商不是很多。
      痞子衡在介绍i.MXRT1050 FlexSPI连接的文章最后,提过关于FlexSPI异类命令互斥特性导致即使双Flash也有RWW问题,那么在同一个FlexSPI上挂Flash和RAM会不会有类似的问题呢?比如代码在Flash中XIP,然后读写RAM。其实这个问题不用担忧,因为CPU从Flash里取指令属于AHB Read,访问RAM也是AHB Read/Write,这都是同类FlexSPI命令,不存在互斥问题。
    8.png


    作者:痞子衡          文章出处:痞子衡嵌入式

    签到签到
    回复

    使用道具 举报

    该用户从未签到

    2

    主题

    20

    帖子

    0

    新手上路

    Rank: 1

    积分
    45
    最后登录
    2020-4-22
    发表于 2020-4-20 00:23:40 | 显示全部楼层
    部分应用有运行时存储新数据的需求,是否可以将flash中的code在启动时载入psram,然后整体代码在psram中XIP,flash除code外的剩余部分可用于读写用户数据。
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-28 00:28 , Processed in 0.112357 second(s), 21 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表