掌桥专利:专业的专利平台
掌桥专利
首页

存储器控制器、存储器系统和存储器控制器的操作方法

文献发布时间:2024-04-18 20:02:18


存储器控制器、存储器系统和存储器控制器的操作方法

相关申请的交叉引用

本申请基于并要求于2022年10月6日在韩国知识产权局提交的韩国专利申请No.10-2022-0128086的优先权,该申请的公开以引用方式全文并入本文中。

技术领域

本申请涉及一种存储器控制器,并且更具体地,涉及一种具有改进的映射信息管理的存储器控制器、包括存储器控制器的存储器系统以及操作存储器控制器的方法。

背景技术

作为非易失性存储器,闪速存储器即使切断其供电也可保留存储的数据。作为包括闪速存储器的存储器系统,广泛使用诸如固态驱动(SSD)和存储卡的存储器系统(或储存装置),并且存储器系统对于存储或移动大量数据非常有用。

存储器系统通常可包括用于接收写数据和暂时存储接收的写数据的数据缓冲器(或者写缓冲器)。另外,存储器系统的数据写操作可比读操作具有更低的速度,并且在数据写处理期间需要管理用于确定暂时存储在数据缓冲器中的写数据的位置的信息。然而,随着存储器系统的容量增大,并且管理存储器操作(例如,诸如写数据和/或读数据的NAND操作)的处理性能需要最大化,数据记录处理中对信息的附加管理具有延迟高导致服务质量(QOS)低的问题。

发明内容

实施例提供了一种能够在存储器操作期间有效地管理信息以降低信息管理所需的资源并且确保存储在写缓冲器中的数据的一致性的存储器控制器、包括该存储器控制器的存储器系统以及操作该存储器控制器的方法。

本文提供了一种操作用于控制存储器装置的存储器控制器的方法,该方法包括:从主机接收写请求和写数据;在条目缓冲器中存储第一条目信息,其中第一条目信息包括指示写数据被暂时存储在写缓冲器中的第一位置的写缓冲器指针,并且第一条目信息包括对应于写请求的第一逻辑地址;将条目索引存储在逻辑至物理(L2P)映射信息储存电路中,其中条目索引被配置为在L2P映射信息储存电路的第一储存空间中寻址第一条目信息,并且其中条目索引取决于L2P映射信息储存电路中的第一逻辑地址;在第一物理地址处将写数据编程至存储器装置中;以及将存储在第一储存空间中的条目索引更新为对应于第一物理地址,其中第一物理地址映射至第一逻辑地址。

一种用于控制存储器装置的存储器控制器,该存储器控制器包括:主机接口,其被配置为与主机通信并且接收写请求、写数据和第一逻辑地址,其中第一逻辑地址对应于写数据;处理器,其被配置为响应于写请求控制存储器装置的编程操作;写缓冲器,其被配置为暂时存储写数据;条目缓冲器,其被配置为存储第一条目信息,第一条目信息包括写缓冲器指针,写缓冲器指针指示写数据被存储在写缓冲器中的第一位置;以及逻辑至物理(L2P)映射信息储存电路,其包括多个储存空间,其中,L2P映射信息储存电路被配置为在第一储存空间中存储指示第一条目信息被存储在条目缓冲器中的第二位置的条目索引,其中,第一储存空间对应于第一逻辑地址,其中,处理器还被配置为:在第一物理地址处将写数据编程至存储器装置中,并且将存储在第一储存空间中的条目索引更新为对应于第一物理地址,其中,第一物理地址映射至第一逻辑地址。

一种被配置为与主机通信的存储器系统,该存储器系统包括:存储器控制器,其被配置为从主机接收写请求和写数据以及响应于写请求控制存储器操作;易失性存储器,其被配置为存储来自主机的逻辑地址与物理地址之间的映射信息,物理地址指示写数据的物理储存位置;以及非易失性存储器装置,其包括多个单元块,每个单元块包括多个非易失性存储器单元,其中,存储器控制器被配置为:在写数据被编程至非易失性存储器装置中之前,在易失性存储器中存储识别写数据被暂时存储在存储器系统中的位置的第一信息,并且当写数据被编程至非易失性存储器装置中时,在易失性存储器中更新映射至逻辑地址的物理地址。

附图说明

从下面结合附图的详细描述中,将更清楚地理解实施例,在附

图中:

图1是示出根据示例实施例的存储器系统的框图;

图2是示出根据示例实施例的L2P信息更新器的实施示例的框图;

图3和图4是示出根据示例实施例的操作存储器系统的方法的流程图;

图5是示出根据示例实施例的存储器控制器的实施示例的框图;

图6是示意性地示出根据示例实施例的图1的存储器装置的结构的示图;

图7是以举例的方式示出图1的存储器单元阵列的示图;

图8是示出图7的单元块的结构的示例的透视图;

图9A和图9B是示出示例实施例中的L2P信息更新器的示例操作的框图;

图10是示出根据示例实施例的具体的信息储存示例的框图;

图11是示出根据示例实施例的L2P映射信息储存电路的信息储存示例的示图;

图12A、图12B、图12C和图12D是示出根据示例实施例的组件的各种实施示例的框图;

图13A和图13B是示出根据示例实施例的存储器控制器的DRAM控制操作的示例的示图;

图14A和图14B是示出条目信息中包括旧物理地址Old PPN的情况的示图;

图15是示出图14所示的存储器系统的操作的示例的流程图;以及

图16是示出将根据实施例的存储器系统应用于SSD系统的示例的框图。

具体实施方式

下文中,将参照附图详细描述实施例。

图1是示出根据示例实施例的存储器系统的框图。

参照图1,存储器系统10可包括存储器控制器100和存储器装置200,并且存储器装置200可包括存储器单元阵列210、电压生成器220和控制逻辑230。另外,控制逻辑230可执行关于存储器操作的各种内部控制操作,并且还可控制电压生成器220以生成各种电平的电压信号。

