三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

XTX这颗1G SPI NAND换代了,一文看懂C版与D版的爱恨情仇!

XTX这颗1G SPI NAND换代了,一文看懂C版与D版的爱恨情仇!

在电子工程师的日常工作中,有一句话出现时往往需要保持警惕:"之前那个料号没货了,原厂推了个新版,说是Pin-to-Pin兼容,直接换上去试试。"

"Pin-to-Pin兼容"在实际项目中通常需要仔细验证,规格书翻一遍、代码过一遍才稳妥。最近遇到XTX(芯天下)SPI NAND Flash从XT26G01C到XT26G01D的版本迭代,记录一下迁移过程中值得关注的差异点。

一、硬件规格的优化项

D版在硬件指标上确实有实质提升。

时钟频率方面,C版最高支持104MHz,D版提升至120MHz。Quad I/O模式下,理论峰值吞吐量从416Mbit/s提升到480Mbit/s,加载固件或资源时能感受到差异。

功耗控制是这次升级变化比较明显的地方。C版待机电流典型值180μA,D版降至15μA,降低了一个数量级。读操作工作电流也从25mA降至20mA。对于电池供电的IoT设备或便携终端,这个差异会直接影响待机功耗预算。

擦写寿命方面,D版规格书明确标注60,000次,为可靠性评估提供了更清晰的依据。

封装上,D版在原有WSON8(8×6mm)和BGA24基础上新增了LGA8(6×5mm)选项,空间受限的设计有了更多选择。

二、软件驱动需要关注的差异点

硬件虽然Pin-to-Pin兼容,但软件层面存在两处关键差异,直接替换可能导致系统无法启动。

2.1 Device ID变化

驱动初始化时通常会读取Device ID校验芯片型号。

C版ID:0x11
D版ID:0x31

如果驱动中的ID列表未更新,系统会报错"Unknown Flash"并拒绝启动。建议在ID表中增加0x31的匹配项。

2.2 UID读取指令变更

C版使用专属指令4Bh直接读取Unique ID。D版取消了4Bh指令,改用标准Page Read流程:

  1. 发Set Feature(指令地址B0h)进入相应模式

  2. 发送13h指令执行Page Read to Cache

  3. 使用Read From Cache指令读出数据

如果现有代码依赖UID做设备认证或加密,需要为D版单独实现读取函数。

2.3 HSE位

D版在Feature寄存器(地址B0h)中新增了HSE(High Speed Enable)位,开启后可优化连续读取的平均时间,C版无此位。

三、迁移适配要点

对比项XT26G01CXT26G01D适配动作
Device ID0x110x31驱动ID列表增加0x31
UID读取4Bh指令13h + OTP流程重写UID读取函数
最高频率104MHz120MHz无需改动
待机电流180μA15μA重新评估功耗预算
封装选项WSON8, BGA24WSON8, BGA24, LGA8新设计可考虑LGA8

四、小结

XT26G01D在功耗和性能上的优化值得肯定。迁移时需重点关注两点:驱动代码中更新Device ID列表,以及UID读取单独适配D版的流程。两处改动不复杂,但遗漏确实会导致启动异常。

对于正在使用C版且面临供货调整的项目,建议尽早评估D版的适配工作量,规划好软硬件验证周期。

有其他踩坑经验的同行欢迎补充交流。


本文基于XT26G01C Rev 2.8和XT26G01D Rev 1.1规格书对比整理,具体参数以官方最新版本为准。

← 返回列表