精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于QE位與IO功能復(fù)用關(guān)聯(lián)設(shè)計

痞子衡嵌入式 ? 來源:痞子衡嵌入式 ? 2023-06-17 14:34 ? 次閱讀

大家好,我是痞子衡,是正經(jīng)搞技術(shù)的痞子。今天痞子衡給大家講的是幾家主流QuadSPI NOR Flash廠商關(guān)于QE位與IO功能復(fù)用關(guān)聯(lián)設(shè)計

痞子衡之前寫過一篇文章 《串行NOR Flash下載/啟動常見影響因素之QE bit》,這篇文章介紹了幾家主流廠商關(guān)于 QE bit 在 Flash 內(nèi)部寄存器位置以及寫入命令上的差異。今天這篇文章,咱們接著往下聊,講一講這幾家廠商在 QE bit 與 I/O 引腳功能復(fù)用關(guān)系設(shè)計上的差異。

QuadSPI NOR Flash 的常見封裝形式有:8-Pin SOIC/SOP/DIP/WSON/USON、16-Pin SOIC/SOP、WLCSP-21、TFBGA-24 等,本文主題是關(guān)于 I/O 引腳功能復(fù)用,顯然只有引腳較少的型號才會做引腳復(fù)用設(shè)計,所以咱們主要聊得是如下典型芯片的那些 8-Pin 封裝的型號:

華邦 W25Q128JWSIM
旺宏 MX25L12833F
兆易創(chuàng)新 GD25LE128D
鎂光 MT25QL128ABA
芯成 IS25WP128
英飛凌 S25FL128L
瑞薩 AT25SL128A

一、各廠商設(shè)計

1.1 華邦 Winbond

華邦的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 或者 RESET# 功能。

a2aa8c24-0cc9-11ee-962d-dac502259ad0.png

芯片內(nèi)部 Status Register-2[1] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號還是復(fù)用的WP#、HOLD#/RESET# 信號。這里有一個注意點,芯片絲印末位為 Q 的型號(比如W25Q128JWSSIQ)出廠默認(rèn) QE 為 1,并且不可更改為 0 (據(jù)說這是華邦為了某大客戶省去 IO2/3 上拉煩惱而特意做的設(shè)計,并順便推廣了)。

a2d41aa8-0cc9-11ee-962d-dac502259ad0.png

當(dāng) QE = 0 時,IO3 引腳到底是 HOLD# 功能還是 RESET#,這是 Status Register -3[7] 來決定的:

a2ead20c-0cc9-11ee-962d-dac502259ad0.png

當(dāng) QE = 0 且 IO3 被配置為 RESET# 時,因為是低電平有效,為了保證不會誤復(fù)位 Flash,需要給 IO3 加外部上拉(Flash 內(nèi)部沒有上拉)。如果此時想利用這個 RESET# 引腳復(fù)位 Flash,需持續(xù)拉低至少 tRESET 時間,F(xiàn)lash 會在最長 tRST 時間后才能正常響應(yīng)讀寫操作。

a31c4dbe-0cc9-11ee-962d-dac502259ad0.png

1.2 旺宏 Macronix

旺宏的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 RESET# 功能(是的,沒有 HOLD# 功能)。旺宏家有一個特色就是當(dāng) IO2/3 沒有物理上的信號連接時,其會保持內(nèi)部弱上拉狀態(tài)。

a33641c4-0cc9-11ee-962d-dac502259ad0.png

芯片內(nèi)部 Status Register[6] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號還是復(fù)用的WP#、RESET# 信號。

如果要借助 RESET# 引腳做 Flash 復(fù)位,旺宏家數(shù)據(jù)手冊里這部分寫得特別詳細(xì),還區(qū)別了不同 Flash 狀態(tài)下做復(fù)位后所需要的 tREADY2 時間。

a34731d2-0cc9-11ee-962d-dac502259ad0.png

1.3 兆易創(chuàng)新 GigaDevice

兆易創(chuàng)新的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 功能(是的,沒有名義上的 RESET# 功能)。Flash 廠商前三強(qiáng)關(guān)于這里的設(shè)計都不同。

a36dd5e4-0cc9-11ee-962d-dac502259ad0.png

需要注意的是兆易創(chuàng)新家也有一個特色就是當(dāng) CS# 拉高且 HOLD# 拉低時,也有 Flash 復(fù)位效果,這感覺 IO3 的復(fù)用功能是根據(jù) CS# 信號狀態(tài)來切換的。

a37f9900-0cc9-11ee-962d-dac502259ad0.png

芯片內(nèi)部 Status Register-2[1] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號還是復(fù)用的WP#、HOLD# 信號。

因為沒有名義上的 RESET# 功能,所以數(shù)據(jù)手冊里的 AC 表主要是為軟件 Reset 命令寫的,但是相信也適用隱藏的 RESET# 功能。

a38c0a46-0cc9-11ee-962d-dac502259ad0.png

1.4 鎂光 Micron

鎂光家的做法就更有意思了,IO2 上加了 WP# 功能這個沒異議,IO3 上功能復(fù)用直接提供兩種不同型號,要么是 HOLD#,要么是 RESET#。

a3a53f7a-0cc9-11ee-962d-dac502259ad0.png

當(dāng)然鎂光家最大的特色是并沒有 QE 控制位,IO2/3 具體功能主要靠當(dāng)前命令類型來決定:如果是 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ù)用功能。

