CN110364196A - 存储器系统及其操作方法 - Google Patents

存储器系统及其操作方法 Download PDF

Info

Publication number
CN110364196A
CN110364196A CN201811289270.3A CN201811289270A CN110364196A CN 110364196 A CN110364196 A CN 110364196A CN 201811289270 A CN201811289270 A CN 201811289270A CN 110364196 A CN110364196 A CN 110364196A
Authority
CN
China
Prior art keywords
data
write
controller
buffer
order
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.)
Withdrawn
Application number
CN201811289270.3A
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 CN110364196A publication Critical patent/CN110364196A/zh
Withdrawn 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0614Improving the reliability of storage systems
    • 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/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/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/04Arrangements for selecting an address in a digital store using a sequential addressing device, e.g. shift register, counter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor

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)
  • Microelectronics & Electronic Packaging (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明提供一种存储器系统及其操作方法。该存储器系统包括:存储器控制器,对从主机接收的命令进行排队,并顺序地输出排队的命令;控制器缓冲存储器,临时存储对应于命令的写入数据,并且在存储器控制器的控制下输出被临时存储的写入数据;以及非易失性存储器装置,响应于从存储器控制器输出的命令和从控制器缓冲存储器输出的写入数据来执行操作,并且当完成了操作时向存储器控制器输出操作完成信号,其中当从主机接收到清除命令时,存储器控制器释放被临时存储在控制器缓冲存储器中的写入数据。

Description

存储器系统及其操作方法
相关申请的交叉引用
本申请要求于2018年3月26日提交的申请号为10-2018-0034671的韩国专利申请的优先权,其全部公开内容通过引用整体并入本文。
技术领域
本发明的各个示例性实施例总体涉及一种存储器系统及其操作方法。特别地,实施例涉及一种能够改善写入操作性能的存储器系统和该存储器系统的操作方法。
背景技术
计算机环境范例已经向能够随时随地使用计算机系统的普适计算转变。因此,诸如移动电话、数码相机及膝上型计算机等便携式电子装置的使用已经快速增加。通常,这些便携式电子装置可包括使用存储器装置的存储器系统,即数据存储装置。数据存储装置用作便携式电子装置的主存储器装置或辅助存储器装置。
因为没有机械驱动部件,所以使用存储器装置的数据存储装置具有优异的稳定性和耐用性、高信息存取速度以及低功耗。在具有这种优点的存储器系统的示例中,数据存储装置包括通用串行总线(USB)存储器装置、具有各种接口的存储卡、固态驱动器(SSD)等。
发明内容
实施例提供了一种能够在其清除操作期间将命令的数据存储在控制器缓冲存储器中的存储器系统及该存储器系统的操作方法。
根据本公开的一个方面,提供了一种存储器系统,包括:存储器控制器,对从主机接收的命令进行排队,并顺序地输出排队的命令;控制器缓冲存储器,临时存储对应于命令的写入数据,并且在存储器控制器的控制下输出被临时存储的写入数据;以及非易失性存储器装置,响应于从存储器控制器输出的命令和从控制器缓冲存储器输出的写入数据来执行操作,并且当完成了操作时向存储器控制器输出操作完成信号,其中当从主机接收到清除命令时,存储器控制器释放被临时存储在控制器缓冲存储器中的写入数据。
根据本公开的另一方面,提供了一种存储器系统,包括:存储器控制器,从主机接收命令和对应于命令的写入数据,对接收的命令进行排队,并输出排队的命令和写入数据;以及非易失性存储器装置,响应于从存储器控制器输出的命令和写入数据来执行操作,并且当完成了操作时向存储器控制器输出操作完成信号,其中当接收到清除命令时,存储器控制器在将写入数据传输到非易失性存储器装置之后释放被临时存储的写入数据。
根据本公开的又一方面,提供了一种用于操作存储器系统的方法,该方法包括:将从主机接收的命令进行排队,并且将对应于命令的写入数据临时存储在控制器缓冲存储器中;通过将排队的命令和存储在控制器缓冲存储器中的写入数据传输到非易失性存储器装置来执行操作;当从主机接收到清除命令时,将清除命令排队在排队的命令之后,并且释放被临时存储在控制器缓冲存储器中的写入数据;并且将在接收到清除命令之后从主机接收的新命令排队在清除命令之后,并且将对应于新命令的新写入数据临时存储在释放了写入数据的控制器缓冲存储器中。
根据本公开的一个方面,提供了一种存储器系统,包括:存储器装置,包括存储器单元阵列;缓冲器;以及控制器:以先进先出(FIFO)为基础对命令进行排队;将对应于排队的命令的数据缓冲在缓冲器中;并且通过向存储器装置提供排队的命令和被缓冲的数据来控制存储器装置以对存储器单元阵列执行操作,其中在对清除命令进行排队的时间点处,控制器进一步:通过优先向存储器装置提供被缓冲的数据来清理(clear)缓冲器;并且通过向存储器装置提供被排队在清除命令之前的命令来控制存储器装置利用优先提供的数据来执行操作。
附图说明
现在在下文中,将参照附图更详细地描述示例性实施例;然而,这些实施例可以不同的形式来实施,并且不应被解释为限于本文阐述的实施例。相反地,提供这些实施例以使本公开将是彻底且完整的,并且将示例性实施例的范围充分传达给本领域的技术人员。
在附图中,为了说明清楚,可夸大附图的尺寸。将理解的是,当元件被称为在两个元件“之间”时,其可以是这两个元件之间的唯一元件,或者也可存在一个或多个中间元件。相同的附图标记始终表示相同的元件。
图1是示出根据本公开的实施例的存储器系统的示图。
图2是示出图1的存储器控制器的示图。
图3是示出根据本公开的另一实施例的存储器系统的示图。
图4是示出图1的非易失性存储器装置的示图。
图5是示出图4的存储块的示图。
图6是描述根据本公开的实施例的存储器系统的操作方法的流程图。
图7A至图7D是用于示出根据本公开的实施例的存储器系统的操作方法的命令队列和存储器缓冲器或缓冲存储器装置的示图。
图8是示出存储器系统的实施例的示图。
图9是示出存储器系统的实施例的示图。
图10是示出存储器系统的实施例的示图。
图11是示出存储器系统的实施例的示图。
具体实施方式
出于描述根据本公开的构思的实施例的目的,本文公开的具体结构或功能描述仅是说明性的。根据本公开的构思的实施例可以各种形式来实施,并且不能被解释为限于本文阐述的实施例。
根据本公开的构思的实施例可进行各种修改并具有各种形状。因此,这些实施例在附图中示出,并且旨在本文中进行详细描述。然而,根据本公开的构思的实施例不被解释为限于特定公开,并且包括不脱离本公开的精神和技术范围的所有改变、等同方案或替代方案。
虽然诸如“第一”和“第二”的术语可用于描述各个部件,但这些部件不应被理解为限于上述术语。上述术语仅用于将一个部件与另一个部件区分开。例如,在不脱离本公开的权利范围的情况下,第一部件可被称为第二部件,同样,第二部件也可被称为第一部件。
将理解的是,当一个元件被称为“连接”或“联接”至另一元件时,它可直接连接或联接至其它元件,或也可存在中间元件。相反地,当元件被称为“直接连接”或“直接联接”到另一元件时,不存在中间元件。同时,可类似地解释诸如“之间”、“直接介于”或“邻近”和“直接邻近”等描述部件之间关系的其它表达。
本申请中使用的术语仅用于描述特定实施例,并不旨在限制本公开。除非上下文另有明确说明,否则本公开中的单数形式也旨在包括复数形式,反之亦然。将进一步理解的是,诸如“包括”或“具有”等术语旨在表示存在本说明书中公开的特征、数字、操作、动作、组件、部件或其组合,并且不旨在排除可能存在或可能添加一个或多个其它特征、数字、操作、动作、组件、部件或其组合的可能性。
除非另有明确说明,否则本文所使用的包括技术或科学术语的所有术语都具有本公开所属领域的技术人员通常理解的含义。具有字典中限定的定义的术语应当被理解为具有与相关技术语境下一致的含义。除非本申请中另有明确说明,否则不应当以理想或过于形式化的方式来理解术语。
在描述这些实施例时,将省略对本公开所属领域公知的并且与本公开没有直接关联的技术的各种描述。本公开通过省略不必要的描述旨在更清楚地公开本公开的主旨。
注意的是,对“实施例”的参考不一定表示仅针对一个实施例,并且对“实施例”的不同参考不一定针对相同的实施例。
在下文中,将参照附图详细地描述本公开的示例性实施例,以使本领域技术人员能够容易地实施本公开的技术精神。
图1是示出根据本公开的实施例的存储器系统1000的示图。
参照图1,存储器系统1000可包括:非易失性存储器装置1100,即使在断电时也保持所存储的数据;缓冲存储器装置1300,其用于临时存储数据;以及存储器控制器1200,其用于在主机2000的控制下控制非易失性存储器装置1100和缓冲存储器装置1300。
主机2000可使用诸如以下的各种通信方式中的至少一种来与存储器系统1000通信:通用串行总线(USB)、串行AT附件(SATA)、高速芯片间(HSIC)、小型计算机系统接口(SCSI)、火线、外围组件互连(PCI)、高速PCI(PCI-e或PCIe)、高速非易失性存储器(NVMe)、通用闪存(UFS)、安全数字(SD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、双列直插式存储器模块(DIMM)、寄存式DIMM(RDIMM)以及低负载DIMM(LRDIMM)等。
存储器控制器1200可控制存储器系统1000的全部操作,并且控制主机2000与非易失性存储器装置1100之间的数据交换。例如,存储器控制器1200可响应于从主机2000接收的命令,控制非易失性存储器装置1100执行读取操作、写入操作、擦除操作和后台操作。而且,当从主机2000接收到清除命令时,存储器控制器1200可检查是否响应于在接收到清除命令之前接收到的命令在非易失性存储器装置1100中已经完全执行了操作,并且向主机2000输出对应于清除命令的响应信号。在一些实施例中,非易失性存储器装置1100可包括闪速存储器。
存储器控制器1200可控制主机2000与缓冲存储器装置1300之间的数据交换,或者将用于控制非易失性存储器装置1100的系统数据临时存储在缓冲存储器装置1300中。缓冲存储器装置1300可用作存储器控制器1200的工作存储器、高速缓冲存储器或缓冲存储器。缓冲存储器装置1300可存储由存储器控制器1200执行的代码和命令。而且,缓冲存储器装置1300可存储由存储器控制器1200处理的数据。
存储器控制器1200可将从主机2000输入的数据临时存储在缓冲存储器装置1300中,并且然后将被临时存储在缓冲存储器装置1300中的数据传输到非易失性存储器装置1100,以存储在非易失性存储器装置1100中。而且,存储器控制器1200可接收从主机2000输入的数据和逻辑地址,并且将该逻辑地址转换成指示数据待被实际存储在非易失性存储器装置1100中的区域的物理地址。而且,存储器控制器1200可将逻辑到物理地址映射表存储在缓冲存储器1300中,逻辑到物理地址映射表建立了逻辑地址与物理地址之间的映射关系。
在一些实施例中,缓冲存储器装置1300可包括双倍数据速率同步动态随机存取存储器(DDR SDRAM)、低功率双倍数据速率4(LPDDR4)SDRAM、图形双倍数据速率(GDDR)SDRAM、低功率DDR(LPDDR)、Rambus动态随机存取存储器(RDRAM)等。
在一些实施例中,存储器系统1000可不包括缓冲存储器装置1300。
根据本公开的实施例的存储器控制器1200基于从主机2000接收的命令的优先级顺序来对这些命令进行排队,并且将与命令一起从主机2000接收的数据(例如,写入数据)临时存储在缓冲存储器装置1300中或存储器控制器1200中的存储器缓冲器中。此后,将排队的命令和与排队的命令相对应的数据传输到非易失性存储器装置1100。当非易失性存储器装置1100完成了与接收到的命令相对应的操作时,可释放被临时存储在缓冲存储器装置1300或存储器缓冲器中的数据。当从主机2000接收到清除命令时,存储器控制器1200执行清除操作。清除操作确保完成了响应于在清除命令之前接收的命令的操作。存储器控制器1200优先处理响应于在清除命令之前接收的命令的操作。当响应于在清除命令之前接收的命令而成功地完成了操作时,存储器控制器1200可输出对应于清除命令的响应信号。在清除操作中,存储器控制器1200可控制将被临时存储在缓冲存储器装置1300或存储器缓冲器中的数据输出到非易失性存储器装置1100,并且然后控制将被临时存储在缓冲存储器装置1300或存储器缓冲器中的数据在非易失性存储器装置1100响应于接收到的命令完成操作之前释放。存储器控制器1200可将与在接收到清除命令之后输入的新命令相对应的新数据存储在缓冲存储器装置1300或存储器缓冲器中。
图2是示出图1的存储器控制器1200的示图。
参照图2,存储器控制器1200可包括处理器310、存储器缓冲器320、错误校正码(ECC)电路330、缓冲存储器接口340、主机接口350、缓冲器控制电路360、闪存接口370、数据随机化发生器380和总线390。
总线390可被配置成提供存储器控制器1200的部件之间的通道。
处理器310可控制存储器控制器1200的全部操作并且执行逻辑操作。处理器310可通过主机接口350与图1的外部主机2000通信,并且通过闪存接口370与图1的非易失性存储器装置1100通信。而且,处理器310可通过缓冲存储器接口340与图1的缓冲存储器装置1300通信。而且,处理器310可通过缓冲器控制电路360来控制存储器缓冲器320。处理器310可通过将存储器缓冲器320用作工作存储器、高速缓冲存储器或缓冲存储器来控制存储器系统1000的操作。
处理器310可通过基于从主机2000输入的多个命令的优先级顺序对这些命令进行排队来生成命令队列。这种操作被称为多队列。处理器310可将多个排队的命令顺序地传输到非易失性存储器装置1100,并控制非易失性存储器装置1100以响应于接收到的命令执行全部操作(例如,读取操作、写入操作或擦除操作)。而且,当从主机2000接收到清除命令时,处理器310可在接收到清除命令之前接收到的命令全部被传输到非易失性存储器装置1100使得响应于命令已经完全执行了操作时生成并输出对应于清除命令的响应信号。处理器310可根据从非易失性存储器装置1100接收的操作完成信号来确定是否响应于命令已经完成了一般操作。
存储器缓冲器320可用作处理器310的工作存储器、高速缓冲存储器或缓冲存储器。存储器缓冲器320可存储由处理器310执行的代码和命令。存储器缓冲器320可存储由处理器310处理的数据。存储器缓冲器320可包括静态RAM(SRAM)或动态RAM(DRAM)。存储器缓冲器320可存储配置有由处理器310排队的多个命令的命令队列,并且用作写入缓冲器来存储从主机2000接收的数据。
ECC电路330可执行错误校正。ECC电路330可对待通过闪存接口370被写入非易失性存储器装置1100中的数据执行ECC编码。经ECC编码的数据可通过闪存接口370传递到非易失性存储器装置1100。ECC电路330可对通过闪存接口370从非易失性存储器装置1100接收的数据执行ECC解码。在示例中,ECC电路330可作为闪存接口370的部件而被包括在闪存接口370中。
缓冲存储器接口340可被配置成在处理器310的控制下与缓冲存储器装置1300通信。缓冲存储器接口340可通过信道与缓冲存储器装置1300通信命令、地址和数据。
主机接口350被配置成在处理器310的控制下与外部主机2000通信。主机接口350可被配置成使用诸如以下各种通信方式中的至少一种来与主机2000通信:通用串行总线(USB)、串行AT附件(SATA)、高速芯片间(HSIC)、小型计算机系统接口(SCSI)、火线、外围组件互连(PCI)、高速PCI(PCIe)、高速非易失性存储器(NVMe)、通用闪存(UFS)、安全数字(SD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、双列直插式存储器模块(DIMM)、寄存式DIMM(RDIMM)以及低负载DIMM(LRDIMM)。
缓冲器控制电路360被配置成在处理器310的控制下控制存储器缓冲器320。
闪存接口370被配置成在处理器310的控制下与非易失性存储器装置1100通信。闪存接口370可通过信道与非易失性存储器装置1100通信命令、地址和数据。
虽然作为示例图2示出了存储器控制器1200包括存储器缓冲器320和缓冲器控制电路360,但本发明不限于此。也就是说,可单独设置存储器缓冲器320和缓冲器控制电路360,并且存储器控制器1200可不包括存储器缓冲器320和缓冲器控制电路360。
在示例中,处理器310可使用代码来控制存储器控制器1200的操作。处理器310可从设置在存储器控制器1200中的非易失性存储器装置(例如,只读存储器(ROM))加载代码。在另一示例中,处理器310可通过闪存接口370从非易失性存储器装置1100加载代码。
数据随机化发生器380可对数据进行随机化或对被随机化的数据进行去随机化。数据随机化发生器380可对待通过闪存接口370被写入非易失性存储器装置1100中的数据执行数据随机化操作。随机化的数据可通过闪存接口370传输到非易失性存储器装置1100。数据随机化发生器380可对通过闪存接口370从非易失性存储器装置1100接收的数据执行数据去随机化操作。在示例中,数据随机化发生器380可作为闪存接口370的部件而被包括在闪存接口370中。
在示例中,存储器控制器1200的总线390可被划分成控制总线和数据总线。数据总线可被配置成在存储器控制器1200中传输数据,并且控制总线可被配置成在存储器控制器1200中传输诸如命令和地址的控制信息。数据总线和控制总线彼此分离,并且不会彼此干扰或影响。数据总线可联接到主机接口350、缓冲器控制电路360、ECC电路330、闪存接口370和缓冲存储器接口340。控制总线可联接到主机接口350、处理器310、缓冲器控制电路360、闪存接口370和缓冲存储器接口340。在一些实施例中,存储器控制器1200可不包括缓冲存储器接口340。
存储器系统1000可从主机2000接收写入命令、写入数据和逻辑地址。存储器控制器1200可响应于写入命令而分配将存储写入数据的物理存储空间,即非易失性存储器装置1100中的存储块或页面。换言之,存储器控制器1200可响应于写入命令映射与逻辑地址相对应的物理地址。物理地址可被称为闪存逻辑地址,以区别于主机物理地址。物理地址可以是与非易失性存储器装置1100的、将存储从主机2000输入的写入数据的物理存储空间相对应的地址。
存储器系统1000可将逻辑地址与物理地址之间的映射信息,即物理到逻辑地址映射信息存储在非易失性存储器装置1100的存储块中。存储物理到逻辑地址映射信息的存储块可被称为系统块。
当存储器系统1000启动时,存储在非易失性存储器装置1100中的逻辑到物理地址映射信息可被加载到缓冲存储器装置1300或存储器缓冲器320。而且,当需要检查存储在非易失性存储器装置1100中的逻辑到物理地址映射信息时,存储器系统1000可从非易失性存储器装置1100读取逻辑到物理地址映射信息,并将读取的逻辑到物理地址映射信息存储在缓冲存储器装置1300或存储器缓冲器320中。缓冲存储器装置1300或存储器缓冲器320可被统称为控制器缓冲存储器。
在另一示例中,当存储器系统1000从主机2000接收写入命令、写入数据和逻辑地址时,存储器控制器1200可响应于写入命令而分配非易失性存储器装置1100的、将存储写入数据的物理存储空间。也就是说,存储器控制器1200可响应于写入命令映射与逻辑地址相对应的物理地址。新生成的逻辑地址和物理地址之间的映射信息,即物理到逻辑地址映射信息可被更新到缓冲存储器装置1300或存储器缓冲器320中。如上所述,指示非易失性存储器装置1100中的数据存储空间的物理地址可被称为闪存物理地址。
存储器系统1000可从主机2000接收读取命令和逻辑地址。存储器系统1000可响应于读取命令,从存储在非易失性存储器装置1100中的逻辑到物理地址映射信息中检查与逻辑地址相对应的物理地址,读取存储在与物理地址相对应的存储器区域中的数据,并且将读取的数据输出到主机2000。
处理器310可包括主机控制器311、闪存控制器312和闪存转换部件313。
主机控制器311可控制主机2000与主机接口350和控制器缓冲存储器即存储器缓冲器320或缓冲存储器装置1300之间的数据传输。在示例中,主机控制器311可控制操作:通过主机接口350将从主机2000输入的写入数据缓冲到存储器缓冲器320或缓冲存储器装置1300。在另一示例中,主机控制器311可控制操作:通过主机接口350将被缓冲到存储器缓冲器320或缓冲存储器装置1300的读取数据输出到主机2000。
闪存控制器312可在写入操作中向非易失性存储器装置1100传输写入命令,并且通过向非易失性存储器装置1100传输被缓冲到存储器缓冲器320或缓冲存储器装置1300的写入数据来控制写入操作。在示例中,在写入数据被传输到非易失性存储器装置1100之后,被缓冲到存储器缓冲器320或缓冲存储器装置1300的写入数据被临时存储在存储器缓冲器320或缓冲存储器装置1300中。这是为了当在非易失性存储器装置的写入操作中发生错误时,使用被缓冲到存储器缓冲器320或缓冲存储器装置1300的写入数据来重新执行发生错误的写入操作。当从主机2000接收到清除命令时,闪存控制器312可将被缓冲到存储器缓冲器320或缓冲存储器装置1300的数据传输到非易失性存储器装置1100,并且释放被临时存储在存储器缓冲器320或缓冲存储器装置1300中的所有写入数据。因此,可确保存储器缓冲器320或缓冲存储器装置1300的存储空间,并且可将在接收到清除命令之后从主机2000新接收的写入数据存储在存储器缓冲器320或缓冲存储器装置1300中。
在另一示例中,闪存控制器312可控制操作:将在读取操作中从非易失性存储器装置读取和输出的读取数据缓冲到存储器缓冲器320或缓冲存储器装置1300。
在数据写入操作中,闪存转换部件313可映射与从主机2000输入的逻辑地址相对应的物理地址。可将数据写入非易失性存储器装置1100的、与映射的物理地址相对应的存储空间中。在数据写入操作中,闪存转换部件313可检查被映射到从主机2000输入的逻辑地址的物理地址,并且将该物理地址传输到闪存控制器312。闪存控制器312可从非易失性存储器装置1100的、与该物理地址相对应的存储空间读取数据。指示非易失性存储器装置1100的存储空间的物理地址可被称为闪存物理地址,以区别于主机物理地址。
图3是示出根据本公开的另一实施例的存储器系统1000的示图。具体地,图3示出了包括多个非易失性存储器装置1100的存储器系统1000,该多个非易失性存储器装置1100通过多个信道CH1至CHk联接到存储器控制器1200。
参照图3,存储器控制器1200可通过多个信道CH1至CHk与多个非易失性存储器装置1100通信。存储器控制器1200可包括多个信道接口1201,并且多个信道CH1至CHk中的每一个可联接到多个信道接口1201中的任何一个。在示例中,第一信道CH1可联接到第一信道接口1201,第二信道CH2可联接到第二信道接口1201,并且第k信道CHk可联接到第k信道接口1201。多个信道CH1至CHk中的每一个可联接到一个或多个非易失性存储器装置1100。另外,联接到不同信道的非易失性存储器装置1100可彼此独立地进行操作。换言之,联接到第一信道CH1的非易失性存储器装置1100和联接到第二信道CH2的非易失性存储器装置1100可彼此独立地进行操作。在示例中,存储器控制器1200可在通过第一信道CH1与联接到第一信道CH1的非易失性存储器装置1100通信数据或命令的同时,并行地通过第二信道CH2与联接到第二信道CH2的非易失性存储器装置1100通信数据或命令。
多个信道CH1至CHk中的每一个可联接到多个非易失性存储器装置1100。联接到一个信道的多个非易失性存储器装置1100可构成不同的路Way。在示例中,N个非易失性存储器装置1100可联接到一个信道,并且构成不同的路。也就是说,第一至第N非易失性存储器装置1100可联接到第一信道CH1,第一非易失性存储器装置1100可构成第一路Way1,第二非易失性存储器装置1100可构成第二路Way2,并且第N非易失性存储器装置1100可构成第N路WayN。另外,两个或多个非易失性存储器装置1100可构成一个路Way。
因为联接到第一信道CH1的第一至第N非易失性存储器装置1100共用第一信道CH1,因此第一至第N非易失性存储器装置1100不能同时与存储器控制器1200通信数据或命令,而是可顺序地与存储器控制器1200通信数据或命令。换言之,当存储器控制器1200通过第一信道CH1向构成第一信道CH1的第一路Way1的第一非易失性存储器装置1100传输数据时,构成第一信道CH1的第二路Way2至第N路WayN的第二至第N非易失性存储器装置1100不能通过第一信道CH1与存储器控制器1200通信数据或命令。换言之,当共用第一信道CH1的第一至第N非易失性存储器装置1100中的任何一个正占用第一信道CH1时,联接到第一信道CH1的其它非易失性存储器装置1100不能使用第一信道CH1。
构成第一信道CH1的第一路Way1的第一非易失性存储器装置1100和构成第二信道CH2的第一路的第一非易失性存储器装置1100可独立地与存储器控制器1200通信。换言之,当存储器控制器1200通过第一信道CH1和第一信道接口1201与构成第一信道CH1的第一路Way1的第一非易失性存储器装置1100通信数据时,存储器控制器1200可同时地通过第二信道和第二信道接口1201与构成第二信道CH2的第一路Way1的第一非易失性存储器装置1100通信数据。
图4是示出图1的非易失性存储器装置1100的示图。
参照图4,非易失性存储器装置1100可包括用于存储数据的存储器单元阵列100。非易失性存储器装置1100可包括外围电路200,其被配置成执行用于将数据存储在存储器单元阵列100中的写入操作、用于输出所存储的数据的读取操作和用于擦除所存储的数据的擦除操作。非易失性存储器装置1100可包括控制逻辑300,其用于在图1的存储器控制器1200的控制下控制外围电路200。
存储器单元阵列100可包括多个存储块BLK1至BLKm(m为正整数)110。局部线LL和位线BL1至BLn(n为正整数)可联接到存储块BLK1至BLKm 110。例如,局部线LL可包括第一选择线、第二选择线以及布置在第一选择线和第二选择线之间的多个字线。而且,局部线LL可进一步包括布置在第一选择线和字线之间以及布置在第二选择线和字线之间的虚设(dummy)线。第一选择线可以是源极选择线,并且第二选择线可以是漏极选择线。例如,局部线LL可包括字线、漏极选择线、源极选择线以及源极线SL。例如,局部线LL可进一步包括虚设线。例如,局部线LL可进一步包括管线。局部线LL可分别联接到存储块BLK1至BLKm 110,并且位线BL1至BLn可共同联接到存储块BLK1至BLKm 110。存储块BLK1至BLKm 110可以二维或三维结构来实施。例如,在具有二维结构的存储块110中可在平行于衬底的方向上来布置存储器单元。例如,在具有三维结构的存储块110中可在垂直于衬底的方向上来布置存储器单元。
外围电路200可被配置成在控制逻辑300的控制下对所选择存储块110执行写入操作、读取操作和擦除操作。例如,在控制逻辑300的控制下,外围电路200可将验证和通过电压施加给第一选择线、第二选择线和字线,选择性地使第一选择线、第二选择线和字线放电,并且验证与字线之中的所选择字线联接的存储器单元。例如,外围电路200可包括电压生成电路210、行解码器220、页面缓冲器组230、列解码器240、输入/输出电路250和感测电路260。
电压生成电路210可响应于操作信号OP_CMD而生成用于编程操作、读取操作和擦除操作的各种操作电压Vop。而且,电压生成电路210可响应于操作信号OP_CMD而选择性地使局部线LL放电。例如,在控制逻辑300的控制下,电压生成电路210可生成编程电压、验证电压、通过电压、导通电压、读取电压、擦除电压、源极线电压等。
行解码器220可响应于行地址RADD将操作电压Vop传递到与所选择存储块110联接的局部线LL。
页面缓冲器组230可包括联接到位线BL1至BLn的多个页面缓冲器PB1至PBn 231。页面缓冲器PB1至PBn 231可响应于页面缓冲器控制信号PBSIGNALS进行操作。例如,页面缓冲器PB1至PBn 231通过输入/输出电路250和列解码器240接收在写入操作中从外部接收的写入数据DATA以将写入数据DATA临时存储在其中,并且根据被临时存储的写入数据DATA来调整相应位线BL1至BLn的电位电平。而且,在读取操作或验证操作中,页面缓冲器PB1至PBn231可感测位线BL1至BLn的电压或电流。
列解码器240可响应于列地址CADD在输入/输出电路250和页面缓冲器组230之间传递数据。例如,列解码器240可通过数据线DL与页面缓冲器231交换数据,或者可通过列线CL与输入/输出电路250交换数据。
输入/输出电路250可将从图1的存储器控制器1200接收的内部命令CMD和地址ADD传递到控制逻辑300,或者与列解码器240交换数据DATA。
在读取操作和验证操作中,感测电路260可响应于允许位VRY_BIT<#>生成参考电流,并且通过将从页面缓冲器组230接收的感测电压VPB与由参考电流产生的参考电压进行比较来输出通过信号PASS或失败信号FAIL。
控制逻辑300可响应于内部命令CMD和地址ADD通过输出操作信号OP_CMD、行地址RADD、页面缓冲器控制信号PBSIGNALS和许可位VRY_BIT<#>来控制外围电路200。而且,控制逻辑300可响应于通过信号PASS或失败信号FAIL来确定验证操作已经通过还是失败。
在非易失性存储器装置1100的操作中,每一个存储块110可以是擦除操作的单位。换言之,包括在存储块110中的多个存储器单元被同时擦除,并且不可被选择性地擦除。
当控制逻辑300正常地从外部接收命令CMD并完成操作,例如完成对应于命令CMD的写入操作、读取操作或擦除操作时,控制逻辑300可输出操作完成信号CMD_confirm。从控制逻辑300输出的操作完成信号CMD_confirm可通过输入/输出电路250输出到图1的存储器控制器1200。
当写入操作中发生错误时,非易失性存储器装置1100可通过从图1的缓冲存储器装置1300或图1的存储器缓冲器320新接收写入数据DATA来重新执行写入操作。可通过选择新的存储块(BLK1至BLKm中的任何一个)来执行写入操作。
而且,在因为从图1的主机2000接收到清除命令而在执行清除操作期间,当写入操作中出现错误时,非易失性存储器装置1100可将被临时存储在页面缓冲器组230中的写入数据DATA输出到图1的存储器控制器1200,并且通过新接收由存储器控制器1200校正了错误的写入数据DATA来重新执行写入操作。可通过选择新的存储块(BLK1至BLKm中的任何一个)来执行写入操作。
图5是示出图4的多个存储块BLK1至BLKm 110中的任何一个存储块的示图。
参照图5,彼此平行地布置在第一选择线和第二选择线之间的多个字线可联接到第一存储块110。第一选择线可以是源极选择线SSL,并且第二选择线可以是漏极选择线DSL。更具体地,第一存储块110可包括联接在位线BL1至BLn与源极线SL之间的多个串ST。位线BL1至BLn可分别联接到串ST,并且源极线SL可共同联接到串ST。串ST可彼此相同地配置,因此,将作为示例详细描述联接到第一位线BL1的串ST。
串ST可包括彼此串联联接在源极线SL和第一位线BL1之间的源极选择晶体管SST、多个存储器单元F1至F16以及漏极选择晶体管DST。一个串ST可包括至少一个源极选择晶体管SST和至少一个漏极选择晶体管DST,并且一个串ST可包括数量大于附图所示的存储器单元F1至F16的数量的存储器单元。
源极选择晶体管SST的源极可联接到源极线SL,并且漏极选择晶体管DST的漏极可联接到第一位线BL1。存储器单元F1至F16可串联联接在源极选择晶体管SST和漏极选择晶体管DST之间。包括在不同串ST中的源极选择晶体管SST的栅极可联接到源极选择线SSL,包括在不同串ST中的漏极选择晶体管DST的栅极可联接到漏极选择线DSL,并且包括在不同串ST中的存储器单元F1至F16的栅极可联接到多个字线WL1至WL16。包括在不同串ST中的存储器单元之中联接到相同字线的一组存储器单元可以是物理页面PPG。因此,第一存储块110可包括数量对应于字线WL1至WL16的的数量的物理页面PPG。
一个存储器单元MC可存储一位的数据。这通常被称为单层单元(SLC)。一个物理页面PPG可存储一个逻辑页面(LPG)数据。一个LPG数据可包括数量对应于一个物理页面PPG中包括的单元数量的数据位。另外,一个存储器单元MC可存储两位或更多位数据。这通常被称为多层单元(MLC)。一个物理页面PPG可存储两个或更多个LPG数据。
当存储器单元存储两位数据时,一个物理页面PPG可包括两个页面PG。一个页面PG可存储一个LPG数据。根据数据,一个存储器单元可具有多个阈值电压中的任何一个,并且包括在一个物理页面PPG中的多个页面PG可用阈值电压的差来表示。
包括在一个物理页面PPG中的多个存储器单元可被同时编程。换言之,非易失性存储器装置1100可以物理页面PPG为单位执行编程操作。包括在一个存储块中的多个存储器单元可被同时擦除。换言之,非易失性存储器装置1100可以存储块110为单位执行擦除操作。例如,为了更新存储在一个存储块110中的数据的一部分,在通过读取存储在存储块110中的整个数据来修改整个数据之中需要更新的数据之后,整个数据可再次被编程到另一存储块110中。
图6是描述根据本公开的实施例的存储器系统1000的操作方法的流程图。
图7A至图7D是示出根据本公开的实施例的存储器系统1000的操作方法的命令队列和存储器缓冲器320或缓冲存储器装置1300的示图。
在本公开的实施例中,为便于说明,将作为示例描述以下情况:从主机2000连续接收到多个写入命令和清除命令,并且在接收到清除命令之后随后接收到写入命令。
在步骤S610中,将命令和对应于命令的数据从主机2000输入到存储器控制器1200。
存储器控制器1200的处理器310确定接收到的命令是对应于写入操作、读取操作或擦除操作的命令,还是对应于清除命令的命令。当接收到的命令是对应于写入操作、读取操作或擦除操作的命令时,在步骤S620中,处理器310基于接收到的命令的优先级顺序将接收到的命令排队在命令队列中,并且通过控制缓冲存储器接口340或缓冲器控制电路360,将从主机2000接收到的数据临时存储在控制器缓冲存储器(即,图1的缓冲存储器装置1300或图2的存储器缓冲器320)中。参照图7A,基于从主机2000接收到的多个命令CMD1至CMD4的优先级顺序将多个命令CMD1至CMD2排队在命令队列中。假设多个命令CMD1至CMD4是写入命令。另外,分别对应于多个命令CMD1至CMD4的写入数据DATA1至DATA4被临时存储在控制器缓冲存储器(即,图1的缓冲存储器装置1300或图2的存储器缓冲器320)中。
在步骤S630中,处理器310将多个排队的命令顺序地传输到非易失性存储器装置1100,并且控制非易失性存储器装置1100以响应于接收到的命令执行全部操作(例如,写入操作)。例如,处理器310的闪存控制器312可将写入命令传输到非易失性存储器装置1100,并且通过将与所传输的写入命令相对应的写入数据从存储器缓冲器320或缓冲存储器装置1300传输到非易失性存储器装置1100来控制非易失性存储器装置1100的写入操作。传输到非易失性存储器装置1100的写入数据保持被临时存储在存储器缓冲器320或缓冲存储器装置1300中。当非易失性存储器装置1100的写入操作中发生错误时,处理器310的闪存控制器312可通过将被临时存储的写入数据重新传输到非易失性存储器装置1100来控制非易失性存储器装置1100重新执行写入操作。
在非易失性存储器装置1100的全部操作期间,可从主机2000接收新命令。在步骤S640中,存储器控制器1200的处理器310确定接收到的命令是否是清除命令。
在步骤S640中,当确定新命令不是清除命令(步骤S640中为“否”)时,保持在步骤S630中执行全部操作。
在步骤S640中,当确定新命令是清除命令(步骤S640中为“是”)时,处理器310控制存储器系统1000执行清除操作。在步骤S650中,处理器310将清除命令排队在命令队列中。清除命令被排队在命令队列的末尾,这表示清除命令的优先级低于在接收到清除命令之前排队的命令。
在步骤S660中,闪存控制器312可将被缓冲到存储器缓冲器320或缓冲存储器装置1300的写入数据传输到非易失性存储器装置1100,并且释放被临时存储在存储器缓冲器320或缓冲存储器装置1300中的所有写入数据。
参照图7B,清除命令Flush CMD被排队在命令队列中,以使清除命令的顺序位于在清除命令Flush CMD之前接收到的命令CMD1至CMD4的顺序之后。另外,与在清除命令FlushCMD之前接收到的命令CMD1至CMD4相对应的写入数据DATA1至DATA4被传输到非易失性存储器装置1100。从存储器缓冲器320或缓冲存储器装置1300释放已经被完全传输到非易失性存储器装置1100的写入数据(在图7B中由偏离折线表示的区域中的数据DATA1至DATA4)。
当因为从主机2000接收到清除命令而正执行清除操作的同时,在写入操作中发生错误时,非易失性存储器装置1100可将被临时存储在页面缓冲器组230中的写入数据DATA输出到存储器控制器1200,并且通过新接收由存储器控制器1200校正了错误的写入数据DATA来重新执行写入操作。可通过选择新的存储块(即,图4的BLK1至BLKm中的任何一个)来执行写入操作。
在步骤S670中,在清除操作期间,可从主机2000接收到存储器控制器1200下一命令和对应于下一命令的数据。
在步骤S680中,处理器310将下一命令排队在命令队列中,并且通过控制缓冲存储器接口340或缓冲器控制电路360,将从主机2000接收的下一数据临时存储在控制器缓冲存储器(即,缓冲存储器装置1300或存储器缓冲器320)中。参照图7C,基于从主机新接收的多个命令CMD5至CMD8的优先级顺序对多个命令CMD5至CMD8进行排队,以构成命令队列。可优先对在接收到清除命令Flush CMD之后新接收的多个命令CMD5至CMD8进行排队,以使多个命令CMD5至CMD8的顺序在清除命令Flush CMD的顺序之后。当假设多个命令CMD5至CMD8是写入命令时,分别对应于多个命令CMD5至CMD8的写入数据DATA5至DATA8被临时存储在控制器缓冲存储器(即,缓冲存储器装置1300或存储器缓冲器320)中。
当完成了与从处理器310接收到的命令相对应的全部操作(例如,写入操作)时,非易失性存储器装置1100可输出操作完成信号CMD_confirm。当完全执行了与在接收到清除命令Flush CMD之前接收到的命令CMD1至CMD4相对应的全部操作,并通过从非易失性存储器装置1100接收到的操作完成信号CMD_confirm将其报告给处理310时,在步骤S690中,处理器310可响应于清除命令Flush CMD而生成响应信号,并且将该响应信号输出到主机2000。当输出了响应信号时,可结束清除操作。
参照图7D,处理器310基于从存储器装置1100接收到的操作完成信号CMD_confirm来确定是否响应于在接收到清除命令Flush CMD之前接收到的命令CMD1至CMD4已经完全执行了全部操作。当确定响应于命令CMD1至CMD4已经完全执行了全部操作时,处理器310生成对应于清除命令Flush CMD的响应信号,并将响应信号输出到主机2000。此后,可从命令队列中移除清除命令Flush CMD和在接收到清除命令Flush CMD之前接收到的命令CMD1至CMD4。也就是说,可释放包括在如图7D所示的由偏离折线表示的区域中的命令Flush CMD和CMD1至CMD4。
在清除操作结束之后,在步骤S700中,处理器310将排队在清除命令之后的命令顺序地传输到非易失性存储器装置1100,并且控制非易失性存储器装置1100以响应于接收到的命令执行全部操作(例如,写入操作)。
如上所述,根据本公开的实施例,在清除操作中,闪存控制器312将被缓冲在控制器缓冲存储器(即,存储器缓冲器320或缓冲存储器装置1300)中的写入数据传输到非易失性存储器装置1100,然后释放被临时存储在控制器缓冲存储器中的所有写入数据。因此,可确保控制器缓冲存储器的空闲存储空间,在接收到清除命令之后从主机2000接收的写入数据可被存储在控制器缓冲存储器中,并且可通过在完全执行了清除操作之后将存储在控制器缓冲存储器中的写入数据传输到非易失性存储器装置1100来执行写入操作。因此,可减少清除操作之后将写入数据缓冲到控制器缓冲存储器所需的时间,并且存储在控制器缓冲存储器中的写入数据的量能够满足存储器系统的写入性能,从而提高写入性能。
图8是示出存储器系统的实施例的示图。
参照图8,存储器系统30000可被实施在蜂窝电话、智能电话、平板PC、个人数字助理(PDA)或无线通信装置中。存储器系统30000可包括非易失性存储器装置1100和能够控制非易失性存储器装置1100的操作的存储器控制器1200。存储器控制器1200可在处理器3100的控制下控制非易失性存储器装置1100的数据访问操作,例如编程操作、擦除操作或读取操作。
被编程在非易失性存储器装置1100中的数据可在存储器控制器1200的控制下通过显示器3200输出。
无线电收发器3300可通过天线ANT发送/接收无线电信号。例如,无线电收发器3300可将通过天线ANT接收到的无线电信号转换成可由处理器3100处理的信号。因此,处理器3100可处理从无线电收发器3300输出的信号,并将处理后的信号传输到存储器控制器1200或显示器3200。存储器控制器1200可将由处理器3100处理的信号编程到非易失性存储器装置1100中。而且,无线电收发器3300可将从处理器3100输出的信号转换成无线电信号,并且通过天线ANT将转换后的无线电信号输出到外部装置。输入装置3400是能够输入用于控制处理器3100的操作的控制信号或待由处理器3100处理的数据的装置,并且可被实施为诸如触摸板或计算机鼠标的定点装置、小键盘或键盘。处理器3100可控制显示器3200的操作,使得从存储器控制器1200输出的数据、从无线电收发器3300输出的数据或从输入装置3400输出的数据可以通过显示器3200输出。
在一些实施例中,能够控制非易失性存储器装置1100的操作的存储器控制器1200可被实施为处理器3100的一部分,或者被实施为独立于处理器3100的芯片。而且,存储器控制器1200可用图2所示的存储器控制器来实施。
图9是示出存储器系统的实施例的示图。
参照图9,存储器系统40000可被实施成个人计算机(PC)、平板PC、上网本、电子阅读器、个人数字助理(PDA)、便携式多媒体播放器(PMP)、MP3播放器或MP4播放器。
存储器系统40000可包括非易失性存储器装置1100和能够控制非易失性存储器装置1100的数据处理操作的存储器控制器1200。
处理器4100可根据通过输入装置4200输入的数据通过显示器4300输出存储在非易失性存储器装置1100中的数据。例如,输入装置4200可被实施为诸如触摸板或计算机鼠标的定点装置、小键盘或键盘。
处理器4100可控制存储器系统40000的全部操作,并且控制存储器控制器1200的操作。在一些实施例中,能够控制非易失性存储器装置1100的操作的存储器控制器1200可被实施为处理器4100的一部分,或者被实施为独立于处理器4100的芯片。而且,存储器控制器1200可用图2所示的存储器控制器来实施。
图10是示出存储器系统的实施例的示图。
参照图10,存储器系统50000可被实施为图像处理装置,例如数码相机、附设有数码相机的移动终端、附设有数码相机的智能电话、或附设有数码相机的平板PC。
存储器系统50000可包括非易失性存储器装置1100和存储器控制器1200,存储器控制器1200能够控制非易失性存储器装置1100的数据处理操作,例如编程操作、擦除操作或读取操作。
存储器系统50000的图像传感器5200可将光学图像转换成数字信号,并且转换后的数字信号可被传输到处理器5100或存储器控制器1200。在处理器5100的控制下,转换后的数字信号可通过显示器5300输出,或通过存储器控制器1200而被存储在非易失性存储器装置1100中。另外,在处理器5100或存储器控制器1200的控制下,存储在非易失性存储器装置1100中的数据可通过显示器5300输出。
在一些实施例中,能够控制非易失性存储器装置1100的操作的非易失性存储器控制器1200可被实施为处理器5100的一部分,或者被实施为独立于处理器5100的芯片。而且,存储器控制器1200可用图2所示的存储器控制器来实施。
图11是示出存储器系统的实施例的示图。
参照图11,存储器系统70000可被实施为存储卡或智能卡。存储器系统70000可包括非易失性存储器装置1100、存储器控制器1200和卡接口7100。
存储器控制器1200可控制非易失性存储器装置1100和卡接口7100之间的数据交换。在一些实施例中,卡接口7100可以是安全数字(SD)卡接口或多媒体卡(MMC)接口,但本公开不限于此。而且,存储器控制器1200可用图2所示的存储器控制器来实施。
卡接口7100可根据主机60000的协议来接口连接主机60000和存储器控制器1200之间的数据交换。在一些实施例中,卡接口7100可支持通用串行总线(USB)协议和芯片间(IC)-USB协议。卡接口7100可表示能够支持由主机60000使用的协议的硬件、嵌入在硬件中的软件或信号传输方案。
当存储器系统70000联接到诸如PC、平板PC、数码相机、数字音频播放器、蜂窝电话、控制台视频游戏硬件或数字机顶盒的主机60000的主机接口6200时,主机接口6200可在微处理器6100的控制下通过卡接口7100和存储器控制器1200执行与非易失性存储器装置1100的数据通信。
根据本公开,虽然在存储器系统的操作中输入了清除命令,但存储器系统进行操作,而不阻止在清除命令之后输入的命令。因此,存储器系统可连续地进行操作,从而可提高存储器系统的操作速度。
本文已经公开了示例性实施例,并且尽管采用了特定的术语,但是这些术语仅以一般的和描述性的意义来使用并理解,而不是为了限制的目的。在一些情况下,如从本申请提交起对于本领域的普通技术人员而言显而易见的是,除非另外明确指出,否则结合特定实施例描述的特征、特性和/或元件可单独使用或与结合其它实施例描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解的是,在不脱离如所附权利要求中阐述的本公开的精神和范围的情况下,可进行形式和细节上的各种改变。

Claims (23)

1.一种存储器系统,包括:
存储器控制器,对从主机接收的命令进行排队,并且顺序地输出排队的命令;
控制器缓冲存储器,临时存储对应于所述命令的写入数据,并且在所述存储器控制器的控制下输出被临时存储的写入数据;以及
非易失性存储器装置,响应于从所述存储器控制器输出的所述命令和从所述控制器缓冲存储器输出的所述写入数据来执行操作,并且当完成了所述操作时向所述存储器控制器输出操作完成信号,
其中当从所述主机接收到清除命令时,所述存储器控制器释放被临时存储在所述控制器缓冲存储器中的所述写入数据。
2.根据权利要求1所述的存储器系统,其中所述存储器控制器控制所述控制器缓冲存储器,使得在接收到所述清除命令之后从所述主机接收的写入数据被缓冲到释放后的控制器缓冲存储器。
3.根据权利要求1所述的存储器系统,其中即使在所述被临时存储的写入数据被输出到所述非易失性存储器装置之后,所述控制器缓冲存储器也临时存储所述被临时存储的写入数据。
4.根据权利要求3所述的存储器系统,其中当在接收到所述清除命令之前,在所述非易失性存储器装置的操作期间发生写入错误时,所述存储器控制器通过将被临时存储在所述控制器缓冲存储器中的所述写入数据重新传输到所述非易失性存储器装置来控制所述非易失性存储器装置和所述控制器缓冲存储器以重新执行所述操作。
5.根据权利要求3所述的存储器系统,其中当接收到所述清除命令时,所述控制器缓冲存储器从所述控制器缓冲存储器释放所述被临时存储的写入数据。
6.根据权利要求5所述的存储器系统,其中当在接收到所述清除命令之后,在所述非易失性存储器装置的操作期间发生写入错误时,所述存储器控制器通过对存储在所述非易失性存储器装置的页面缓冲器组中的所述写入数据进行错误校正并且然后将校正错误后的写入数据传输到所述非易失性存储器装置来控制所述非易失性存储器装置以重新执行所述操作。
7.根据权利要求1所述的存储器系统,其中当接收到所述清除命令时,所述存储器控制器将所述清除命令排队在所述命令之后。
8.根据权利要求1所述的存储器系统,其中当接收到所述清除命令时,所述存储器控制器在基于所述操作完成信号确定所述非易失性存储器装置响应于所述命令完成了所述操作时,向所述主机输出对应于所述清除命令的响应信号。
9.根据权利要求8所述的存储器系统,
其中所述存储器控制器包括处理器,所述处理器基于从所述主机接收的命令的优先级顺序对所述命令进行排队,并且将排队的命令顺序地传输到所述非易失性存储器装置,
其中所述处理器随后对在接收到所述清除命令之后接收的新命令进行排队,并且将与所述新命令相对应的新写入数据临时存储在释放了所述写入数据的所述控制器缓冲存储器中。
10.根据权利要求9所述的存储器系统,其中在对应于所述清除命令的所述响应信号被输出到所述主机之后,所述处理器通过传输随后排队的命令和被临时存储在所述控制器缓冲存储器中的所述新写入数据来控制所述非易失性存储器装置执行新的操作。
11.一种存储器系统,包括:
存储器控制器,从主机接收命令和对应于所述命令的写入数据,对接收的命令进行排队,并且输出排队的命令和所述写入数据;以及
非易失性存储器装置,响应于从所述存储器控制器输出的所述命令和所述写入数据来执行操作,并且当完成了所述操作时向所述存储器控制器输出操作完成信号,
其中当接收到清除命令时,所述存储器控制器在将所述写入数据传输到所述非易失性存储器装置之后释放被临时存储的所述写入数据。
12.根据权利要求11所述的存储器系统,其中所述存储器控制器包括:
处理器,基于从所述主机接收的命令的优先级顺序对所述命令进行排队;以及
存储器缓冲器,临时存储所述写入数据。
13.根据权利要求12所述的存储器系统,其中当接收到所述清除命令时,所述处理器将所述清除命令排队在所述命令之后,并且释放存储在所述存储器缓冲器中的所述写入数据。
14.根据权利要求13所述的存储器系统,其中当在接收到所述清除命令之后从所述主机接收到新命令时,所述处理器将所述新命令排队在所述清除命令之后,并且将对应于所述新命令的新数据临时存储在释放了所述写入数据的所述存储器缓冲器中。
15.根据权利要求12所述的存储器系统,其中当在接收到所述清除命令之前,在所述非易失性存储器装置的操作期间发生写入错误时,所述处理器通过将存储在所述存储器缓冲器中的所述写入数据重新传输到所述非易失性存储器装置来控制所述非易失性存储器装置和所述存储器缓冲器以重新执行所述操作。
16.根据权利要求12所述的存储器系统,其中当在接收到所述清除命令之后,在所述非易失性存储器装置的操作期间发生写入错误时,所述处理器通过对存储在所述非易失性存储器装置的页面缓冲器组中的所述写入数据进行错误校正并且然后将校正错误后的写入数据传输到所述非易失性存储器装置来控制所述非易失性存储器装置以重新执行所述操作。
17.根据权利要求14所述的存储器系统,其中当接收到所述清除命令时,所述存储器控制器在基于所述操作完成信号确定所述非易失性存储器装置响应于所述命令完成了所述操作时,向所述主机输出对应于所述清除命令的响应信号。
18.根据权利要求17所述的存储器系统,其中在对应于所述清除命令的所述响应信号被输出到所述主机之后,所述处理器通过传输随后排队的命令和被临时存储在所述存储器缓冲器中的新写入数据来控制所述非易失性存储器装置执行新的操作。
19.一种操作存储器系统的方法,所述方法包括:
将从主机接收的命令进行排队,并且将对应于所述命令的写入数据临时存储在控制器缓冲存储器中;
通过将排队的命令和存储在所述控制器缓冲存储器中的所述写入数据传输到非易失性存储器装置来执行操作;
当从所述主机接收到清除命令时,将所述清除命令排队在所述排队的命令之后,并且释放被临时存储在所述控制器缓冲存储器中的所述写入数据;并且
将在接收到所述清除命令之后从所述主机接收的新命令排队在所述清除命令之后,并且将对应于所述新命令的新写入数据临时存储在释放了所述写入数据的所述控制器缓冲存储器中。
20.根据权利要求19所述的方法,进一步包括:当在接收到所述清除命令之前的操作期间发生写入错误时,通过将被临时存储在所述控制器缓冲存储器中的所述写入数据重新传输到所述非易失性存储器装置来重新执行所述操作。
21.根据权利要求19所述的方法,进一步包括:当在接收到所述清除命令之后的操作期间发生写入错误时,通过对存储在所述非易失性存储器装置的页面缓冲器组中的所述写入数据进行错误校正并且然后将校正错误后的写入数据传输到所述非易失性存储器装置来重新执行所述操作。
22.根据权利要求19所述的方法,进一步包括:在接收到所述清除命令之后,当完成了与在接收到所述清除命令之前接收的命令相对应的操作时,由所述非易失性存储器装置将对应于所述清除命令的响应信号输出到所述主机。
23.根据权利要求22所述的方法,进一步包括:在对应于所述清除命令的所述响应信号被输出到所述主机之后,通过将新排队的命令和被临时存储在所述控制器缓冲存储器中的所述新写入数据传输到所述非易失性存储器装置来执行新的操作。
CN201811289270.3A 2018-03-26 2018-10-31 存储器系统及其操作方法 Withdrawn CN110364196A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180034671A KR20190112546A (ko) 2018-03-26 2018-03-26 메모리 시스템 및 그것의 동작 방법
KR10-2018-0034671 2018-03-26

Publications (1)

Publication Number Publication Date
CN110364196A true CN110364196A (zh) 2019-10-22

Family

ID=67983578

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811289270.3A Withdrawn CN110364196A (zh) 2018-03-26 2018-10-31 存储器系统及其操作方法

Country Status (3)

Country Link
US (1) US20190294542A1 (zh)
KR (1) KR20190112546A (zh)
CN (1) CN110364196A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113849120A (zh) * 2020-06-25 2021-12-28 爱思开海力士有限公司 存储装置及其操作方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220010303A (ko) * 2020-07-17 2022-01-25 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120108339A (ko) * 2011-03-23 2012-10-05 삼성전자주식회사 비휘발성 램과 휘발성 램을 버퍼 메모리로 사용하는 저장 장치
CN102760476A (zh) * 2006-08-22 2012-10-31 莫塞德技术公司 可扩缩的存储器系统
US20150220439A1 (en) * 2014-02-04 2015-08-06 Microsoft Corporation Block storage by decoupling ordering from durability
US20150234746A1 (en) * 2014-02-14 2015-08-20 Samsung Electronics Co., Ltd. Storage device and operating method
CN105023610A (zh) * 2014-04-22 2015-11-04 新唐科技股份有限公司 存储单元控制器及其控制方法、以及存储装置
US20150355964A1 (en) * 2005-06-03 2015-12-10 Rambus Inc. Controller device for use with electrically erasable programmable memory chip with error detection and retry modes of operation
US20170206030A1 (en) * 2016-01-14 2017-07-20 Samsung Electronics Co., Ltd. Storage device and operating method of storage device
US20180060232A1 (en) * 2016-08-31 2018-03-01 Sandisk Technologies Llc Flush command consolidation

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150355964A1 (en) * 2005-06-03 2015-12-10 Rambus Inc. Controller device for use with electrically erasable programmable memory chip with error detection and retry modes of operation
CN102760476A (zh) * 2006-08-22 2012-10-31 莫塞德技术公司 可扩缩的存储器系统
KR20120108339A (ko) * 2011-03-23 2012-10-05 삼성전자주식회사 비휘발성 램과 휘발성 램을 버퍼 메모리로 사용하는 저장 장치
US20150220439A1 (en) * 2014-02-04 2015-08-06 Microsoft Corporation Block storage by decoupling ordering from durability
US20150234746A1 (en) * 2014-02-14 2015-08-20 Samsung Electronics Co., Ltd. Storage device and operating method
CN105023610A (zh) * 2014-04-22 2015-11-04 新唐科技股份有限公司 存储单元控制器及其控制方法、以及存储装置
US20170206030A1 (en) * 2016-01-14 2017-07-20 Samsung Electronics Co., Ltd. Storage device and operating method of storage device
US20180060232A1 (en) * 2016-08-31 2018-03-01 Sandisk Technologies Llc Flush command consolidation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113849120A (zh) * 2020-06-25 2021-12-28 爱思开海力士有限公司 存储装置及其操作方法

Also Published As

Publication number Publication date
US20190294542A1 (en) 2019-09-26
KR20190112546A (ko) 2019-10-07

Similar Documents

Publication Publication Date Title
US11068408B2 (en) Memory system and operating method thereof
US11334448B2 (en) Memory system and operating method thereof
US8904090B2 (en) Non-volatile memory device, devices having the same, and method of operating the same
TWI770165B (zh) 記憶體裝置、記憶體系統及其操作方法
CN109947662B (zh) 存储器系统及其操作方法
CN109697024B (zh) 存储器系统及其操作方法
CN110096908A (zh) 存储装置及存储装置的操作方法
US20190121727A1 (en) Memory system and method for operating the same
US9619380B2 (en) Data writing method, memory control circuit unit and memory storage apparatus
US10296233B2 (en) Method of managing message transmission flow and storage device using the method
CN110245097A (zh) 存储器控制器及具有存储器控制器的存储器系统
US10013210B2 (en) Data storage device and data maintenance method thereof
CN109753232A (zh) 存储器系统及存储器系统的操作方法
CN110047549A (zh) 存储器系统及其操作方法
CN110277126A (zh) 存储器装置和具有存储器装置的存储器系统
CN110175132A (zh) 存储装置及其操作方法
CN103389881A (zh) 控制装置、存储装置以及数据写入方法
CN111435333B (zh) 存储装置及其操作方法
CN109388514A (zh) 存储器系统及其操作方法
CN110364196A (zh) 存储器系统及其操作方法
CN110174995A (zh) 存储器控制器及其操作方法
CN109933467B (zh) 存储器系统及其操作方法
CN110069427A (zh) 存储器控制器以及存储器控制器的操作方法
CN108959109A (zh) 数据读取方法、存储器控制电路单元与存储器存储装置
KR20190088790A (ko) 메모리 시스템 및 그것의 동작 방법

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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20191022