W25Q80和GD25Q80區(qū)別
二者同為SPI-Flash,前者為華邦公司產(chǎn)品,后者是GD公司產(chǎn)品。
W25Q80:
- 8M-bit 1024KB
- 80MHz clock operation
- 共有16個(gè)Block,每個(gè)Block有16個(gè)扇區(qū),每個(gè)扇區(qū)4KB,每一頁(yè)256個(gè)字節(jié)
- 每個(gè)設(shè)備有64位唯一ID
GD25Q80:
- 8M-bit 1024KB
- 120MHz 快速閱讀
- 共有16個(gè)Block,每個(gè)Block有16個(gè)扇區(qū),每個(gè)扇區(qū)4KB,每一頁(yè)256個(gè)字節(jié)
- 每個(gè)設(shè)備有128位唯一ID
引腳:(二者引腳完全兼容)
寄存器:
W25Q80 狀態(tài)寄存器(S15~S0)
BUSY:FLASH正在擦除或者正在寫入
TB:Top/Bottom寫保護(hù)位,與BP[2:0]構(gòu)成更多組合
SEC:扇區(qū)保護(hù)位,與BP[2:0]構(gòu)成更多組合
SRP0:狀態(tài)寄存器保護(hù)位
這5位決定寫保護(hù)的范圍
GD25Q80 狀態(tài)寄存器(S15~S0)
SUS:只讀位,該位在擦除、編程、暫停指令后置1 個(gè)人感覺這位沒什么用
CMP:與BP[4:0]構(gòu)成更多的組合 默認(rèn)置0,與W25q80保持兼容
HPM:該位置1表示FLASH當(dāng)前是高性能模式 一般不用
LB:OTP位,寫1,安全寄存器變?yōu)橛谰弥蛔x 一般不用
這6位決定寫保護(hù)范圍,其實(shí)除了S14,剩下的和W25Q80寄存器是一樣的,都是S2~S6共5位
那么S14是什么東西呢?上文講了,S14即CMP,CMP=0或1 時(shí) 只是保護(hù)的范圍不同罷了
比如當(dāng)CMP=0,S6~S2= 00010 時(shí) 寫保護(hù)區(qū)域?yàn)? 0E0000H-0FFFFFH 128KB(與W25Q80一樣)
當(dāng)CMP=1時(shí),S6~S2=00010時(shí) 寫保護(hù)區(qū)域?yàn)? 000000H-0DFFFFH 896KB
默認(rèn)CMP=0,即與W25Q80保持兼容。
指令表:
以下指令二者是一樣的,實(shí)際上GD32Q80多了很多指令,比如和安全寄存器相關(guān)的編程,擦除,讀取三條指令,但是通常我們也只會(huì)用到以下指令。
1.#define W25X_WriteEnable0x062.#define W25X_WriteDisable0x04
3.#define W25X_ReadStatusReg0x05
4.#define W25X_WriteStatusReg0x01
5.#define W25X_ReadData0x03
6.#define W25X_FastReadData0x0B
7.#define W25X_FastReadDual0x3B
8.#define W25X_PageProgram0x02
9.#define W25X_BlockErase0xD8
10.#define W25X_SectorErase0x20
11.#define W25X_ChipErase0xC7
12.#define W25X_PowerDown0xB9
13.#define W25X_ReleasePowerDown0xAB
14.#define W25X_DeviceID0xAB
15.#define W25X_ManufactDeviceID0x90
16.#define W25X_JedecDeviceID0x9F
值得注意的是,二者廠商的ID和設(shè)備ID是不同的,原子例程有個(gè)死循環(huán)驗(yàn)證廠商和設(shè)備ID,如果用的是GD25系列的Flash需要改下相關(guān)宏定義。
華邦的廠商和設(shè)備ID(不是芯片唯一ID)一般是 0xEFXX,GD是0xC8XX(XX由不同容量決定)。
綜上所述,二者可以互相替換。
如您想了解更多關(guān)于華邦存儲(chǔ)的信息資料,請(qǐng)咨詢華邦flash芯片代理-深圳穎特新-0755-82591179,QQ:1580629703
編輯:Simon 最后修改時(shí)間:2019-05-22