从NOR转向使用CS SD NAND:为什么必须加入缓存(Cache)机制? - 指南

news/2026/1/17 12:39:08/文章来源:https://www.cnblogs.com/gccbuaa/p/19495723

通过在传统使用 NOR Flash 的系统中,工程师通常习惯“随写随存”:写入数据粒度小,能够随机写入,不需要复杂的缓存或写入管理机制。不过随着使用场景发生转变,NOR Flash容量小,单位容量成本高,写入速度慢等成为瓶颈,很多工程师开始转向采用CS SD NAND这种NAND Flash产品. 在采用NAND过程中时如果仍然沿用 NOR 的写法,就容易遇到两个问题:

1️⃣ 寿命容易折损

2️⃣ 写入性能不稳定,出现延迟变慢

:NAND Flash 不同于就是这些问题背后的根本原因就NOR Flash,必须配合缓存(Cache/Buffer)来优化写入策略。

一、根本区别:写入粒度与擦除粒度完全不同

项目

NOR Flash

NAND Flash(SD NAND)

写入最小粒度

Byte/Word 级

Page(页)级,通常 2KB~16KB

擦除粒度

Sector(扇区,约4KB)

Block(块),通常囊括 64~128 个 Page

坏块管理

一般不需要

芯片内部已自带

写入策略

可随机写入

建议先缓存,再合并写入

是否需要管理算法

通常不需要

芯片内部已有FTL(Flash Translation Layer)

Block,这决定了它必须配合缓存使用。就是→ 重点:NAND 的最小写入单位是 Page(NOR是Byte),而擦除单位

二、不用缓存的后果:写入放大(Write Amplification)

假设主机只写入 200 字节信息(Bytes),这小于 Page 大小,例如SD NAND内部存储单元的物理 page 为 4K。那么 SD NAND 必须执行:

1.把原始 Page 内容读取到 RAM 中

2.在 RAM 中修改那 200 字节

3.将整个 Page(4KB)重新写回

4.如果要写回的Block 已写满,还需要触发 Block 搬移与擦除(擦除一个新的Block,

然后将本次修改后的page数据和旧Block中有效page一个一个的写入新Block中!)(即 Block Copy / Block Merge)

于是就出现了“写入放大(Write Amplification)”:

主机写 200 Bytes 数据,NAND Flash 实际却写了 4KB 甚至更多 。

WA(写放大倍数)越高 → Flash 寿命消耗越快 → 性能越不稳定。

缓存机制的意义,就是把零碎数据先暂存,再“合并写入”,减少写入放大。

而NOR Flash由于写入最小颗粒度是Byte,直接写入200字节的数据就好,写入放大的问题比较轻微。只是写入耗时 相比 做了缓存的NAND会多很多。

三、写入放大的影响

1️⃣ 寿命加速折损(P/E Cycle 快速消耗)

NAND Flash 的寿命核心取决于擦写次数(P/E Cycle)。例如SLC NAND一般是 50K~100K 次,假设写入放大严重,实际擦写次数会远高于用户真实写入次数:

示例:

主机实际写入 1GB 素材,但 WA=4,

Flash 实际写入 4GB 数据,相当于寿命减少到 原来的 1/4。

大家在客户端碰到过一个极端例子,客户做数据记录设备,写入频次非常高也不做缓存,每次只往SD NAND写入几个字节,几个月以后发现产品寿命出现折损。客户按照自己的理论值推算,总写入量只有20~30GB,远没有达到产品的总写入量,我们预估这种场景下的WA至少是100~上千,因此寿命折损相当厉害

2️⃣ 响应延迟和写入速度变慢

当写入放大导致频繁的后台操作(GC 垃圾回收、Block Merge、Wear-Leveling 磨损均衡),会导致:

  • 写入性能不稳定

  • 存在明显的延迟(几百毫秒甚至更长)

  • 有时主机以为“Flash 卡住了”

这些现象并不是 Flash 性能差,而是没有缓存 + 没有合理写入策略导致的。

具体在使用时会碰到:刚用的时候好好的,用一段时间感觉产品变卡了,响应变慢了也是这个原因。刚开始使用时flash里面都是空白,不太会触发以上操作,但满盘写入几次之后就开始触发频繁的后台管理,响应明显变慢。

