0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何保存NAND Flash数据完整之 “掉电丢数据”底层原因

jim 来源:雷龙发展 作者:雷龙发展 2025-12-23 16:38 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

随着越来越多客户从 NOR Flash 迁移到CS品牌的 SD NAND 存储产品,有工程师会遇到“明明写入成功了,为什么设备突然断电后,数据消失了?”的问题。

这种情况听起来像“异常”,但其实,它是系统层面必然存在的特性。这里我们来解释一下底层原因,从而更容易找到解决方法。

wKgZPGlKVRCAVc0sAAeWtU1qLbA023.jpg

01|NAND Flash 不是实时写入设备

相比 NOR,NAND Flash 采用完全不同的底层结构:

NAND 的 写入粒度是 Page(页)

NAND 的 擦除粒度是 Block(块)

也就是说:即使只写入 1 个字节,最终也要以整页数据方式写入。

写入过程不是一步完成,而是:

数据进入控制器 → 缓存 → 整理成 Page → 写入 NAND → 更新映射表

这意味着,在数据落盘之前,会存在一段“过渡期”。

如果断电发生在这个阶段,数据就有可能未完成写入——自然也不会被保存。

02|Flash 管理算法决定写入结果不是瞬间固定

为了延长寿命、减少写扩散、优化访问性能,SD NAND 内部有:

FTL(Flash Translation Layer)

Wear-Leveling(均衡写入)

Garbage Collection(垃圾回收)

ECC/BCH/LDPC 校验机制

这些机制会带来一个事实:写操作并不是同步落盘,而是异步过程。

更重要的是:

有时 NAND 已经写完数据,但映射表还未更新

有些 Page 数据正在被复制或合并

有时系统正在进行垃圾回收(GC)

这些阶段若意外断电,就可能出现:

写入数据丢失

数据结构损坏

文件变成“看得见却打不开”

这不是故障,而是 NAND 的工作方式。

03|文件系统不会立即写盘,而是“延迟写入”

很多用户以为:只要 APP、系统或驱动 write() 成功,数据就已经写到存储器里。

事实上,大多数文件系统,包括:

FAT32 / exFAT

LittleFS

Linux EXT4 / F2FS

RTOS 上的嵌入式 FS

都采用写入缓存策略(Write-Back Cache),即:数据会先存在系统内存或设备缓存中,而不是立即写入存储芯片。

这是为了:

加快速度

减少 NAND 写入次数

增加寿命

但是,这也带来结果:写入成功 ≠ 数据已安全保存。

04|为什么用 NOR 时没问题?

很简单:

wKgZO2lKVRGAC_fYAAAuBEtvBhA536.png

换句话说:使用 NAND,就意味着系统行为会从“实时写入”,变成“阶段性写入”。这不是优劣差异,而是技术路线的不同。

05|理解存储介质,才能正确使用它

掉电数据丢失并不是 SD NAND 的“问题”,而是使用 NAND 介质时必须考虑的设计因素。影响因素包括:

写入策略

供电稳定性

文件系统设计

控制器算法

写入数据量大小和写入频率

是否存在频繁随机小写入场景

了解了底层原理,在面对出现问题的场景时,我们和客户也更容易找到解决方案。也欢迎有这种困惑的客户联系我们,我们会结合您的具体应用场景,写入模型给出对应的解决方法。

