NAND Flash : Bitflip and Read only issue

日期2024-07-12

NAND Flash : Bitflip and Read only

 

关于发生NAND Flash bitflip and ECC Error会把区块变成Read only, 造成位元翻转过多无法修正之问题, 这边推测可能是因为外界干扰而导致。

在运作时若是在较为恶劣的电磁环境,资料在SOC到NAND传输时容易发生bitflip,因而让NAND收到的资料就是错误的或bitflip偏高的。

假设如果有多个NAND Flash都出现, 可以先进行以下几项检视:

  1. 统计ECC fail的address分布,是否集中在特定逻辑分区,如果集中在特定逻辑分区,那么附近的区域,即使ECC pass, bitflip count也会比较高
  2. 选取一片做测试分析,并Scan错误地址的Vt,建议先确认对应的address
  3. 同步检视”ECC data”与”正确data”之间的差异

 

Bitflip

可能发生的原因有以下几项 :

  1. 写入时正确,写入时或写入后发生bitflip时,去做测试分析,错误的资料Vt上可以看到异常,且错误在NAND上会比较随机分布
  2. 资料在写入时收到干扰,NAND接收到了错误数据,测试分析时会发现Vt是正常的,而且错误会集中分布在特定的逻辑分区,例如data或log等频繁写入的分区。这时,去scan整个逻辑分区,会发现很多bitflip偏高但是ECC pass的现象。

 

Read only

这问题有可能是因为NAND Flash内的空间已被写满未清洁导致或是长时间资料存放然后日积月累地被写满未定期清洁而导致。

对于即将被写满的空间, 在已被写满的情境下或是存放已久且不使用的File, User端需确认有没有相关管理机制对NAND Flash做空间释放或空间清洁。

(GC机制 : 在计算机概论中,指的是一种自动的记忆体管理机制。当某个程式占用的一部分记忆体空间不再被这个程式存取时,这个程式会借助GC算法向作业系统归还这部分记忆体空间。)

★方案内容均由个人提供,与平台无关,如有违法或侵权,请联系大大芯方案专属信箱