CN109407967A - 存储器系统及其操作方法 - Google Patents
存储器系统及其操作方法 Download PDFInfo
- Publication number
- CN109407967A CN109407967A CN201810059165.4A CN201810059165A CN109407967A CN 109407967 A CN109407967 A CN 109407967A CN 201810059165 A CN201810059165 A CN 201810059165A CN 109407967 A CN109407967 A CN 109407967A
- Authority
- CN
- China
- Prior art keywords
- access
- read operation
- plane
- waiting
- storage system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
- G06F13/1621—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by maintaining request order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7208—Multiple device management, e.g. distributing data over multiple flash devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种存储器系统,其包括:非易失性存储器装置,其包括多个平面;以及控制器,其适于确定对非易失性存储器装置的第一读取操作是否是随机读取操作,并且基于确定结果,根据访问合并进程,访问第一读取操作的至少一个第一目标平面,其中控制器根据访问合并进程,同时访问包括在非易失性存储器装置中的第一目标平面和至少一个第二目标平面。
Description
相关申请的交叉引用
本申请要求于2017年8月18日提交的申请号为10-2017-0104992的韩国申请的优先权,其通过引用整体并入本文。
技术领域
各个实施例总体涉及一种存储器系统,并且更特别地,涉及一种包括非易失性存储器装置的存储器系统。
背景技术
存储器系统响应于写入请求来存储由外部装置提供的数据。存储器系统还可以响应于读取请求向外部装置提供存储的数据。使用存储器系统的外部装置的示例包括计算机、数码相机、蜂窝电话等。存储器系统可以在外部装置的制造期间被嵌入在外部装置中或可以被单独制造然后连接到外部装置。
发明内容
在实施例中,一种存储器系统可以包括:非易失性存储器装置,其包括多个平面;以及控制器,其适于确定对非易失性存储器装置的第一读取操作是否是随机读取操作,并且基于确定结果,根据访问合并进程,访问第一读取操作的至少一个第一目标平面,其中控制器根据访问合并进程,同时访问包括在非易失性存储器装置中的第一目标平面和至少一个第二目标平面。
在实施例中,一种存储器系统的操作方法可以包括:确定对非易失性存储器装置的第一读取操作是否是随机读取操作;以及基于确定结果,根据访问合并进程访问第一读取操作的至少一个第一目标平面,根据访问合并进程访问第一目标平面包括同时访问包括在非易失性存储器装置中的第一目标平面和至少一个第二目标平面。
在实施例中,一种控制器的操作方法可以包括:使第一随机访问操作排队到队列中,其中第一目标访问单元是第一随机访问操作的目标;检测一个或多个第二目标访问单元以与第一目标访问单元一起形成同时可访问单元,其中第二目标访问单元是队列中的第二随机访问操作的目标;以及对同时可访问单元同时执行第一随机访问操作和第二随机访问操作,其中同时可访问单元的第一目标访问单元和第二目标访问单元利用单次访问被同时访问。
在实施例中,一种控制器的操作方法可以包括:使第一顺序访问操作排队到队列中,其中一个或多个第一目标访问单元是第一顺序访问操作的目标;对各自包括第一目标访问单元的一个或多个第一同时可访问单元执行第一顺序访问操作;检测一个或多个第二目标访问单元以与除了第一同时可访问单元的第一目标访问单元之外的一个或多个第一目标访问单元一起形成第二同时可访问单元,其中第二目标访问单元是队列中第二顺序访问操作的目标;以及对第二同时可访问单元同时执行第一顺序访问操作和第二顺序访问操作,其中第一同时可访问单元的第一目标访问单元利用单次访问被同时访问,且其中第二同时可访问单元的第一目标访问单元和第二目标访问单元利用单次访问被同时访问。
附图说明
通过参照附图描述本发明的各个实施例,本发明的以上和其它特征及优点对于本发明所属领域的技术人员将变得更加显而易见,其中:
图1是示出根据实施例的存储器系统的示例的框图。
图2是示出非易失性存储器装置的详细配置的示例的框图。
图3A是帮助描述图2的非易失性存储器装置执行对目标平面的访问操作的方法的示例简图。
图3B是帮助描述图2的非易失性存储器装置执行对目标平面的访问操作的方法的示例简图。
图3C是帮助描述图2的非易失性存储器装置执行对目标平面的访问操作的方法的示例简图。
图4是帮助描述访问合并电路合并访问请求的方法的示例简图。
图5是帮助描述访问合并电路处理顺序访问操作的方法的示例简图。
图6是帮助描述根据实施例的图1的存储器系统的操作方法的示例流程图。
图7是帮助描述根据实施例的图1的存储器系统的操作方法的示例流程图。
图8是帮助描述根据实施例的图1的存储器系统的操作方法的示例流程图。
图9是示出包括根据实施例的固态硬盘(SSD)的数据处理系统的简图。
图10是示出包括根据实施例的存储器系统的数据处理系统的简图。
图11是示出包括根据实施例的存储器系统的数据处理系统的简图。
图12是示出包括根据实施例的存储器系统的网络系统的简图。
图13是示出包括在根据实施例的存储器系统中的非易失性存储器装置的框图。
具体实施方式
在下文中,将通过本发明的示例性实施例参照附图来描述根据本发明的存储器系统及其操作方法。然而,本发明可以以不同的形式体现并且不应被解释为限于本文阐述的实施例。相反,提供这些实施例以使本发明所属领域的技术人员能够实施本发明的技术方案的程度来详细描述本发明。
应当理解的是,本发明的实施例不限于附图中所示的细节,附图不一定按比例绘制,并且在一些情况下可能会夸大其比例,以便更清楚地描绘本发明的某些特征。虽然使用特定术语,但是应当理解的是,使用的术语仅用于描述特定实施例,并不旨在限制本发明的范围。
将进一步理解的是,当一个元件被称为“连接至”或“联接至”另一元件时,其可以直接在其它元件上、连接至或联接至其它元件,或可存在一个或多个中间元件。另外,也将理解的是,当元件被称为在两个元件“之间”时,其可以是两个元件之间仅有的元件或也可存在一个或多个中间元件。
当短语“......和......中的至少一个”在本文中与项目列表一起使用时,是指列表中的单个项目或列表中项目的任何组合。例如,“A、B和C中的至少一个”是指只有A,或只有B,或只有C,或A、B和C的任何组合。
如本文使用的,单数形式也旨在包括复数形式,除非上下文另有清楚地说明。将进一步理解的是,当在该说明书中使用术语“包括”、“包括有”、“包含”和“包含有”时,其指定阐述的元件的存在而不排除一个或多个其它元件的存在或增加。如本文使用的,术语“和/或”包括一个或多个相关的所列项目的任何一个和所有组合。
除非另有定义,否则本文所使用的包括技术术语和科学术语的所有术语具有与本发明所属领域中普通技术人员基于本公开所通常理解的含义相同的含义。将进一步理解的是,诸如在常用词典中定义的那些术语的术语应被理解为具有与其在本公开的上下文和相关领域中的含义一致的含义并且将不以理想化或过于正式的意义来解释,除非本文如此明确地定义。
在以下描述中,为了提供本发明的彻底理解,阐述了许多具体细节。本发明可在没有一些或全部这些具体细节的情况下被实施。在其它情况下,为了不使本发明不必要模糊,未详细地描述公知的进程结构和/或进程。
也应注意的是,在一些情况下,对相关领域的技术人员显而易见的是,结合一个实施例描述的也可被称为特征的元件可单独使用或与另一实施例的其它元件结合使用,除非另有明确说明。
在下文中,将参照附图详细地描述本发明的各个实施例。
图1是示出根据实施例的存储器系统10的示例的框图。
存储器系统10可以被配置成响应于来自外部主机装置的写入请求来存储从主机装置提供的数据。并且,存储器系统10可以被配置成响应于来自主机装置的读取请求向主机装置提供存储的数据。
存储器系统10可以配置为:个人计算机存储卡国际协会(PCMCIA)卡、标准闪存(CF)卡、智能媒体卡、记忆棒、各种多媒体卡(MMC、eMMC、RS-MMC和微型MMC)、各种安全数字卡(SD、迷你SD和微型SD)、通用闪存(UFS)、固态硬盘(SSD)等。
存储器系统10可以包括控制器100和多个非易失性存储器装置201至20n。
控制器100可以控制存储器系统10的一般操作。控制器100可以响应于从主机装置传输的写入请求将数据存储在非易失性存储器装置201至20n中,并且可以响应于从主机装置传输的读取请求来读取存储在非易失性存储器装置201至20n中的数据并且将读取的数据输出到主机装置。
控制器100可以包括访问合并电路150。访问合并电路150可以确定对例如非易失性存储器装置201的第一访问操作是否是随机访问操作。根据确定的结果,访问合并电路150可以访问第一访问操作的至少一个第一目标平面PLa。在该方面,控制器100可以同时访问包括在相同非易失性存储器装置201中的第一目标平面PLa和至少一个第二目标平面PLb。
在本公开中,同时访问包括在相同非易失性存储器装置中的第一目标平面和至少一个第二目标平面的进程可以被称为访问合并进程。对目标平面的访问操作可以是对目标平面的读取操作。对于访问合并进程,关于对目标平面的访问操作的多条信息可以被排队。在本公开中,在各个示例性实施例中,第一访问操作的目标平面可以被称为第一目标平面,并且第二访问操作的目标平面可以被称为第二目标平面。访问合并电路150可以包括被配置成使关于等待访问操作的多条信息排队的等待队列155,其中等待访问操作中的一个或多个可以被检测为第二访问操作并且与访问合并进程的第一访问操作合并。
访问合并电路150可以通过搜索在等待队列155中排队的等待访问操作的可以被置于访问合并进程中作为第二目标平面的一个或多个目标平面来搜索在等待队列155中排队的等待访问操作中可以与第一访问操作合并的至少一个第二访问操作。
当检测到一个或多个第二目标平面时,访问合并电路150可以确定检测到的第二目标平面的等待第二访问操作可以与对第一目标平面PLa的第一访问操作合并。
根据本公开的实施例,可以被置于访问合并进程中的第二目标平面可以不同于第一目标平面,同时被包括在相同非易失性存储器装置中。当某个等待访问操作的目标平面被包括在非易失性存储器装置201中并且不同于第一目标平面PLa时,访问合并电路150可以确定相应的等待访问操作可以与第一访问操作合并。
当第二访问操作被搜索到时,访问合并电路150可以将第二访问操作的目标平面设置为第二目标平面PLb。当第二访问操作未被搜索到时,访问合并电路150可以使第一访问操作保持在等待队列155中排队。即,访问合并电路150可以合并并同时执行分别针对不同原因请求的第一访问操作和第二访问操作。
根据本公开的实施例,非易失性存储器装置201至20n中的每一个可以基本上同时访问包括在其中的预定数量的平面。在本公开中,由非易失性存储器装置基本上同时可访问的预定数量的平面的单元可以被称为同时可访问平面单元。基本上,同时可访问平面单元可以是访问合并进程的单元。例如,当同时可访问平面单元的平面的数量为2时,访问合并电路150可以将第一目标平面PLa和第二目标平面PLb置于访问合并进程中。例如,当同时可访问平面单元的平面的数量为4时,访问合并电路150可以使第一访问操作和第二访问操作保持在等待队列155中排队,而不将其置于访问合并进程中。
当第一目标平面PLa和第二目标平面PLb形成同时可访问平面单元时(即,当同时可访问平面单元的平面的数量为2时),访问合并电路150可以同时访问第一目标平面PLa和第二目标平面PLb(即,访问合并电路150可以将第一目标平面PLa和第二目标平面PLb置于访问合并进程中)。当第一目标平面PLa和第二目标平面PLb未形成同时可访问平面单元时(即,当同时可访问平面单元的平面的数量为4时),访问合并电路150可以使第一访问操作和第二访问操作保持在等待队列155中排队。
根据实施例,当第一目标平面PLa和第二目标平面PLb未形成同时可访问平面单元时,访问合并电路150可以基于在等待队列155中排队的第二访问操作的等待时间来确定第二访问操作是否仍然可以停留在等待队列155中。
例如,当第二访问操作的等待时间短于预定阈值时间时,访问合并电路150可以确定第二访问操作仍然可以停留在等待队列155中。当第二访问操作仍然可以停留在等待队列155中时,访问合并电路150可以使第一访问操作和第二访问操作保持在等待队列155中排队。然而,当第二访问操作由于第二访问操作的等待时间即将达到预定阈值时间而不能停留在等待队列155中时,即使同时可访问平面单元未被形成,访问合并电路150也可以合并第一访问操作和第二访问操作并执行具有第一访问操作和第二访问操作的访问合并进程。
如上所述,访问合并电路150可以基于等待访问操作中的每一个的等待时间和阈值时间来执行在等待队列155中排队的访问操作。例如,当在等待队列155中排队的访问操作的等待时间超过阈值时间时,即使当排队的访问操作的目标平面未形成同时可访问平面单元时,访问合并电路150也可以通过访问合并进程执行在等待队列155中排队的访问操作。
访问合并电路150可以通过访问合并进程来执行随机访问操作。同时,当访问操作被确定为对一个或多个非易失性存储器装置的顺序访问操作时,访问合并电路150可以将访问操作的多个目标存储器单元组分组为一个或多个组。在实施例中,存储器单元组可以对应于单个平面。
访问合并电路150可以通过同时可访问平面单元来对多个目标存储器单元组进行分组。如上所述,访问合并电路150可以参考一个或多个目标存储器单元组的访问操作的等待时间来合并一个或多个目标存储器单元组的访问操作,其中一个或多个目标存储器单元组是在通过同时可访问平面单元对目标存储器单元组进行分组之后剩余的目标存储器单元组。
为了快速处理顺序访问操作,根据实施例,即使顺序访问操作的一些目标存储器单元组未形成同时可访问平面单元并且适于访问合并进程的任何等待访问操作在等待队列155中未被搜索到,访问合并电路150也可以立刻执行顺序访问操作,而不使其保持在等待队列155中排队。
根据控制器100的控制,多个非易失性存储器装置201至20n可以存储从控制器100传输的数据并且可以读取存储的数据并将读取的数据传输到控制器100。非易失性存储器装置201和20n中的每一个可以包括同时可访问的多个平面。当以非易失性存储器装置201为例进行描述时,非易失性存储器装置201可以包括第一目标平面PLa和第二目标平面PLb。非易失性存储器装置201可以根据控制器100的控制同时读取存储在第一目标平面PLa的第一目标存储器单元组中的数据和存储在第二目标平面PLb的第二目标存储器单元组中的数据。在该方面,如稍后将描述的,第二目标存储器单元组的位置可以独立于第一目标存储器单元组的位置。
非易失性存储器装置可以包括诸如NAND闪存或NOR闪存的闪速存储器、铁电随机存取存储器(FeRAM)、相变随机存取存储器(PCRAM)、磁阻式随机存取存储器(MRAM)、电阻式随机存取存储器(ReRAM)等。
图2是示出非易失性存储器装置200的详细配置的示例的框图。图1的非易失性存储器装置201至20n可以以与非易失性存储器装置200基本相同的方式配置和操作。
参照图2,非易失性存储器装置200可以包括控制电路211、多个数据缓冲器DB1至DBk以及多个平面PL1至PLk。控制电路211可以根据控制器100的控制执行写入操作以将数据存储在多个平面PL1到PLk中。并且,控制电路211可以根据控制器100的控制执行访问操作以从多个平面PL1到PLk读取数据。为了写入操作和访问操作,控制电路211可以在多个平面PL1到PLk中同时选择一个或多个目标平面,并且可以访问各个选择的目标平面中由控制器100指定的具体位置,即目标存储器单元组。
多个数据缓冲器DB1至DBk可以分别对应于多个平面PL1至PLk,并且可以临时存储在多个平面PL1至PLk与控制器100之间待传输的数据。详细地,当执行写入操作时,数据缓冲器DB1至DBk中的每一个可以从控制器100接收并存储待存储在相应平面中的数据。当执行访问操作时,数据缓冲器DB1至DBk中的每一个可以存储从相应平面读取的数据并且将数据传输到控制器100。
数据缓冲器DB1至DBk中的每一个可以由包括在相应平面中的多个存储块共享。例如,数据缓冲器DB1可以临时存储在包括在相应平面PL1中的存储块BK1至BKi与控制器100之间待传输的数据。
平面PL1到PLk可以存储从数据缓冲器DB1到DBk传输的数据。平面PL1至PLk中的每一个可以包括多个存储块。当以平面PL1为例进行描述时,平面PL1可以包括多个存储块BK1至BKi。存储块BK1至BKi可以共享相应的数据缓冲器DB1。
存储块可以是执行擦除操作的存储器单元。换言之,当对目标存储块执行擦除操作时,非易失性存储器装置200可以同时擦除存储在目标存储块中的数据。
各个存储块BK1至BKi可以以基本上彼此相同的方式来配置。当以存储块BK1为例进行描述时,存储块BK1可以包括多个存储器单元组UN11至UN1m。
存储器单元组可以是在平面PL1至PLk中的每一个中执行访问操作的存储器单元。换言之,当执行访问操作时,非易失性存储器装置200可以在平面PL1至PLk中选择一个或多个目标平面,并且可以读取存储在各个选择的目标平面的目标存储器单元组中的数据。如稍后将参照图3A所述的,非易失性存储器装置200可以从至少两个目标平面的目标存储器单元组同时读取数据。从目标存储器单元组读取的数据可以被存储在各个相应的数据缓冲器中。
存储器单元组UN11至UN1m可以以存储块为单元分别对应于预定偏移值。存储块BK1至BKi中的每一个可以包括具有预定偏移值的存储器单元组。例如,当“m”个存储器单元组被包括在每个存储块中时,存储块BK1至BKi中的每一个可以包括与偏移值“1”至“m”相对应的存储器单元组。偏移值可以是存储器单元组的地址。偏移值可以限定存储器单元组在存储块中的位置。虽然具有相同偏移值的存储器单元组可以位于存储块中的相同位置处,但是本公开的实施例不限于此。综上所述,控制器100可以通过指定平面的地址、存储块的地址和具体的偏移值来指定某个存储器单元组作为目标并且访问该存储器单元组。
进一步地,平面PL1至PLk中的每一个可以通过多个存储器单元来构造。存储器单元中的每一个可以存储至少一个数据位。根据待存储在每个存储器单元中的数据位的数量,一个或多个存储器单元组的组可以对应于单个字线,并且可以对应于一起联接到相应字线的存储器单元的组。存储在存储器单元组的某个组中的数据可以是存储在相应的存储器单元的组中的数据。为了访问目标存储器单元组,非易失性存储器装置200可以通过驱动相应字线来访问相应的存储器单元的组。存储器单元组可以是页面单元。
当1位被存储在每个存储器单元中时,字线或存储器单元的组可以对应于一个存储器单元组。当2位数据,即,LSB(最低有效位)数据和MSB(最高有效位)数据被存储在每个存储器单元中时,字线或存储器单元的组可以对应于分别存储LSB数据和MSB数据的两个存储器单元组。当3位数据,即,LSB数据、CSB(中间有效位)数据和MSB数据被存储在每个存储器单元中时,字线或存储器单元的组可以对应于分别存储LSB数据、CSB数据和MSB数据的三个存储器单元组。
图3A是帮助描述图2的非易失性存储器装置200执行对目标平面PL1至PL4的访问操作的方法的示例简图。在下文中,非易失性存储器装置200包括例如四个平面PL1至PL4。
目标平面PL1到PL4可以分别包括包含用于访问操作的目标存储器单元组UN1、UN2、UN3和UN4的目标存储块BK1、BK2、BK3和BK4。即,在每个平面中,一个存储块可以被选择作为目标,并且一个存储器单元组可以被选择作为相应存储块中的目标。目标存储器单元组UN1、UN2、UN3和UN4可以被同时访问。即,当执行访问操作时,存储在目标存储器单元组UN1、UN2、UN3和UN4中的数据可被同时读取并存储在数据缓冲器DB1至DB4中。
目标存储器单元组UN1、UN2、UN3和UN4可以具有相同的偏移值。当目标存储器单元组UN1、UN2、UN3和UN4具有相同的偏移值时,目标存储器单元组UN1、UN2、UN3和UN4可以存在于目标存储块BK1、BK2、BK3和BK4中的相同位置处。
然而,如以下将描述的,根据实施例,用于访问操作的目标存储器单元组可以具有不同的偏移值。
图3B是帮助描述图2的非易失性存储器装置200执行对目标平面PL1至PL4的访问操作的方法的示例简图。
参照图3B,与图3A不同,目标平面PL1至PL4的目标存储器单元组UN11、UN12、UN13和UN14可以具有不同的偏移值。当目标存储器单元组UN11、UN12、UN13和UN14具有不同的偏移值时,目标存储器单元组UN11、UN12、UN13和UN14可以存在于目标存储块BK1、BK2、BK3和BK4中的不同位置处。非易失性存储器装置200可以同时访问目标存储器单元组UN11、UN12、UN13和UN14。即,当执行访问操作时,存储在目标存储器单元组UN11、UN12、UN13和UN14中的数据可被同时读取并存储在数据缓冲器DB1至DB4中。
图3C是帮助描述图2的非易失性存储器装置200执行对目标平面PL1和PL2的访问操作的方法的示例简图。
参照图3C,与图3A和图3B不同,可以仅针对平面PL1至PL4中的部分来执行非易失性存储器装置200的访问操作。例如,在平面PL1至PL4中,平面PL1和PL2可以被选择作为访问操作的目标平面。包括在目标平面PL1和PL2的目标存储块BK1和BK2中的目标存储器单元组UN11和UN12可以被选择用于访问操作。非易失性存储器装置200可以同时访问目标存储器单元组UN11和UN12。即,当执行访问操作时,存储在目标存储器单元组UN11和UN12中的数据可被同时读取并存储在数据缓冲器DB1和DB2中。
综上所述,根据本公开的实施例的非易失性存储器装置200可以对一个或多个平面中具有相同偏移值或不同偏移值的目标存储器单元组执行访问操作。目标存储器单元组可以被同时访问。因此,与单独对不同平面执行访问操作的情况相比,在通过合并对不同平面执行访问操作的情况下,可以实现更好的性能。
例如,当有时间间隔地生成针对不同平面的读取命令时,首先生成的读取命令可以排队并且通过与稍后生成的读取命令合并而被同时执行。合并两个或更多个访问操作可以对应于生成一个读取命令,使得当针对目标存储器单元组的访问操作有时间间隔地被调度执行时,不同平面的目标存储器单元组被同时访问。为了合并访问操作,其应当具有与目标存储器装置相同的非易失性存储器装置,并且应当具有不同平面的目标存储器单元组。可以被合并的访问操作可以是由控制器100根据来自主机装置的访问请求待执行的访问操作,或者可以是待被执行以管理存储器系统10的访问操作。待被执行以管理存储器系统10的访问操作可以是在例如垃圾收集操作和磨损均衡操作中待执行的访问操作。
图4是帮助描述访问合并电路150合并访问请求的方法的示例简图。
参照图4,针对目标存储器单元组UN11和UN12的第一访问操作可以是根据从主机装置接收的访问请求待被执行的访问操作。
访问合并电路150可以确定根据访问请求的目标平面PL1和PL2是否形成同时可访问平面单元。可以由非易失性存储器装置200可以同时访问的预定数量的平面形成同时可访问平面单元。例如,可以由平面PL1至PL4形成同时可访问平面单元。
访问合并电路150可以确定目标平面PL1和PL2未形成同时可访问平面单元,并且可以确定将针对目标存储器单元组UN11和UN12的访问操作与在等待队列155中排队的另一访问操作合并,以便利用目标平面PL1和PL2以及与在等待队列155中排队的另一访问操作有关的其它目标平面形成同时可访问平面单元。
例如,访问合并电路150可以在等待队列155中排队的等待访问操作中选择针对平面PL3和PL4的目标存储器单元组UN23和UN24的第二访问操作。换言之,访问合并电路150可以在等待队列155中排队的等待访问操作中选择与针对目标平面(即,平面PL1和PL2)的第一访问操作比较,针对包括在相同的非易失性存储器装置200中的不同目标平面(即,平面PL3和PL4)的第二访问操作。访问合并电路150可以合并针对访问合并进程的第一访问操作和第二访问操作。访问合并电路150可以通过同时访问目标平面PL1至PL4的目标存储器单元组UN11、UN12、UN23和UN24来同时执行第一访问操作和第二访问操作。存储在目标存储器单元组UN11、UN12、UN23和UN24中的数据可以被同时访问。
访问合并电路150可以在不参考目标存储器单元组UN11、UN12、UN23和UN24的偏移值的情况下选择针对访问合并进程的第二访问操作。这是由于,如以上参照图3B所述的,非易失性存储器装置200可以同时访问平面PL1到PL4中具有不同偏移值的目标存储器单元组。因此,彼此合并的第一访问操作和第二访问操作的目标存储器单元组UN11、UN12、UN23和UN24的偏移值彼此独立。换言之,第一访问操作和第二访问操作的目标存储器单元组UN11、UN12、UN23和UN24的位置彼此独立。
虽然图4示出在等待访问操作中选择一个第二访问操作,但是应该注意,可以合并多个访问操作。
当在等待访问操作中未搜索到针对访问合并进程的第二访问操作时,访问合并电路150可以使第一访问操作保持在等待队列155中排队。
在实施例中,仅当访问操作的目标平面形成同时可访问平面单元,即,平面PL1至PL4时,访问合并电路150可以合并针对访问合并进程的访问操作。当访问操作的目标平面未形成同时可访问平面单元时,访问合并电路150可以不合并相应的访问操作,并且可以使所有访问操作保持在等待队列155中排队。
在实施例中,访问合并电路150可以基于在等待队列155中排队的等待访问操作的各自等待时间,通过访问合并进程来执行等待访问操作。即,为了防止访问操作在等待队列155中排队而不被处理,即使当等待访问操作的等待时间超过阈值时间时,访问合并电路150也可以单独或通过访问合并进程来执行等待访问请求。当等待访问操作的等待时间未超过阈值时间时,访问合并电路150可以使等待访问操作保持在等待队列155中排队。
因此,即使目标平面未形成同时可访问平面单元,访问合并电路150也可以在访问操作的等待时间超过阈值时间的情况下合并并执行与目标平面相对应的访问操作。
图5是帮助描述访问合并电路150执行顺序访问操作的方法的示例简图。
首先,从主机装置传输的访问请求可以是随机访问请求或顺序访问请求。控制器100可以根据随机访问请求执行随机访问操作,并且可以根据顺序访问请求执行顺序访问操作。随机访问操作可以是访问某个非易失性存储器装置的一个目标平面的操作。顺序访问操作可以是访问至少两个非易失性存储器装置的多个目标平面的操作。当执行顺序访问操作时,包括在目标平面中的目标存储器单元组可以对应于连续地址。
因此,基于根据从主机装置传输的访问请求的访问操作是随机访问操作还是顺序访问操作,访问合并电路150可以将访问合并进程应用于访问操作。详细地,当执行随机访问操作时,访问合并电路150可以立即处理用于访问合并进程的目标平面。即,由于随机访问操作的目标平面未形成同时可访问平面单元,因此需要访问合并进程。
同时,当如图5所示对例如非易失性存储器装置201和202执行顺序访问操作时,访问合并电路150可以通过同时可访问平面单元将顺序访问操作的多个目标存储器单元组UN31到UN40分组为一个或多个组。例如,由于目标存储器单元组UN31至UN34的目标平面PL1至PL4形成同时可访问平面单元,因此目标存储器单元组UN31至UN34可以被分组为第一组,由于目标存储器单元组UN35至UN38的目标平面PL5至PL8也形成同时可访问平面单元,因此目标存储器单元组UN35至UN38可以被分组为第二组,并且不能形成同时可访问平面单元的剩余的目标存储器单元组UN39和UN40可以成为第三组。
在实施例中,访问合并电路150可以将针对目标平面PL1和PL2的目标存储器单元组UN39和UN40的访问操作与针对包括在平面PL3和PL4中的其它目标存储器单元组的另一等待访问操作合并,以形成同时可访问平面单元。
在另一实施例中,为了执行顺序访问操作,即使针对具有第三组的剩余的目标存储器单元组UN39和UN40的访问合并进程未搜索到任何进一步的等待访问操作,访问合并电路150也可以立即执行顺序访问操作,而不使第三组的剩余目标存储器单元组UN39和UN40保持排队。
图6是帮助描述根据实施例的图1的存储器系统10的操作方法的示例流程图。
参照图6,在步骤S110处,访问合并电路150可以确定针对非易失性存储器装置201至20n的第一访问操作是否是随机访问操作。当第一访问操作是随机访问操作时,进程可以进行到步骤S120。
在步骤S120处,访问合并电路150可以在等待队列155中排队的访问操作中搜索可以与访问合并进程的第一访问操作合并的至少一个第二访问操作。访问合并电路150可以确定何时非易失性存储器装置可以同时访问第一访问操作的至少一个第一目标平面和某个等待访问操作的至少一个目标平面,使得相应的等待访问操作可以作为第二访问操作与访问合并进程的第一访问操作合并。当搜索到第二访问操作时,进程可以进行到步骤S130。
在步骤S130处,访问合并电路150可以通过访问合并进程来合并并执行第一访问操作和第二访问操作。换言之,访问合并电路150可以同时访问第一访问操作的第一目标平面和第二访问操作的第二目标平面。
然而,在步骤S120处,当未搜索到第二访问操作时,进程可以进行到步骤S140。
在步骤S140处,访问合并电路150可以使第一访问操作保持在等待队列155中排队。
在步骤S110处,当第一访问操作不是随机访问操作时,即,当第一访问操作是顺序访问操作时,进程可以进行到步骤S150。
在步骤S150处,访问合并电路150可以通过同时可访问平面单元将第一访问操作的多个目标存储器单元组分组为一个或多个组。
在步骤S160处,访问合并电路150可以确定各个组是否形成同时可访问平面单元。可以由非易失性存储器装置可以同时访问的预定数量的平面形成同时可访问平面单元。当各个组形成同时可访问平面单元时,进程可以进行到步骤S170。
在步骤S170处,访问合并电路150可以单独执行第一访问操作。
然而,在步骤S160处,当在至少一个组中未形成同时可访问平面单元时,进程可以进行到步骤S180。
在步骤S180处,访问合并电路150可以在等待队列155中排队的访问操作中搜索可以与访问合并进程的第一访问操作合并的至少一个第二访问操作。当未搜索到第二访问操作时,进程可以进行到步骤S170。即,由于需要快速执行顺序访问操作,因此即使第一访问操作的一个或多个目标存储器单元组未形成同时可访问平面单元,访问合并电路150也可以执行第一访问操作。
然而,当搜索到第二访问操作时,进程可以进行到步骤S130。换言之,在步骤S130处,访问合并电路150可以通过访问合并进程来合并并执行第一访问操作和第二访问操作。即,访问合并电路150可以同时访问第一访问操作的目标平面中未形成同时可访问平面单元的组的目标平面和第二访问操作的第二目标平面。
图7是帮助描述根据实施例的图1的存储器系统10的操作方法的示例流程图。在图7的操作方法中,由于步骤S210至S280与图6的步骤S110至S180基本相同,因此本文将省略对其的详细描述。当与图6的操作方法比较时,图7的操作方法可以进一步包括步骤S290。
在步骤S220处,当搜索到第二访问操作时,进程可以进行到步骤S290。
在步骤S290处,访问合并电路150可以确定第一访问操作的至少一个第一目标平面和第二访问操作的至少一个第二目标平面是否形成同时可访问平面单元。当第一目标平面和第二目标平面形成同时可访问平面单元时,进程可以进行到步骤S230。即,在步骤S230处,访问合并电路150可以通过访问合并进程来合并并执行第一访问操作和第二访问操作。
然而,在步骤S290处,当第一目标平面和第二目标平面未形成同时可访问平面单元时,进程可以进行到步骤S240。换言之,在步骤S240处,访问合并电路150可以使第一访问操作保持在等待队列155中排队。此时,第二访问操作也可以在等待队列155中继续排队。
图8是帮助描述根据实施例的图1的存储器系统10的操作方法的示例流程图。在图8的操作方法中,由于步骤S310至S390与图7的步骤S210至S290基本相同,因此本文将省略对其的详细描述。当与图7的操作方法比较时,图8的操作方法可以进一步包括步骤S400。
在步骤S390处,当第一访问操作的至少一个第一目标平面和第二访问操作的至少一个第二目标平面未形成同时可访问平面单元时,进程可以进行到步骤S400。
在步骤S400处,访问合并电路150可以基于在等待队列155中排队的第二访问操作的等待时间来确定第二访问操作是否仍然可以停留在等待队列155中。例如,当第二访问操作的等待时间短于预定阈值时间时,访问合并电路150可以确定第二访问操作仍然可以停留在等待队列155中。当第二访问操作停留在等待队列155中时,进程可以进行到步骤S340。即,在步骤S340处,访问合并电路150可以使第一访问操作保持在等待队列155中排队。此时,第二访问操作也可以在等待队列155中排队。
然而,在步骤S400处,当第二访问操作由于第二访问操作的等待时间即将达到预定阈值时间而不能停留在等待队列155中时,进程可以进行到步骤S330。即,在步骤S330处,访问合并电路150可以通过访问合并进程来合并并执行第一访问操作和第二访问操作。
图9是示出包括根据实施例的固态硬盘(SSD)1200的数据处理系统1000的简图。参照图9,数据处理系统1000可以包括主机装置1100和SSD 1200。
SSD 1200可以包括控制器1210、缓冲存储器装置1220、多个非易失性存储器装置1231至123n、电源1240、信号连接器1250和电源连接器1260。
控制器1210可以控制SSD 1200的一般操作。控制器1210可以包括主机接口单元1211、控制单元1212、随机存取存储器1213、错误校正码(ECC)单元1214和存储器接口单元1215。
主机接口单元1211可以通过信号连接器1250与主机装置1100交换信号SGL。信号SGL可以包括命令、地址、数据等。主机接口单元1211可以根据主机装置1100的协议来接口连接主机装置1100和SSD 1200。例如,主机接口单元1211可以通过诸如以下的标准接口协议中的任意一种与主机装置1100通信:安全数字、通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、个人计算机存储卡国际协会(PCMCIA)、并行高级技术附件(PATA)、串行高级技术附件(SATA)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、外围组件互连(PCI)、高速PCI(PCI-E)和通用闪存(UFS)。
控制单元1212可以分析和处理从主机装置1100接收的信号SGL。控制单元1212可以根据用于驱动SSD 1200的固件或软件来控制内部功能块的操作。随机存取存储器1213可以用作驱动这种固件或软件的工作存储器。
ECC单元1214可以生成待被传输到非易失性存储器装置1231至123n中的至少一个的数据的奇偶校验数据。生成的奇偶校验数据可以与数据一起存储在非易失性存储器装置1231至123n中。ECC单元1214可以基于奇偶校验数据来检测从非易失性存储器装置1231至123n中的至少一个读取的数据的错误。如果检测到的错误在可校正的范围内,则ECC单元1214可以校正检测到的错误。
存储器接口单元1215可以根据控制单元1212的控制将诸如命令和地址的控制信号提供给非易失性存储器装置1231至123n中的至少一个。此外,存储器接口单元1215可以根据控制单元1212的控制与非易失性存储器装置1231至123n中的至少一个交换数据。例如,存储器接口单元1215可以将存储在缓冲存储器装置1220中的数据提供给非易失性存储器装置1231至123n中的至少一个,或将从非易失性存储器装置1231至123n中的至少一个读取的数据提供给缓冲存储器装置1220。
缓冲存储器装置1220可以临时存储待存储在非易失性存储器装置1231至123n中的至少一个中的数据。进一步地,缓冲存储器装置1220可以临时存储从非易失性存储器装置1231至123n中的至少一个读取的数据。临时存储在缓冲存储器装置1220中的数据可以根据控制器1210的控制被传输到主机装置1100或非易失性存储器装置1231至123n中的至少一个。
非易失性存储器装置1231至123n可以用作SSD 1200的存储介质。非易失性存储器装置1231至123n可以通过多个通道CH1至CHn分别与控制器1210联接。一个或多个非易失性存储器装置可以联接到一个通道。联接到每个通道的非易失性存储器装置可以联接到相同的信号总线和数据总线。
电源1240可以将通过电源连接器1260输入的电力PWR提供到SSD 1200的内部。电源1240可以包括辅助电源1241。辅助电源1241可以当发生突然断电时供给电力以允许SSD1200正常地终止。辅助电源1241可以包括大容量电容器。
根据主机装置1100和SSD 1200之间的接口方案,信号连接器1250可以由各种类型的连接器配置。
根据主机装置1100的电源方案,电源连接器1260可以由各种类型的连接器配置。
图10是示出包括根据实施例的存储器系统2200的数据处理系统2000的简图。参照图10,数据处理系统2000可以包括主机装置2100和存储器系统2200。
主机装置2100可以被配置成诸如印刷电路板的板的形式。虽然未示出,但是主机装置2100可以包括用于执行主机装置的功能的内部功能块。
主机装置2100可以包括诸如插座、插槽或连接器的连接端子2110。存储器系统2200可以被安装到连接端子2110。
存储器系统2200可以被配置成诸如印刷电路板的板的形式。存储器系统2200可以被称为存储器模块或存储卡。存储器系统2200可以包括控制器2210、缓冲存储器装置2220、非易失性存储器装置2231和2232、电源管理集成电路(PMIC)2240和连接端子2250。
控制器2210可以控制存储器系统2200的一般操作。控制器2210可以以与图9所示的控制器1210相同的方式来配置。
缓冲存储器装置2220可以临时存储待存储在非易失性存储器装置2231和2232中的数据。进一步地,缓冲存储器装置2220可以临时存储从非易失性存储器装置2231和2232读取的数据。临时存储在缓冲存储器装置2220中的数据可以根据控制器2210的控制被传输到主机装置2100或非易失性存储器装置2231和2232。
非易失性存储器装置2231和2232可以用作存储器系统2200的存储介质。
PMIC 2240可以将通过连接端子2250输入的电力提供到存储器系统2200的内部。PMIC 2240可以根据控制器2210的控制来管理存储器系统2200的电力。
连接端子2250可以联接到主机装置2100的连接端子2110。通过连接端子2250,诸如命令、地址、数据等的信号和电力可以在主机装置2100和存储器系统2200之间传送。根据主机装置2100和存储器系统2200之间的接口方案,连接端子2250可以被配置成各种类型。连接端子2250可以被设置在存储器系统2200的任意一侧上。
图11是示出包括根据实施例的存储器系统3200的数据处理系统3000的简图。参照图11,数据处理系统3000可以包括主机装置3100和存储器系统3200。
主机装置3100可以被配置成诸如印刷电路板的板的形式。虽然未示出,但是主机装置3100可以包括用于执行主机装置的功能的内部功能块。
存储器系统3200可以被配置成表面安装型封装的形式。存储器系统3200可以通过焊球3250被安装到主机装置3100。存储器系统3200可以包括控制器3210、缓冲存储器装置3220和非易失性存储器装置3230。
控制器3210可以控制存储器系统3200的一般操作。控制器3210可以以与图9所示的控制器1210相同的方式来配置。
缓冲存储器装置3220可以临时存储待存储在非易失性存储器装置3230中的数据。进一步地,缓冲存储器装置3220可以临时存储从非易失性存储器装置3230读取的数据。临时存储在缓冲存储器装置3220中的数据可以根据控制器3210的控制被传输到主机装置3100或非易失性存储器装置3230。
非易失性存储器装置3230可以用作存储器系统3200的存储介质。
图12是示出包括根据实施例的存储器系统4200的网络系统4000的简图。参照图12,网络系统4000可以包括通过网络4500联接的服务器系统4300和多个客户端系统4410至4430。
服务器系统4300可以响应于来自多个客户端系统4410至4430的请求来服务数据。例如,服务器系统4300可以存储从多个客户端系统4410到4430提供的数据。又例如,服务器系统4300可以将数据提供给多个客户端系统4410至4430。
服务器系统4300可以包括主机装置4100和存储器系统4200。存储器系统4200可以由图1所示的存储器系统10、图9所示的存储器系统1200、图10所示的存储器系统2200或者图11所示的存储器系统3200来配置。
图13是示出包括在根据实施例的存储器系统中的非易失性存储器装置300的框图。参照图13,非易失性存储器装置300可以包括存储器单元阵列310、行解码器320、数据读取/写入块330、列解码器340、电压发生器350和控制逻辑360。
存储器单元阵列310可以包括布置在字线WL1至WLm和位线BL1至BLn彼此相交的区域处的存储器单元MC。
行解码器320可以通过字线WL1至WLm与存储器单元阵列310联接。行解码器320可以根据控制逻辑360的控制来操作。行解码器320可以解码从外部装置(未示出)提供的地址。行解码器320可以基于解码结果来选择并驱动字线WL1至WLm。例如,行解码器320可以将从电压发生器350提供的字线电压提供给字线WL1至WLm。
数据读取/写入块330可以通过位线BL1至BLn与存储器单元阵列310联接。数据读取/写入块330可以包括分别对应于位线BL1至BLn的读取/写入电路RW1至RWn。数据读取/写入块330可以根据控制逻辑360的控制来操作。数据读取/写入块330可以根据操作模式作为写入驱动器或读出放大器来操作。例如,数据读取/写入块330可以作为写入驱动器来操作,该写入驱动器在写入操作中将从外部装置提供的数据存储在存储器单元阵列310中。又例如,数据读取/写入块330可以作为读出放大器来操作,该读出放大器在访问操作中从存储器单元阵列310读出数据。
列解码器340可以根据控制逻辑360的控制来操作。列解码器340可以解码从外部装置提供的地址。列解码器340可以基于解码结果将分别对应于位线BL1至BLn的数据读取/写入块330的读取/写入电路RW1至RWn与数据输入/输出线或数据输入/输出缓冲器联接。
电压发生器350可以产生待用于非易失性存储器装置300的内部操作的电压。由电压发生器350产生的电压可以被施加到存储器单元阵列310的存储器单元。例如,在编程操作中产生的编程电压可以被施加到待执行编程操作的存储器单元的字线。又例如,在擦除操作中产生的擦除电压可以被施加到待执行擦除操作的存储器单元的阱区。再例如,在访问操作中产生的读取电压可以被施加到待执行访问操作的存储器单元的字线。
控制逻辑360可以基于从外部装置提供的控制信号来控制非易失性存储器装置300的一般操作。例如,控制逻辑360可以控制非易失性存储器装置300的操作,诸如非易失性存储器装置300的读取操作、写入操作和擦除操作。
虽然上面已经描述各个实施例,但是本领域技术人员将理解,描述的实施例仅是示例。因此,本文描述的存储器系统及其操作方法不应当限于描述的实施例。对本发明所属领域的技术人员显而易见的是,在不脱离如所附权利要求所限定的本发明的精神和范围的情况下,可以进行各种其它改变和变型。
Claims (20)
1.一种存储器系统,其包括:
非易失性存储器装置,其包括多个平面;以及
控制器,其适于确定对所述非易失性存储器装置的第一读取操作是否是随机读取操作,并且基于确定结果,根据访问合并进程,访问所述第一读取操作的至少一个第一目标平面,
其中所述控制器根据所述访问合并进程,同时访问包括在所述非易失性存储器装置中的所述第一目标平面和至少一个第二目标平面。
2.根据权利要求1所述的存储器系统,
其中,根据所述访问合并进程,所述控制器同时读取存储在所述第一目标平面的第一目标存储器单元组中的数据和存储在所述第二目标平面的第二目标存储器单元组中的数据,并且
其中所述第二目标存储器单元组的位置独立于所述第一目标存储器单元组的位置。
3.根据权利要求1所述的存储器系统,其中,根据所述访问合并进程,所述控制器在等待读取操作中搜索与所述第一读取操作可合并的至少一个第二读取操作,并且当所述第二读取操作被搜索到时,将所述第二读取操作的目标平面设置为所述第二目标平面。
4.根据权利要求3所述的存储器系统,其中当所述非易失性存储器装置能够同时访问所述第一目标平面和等待读取操作的目标平面时,所述控制器确定所述等待读取操作与所述第一读取操作可合并。
5.根据权利要求3所述的存储器系统,其中当所述第二读取操作未被搜索到时,所述控制器使所述第一读取操作保持等待。
6.根据权利要求3所述的存储器系统,其中所述控制器基于所述等待读取操作中的每一个的等待时间和阈值时间来执行所述等待读取操作。
7.根据权利要求1所述的存储器系统,
其中当所述第一目标平面和所述第二目标平面形成同时可访问平面单元时,所述控制器同时访问所述第一目标平面和所述第二目标平面,并且
其中所述同时可访问平面单元由所述非易失性存储器装置同时可访问的预定数量的平面形成。
8.根据权利要求7所述的存储器系统,其中,当所述第一目标平面和所述第二目标平面未形成所述同时可访问平面单元时,所述控制器基于所述第二读取操作的等待时间来确定所述第二读取操作是否能够继续等待,并且当所述第二读取操作不能继续等待时,所述控制器同时访问所述第一目标平面和所述第二目标平面。
9.根据权利要求8所述的存储器系统,其中当所述第二读取操作能够继续等待时,所述控制器使所述第一读取操作和所述第二读取操作保持等待。
10.根据权利要求1所述的存储器系统,其中,当所述第一读取操作是对至少一个非易失性存储器装置的顺序读取操作时,所述控制器将所述第一读取操作的第一目标存储器单元组分组成一个或多个组,使得配置每个组的目标平面形成同时可访问平面单元,并且根据所述访问合并进程处理所述组中未形成所述同时可访问平面单元的组。
11.一种存储器系统的操作方法,其包括:
确定对非易失性存储器装置的第一读取操作是否是随机读取操作;以及
基于确定结果,根据访问合并进程访问所述第一读取操作的至少一个第一目标平面,
根据所述访问合并进程访问所述第一目标平面包括:
同时访问包括在所述非易失性存储器装置中的所述第一目标平面和至少一个第二目标平面。
12.根据权利要求11所述的方法,
其中同时访问所述第一目标平面和所述第二目标平面包括:
同时读取存储在所述第一目标平面的第一目标存储器单元组中的数据和存储在所述第二目标平面的第二目标存储器单元组中的数据,并且
其中所述第二目标存储器单元组的位置独立于所述第一目标存储器单元组的位置。
13.根据权利要求11所述的方法,其中根据所述访问合并进程访问所述第一目标平面包括:
在等待读取操作中搜索与所述第一读取操作可合并的至少一个第二读取操作;以及
当搜索到所述第二读取操作时,将所述第二读取操作的目标平面设置为所述第二目标平面。
14.根据权利要求13所述的方法,其中搜索所述第二读取操作包括:
当所述非易失性存储器装置能够同时访问所述第一目标平面和等待访问操作的目标平面时,确定所述等待读取操作与所述第一读取操作可合并。
15.根据权利要求13所述的方法,其中根据所述访问合并进程访问所述第一目标平面进一步包括:
当未搜索到所述第二读取操作时,使所述第一读取操作保持等待。
16.根据权利要求13所述的方法,其中根据所述访问合并进程访问所述第一目标平面进一步包括:
基于所述等待读取操作中的每一个的等待时间和阈值时间来执行所述等待读取操作。
17.根据权利要求11所述的方法,
其中根据所述访问合并进程访问所述第一目标平面进一步包括:
当所述第一目标平面和所述第二目标平面形成同时可访问平面单元时,同时访问所述第一目标平面和所述第二目标平面,并且
其中所述同时可访问平面单元由所述非易失性存储器装置同时可访问的预定数量的平面形成。
18.根据权利要求17所述的方法,其中根据所述访问合并进程访问所述第一目标平面进一步包括:
当所述第一目标平面和所述第二目标平面未形成所述同时可访问平面单元时,基于所述第二读取操作的等待时间确定所述第二读取操作是否能够继续等待;以及
当所述第二读取操作不能继续等待时,同时访问所述第一目标平面和所述第二目标平面。
19.根据权利要求18所述的方法,其中根据所述访问合并进程访问所述第一目标平面进一步包括当所述第二读取操作不能继续等待时,使所述第一读取操作和所述第二读取操作保持等待。
20.根据权利要求11所述的方法,其进一步包括:
当所述第一读取操作是对至少一个非易失性存储器装置的顺序读取操作时,将所述第一读取操作的第一目标存储器单元组分组成一个或多个组,使得配置每个组的目标平面形成同时可访问平面单元;以及
根据所述访问合并进程,处理所述组中未形成所述同时可访问平面单元的组。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170104992A KR20190019712A (ko) | 2017-08-18 | 2017-08-18 | 데이터 저장 장치 및 그것의 동작 방법 |
KR10-2017-0104992 | 2017-08-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109407967A true CN109407967A (zh) | 2019-03-01 |
Family
ID=65361541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810059165.4A Pending CN109407967A (zh) | 2017-08-18 | 2018-01-22 | 存储器系统及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20190057049A1 (zh) |
KR (1) | KR20190019712A (zh) |
CN (1) | CN109407967A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113495856A (zh) * | 2020-04-03 | 2021-10-12 | 爱思开海力士有限公司 | 存储器系统 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10719241B2 (en) * | 2018-05-25 | 2020-07-21 | Micron Technology, Inc. | Power management integrated circuit with embedded address resolution protocol circuitry |
CN110209597B (zh) | 2019-05-24 | 2021-10-15 | 北京百度网讯科技有限公司 | 处理访问请求的方法、装置、设备和存储介质 |
CN114764310A (zh) * | 2021-01-13 | 2022-07-19 | 三星电子株式会社 | 使用主机存储缓冲器的处理器和包括该处理器的存储系统 |
US11815938B2 (en) | 2021-07-13 | 2023-11-14 | SK Hynix Inc. | Storage device and method of operating the same |
US11853216B2 (en) * | 2021-08-16 | 2023-12-26 | Micron Technology, Inc. | High bandwidth gather cache |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102317928A (zh) * | 2009-01-09 | 2012-01-11 | 美光科技公司 | 修改命令 |
US20120084484A1 (en) * | 2010-09-30 | 2012-04-05 | Apple Inc. | Selectively combining commands for a system having non-volatile memory |
CN104641418A (zh) * | 2013-08-19 | 2015-05-20 | 株式会社东芝 | 存储系统 |
US20160283111A1 (en) * | 2015-03-26 | 2016-09-29 | Intel Corporation | Read operations in memory devices |
US20170115891A1 (en) * | 2015-10-27 | 2017-04-27 | Sandisk Enterprise Ip Llc | Read operation delay |
-
2017
- 2017-08-18 KR KR1020170104992A patent/KR20190019712A/ko unknown
- 2017-12-18 US US15/845,475 patent/US20190057049A1/en not_active Abandoned
-
2018
- 2018-01-22 CN CN201810059165.4A patent/CN109407967A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102317928A (zh) * | 2009-01-09 | 2012-01-11 | 美光科技公司 | 修改命令 |
US20120084484A1 (en) * | 2010-09-30 | 2012-04-05 | Apple Inc. | Selectively combining commands for a system having non-volatile memory |
CN104641418A (zh) * | 2013-08-19 | 2015-05-20 | 株式会社东芝 | 存储系统 |
US20160283111A1 (en) * | 2015-03-26 | 2016-09-29 | Intel Corporation | Read operations in memory devices |
US20170115891A1 (en) * | 2015-10-27 | 2017-04-27 | Sandisk Enterprise Ip Llc | Read operation delay |
Non-Patent Citations (1)
Title |
---|
胡洋: "高性能固态盘的多级并行性及算法研究"", 《中国博士学位论文全文数据库(信息科技辑)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113495856A (zh) * | 2020-04-03 | 2021-10-12 | 爱思开海力士有限公司 | 存储器系统 |
CN113495856B (zh) * | 2020-04-03 | 2024-04-30 | 爱思开海力士有限公司 | 存储器系统 |
Also Published As
Publication number | Publication date |
---|---|
KR20190019712A (ko) | 2019-02-27 |
US20190057049A1 (en) | 2019-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109407967A (zh) | 存储器系统及其操作方法 | |
CN110083545B (zh) | 数据存储装置及其操作方法 | |
KR102533207B1 (ko) | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 | |
US10289557B2 (en) | Storage system and method for fast lookup in a table-caching database | |
CN110069212A (zh) | 存储装置及存储装置的操作方法 | |
CN111177031B (zh) | 数据存储装置及操作方法和具有数据存储装置的存储系统 | |
US10089255B2 (en) | High performance host queue monitor for PCIE SSD controller | |
CN110176261A (zh) | 存储装置及其操作方法 | |
US11288017B2 (en) | Devices, systems, and methods for storing data using distributed control | |
CN108694980A (zh) | 数据存储装置及其操作方法 | |
CN110010185A (zh) | 存储器系统及其操作方法 | |
CN110175133A (zh) | 存储装置及其操作方法 | |
CN110928806B (zh) | 存储器系统及其操作方法 | |
KR20190019721A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
KR102578191B1 (ko) | 리커버리 성능이 최적화된 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 | |
CN110389907A (zh) | 电子装置 | |
CN110119326A (zh) | 数据存储装置及其操作方法 | |
KR20200121068A (ko) | 데이터 저장 장치 및 이의 동작 방법, 이를 위한 컨트롤러 | |
US11301168B2 (en) | Storage system and method for user-defined data archiving | |
KR20230094943A (ko) | 저장 단편화를 정량화하고 성능 저하를 예측하기 위한 저장 시스템 및 방법 | |
US11119938B2 (en) | Apparatus and method to synchronize memory map between a storage device and host | |
CN111414314B (zh) | 数据存储装置、其操作方法及其控制器 | |
CN113010445A (zh) | 数据存储装置、其操作方法及使用其的存储系统 | |
CN106098096A (zh) | 数据储存设备及其操作方法 | |
CN110442302A (zh) | 存储器系统及该存储器系统的操作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190301 |
|
WD01 | Invention patent application deemed withdrawn after publication |