存储器系统10可通过各种接口与主机通信,并且作为示例,存储器系统10可利用诸如通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、快速PCI(PCI-E)、高级技术附件(ATA)、串行ATA、并行ATA、小型计算机小接口(SCSI)、增强型小型盘接口(ESDI)、集成驱动电子器件(IDE)、火线、通用闪存(UFS)和快速非易失性存储器(NVMe)的接口与主机通信。

根据示例实施例,存储器装置200可包括诸如闪速存储器的非易失性存储器装置。在一些实施例中,存储器系统10可在电子装置中实施为嵌入式或可移除存储器,例如,存储器系统10可按照诸如嵌入式通用闪存(UFS)存储器装置、嵌入式多媒体卡(eMMC)、固态驱动(SSD)、UFS存储卡、紧凑闪存(CF)存储卡、安全数位(SD)存储卡、微安全数位(Micro-SD)存储卡、迷你安全数位(Mini-SD)存储卡、极限数字(xD)存储卡或者记忆棒的各种形式实施。另外,存储器系统10可由于存储器系统10非易失性地存储数据而被称作储存装置。通过将数据编程至存储器中来非易失性地存储数据,从而在切断存储器的供电之后保留数据。

响应于各种请求Req,诸如写数据和从主机读数据,存储器控制器100可控制存储器装置200,以读取存储在存储器装置200中的数据,或者将数据写(或编程)至存储器装置200。作为示例,存储器控制器100包括处理器110,并且处理器110可控制存储器控制器100的整体内部操作,并且还可控制存储器装置200的存储器操作。具体地,存储器控制器100可通过将地址ADD、命令CMD和控制信号CTRL提供至存储器装置200来控制存储器装置200的写操作、读操作和擦除操作。另外,将被存储在存储器装置200中的数据DATA和从存储器装置200读取的数据DATA可在存储器控制器100与存储器装置200之间发送和接收。在各个实施例中,发送或从主机接收以指示写或读数据的信息可被称作请求或者命令。

存储器单元阵列210可包括多个单元块CB,单元块CB中的每一个可包括闪速存储器单元。下文中,作为示例,以单元块CB包括NAND闪速存储器单元的情况为考虑详细描述实施例。然而,在一些实施例中,多个存储器单元可以是电阻式存储器单元,诸如电阻式RAM(ReRAM)、相变RAM(PRAM)或磁性RAM(MRAM)。

在一个实施例中,存储器单元阵列210可包括三维存储器单元阵列,三维存储器单元阵列可包括多个NAND串,并且每个NAND串可包括分别连接至竖直地堆叠在衬底上的字线的存储器单元。然而,在一些实施例中,存储器单元阵列210可包括二维存储器单元阵列,并且二维存储器单元阵列可包括在行向和列向上布置的多个NAND串。

控制逻辑230可控制存储器装置200的整体操作,并且作为示例,基于从存储器控制器100接收的命令CMD、地址ADD和控制信号CTRL,控制逻辑230可执行用于将数据编程至存储器单元阵列210中或从存储器单元阵列210中读数据的各种内部控制操作。另外,控制逻辑230可输出用于关于编程操作、读操作和擦除调整从电压生成器220输出的各种电压的电平的电压控制信号(未示出)。

同时,存储器控制器100可包括逻辑至物理(L2P)信息更新器120,其管理来自主机的逻辑地址与表示数据的物理储存位置的物理地址之间的映射信息。L2P信息更新器120可通过存储器控制器100中的硬件电路或者通过处理器110执行的软件来实施。另外,存储器控制器100还可包括暂时存储与写请求一起从主机接收的数据(例如,写数据)的写缓冲器130,另外,还可包括存储指示数据存储在写缓冲器130中的位置的信息的条目缓冲器140。另外,存储器控制器100还可包括其中通过L2P信息更新器120管理更新操作并且存储上述逻辑地址与物理地址之间的映射信息的逻辑至物理(L2P)映射信息储存电路150。L2P映射信息储存电路150可被称作L2P映射表,或者就存储逻辑地址与物理地址之间的映射信息而言可被定义为存储L2P映射表。在一些实施例中,在NVM中实施L2P映射信息储存电路150,以在断电之后保留数据。

在实施例中,在将数据写至存储器装置200的过程中生成和管理的信息可定义为各种术语。作为示例,表示数据存储在写缓冲器130中的位置的信息可被称作地址、指针等,在实施例中,该信息被称作写缓冲器指针。另外,存储在条目缓冲器140中的信息可被称作条目信息,并且条目信息还可包括诸如逻辑地址的一条或多条信息以及写缓冲器指针。

另外,表示条目信息存储在条目缓冲器140中的位置的信息可被称作条目索引,条目索引可具有关于条目缓冲器140的物理储存位置的值。例如,条目缓冲器140的多个储存空间的物理地址可对应于条目索引。可替换地,在示例实施例中,条目索引可具有基于条目信息计算的值,作为示例,可通过对条目信息的哈希操作来计算条目索引。可替换地,可通过基于条目信息的各种操作来计算条目索引,并且可通过参照条目索引来确定条目信息存储在条目缓冲器140中的位置。

同时,从主机提供的逻辑地址可被称作逻辑页地址LPA、逻辑页编号LPN等,物理地址可被称作物理页地址PPA、物理页编号PPN等术语,并且在以下实施例中,为方便描述,使用逻辑地址LPN和物理地址PPN的术语作为L2P映射信息。

存储器控制器100可从主机接收多个写请求,并且关于存储在写缓冲器130中的多条写数据的多条条目信息可被存储在条目缓冲器140中。每条条目信息还可包括至少一条信息以及指示写数据在写缓冲器130中的储存位置的写缓冲器指针。以存储在写缓冲器130中的第一写数据作为示例,在对应于第一写数据的第一条目信息中,可包括指示第一写数据在写缓冲器130中的储存位置的第一写缓冲器指针。另外,可包括与第一写数据一起从主机接收的第一逻辑地址和先前映射至第一逻辑地址LPN的物理地址(例如,旧物理地址)中的至少一个。

详细操作示例如下。在以下实施例中,为方便描述,写数据还可被称作数据。

