SPI NAND Flash 選型:與 SPI NOR 的差異,以 GigaDevice GD5F1GQ5 / GD5F2GQ5 為例
SPI NAND 以頁讀寫、區塊抹除、需要 ECC 與壞區管理,換來遠高於 SPI NOR 的密度與更低 bit 成本。以 GD5F1GQ5(1Gb)、GD5F2GQ5(2Gb)為例,教你何時該從 NOR 換成 NAND、以及第二來源怎麼挑。
SPI NAND 與 SPI NOR:架構差在哪
SPI NOR 可位元組隨機定址、能直接執行碼(XIP),讀取延遲低、出廠幾乎無壞區,但 bit 成本高、密度受限。SPI NAND 改以頁為讀寫單位、以區塊為抹除單位,不支援 XIP,但 bit 成本低、密度可一路做到 Gb 等級。代價是 NAND 單元先天會出現位元錯誤,且出廠就可能有壞區並隨抹寫增生,因此必須搭配 ECC 與壞區管理(BBM),並用 spare/OOB 區存放校驗碼與壞區標記。現代 SPI NAND(含 GigaDevice GD5F)已把 ECC 引擎做進晶片(on-die ECC)以簡化主機軟體。
GD5F1GQ5 / GD5F2GQ5 規格與「ECC-free」釐清
GD5F1GQ5(1Gb)與 GD5F2GQ5(2Gb)都採 2KB 主頁加 128B spare、每區塊 64 頁(即 128KB 區塊),GD5F1GQ5 有 1024 個區塊、GD5F2GQ5 有 2048 個;介面支援 x1/x2/x4(Standard/Dual/Quad SPI)與 DTR,最高時脈 104MHz,提供 −40~85°C 與 −40~105°C 溫度版本、WSON8 封裝,JEDEC 製造商 ID 為 0xC8。要特別釐清:官方規格的「ECC-free」不是「沒有 ECC」,而是「晶片已內建 on-die ECC、主機端不需外掛 ECC」——校驗碼在寫入時自動產生並存於 spare 區、讀取時自動改錯。另一個選型陷阱是電壓:GD5F 系列分 1.8V(後綴 RE)與 3.3V(後綴 UE)變體,1Gb 與 2Gb 都有兩種電壓,Layout 時務必依同電壓變體配對。
什麼時候該從 NOR 換成 NAND
沒有單一硬門檻,但通則是:當容量需求進入約 256Mb~1Gb 以上、且該段資料不需要直接執行(XIP)時,SPI NAND 的密度與 bit 成本優勢就開始明顯勝出;1~2Gb 正是 SPI NOR 上探吃力、SPI NAND 的主場。需要直接執行的開機碼仍適合放在 SPI NOR,或用 SoC 內的 SRAM/DRAM 做 code shadowing——把 NAND 內容載入後再執行。小型 Linux/IoT 系統常見的分工是:bootloader 放 SPI NOR、kernel 與檔案系統放 SPI NAND,並用 UBI/UBIFS 這類具磨耗平均與壞區管理的檔案系統。
第二來源與選型注意
GD5F 在腳位與封裝層級常可對應其他 SPI NAND(同為 WSON8、同 SPI/Dual/Quad 指令族),但不是無條件 drop-in:GigaDevice(ID 0xC8)、Winbond W25N(0xEF)、Micron MT29F(0x2C)在 JEDEC ID、spare 區大小、on-die ECC 強度與讀 ID 的回傳格式上不同,因此更換顆粒時要重新驗證驅動的 ID 表、ECC 狀態判讀與壞區處理,不能只看腳位就換。1~2Gbit SPI NAND 適合 IoT 資料記錄、語音/圖像/AI 模型等大型唯讀資產、小型 Linux 的 rootfs、以及 OTA 雙 image 等場景;要與既有 1.8V 或 3.3V 平台對接時,記得選對 RE/UE 電壓版本。
文中提及的產品
GD5F1GQ5 1Gbit SPI NAND Flash
GD5F1GQ5 是 GigaDevice 1Gbit SPI NAND Flash,2KB 頁、128KB 區塊(64 頁),支援 x1/x2/x4(Quad)SPI。系列分為內建 ECC 版(UE,2.7~3.6V、最高 133MHz)與無 ECC 版(RE,1.7~2.0V、104MHz),WSON8 封裝,適合 MCU/SoC 的程式與資料儲存。
GD5F2GQ5 2Gbit SPI NAND Flash
GD5F2GQ5 是 GigaDevice 2Gbit 串列 SPI NAND Flash,採 x1/x2/x4(Quad)SPI 介面、最高 104MHz,2.7~3.6V 供電,2KB+128B 頁面、內建 on-die 硬體 ECC,封裝 WSON8(8×6mm)。容量為已收錄 GD5F1GQ5(1Gbit)的兩倍,適合 MCU/SoC 的程式與資料儲存、IoT、機上盒與工業/車規(−40~+105°C)應用。
GD25Q128 128Mbit SPI NOR Flash
GD25Q128 是 128Mbit(16MB)串列 SPI NOR Flash,2.7~3.6V 供電、最高時脈 133MHz,支援 Dual/Quad I/O,4KB 磁區與 32/64KB 區塊抹除、256-byte 頁編程。封裝 SOP8 / WSON8,採標準 JEDEC 腳位與指令集,是 Winbond W25Q128 的常見第二供應商。