CN109656469A - 用于控制一个或多个存储器装置的控制器及其操作方法 - Google Patents

用于控制一个或多个存储器装置的控制器及其操作方法 Download PDF

Info

Publication number
CN109656469A
CN109656469A CN201810606013.1A CN201810606013A CN109656469A CN 109656469 A CN109656469 A CN 109656469A CN 201810606013 A CN201810606013 A CN 201810606013A CN 109656469 A CN109656469 A CN 109656469A
Authority
CN
China
Prior art keywords
order
memory device
reading
controller
storage device
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
Application number
CN201810606013.1A
Other languages
English (en)
Inventor
千东烨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SK Hynix Inc
Original Assignee
Hynix Semiconductor Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hynix Semiconductor Inc filed Critical Hynix Semiconductor Inc
Publication of CN109656469A publication Critical patent/CN109656469A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

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)

Abstract

根据本发明的实施例,一种控制器可以包括:缓冲器,用于根据输入顺序存储多个命令;设置单元,用于设置待对各个存储装置执行的对应于多个命令的读取状态检查操作的顺序信息,其中存储装置被包括在存储器装置中;执行单元,用于控制存储器装置基于顺序信息顺序地执行读取状态检查操作;以及处理器,用于基于读取状态检查操作的结果控制存储器装置响应于多个命令来执行命令操作。

Description