在示例实施例中,在对从主机接收的第一数据执行存储器操作(例如,用于将第一数据物理地编程至单元块CB中的NAND操作)之前,主机可请求读取第一数据。在这种情况下,需要将暂时存储在写缓冲器130中的第一数据而非在单元块CB中编程的数据提供至主机。在示例实施例中,通过有效地执行信息处理或者数据结构管理以减少处理来自主机的读请求所需的时间以及减少数据结构管理所需的资源,可确保数据一致性。

作为操作性示例,L2P信息更新器120可包括条目索引更新器121和物理地址PPN更新器122。条目索引更新器121和物理地址更新器122各自可在硬件电路中实施,或者可通过由处理器110执行的软件实施。条目索引更新器121和物理地址更新器122各自可管理用于L2P映射信息储存电路150的更新操作。可通过条目索引来确定多条条目信息存储在条目缓冲器140中的位置。也就是说,条目索引是到达条目缓冲器140的索引。条目索引更新器121可在L2P映射信息储存电路150的对应于第一逻辑地址LPN的储存空间中存储指示第一条目信息存储在条目缓冲器140中的位置的第一条目索引。也见图14B。因此,L2P映射信息储存电路150的对应于第一逻辑地址LPN的储存空间的信息可被更新为第一条目索引而非与先前映射至第一逻辑地址LPN的旧物理地址关联。

另外,物理地址更新器122可将关于物理地址PPN的信息更新至L2P映射信息储存电路150。例如,物理地址更新器122可管理逻辑地址LPN与物理地址PPN之间的映射信息。第一物理地址PPN可新映射至对应于第一逻辑地址LPN,并且在第一数据被物理编程至存储器装置200或存储器单元阵列210中之后,物理地址更新器122可用指示第一数据在存储器单元阵列210中的储存位置的第一物理地址PPN更新L2P映射信息储存电路150。这将覆写先前与通过第一条目索引标识的LPN关联的旧PPN。见图15的操作S32。

根据来自主机的记录请求和第一数据,存储器控制器100可将第一数据存储在写缓冲器130中,并且生成对应于第一数据的第一条目信息,并且可生成指示第一条目信息在条目缓冲器140中的储存位置的第一条目索引。

在一些实施例中,以下信息因此存储在存储器控制器100中:来自主机的、待写至存储器装置200的单元块的数据在写缓冲器130中;主机使用的逻辑地址到单元块中的物理地址的映射在L2P映射表中;以及来自主机的数据在写缓冲器130中的位置在条目缓冲器140的内容中。条目缓冲器140的内容通过条目索引进行索引。暂时驻留在写缓冲器130中的来自主机的特定数据的条目索引的值是L2P映射表中的条目之一。一些实施例在非易失性存储器中存储L2P映射表和条目缓冲器140,以及在非易失性存储器中实施写缓冲器130。简化了用于对单元块进行写所需的操作,并且稳健应对突然断电。

第一条目信息和第一条目索引的生成可由基于在存储器控制器100中实施的硬件电路的硬件来生成,或者可在处理器110的控制下基于软件的执行来执行。另外,第一条目信息和第一条目索引可基于存储器控制器100中的硬件和软件的组合来生成。

在第一数据被编程至实际存储器单元阵列210中之前,对应于第一条目信息的生成的第一条目索引可提供至条目索引更新器121。另外,随着第一数据被编程至实际存储器单元阵列210中,新映射至第一逻辑地址LPN的第一物理地址PPN可提供至物理地址更新器122。

根据上述L2P信息更新器120的管理操作,存储在L2P映射信息储存电路150中的各种信息中的一些可对应于指示数据实际上被物理存储的位置的物理地址PPN,但是一些其它类型可包括通过条目索引更新器121更新的条目索引。存储器控制器100可确定对应的信息对应于物理地址PPN还是基于从L2P映射信息储存电路150读取的信息的条目索引。

在示例中,在第一数据被实际编程至存储器单元阵列210中之前,从主机接收第一数据的读请求。存储器控制器100可使用与来自主机的读请求一起提供的第一逻辑地址LPN,以读取存储在L2P映射信息储存电路150中的对应于第一逻辑地址LPN的储存空间中的第一条目索引。存储器控制器100可基于读取的第一条目索引确定对应于第一数据的第一条目信息存储在条目缓冲器140中的位置,因此,可从条目缓冲器140读取第一条目信息。

另外,从条目缓冲器140读取的第一条目信息可包括指示第一数据存储在写缓冲器130中的位置的写缓冲器指针,并且存储器控制器100可利用写缓冲器指针读取存储在写缓冲器130中的第一数据,并且将读取的第一数据提供至主机。

然后,当完成将第一数据编程至实际的存储器单元阵列210中的NAND操作时,物理地址更新器122可将L2P映射信息储存电路150的对应于第一逻辑地址的储存空间中的信息更新至新映射至第一逻辑地址LPN的第一物理地址PPN。因此,如果在NAND操作完成之后从主机请求读取第一数据,则可从L2P映射信息储存电路150读取第一物理地址PPN,并且可通过读取第一物理地址PPN从存储器单元阵列210读取第一数据。

根据上述示例实施例,由于可在写数据和读数据的处理中管理的各种信息(例如,条目索引)可不存储在分离的储存电路中而是可存储在现有L2P映射信息储存电路150中,则可防止用于信息管理的资源增加。另外,仅基于存储在L2P映射信息储存电路150中的信息,由于可确定请求要读取的数据是否暂时存储在写缓冲器130中(命中/未命中),因此可减少确定是否将数据存储在写缓冲器130中所需的时间。另外,由于可在执行针对数据的NAND操作时(或在NAND操作完成之后)执行更新L2P映射信息储存电路150中的物理地址PPN的操作,因此可确保数据的一致性。

图2是示出根据示例实施例的L2P信息更新器的实施示例的框图。