a3b73568-0cc9-11ee-962d-dac502259ad0.png

關(guān)于 RESET# 信號時序,鎂光數(shù)據(jù)手冊里也寫得比較詳細(xì)。

a3c93466-0cc9-11ee-962d-dac502259ad0.png

1.5 芯成 ISSI

芯成的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 或者 RESET# 功能。跟華邦家設(shè)計一致。

a41b9094-0cc9-11ee-962d-dac502259ad0.png

芯片內(nèi)部 Status Register[6] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號還是復(fù)用的WP#、HOLD#/RESET# 信號。

當(dāng) QE = 0 時,IO3 引腳到底是 HOLD# 功能還是 RESET#,這是 Read Register[7] 來決定的:

a430ccca-0cc9-11ee-962d-dac502259ad0.png

關(guān)于 RESET# 信號時序,芯成數(shù)據(jù)手冊里寫得與華邦、兆易創(chuàng)新一樣比較粗略。

a452b092-0cc9-11ee-962d-dac502259ad0.png

1.6 英飛凌(原Spansion)

英飛凌的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 RESET# 功能。跟旺宏家設(shè)計一致。英飛凌家明確地給 IO2/3 內(nèi)部加了上拉,不用可以直接懸空。

a4686a54-0cc9-11ee-962d-dac502259ad0.pnga47b5006-0cc9-11ee-962d-dac502259ad0.png

芯片內(nèi)部 Configuration Register-1 Volatile[1] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號還是復(fù)用的WP#、RESET# 信號。

此外,英飛凌家還在 Configuration Register-2 Volatile[7] 里讓用戶可以選擇是否關(guān)閉 IO3 的 RESET# 復(fù)用功能。

a4b5b700-0cc9-11ee-962d-dac502259ad0.png

關(guān)于 RESET# 信號時序,英飛凌數(shù)據(jù)手冊里寫得比較簡潔。

a4c0fc32-0cc9-11ee-962d-dac502259ad0.png

1.7 瑞薩(原Adesto)

瑞薩的芯片引腳復(fù)用主要是 IO2 上加了 WP# 功能,IO3 上加了 HOLD# 功能。IO2/3 內(nèi)部也加了上拉。

a4db8b42-0cc9-11ee-962d-dac502259ad0.png

芯片內(nèi)部 Status Register-2[1] 是 QE 控制位,決定了 IO2/3 到底是數(shù)據(jù)傳輸信號還是復(fù)用的WP#、HOLD# 信號。

因為 8-Pin 封裝完全沒有硬件 RESET# 信號設(shè)計,所以就不介紹復(fù)位時序了。

二、快速對比表

廠商型號 復(fù)用情況 QE位控制 IO3復(fù)用功能選擇 IO2/3上拉情況
華邦 W25Q128JWSIM IO2與WP#
IO3與HOLD#/RESET#
Status Register-2[1] Status Register-3[7] 無內(nèi)部上拉
旺宏 MX25L12833F IO2與WP#
IO3與RESET#
Status Register[6] N/A 內(nèi)部弱上拉(僅當(dāng)懸空時)
兆易創(chuàng)新 GD25LE128D IO2與WP#
IO3與HOLD#
Status Register-2[1] CS# 無內(nèi)部上拉
鎂光 MT25QL128ABA IO2與WP#
IO3與HOLD#
IO3與RESET#
傳輸命令類型 Config Register[4]開關(guān) 無內(nèi)部上拉
芯成 IS25WP128 IO2與WP#
IO3與HOLD#/RESET#
Status Register[6] Read Register[7] 無內(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è)計痞子衡便介紹完畢了,掌聲在哪里~~~
責(zé)任編輯:彭菁

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關(guān)注

    關(guān)注

    454

    文章

    50460

    瀏覽量

    421964
  • 封裝
    +關(guān)注

    關(guān)注

    126

    文章

    7794

    瀏覽量

    142740
  • 引腳
    +關(guān)注

    關(guān)注

    16

    文章

    1184

    瀏覽量

    50293

原文標(biāo)題:主流Flash廠商關(guān)于QE位與IO功能復(fù)用關(guān)聯(lián)設(shè)計

