NAND Flash理解-基础概念和结构(一)

1、NAND Flash 基本概念

       NAND Flash 是一种非易失性存储介质,首先非易失性存储技术种能够在断电后保持存储数据的存储器技术,与易失性存储器不同,非易失性存储器不需要持续的电源供应来保持存储的数据,包括 ROM 与 Flash Memory 两种。Flash Memory 即闪存,包括 NOR 与 NAND 两种。本文将针对 NAND Flash 进行介绍,所以后面出现的闪存即 NAND Flash 。

1)NAND Flash 基本存储单元

        NAND 的基本存储单元(Cell)是一种类 NMOS 的双层浮栅 MOS 管,如图所示。

闪存基本存储单元结构图

       在源极(Source)到漏极(Drain)之间电流单向传导的半导体上形成存储电子的浮栅,浮栅上下被绝缘层包围,存储在里面的电子不会因为掉电而消失,所以 NAND 是非易失性存储器。

2)闪存特性

       闪存是通过擦除、写入和读取等一系列操作实现数据存储的,接下来将简单介绍闪存作为存储介质存在的特性,并在后续文章中将详细描述。

  • 闪存的每个块(Block)擦写(擦除、写入)次数达到一定次数后要么会变成坏块,要么存储在上面的数据变得不可靠,所以要做到磨损均衡,让数据平均写在所有块上。
  • 闪存在写入前必须先擦除,不能覆盖写。
  • 闪存读的次数是有限的,读的次数多了会出现读干扰的问题。

3)SLC、MLC、TLC和QLC

      一个存储单元存储 1 bit 数据的闪存称为 SLC(Single Level Cell),相应地,能够存储 2 bit 数据的闪存为 MLC(Multiple Level Cell),存储 3 bit 数据的闪存为 TLC(Triple Level Cell),存储 4 bit 数据的闪存为 QLC(Quad Level Cell)。

       因为闪存的基本存储单元是通过浮栅极存储电子,所以根据每个存储单元中电压值及电子数目来进行状态划分,然后根据不同的状态实现数据存储。下图为 SLC 、MLC 、TLC 和 QLC 的电压分布图以及四种闪存存储状态的对比。

四种闪存电压分布图

四种闪存存储状态的对比

       对于 SLC 来说,一个存储因为单元存储两种状态,浮栅极中的电子多于某个参考值的时候,我们把它采样为0,否则就判定为1。同样的对 MLC 、TLC 和 QLC 来说,一个存储单元能存储的状态数目逐步增多,相应地,读写的时候对电子数目的控制也需要更加的精细,因此虽然在同样面积的存储单元上 SLC、MLC、TLC 和 QLC 的内存容量依次增大,但操作性能和寿命上则依次减少。下图为四种闪存在读写性能、价格和使用寿命的对比图。

4)操作原理 

  • 擦除(Erase)

       擦除操作是在衬底施加强电压,引发量子隧道效应,使电子能够从浮栅层通过绝缘层吸向衬底,电子的流动会改变存储单元的逻辑状态,从 1 变为 0 ,实现擦除数据操作。

       需要注意的是,NAND Flash 的擦除操作是以块(Block)为单位进行的。同时由于擦除操作会对存储单元造成一定的损伤,因此需要对擦除次数进行限制,以避免存储单元的寿命缩短。

  • 写入(Program)

       写入操作是在控制极施加正电压,引发量子隧道效应,使电子能够从源极通过绝缘层进入浮栅层,此时读取状态为 1,实现写入操作。

       为了进行写入操作,需要对存储单元进行擦除操作,已清除存储单元中的数据。NAND Flash的写入操作是以页(Page)为单位进行的。

  • 读取(Read)

       进行读取操作的时候需要给本页控制极一个低的读取电压,通过判断源极和漏极间是否处于导通状态来读取闪存单元的状态,如果进行过写入操作,浮栅层内的电子会抵消读取电压,则读取状态为 0,而进行擦除操作后的浮栅层内不存在电子,则处于导通状态,所以读取状态为 1。

       与此同时,闪存块当中未被选取的闪存页的控制极都会施加一个正电压,以保证未被选中的 MOS 管是导通的。

  • 为什么进行写入操作之前要先擦除?

       因为当电子注入浮栅层上后,电荷就被固定无法再次吸入,而擦除操作是将浮栅层内电子吸出到衬底,令浮栅层可以再次吸入电子。进行过写入操作的浮栅层无法再次改变电子数目,而擦除后的浮栅层可以重新吸入电子,即闪存单元的存储状态只能由 1 变为 0,不能由 0 变为 1。而写入操作可能会出现这两种存储状态改变的情况,所以进行写入操作之前要先进行擦除操作,不能直接覆盖写。

  • 为什么擦除是以块为单位的?

       因为为了节约成本,块(Block)当中的所有存储单元是共用一个衬底的,所以进行擦除操作给衬底施加电压时,会影响整块 Block 中的所有存储单元实现擦除操作。

2.NAND Flash 基本结构

1)闪存芯片架构

       闪存芯片的存储组织从小到大依次为 Cell、Page、Block、Plane、Die、Chip。一个 Chip 由若干Die/LUN 封装在一起而成,这种封装是平排或者层叠的,Die 内部可以通过 3D 堆叠技术扩展容量,即 2D NAND 至 3D NAND。每个Die 有若干个 Plane,每个 Plane 有若干个 Block,每个 Block 有若干个 Page ,每个 Page 对应着一个 Wordline,但一个 Wordline 可能对应一个或者若干个 Page,每个 Wordline 是由成千上万个 Cell 组成的。

闪存内部组织结构

2D NAND 与 3D NAND 对比图

       Die/LUN 是接收和执行闪存命令的基本单元,不同的 LUN 可以同时接收和执行不同的命令,但在一个 LUN 当中,一次只能独立执行一个命令,不能对其中某个 Page 写的同时,又对其他 Page 进行读访问。Block 是执行擦除操作的最小单元,Wordline 是执行写操作的最小执行单元,Page 是执行读操作的最小基本单元。

     一个 LUN 又分为若干个 Plane,每个 Plane 都有自己独立的 Cache Register 和 Page Register,其大小等于一个 Page 的大小 ,目的是优化闪存的数据访问速度。固态硬盘主控在对 Page 写入数据的时候,会先将数据写入 Cache Register 中,最后把数据从 Cache Register 中全部写到闪存阵列;读操作的时候则是相反的,先把这个 Page 的数据从闪存介质读取到 Cache Register 中,最后再按需选择数据传输给主控。

Page 缓存的用法

       为什么需要 Cache Register 和 Page Register 两个缓存?主要是为了能够优化闪存的数据访问速度。当进行 Cache 读操作的时候

  • 5
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值