参照图1和图2,条目索引更新器121可包括第一命令解析器121_1、条目索引接收器121_2和第一更新器121_3。另外,物理地址更新器122可包括第二命令解析器122_1、物理地址接收器122_2和第二更新器122_3。另外,条目索引更新器121和物理地址更新器122可分别管理针对L2P映射信息储存电路150的更新操作,作为示例,条目索引更新器121可更新L2P映射信息储存电路150中的条目索引,并且物理地址更新器122可更新L2P映射信息储存电路150中的物理地址PPN。

第一命令解析器121_1和第二命令解析器122_1中的每一个可基于用于由主机或存储器系统10生成的各种命令的解析操作确定命令类型。作为示例,第一命令解析器121_1可基于命令解析操作确定写请求的接收或者写数据在写缓冲器130中的储存,并且将确定结果提供至第一更新器121_3。随着根据来自主机的写请求的写数据被暂时存储在写缓冲器130中,第一更新器121_3可在L2P映射信息储存电路150中存储对应于写数据而生成的条目索引。

同时,第二命令解析器122_1可基于用于命令的解析操作确定来自主机的请求要被写的数据是否已被编程至存储器装置200中,或者是否从存储器装置200接收到指示编程已完成的响应。另外,物理地址接收器122_2可从主机接收新映射至逻辑地址LPN的物理地址PPN,并且将接收的物理地址PPN提供至第二更新器122_3。随着请求要被写的数据被编程至存储器装置200中,第二更新器122_3可更新对应于来自主机的逻辑地址LPN的储存空间中的物理地址PPN。

L2P映射信息储存电路150可存储条目索引和对应于多个逻辑地址LPN的物理地址PPN。在示例实施例中,当条目索引存储在L2P映射信息储存电路150的储存空间中时,对应于条目索引的数据还未被编程至存储器单元阵列中而是可被存储在存储器控制器100中的写缓冲器130中。另一方面,当物理地址PPN存储在L2P映射信息储存电路150的储存空间中时,对应于物理地址PPN的数据可处于在存储器装置200中已经完成编程的状态。

图3和图4是示出根据示例实施例的操作存储器系统的方法的流程图。

参照图1至图3,在S11中,存储器系统10可从主机接收写请求和写数据(或者用户数据),并且在S12中,接收的写数据可被复制至设置在存储器系统10中的存储器控制器100中的写缓冲器130。另外,在S13中,可配置包括指示写数据被复制在写缓冲器130中的位置的写缓冲器指针和来自主机的写请求中包括的(或与写请求一起提供的)逻辑地址LPN的条目信息。

在S14中,具有如上所述创建的条目数据结构的条目信息可被存储在条目缓冲器140中。另外,在S15中,可创建指示条目信息存储在条目缓冲器140中的位置的条目索引,并且生成的条目索引和来自主机的逻辑地址LPN可发送至条目索引更新器121。另外,在S16中,随着来自主机的写数据被存储在写缓冲器中,条目索引更新器121可更新L2P映射信息储存电路150的对应于逻辑地址LPN的储存空间中的条目索引。

同时,参照图1至图4,在S21中,存储器系统10可从主机接收读请求和逻辑地址LPN。由于存储器装置200中的编程未完成,因此请求要读取的数据可暂时存储在存储器控制器100中的写缓冲器130中,或者随着存储器装置200的编程完成,请求要读取的数据可存储在存储器装置200的单元块CB中。

在S22中,存储器系统10中的存储器控制器100可基于从主机提供的逻辑地址LPN从L2P映射信息储存电路150中的对应于逻辑地址LPN的储存空间读取信息。另外,在S23中,可确定读取的信息是否是条目索引,且如果读取的信息对应于条目索引,则可利用条目缓冲器140中的由条目索引指示的位置处读取的条目信息检查条目信息中包括的写缓冲器指针。另外,在S24中,从写缓冲器中的由写缓冲器指针指示的位置读取的数据可被提供至主机作为读数据。另一方面,在S25中,当读取的信息对应于物理地址PPN时,存储器控制器100可通过将物理地址PPN提供至存储器装置200来接收从对应于物理地址PPN的位置读取的数据,并且将从存储器装置200读取的数据提供至主机作为读取的数据。

图5是示出根据实施例的存储器装置的实施示例的框图。

参照图5,存储器控制器300可包括主机接口(I/F)310、处理器320、工作存储器330、写缓冲器340、条目缓冲器350、存储器接口360和L2P映射信息储存电路370。图5示出了写缓冲器340、条目缓冲器350和L2P映射信息储存电路370设置在工作存储器330外部,但是在各个实施例中,写缓冲器340、条目缓冲器350和L2P映射信息储存电路370的至少一部分可被包括在工作存储器330中,或者可包括一部分工作存储器330。可替换地,存储器控制器300可与外部易失性存储器(例如,高速缓冲存储器、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)等)通信,以控制针对外部易失性存储器的数据存取操作,并且写缓冲器340、条目缓冲器350和L2P映射信息储存电路370的至少一部分可被包括在外部易失性存储器中。在这种情况下,外部易失性存储器中包括的组件可限定为不被包括在存储器控制器300中。

处理器320可通过执行加载至工作存储器330的固件或程序控制存储器控制器300的整体操作。工作存储器330可通过各种类型的存储器实施,并且可通过例如高速缓冲存储器、DRAM、SRAM和电阻式存储器中的至少一个来实施。另外,作为固件的示例,当存储器控制器300控制闪速存储器装置时,闪存转换层FTL可加载至工作存储器330中,并且可通过执行闪存转换层FTL的处理器320来执行关于闪速存储器操作的各种功能。

根据上述实施例,主机接口310可通过各种类型的接口与主机通信。另外,存储器接口360在存储器控制器300与存储器装置(例如,非易失性存储器装置NVM)之间提供物理连接。例如,命令/地址和数据可通过存储器接口360在存储器控制器300与非易失性存储器装置NVM之间被发送和接收。

