痞子衡嵌入式:RT-MFB - 一种灵活的i.MXRT下多串行NOR Flash型号选择的量产方案( 二 )

  • 缺点二:Auto Probe 特性对于不同 Flash 的支持(尤其是 OctalSPI Flash)可能需要通过烧写 i.MXRT 芯片 OTP 来实现,这样实际上是把 FDCB 差异转化到 OTP 差异上了 。
  • 缺点三:Auto Probe 特性仅能处理基本的 FDCB 差异(比如 QE,比如 Dummy Cycle),但是一些性能模式相关的差异不能很好地处理,拓展性不足 。
  • 2.2 一线模式FDCB启动+二级Configurer程序第二个方案主要是为了解决方案一里的全部缺点 , 即使用通用的一线低速模式的 FDCB 启动头给 BootROM 去读取启动,然后再设计一个二级的 Configurer 程序(被 BootROM 启动的代码) , 在这个 Configurer 程序里去做 Flash 差异化的相关事情并将 FlexSPI 模块配置到指定时序模式,最后再由这个 Configurer 程序去启动固件应用程序 。
    痞子衡嵌入式:RT-MFB - 一种灵活的i.MXRT下多串行NOR Flash型号选择的量产方案

    文章插图
    这里的 Configurer 程序设计是关键,而其中最核心的是如何识别当前 Flash 型号,这里要感谢 JEDEC 组织 , 目前几乎全部主流 Flash 都支持一线模式下 Read JEDEC 命令(0x9F),返回的 Manufacturer ID 就是每个 Flash 厂商向 JEDEC 组织申请的识别码,然后 Memory Type 是各厂商自己定义的型号系列分类 。Configurer 程序结合这两个参数就可以识别当前 Flash 具体型号,底下就是做不同的代码分支去处理不同的 Flash 配置即可 。
    痞子衡嵌入式:RT-MFB - 一种灵活的i.MXRT下多串行NOR Flash型号选择的量产方案

    文章插图
    二级 Configurer 程序说起来很简单 , 其实具体设计起来还是有很多细节要考量的(比如 FlexSPI 多次配置中系统时钟切换问题、应用程序跳转等),因此痞子衡开源了这个项目(RT-MFB),并且会长期维护下去,希望将来能支持尽可能多的 Flash 型号 。第一版是以 MIMXRT595-EVK 上的两颗 Flash 为原型(IS25WP064A / MX25UW51345G)来做的 。
    • 项目地址:https://github.com/JayHeng/RT-MFB
    至此,一种灵活的i.MXRT下多串行NOR Flash型号选择的量产方案痞子衡便介绍完毕了 , 掌声在哪里~~~
    欢迎订阅文章会同时发布到我的 博客园主页、CSDN主页、知乎主页、微信公众号 平台上 。
    微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦 。
    痞子衡嵌入式:RT-MFB - 一种灵活的i.MXRT下多串行NOR Flash型号选择的量产方案

    文章插图
    【痞子衡嵌入式:RT-MFB - 一种灵活的i.MXRT下多串行NOR Flash型号选择的量产方案】

    推荐阅读