ROM学习笔记2-NOR Flash和NAND Flash

本文有很多地方的介绍做了简化,比如结构,浮栅晶体管如何充电,如何放电……但是不影响你理解它,记住它。

1 NOR Flash

1.1 NOR Flash的浮栅晶体管

NOR Flash中的浮栅晶体管又叫快闪叠栅MOS管。其区分0、1的方式与EPROM、EEPROM并无区别,有区别的是它们充放电的方式以及原理。
在这里插入图片描述
编程时,是1变为0的过程。此时,在DS之间加一个大电压使得漏极和衬底之间雪崩(能雪崩一是因为工艺尺寸的变化,二是设计上有意而为之),产生高能沟道热电子。此时在控制栅加高电压,雪崩的热电子就能被吸引到浮栅。所以,编程使用的是沟道热电子注人(CHE)( Channel HotElectron Injection)效应。这也是为什么NOR Flash相比于 NAND Flash写入速率较低,不适用于频繁擦除/写入场合。
擦除时,是0变为1的过程。此时在源极加一个大电压,由于隧道区很薄,电子就能从隧道区回到衬底。与编程不同,擦除用的是F-N隧道效应(FowlerNordheim tunneling)

在这里插入图片描述

1.2 NOR Flash名字的由来

NOR Flash的NOR为NOT OR(或非)之意,NAND Flash的NAND则为NOT AND(与非)之意,而该名称的命名是与两种FLAHS的架构有关的,如图所示:

在这里插入图片描述

可以看到,NAND Flash的浮栅晶体管是串联在位线上的,而NOR Flash的浮栅晶体管则是并联在位线上的。如果假设字线上加逻辑电平1时导通,0时截止,则NAND架构必须全1才能在位线顶端读到0,即与非逻辑;NOR架构则是字线上全0才能在位线上读到1,即或非逻辑。

1.3 NOR Flash的结构

NOR Flash的结构原理图如下。每个位线下的基本存储单元是并联的,当某个字线被选中后,就可以实现对该4位的读取。左侧加个译码器,上方加个输入输出缓冲器,组成的就是最经典的存储器结构。

在这里插入图片描述

1.4 NOR Flash结构上的遗憾

由于NOR Flash采用并联在位线上的方式,其需要大量的空间存放金属位线,因此NOR Flash的存储密度较低,无法适用于需要大容量存储的应用场合。
在这里插入图片描述

2 NAND Flash

1.1 NAND Flash的浮栅晶体管

NAND Flash的浮栅晶体管与NOR Flash的浮栅晶体管在充电方式上也有区别。

编程时,是1变为0 的过程。此时,只需在控制栅加高电压,就能吸引衬底电子到浮栅。所以,编程用的是F-N隧道效应(FowlerNordheim tunneling)

在这里插入图片描述
擦除时,是0变为1的过程。此时在源极加一个大电压,由于隧穿层很薄,电子就能被电场吸回衬底。与编程一样,擦除用的是F-N隧道效应(FowlerNordheim tunneling)
在这里插入图片描述
最终的结果,就是导通电压的变化。vth小于Vread的即读到1,大于Vread即读到0。大于两种导通电压的电压叫Vpass,这里设定为10V。
在这里插入图片描述

2.2 NAND Flash的结构

NAND Flash中存在下面几个基本概念:die、plane、block、page(page对应于普通硬盘或NOR Flash中的sector,即常说的扇区)。

每个芯片包含一个或多个die。
每个die包含一个或多个plane(通常是1个或2个)。
每个plane包含多block,block是最小擦除单元。
每个block包含多个page, page是最小的读写单元。

在这里插入图片描述

下图是一个block的结构,每根字线连接的浮栅晶体管构成一个page ,整个面构成一个block。前面提到,NAND Flash采用并联的结构。这种结构与以往介绍的存储器结构都不同,其读擦写的方法也差别很大。

在这里插入图片描述
每个block的浮栅晶体管都制造在同一个P衬底上,擦除时只需要在衬底上接高电压即可。这也是为什么擦除的最小单位是block
在这里插入图片描述

编程时,给需要编程的字线上施加20V的编程高压,其他字线上施加10V的Vpass,使它们导通。在位线的处理上,我们将要写0的位位线接0V,其他接2V。由于沟道效应的影响,这些位不会被写入0。这样,我们就写入了11111110。
在这里插入图片描述
读取时,在要读取的位线上施加5V Vread。如果此时该位线上有电流,说明该bit位为1;如果没有电流,说明该位经过编程,提高了浮栅晶体管的导通电压,导致5V不能使其导通。
在这里插入图片描述
实际上,为了增大NAND Flash的容量,一行(字线)上有成千上万个晶体管,这就是为什么一次编程的最小单位是page;一面也不可能只有八行;整个存储器也有上千个这样的block。

2.2 拓展:SLC、MLC和TLC

实际上,浮栅晶体管并不存在绝对的空和满状态,其中的电子数目可以处于空和满之间的任一个状态。

由此可见,可以根据晶体管中电子的数目来指示二进制的0和1。比如在SLC(Single Level Cell)中,晶体管中电子数目小于50%的时候代表1,大于50%的时候代表0。

SLC是对电子数目做的一阶量化,所以一个晶体管可以代表两个状态:0和1。如果我们对晶体管中的电子数目做二阶量化,一个晶体管就可以代表四个状态:少于25%代表00,25% ~ 50%代表01,50% ~ 75%代表10、大于75%代表11。这就是MCL(Multi Level Cell)的做法。

当然我们还可以对晶体管中的电子数目做三阶量化,一个晶体管就可以代表八个状态:000、001、010、011、100、101、110、111。这是TLC(Three Level Cell)的做法。

也就是说,量化等级越高,一个晶体管可以表示的状态越多,存储密度就越大,同等数量的存储单元组成的存储介质,存储容量也越大。

这样,原本一个bit的浮栅晶体管现在能存储3bit数据。这也是为什么如今的SSD容量如此之大的原因。

借鉴资料:
1: 固态硬盘的缓存是干什么的?

2: 存算一体的存储器基础(这个的简介区有很多科普视频)

3: SSD是如何存储数据的?

4: NAND Flash基础知识简介

5: Nand Flash学习笔记2-Program(有一系列NAND Flash相关的,都有点帮助)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值