来自主机的请求将被写的数据和从非易失性存储器装置NVM读取的数据可暂时存储在写缓冲器340中。另外,根据上述实施例,对应于存储在写缓冲器340中的一条或多条数据的条目信息可存储在条目缓冲器350中,多条条目信息中的每一条可包括指示关于对应的数据在写缓冲器340中的储存位置的写缓冲器指针,还可包括对应于数据的逻辑地址和旧物理地址中的至少一个。另外,L2P映射信息储存电路370可存储映射至多个逻辑地址的物理地址,根据示例实施例,对于一些逻辑地址,除物理地址之外的条目索引可存储在L2P映射信息储存电路370中。另外,如果条目信息包括旧物理地址,则即使随着在L2P映射信息储存电路370中更新条目索引而删除先前存储的旧物理地址,也可通过对应于条目索引的条目信息识别先前映射至逻辑地址的旧物理地址。

在示例实施例中,指示关于逻辑地址存储的信息对应于条目索引还是物理地址的标识符还可存储在L2P映射信息储存电路370中。另外,在上述实施例中,例示了L2P映射信息储存电路370中的储存空间的位置对应于上述逻辑地址并且指示映射至逻辑地址的物理地址的信息存储在储存空间中的情况,但是实施例不一定限于此。作为示例,为了指示逻辑地址的信息和指示映射至逻辑地址的物理地址的信息(或条目索引)一起存储在L2P映射信息储存电路370的各储存空间中,可实施L2P映射信息储存电路370。

在示例实施例中,闪存转换层FTL可包括以软件实施的L2P信息更新器331和地址(ADD)转换器332。L2P信息更新器331可包括根据上述实施例的条目索引更新器和物理地址更新器根据。当通过主机接口310接收写请求、逻辑地址和与其对应的数据时,接收的数据可存储在写缓冲器340中,并且包括指示数据在写缓冲器340中的储存位置的写缓冲器指针的条目信息可存储在条目缓冲器350中。另外,条目索引更新器可将对应于生成的条目信息(或者,能够确定生成的条目信息)的条目索引存储在L2P映射信息储存电路370的对应于逻辑地址的储存空间中。另外,当存储在写缓冲器340中的数据通过NAND操作被编程至非易失性存储器装置NVM中时,物理地址更新器可用新映射至逻辑地址的物理地址更新L2P映射信息储存电路370。

在以上实施例中,例示了以软件实施L2P信息更新器331的功能的情况,但是实施例不一定限于此,并且由L2P信息更新器331执行的至少一些功能可实施为硬件电路。

图6是示意性地示出根据实施例的图1的存储器装置的结构的示图,图7是示例性地示出图1的存储器单元阵列的示图,图8是示出图7的单元块的结构的示例的透视图。在图6中,例示了外围上单元(COP)结构,作为实施存储器装置的示例,但是实施例可通过各种结构实施为存储器装置,而不限于此。

参照图6,存储器装置200可包括第一半导体层L1和第二半导体层L2,并且第一半导体层L1可在垂直于第二半导体层L2的方向VD上堆叠。具体地,第二半导体层L2可在竖直方向VD上设置在第一半导体层L1下方,因此,第二半导体层L2可设为靠近衬底。

在一个实施例中,图1的存储器单元阵列210可形成在第一半导体层L1上,并且图1的其它外围电路可形成在第二半导体层L2上。因此,存储器装置200可具有存储器单元阵列210设置在外围电路的顶部上的结构,也就是说,COP结构。COP结构可有效地减小在水平方向上的面积,并且提高存储器装置200的集成度。

在一个实施例中,第二半导体层L2可包括衬底,并且外围电路可通过在衬底上形成晶体管和用于将晶体管引线连接的金属图案被形成在第二半导体层L2上。在外围电路形成在第二半导体层L2上之后,可形成包括存储器单元阵列210的第一半导体层L1,并且金属图案可形成为将存储器单元阵列210的字线WL和位线BL与形成在第二半导体层L2上的外围电路电连接。例如,位线BL可在第一水平方向HD1上延伸,并且字线WL可在第二水平方向HD2上延伸。

同时,参照图7,存储器单元阵列可包括多个单元块BLK0至BLKi,并且i可为正整数。多个单元块BLK0至BLKi中的每一个可具有3D结构(或竖直结构)。具体地,多个单元块BLK0至BLKi中的每一个可包括在竖直方向VD上延伸的多个NAND串。在这种情况下,多个NAND串可设为在第一水平方向HD1和第二水平方向HD2上以特定距离间隔开。多个单元块BLK0至BLKi可通过存储器装置200的行解码器(未示出)选择。例如,行解码器可多个单元块BLK0至BLKi中的选择对应于块地址的单元块。

同时,参照图8,单元块BLK0在垂直于衬底SUB的方向上形成。衬底SUB具有第一导电类型(例如,p型),并且提供掺杂第二导电类型(例如,n型)的杂质的公共源极线CSL,公共源极线CSL在衬底SUB上在第二水平方向HD2上延伸。在两条邻近的公共源极线CSL之间的衬底SUB的区上,在第二水平方向HD2上延伸的多个绝缘膜IL顺序地设置在竖直方向VD上,并且多个绝缘膜IL在竖直方向VD上彼此间隔开特定距离。例如,多个绝缘膜IL可包括诸如氧化硅的绝缘材料。

在两条邻近的公共源极线CSL之间的衬底SUB的区上,提供了在第一水平方向HD1上顺序地设置并且在竖直方向VD上穿过多个绝缘膜IL的多个柱P。例如,多个柱P可穿过多个绝缘膜IL以接触衬底SUB。具体地,每个柱P的表面层S可包括第一类型的硅材料并且用作沟道区。同时,每个柱P的内层I可包括绝缘材料,诸如氧化硅或空气间隙。

在两条邻近的公共源极线CSL之间的区中,沿着绝缘膜IL、柱P和衬底SUB的暴露的表面设置电荷存储层CS。电荷存储层CS可包括栅极绝缘层(还称作‘隧穿绝缘层’)、电荷捕获层和阻挡绝缘层。例如,电荷存储层CS可具有氧化物-氮化物-氧化物(ONO)结构。另外,在两条邻近的公共源极线CSL之间的区中,栅电极GE(诸如选择线GSL和SSL以及字线WL0至WL7)设置在电荷存储层CS的暴露的表面上。

