NAND Flash芯片是组成SSD的根基存储单位,NAND Flash芯片工艺的成长、布局的变革将会敦促整个闪存存储财富的高速成长。在计划闪存存储体系的时辰,出格是在计划NAND Flash节制器、SSD盘可能卡的时辰,都必要深入的相识NAND Flash的操纵要领、接口呼吁及那时序。一个NAND Flash芯片固然很是小,回收LGA可能TSOP的封装情势,可是,其内部布局还长短常伟大的。出格是跟着存储密度的不绝进步,NAND Flash内部抽象的观念也越来越多,譬喻Flash颗粒、Device、Die、Plane、Block和Page。颗粒就是我们凡是所看到的一个根基芯片封装颗粒;每个颗粒可以封装多个Device,每个Device可以当作是一个独立的Chip,拥有独立的节制、数据信号线;每个Device可以由多个Die组成,多个Die之间内部有独立的操纵寄存器、状态指示信号,对外的信号线是共享的;一个Die又可以分成多个Plane,每个Plane拥有独立的数据寄存器组,可以在必然环境下对多个Plane举办并发操纵;一个Plane可以分成多少个Block;每个Block又是一个独立的数据块擦除单位;一个Block最后又被分成许多个Page页,每个Page页是读写操纵的根基单位。
?
以镁光的Flash芯片为例,MT29F32G芯片由一个Die组成,个中包罗两个Plane;MT29F64G芯片由两个Die组成,而且这两个Die别离归属为两个Device,每个Die包罗两个Plane。MT29F32G和MT29F64G芯片的Die根基单位布局可以描写如下:
?

对付MT29F32G和MT29F64G芯片的地点信息可以界说如下表:

对付镁光的MT29F128G芯片而言,因为存储密度晋升了,以是整个芯片由两个Device组成,每个Device包罗两个Die,每个Die容纳了两个Plane。MT29F128G芯片内部的根基存储单位Device的布局描写如下:

MT29F128G的地点信息界说如下表:

在相识到NAND Flash的内部布局之后,我们必要思索从软件层面怎样操作好NAND Flash的内部布局,从而晋升整体的IO机能。
Plane单位拥有独立的数据寄存器,是否可以并发Plane操纵从而晋升IO机能呢?以MT29F128G芯片为例,每个Die可以被分成2个物理Plane。每个Plane包括一个4314字节的数据寄存器,一个4314字节的数据Cache寄存器,以及一个由4K页组成的Block Array。因为两个Plane的数据寄存器是物理上独立的,因此,这两个Plane可以同时执行Program、Read和Erase操纵,通过这种方法可以晋升NAND Flash的体系IO机能。两个Plane同时读数据的时序图如下所示:

从上面的时序图可以看出,两个Plane之间的并发操纵不是那么随意的。当必要从两个Plane同时读取数据的时辰,起首加载第一个Plane的地点信息,然后加载第二个Plane的地点信息,当两个地点信息都加载完毕之后,发出竣事呼吁30H。随后整个Die进入忙状态,R/B#信号置低。在Die处于忙状态时,无法对其举办任何操纵,在这个阶段,数据从NAND Flash介质中加载到两个Plane的寄存器中。当R/B#信号规复之后,可以读取两个Plane中的数据。值得留意的是,第二个Plane中的数据读取必要06H-E0H呼吁的支持。从这点上来看,因为两个Plane只是独立了数据寄存器,共享了操纵寄存器,以是,不能很好的做到很是随意的数据并发。
两个Plane的并发写操纵时序如下图所示:

和并发读操纵相同,两个Plane之间的并发写也不是随意的,必要同时做沟通的操纵。两个Plane的并发操纵必要同时提倡呼吁。对付写操纵,起首必要加载两个Plane的会见解点。第一个地点期的竣事符11H不会触发真正的编程操纵;第二个地点期的竣事符10H才会真正触发编程操纵。一旦编程操纵启动之后,状态信号R/B#就会置低,直到编程操纵完成,状态信号才气规复。
两个Plane的并发擦除操纵时序如下图所示:

和读写操纵的道理一样,两个Plane的并发擦除必要同时加载两个Plane的地点信息,然后靠山并发同时执行擦除操纵。和串行操纵对比,这种并发操纵可以晋升NAND Flash的整体机能。
以是,从上述的描写来看,固然两个Plane之间的数据寄存器是完全独立的,可是,操纵寄存器是共享的,可以让读写和擦除操纵在这两个Plane上并发执行。可是,这种并发操纵的前提是两个Plane必需同时举办沟通的操纵。而不是两个Plane可以随意、独立、并发执行差异的操纵。这就是两个Plane并发操纵的范围,可是纵然是这样,假如软件层可以或许计划好的算法,可以或许充实的让多个Plane并发执行,那么IO机能照旧可以大幅度的晋升。
在NAND Flash芯片中,一个真正的独立并发单位是Die。以MT29F128G为例,一个Device内部有两个Die,在芯片内部,这两个Die拥有独立的操纵寄存器、状态信号线,对外的节制、状态信号线是共享的。在这种环境下,芯片提供了一种Interleave的操纵方法,可以完全并发这两个Die的读写、擦除操纵。下图是两个Die的并发读时序图:

从上图可以看出,两个Die内部拥有独立R/B#信号线,对外的状态信号线是内部状态信号的“逻辑与”功效。两个Die的操纵可以独立、并发,只不外因为共享对外接口,因此在数据输出时还必要串行化。
Interleave的并发写时序如下图所示:

和并发读操纵相同,两个Die可以完全独立的并发执行写操纵。
在Device级别这种并发操纵显得越发随意。差异的Device拥有完全独立的对外接口,因此,两个Device可以同时执行独立的操纵。
综上而言,在NAND Flash芯片内部有3种并发执行单位,别离是Device、Die和Plane。个中Plane是数据寄存器独立,因此,多个Plane之间可以并发的执行沟通的操纵;Die拥有独立的操纵寄存器、独立的内部状态信号线,共享外部接口,因此,多个Die之间可以独立并发操纵;Device之间拥有独立的节制、数据信号线,因此,多个Device之间可以随意并发。操作好NAND Flash芯片内部的这些并发单位,可以很好的晋升闪存存储的IO机能。
(编辑:湖南网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|