用于控制一个或多个存储器装置的控制器及其操作方法
相关申请的交叉引用
本申请要求于2017年10月11日提交的申请号为10-2017-0129778的韩国专利申请的优先权,其全部内容通过引用整体并入本文。
技术领域
本发明的各个示例性实施例涉及一种控制器,并且更特别地,涉及一种最大化存储器系统的性能的控制器及其操作方法。
背景技术
计算机环境范例已经转变至可随时随地使用的普适计算系统。即,诸如移动电话、数码相机和笔记本计算机的便携式电子装置的使用已经快速增长。这些便携式电子装置通常使用具有一个或多个存储器装置的存储器系统来存储数据。存储器系统可以用作便携式电子装置的主存储器装置或辅助存储器装置。
因为存储器系统不具有移动部件,所以它们提供优良的稳定性、耐久性、高信息访问速度和低功耗。具有这种优点的存储器系统的示例包括通用串行总线(USB)存储器装置、具有各种接口的存储卡和固态驱动器(SSD)。
发明内容
本发明的各个实施例涉及一种用于提高读取操作性能的控制器及其操作方法。
根据本发明的实施例,一种控制器可以包括:缓冲器,用于根据输入顺序存储多个命令;设置单元,用于设置待对各个存储装置执行的对应于多个命令的读取状态检查操作的顺序信息,其中存储装置被包括在存储器装置中;执行单元,用于控制存储器装置基于顺序信息顺序地执行读取状态检查操作;以及处理器,用于基于读取状态检查操作的结果控制存储器装置响应于多个命令来执行命令操作。
缓冲器可以具有环形缓冲器结构。
当多个命令可以是针对顺序数据的命令时,顺序信息与针对顺序数据的命令的输入顺序相同。
执行单元可以控制存储装置对每个存储装置重复地执行状态检查,直到在存储装置中的每一个中执行的命令操作完成为止。
在完成先前命令的命令操作之后,执行单元可以根据顺序信息控制存储器装置执行对应于后续命令的读取状态检查操作。
当多个命令可以是针对随机数据的命令时,顺序信息与针对随机数据的命令的输入顺序相同。
执行单元可以控制存储器装置对存储装置交替地执行读取状态检查操作,直到对存储装置的命令操作完成为止。
当根据对存储装置中的每一个执行读取状态检查操作的结果,确定一个或多个存储装置繁忙时,设置单元可以基于命令信息来改变顺序信息。
命令信息可以包括存储装置对应于相应命令的繁忙状态的预定持续时间信息。
设置单元可以基于命令信息将对应于先前命令的持续时间信息与对应于后续命令的持续时间信息进行比较并且改变顺序信息,从而优先地控制存储器装置执行对应于具有较短时间的后续命令的读取状态检查操作。
执行单元可以控制存储器装置基于改变的顺序信息顺序地执行读取状态检查操作。
当后续命令是读取命令并且在响应于先前写入命令而正在执行写入操作时发出时,设置单元可以改变顺序信息以首先对存储装置执行对应于读取命令的读取状态检查操作。
执行单元可以控制存储器装置中断写入操作并且执行对应于读取命令的读取状态检查操作。
处理器可以基于相应的存储装置的状态来控制存储器装置执行对应于读取命令的读取操作。
在读取操作完成之后,处理器可以控制存储器装置恢复中断的写入操作。
存储装置包括存储器装置的路径(way)。
根据本发明的实施例,一种控制器的操作方法可以包括:第一步骤,根据多个命令的输入顺序将多个命令存储在缓冲器中;第二步骤,存储待对存储器装置的多个存储装置中的每一个执行的对应于多个命令中的每一个的读取状态检查操作的顺序信息;第三步骤,控制存储器装置基于顺序信息对存储装置顺序地执行读取状态检查操作;以及第四步骤,基于读取状态检查操作的结果控制存储器装置响应于多个命令来执行命令操作。
缓冲器可以具有环形缓冲器结构。
第二步骤可以当多个命令是针对顺序数据的命令时,存储顺序与针对顺序数据的命令的输入顺序相同的顺序信息,并且其中第三步骤控制存储装置对每个存储装置重复地执行读取状态检查操作,直到在存储装置中的每一个中执行的命令操作完成为止。
第三步骤可以在完成先前命令的命令操作之后,根据顺序信息控制存储器装置执行后续命令的读取状态检查操作。
第二步骤可以当多个命令是针对随机数据的命令时,将顺序信息设置为与针对随机数据的命令的输入顺序相同,并且其中第三步骤控制存储器装置对存储装置交替地执行读取状态检查操作,直到对存储装置的命令操作完成为止。
该操作方法进一步包括第五步骤,当根据对存储装置中的每一个执行读取状态检查操作的结果,确定一个或多个存储装置繁忙时,基于命令信息改变顺序信息,其中命令信息包括存储装置对应于相应命令的繁忙状态的预定持续时间信息。
第五步骤可以基于命令信息将对应于先前命令的持续时间信息与对应于后续命令的持续时间信息进行比较并且改变顺序信息,从而优先地控制存储器装置执行具有较短时间的后续命令的读取状态检查操作,并且该操作方法进一步包括第六步骤,控制存储器装置基于改变的顺序信息顺序地执行读取状态检查操作。
第二步骤可以当后续命令是读取命令并且在响应于先前写入命令而正在执行写入操作时发出时,改变顺序信息以首先对存储装置执行对应于读取命令的读取状态检查操作,并且其中第三步骤控制存储器装置中断写入操作并执行对应于读取命令的读取状态检查操作,并且其中第四步骤基于相应存储装置的状态控制存储器装置执行对应于读取命令的读取操作。
在读取操作完成之后,存储器装置恢复中断的写入操作。
存储装置可以包括存储器装置的路径。
根据本发明的实施例,一种存储器系统可以包括:存储器装置,其包括多个存储装置;以及控制器,其适于:响应于命令的有序序列,对存储装置执行分别对应于命令的有序序列的状态检查操作的有序序列;以及根据状态检查操作的结果执行分别对应于命令的多个命令操作,其中执行状态检查操作的有序序列包括重复对应于下一个命令的状态检查操作,直到完成当前命令操作为止。
根据本发明的实施例,通过高效的状态检查可以改进控制器的读取操作的执行。
附图说明
图1是示出根据本发明的实施例的包括存储器系统的数据处理系统的框图。
图2是示出图1所示的存储器系统中采用的存储器装置的示例性配置的示意图。
图3是示出图2所示的存储器装置中的存储块的存储器单元阵列的示例性配置的电路图。
图4是示出图2所示的存储器装置的示例性三维结构的示意图。
图5是示出根据本发明的实施例的控制器和存储器装置的结构的示意图。
图6A是示出根据本发明的实施例的控制器的操作的时序图。
图6B是示出根据本发明的另一实施例的控制器的操作的时序图。
图7是示出根据本发明的另一实施例的控制器的操作的时序图。
图8是示出根据本发明的另一实施例的控制器的操作的流程图。
图9至图17是示意性示出根据本发明的各个实施例的数据处理系统的应用示例的示图。
具体实施方式
以下参照附图更详细地描述本发明的各个实施例。然而,注意的是,本发明可以以不同的其它实施例、形式和其变型实施,并且不应被解释为限于本文阐述的实施例。相反,提供所述实施例使得本公开将是彻底且完整的,并且将向本发明所属领域的技术人员充分地传达本发明。在整个公开中,相同的附图标记在整个本发明的各个附图和实施例中表示相同的部件。
将理解的是,虽然可在本文使用术语“第一”、“第二”、“第三”等来描述各种元件,但是这些元件不受这些术语限制。这些术语被用于区分一个元件与另一元件。因此,在不脱离本发明的精神和范围的情况下,以下描述的第一元件也可被称为第二元件或第三元件。
附图不一定按比例绘制,在一些情况下,为了清楚地示出实施例的特征,可能已经夸大了比例。当元件被称为连接或联接到另一元件时,应当理解的是,前者可以直接地连接或联接到后者,或经由其之间的中间元件电连接或电联接到后者。
将进一步理解的是,当元件被称为“连接至”或“联接到”另一元件时,其可直接在另一元件上、连接至或联接到另一元件,或者可存在一个或多个中间元件。此外,还将理解的是,当元件被称为在两个元件“之间”时,其可以是这两个元件之间的唯一元件,或者也可存在一个或多个中间元件。
本文使用的术语仅是为了描述特定实施例的目的,并不旨在限制本发明。
如本文所使用的,除非上下文另有明确说明,否则单数形式也旨在包括复数形式。
将进一步理解的是,当在本说明书中使用术语“包括”、“包括有”、“包含”和“包含有”时,其说明所陈述元件的存在,并不排除一个或多个其它元件的存在或添加。如本文所使用的,术语“和/或”包括一个或多个相关所列项目的任何和全部组合。
除非另有定义,否则本文使用的包括技术术语和科学术语的所有术语具有与本发明所属领域的普通技术人员基于本公开所通常理解的含义相同的含义。将进一步理解的是,诸如在常用字典中定义的那些术语的术语应当被解释为具有与其在本公开和相关技术语境中的含义一致的含义,并且将不以理想化或过于正式的意义来解释,除非本文中明确地这样定义。
在下面的描述中,为了提供对本发明的全面理解,描述了大量具体细节。本发明可在没有一些或全部这些具体细节的情况下被实施。在其它情况下,没有详细地描述公知的进程结构和/或进程以避免不必要地模糊本发明。
还注意的是,在一些情况下,如对于相关领域的技术人员显而易见的是,除非另有明确说明,否则结合一个实施例所描述的特征或元件可单独使用或与另一个实施例的其它特征或元件组合使用。
图1是示出根据本发明的实施例的数据处理系统100的框图。
参照图1,数据处理系统100可以包括操作性地联接到存储器系统110的主机102。
主机102例如可以包括诸如移动电话、MP3播放器和膝上型计算机的便携式电子装置或诸如台式计算机、游戏机、TV、投影仪等的电子装置。
存储器系统110可以响应于来自主机102的请求而操作,并且特别地,存储待由主机102访问的数据。存储器系统可以用作主机102的主存储器系统或辅助存储器系统。根据主机接口的协议,存储器系统110可以利用可与主机102电联接的各种类型的存储装置中的任何一种来实施。合适的存储装置的示例包括:固态驱动器(SSD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、尺寸减小的MMC(RS-MMC)和微型MMC、安全数字(SD)卡、迷你SD和微型SD、通用串行总线(USB)存储装置、通用闪速存储(UFS)装置、标准闪存(CF)卡、智能媒体(SM)卡、记忆棒等。
用于存储器系统110的存储装置可以利用诸如动态随机存取存储器(DRAM)和静态RAM(SRAM)的易失性存储器装置以及诸如只读存储器(ROM)、掩膜ROM(MROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、铁电RAM(FRAM)、相变RAM(PRAM)、磁阻RAM(MRAM)、电阻式RAM(RRAM)和闪速存储器的非易失性存储器装置来实施。
存储器系统110可以包括存储待由主机102访问的数据的存储器装置150,以及可以控制数据在存储器装置150中的存储的控制器130。
控制器130和存储器装置150可集成到单个半导体装置中,单个半导体装置可被包括在如上所例示的各种类型的存储器系统中。
存储器系统110可被配置为以下的部分:计算机、超级移动PC(UMPC)、工作站、上网本、个人数字助理(PDA)、便携式计算机、网络平板、平板电脑、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(PMP)、便携式游戏机、导航系统、黑盒、数码照相机、数字多媒体广播(DMB)播放器、3D电视、智能电视、数字音频记录器、数字音频播放器、数字图片记录器、数字图片播放器、数字视频记录器、数字视频播放器、配置数据中心的存储装置、能够在无线环境下传输和接收信息的装置、配置家庭网络的各种电子装置之一、配置计算机网络的各种电子装置之一、配置远程信息处理网络的各种电子装置之一、无线射频识别(RFID)装置或配置计算系统的各种组成元件之一。
存储器装置150可以是非易失性存储器装置,并且即使不供给电力,也可以保留存储在其中的数据。存储器装置150可以通过写入操作来存储由主机102提供的数据,并且通过读取操作将存储在其中的数据提供给主机102。存储器装置150可以包括多个存储块152至156,存储块152至156中的每个可以包括多个页面,并且页面中的每个可以包括多个存储器单元,多个字线(WL)电联接到该多个存储器单元。
控制器130可以控制存储器装置150的诸如读取操作、写入操作、编程操作和擦除操作的整体操作。例如,存储器系统110的控制器130可以响应于来自主机102的请求来控制存储器装置150。控制器130可以将从存储器装置150读取的数据提供给主机102,和/或可以将由主机102提供的数据存储到存储器装置150中。
控制器130可包括主机接口(I/F)单元132、处理器134、错误校正码(ECC)单元138、电源管理单元(PMU)140、诸如NAND闪速控制器(NFC)142的存储器装置控制器142以及存储器144,其全部通过内部总线可操作性地联接。
主机接口单元132可处理由主机102提供的命令和数据,并可通过诸如以下的各种接口协议中的至少一种与主机102通信:通用串行总线(USB)、多媒体卡(MMC)、高速外围组件互连(PCI-E)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、串行高级技术附件(SATA)、并行高级技术附件(PATA)、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)以及电子集成驱动器(IDE)。
ECC单元138可检测并校正在读取操作期间从存储器装置150读取的数据中的错误。当错误位的数量大于或等于可校正错误位的阈值数量时,ECC单元138可以不校正错误位,并且可以输出表示校正错误位失败的错误校正失败信号。
ECC单元138可基于诸如以下的编码调制执行错误校正操作:低密度奇偶校验(LDPC)码、博斯-查德胡里-霍昆格姆(BCH)码、turbo码、里德-所罗门(RS)码、卷积码、递归系统码(RSC)、网格编码调制(TCM)、分组编码调制(BCM)等。ECC单元138可包括用于错误校正操作的所有单元、模块、系统或装置。
PMU 140可提供和管理用于控制器130的电源。
NFC 142可以用作控制器130和存储器装置150之间的存储器/存储接口以允许控制器130响应于来自主机102的请求来控制存储器装置150。当存储器装置150是闪速存储器时,并且特别地,当存储器装置150是NAND闪速存储器时,NFC 142可以在处理器134的控制下生成用于存储器装置150的控制信号并处理待提供给存储器装置150的数据。
存储器144可用作存储器系统110和控制器130的工作存储器,并且存储用于驱动存储器系统110和控制器130的数据。控制器130可响应于来自主机102的请求控制存储器装置150。控制器130可将从存储器装置150读取的数据提供给主机102并可将由主机102提供的数据存储到存储器装置150中。存储器144可存储控制器130和存储器装置150执行这些操作所需的数据。
存储器144可以包括用于存储用于多个处理器之间的通信的数据的邮箱(参见图5)。
存储器144可以利用易失性存储器来实施。存储器144可以利用静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)来实施。存储器144可以被设置在控制器130内或控制器130外。图1例示设置在控制器130内的存储器144。在实施例中,存储器144可以由具有在存储器144和控制器130之间传送数据的存储器接口的外部易失性存储器实施。
处理器134可以控制存储器系统110的总体操作。处理器134可以驱动被称为闪存转换层(FTL)的固件来控制存储器系统110的一般操作。
FTL可以在主机102和存储器装置150之间作为接口而执行操作。主机102可以通过FTL向存储器装置150请求写入操作和读取操作。
FTL可以管理地址映射操作、垃圾收集操作、磨损均衡操作等。特别地,FTL可以存储映射数据。因此,控制器130可以通过映射数据将由主机102提供的逻辑地址映射到存储器装置150的物理地址。由于地址映射操作,存储器装置150可以像普通装置那样执行操作。并且,通过基于映射数据的地址映射操作,当控制器130更新特定页面的数据时,由于闪速存储器装置的特性,控制器130可以将新数据编程到另一空页面并且可以使特定页面的旧数据无效。进一步地,控制器130可以将新数据的映射数据存储到FTL中。
进一步地,FTL可以在突然断电恢复(SPOR)操作期间重建映射数据。可以至少在异常断电之后的启动操作期间,执行SPOR操作。根据本发明的实施例,存储器系统的操作方法可以在异常断电后的启动期间重建映射数据。
处理器134可以利用微处理器或中央处理单元(CPU)来实施。存储器系统110可以包括一个或多个处理器134。
管理单元(未示出)可以被包括在处理器134中,并且可以执行存储器装置150的坏块管理。管理单元可以发现包括在存储器装置150中且对于进一步使用将产生不良状况的坏存储块,并且对坏存储块执行坏块管理。当存储器装置150是例如NAND闪速存储器的闪速存储器时,由于NAND逻辑功能的特性,在编程操作期间,例如在写入操作期间,可能发生编程失败。在坏块管理期间,编程失败的存储块或坏存储块的数据可以被编程到新存储块中。并且,由于编程失败导致的坏块会严重降低具有3D堆叠结构的存储器装置150的使用效率和存储器系统110的可靠性,因此需要可靠的坏块管理。
图2是示出存储器装置150的示例图。
参照图2,存储器装置150可以包括多个存储块BLOCK0至BLOCKN-1,并且块BLOCK0至BLOCKN-1中的每一个可以包括例如2M个页面的多个页面,其数量可以根据电路设计而变化。根据可以在每个存储器单元中存储或表示的位的数量,存储器装置150可以包括多个存储块作为单层单元(SLC)存储块和多层单元(MLC)存储块。SLC存储块可以包括由每一个能够存储1位数据的存储器单元实施的多个页面。MLC存储块可以包括由每一个能够存储例如两位或更多位数据的多位数据的存储器单元实施的多个页面。包括由每一个能够存储3位数据的存储器单元实施的多个页面的MLC存储块也可以被限定为三层单元(TLC)存储块。
多个存储块210至240中的每一个可以在写入操作期间存储由主机装置102提供的数据,并且可以在读取操作期间将存储的数据提供给主机102。
图3是示出存储器装置150中的存储块330的电路图。
参照图3,存储块330对应于多个存储块152至156中的任何一个。
参照图3,存储器装置150的存储块330可以包括分别电联接到位线BL0至BLm-1的多个单元串340。每个列的单元串340可以包括至少一个漏极选择晶体管DST和至少一个源极选择晶体管SST。多个存储器单元或多个存储器单元晶体管MC0至MCn-1可以串联地电联接在选择晶体管DST和SST之间。各个存储器单元MC0至MCn-1可以由每一个可以存储1位信息的单层单元(SLC)或由每一个可以存储多位数据信息的多层单元(MLC)配置。串340可以分别电联接到相应的位线BL0至BLm-1。作为参考,在图3中,“DSL”表示漏极选择线,“SSL”表示源极选择线,并且“CSL”表示共源线。
虽然图3作为示例仅示出由NAND闪速存储器单元配置的存储块152,但是应当注意的是,根据实施例的存储器装置150的存储块330不限于NAND闪速存储器,并且可以由NOR闪速存储器、组合至少两种存储器单元的混合闪速存储器或控制器内置在存储器芯片中的1-NAND闪速存储器实现。半导体装置的操作特性不仅可应用于电荷存储层由导电浮栅配置的闪速存储器装置而且可应用于电荷存储层由介电层配置的电荷撷取闪存(CTF)
存储器装置150的电压供给单元310可根据操作模式提供字线电压,例如编程电压、读取电压和通过电压以供给到各个字线,并且提供电压以供给到体材料(bulk),例如其中形成有存储器单元的阱区。电压供给单元310可以在控制单元(未示出)的控制下执行电压生成操作。电压供给单元310可生成多个可变读取电压以生成多个读取数据、在控制单元的控制下选择存储块或存储器单元阵列的扇区中的一个、选择被选择的存储块的字线中的一个并且将字线电压提供至选择的字线和未选择的字线。
存储器装置150的读取/写入单元320可以由控制单元控制,并且可以根据操作模式用作读出放大器或写入驱动器。在验证/正常读取操作期间,读取/写入单元320可以用作用于从存储器单元阵列读取数据的读出放大器。在编程操作期间,读取/写入单元320可用作根据待被存储在存储器单元阵列中的数据驱动位线的写入驱动器。在编程操作期间,读取/写入单元320可以从缓冲器(未示出)接收待存储到存储器单元阵列中的数据并且根据接收的数据来驱动位线。读取/写入单元320可以包括分别对应于列(或位线)或列对(或位线对)的多个页面缓冲器322至326,并且页面缓冲器322至326中的每一个可以包括多个锁存器(未示出)。
图4是示出存储器装置150的3D结构的示意图。
存储器装置150可通过2D或3D存储器装置来实施。具体地,如图4所示,存储器装置150可以由具有3D堆叠结构的非易失性存储器装置来实施。当存储器装置150具有3D结构时,存储器装置150可以包括每个具有3D结构(或竖直结构)的多个存储块BLK0至BLKN-1。
参照图1,主机102可以向控制器130发出读取命令或写入命令。控制器130可以控制存储装置顺序地执行对应于主机102发出的命令的操作。存储装置可以是存储器装置150中的页面或路径。在下文中,为了便于描述,仅描述路径。
在执行对应于命令的操作之前,可以优先执行检查某个路径的状态的操作,以执行对应于命令的操作。为了检查某个路径的状态,控制器130可以向路径发出读取状态检查命令。存储器装置150可以响应于状态检查命令向控制器130通知表示某个路径是就绪还是繁忙的某个路径的当前状态。可以周期性地执行这种状态检查。因此,控制器130可以控制存储器装置150执行状态检查操作以确定路径是处于就绪状态还是繁忙状态。
可以通过在短时间内处理输入/输出(I/O)操作作为状态检查操作来改进存储器系统110的性能。然而,当控制器130请求诸如交错路径的多种路径中的每一个的状态检查时,需要安排状态检查操作的顺序。具体地,当控制器130针对顺序数据来控制存储器装置时,每个路径的状态可以不同,并且因此控制器130针对顺序数据的读取性能可能降低。因此,在可能发生以上情形的情况下,本发明提出一种控制器130的操作方法。在下文中,参照图5至图8,将根据本发明的实施例描述控制器130的操作。
图5是示出根据本发明的实施例的控制器和存储器装置的结构的示意图。
参照图1和图5,控制器130包括主机接口单元132、处理器134和存储器接口单元142,并且可以进一步包括缓冲器510、RS设置单元530和RS执行单元550。
主机接口单元132处理由主机102提供和/或提供给主机102的命令和数据以用于在存储器系统110和主机102之间交换数据。
另外,为了使控制器130响应于来自主机102的请求而控制存储器装置150,存储器接口单元142可以执行控制器130与存储器装置150之间的接口连接。具体地,存储器接口单元142可以支持控制器130和存储器装置150之间的数据输入/输出,并且可以通过称为FTL的固件来驱动,以用于在控制器130和存储器装置150之间交换数据。
此外,处理器134可以控制存储器系统110的整体操作并且可以响应于来自主机102的写入请求或读取请求来控制存储器装置150的编程操作或读取操作。处理器134可以驱动被称为FTL的固件来控制存储器系统110的整体操作。固件可以管理主机102、控制器130和存储器装置150的操作以处理数据。具体地,固件可以从主机接收命令集并且将接收的命令集传送给存储器装置。
控制器130可以根据输入顺序将多个命令存储在缓冲器510中。进一步地,缓冲器510的结构可以具有环形缓冲器结构。环形缓冲器被构造为环的形式,使得缓冲器的尾部和头部连接,并且可以从存储在头部中的数据开始处理数据。
由于环形缓冲器的特性,当执行对应于顺序读取命令的读取操作时,由于即使当存储在缓冲器的尾部处的数据必须被处理时存储在头部中的数据仍然首先被处理,因此存储器系统的读取性能可能降低。例如,当主机102发出第一读取命令至第四读取命令时,如果缓冲器510是环形缓冲器结构,则可能存在以下可能性:第一读取命令和第二读取命令被存储在缓冲器的尾部中并且第三读取命令和第四读取命令可能存储在缓冲器的头部中。因此,控制器130可以在处理第三读取命令和第四读取命令之后处理第一读取命令和第二读取命令。因此,可能需要控制器130存储关于读取命令的顺序的信息。
RS(读取状态,RS)设置单元530可以存储待对多个路径中的每一个执行的状态检查操作的顺序信息。例如,当读取命令的顺序为‘0-1-2-3’时,RS设置单元530可以根据读取命令的顺序(即,依次的第一命令至第四命令)存储关于相应路径的状态检查操作的顺序信息。
RS执行单元550可以基于顺序信息来控制路径执行多个路径中的每一个的状态检查操作。然而,RS执行单元550可以不对共享一个通道的多个路径同时地执行状态检查操作。即,在第一路径的状态检查操作终止之后,RS执行单元550可以控制存储器装置150对第二路径执行状态检查操作。进一步地,在路径的状态检查操作完成之后,处理器134可以响应于命令来控制存储器装置150执行输入/输出(I/O)操作。
参照图5,存储器装置150可以包括用于在控制器130和存储器装置150之间传输命令和数据的控制器接口单元590,以及多个管芯。管芯中的每一个通过通道连接到控制器接口单元590,并且通道可以配置有多个路径。即,多个路径可以共享一个通道。例如,第零路径至第三路径可以共享第零通道。此外,多个路径可以连接到一个管芯。在下文中,控制器130对共享一个通道的多个路径执行状态检查操作。
图6A和图6B示出根据本发明的实施例的控制器130的操作。具体地,图6A和图6B是示出控制器130基于多个读取命令的输入顺序执行状态检查操作的时序图。
如上所述,主机102可以向控制器130发出多个读取命令并且将它们依次存储在缓冲器510中。
缓冲器510可以包括第零缓冲器至第n缓冲器。此时,控制器130可以将读取命令存储在第零缓冲器至第3缓冲器中。
基于发出的多个读取命令的顺序,RS设置单元530可以响应于读取命令来存储状态检查操作的顺序信息。
进一步地,RS执行单元550可以根据顺序信息控制存储器装置150对每一个路径执行状态检查操作。
控制器130可以从存储器装置150接收关于路径的状态的响应。如果某个路径的状态是“就绪”,则处理器134可以执行相应的输入/输出(I/O)操作。
在图6A至图7中,当路径就绪时,路径的时间线显示高状态,并且当路径繁忙时,路径的时间线显示低状态。
图6A是示出根据本发明的实施例的控制器130的操作的时序图。图6A是示出当多个命令是针对随机数据的命令时的控制器130的操作的时序图。
在下文中,为了便于描述,使用读取命令来描述本发明,但是本发明不限于此。
首先,控制器130可以控制存储器装置150对第零路径W0执行状态检查操作以执行第零读取命令的操作。
根据第一状态检查605,第零路径W0可能处于“繁忙”状态。控制器130可以控制存储器装置150对另一路径执行状态检查操作。即,控制器130可以控制存储器装置150在对第零路径W0执行状态检查操作之后对第一路径W1执行状态检查操作。
根据第二状态检查615,由于第一路径W1处于“繁忙”状态,因此控制器130可以接收“繁忙”响应。然后,控制器130可以控制存储器装置150对第二路径W2执行状态检查操作。
根据第三状态检查625,由于第二路径W2处于“繁忙”状态,因此控制器130可以接收“繁忙”响应。然后,控制器130可以控制存储器装置150对第三路径W3执行状态检查操作。
根据第四状态检查635,由于第三路径W3处于“繁忙”状态,因此控制器130可以接收“繁忙”响应。然后,控制器130可以控制存储器装置150再次对第零路径W0执行状态检查操作。
根据第五状态检查607,第零路径W0处于“就绪”状态。控制器130可以接收“就绪”响应。因此,处理器134可以响应于存储在第零缓冲器510中的读取命令来控制存储器装置150执行读取操作。
在第零路径W0中完成数据处理之后,控制器130可以控制存储器装置150对第一路径W1执行第六状态检查617。根据第六状态检查617,由于第一路径W1处于“繁忙”状态,因此控制器130可以接收“繁忙”响应。然后,控制器130可以控制存储器装置150对第二路径W2执行状态检查操作。
根据第七状态检查627,由于第二路径W2处于“繁忙”状态,因此控制器130可以接收“繁忙”响应。然后,控制器130可以控制存储器装置150对第三路径W3执行状态检查操作。
根据第八状态检查637,第三路径处于“就绪”状态。控制器130可以接收“就绪”响应。因此,处理器134可以响应于存储在第三缓冲器510中的命令来控制存储器装置150执行读取操作。
在第三路径中完成数据处理之后,控制器130可以控制存储器装置150对第一路径W1执行第九状态检查619。根据第九状态检查619,第一路径W1处于“就绪”状态。控制器130可以接收“就绪”响应。因此,处理器134可以响应于存储在第一缓冲器510中的命令来控制存储器装置150执行读取操作。
最后,在第一路径W1中完成数据处理之后,控制器130可以控制存储器装置150对第二路径W2执行第十状态检查629。根据第十状态检查629,第二路径W2处于“就绪”状态。控制器130可以接收“就绪”响应。因此,处理器134可以响应于存储在第二缓冲器510中的命令来控制存储器装置150执行读取操作。
图6B是示出根据本发明的另一实施例的控制器130的操作的时序图。具体地,图6B是示出当多个命令是针对顺序数据的命令时的控制器130的操作的时序图。
首先,RS执行单元550可以控制存储器装置150对第零路径W0执行状态检查操作以响应于第零读取命令执行读取操作。
根据第一状态检查601,第零路径W0可能处于“繁忙”状态。控制器130可以接收“繁忙”响应。然而,由于第零路径W0是最高优先级处理目标,因此RS执行单元550可以不控制存储器装置150对另一路径执行状态检查操作。因此,RS执行单元550可以控制存储器装置150对第零路径W0重复状态检查操作。根据第二状态检查603,由于第零路径处于“就绪”状态,因此控制器130可以接收“就绪”响应。然后,处理器134可控制存储器装置150执行对应于存储在第零缓冲器510中的命令的读取操作。
在第零路径W0中完成读取操作之后,RS执行单元550可以控制存储器装置150对第一路径W1执行状态检查操作以响应于第一读取命令执行读取操作。根据第三状态检查611,第一路径可能处于“繁忙”状态。控制器130可以接收“繁忙”响应。然而,由于第一路径W1是第零路径W0之后的最高优先级处理目标,因此RS执行单元550可以不对另一路径(例如,第二路径W2或第三路径W3)执行状态检查操作。因此,RS执行单元550可以控制存储器装置150对第一路径W1重复状态检查操作。根据第四状态检查613,由于第一路径处于“就绪”状态,因此控制器130可以接收“就绪”响应。然后,处理器134可以响应于存储在第一缓冲器510中的读取命令来控制存储器装置150执行读取操作。
在第一路径W1中完成读取操作之后,RS执行单元550可以控制存储器装置150对第二路径W2执行状态检查操作以响应于第二读取命令执行读取操作。根据第五状态检查621,由于第二路径W2处于“就绪”状态,因此控制器130可以接收“就绪”响应。然后,处理器134可以响应于存储在第二缓冲器510中的读取命令来控制存储器装置150执行读取操作。
在第二路径W2中完成读取操作之后,RS执行单元550可以控制存储器装置150对第三路径W3执行状态检查操作以响应于第三读取命令执行读取操作。根据第六状态检查631,由于第三路径处于“就绪”状态,因此控制器130可以接收“就绪”响应。然后,处理器134可以响应于存储在第三缓冲器510中的读取命令来控制存储器装置150执行读取操作。
参照数据处理过程,主机102可以依次顺序地发出多个读取命令,并且控制器130可以利用基于读取命令的顺序信息的状态检查操作来控制存储器装置150响应于读取命令依次处理数据。
图7是示出根据本发明的另一实施例的控制器130的操作的时序图。在下文中,为了便于描述,多个命令是针对随机数据的命令。
控制器130可以存储关于从主机102传输到存储器装置150的命令的信息。此外,命令信息可以包括对应于命令的各个路径的繁忙状态的持续时间信息。
RS设置单元530可以基于命令信息来确定多个路径中的每一个的繁忙状态的持续时间。进一步地,RS设置单元530可以比较不同路径之间的繁忙状态的持续时间。如上所述,多个命令可以被顺序地存储在缓冲器510中。然后,控制器130可以顺序地发出状态检查命令以根据存储在缓冲器510中的命令的顺序而在存储器装置150中执行输入/输出操作。在该情况下,RS设置单元530可以确定多个路径中的每一个的繁忙状态的持续时间。
RS执行单元550可以控制存储器装置150对路径执行状态检查操作,以确定路径的状态是“就绪”还是“繁忙”。如果路径的状态是“繁忙”,则RS执行单元550可以对另一路径执行状态检查操作。然而,如果某个路径的繁忙状态的持续时间较短,则RS设置单元530可以改变顺序信息以对某个路径优先地执行状态检查操作。因此,RS执行单元550可以不控制存储器装置150对另一路径执行状态检查操作,直到完成对具有优先级的某个路径的状态检查操作。
例如,根据对第一路径W1的第一状态检查701,第一路径W1处于“繁忙”状态。此后,可以对第零路径W0执行第二状态检查703。
根据对第零路径W0的第二状态检查703,第零路径W0处于“繁忙”状态。
在该情况下,RS设置单元530可以确定第零路径W0的“繁忙”状态可以从时间点t0持续到时间点t1,并且第一路径W1的“繁忙”状态可以从时间点t0持续到时间点t2。即,RS设置单元530可以检测第一路径W1的“繁忙”状态的持续时间比第零路径W0的“繁忙”状态的持续时间长“t2-t1”的量。
根据本发明的实施例,基于关于繁忙状态的持续时间的确定,RS设置单元530可以改变顺序信息,使得优先对第零路径W0的状态检查操作,而不是对第一路径W1的状态检查操作。即,由于第零路径W0的繁忙状态的持续时间比第一路径W1的繁忙状态的持续时间短,因此RS执行单元550可以对第零路径W0而不是对第一路径W1执行第三状态检查705。
进一步地,根据第零路径W0的第三状态检查705,由于第零路径W0处于“就绪”状态,因此处理器134可以控制存储器装置150执行相应的输入/输出(I/O)操作。并且,RS执行单元550可以在操作完成之后对第一路径W1执行状态检查操作。
图8是示出根据本发明的另一实施例的控制器130的操作的流程图。
在步骤S801处,控制器130可以控制存储器装置150执行对应于主机102的请求的输入/输出(I/O)操作。例如,主机102可以向控制器130发出写入命令,并且控制器130可以响应于写入命令来控制存储器装置150执行写入操作。即,可以在存储器装置150中执行写入操作。
在步骤S803处,在步骤S801中描述的输入/输出(I/O)操作期间,为存储器系统110的高效数据处理而可能存在优先于当前正在执行的输入/输出(I/O)操作的待执行的输入/输出(I/O)操作。
例如,由于写入操作所需的时间比读取操作所需的时间相对较长,因此可能需要在写入操作期间重新调整顺序以优先执行读取操作。因此,RS设置单元530可以存储顺序信息,使得RS可以具有优先于对应于读取操作而不是写入操作的状态检查操作的优先级。
如果不存在优先于当前正在执行的输入/输出(I/O)操作的待执行的输入/输出(I/O)操作(在步骤S803中为否),则控制器130可以继续执行正在执行的输入/输出(I/O)操作。
然而,如果存在优先于当前正在执行的输入/输出(I/O)操作的待执行的输入/输出(I/O)操作(在步骤S803中为是),则RS执行单元550可以在步骤S805处临时中断当前执行的输入/输出(I/O)操作并且执行对应于优先于当前正在执行的输入/输出(I/O)操作的待执行的输入/输出(I/O)操作的状态检查操作。例如,RS执行单元550可以临时中断当前执行的写入操作并且执行对应于优先于当前执行的写入操作的待执行的读取操作的状态检查操作。
在步骤S807处,RS执行单元550可以控制存储器装置150对对应于待优先执行的输入/输出(I/O)操作的路径执行状态检查操作。
如果路径的状态不处于“就绪”(在步骤S807中为否),则处理器134可以控制存储器装置150继续执行临时中断的输入/输出(I/O)操作。
然而,如果路径的状态处于“就绪”(在步骤S807中为是),则在完成状态检查操作之后,在步骤S809处,处理器134可以控制存储器装置150执行待优先执行的相应的输入/输出(I/O)操作。虽然在附图中未示出,但是在步骤S809中执行的输入/输出(I/O)操作完成之后,处理器134可以使存储器装置150执行临时中断的输入/输出(I/O)操作。
因此,RS执行单元550可以在写入操作或读取操作期间执行状态检查操作。
如上所述,固件仅用于将来自主机102的命令集传送到存储器装置150,并且控制器130,即,硬件可以控制状态检查操作。因此,控制器130可以根据命令集控制存储器装置150执行状态检查操作。即,可以通过根据存储的顺序信息而不仅仅是根据存储器装置150的输入/输出(I/O)状态来执行状态检查操作以提高存储器系统110的性能,。
在下文中,图9至图17是示意性示出根据各个实施例的图1至图8的数据处理系统的应用示例的示图。
图9是示意性示出包括根据本实施例的存储器系统的数据处理系统的另一示例的示图。图9示意性示出应用了根据本实施例的存储器系统的存储卡系统。
参照图9,存储卡系统6100可包括存储器控制器6120、存储器装置6130和连接器6110。
更具体地,存储器控制器6120可被连接到通过非易失性存储器实施的存储器装置6130,并被配置为访问存储器装置6130。例如,存储器控制器6120可被配置为控制存储器装置6130的读取操作、写入操作、擦除操作和后台操作。存储器控制器6120可被配置为提供存储器装置6130和主机之间的接口并驱动用于控制存储器装置6130的固件。也就是说,存储器控制器6120可对应于参照图1至图8描述的存储器系统110的控制器130,并且存储器装置6130可对应于参照图1至图8描述的存储器系统110的存储器装置150。
因此,存储器控制器6120可包括RAM、处理单元、主机接口、存储器接口和错误校正单元。存储器控制器130可以进一步包括图1中所述的元件。
存储器控制器6120可通过连接器6110与例如图1的主机102的外部装置通信。例如,如参照图1所述,存储器控制器6120可被配置为通过诸如以下的各种通信协议中的一种或多种与外部装置通信:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCIe)、高级技术附件(ATA)、串行ATA,并行ATA、小型计算机系统接口(SCSI)、增强型小型磁盘接口(EDSI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、WI-FI以及蓝牙等。因此,根据本实施例的存储器系统和数据处理系统可应用于有线/无线电子装置,或者特别是应用于移动电子装置。
存储器装置6130可通过非易失性存储器来实施。例如,存储器装置6130可通过诸如以下的各种非易失性存储器装置来实施:可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、NAND闪速存储器、NOR闪速存储器、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)以及自旋转移力矩磁性RAM(STT-MRAM)。存储器装置6130可以包括如图1的存储器装置150中的多个管芯。
存储器控制器6120和存储器装置6130可集成到单个半导体装置中。例如,存储器控制器6120和存储器装置6130可通过集成到单个半导体装置中来构造固态硬盘(SSD)。此外,存储器控制器6120和存储器装置6130可构成存储卡,诸如PC卡(PCMCIA:个人计算机存储卡国际协会)、标准闪存(CF)卡、智能媒体卡(例如,SM和SMC)、记忆棒、多媒体卡(例如,MMC、RS-MMC、微型MMC和eMMC)、SD卡(例如,SD、迷你SD、微型SD和SDHC)以及通用闪速存储装置(UFS)。
图10是示意性示出包括根据本实施例的存储器系统的数据处理系统的另一示例的示图。
参照图10,数据处理系统6200可包括具有一个或多个非易失性存储器的存储器装置6230和用于控制存储器装置6230的存储器控制器6220。如图10所示的数据处理系统6200可作为如参照图1所描述的诸如存储卡(CF、SD、微型-SD等)或USB装置的存储介质。存储器装置6230可对应于图1至图8所描述的存储器系统110中的存储器装置150,并且存储器控制器6220可对应于图1至图8所描述的存储器系统110中的控制器130。
存储器控制器6220可响应于主机6210的请求来控制对存储器装置6230的读取操作、写入操作或擦除操作,并且存储器控制器6220可包括一个或多个CPU 6221、诸如RAM6222的缓冲存储器、ECC单元6223、主机接口6224以及诸如NVM接口6225的存储器接口。
CPU 6221可控制对存储器装置6230的操作,例如读取操作、写入操作、文件系统管理和坏页面管理操作。RAM 6222可根据CPU 6221的控制来操作且用作工作存储器、缓冲存储器或高速缓冲存储器。当RAM 6222用作工作存储器时,通过CPU 6221处理的数据可被临时存储在RAM 6222中。当RAM 6222用作缓冲存储器时,RAM 6222可用于缓冲从主机6210传输到存储器装置6230的数据或从存储器装置6230传输到主机6210的数据。当RAM 6222用作高速缓冲存储器时,RAM 6222可辅助低速存储器装置6230以高速运行。
ECC单元6223可对应于图1所示的ECC单元138。如参照图1所述,ECC单元6223可生成用于校正从存储器装置6230提供的数据的失效位或错误位的ECC(错误校正码)。ECC单元6223可对提供给存储器装置6230的数据执行错误校正编码,从而形成具有奇偶校验位的数据。奇偶校验位可被存储在存储器装置6230中。ECC单元6223可对从存储器装置6230输出的数据执行错误校正解码。此时,ECC单元6223可使用奇偶校验位来校正错误。例如,如参照图1所述,ECC单元6223可使用LDPC码、BCH码、turbo码、里德-所罗门(RS)码、卷积码、RSC或诸如TCM或BCM的编码调制来校正错误。
存储器控制器6220可通过主机接口6224向主机6210传输数据/从主机6210接收数据,并通过NVM接口6225向存储器装置6230传输数据/从存储器装置6230接收数据。主机接口6224可通过PATA总线、SATA总线、SCSI、USB、PCIe或NAND接口连接到主机6210。存储器控制器6220可具有使用诸如WiFi或长期演进(LTE)的移动通信协议的无线通信功能。存储器控制器6220可连接到外部装置,例如主机6210或另一个外部装置,然后向外部装置传输数据/从外部装置接收数据。特别地,由于存储器控制器6220被配置为通过各种通信协议中的一种或多种与外部装置进行通信,因此根据本实施例的存储器系统和数据处理系统可应用于有线/无线电子装置或特别是移动电子装置。
图11是示意性示出包括根据本实施例的存储器系统的数据处理系统的另一示例的示图。图11示意性示出应用了根据本实施例的存储器系统的SSD。
参照图11,SSD 6300可包括控制器6320和包括多个非易失性存储器的存储器装置6340。控制器6320可对应于图1的存储器系统110中的控制器130,并且存储器装置6340可对应于图1的存储器系统中的存储器装置150。
更具体地,控制器6320可通过多个通道CH1至CHi连接到存储器装置6340。控制器6320可包括一个或多个处理器6321、缓冲存储器6325、ECC单元6322、主机接口6324以及例如非易失性存储器接口6326的存储器接口。
缓冲存储器6325可临时存储由主机6310提供的数据或从包括在存储器装置6340中的多个闪速存储器NVM提供的数据,或者临时存储多个闪速存储器NVM的元数据,例如,包括映射表的映射数据。缓冲存储器6325可通过诸如DRAM、SDRAM、DDR SDRAM、LPDDR SDRAM和GRAM的易失性存储器或诸如FRAM、ReRAM、STT-MRAM和PRAM的非易失性存储器来实施。为便于描述,图11示出了缓冲存储器6325存在于控制器6320内部。然而,缓冲存储器6325可存在于控制器6320外部。
ECC单元6322可在编程操作期间计算待被编程到存储器装置6340的数据的ECC值,在读取操作期间基于ECC值对从存储器装置6340读取的数据执行错误校正操作,并在失效数据恢复操作期间对从存储器装置6340恢复的数据执行错误校正操作。
主机接口6324可提供与诸如主机6310的外部装置的接口功能,并且非易失性存储器接口6326可提供与通过多个通道连接的存储器装置6340的接口功能。
此外,可提供应用图1的存储器系统110的多个SSD 6300来实现数据处理系统,例如,RAID(独立磁盘冗余阵列)系统。此时,RAID系统可包括多个SSD 6300和用于控制多个SSD 6300的RAID控制器。当RAID控制器响应于由主机6310提供的写入命令执行编程操作时,RAID控制器可根据多个RAID级别,即,从SSD 6300中的主机6310提供的写入命令的RAID级别信息,来选择一个或多个存储器系统或SSD6300,并将对应于写入命令的数据输出到选择的SSD 6300。此外,当RAID控制器响应于由主机6310提供的读取命令执行读取命令时,RAID控制器可根据多个RAID级别,即,从SSD 6300中的主机6310提供的读取命令的RAID级别信息,来选择一个或多个存储器系统或SSD6300,并将从所选择的SSD 6300读取的数据提供给主机6310。
图12是示意性示出包括根据本实施例的存储器系统的数据处理系统的另一示例的示图。图12示意性示出应用根据本实施例的存储器系统的嵌入式多媒体卡(eMMC)。
参照图12,eMMC 6400可包括控制器6430和通过一个或多个NAND闪速存储器实施的存储器装置6440。控制器6430可对应于图1的存储器系统110中的控制器130,并且存储器装置6440可对应于图1的存储器系统110中的存储器装置150。
更具体地,控制器6430可通过多个通道连接到存储器装置6440。控制器6430可包括一个或多个内核6432、主机接口6431和诸如NAND接口6433的存储器接口。
内核6432可控制eMMC6400的操作,主机接口6431可提供控制器6430和主机6410之间的接口功能,并且NAND接口6433可提供存储器装置6440和控制器6430之间的接口功能。例如,主机接口6431可作为并行接口,例如参照图1所描述的MMC接口。此外,主机接口6431可作为串行接口,例如UHS((超高速)-I/UHS-II)接口。
图13至图16是示意性示出包括根据实施例的存储器系统的数据处理系统的其它示例的示图。图12至图15示意性地示出应用根据实施例的存储器系统的UFS(通用闪存)系统。
参照图13至图16,UFS系统6500、6600、6700和6800可分别包括主机6510、6610、6710和6810,UFS装置6520、6620、6720和6820以及UFS卡6530、6630、6730和6830。主机6510、6610、6710和6810可用作有线/无线电子装置或特别是移动电子装置的应用处理器,UFS装置6520、6620、6720和6820可用作嵌入式UFS装置,并且UFS卡6530、6630、6730和6830可用作外部嵌入式UFS装置或可移动UFS卡。
在各个UFS系统6500、6600、6700和6800中的主机6510、6610、6710和6810,UFS装置6520、6620、6720和6820以及UFS卡6530、6630、6730和6830可通过UFS协议与例如有线/无线电子装置或特别是移动电子装置的外部装置通信,并且UFS装置6520、6620、6720和6820以及UFS卡6530、6630、6730和6830可由图1所示的存储器系统110来实现。例如,在UFS系统6500、6600、6700和6800中,UFS装置6520、6620、6720和6820可以参照图9至图11描述的数据处理系统6200、SSD 6300或eMMC 6400的形式来实施,并且UFS卡6530、6630、6730和6830可以参照图9描述的存储卡系统6100的形式来实施。
另外,在UFS系统6500、6600、6700和6800中,主机6510、6610、6710和6810,UFS装置6520、6620、6720和6820以及UFS卡6530、6630、6730和6830可通过UFS接口,例如,MIPI(移动工业处理器接口)中的MIPI M-PHY和MIPI UniPro(统一协议)来彼此通信。此外,UFS装置6520、6620、6720和6820与UFS卡6530、6630、6730和6830可通过UFS协议以外的各种协议,例如,UFD、MMC、SD、迷你-SD和微型-SD彼此通信。
在图13所示的UFS系统6500中,主机6510、UFS装置6520以及UFS卡6530中的每一个可包括UniPro。主机6510可执行交换操作,以便与UFS装置6520和UFS卡6530通信。特别地,主机6510可通过诸如UniPro处的L3交换的链路层交换与UFS装置6520或UFS卡6530通信。此时,UFS装置6520和UFS卡6530可通过主机6510的UniPro处的链路层交换来彼此通信。在本实施例中,为便于描述,已经例示了其中一个UFS装置6520和一个UFS卡6530连接到主机6510的配置。然而,多个UFS装置和UFS卡可并联或以星型形式连接到主机6410,并且多个UFS卡可并联或以星型形式连接到UFS装置6520,或者串联或以链型形式连接到UFS装置6520。
在图14所示的UFS系统6600中,主机6610、UFS装置6620和UFS卡6630中的每一个可包括UniPro,并且主机6610可通过执行交换操作的交换模块6640,例如,通过在UniPro处执行链路层交换(例如L3交换)的交换模块6640,来与UFS装置6620或UFS卡6630通信。UFS装置6620和UFS卡6630可通过在UniPro处的交换模块6640的链路层交换来彼此通信。在本实施例中,为便于描述,已经例示了其中一个UFS装置6620和一个UFS卡6630连接到交换模块6640的配置。然而,多个UFS装置和UFS卡可并联或以星型形式连接到交换模块6640,并且多个UFS卡可串联或以链型形式连接到UFS装置6620。
在图15所示的UFS系统6700中,主机6710、UFS装置6720和UFS卡6730中的每一个可包括UniPro,并且主机6710可通过执行交换操作的交换模块6740,例如,通过在UniPro处执行链路层交换(例如L3交换)的交换模块6740,来与UFS装置6720或UFS卡6730通信。此时,UFS装置6720和UFS卡6730可通过在UniPro处的交换模块6740的链路层交换来彼此通信,并且交换模块6740可在UFS装置6720内部或外部与UFS装置6720集成为一个模块。在本实施例中,为便于描述,已经例示了其中一个UFS装置6720和一个UFS卡6730连接到交换模块6740的配置。然而,每一个包括交换模块6740和UFS装置6720的多个模块可并联或以星型形式连接到主机6710,或者串联或以链型形式彼此连接。此外,多个UFS卡可并联或以星型形式连接到UFS装置6720。
在图16所示的UFS系统6800中,主机6810、UFS装置6820和UFS卡6830中的每一个可包括M-PHY和UniPro。UFS装置6820可执行交换操作以便与主机6810和UFS卡6830通信。特别地,UFS装置6820可通过用于与主机6810通信的M-PHY和UniPro模块之间的交换操作和用于与UFS卡6830通信的M-PHY和UniPro模块之间的交换操作,例如通过目标ID(标识符)交换操作,来与主机6810或UFS卡6830通信。此时,主机6810和UFS卡6830可通过UFS装置6820的M-PHY和UniPro模块之中的目标ID交换来彼此通信。在本实施例中,为便于描述,已经例示了其中一个UFS装置6820连接到主机6810,一个UFS卡6830连接到UFS装置6820的配置。然而,多个UFS装置可并联或以星型形式连接到主机6810或串联或以链型形式连接到主机6810,并且多个UFS卡可并联或以星型形式连接到UFS装置6820或串联或以链型形式连接到UFS装置6820。
图17是示意性地示出包括根据实施例的存储器系统的数据处理系统的另一示例的示图。图17是示意性地示出应用根据实施例的存储器系统的用户系统的示图。
参照图17,用户系统6900可包括应用处理器6930、存储器模块6920、网络模块6940、存储模块6950和用户接口6910。
更具体地,应用处理器6930可驱动包括在用户系统6900中的诸如OS的部件,并且包括控制包括在用户系统6900中的部件的控制器、接口和图形引擎。应用处理器6930可作为片上系统(SoC)被提供。
存储器模块6920可用作用户系统6900的主存储器、工作存储器、缓冲存储器或高速缓冲存储器。存储器模块6920可包括诸如DRAM、SDRAM、DDR SDRAM、DDR2SDRAM、DDR3SDRAM、LPDDR SDARM、LPDDR3SDRAM或LPDDR3SDRAM的易失性RAM,或诸如PRAM、ReRAM、MRAM或FRAM的非易失性RAM。例如,可基于POP(堆叠封装)来封装并安装应用处理器6930和存储器模块6920。
网络模块6940可与外部装置通信。例如,网络模块6940不仅可支持有线通信,而且可支持各种无线通信协议,诸如码分多址(CDMA)、全球移动通信系统(GSM)、宽带CDMA(WCDMA)、CDMA-2000、时分多址(TDMA)、长期演进(LTE)、全球微波接入互操作性(WiMAX)、无线局域网(WLAN)、超宽带(UWB)、蓝牙、无线显示器(WI-DI)等,因此与有线/无线电子装置或特别是移动电子装置通信。因此,根据本发明的实施例的存储器系统和数据处理系统可应用于有线/无线电子装置。网络模块6940可被包括在应用处理器6930中。
存储模块6950可存储数据,例如从应用处理器6930接收的数据,然后可将所存储的数据传输到应用处理器6930。存储模块6950可通过诸如相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(ReRAM)、NAND闪存、NOR闪存和3D NAND闪存的非易失性半导体存储器装置来实施,并且可被提供为诸如用户系统6900的存储卡或外部驱动器的可移动存储介质。存储模块6950可对应于参照图1描述的存储器系统110。此外,存储模块6950可被实施为如上参照图9至图16所述的SSD、eMMC和UFS。
用户接口6910可包括用于向应用处理器6930输入数据或命令或者用于将数据输出到外部装置的接口。例如,用户接口6910可包括诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、摄像机、麦克风、陀螺仪传感器、振动传感器和压电元件的用户输入接口,以及诸如液晶显示器(LCD)、有机发光二极管(OLED)显示装置、有源矩阵OLED(AMOLED)显示装置、LED、扬声器和监控器的用户输出接口。
此外,当图1的存储器系统110被应用于用户系统6900的移动电子装置时,应用处理器6930可以控制移动电子装置的操作,并且网络模块6940可以用作用于控制与外部装置的有线/无线通信的通信模块。用户接口6910可在移动电子装置的显示/触摸模块上显示通过处理器6930处理的数据,或支持从触摸面板接收数据的功能。
虽然已经针对具体实施例描述本发明,但是对于本领域技术人员显而易见的是,在不脱离如下权利要求中限定的本发明的精神和范围的情况下,可以进行各种改变和变型。