漏极或漏极接触件DR分别设置在多个柱P上。例如,漏极或漏极接触件DR可包括掺杂具有第二导电类型的杂质的硅材料。在第一水平方向HD1上延伸并且在第二水平方向HD2上彼此间隔开特定距离的位线BL1至BL3设置在漏极DR上。

图9A和图9B是示出示例实施例中的L2P信息更新器的示例操作的框图。

参照图9A,存储器系统400可包括存储器控制器和存储器装置420,并且存储器控制器可包括写缓冲器411、条目缓冲器412、L2P映射信息储存电路413、条目索引更新器414和物理地址更新器415。

根据来自主机的写请求,存储器系统400可从主机接收写数据和与写数据对应的逻辑地址LPN,并且写数据可暂时存储在写缓冲器411中。另外,基于存储器控制器中的控制操作(例如,处理器的程序执行操作),可生成对应于写数据的第一条目信息“条目信息#1”,并且第一条目信息“条目信息#1”可存储在条目缓冲器412中。在示例实施例中,第一条目信息“条目信息#1”可包括写缓冲器指针和逻辑地址LPN。

另外,可生成包括用于确定第一条目信息“条目信息#1”或检查第一条目信息“条目信息#1”的储存位置的信息的条目索引,并且将其提供至条目索引更新器414,并且随着写数据被存储在写缓冲器411中,条目索引更新器414可在L2P映射信息储存电路413中的对应于逻辑地址LPN的储存空间中存储条目索引。

同时,如图9B所示,暂时存储在写缓冲器411中的数据可被编程至存储器装置420中,并且指示数据被编程在存储器装置420中的物理位置的物理地址PPN可提供至物理地址更新器415。随着写数据被编程至存储器装置420中,物理地址更新器415可将存储在L2P映射信息储存电路413中的对应于逻辑地址LPN的储存空间中的条目索引更新为新映射的物理地址PPN。

在示例实施例中,物理地址更新器415可基于存储器系统400中使用的各种类型的命令确定物理地址PPN的更新时序,作为示例,可基于指示数据的编程的编程命令CMD_P确定物理地址PPN的更新时序。可替换地,在示例实施例中,随着存储器装置420将指示编程操作已完成的完成响应(未示出)提供至存储器控制器,物理地址更新器415可基于完成响应确定物理地址PPN的更新时序。另外,随着数据编程完成,存储在写缓冲器411中的写数据和存储在条目缓冲器412中的第一条目信息“条目信息#1”可被释放。

除上述实施例之外,条目索引的更新时序和物理地址PPN的更新时序可按照各种方式被确定。例如,存储器系统400可基于各种外部命令或内部命令(诸如接收写请求、将请求响应发送至主机、生成条目信息和/或条目索引、以及在条目缓冲器412中存储条目信息)确定条目索引的更新时序。另外,存储器系统400可基于关于用于数据写的NAND操作的各种类型的命令或者根据各种方法(诸如选择映射新物理地址PPN的时序)确定物理地址PPN的更新时序。

图10是示出根据示例实施例的具体的信息储存示例的框图。根据上述实施例,存储器系统500可包括写缓冲器511、条目缓冲器512、L2P映射信息储存电路513、条目索引更新器514、物理地址更新器515和存储器装置520。

参照图10,可与写请求一起从主机接收写数据Data_0和值为“1”的逻辑地址LPN,并且写数据Data_0可暂时存储在写缓冲器511中的由写缓冲器指针“2”指示的位置中,并且可生成包括从主机提供的值为“1”的逻辑地址LPN和值为“2”的写缓冲器指针的第一条目信息。另外,第一条目信息可存储在条目缓冲器512中的条目索引“0”指示的位置处,并且可将条目索引提供至条目索引更新器514。

随着写数据Data_0可存储在写缓冲器511中,条目索引更新器514可在L2P映射信息储存电路513中存储条目索引,作为示例,L2P映射信息储存电路513可在对应于值为“1”的逻辑地址LPN的储存空间中存储值为“0”的条目索引。另外,在示例实施例中,L2P映射信息储存电路513还可存储用于区分条目索引和物理地址PPN的标识符,并且作为示例,可存储具有对应于条目索引和物理地址PPN的不同值的标志信息Flag。例如,条目索引可存储在标志信息Flag值为“0”的储存空间中,而物理地址PPN可存储在标志信息Flag值为“1”的储存空间中。

存储器控制器或存储器系统500可基于存储在L2P映射信息储存电路513中的信息确定写数据编程是否完成。作为示例,当可从L2P映射信息储存电路513读取标志信息Flag并且标志信息Flag的值为“1”时,存储在对应于存储器装置520的物理地址PPN的位置的数据可为有效数据。另一方面,当标志信息Flag的值为“0”时,可基于可通过条目索引参照的条目信息确定暂时存储在写缓冲器511中的写数据,并且可执行将暂时存储在写缓冲器511中的写数据编程至存储器装置520中的操作。

同时,在示例实施例中,存储器系统500还可包括条目转储管理器516。条目转储管理器516可确定写数据存储在写缓冲器511中或者条目信息存储在条目缓冲器512中的情况,并且控制用于响应于诸如突然断电的异常状态将各种类型的信息转储(或备份)至存储器装置520的操作。例如,条目转储管理器516可管理上面实施例描述的写数据、条目信息和映射信息中的至少一些的转储操作。

图11是示出根据示例实施例的L2P映射信息储存电路的信息储存示例的示图。

参照图11,L2P映射信息储存电路包括对应于多个逻辑地址LPN的储存空间,并且物理地址PPN或者条目索引可存储在每个储存空间中。能够确定物理地址PPN和条目索引的信息可存储在L2P映射信息储存电路中,作为示例,例示了分离的标志信息未存储在L2P映射信息储存电路中并且根据条目索引或物理地址PPN中包括的至少一个比特的特定模式确定条目索引的情况。

