大家好,我是痞子衡,是正經(jīng)搞技術(shù)的痞子。今天痞子衡給大家講的是幾家主流QuadSPI NOR Flash廠商關(guān)于QE位與IO功能復(fù)用關(guān)聯(lián)設(shè)計(jì)。
痞子衡之前寫(xiě)過(guò)一篇文章 《串行NOR Flash下載/啟動(dòng)常見(jiàn)影響因素之QE bit》,這篇文章介紹了幾家主流廠商關(guān)于 QE bit 在 Flash 內(nèi)部寄存器位置以及寫(xiě)入命令上的差異。今天這篇文章,咱們接著往下聊,講一講這幾家廠商在 QE bit 與 I/O 引腳功能復(fù)用關(guān)系設(shè)計(jì)上的差異。
QuadSPI NOR Flash 的常見(jiàn)封裝形式有:8-Pin SOIC/SOP/DIP/WSON/USON、16-Pin SOIC/SOP、WLCSP-21、TFBGA-24 等,本文主題是關(guān)于 I/O 引腳功能復(fù)用,顯然只有引腳較少的型號(hào)才會(huì)做引腳復(fù)用設(shè)計(jì),所以咱們主要聊得是如下典型芯片的那些 8-Pin 封裝的型號(hào):
華邦 W25Q128JWSIM
旺宏 MX25L12833F
兆易創(chuàng)新 GD25LE128D
鎂光 MT25QL128ABA
芯成 IS25WP128
英飛凌 S25FL128L
瑞薩 AT25SL128A
一、各廠商設(shè)計(jì)
1.1 華邦 Winbond
華邦的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 或者 RESET# 功能。
芯片內(nèi)部 Status Register-2[1] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號(hào)還是復(fù)用的WP#、HOLD#/RESET# 信號(hào)。這里有一個(gè)注意點(diǎn),芯片絲印末位為 Q 的型號(hào)(比如W25Q128JWSSIQ)出廠默認(rèn) QE 為 1,并且不可更改為 0 (據(jù)說(shuō)這是華邦為了某大客戶省去 IO2/3 上拉煩惱而特意做的設(shè)計(jì),并順便推廣了)。
當(dāng) QE = 0 時(shí),IO3 引腳到底是 HOLD# 功能還是 RESET#,這是 Status Register -3[7] 來(lái)決定的:
當(dāng) QE = 0 且 IO3 被配置為 RESET# 時(shí),因?yàn)槭堑?a class="article-link" target="_blank" href="/baike/1465710.html">電平有效,為了保證不會(huì)誤復(fù)位 Flash,需要給 IO3 加外部上拉(Flash 內(nèi)部沒(méi)有上拉)。如果此時(shí)想利用這個(gè) RESET# 引腳復(fù)位 Flash,需持續(xù)拉低至少 tRESET 時(shí)間,F(xiàn)lash 會(huì)在最長(zhǎng) tRST 時(shí)間后才能正常響應(yīng)讀寫(xiě)操作。
1.2 旺宏 Macronix
旺宏的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 RESET# 功能(是的,沒(méi)有 HOLD# 功能)。旺宏家有一個(gè)特色就是當(dāng) IO2/3 沒(méi)有物理上的信號(hào)連接時(shí),其會(huì)保持內(nèi)部弱上拉狀態(tài)。
芯片內(nèi)部 Status Register[6] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號(hào)還是復(fù)用的WP#、RESET# 信號(hào)。
如果要借助 RESET# 引腳做 Flash 復(fù)位,旺宏家數(shù)據(jù)手冊(cè)里這部分寫(xiě)得特別詳細(xì),還區(qū)別了不同 Flash 狀態(tài)下做復(fù)位后所需要的 tREADY2 時(shí)間。
1.3 兆易創(chuàng)新 GigaDevice
兆易創(chuàng)新的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 功能(是的,沒(méi)有名義上的 RESET# 功能)。Flash 廠商前三強(qiáng)關(guān)于這里的設(shè)計(jì)都不同。
需要注意的是兆易創(chuàng)新家也有一個(gè)特色就是當(dāng) CS# 拉高且 HOLD# 拉低時(shí),也有 Flash 復(fù)位效果,這感覺(jué) IO3 的復(fù)用功能是根據(jù) CS# 信號(hào)狀態(tài)來(lái)切換的。
芯片內(nèi)部 Status Register-2[1] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號(hào)還是復(fù)用的WP#、HOLD# 信號(hào)。
因?yàn)闆](méi)有名義上的 RESET# 功能,所以數(shù)據(jù)手冊(cè)里的 AC 表主要是為軟件 Reset 命令寫(xiě)的,但是相信也適用隱藏的 RESET# 功能。
1.4 鎂光 Micron
鎂光家的做法就更有意思了,IO2 上加了 WP# 功能這個(gè)沒(méi)異議,IO3 上功能復(fù)用直接提供兩種不同型號(hào),要么是 HOLD#,要么是 RESET#。
當(dāng)然鎂光家最大的特色是并沒(méi)有 QE 控制位,IO2/3 具體功能主要靠當(dāng)前命令類型來(lái)決定:如果是 Single SPI 或者 Dual I/O SPI 傳輸,則 IO2/3 是 WP#/RESET#/HOLD# 功能;如果是 Quad I/O SPI 傳輸,則 IO2/3 用于傳輸數(shù)據(jù)。
此外,鎂光家還在 Configuration Register[4] 里讓用戶可以選擇是否關(guān)閉 IO3 的 Reset/Hold 復(fù)用功能。
關(guān)于 RESET# 信號(hào)時(shí)序,鎂光數(shù)據(jù)手冊(cè)里也寫(xiě)得比較詳細(xì)。
1.5 芯成 ISSI
芯成的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 或者 RESET# 功能。跟華邦家設(shè)計(jì)一致。
芯片內(nèi)部 Status Register[6] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號(hào)還是復(fù)用的WP#、HOLD#/RESET# 信號(hào)。
當(dāng) QE = 0 時(shí),IO3 引腳到底是 HOLD# 功能還是 RESET#,這是 Read Register[7] 來(lái)決定的:
關(guān)于 RESET# 信號(hào)時(shí)序,芯成數(shù)據(jù)手冊(cè)里寫(xiě)得與華邦、兆易創(chuàng)新一樣比較粗略。
1.6 英飛凌(原Spansion)
英飛凌的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 RESET# 功能。跟旺宏家設(shè)計(jì)一致。英飛凌家明確地給 IO2/3 內(nèi)部加了上拉,不用可以直接懸空。
芯片內(nèi)部 Configuration Register-1 Volatile[1] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號(hào)還是復(fù)用的WP#、RESET# 信號(hào)。
此外,英飛凌家還在 Configuration Register-2 Volatile[7] 里讓用戶可以選擇是否關(guān)閉 IO3 的 RESET# 復(fù)用功能。
關(guān)于 RESET# 信號(hào)時(shí)序,英飛凌數(shù)據(jù)手冊(cè)里寫(xiě)得比較簡(jiǎn)潔。
1.7 瑞薩(原Adesto)
瑞薩的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 功能。IO2/3 內(nèi)部也加了上拉。
芯片內(nèi)部 Status Register-2[1] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號(hào)還是復(fù)用的WP#、HOLD# 信號(hào)。
因?yàn)?8-Pin 封裝完全沒(méi)有硬件 RESET# 信號(hào)設(shè)計(jì),所以就不介紹復(fù)位時(shí)序了。
二、快速對(duì)比表
廠商型號(hào) | 復(fù)用情況 | QE位控制 | IO3復(fù)用功能選擇 | IO2/3上拉情況 |
---|---|---|---|---|
華邦 W25Q128JWSIM | IO2與WP# IO3與HOLD#/RESET# |
Status Register-2[1] | Status Register-3[7] | 無(wú)內(nèi)部上拉 |
旺宏 MX25L12833F | IO2與WP# IO3與RESET# |
Status Register[6] | N/A | 內(nèi)部弱上拉(僅當(dāng)懸空時(shí)) |
兆易創(chuàng)新 GD25LE128D | IO2與WP# IO3與HOLD# |
Status Register-2[1] | CS# | 無(wú)內(nèi)部上拉 |
鎂光 MT25QL128ABA | IO2與WP# IO3與HOLD# IO3與RESET# |
傳輸命令類型 | Config Register[4]開(kāi)關(guān) | 無(wú)內(nèi)部上拉 |
芯成 IS25WP128 | IO2與WP# IO3與HOLD#/RESET# |
Status Register[6] | Read Register[7] | 無(wú)內(nèi)部上拉 |
英飛凌 S25FL128L | IO2與WP# IO3與RESET# |
Config Register-1[1] | Config Register-2[7] | 內(nèi)部上拉 |
瑞薩 AT25SL128A | IO2與WP# IO3與HOLD# |
Status Register-2[1] | N/A | 內(nèi)部上拉 |
至此,主流QuadSPI NOR Flash廠商關(guān)于QE位與IO功能復(fù)用關(guān)聯(lián)設(shè)計(jì)痞子衡便介紹完畢了,掌聲在哪里~~~