Claims (21)

1.一种控制器,其包括:
缓冲器,用于根据输入顺序存储多个命令;
设置单元,用于设置待对各个存储装置执行的对应于所述多个命令的读取状态检查操作的顺序信息,其中所述存储装置被包括在存储器装置中;
执行单元,用于控制所述存储器装置基于所述顺序信息顺序地执行所述读取状态检查操作;以及
处理器,用于基于所述读取状态检查操作的结果控制所述存储器装置响应于所述多个命令来执行命令操作。
2.根据权利要求1所述的控制器,其中所述缓冲器具有环形缓冲器结构。
3.根据权利要求1所述的控制器,
其中当所述多个命令是针对顺序数据的命令时,所述设置单元将所述顺序信息设置为与针对所述顺序数据的命令的输入顺序相同,并且
其中所述执行单元控制所述存储装置对每个存储装置重复地执行状态检查,直到在所述存储装置中的每一个中执行的命令操作完成为止。
4.根据权利要求3所述的控制器,其中在完成先前命令的命令操作之后,所述执行单元根据所述顺序信息控制所述存储器装置执行对应于后续命令的读取状态检查操作。
5.根据权利要求1所述的控制器,
其中当所述多个命令是针对随机数据的命令时,所述设置单元将所述顺序信息设置为与针对所述随机数据的命令的输入顺序相同,并且
其中所述执行单元控制所述存储器装置对所述存储装置交替地执行所述读取状态检查操作,直到对所述存储装置的命令操作完成为止。
6.根据权利要求5所述的控制器,
其中当根据对所述存储装置中的每一个执行所述读取状态检查操作的结果,确定一个或多个存储装置繁忙时,所述设置单元基于命令信息来改变所述顺序信息,并且
其中所述命令信息包括所述存储装置对应于相应命令的繁忙状态的预定持续时间信息。
7.根据权利要求6所述的控制器,
其中所述设置单元基于所述命令信息将对应于先前命令的持续时间信息与对应于后续命令的持续时间信息进行比较并且改变所述顺序信息,从而优先地控制所述存储器装置执行对应于具有较短时间的所述后续命令的读取状态检查操作,并且
其中所述执行单元控制所述存储器装置基于所改变的顺序信息顺序地执行所述读取状态检查操作。
8.根据权利要求1所述的控制器,
其中当后续命令是读取命令并且在响应于先前写入命令而正在执行写入操作时发出时,所述设置单元改变所述顺序信息以首先对所述存储装置执行对应于所述读取命令的读取状态检查操作,
其中所述执行单元控制所述存储器装置中断所述写入操作并且执行对应于所述读取命令的读取状态检查操作,并且
其中所述处理器基于相应的存储装置的状态来控制所述存储器装置执行对应于所述读取命令的读取操作。
9.根据权利要求8所述的控制器,其中在所述读取操作完成之后,所述处理器控制所述存储器装置恢复所中断的写入操作。
10.根据权利要求1所述的控制器,其中所述存储装置包括所述存储器装置的路径。
11.一种控制器的操作方法,其包括:
第一步骤,根据多个命令的输入顺序将所述多个命令存储在缓冲器中;
第二步骤,存储待对存储器装置的多个存储装置中的每一个执行的对应于所述多个命令中的每一个的读取状态检查操作的顺序信息;
第三步骤,控制所述存储器装置基于所述顺序信息对所述存储装置顺序地执行所述读取状态检查操作;以及
第四步骤,基于所述读取状态检查操作的结果控制所述存储器装置响应于所述多个命令来执行命令操作。
12.根据权利要求11所述的操作方法,其中所述缓冲器具有环形缓冲器结构。
13.根据权利要求11所述的操作方法,
其中所述第二步骤当所述多个命令是针对顺序数据的命令时,存储顺序与针对所述顺序数据的命令的输入顺序相同的所述顺序信息,并且
其中所述第三步骤控制所述存储装置对每个存储装置重复地执行所述读取状态检查操作,直到在所述存储装置中的每一个中执行的命令操作完成为止。
14.根据权利要求13所述的操作方法,其中所述第三步骤在完成针对先前命令的命令操作之后,根据所述顺序信息控制所述存储器装置执行后续命令的读取状态检查操作。
15.根据权利要求11所述的操作方法,
其中所述第二步骤当所述多个命令是针对随机数据的命令时,将所述顺序信息设置为与针对所述随机数据的命令的输入顺序相同,并且
其中所述第三步骤控制所述存储器装置对所述存储装置交替地执行所述读取状态检查操作,直到对所述存储装置的命令操作完成为止。
16.根据权利要求15所述的操作方法,
进一步包括第五步骤,当根据对所述存储装置中的每一个执行所述读取状态检查操作的结果,确定一个或多个存储装置繁忙时,基于命令信息来改变所述顺序信息,并且
其中所述命令信息包括所述存储装置对应于相应命令的繁忙状态的预定持续时间信息。
17.根据权利要求16所述的操作方法,
其中所述第五步骤基于所述命令信息将对应于先前命令的持续时间信息与对应于后续命令的持续时间信息进行比较并且改变所述顺序信息,从而优先地控制所述存储器装置执行对应于具有较短时间的所述后续命令的读取状态检查操作,并且
所述操作方法进一步包括第六步骤,控制所述存储器装置基于所改变的顺序信息顺序地执行所述读取状态检查操作。
18.根据权利要求11所述的操作方法,
其中所述第二步骤当后续命令是读取命令并且在响应于先前写入命令而正在执行写入操作时发出时,改变所述顺序信息以首先对所述存储装置执行对应于所述读取命令的读取状态检查操作,
其中所述第三步骤控制所述存储器装置中断所述写入操作并且执行对应于所述读取命令的读取状态检查操作,并且
其中所述第四步骤基于相应的存储装置的状态来控制所述存储器装置执行对应于所述读取命令的读取操作。
19.根据权利要求18所述的操作方法,其进一步包括第五步骤,在所述读取操作完成之后,控制所述存储器装置恢复所中断的写入操作。
20.根据权利要求11所述的操作方法,其中所述存储装置包括所述存储器装置的路径。
21.一种存储器系统,其包括:
存储器装置,其包括多个存储装置;以及
控制器,其适于:
响应于命令的有序序列,对所述存储装置执行分别对应于所述命令的有序序列的状态检查操作的有序序列;以及
根据所述状态检查操作的结果,执行分别对应于所述命令的多个命令操作,
其中执行所述状态检查操作的有序序列包括重复对应于下一个命令的状态检查操作,直到完成当前命令操作为止。
CN201810606013.1A 2017-10-11 2018-06-13 用于控制一个或多个存储器装置的控制器及其操作方法 Pending CN109656469A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170129778A KR20190040598A (ko) 2017-10-11 2017-10-11 컨트롤러 및 컨트롤러의 동작방법
KR10-2017-0129778 2017-10-11