四、加入缓存的好处:可控、可预测、可优化

是否使用缓存

写入性能

寿命

响应速度

是否便于调试

未使用

不稳定

快速下降

波动大

难定位问题

使用缓存

稳定

可评估

可预测

可持续优化

让系统行为变得“可控”和“可维护”。就是➡ 缓存不仅提升速度,更重要的

➡ 对产品化非常重要。

五、SD NAND 的角色:不仅是 NAND,更是“简化控制器方案”

CS创世 SD NAND内置四大Flash管理算法

创世CS的 SD NAND已经内置了基础的 FTL、坏块管理与控制器逻辑,相比裸 NAND 更容易使用。但即便如此仍然建议:建立写入缓存(例如 4KB/8KB)

简言之:SD NAND 已经帮工程师做了一层管理,但它仍然不是 NOR,不建议 “随写随存”。

特有是针对数据记录和采集设备,医疗记录设备。都存在ms级别的数据采集,单次内容采集量都非常小(几个~几百字节)这种场景,一定要先做缓存再写入!

六、总结

从 NOR 转向 NAND(包含所有使用NAND Flash的产品,比如SD NAND, eMMC, SSD等) 时,为什么必须启用缓存?

✔ NAND 的写入必须以 Page 为单位、擦除必须以 Block 为单位

✔ 如果不做缓存,就会出现写入放大(Write Amplification)

✔ 写入放大会导致:

  • 寿命迅速折损

  • 写入性能/响应速度不稳定

  • 系统行为不可预测

采用缓存机制后,既能发挥NAND Flash容量大,价格便宜,写入速度快的优势,又得到一个可预测、可调优、可维护,使用寿命长的系统。

有疑惑或不懂的地方,就是亲爱的卡友们,欢迎光临雷龙官网,如果看完文章之后还

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1173447.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从NOR转向使用CS SD NAND:为什么必须加入缓存(Cache)机制? - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

win7驱动开发环境搭建

资源下载 微软只有最新版本的visual stutio社区版可供下载,现在(2025.12.23)是vs2026,如果下载老版本社区版,则需要找第三方资源。 我们需要的VS版本是2017,WDK 17763.1,SDK 17763.1,必须这三个配合才能编译wi…

win7驱动开发环境搭建

资源下载 微软只有最新版本的visual stutio社区版可供下载,现在(2025.12.23)是vs2026,如果下载老版本社区版,则需要找第三方资源。 我们需要的VS版本是2017,WDK 17763.1,SDK 17763.1,必须这三个配合才能编译wi…

面试官:什么是 Redis 的数据分片?

在线 Java 面试刷题(持续更新):https://www.quanxiaoha.com/java-interview 面试考察点 面试官提出这个问题,通常不仅仅是想知道一个简单的定义。其核心考察点在于: 对分布式系统核心思想的理解:考察你是否…

2025年导电滑环厂家:市场热销品牌大揭秘,帽式滑环/集电环/光电滑环/编码器滑环/滑环,导电滑环公司排行 - 品牌推荐师

行业背景:技术迭代加速,高端需求倒逼产业升级 导电滑环作为机械旋转部件与静态系统间信号/能量传输的核心装置,广泛应用于工业机器人、航空航天、新能源、医疗设备等领域。随着智能制造、5G通信、新能源等产业的快速…

当系统出现d3dx9_37.dll丢失问题如何解决? 免费下载方法分享

在使用电脑系统时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用 Microsoft Visual Studio 编写的,所以这类软件的运行需要依赖微软Visual C运行库,比如像 QQ、迅雷、Adobe 软件等等,如果没有安装VC运行库或者安装…

2025年深度评测:本地口碑领先的高中全览,中学/实验中学/实验学校/高中/名办高中/高中复读学校/学校高中企业推荐排行榜 - 品牌推荐师

在当今教育多元化的时代,选择一所适合的高中成为众多家庭规划未来的关键一步。随着教育理念的不断革新,家长与学生的需求已从单一的升学率追求,转向对学校综合实力、特色培养路径、师资水平及校园文化等多维度的综合…

为什么不让程序员直接对接客户,而是通过产品经理?

