NAND Flash底层原理,SLC MLC TLC比较

NAND-Flash 的存储原理

  固态硬盘最小单元的基本架构如下:

  我们知道计算机中所有的信息储存最终都必须回归到 0与1,原则上,只要存储单元能提供两种或两种以上可供辨识的状态,便可以拿来纪录数据。

(1)写入数据

  在 NAND-Flash 中,当我们需要写入数据时,会在图中的控制闸(Control Gate)施加高电压,然后允许源极(Source)与汲极(Drain)间的 N信道(N-Channel)流入电子,等到电流够强,电子获得足够能量时,便会越过浮置闸(Floating Gate)底下的二氧化硅层(SiO2)为单元所捕获,这个过程我们称之为穿隧效应(Tunnel Effect);

(2)数据稳定

  一旦电子进入了浮置闸,即使移除电源,只要没有足够能量,电子是无法逃离底下的二氧化硅层的,捕获电子的状态便会一直维持下去,时间可以长达十数年之久,视用来绝缘的二氧化硅层耗损状况而定。

(3)读取数据

  读取数据时,我们同样会在控制闸施加电压,好吸住浮置闸里的电子,但不用到穿隧注入(Tunnel Injection)电子时那么高,同时让 N通道流过电流,利用电流来感应浮置闸里电子捕获量的多寡,靠感应强度转换为二进制的 0与1,最后输出成数据。

(4)擦除数据

  假如我们需要擦除数据,就必须靠释放浮置闸里头的电子来达成,此时我们不会对控制闸施加任何电压,而是反过来对单元底下的 P型半导体(P-Well)施加电压,源极与汲极间的电流流过二氧化硅层底下的 N通道时会反向让浮置闸里的电子再次穿越二氧化硅层被吸引出来,我们称之为穿隧释出(Tunnel Release)。

SLC MLC TLC 简单分析

1、SLC MLC TLC介绍

  SLC Single-Level Cell,意味着每个存储单元只存放 1bit讯息,靠浮置闸里电子捕获状态的有或无来输出成数据(即使在 0的状态浮置闸里其实还是有电子,但不多),也就是最简单的 0与1;

  MLC Multi-Level Cell,意味着每个存储单元可存放 2bit讯息,浮置闸里电子的量会分为高、中、低与无四种状态,转换为二进制后变成 00、01、10、11;

  TLC Triple-Level Cell ,更进一步将浮置闸里的电子捕获状态分成八种,换算成二进制的 000、001、010、011、100、101、110、111,也就是3bit。

2、SLC与MLC的比较

  SLC 与 MLC 的比较主要可以分为寿命、成本、功耗、效能与出错率五个面向。

(1)比较寿命

  • 原理说明

  固态硬盘存储数据主要靠单元中浮置闸所捕获电子的量,电子要进入或离开浮置闸都得藉由穿隧效应进出用来阻挡电子的二氧化硅层。而二氧化硅层其实只有10nm左右厚度,在每一次的穿隧注入电子或释出时,二氧化硅的原子键会一点一点地被破坏。因此,数据的擦除工作会愈来愈慢,因为电子会慢慢占据原本用来绝缘的二氧化硅层,抵销掉施加在控制闸上的电压,导致需要更高电压才能完成工作,而这会让氧化物更快被击穿,等到整个二氧化硅层被电子贯穿,该单元也就正式寿终正寝啦。

  • 得出结论

   SLC 只有有或无两种状态,MLC 却有四种电压状态,为了达到这四种状态,电子得频繁出入二氧化硅层,加速单元的耗竭,这也就是为什么 SLC 可以有十万次擦写寿命而 MLC 却只有一万次的原因。

  当然啦,TLC更惨,平均只有五百到一千次擦写寿命,所以主要拿来做市售的亲民价随身碟。

(2)比较速度、功耗、稳定性、出错率、成本

  SLC因为只有两种状态,最容易辨识,所以在同一种主控芯片与计算逻辑下速度最快,功耗也最低,状态稳定,以现代技术而言出错率几乎可以忽略不计。

  SLC的一个Cell只存1bit数据,MLC的一个Cell却能存2bit或者更多的bit数据,但芯片的体积并没增加,等于压缩存储了数据,这样的结果就是相同的一块芯片存储的容量变大,自然价格就便宜了。

  MLC与 TLC都十分仰赖 ECC,一有出错就会导致倍数以上的数据损失,好的是,截至 2012年底,各大厂 ECC技术其实都已经相当成熟。