Publications (1)

Publication Number Publication Date
CN109656469A true CN109656469A (zh) 2019-04-19

Family

ID=65993185

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810606013.1A Pending CN109656469A (zh) 2017-10-11 2018-06-13 用于控制一个或多个存储器装置的控制器及其操作方法

Country Status (3)

Country Link
US (1) US20190107945A1 (zh)
KR (1) KR20190040598A (zh)
CN (1) CN109656469A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113836236A (zh) * 2021-09-29 2021-12-24 支付宝(杭州)信息技术有限公司 交易执行方法、区块链节点及其计算设备和主机

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11144635B2 (en) * 2018-11-06 2021-10-12 International Business Machines Corporation Restricted command set management in a data storage system
KR20220010303A (ko) * 2020-07-17 2022-01-25 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
TWI800777B (zh) * 2020-12-15 2023-05-01 宏碁股份有限公司 溫度控制方法與資料儲存系統
CN113056790B (zh) * 2021-01-27 2023-11-10 长江存储科技有限责任公司 用于异步多面独立(ampi)存储读取操作的方法和系统
CN114115739B (zh) * 2021-11-25 2023-11-07 群联电子股份有限公司 存储器管理方法、存储器存储装置及存储器控制电路单元

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150363342A1 (en) * 2014-06-13 2015-12-17 Sandisk Technologies Inc. Storage Module and Method for Determining Ready/Busy Status of a Plurality of Memory Dies
CN106294229A (zh) * 2010-11-16 2017-01-04 美光科技公司 串行接口存储器中的同时读取与写入存储器操作
CN106933506A (zh) * 2015-12-29 2017-07-07 爱思开海力士有限公司 存储器系统及存储器系统的操作方法
CN107240418A (zh) * 2016-03-28 2017-10-10 爱思开海力士有限公司 存储器系统及其操作方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3851865B2 (ja) * 2001-12-19 2006-11-29 株式会社東芝 半導体集積回路
US7054980B2 (en) * 2002-05-02 2006-05-30 Standard Microsystems Corporation Multiple drive controller
KR101293365B1 (ko) * 2005-09-30 2013-08-05 모사이드 테크놀로지스 인코퍼레이티드 출력 제어 메모리
US7652922B2 (en) * 2005-09-30 2010-01-26 Mosaid Technologies Incorporated Multiple independent serial link memory
JP2011164994A (ja) * 2010-02-10 2011-08-25 Toshiba Corp メモリシステム
JP2014063555A (ja) * 2012-09-24 2014-04-10 Toshiba Corp 不揮発性半導体記憶装置、及びその制御方法
KR102114112B1 (ko) * 2013-11-19 2020-05-22 에스케이하이닉스 주식회사 데이터 저장 장치
US9606738B2 (en) * 2014-03-10 2017-03-28 Kabushiki Kaisha Toshiba Memory system with a bridge part provided between a memory and a controller
US10037167B2 (en) * 2015-09-11 2018-07-31 Sandisk Technologies Llc Multiple scheduling schemes for handling read requests

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106294229A (zh) * 2010-11-16 2017-01-04 美光科技公司 串行接口存储器中的同时读取与写入存储器操作
US20150363342A1 (en) * 2014-06-13 2015-12-17 Sandisk Technologies Inc. Storage Module and Method for Determining Ready/Busy Status of a Plurality of Memory Dies
CN106933506A (zh) * 2015-12-29 2017-07-07 爱思开海力士有限公司 存储器系统及存储器系统的操作方法
CN107240418A (zh) * 2016-03-28 2017-10-10 爱思开海力士有限公司 存储器系统及其操作方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113836236A (zh) * 2021-09-29 2021-12-24 支付宝(杭州)信息技术有限公司 交易执行方法、区块链节点及其计算设备和主机

