痞子衡嵌入式:主流QuadSPI NOR Flash厂商关于QE位与IO功能复用关联设计
大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家讲的是几家主流QuadSPI NOR Flash厂商关于QE位与IO功能复用关联设计。
痞子衡之前写过一篇文章 《串行NOR Flash下载/启动常见影响因素之QE bit》,这篇文章介绍了几家主流厂商关于 QE bit 在 Flash 内部寄存器位置以及写入命令上的差异。今天这篇文章,咱们接着往下聊,讲一讲这几家厂商在 QE bit 与 I/O 引脚功能复用关系设计上的差异。
QuadSPI NOR Flash 的常见封装形式有:8-Pin SOIC/SOP/DIP/WSON/USON、16-Pin SOIC/SOP、WLCSP-21、TFBGA-24 等,本文主题是关于 I/O 引脚功能复用,显然只有引脚较少的型号才会做引脚复用设计,所以咱们主要聊得是如下典型芯片的那些 8-Pin 封装的型号:
华邦 W25Q128JWSIM
旺宏 MX25L12833F
兆易创新 GD25LE128D
镁光 MT25QL128ABA
芯成 IS25WP128
英飞凌 S25FL128L
瑞萨 AT25SL128A
一、各厂商设计
1.1 华邦 Winbond
华邦的芯片引脚复用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 或者 RESET# 功能。
芯片内部 Status Register-2[1] 是 QE 控制位,决定了 IO2/3 到底是数据传输信号还是复用的WP#、HOLD#/RESET# 信号。这里有一个注意点,芯片丝印末位为 Q 的型号(比如W25Q128JWSSIQ)出厂默认 QE 为 1,并且不可更改为 0 (据说这是华邦为了某大客户省去 IO2/3 上拉烦恼而特意做的设计,并顺便推广了)。
当 QE = 0 时,IO3 引脚到底是 HOLD# 功能还是 RESET#,这是 Status Register -3[7] 来决定的:
当 QE = 0 且 IO3 被配置为 RESET# 时,因为是低电平有效,为了保证不会误复位 Flash,需要给 IO3 加外部上拉(Flash 内部没有上拉)。如果此时想利用这个 RESET# 引脚复位 Flash,需持续拉低至少 tRESET 时间,Flash 会在最长 tRST 时间后才能正常响应读写操作。
1.2 旺宏 Macronix
旺宏的芯片引脚复用主要是 IO2 上加了 WP# 功能,IO3 上加了 RESET# 功能(是的,没有 HOLD# 功能)。旺宏家有一个特色就是当 IO2/3 没有物理上的信号连接时,其会保持内部弱上拉状态。
芯片内部 Status Register[6] 是 QE 控制位,决定了 IO2/3 到底是数据传输信号还是复用的WP#、RESET# 信号。
如果要借助 RESET# 引脚做 Flash 复位,旺宏家数据手册里这部分写得特别详细,还区别了不同 Flash 状态下做复位后所需要的 tREADY2 时间。
1.3 兆易创新 GigaDevice
兆易创新的芯片引脚复用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 功能(是的,没有名义上的 RESET# 功能)。Flash 厂商前三强关于这里的设计都不同。
需要注意的是兆易创新家也有一个特色就是当 CS# 拉高且 HOLD# 拉低时,也有 Flash 复位效果,这感觉 IO3 的复用功能是根据 CS# 信号状态来切换的。
芯片内部 Status Register-2[1] 是 QE 控制位,决定了 IO2/3 到底是数据传输信号还是复用的WP#、HOLD# 信号。
因为没有名义上的 RESET# 功能,所以数据手册里的 AC 表主要是为软件 Reset 命令写的,但是相信也适用隐藏的 RESET# 功能。
1.4 镁光 Micron
镁光家的做法就更有意思了,IO2 上加了 WP# 功能这个没异议,IO3 上功能复用直接提供两种不同型号,要么是 HOLD#,要么是 RESET#。
当然镁光家最大的特色是并没有 QE 控制位,IO2/3 具体功能主要靠当前命令类型来决定:如果是 Single SPI 或者 Dual I/O SPI 传输,则 IO2/3 是 WP#/RESET#/HOLD# 功能;如果是 Quad I/O SPI 传输,则 IO2/3 用于传输数据。
此外,镁光家还在 Configuration Register[4] 里让用户可以选择是否关闭 IO3 的 Reset/Hold 复用功能。
关于 RESET# 信号时序,镁光数据手册里也写得比较详细。
1.5 芯成 ISSI
芯成的芯片引脚复用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 或者 RESET# 功能。跟华邦家设计一致。
芯片内部 Status Register[6] 是 QE 控制位,决定了 IO2/3 到底是数据传输信号还是复用的WP#、HOLD#/RESET# 信号。
当 QE = 0 时,IO3 引脚到底是 HOLD# 功能还是 RESET#,这是 Read Register[7] 来决定的:
关于 RESET# 信号时序,芯成数据手册里写得与华邦、兆易创新一样比较粗略。
1.6 英飞凌(原Spansion)
英飞凌的芯片引脚复用主要是 IO2 上加了 WP# 功能,IO3 上加了 RESET# 功能。跟旺宏家设计一致。英飞凌家明确地给 IO2/3 内部加了上拉,不用可以直接悬空。
芯片内部 Configuration Register-1 Volatile[1] 是 QE 控制位,决定了 IO2/3 到底是数据传输信号还是复用的WP#、RESET# 信号。
此外,英飞凌家还在 Configuration Register-2 Volatile[7] 里让用户可以选择是否关闭 IO3 的 RESET# 复用功能。
关于 RESET# 信号时序,英飞凌数据手册里写得比较简洁。
1.7 瑞萨(原Adesto)
瑞萨的芯片引脚复用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 功能。IO2/3 内部也加了上拉。
芯片内部 Status Register-2[1] 是 QE 控制位,决定了 IO2/3 到底是数据传输信号还是复用的WP#、HOLD# 信号。
因为 8-Pin 封装完全没有硬件 RESET# 信号设计,所以就不介绍复位时序了。
二、快速对比表
| 厂商型号 | 复用情况 | QE位控制 | IO3复用功能选择 | IO2/3上拉情况 |
|---|---|---|---|---|
| 华邦 W25Q128JWSIM | IO2与WP# IO3与HOLD#/RESET# |
Status Register-2[1] | Status Register-3[7] | 无内部上拉 |
| 旺宏 MX25L12833F | IO2与WP# IO3与RESET# |
Status Register[6] | N/A | 内部弱上拉(仅当悬空时) |
| 兆易创新 GD25LE128D | IO2与WP# IO3与HOLD# |
Status Register-2[1] | CS# | 无内部上拉 |
| 镁光 MT25QL128ABA | IO2与WP# IO3与HOLD# IO3与RESET# |
传输命令类型 | Config Register[4]开关 | 无内部上拉 |
| 芯成 IS25WP128 | IO2与WP# IO3与HOLD#/RESET# |
Status Register[6] | Read Register[7] | 无内部上拉 |
| 英飞凌 S25FL128L | IO2与WP# IO3与RESET# |
Config Register-1[1] | Config Register-2[7] | 内部上拉 |
| 瑞萨 AT25SL128A | IO2与WP# IO3与HOLD# |
Status Register-2[1] | N/A | 内部上拉 |
至此,主流QuadSPI NOR Flash厂商关于QE位与IO功能复用关联设计痞子衡便介绍完毕了,掌声在哪里~~~
欢迎订阅
文章会同时发布到我的 博客园主页、CSDN主页、知乎主页、微信公众号 平台上。
微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦。

痞子衡嵌入式:主流QuadSPI NOR Flash厂商关于QE位与IO功能复用关联设计的更多相关文章
- 痞子衡嵌入式:实抓Flash信号波形来看i.MXRT的FlexSPI外设下AHB读访问情形(无缓存)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是实抓Flash信号波形来看i.MXRT的FlexSPI外设下AHB读访问情形. 上一篇文章 <i.MXRT中FlexSPI外设对A ...
- 痞子衡嵌入式:RT-UFL - 一个适用全平台i.MXRT的超级下载算法设计
大家好,我是痞子衡,是正经搞技术的痞子.今天给大家带来的是痞子衡的开源项目 RT-UFL. 痞子衡在近两年多的i.MXRT客户项目支持过程中,遇到的一个相当高频的问题就是制作i.MXRT下载算法.我们 ...
- 痞子衡嵌入式:利用i.MXRT1xxx系列ROM集成的DCD功能可轻松配置指定外设
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是利用i.MXRT1xxx系列ROM集成的DCD功能可轻松配置指定外设. 关于 i.MXRT1xxx 系列芯片 BootROM 中集成的 ...
- 痞子衡嵌入式:浅谈i.MXRT1xxx系列MCU时钟相关功能引脚的作用
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1xxx系列MCU时钟相关功能引脚作用. 如果我们从一颗 MCU 芯片的引脚分类来看芯片功能,大概可以分为三大类:电源.时钟 ...
- 痞子衡嵌入式:ARM Cortex-M内核那些事(3)- 功能模块
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是ARM Cortex-M功能模块. ARM Cortex-M处理器家族发展至今(2016),已有5代产品,分别是CM0/CM0+.CM1 ...
- 痞子衡嵌入式:同一厂商不同系列Flash型号下Dummy Cycle设置方法可能有差异 (以IS25LP064为例)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是同一厂商不同系列Flash型号下Dummy Cycle设置方法的差异. 上一篇文章 <在i.MXRT启动头FDCB里调整Flash ...
- 痞子衡嵌入式:国内外串行NOR Flash厂商官网Cross Reference功能使用体验
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家讲的是国内外串行NOR Flash厂商官网Cross Reference功能. 串行 NOR Flash 是一个相对发展稳定的市场,目前全球市场 ...
- 痞子衡嵌入式:RT-MFB - 一种灵活的i.MXRT下多串行NOR Flash型号选择的量产方案
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是一种灵活的i.MXRT下多串行NOR Flash型号选择的量产方案. 对于以 i.MXRT 这类没有内部 NVM (Non-Volati ...
- 痞子衡嵌入式:盘点国内RISC-V内核MCU厂商
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是国内RISC-V内核MCU厂商. 虽然RISC-V风潮已经吹了好几年,但2019年才是其真正进入主流市场的元年,最近国内大量芯片公司崛起 ...
- 痞子衡嵌入式:盘点国内RISC-V内核MCU厂商(2020年发布产品)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是国内RISC-V内核MCU厂商(2020). 虽然RISC-V风潮已经吹了好几年,但2019年才是其真正进入主流市场的元年,最近国内大量 ...
随机推荐
- 解决 ssh 找不到对应主机密钥类型
解决办法 如果最近升级到了 openssh 8.8 版,你会发现连接某些之前连接得好好的服务器突然无法连接: Unable to negotiate with x.x.x.x port 2222: n ...
- pcm音频的录制、播放及转换
操作系统 :Windows10_x64 pcm格式为原始音频数据,有时候会遇到需要录制.播放及转换的情况,这里记录下. 一.录制pcm音频 这里演示下使用Audacity进行pcm音频录音的过程. A ...
- 在Kubernetes上安装Netdata的方法
介绍 Netdata可用于监视kubernetes集群并显示有关集群的信息,包括节点内存使用率.CPU.网络等,简单的说,Netdata仪表板可让您全面了解Kubernetes集群,包括在每个节点上运 ...
- [Java SE/JDK]Intellij IDEA中设置JDK版本
1 Intellij IDEA 修改JDK版本 第1步:配置JDK环境变量 装好JDK之后,要添加一个环境变量:JAVA_HOME 第2步:修改Idea配置 由Maven决定的版本 <build ...
- [数据库/MYSQL]#解决缺陷#设置Unique索引时:"[Err] 1071 - Specified key was too long; max key length is 767 bytes"
1 问题复现 原表结构: CREATE TABLE `XX_TEMPERATURE` ( `FLOW_ID` int(11) NOT NULL COMMENT '独立的数据表或FTP唯一标识', -- ...
- [IDE]IDEA build artifacts过程很慢的解决方案[转载]
解决方案 可能1 可能是缓存的文件太多了导致: File->Invalidate Caches /Restart,清理缓存, 并重启IDEA.重启之后,会重建索引, 此过程较慢, 但build的 ...
- 使用CURL调用接口[*示例*]
<?php header("content-type:text/html;charset=utf-8"); /* 这是 使用CURL调用接口 */ $ch = curl_in ...
- 【Vue项目】尚品汇(六)ShopCar组件开发 购物车模块
4 购物车 4.1 购物车商品数量控制 Detail\index.vue <div class="cartWrap"> <div class="cont ...
- 使用Go语言操作HDFS
HDFS(Hadoop分布式文件系统)是Hadoop生态系统的一部分,它是一个可扩展的分布式文件系统,被设计用于在大规模数据集上运行的应用程序 安装相关package: $ go get github ...
- 彻底搞懂Redis持久化机制,轻松应对工作面试
1. 为什么要持久化 Redis是基于内存存储的数据库,如果遇到服务重启或者崩溃,内存中的数据将会被清空.所以为了确保数据安全性和可靠性,我们需要将内存中的数据持久化到磁盘上. 持久化不仅可以防止由于 ...