(3)比较存储容量

  截止2017-08-01有对于单颗Flash,SLC最大支持512GB,MLC最大支持4TB,TLC最大支持6TB。

内存颗粒等级释疑

  上面这张图就是所谓的晶圆,刚出厂切割完就长这样,上面每一个小方块都可以拿做成一张记忆卡。问题是,就像内存颗粒即使刚出厂都会有坏块一样,刚出厂的晶圆上也不是每片颗粒都是优等生,就英特尔、镁光(Intel、Micron这两家公司的晶圆由共同合资的IMFT,IM Flash Technology生产)来讲,

(1)有些可以拿来做最高等级的同步颗粒;

(2)有些修复校验后可以拿来当次等的同步颗粒;

(3)而有些不管怎样折腾都是鸡肋,食之无味,弃之可惜,但还是可以卖,就拿来做最低阶的异步颗粒,主要用在国民价记忆卡上。

所以,千万不要看到打上英特尔或镁光就以为是什么极品,没那么神,还要对照颗粒表面的编码才能判定质量良窳。

同步与异步

  颗粒的同步/异步,主要是两个管脚的定义不同,同步模式下,颗粒不需要告诉主控“我准备好了,可以读/写了”,而是随时ready的状态,这样可以省下一个时钟周期。

  用英特尔 25nm颗粒的分级表来总结,给您个清晰的轮廓。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏后端云

自动化测试工具Serverwalker介绍

典型应用场景: 1)挑出多次测试不通过的用例,调查原因 2)挑出时过时不过的测试用例,调查原因

1423
来自专栏移动开发之家

IJKPlayer问题集锦之不定时更新

1、IJKPlayer 不像系统播放器会给你旋转视频角度,所以你需要通过onInfo的what == IMediaPlayer.MEDIA_INFO_VIDEO...

5584
来自专栏SDNLAB

云数据中心网络虚拟化——大二层技术巡礼之L2 Fabric技术传输隧道

NVo3是L2 over IP/MPLS,利用IP网络的智能传输作为大二层虚拟交换机的背板走线,其好处是利用现有的设备即可完成隧道的传输。不过同时这也带来了一定...

4746
来自专栏pangguoming

看完此文还不懂NB-IoT,你就过来掐死我吧...

3GPP NB-IoT的标准化始于2015年9月,于2016年7月R13 NB-IoT标准完成。

5551
来自专栏PHP实战技术

PHP找工作指南!如有雷同,算我抄你!

本文章是小编经过58、前程无忧、智联招聘、51、拉勾网等招聘网站总结PHP开发工作所需技能的部分总结,如有不对或不全之处,还请多多提意见!

2448
来自专栏何俊林

吐血干货,直播首屏耗时400ms以下的优化实践

导读:直播行业的竞争越来越激烈,进过18年这波洗牌后,已经度过了蛮荒暴力期,剩下的都是在不断追求体验。最近在帮做直播优化首开,通过多种方案并行,把首开降到500...

2853
来自专栏睿哥杂货铺

基于Go Packet实现网络数据包的捕获与分析

Packet capture is a computer networking term for intercepting a data packet that...

1.8K10
来自专栏包子铺里聊IT

[面试数据结构总结1] 牵一发而不动全身,Consistent Hashing

包子IT面试培训 助你拿到理想的offer! 有问题,问包子!Got question? Ask Baozi! Consistent Hashing 是一个经...

3614
来自专栏LanceToBigData

TCP/IP(二)物理层详解

前言   在前面说了一下,计算机网络的大概内容,没有去深刻的去了解它,这篇文章给大家分享一下物理层!   我们知道ISO模型是七层,TCP/IP模型是五层,而t...

3055
来自专栏Jerry的SAP技术分享

SAP Cloud for Customer Price-计价简介

SAP Cloud for Customer(本文以下简称C4C)作为SAP新一代的CRM云产品,其Price功能实现虽不如以前的SAP ERP那么复杂,但是也...

1192

扫码关注云+社区

领取腾讯云代金券