Also Published As

Publication number Publication date
KR20190040598A (ko) 2019-04-19
US20190107945A1 (en) 2019-04-11

Similar Documents

Publication Publication Date Title
CN108304141A (zh) 存储器系统及其操作方法
CN107643985A (zh) 存储器系统及其操作方法
CN110244907A (zh) 存储器系统及该存储器系统的操作方法
CN109144408A (zh) 存储器系统及其操作方法
CN107562649A (zh) 存储器系统及其操作方法
CN109947358A (zh) 存储器系统及其操作方法
CN107622019A (zh) 存储器系统及其操作方法
CN109656469A (zh) 用于控制一个或多个存储器装置的控制器及其操作方法
CN109284202A (zh) 控制器及其操作方法
CN109426449A (zh) 存储器系统及其操作方法
CN109521947A (zh) 存储器系统以及存储器系统的操作方法
CN109656837A (zh) 存储器系统及其操作方法
CN110473582A (zh) 存储器系统及其操作方法
CN108268212A (zh) 控制器及操作方法
CN107591182A (zh) 存储器系统及其操作方法
CN110347330A (zh) 存储器系统及其操作方法
CN108388525A (zh) 存储器系统及其操作方法
CN108932203A (zh) 数据处理系统和数据处理方法
CN110322920A (zh) 控制器及控制器的操作方法
CN108074613A (zh) 存储器系统及其操作方法
CN110058797A (zh) 存储器系统及其操作方法
CN110457230A (zh) 存储器系统及其操作方法
CN109390003A (zh) 存储器系统及其操作方法
CN110321069A (zh) 存储器系统及其操作方法
CN109271328A (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: 20190419

WD01 Invention patent application deemed withdrawn after publication