在图11所示的示例中,例示了条目模式加至条目索引的情况,并且示例实施例中的上述条目索引可限定为包括几个比特的条目索引和几个比特的条目模式。作为示例,几个比特的条目模式可包括特定模式,当在L2P映射信息储存电路的储存空间中检测到上述特定模式时,可确定条目索引存储在对应的储存空间中。

虽然图11未示出,但是根据示例实施例,可通过物理地址PPN中包括的至少一个比特确定物理地址PPN和条目索引。例如,未使用区域可存在于物理地址PPN的比特范围中,并且包括根据预定接口限定的至少一个比特的特定模式可被包括在未使用区域中。例如,当在L2P映射信息储存电路的储存空间中检测到物理地址PPN中包括的特定模式时,可确定物理地址PPN存储在对应的储存空间中。另一方面,当在L2P映射信息储存电路的储存空间中未检测到对应于物理地址PPN中包括的特定模式的模式时,可确定条目索引存储在对应的储存空间中。

图12A、图12B、图12C和图12D是示出根据示例实施例的组件的各种实施示例的框图。

在根据实施例的存储器系统中,写缓冲器、条目缓冲器和L2P映射信息储存电路可通过各种类型的易失性存储器实施,另外,写缓冲器、条目缓冲器和L2P映射信息储存电路可被包括在存储器控制器中的易失性存储器中。可替换地,在示例实施例中,存储器系统可包括存储器控制器和非易失性存储器装置,还可包括暂时存储关于存储器操作的信息的易失性存储器,并且写缓冲器、条目缓冲器和L2P映射信息储存电路中的至少一些可被包括在存储器控制器以外的易失性存储器中。

另一方面,实施例不一定限于以上结构,写缓冲器、条目缓冲器和L2P映射信息储存电路中的至少一个可被包括在存储器控制器中的非易失性存储器(例如,电阻式存储器)中,或者可被包括在存储器控制器以外的非易失性存储器中。

在示例实施例中,图12A、图12B、图12C和图12D所示的SRAM和DRAM中的每一个可被包括在存储器控制器中或者设置在存储器控制器外部。在以下实施例中,假设SRAM设置在存储器控制器内部,并且DRAM设置在存储器控制器外部。

参照图12A,写缓冲器和条目缓冲器可通过SRAM实施,并且用于存储L2P映射信息的电路可通过DRAM实施。在示例实施例中,写缓冲器和条目缓冲器可被包括在存储器控制器中,并且L2P映射信息储存电路可被包括在存储器控制器以外的DRAM中。当写数据基于内部控制操作暂时存储在写缓冲器中时,存储器控制器可生成对应于写数据的条目信息并且在条目缓冲器中存储生成的条目信息。另外,随着条目信息被存储在条目缓冲器中,存储器控制器可通过与外部DRAM的通信在L2P映射信息储存电路的对应于逻辑地址LPN的储存空间中存储条目索引。另外,根据上述实施例,随着写数据被编程至存储器装置中,存储器控制器可通过与外部的DRAM通信更新L2P映射信息储存电路的对应于逻辑地址LPN的储存空间中的物理地址PPN。

同时,参照图12B,写缓冲器可通过SRAM实施,条目缓冲器和用于存储L2P映射信息的电路可通过DRAM实施。存储器控制器可基于内部控制操作在写缓冲器中暂时存储写数据,并且还可通过与外部DRAM的通信在条目缓冲器中存储条目信息。另外,存储器控制器可通过与外部DRAM的通信在L2P映射信息储存电路的对应于逻辑地址LPN的储存空间中存储对应于条目信息的条目索引,之后,随着写数据的编程完成,存储器控制器可在对应于逻辑地址LPN的储存空间中更新物理地址PPN。

同时,参照图12C,条目缓冲器可通过SRAM实施,写缓冲器和用于存储L2P映射信息的电路可通过DRAM实施。存储器控制器可通过与外部DRAM的通信在写缓冲器中暂时存储写数据,另外,在L2P映射信息储存电路的对应于逻辑地址LPN的储存空间中存储对应于写数据生成的条目索引。另外,存储器控制器可在存储器控制器内部的条目缓冲器中存储对应于写数据生成的条目信息。

同时,参照图12D,写缓冲器、条目缓冲器和用于存储L2P映射信息的电路可实施为DRAM。存储器控制器可通过与外部DRAM的通信在外部DRAM中暂时存储关于数据写操作的各种类型的信息。例如,存储器控制器可将写数据暂时存储在外部DRAM中包括的写缓冲器中,并且将关于写数据生成的条目信息和条目索引存储在外部DRAM中。另外,随着写数据被编程至存储器装置中,存储器控制器可将存储在L2P映射信息储存电路中的条目索引更新至物理地址PPN。

图13A和图13B是示出根据示例实施例的存储器控制器的DRAM控制操作的示例的示图。

如参照图13A公开的,在上述实施例中,存储器系统600可包括与存储器控制器610一起设置在存储器控制器610内部或外部的DRAM 620。另外,虽然图13A未示出,但是存储器系统600还可包括根据上述实施例的非易失性存储器装置。

存储器控制器610可包括用于控制RAM 611和DRAM 620的存取操作的DRAM控制逻辑(或者DRAM控制器612)。RAM 611可存储上述实施例中提及的各种类型的信息中的至少一些,并且作为示例,可存储条目信息和写数据。另外,存储器控制器610可根据依据上述实施例的操作生成条目索引,并且还可将新物理地址PPN映射至逻辑地址LPN。

DRAM控制器612可提供用于存储和读取信息的命令/地址CMD/ADD,并且从DRAM控制器612提供的信息可被存储在DRAM 620的DRAM单元621中。在示例实施例中,L2P映射表可被存储在DRAM 620中,根据上述实施例,条目索引可被存储在L2P映射表的多个储存空间中的一些中,另外,物理地址PPN可被存储在储存空间的另一部分中。另外,当完成信息写操作时,DRAM 620可将完成响应ACK提供至DRAM控制器612。

图13B示出了关于DRAM存取操作的时序图。例如,DRAM控制器612可响应于写数据被存储在写缓冲器中而提供命令CMD_R和用于在DRAM 620中存储条目索引的地址ADD。地址ADD可对应于指示L2P映射表的储存空间的逻辑地址LPN。