来源:zhihu.com/question/659588326👉 欢迎加入小哈的星球,你将获得: 专属的项目实战(多个项目) / 1v1 提问 / Java 学习路线 / 学习打卡 / 每月赠书 / 社群讨论新项目:《Spring AI 项目实战》正在更新中..…

当系统出现找不到d3dx9_38.dll如何解决? 免费下载方法分享

在使用电脑系统时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用 Microsoft Visual Studio 编写的,所以这类软件的运行需要依赖微软Visual C运行库,比如像 QQ、迅雷、Adobe 软件等等,如果没有安装VC运行库或者安装…

ABC279H

\(1 \le n \le 10^{12}\) ABC279H 对于 \(\min(k, S_k)\) 与 \(S_k\),构造生成函数 \(f_k(x)\): \[\begin{aligned} f_k(x) &= x + 2x^2 + \dots + kx^k + kx^{k + 1} + kx^{k + 2} + \dots \\ &= x \left(\…

为什么程序员不自己开发微X小程序这类似的东西赚钱?

因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享点击关注#互联网架构师公众号,领取架构师全套资料 都在这里0、2T架构师学习资料干货分上一篇:2T架构师学习资料干货分享大家好,我是互联网架构师&#xff…

比特币超级周期将至的原因

作者:Arthur Hayes编者注:本文略有删减此处表达的所有观点均为作者个人观点,不应作为投资决策的依据,也不应被视为参与投资交易的推荐或建议。我的神灵们是以可爱毛绒玩具的形象具象化的。在1月和2月北海道滑雪最旺盛的季节&#…

分享一个占用单片机2K内存就能跑的AI模型

关注星标公众号,不错过精彩内容作者 | strongerHuang微信公众号 | strongerHuang这些年随着ChatGPT、DeepSeek的火爆,AI已经遍布工作和生活的各个角落,嵌入式端侧AI也逐渐发展起来了。今天就来分享一个只要占用单片机2KB内存就能运行的的嵌入…

氟塑料回收如何选?2026年教你几招!,国内氟塑料回收产品甄选实力品牌 - 品牌推荐师

随着全球制造业向绿色化转型,氟塑料回收因其高附加值与环保价值成为产业焦点。作为耐高温、耐腐蚀的特种材料,PTFE、PVDF、PFA等氟塑料在电子、化工、新能源等领域广泛应用,但其回收率不足30%,市场存在技术壁垒高、…

非标记定量(LFQ)

非标记定量(LFQ)非标记定量(LFQ)是一种无需对样品进行同位素或荧光标记的定量蛋白质分析技术。通过质谱仪对样品中肽段的相对丰度进行定量分析,LFQ能够在保持样品结构原貌的同时,提供高灵敏度、高通量的蛋白…

看到第5张图我哭了!那个在我手腕画手表的女孩,你现在还好吗?

大家好,我是晓衡。昨天深夜,开发者给我发来了一个新包,说是《西游拼图》的“怀旧特别版”出来了。当时,我正跟家人在西安民宿K着老歌,怀念着中学、大学的时光。我本来是抱着“验货”的心态,用电脑打开随便看…

裁员这事儿,还真没完了。。

2026年的大环境并不乐观,身边不少朋友失业,收入都在下滑。不少读者问我如何应对,思来想去还是要做增量,守是守不住的。不管是打工还是自己做事情,一定要做增量。比如搞副业、开辟新业务等等。另外就是,不要…

面试了一个45岁的程序员,他要月薪2万,我同意了;结果面试完把他送到电梯口,他说如果是14薪的话,月薪1.8万也行。

来自:网络,侵删推荐一个程序员编程资料站:http://cxyroad.com副业赚钱专栏:https://xbt100.top2024年IDEA最新激活方法后台回复:激活码CSDN免登录复制代码插件下载:CSDN复制插件以下是正文。刚看到个贴子&a…

2026 年 geo 优化服务商选型指南:精准识别专业靠谱合作伙伴 - 速递信息

随着GEO服务商数量增多,市场信息繁杂,企业选型难度不断上升。本指南以2026年行业先锋品牌为锚点,从技术内核、服务能力、实战效果、客户口碑等维度展开深度解码,旨在帮助企业穿透宣传迷雾,识别真正具备专业能力与…