文章出處:【微信號:pzh_mcu,微信公眾號:痞子衡嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    stm32功能復(fù)用 IO 時鐘

    請問stm32功能復(fù)用 IO 時鐘,開不開有什么不一樣,最好舉例子
    發(fā)表于 01-17 12:15

    STM32-IO-AFIO(復(fù)用功能IO和調(diào)試配置)

    很多功能,一般的單片機(jī)用到 一個功能后就能再用兩外復(fù)用功能了,這就體現(xiàn)出了STM32GPIO的強(qiáng)大功能了,我們用重映射的方法把其中一個外設(shè)
    發(fā)表于 07-06 00:27

    為什么開啟IO復(fù)用功能時鐘才能使用外部中斷

    不完全手冊中的外部中斷例程中提到要開啟IO復(fù)用功能時鐘才能使用外部中斷,但為什么在程序中沒有看到開啟復(fù)用時鐘的代碼?求原子哥解釋。(還是說我沒看到?)
    發(fā)表于 05-21 21:59

    請問這里IO口“復(fù)用”的是什么呢?

    這里“復(fù)用輸出”,文中只是提到這是IO口的第二個功能,這里IO口“復(fù)用”的是什么呢?
    發(fā)表于 06-18 00:37

    淺析IO引腳復(fù)用和映射

    MCU學(xué)習(xí)筆記IO引腳復(fù)用和映射1. 端口復(fù)用2. 端口復(fù)用配置過程1.端口復(fù)用STM32有很多內(nèi)置外設(shè),外設(shè)的外部引腳都是與GPIO
    發(fā)表于 11-01 09:19

    端口復(fù)用映射原理及GPIO外設(shè)復(fù)用功能配置過程

    寄存器,將IO鏈接到所需的AFx。端口復(fù)用STM32有很多內(nèi)置外設(shè),他們的外部引腳都與GPIO復(fù)用。就是GPIO若可以復(fù)用為內(nèi)置外設(shè)的功能
    發(fā)表于 12-09 07:20

    怎么去設(shè)置不同的STM32 IO復(fù)用

    網(wǎng)上一搜關(guān)于STM32的串口復(fù)用帖子挺多的,但是都是講的GPIO復(fù)用成為UART的IO,怎么去設(shè)置不同的IO
    發(fā)表于 01-07 07:59

    IO復(fù)用功能使用

    IO復(fù)用功能占用時,普通GPIO功能使用
    發(fā)表于 01-18 07:54

    Segger flasher對于RT1061的生產(chǎn)編程,QE不能用閃光燈設(shè)置怎么解決?

    對于 RT1061 的生產(chǎn)編程,我想使用 Segger flasher。 為了讓程序從外部 QSPI 閃存 (IS25LP080D) 運行,必須設(shè)置閃存中的 QE 。 不幸的是,QE
    發(fā)表于 05-05 12:43

    Boot rom如何啟用nor flash中的QE

    通過在 evbmimxrt1060_flexspi_nor_cofig.c 文件中添加 QE 啟用相關(guān)代碼,我能夠成功地將 QE 設(shè)置為 1。 然后我考慮如果我手動將 QE
    發(fā)表于 05-30 13:11

    MCU學(xué)習(xí)筆記_IO引腳復(fù)用和映射

    MCU學(xué)習(xí)筆記IO引腳復(fù)用和映射1. 端口復(fù)用2. 端口復(fù)用配置過程1. 端口復(fù)用STM32有很多內(nèi)置外設(shè),外設(shè)的外部引腳都是與GPIO
    發(fā)表于 10-26 09:51 ?18次下載
    MCU學(xué)習(xí)筆記_<b class='flag-5'>IO</b>引腳<b class='flag-5'>復(fù)用</b>和映射

    IO引腳復(fù)用與映射

    寄存器,將IO鏈接到所需的AFx。端口復(fù)用STM32有很多內(nèi)置外設(shè),他們的外部引腳都與GPIO復(fù)用。就是GPIO若可以復(fù)用為內(nèi)置外設(shè)的功能
    發(fā)表于 11-26 17:06 ?1次下載
    <b class='flag-5'>IO</b>引腳<b class='flag-5'>復(fù)用</b>與映射

    STM32端口IO方向設(shè)置問題

    7、推挽式復(fù)用功能 8、開漏復(fù)用功能 每個 IO 口可以自由編程,但 IO 口寄存器必須要按 32 字被訪問。STM32 的很多
    發(fā)表于 11-29 13:36 ?28次下載
    STM32端口<b class='flag-5'>IO</b>方向設(shè)置問題

    關(guān)于STM32的 I/O 復(fù)用功能

    今天給大家分享兩點內(nèi)容: 一是,為什么我們要先開啟STM32外設(shè)時鐘;二是,關(guān)于STM32的 I/O 復(fù)用功能及什么時候開啟AFIO時鐘。
    的頭像 發(fā)表于 10-20 14:19 ?3549次閱讀

    多路IO復(fù)用模型和異步IO模型介紹

    多路 IO 復(fù)用模型 多路 IO 復(fù)用,有時也稱為事件驅(qū)動 IO。它的基本原理就是有個函數(shù)會不斷地輪詢所負(fù)責(zé)的所有 socket ,當(dāng)某個
    的頭像 發(fā)表于 10-08 17:21 ?758次閱讀
    多路<b class='flag-5'>IO</b><b class='flag-5'>復(fù)用</b>模型和異步<b class='flag-5'>IO</b>模型介紹