如图13B所示,可响应于来自主机的数据写请求对DRAM 620执行至少两次DRAM存取操作。例如,可执行用于在L2P映射表中存储条目索引的DRAM存取操作和用于在L2P映射表中更新物理地址PPN的DRAM存取操作。

图14A和图14B示出了在条目信息中包括旧物理地址Old PPN的情况。存储器系统700可包括存储器控制器710和非易失性存储器装置(或NVM)720,并且非易失性存储器装置720可包括元区和用户区。

存储器控制器710可在非易失性存储器装置720的元区中备份各条信息,以准备应对突然断电情况。存储器控制器710可将用于备份操作的命令/地址CMD/ADD提供至非易失性存储器装置720,并且备份信息Info_B可包括各种类型的信息。例如,作为上述各种信息,写数据、条目信息和映射信息中的至少一些可被存储在元区中,作为备份信息Info_B。

在示例实施例中,在发生突然断电之前,备份信息Info_B可在任意时刻被存储在非易失性存储器装置720中。可替换地,在发生突然断电之后,备份信息Info_B可利用预定电力(例如,存储器系统中包括的辅助电力)被存储在非易失性存储器装置720中。

同时,参照图14B,条目信息可包括逻辑地址LPN、写缓冲器指针和旧物理地址OldPPN。如果在未完成写数据编程操作的同时发生诸如突然断电的异常状态,则存储器控制器710可利用从非易失性存储器装置720读取的备份信息Info_B执行额外操作。

作为示例,随着从映射信息读取条目索引,可在条目索引指示的条目缓冲器的位置处读取条目信息,并且可通过条目信息识别逻辑地址LPN、写缓冲器指针和旧物理地址Old PPN。如果在通过写缓冲器指针识别的写缓冲器的位置存在写数据,则可执行将写数据编程至非易失性存储器装置720中的操作。可替换地,当随着存储在写缓冲器中的写数据一起被备份至非易失性存储器装置720,在存储器系统700中存在写数据时,可利用在非易失性存储器装置720中备份的写数据执行以上编程操作。在示例实施例中,在非易失性存储器装置720中备份的写数据可利用写缓冲器指针再次被存储在写缓冲器中,并且可利用再次被存储在写缓冲器中的写数据执行编程操作。

同时,在各种情况下,诸如当写缓冲器指针指示的位置处不存在写数据时或者当未备份写数据时,可发生写数据不能被编程至非易失性存储器装置720中的情况。在示例实施例中,存储器控制器710可存储旧物理地址Old PPN,作为映射至映射表中的逻辑地址LPN的信息,并且将指示写数据还未被写至非易失性存储器装置720的信息提供至主机。

图15是示出图14所示的存储器系统的操作的示例的流程图。

参照图15,在S31中,存储器控制器可从主机接收写请求,并且还生成条目信息。另外,在S32中,存储器控制器可在非易失性存储器中存储或者备份包括条目信息和L2P映射表的备份信息,在S33中,当发生突然断电(SPO)时,存储器控制器可从非易失性存储器读取备份信息。

可通过备份信息检查存储在L2P映射表的多个储存空间中的信息,并且与任一逻辑地址LPN对应地存储的信息可以是条目索引或物理地址PPN。通过信息的确认,在S34中,可确认对应于逻辑地址LPN的写数据的编程是否完成,当完成编程时,则在S35中,映射至逻辑地址LPN的信息可对应于新映射的物理地址New PPN。另一方面,如果判断编程未完成,则在S36中,可尝试通过备份信息重新编程写数据,如果不可重新编程,则可执行存储或更新先前在对应于逻辑地址LPN的储存空间中映射的物理地址Old PPN的操作。另外,在这种情况下,由于写数据在非易失性存储器装置中的储存失败,可将指示这种情况的信息提供至主机。

图16是示出将根据实施例的存储器系统应用于SSD系统的示例的框图。

参照图16,SSD系统800可包括主机810和SSD 820。SSD 820可通过信号连接器与主机810交换信号SIG,并且通过电力连接器接收电力PWR。SSD 820可包括SSD控制器821、辅助电源822、非易失性存储器装置823_1至823_n和易失性存储器824。非易失性存储器装置823_1至823_n可包括NAND闪速存储器等。此时,SSD 820可利用以上参照图1至图15描述的实施例实施。

例如,SSD 820中设置的SSD控制器821可包括根据上述实施例的L2P更新器821_1和RAM 821_2,当从主机810接收写请求时,L2P更新器821_1可控制用于条目索引的储存操作和物理地址PPN的更新操作。另外,关于存储器操作的控制的各种程序和数据可存储在SSD控制器821中的RAM 821_2中,例如,当非易失性存储器装置823_1至823_n包括NAND闪速存储器时,闪存转换层FTL可存储在RAM 821_2中。

另外,根据示例实施例,写缓冲器、条目缓冲器和用于存储L2P映射信息的电路可在SSD 820中实施。作为示例,写缓冲器、条目缓冲器和L2P映射信息储存电路可在RAM 821_2中实施,可替换地,写缓冲器、条目缓冲器和L2P映射信息储存电路中的至少一些可在易失性存储器824中实施。

另外,根据实施例的存储器控制器MC可限定为包括各种元件。例如,存储器控制器MC可限定为包括SSD控制器821,或者存储器控制器MC可限定为还包括辅助电源822和易失性存储器824中的至少一个。

在不脱离所附权利要求的精神和范围的前提下,可做出各种形式和细节上的改变。

相关技术
  • 存储器控制器、包括存储器控制器的存储器系统和应用处理器
  • 存储器系统、存储器控制器及其操作方法
  • 存储器系统以及存储器系统的操作方法
  • 存储器系统以及存储器系统的操作方法
  • 存储器控制器、存储器控制方法以及半导体存储装置
  • 存储器控制器、存储器系统以及存储器控制器的操作方法
  • 存储器控制器、存储器系统及存储器控制器的操作方法
技术分类

06120116579653