亲爱的卡友们,欢迎光临雷龙发展

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NAND
    +关注

    关注

    16

    文章

    1766

    浏览量

    141295
  • FlaSh
    +关注

    关注

    10

    文章

    1759

    浏览量

    155873
  • 存储介质
    +关注

    关注

    0

    文章

    27

    浏览量

    12224
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    NOR FLASHNAND FLASH的对比

    FLASH芯片的擦写次数一般来说都是有限的,目前主流产品的擦写寿命普遍在10万次左右。当FLASH芯片接近使用寿命终点时,写操作可能会出现失败。不过,需要注意NAND FLASH采用整
    的头像 发表于 03-31 16:58 436次阅读

    探秘 EZ - USB NX2LP:USB 2.0 NAND Flash 控制器的卓越

    探秘 EZ - USB NX2LP:USB 2.0 NAND Flash 控制器的卓越选 在电子设计领域,选择一款合适的 USB 2.0 NAND
    的头像 发表于 03-28 14:50 588次阅读

    NOR FlashNAND flash有什么区别

    在嵌入式系统、移动设备与存储领域,NOR FlashNAND Flash是两种最常见的非易失性存储技术。尽管它们都属于闪存(Flash EEPROM)家族,但在内部结构、接口方式、读
    的头像 发表于 03-11 15:08 514次阅读
    NOR <b class='flag-5'>Flash</b>和<b class='flag-5'>NAND</b> <b class='flag-5'>flash</b>有什么区别

    从NOR FlashNAND Flash 和SD NAND,从底层结构到应用差异

    nor flash,nor nand,sd nand,spi nor,nand flash
    的头像 发表于 03-05 18:24 381次阅读
    从NOR <b class='flag-5'>Flash</b> 到 <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b> 和SD <b class='flag-5'>NAND</b>,从<b class='flag-5'>底层</b>结构到应用差异

    从NOR FlashNAND Flash 和SD NAND,从底层结构到应用差异

    在嵌入式系统开发中,“存储选型”是经常会遇到的问题,特别是许多曾长期使用 NOR   Flash 的工程师,在切换到 NAND Flash 时常常感到疑惑:   为什么 NAND
    发表于 03-05 18:23

    SD NAND 为何不能存启动代码,SPI NAND 与 NOR Flash 却可以 —— 接口、传输、启动机制全对比

    在嵌入式、物联网、工控、车载等硬件系统中, 启动存储器(Boot Flash)  是决定设备能否上电即跑、稳定可靠的核心器件。实际选型中,SD NAND、SPI NAND、NOR Flash
    的头像 发表于 02-09 11:16 384次阅读
    SD <b class='flag-5'>NAND</b> 为何不能存启动代码,SPI <b class='flag-5'>NAND</b> 与 NOR <b class='flag-5'>Flash</b> 却可以 —— 接口、传输、启动机制全对比

    SPI NOR Flash和SPI NAND Flash存储芯片的区别

    SPI NOR Flash与SPI NAND Flash并非相互替代,而是互补关系。SPI NOR胜在读取速度快、使用简单、可靠性高,是代码存储的理想选择。SPI NAND则以其大容量
    的头像 发表于 01-29 16:58 844次阅读
    SPI NOR <b class='flag-5'>Flash</b>和SPI <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>存储芯片的区别

    NAND Flash选型旺宏MX35LF2GE4AD-Z4I实现高可靠数据留存

    旺宏MX35LF2GE4AD-Z4I 2Gb Serial NAND Flash具备-40℃~85℃工业级宽温、60,000次擦写寿命及10年数据保存能力,支持133MHz高速读取与x
    的头像 发表于 12-15 09:54 683次阅读
    <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>选型旺宏MX35LF2GE4AD-Z4I实现高可靠<b class='flag-5'>数据</b>留存

    从NOR FlashNAND Flash和SD NAND,从底层结构到应用差异

    在嵌入式系统开发中,“存储选型”是经常会遇到的问题,特别是许多曾长期使用 NOR   Flash 的工程师,在切换到 NAND Flash 时常常感到疑惑:   为什么 NAND
    发表于 12-08 17:54

    智能显示模块支持掉电保存数据吗?智能模块支持操作Flash吗?

    智能显示模块支持掉电保存数据吗?智能模块支持操作Flash吗?
    发表于 11-14 08:41

    电能质量在线监测装置掉电 10 分钟数据吗?

    电能质量在线监测装置在掉电 10 分钟时能否确保数据不丢失,取决于其 硬件设计、备用电源配置、数据存储机制 三大核心要素。以下是具体分析: 一、硬件设计与备用电源:决定基础续航能力 1. 常规装置
    的头像 发表于 11-09 17:26 650次阅读

    NAND Flash的基本原理和结构

    NAND Flash是什么?NAND Flash(闪存)是一种非易失性存储器技术,主要用于数据存储。与传统的DRAM或SRAM不同,
    的头像 发表于 09-08 09:51 7724次阅读
    <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>的基本原理和结构

    功率分析仪的“存储”与“数据保存”模式如何保存测量数据呢?

    数据保存”模式和“存储”模式将通过差异化功能设定满足用户多样化的数据存储需求:当您仅需保存一组数据时可选择“
    的头像 发表于 07-23 17:51 1167次阅读
    功率分析仪的“存储”与“<b class='flag-5'>数据</b><b class='flag-5'>保存</b>”模式如何<b class='flag-5'>保存</b>测量<b class='flag-5'>数据</b>呢?

    什么是Flash闪存以及STM32使用NAND Flash

    的32Gb密度嵌入式存储。该产品与原始NAND相比,它有许多优点,包括嵌入式坏块管理和更强的嵌入式ECC。即使在异常断电的情况下,它仍然可以安全地保存数据。 特点 接口:标准SD规范2.0版,带有1-I/O
    发表于 07-03 14:33

    泰克示波器波形数据保存为CSV格式的完整指南

    而备受青睐。本文将详细介绍泰克示波器保存波形为CSV文件的完整操作步骤、注意事项及实际应用场景,帮助用户高效完成数据存储与分析。
    的头像 发表于 06-07 15:31 1510次阅读
    泰克示波器波形<b class='flag-5'>数据</b><b class='flag-5'>保存</b>为CSV格式的<b class='flag-5'>完整</b>指南