CN113064840A - 存储设备及其操作方法 - Google Patents

存储设备及其操作方法 Download PDF

Info

Publication number
CN113064840A
CN113064840A CN202011620407.6A CN202011620407A CN113064840A CN 113064840 A CN113064840 A CN 113064840A CN 202011620407 A CN202011620407 A CN 202011620407A CN 113064840 A CN113064840 A CN 113064840A
Authority
CN
China
Prior art keywords
memory device
data
controller
read
command
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
CN202011620407.6A
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN113064840A publication Critical patent/CN113064840A/zh
Pending legal-status Critical Current

Links

Images

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/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
    • 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
    • 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/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • 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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • 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/0604Improving or facilitating administration, e.g. storage management
    • 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
    • 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/0653Monitoring storage devices or 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/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
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • 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/1016Performance improvement
    • 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

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)
  • Read Only Memory (AREA)

Abstract

一种操作存储设备的方法,该存储设备包括非易失性存储器设备和控制该非易失性存储器设备的操作的控制器,该方法包括由控制器向非易失性存储器设备发出第一命令,由非易失性存储器设备响应于第一命令,将第一数据从存储器单元阵列读取到非易失性存储器设备的页缓冲器中,由控制器向非易失性存储器设备发出第二命令,并且由非易失性存储器设备响应于第二命令,向所述控制器输出指示根据第一命令的读取操作是否已经完成的状态信息和从非易失性存储器设备的页缓冲器获得的第二数据。

Description

存储设备及其操作方法
相关申请的交叉引用
本申请要求于2020年1月2日在韩国知识产权局提交的第10-2020-0000484号韩国专利申请的优先权,并要求该申请的权益,该申请的内容通过引用整体结合于此。
技术领域
本发明构思的实施例针对存储设备,并且更具体地,针对包括非易失性存储器设备和控制器的存储设备和其操作方法。
背景技术
最近,诸如固态驱动器(SSD)的存储设备已经得到了广泛地应用。存储设备对应于包括诸如快闪存储器的非易失性存储器设备和控制非易失性存储器设备的控制器的存储器系统。随着存储设备性能的改善,在存储设备中的非易失性存储器设备和控制器之间的数据的输入/输出速度提高。因此,数据可以在控制器和非易失性存储器设备之间高速地传送或接收。
在读取操作期间,控制器可以在发出读取命令CMD之后,发出状态命令CMD以识别非易失性存储器设备是否已经完成读取操作,并且仅在状态命令指示READY之后发出读出命令CMD,以便读取写入存储设备的数据。当根据具有预定义固定时间值的定时参数将命令从控制器发送到非易失性存储器设备时,即使数据输入/输出速度提高,数据传送的输入/输出效率也会降低。
发明内容
本发明构思的实施例提供了一种存储设备及其操作方法,该存储器设备包括非易失性存储器设备和控制器,该存储设备可以提高或保持非易失性存储器设备和控制器之间的输入/输出操作的效率。
根据本发明构思的实施例,提供了一种操作存储设备的方法,该存储设备包括非易失性存储器设备和控制非易失性存储器设备的操作的控制器,该方法包括由控制器向非易失性存储器设备发出第一命令,由非易失性存储器设备响应于第一命令,将第一数据从存储器单元阵列读取到非易失性存储器设备的页缓冲器中,由控制器向非易失性存储器设备发出第二命令,并且由非易失性存储器设备响应于第二命令,向控制器输出指示根据第一命令的读取操作是否已经完成的状态信息和从非易失性存储器设备的页缓冲器获得的第二数据。
根据本发明构思的另一实施例,提供了一种存储设备,该存储设备包括非易失性存储器设备和控制非易失性存储器设备并且发出多个命令的控制器。该非易失性存储器设备包括:存储器单元阵列,其包括多个存储器单元并且响应于第一命令读取第一数据;控制逻辑,其基于多个命令控制存储器单元阵列的读取操作;页缓冲器,其缓冲第一数据;和输入/输出接口,其响应于第二命令,向控制器输出指示读取操作是否已经完成的状态信息和通过缓冲第一数据获得的第二数据。
根据本发明构思的另一实施例,提供了一种操作存储设备的方法,该存储器设备包括非易失性存储器设备和控制非易失性存储器设备的操作的控制器,该方法包括由控制器向非易失性存储器设备发出第一命令,由非易失性存储器设备响应于第一命令从存储器单元阵列读取第一数据,由控制器在第二读取模式下发出第二命令,第二命令用于将指示根据第一命令的存储器单元阵列的读取操作是否已经完成的状态信息和第一数据传送到控制器,并且由控制器在第一读取模式下发出用于输出状态信息的第三命令和用于传送第一数据的第四命令。
附图说明
图1是示出了根据实施例的存储设备的框图。
图2是示出了根据实施例的在存储设备中生成和发出的信号和命令的时序的时序图。
图3示出了根据实施例的非易失性存储器设备。
图4是根据实施例的控制器的框图。
图5是更具体地示出了根据实施例的控制器的框图。
图6是更具体地示出了根据另一实施例的控制器的框图。
图7是示出了根据实施例的在第一读取模式下生成和发出的信号和命令的时序的时序图。
图8是示出了根据实施例的在第二读取模式下生成和发出的信号和命令的时序的时序图。
图9是示出了根据另一实施例的在第二读取模式下生成和发出的信号和命令的时序的时序图。
图10示出了根据实施例的由非易失性存储器设备生成的数据流。
图11和12示出了根据实施例的其中对针对每种模式发出的信号和命令进行了分类的表格。
图13是根据实施例操作控制器的方法的流程图。
图14是根据实施例的操作包括控制器和非易失性存储器设备的存储设备的方法的详细流程图。
图15是根据实施例的包括控制器和非易失性存储器设备的存储设备的框图。
具体实施方式
在下文中,将参考附图详细描述本发明构思的示例性实施例。
图1是示出了根据实施例的存储器设备的框图。参考图1,存储设备10包括非易失性存储器设备(nonvolatile memory device,NVM)100和控制器200。
根据本发明构思的实施例,控制器200可以发出第二读出命令CMD,该命令允许非易失性存储器设备100向控制器200传送状态信息信号Status和读取数据Data,并且非易失性存储器设备100响应于第二读出命令CMD向控制器200传送状态信息信号Status和读取数据Data。状态信息信号Status包括指示非易失性存储器设备100是否响应于读取命令CMD完成了从存储器单元阵列130进行读取的操作的信号或数据。状态信息信号Status包括就绪状态READY和忙碌状态BUSY,其中就绪状态READY指示从存储器单元阵列130进行读取的操作已经完成,忙碌状态BUSY指示从存储器单元阵列130读取的操作正在进行中,即还没有完成。
根据实施例,存储设备10可以被实现为诸如固态驱动器(solid state drive,SSD)的存储设备。然而,本发明构思的实施例不限于此,因此存储设备10可以被实现为各种类型的设备(诸如嵌入式多媒体卡(embeded multimedia card,eMMC)、通用快闪存储器(universal flash storage,UFS)、小型快闪存储器(compact flash,CF)、安全数字(secure digital,SD)、微型安全数字(micro secure digital,micro-SD)、迷你安全数字(mini secure digital,mini-SD)、极端数字(extreme digital,xD)、记忆棒等)中的任何一种。
根据实施例,存储设备10可以通过各种接口中的任何一种与主机HOST通信。主机HOST可以请求存储器设备10的数据处理操作,诸如数据读取操作或数据写入操作。在实施例中,主机HOST对应于CPU、处理器、微处理器、应用处理器等。根据实施例,主机HOST被实现为片上系统(system-on-a-chip,SoC)。
根据实施例,用于存储设备10和主机HOST之间的通信的接口可以是各种接口类型(诸如高级技术附件(advanced technology attachment,ATA)、串行ATA(serial ATA,SATA)、外部SATA(external SATA,e-SATA)、小型计算机小型接口(small computer smallinterface,SCSI)、串行连接SCSI(serial attached SCSI,SAS)、外围组件互连(peripheral component interconnection,PCI)、PCI-express(PCI-E)、IEEE 1394、通用串行总线(universal serial bus,USB)、SD数字卡、多媒体卡(multi media card,MMC)、嵌入式MMC(eMMC)、CF卡接口等)中的任何一种。
根据实施例,非易失性存储器设备100接收命令CMD和由控制器响应于从主机HOST所接收的请求而生成的读取使能信号REB。非易失性存储器设备100包括控制逻辑110、存储器单元阵列130、页缓冲器150和输入/输出接口170。
根据实施例,控制逻辑110控制非易失性存储器设备100的整体操作。控制逻辑110基于从控制器200所接收的命令CMD来控制包括在非易失性存储器设备100中的多个存储器单元的操作。此外,控制逻辑110接收地址,并且基于命令CMD和该地址控制所述多个存储器单元。
根据实施例,控制逻辑110从输入/输出接口170或其中命令CMD和/或地址被缓冲的命令缓冲器接收命令CMD。在这种情况下,命令缓冲器或输入/输出接口170以对应于在非易失性存储器设备100和控制器200之间的数据输入/输出速度的第一操作速度来操作,并且控制逻辑110以低于第一操作速度的第二操作速度来操作。也就是说,非易失性存储器设备100的内部操作速度对应于第二操作速度。然而,为了便于说明,图1中没有图示出诸如附加输入/输出接口的配置。
根据实施例,控制逻辑110从控制器200接收读取使能信号REB。在实施例中,在存储器单元阵列130的读取操作期间,由控制器200使能读取使能信号REB,例如,切换(toggle)读取使能信号REB以指示状态转换。此外,读取使能信号REB同步诸如数据选通信号的信号,以用于传送读取数据。这里,使能信号的操作表示其中信号电平转换到不同逻辑电平的操作,因此,信号的相位可以从0度改变到180度或者从180度改变到0度。
根据实施例,控制逻辑110控制用于存储器单元阵列130的编程、读取和擦除操作。将参考图3更详细地描述控制逻辑110。
根据实施例,存储器单元阵列130包括多个存储器单元。所述多个存储器单元中的每一个用作用于写入和读取信息的单元存储设备。可以存在存储器体(memory bank),其中该存储器体是其中所述多个存储器单元中的预定义存储器单元被分组的逻辑分区。可以在逐个存储器体的基础上(on a memory bank-by-memory bank basis)向存储器单元阵列130写入数据或从存储器单元阵列130读取数据,但是实施例不限于此。
在实施例中,所述多个存储器单元包括多个快闪存储器单元。例如,所述多个快闪存储器单元包括NAND快闪存储器单元。然而,本发明构思的实施例不限于此,因此,所述多个存储器单元可以包括电阻存储器单元,诸如电阻随机存取存储器(resistive RAM,ReRAM)、相变随机存取存储器(phase change RAM,PRAM)或磁随机存取存储器(magneticRAM,MRAM)。
根据实施例,存储器单元阵列130基于控制逻辑110的控制向从所述多个存储器单元中选择的存储器单元写入数据或读取写入的数据。读取数据Data被输出到页缓冲器150,并且输出的读取数据Data被缓冲在页缓冲器150中。
根据实施例,页缓冲器150缓冲所接收的读取数据Data。页缓冲器150临时地存储所接收的数据,并且包括至少一个寄存器。在实施例中,页缓冲器150使用多个页缓冲器组顺序地缓冲数据。将参考图3更详细地描述页缓冲器150。
根据实施例,输入/输出接口170从控制逻辑110接收状态信息信号Status,并且从页缓冲器150接收读取数据Data。根据本发明构思的实施例,输入/输出接口170响应于来自控制器200的第二读出命令,将状态信息信号Status和读取数据Data传送到控制器200。在实施例中,输入/输出接口170在传送读取数据Data之前将状态信息信号Status传送到控制器200。
根据实施例,输入/输出接口170经由输入/输出通道电连接到控制器200。换句话说,根据数据输入/输出速度,状态信息信号Status和读取数据Data被传送到控制器200。
根据实施例,控制器200从非易失性存储器设备100接收状态信息信号Status和读取数据Data。根据实施例,控制器200被称为存储器控制器或存储控制器。
根据实施例,控制器200控制非易失性存储器设备100,以便响应于来自主机HOST的请求或预定义的读取/写入信号,读取存储在非易失性存储器设备100中的数据或向非易失性存储器设备100写入数据,即编程数据。在实施例中,控制器200向非易失性存储器设备100提供命令CMD,以控制非易失性存储器设备100的编程、读取和擦除操作。此外,要编程的数据Data和读取数据Data在控制器200和非易失性存储器设备100之间传送/接收。例如,命令CMD是写入命令、读取命令、擦除命令等之一。读取命令包括读取命令CMD_R、状态读取命令CMD_SR和第一读出命令CMD_O1,并且还包括第二读出命令CMD_O2。第二读出命令CMD_O2是智能读出命令,因为发出第二读出命令CMD_O2以接收状态信息信号Status和读取数据Data两者。
根据实施例,控制器200通过发出第二读出命令CMD_O2来接收状态信息信号Status和读取数据Data两者,并且控制器200基于所接收的状态信息信号Status继续从非易失性存储器设备100接收数据或者停止数据接收。
在实施例中,基于设置的读取模式,控制器200在第二读取模式下操作,其中在第二读取模式下,在发出读取命令CMD_R之后的预定时间发出第二读出命令CMD_O2,或者在第一读取模式下操作,其中在第一读取模式下,在发出读取命令CMD_R之后的预定时间发出状态读取命令CMD_SR。在第一读取模式的情况下,非易失性存储器设备100响应于状态读取命令CMD_SR,与读取数据Data分离地向控制器200发送状态信息信号Status,并且控制器200还可以发出第一读取命令CMD_O1或者可以基于所接收的状态信息信号Status来重新发出状态读取命令CMD_SR。将参考图7至图12结合读取命令更详细地描述包括控制器200和非易失性存储器设备100的存储设备10。在实施例中,基于从外部设备(诸如主机HOST)接收的模式信号来设置读取模式。然而,实施例不限于此,因此,当制造存储设备100时,可以预先设置读取模式。
根据实施例,控制器200生成读取使能信号REB并将其发送到非易失性存储器设备100。读取使能信号REB同步诸如数据选通信号的信号,以用于传送读取数据Data。这里,响应于读取使能信号REB,非易失性存储器设备100生成数据选通信号DQS(data strobesignal)。在实施例中,数据选通信号DQS用作用于输出非易失性存储器设备100的数据的时钟信号。换句话说,读取使能信号REB与驱动用于输出读取数据Data和状态信息信号Status的时钟信号相关。
根据实施例,非易失性存储器设备100和控制器200经由分别包括在其中的输入/输出接口电连接,其中输入/输出接口通过引脚连接。也就是说,非易失性存储器设备100和控制器200中的每一个包括多个输入/输出引脚DQ。
根据实施例,在非易失性存储器设备100和控制器200的每一个中的多个输入/输出引脚DQ中,第一引脚是输入/输出引脚,第二引脚是时钟引脚,第三引脚是命令锁存使能信号,并且第四引脚是地址锁存使能信号。此外,还包括与读取数据Data的输出相关的数据选通信号DQS的单独引脚。然而,实施例不限于此,因此,所述多个引脚DQ中的至少一个可以被用作通过其来传送数据的数据引脚,或者所述多个引脚DQ中的所有引脚可以被用作通过其来传送数据的数据引脚。
根据实施例,由于命令CMD具有预定义的固定持续时间,所以随着数据输入/输出速度的增加,预定义的固定持续时间与总数据处理时间的比率逐渐增加,因此导致输入/输出效率的降低。根据本发明构思的实施例,由于非易失性存储器设备100将状态信息信号Status和读取数据Data都传送到控制器200,所以控制器200可以立即检查非易失性存储器设备100的状态,因此,可以减少发出命令CMD的等待时间。这里,状态信息信号Status和读取数据Data两者都传输不代表同时传输,而是状态信息信号Status和读取数据Data经由同一通道分开传输。也就是说,状态信息信号Status和读取数据Data响应于从控制器200接收的相同的第二读出命令CMD来被传送。因此,提高了非易失性存储器设备100和控制器200之间的数据输入/输出效率。
根据实施例,存储器设备10和主机HOST构成存储系统,其中存储系统被实现为例如个人计算机(personal computer,PC)、数据服务器、网络附接储存器、物联网(Internetof things,IoT)设备或移动电子设备。移动电子设备可以是膝上型计算机、移动电话、智能电话、平板PC、个人数字助理(personal digital assistant,PDA)、企业数字助理(enterprise digital assistant,EDA)、数码静态相机、数码摄像机、音频设备、便携式多媒体播放器(portable multimedia player,PMP)、个人导航设备(personal navigationdevice,PND)、MP3播放器、手持游戏控制台、电子书、可穿戴设备等。
图2是示出根据实施例由存储设备生成和发出的信号和命令的时序的时序图。在图2的时序图中,横轴表示时间,纵轴表示高(或数据“1”)/低(或数据“0”)信号电平。
参考图1和图2,根据实施例,控制器200发出读取命令CMD_R、状态读取命令CMD_SR、第一读出命令CMD_O1和第二读出命令CMD_O2,并且将发出的命令CMD传送到非易失性存储器设备100。响应于状态读取命令CMD_SR或第二读出命令CMD_O2,非易失性存储器设备100将非易失性存储器设备100的状态信息信号Status(诸如指示读取已经完成的就绪状态READY或指示读取还没有完成的忙碌状态BUSY)传送到控制器200。换句话说,就绪状态READY表示非易失性存储器设备100的状态,在该状态中,非易失性存储器设备100准备好执行对应于控制器200的请求的操作。忙碌状态BUSY表示存储器单元正在操作的状态,诸如不能执行对应于控制器200的请求的操作的状态。
根据实施例,控制器200基于状态信息信号Status生成读取使能信号REB和写入使能信号WEB(write enable signal)。写入使能信号WEB在存储器单元阵列130的写入操作期间被使能,并且与数据选通信号DQS同步以写入数据。
根据本发明构思的实施例,控制器200发出第二读出命令CMD_O2并将其传送到非易失性存储器设备100。第二读出命令CMD_O2用于将从存储器单元阵列130读取的读取数据Data与关于存储器单元阵列130的状态信息信号Status一起传送。控制器200转换被传送到非易失性存储器设备100的写入使能信号,并且在写入使能信号转换的时间期间写入第二读出命令CMD_O2。例如,第二读出命令CMD_O2可以与写入使能信号WEB的上升沿同步。尽管图2示出了第二读出命令CMD_O2与写入使能信号WEB的上升沿同步,但是第二读出命令CMD_O2也可以与写入使能信号WEB的下降沿同步。
根据实施例,非易失性存储器设备100从控制器200接收第二读出命令CMD_O2,并且生成状态信息信号Status。如果非易失性存储器设备100处于由就绪状态READY指示的状态,则非易失性存储器设备100通过读取数据来生成读取数据Data,如果非易失性存储器设备100不处于由就绪状态READY指示的状态,即,处于由忙碌状态BUSY指示的状态,则非易失性存储器设备100生成包括关于存储器单元阵列的功率信息或故障信息的附加信息INFO,并且将包括状态信息信号Status和读取数据Data或状态信息信号Status和附加信息INFO的数据流传送到控制器200。
根据实施例,控制器200可以通过接收状态信息信号Status来确定非易失性存储器设备100是否就绪。控制器200可以确认状态信息信号Status指示就绪状态READY,并且开始切换读取使能信号REB。在写入使能信号WEB转换为逻辑高电平之后的预定时间开始切换读取使能信号REB。换句话说,在写入使能信号WEB转换为逻辑高电平之后,在与非易失性存储器设备100的状态信息接收过程相对应的时间段过去之后,读取使能信号REB的切换开始。
根据实施例,非易失性存储器设备100响应于所接收的读取使能信号REB的切换,开始切换数据选通信号DQS。数据选通信号DQS用作用于输出非易失性存储器设备100的数据的时钟信号。也就是说,从非易失性存储器设备100读取的读取数据Data与数据选通信号DQS的切换同步地被输出到控制器200。读取使能信号REB和数据选通信号DQS将被切换,直到状态信息信号Status和读取数据Data被传送。在实施例中,读取数据Data和状态信息信号Status与数据选通信号DQS的下降沿同步。在实施例中,读取数据Data和状态信息信号Status与数据选通信号DQS的上升沿和下降沿同步,因此被以双倍数据速率(double datarate,DDR)模式传送到非易失性存储器设备100。因此,不仅可以提高读取数据Data和状态信息信号Status的传送速度,还可以提高命令CMD和地址的传送速度。
根据实施例,非易失性存储器设备100的输入/输出接口170将状态信息信号Status和读取数据Data传送到控制器200。包括状态信息信号Status和读取数据Data的数据流经由输入/输出接口170的多个引脚DQ被传送到控制器200,并且控制器200经由与输入/输出接口170的多个引脚DQ相对应的输入/输出接口的多个引脚接收数据流。
根据实施例,状态信息信号Status经由输入/输出接口170的多个引脚DQ与第一边沿同步地输出。在实施例中,指示可以从非易失性存储器设备100读取数据的就绪状态READY经由多个引脚DQ被传送到控制器200。连续地,读取数据Data经由多个引脚DQ(D0)与第二边沿同步地被传送到控制器200。连续地,读取数据Data经由多个引脚DQ(D1)与第三边沿同步地被传送到控制器200。同样,读取数据Data经由多个引脚DQ(DN)与第(N+2)边沿同步地被传送到控制器200,其中N是大于或等于1的自然数。
图3示出了根据实施例的非易失性存储器设备。
参考图1和图3。根据实施例,非易失性存储器设备100包括控制逻辑110、行解码器120、存储器单元阵列130、电压生成器140、页缓冲器150和输入/输出接口170,其中页缓冲器150还包括多个页缓冲器单元PB1 151至PBn 15n。根据本实施例的非易失性存储器设备100对应于图1的存储器设备10的实施例,并且以上参考图1和图2提供的上述描述适用于本实施例。下面省略上面参考图1和图2给出的描述。
根据实施例,控制逻辑110从控制器200接收命令CMD、读取使能信号REB和写入使能信号WEB。为了方便起见,图3示出了控制逻辑110直接接收命令CMD、读取使能信号REB和写入使能信号WEB。然而,实施例不限于此,因此,在其他实施例中,控制逻辑110经由不同的通道(诸如分离的输入/输出接口等)接收命令CMD、读取使能信号REB和写入使能信号WEB。
根据实施例,控制逻辑110生成电压控制信号V_CTRL并且将其发送到控制功率的供应的电压生成器140,以及生成行地址信号X-ADDR并将其发送到存储器单元阵列130(该行地址信号在逐个串选择线(string select line,SSL)的基础上并在逐个字线(wordline,WL)的基础上控制存储器单元阵列130),并且生成列地址信号Y-ADDR,该列地址信号Y-ADDR在逐个位线(bit line,BL)的基础上控制页缓冲器150的缓冲。因此,控制逻辑110控制非易失性存储器设备100的各种操作。
根据实施例,行解码器120基于行地址信号X-ADDR选择多个字线WL中的一些,并且激活所选择的字线WL。行解码器120从电压生成器140接收对应于操作模式的字线电压V_WL,并且将字线电压V_WL施加到所选择的存储器单元或存储器块的字线WL。在编程操作期间,行解码器120将编程电压Vpgm和编程验证电压Vpgm_vfy施加到所选择的字线WL,并且将编程通过电压Vpgm_pass施加到未被选择的字线。在擦除操作期间,行解码器120将擦除电压Vera和擦除验证电压Vera_vfy施加到所选择的字线WL,并且将擦除通过电压Vera_pass施加到未被选择的字线。在读取操作期间,行解码器120将读取电压Vr传送到所选择的字线WL,并且将读取通过电压Vr_pass传送到未被选择的字线。尽管读取操作被描述为通过提供读取电压Vr来执行,但是根据本发明构思的实施例的读取操作不仅可以使用读取电压Vr来执行,还可以使用编程验证电压Vpgm_vfy和用于擦除操作的擦除验证电压Vera_vfy来执行。
根据实施例,存储器单元阵列130包括多个存储器单元,其中所述多个存储器单元构成多个存储器页或多个存储器体。存储器单元阵列130经由字线WL和选择线SSL和GSL(ground select line,接地选择线)连接到行解码器120,并且经由位线BL连接到页缓冲器150。所述多个存储器单元中的每一个包括布置在其中多个字线和多个位线相交的区域中的多个存储器单元。可以通过提供给位线BL和字线WL的电压来编程、擦除或读取存储器单元。
在实施例中,存储器单元阵列130包括三维存储器单元阵列,其中该三维存储器单元阵列包括多个NAND串,其中每个NAND串包括分别连接到垂直地堆叠在衬底上的字线的存储器单元。在一些实施例中,存储器单元阵列130包括二维存储器单元阵列,其中该二维存储器单元阵列包括以行和列布置的多个NAND串。
根据实施例,电压生成器140基于从控制逻辑110接收的控制信号生成驱动多个字线WL的字线电压V_WL。字线电压V_WL包括编程电压、读取电压、擦除电压或通过电压。所生成的字线电压V_WL被发送到行解码器120,以选择一些字线并且激活所选择的字线WL。
根据实施例,页缓冲器150包括多个页缓冲器单元151至15n,其中n是大于或等于2的自然数。页缓冲器150存储要记录在存储器单元阵列130中的数据或从存储器单元阵列130读取的数据。页缓冲器150可以包括多个页缓冲器组,其中所述多个页缓冲器组中的每一个包括页缓冲器单元151至15n。在实施例中,页缓冲器组的数量对应于存储器页或存储器体的数量,并且页缓冲器组中的每一个中的页缓冲器单元151至15n的数量对应于多个存储器体或多个存储器页中的每一个中的位线BL的数量。
根据实施例,当对存储器设备100执行读取操作时,根据提供给从存储器单元阵列130中的多个存储器单元中选择的一些存储器单元的字线的读取信号,页缓冲器150存储所选择的一些存储器单元的数据。例如,多个页缓冲器中的每一个包括至少一个锁存器,并且当锁存信号被提供给所述至少一个锁存器时锁存存储器单元的数据。
根据实施例,页缓冲器150响应于列地址信号Y-ADDR选择位线BL的一些。具体而言,页缓冲器150根据操作模式作为写入驱动器或读出放大器(sense amplifier)操作。例如,页缓冲器150作为读出放大器操作,以在读取操作期间输出存储在存储器单元阵列130中的数据,并且页缓冲器150作为写入驱动器操作,以在编程操作期间向存储器单元阵列130输入要存储的数据。
在实施例中,页缓冲器150包括多个页缓冲器组,其中所述多个页缓冲器组中的每一个包括多个页缓冲器单元151至15n。例如,所述多个页缓冲器组的数量对应于存储器单元阵列的存储器体或存储器页的数量。
根据实施例,输入/输出接口170从控制逻辑110接收状态信息信号Status,并且从页缓冲器150接收读取数据Data。根据本发明构思的实施例,输入/输出接口170响应于从控制器200接收的第二读出命令CMD_O2,将状态信息信号Status和读取数据Data传送到控制器200。在实施例中,输入/输出接口170在传送读取数据Data之前将状态信息信号Status传送给控制器200。
图4是根据实施例的控制器的框图。
根据实施例,控制器200包括主机接口(I/F)210、中央处理单元(CPU)220、随机存取存储器(RAM)230、只读存储器(ROM)240、缓冲器250和非易失性存储器设备接口(NVM I/F)260,其中前述组件经由总线通信。
根据实施例,控制器200生成地址和命令CMD(诸如编程命令、读取命令或擦除命令),以控制非易失性存储器设备100的操作(诸如编程操作、读取操作或擦除操作)。编程操作和读取操作是在逐页的基础上执行的,擦除操作是在逐块的基础上执行的,但是实施例不限于此。
根据实施例,控制器200从非易失性存储器设备100接收状态信息信号Status和读取数据Data。控制器200向非易失性存储器设备100提供命令CMD,以控制非易失性存储器设备100的编程、读取和擦除操作。根据本发明构思的实施例的控制器200通过发出第二读出命令CMD_O2来接收状态信息信号Status和读取数据Data两者,并且控制器200基于接收的状态信息信号Status继续从非易失性存储器设备100接收数据或者停止数据接收。
根据实施例,控制器200向非易失性存储器设备100输出命令CMD,以控制非易失性存储器设备100的操作。非易失性存储器设备100和存储器控制器200经由多个输入/输出引脚DQ电连接,并且命令CMD、数据、地址信号、状态信息信号Status等经由多个引脚DQ传送/接收。为了方便,提供以下的关注于读取操作的描述作为实施例。
根据实施例,CPU 220经由总线控制在主机接口210、RAM 230、ROM240、缓冲器250和存储器接口260之间的数据交换。CPU 220生成命令CMD,以将数据编程到非易失性存储器设备100,或者从非易失性存储器设备读取或擦除数据。此外,CPU 220生成编程命令、读取命令和擦除命令。
根据实施例,RAM 230是CPU 220的操作存储器,并且可以被实现为动态RAM(dynamic RAM,DRAM)或静态RAM(static RAM,SRAM)。ROM 240存储用于操作控制器200的程序代码。程序代码可以以固件的形式存储在ROM 240中。缓冲器250可以实现为易失性存储器,诸如DRAM、SRAM或双端口SRAM。
根据实施例,在主机HOST和控制器200之间的通信经由主机接口210来执行。在实施例中,主机HOST响应于编程请求,经由主机接口210将要编程到非易失性存储器设备100的数据传送到控制器200,并且控制器200响应于编程请求,生成其中要存储数据的非易失性存储器设备100的页的页地址和/或对应于该页的字线地址。在实施例中,响应于读取请求,主机HOST经由主机接口210向控制器200传送要从非易失性存储器设备100读取的数据的逻辑区域,并且控制器200生成对应于该逻辑区域的物理区域的页地址。
根据实施例,控制器200和非易失性存储器设备100经由存储器接口260相互通信。存储器接口260对应于上面参考图1描述的输入/输出接口170,并且存储器接口260和输入/输出接口170经由多个引脚DQ相互电连接。
图5是更具体地示出根据实施例的控制器的框图。还参考图1、图3和图4。
根据实施例,控制器200a包括命令生成器270a和信号生成器280a。命令生成器270a和信号生成器280a构成了图4所示的存储器接口260。然而,实施例不限于此,因此,命令生成器270a和信号生成器280a可以被实现为例如软件或固件,并且由CPU 220执行。
根据实施例,控制器200a经由主机接口210接收读取请求,并且经由存储器接口260接收状态信息信号Status和读取数据Data。
根据实施例,命令生成器270a响应于从主机接收的读取请求而发出读取命令CMD_R。此外,命令生成器270a在生成读取命令CMD_R之后的第一时间间隔发出第二读出命令CMD_O2。读取命令CMD_R包括发出的允许非易失性存储器设备100从存储器单元阵列读取数据的命令,并且第二读出命令CMD_O2包括用于向控制器200输出读取数据Data和指示非易失性存储器设备100是否已经完成读取操作的状态信息信号Status的命令。状态信息信号Status包括指示非易失性存储器设备100的读取操作已经完成的就绪状态READY和指示非易失性存储器设备100的读取操作尚未完成的忙碌状态BUSY。
根据本发明构思的实施例,由命令生成器270a生成的第二读出命令CMD_O2被输出到非易失性存储器设备100,并且非易失性存储器设备100响应于第二读出命令CMD_O2将读取数据Data和关于非易失性存储器设备100的状态信息信号Status两者输出到控制器200。
根据实施例,信号生成器280a响应于从主机接收的读取请求生成读取使能信号REB和写入使能信号WEB,并且经由存储器接口260将读取使能信号REB和写入使能信号WEB输出到非易失性存储器设备100。
根据实施例,写入使能信号WEB切换以发出多个命令CMD。此外,读取使能信号REB与数据选通信号DQS同步,其中该数据选通信号用作用于输出非易失性存储器设备100的数据的参考时钟。换句话说,生成读取使能信号REB以输出非易失性存储器设备100的数据。
根据实施例,控制器200a可以基于状态信息信号Status接收数据或停止接收数据。具体而言,控制器200a响应于就绪状态READY的接收而继续接收读取数据Data,并且响应于忙碌状态BUSY的接收而停止接收数据。在忙碌状态BUSY的情况下,可以丢弃直到控制器200a确认忙碌状态BUSY为止所接收的读取数据Data。根据实施例,在直到忙碌状态BUSY被确认为止所读取的数据的情况下,数据可以包括关于非易失性存储器设备100的有故障的存储器单元地址信息或功率信息,而不是非易失性存储器设备100的读取数据Data,从而可以利用所接收的数据。
在实施例中,使用与数据Data相同的输入/输出通道,将命令CMD从控制器200传送到非易失性存储器设备100。例如,控制器200经由输入/输出通道将命令CMD传送到非易失性存储器设备100,并且此后,经由输入/输出通道,将要编程的数据Data传送到非易失性存储器设备100,或者接收从非易失性存储器设备100读取的读取数据Data。然而,本发明构思的实施例不限于此,并且在其他实施例中,传送命令CMD的通道与传送数据Data的通道分离。为了方便起见,图1和图5示出了经由输入/输出接口实现的通道。
图6是示出了根据另一实施例的控制器的框图。还参考了图1、图3和图4。
根据实施例,控制器200b包括命令生成器270b和信号生成器280b,并且还包括模式选择器290b。命令生成器270b和信号生成器280b具有与图5的命令生成器270a和信号生成器280a类似的功能,因此,下面省略对以上参考图5给出的描述的重复。
根据实施例,控制器200b经由主机接口210接收读取请求和读取模式。读取模式包括第一读取模式和第二读取模式。
根据实施例,模式选择器200b根据所接收的读取模式将模式信号MODE施加到命令生成器270b和信号生成器280b。命令生成器270b和信号生成器280b基于模式信号MODE控制非易失性存储器设备100以第一读取模式或第二读取模式操作。
根据实施例,除了上述读取命令CMD_R和第二读出命令CMD_O2之外,命令生成器270b还发出状态读取命令CMD_SR和第一读出命令CMD_O1。发出状态读取命令CMD_SR以允许非易失性存储器设备100在读取命令CMD_R发出之后输出指示读取操作是否已经完成的状态信息信号Status。当就绪状态READY指示非易失性存储器设备100的读取操作已经完成时,发出第一读出命令CMD_O1以允许非易失性存储器设备100输出读取数据Data。
根据实施例,控制器290b在第一读取模式下发出读取命令CMD_R、状态读取命令CMD_SR和第一读出命令CMD_O1,以及在第二读取模式下发出读取命令CMD_R和第二读出命令CMD_O2。然而,实施例不限于此,并且在其他实施例中,读取模式可以包括各种命令CMD的组合。
根据实施例,主机HOST可以响应于用户输入请求读取模式,或者根据预定标准确定读取模式。读取模式确定存储设备10是操作在第一读取模式还是第二读取模式。
图7至图9是示出了根据读取模式生成的信号和命令的时序图。在图7至图9的时序图中,横轴表示时间,并且纵轴表示高(或数据“1”)/低(或数据“0”)信号电平。根据本实施例的存储设备10可以对应于图1的存储设备10的实施例,并且以上参考图1、图3、图5和图6提供的描述适用于本实施例。下面省略上面参考图1、图3、图5和图6给出的描述。
图7是示出了根据实施例的在第一读取模式下生成和发出的信号和命令的时序的时序图。
根据实施例,命令锁存使能信号CLE从控制器200被传送到非易失性存储器设备100。如上所述,由命令生成器270a和270b生成的命令CMD、由信号生成器280a和280b生成的信号、和从非易失性存储器设备100读取的附加信息INFO和数据Data经由相同的输入/输出引脚DQ被传送/接收。控制器200使用命令锁存使能信号CLE来区分经由相同输入/输出引脚DQ传送/接收的数据项,例如命令CMD、信号、数据Data和附加信息INFO。
根据实施例,在时间点t1,控制器200切换用于读取操作的命令锁存使能信号CLE。在经过预定时间之后,控制器200切换写入使能信号WEB,并且在写入使能信号WEB的作为转换时间点(诸如上升沿或下降沿)的时间点t2,发出读取命令CMD_R并且将其传送到非易失性存储器设备100。尽管图7示出了读取命令CMD_R与写入使能信号WEB的第一上升沿(t2)同步地发出,但是读取命令CMD_R可以与写入使能信号WEB的下降沿同步地发出。
根据实施例,非易失性存储器设备100响应于读取命令CMD_R从存储器单元阵列130读取数据。可能需要预定的时间来读取写入的数据。
根据实施例,在发出读取命令CMD_R之后等待第一时间间隔Ta之后的时间点t3,控制器200发出状态读取命令CMD_SR。状态读取命令CMD_SR在写入使能信号WEB的第二上升沿发出。这里,第一时间间隔Ta与针对读取写入到非易失性存储器设备100的数据所估计的时间相对应。
根据实施例,响应于状态读取命令CMD_SR,非易失性存储器设备100向控制器200输出状态信息信号Status,该状态信息信号Status指示存储器单元阵列的读取操作是否已经完成。
在下文中,根据实施例,假设状态信息信号Status指示忙碌状态BUSY。
根据实施例,控制器200转换读取使能信号REB的电平以接收状态信息信号Status。因此,控制器200在时间点t4在读取使能信号REB的上升沿接收忙碌状态BUSY。
根据实施例,在确认非易失性存储器设备100的读取操作尚未完成之后,控制器200在等待第二时间间隔Tb之后的时间点t5处重新发出状态读取命令CMD_SR。这里,第二时间间隔Tb是通过从针对读取写入到非易失性存储器设备100的数据所估计的时间中减去发出读取命令CMD_R的时间(即时间点t2)和确认忙碌状态BUSY的时间(即时间点t4)之间的时间差而获得的。
根据实施例,响应于在时间点t5所接收的状态读取命令CMD_SR,非易失性存储器设备100在时间点t6向控制器200输出指示存储器单元阵列130的读取操作是否已经完成的状态信息信号Status。特别地,非易失性存储器设备100在时间点t6向控制器200输出就绪状态READY,该就绪状态READY指示已经完成了从存储器单元阵列130的读取。
根据实施例,在时间点t6,控制器200确认非易失性存储器设备100的读取操作已经完成,并且在时间点t7,控制器200发出第一读出命令CMD_O1以接收读取数据Data。由于第一读出命令CMD_O1已经发出,控制器200开始切换读取使能信号REB。
根据实施例,非易失性存储器设备100响应于第一读出命令CMD_O1将读取数据Data输出到控制器200。非易失性存储器设备100根据与读取使能信号REB同步的数据选通信号DQS的上升沿和/或下降沿输出读取数据Data。由于已经发出了所有需要的命令CMD,所以写入使能信号WEB的电平将不会转换,直到执行新的读取操作或写入操作。
根据实施例,已经在假设状态信息信号Status指示忙碌状态BUSY的情况下对存储设备10的操作进行了描述。
根据实施例,当状态信息信号Status指示就绪状态READY时,可以跳过在时间点t4和t5的上述操作。例如,在时间点t3发出状态读取命令CMD_SR之后,当确认由控制器200接收的状态信息信号Status指示就绪状态READY时,控制器200发出第一读出命令CMD_O1而不是状态读取命令CMD_SR
图8是示出了根据实施例的在第二读取模式下生成和发出的信号和命令的时序的时序图。关于命令锁存使能信号CLE和写入使能信号WEB,下面省略了上面参考图7给出的描述。此外,假设已经发出了用于存储器单元阵列的读取操作的读取命令CMD_R。
根据实施例,控制器200向非易失性存储器设备100发出并且传送第二读出命令CMD_O2。控制器200转换写入使能信号的电平以发出第二读出命令CMD_O2。第二读出命令CMD_O2在时间点t1在写入使能信号WEB的第一上升沿发出。
根据实施例,在第二读出命令CMD_O2已经发出之后,控制器200开始切换读取使能信号REB。
根据实施例,非易失性存储器设备100在时间点t2开始根据与读取使能信号REB同步的数据选通信号DQS的上升沿和/或下降沿,经由输入/输出引脚DQ输出数据流。
例如,根据实施例,非易失性存储器设备100可以响应于第二读出命令CMD_O2输出状态信息信号Status的忙碌状态BUSY。当存储器单元阵列130的读取操作尚未完成时,非易失性存储器设备100向控制器输出关于非易失性存储器设备100的附加信息INFO(I0-I3)和指示忙碌状态BUSY的状态信息信号Status。例如,附加信息INFO可以包括关于非易失性存储器设备100的功率信息或者有故障的存储器单元的地址。此外,附加信息INFO可以包括指示非易失性存储器设备100的状态的除了写入的数据之外的各种信息。
根据实施例,控制器200在时间点t2接收指示忙碌状态BUSY的状态信息信号Status,并且此后接收附加信息INFO。在确认忙碌状态BUSY之后,控制器200在总共等待第三时间间隔Tc之后的时间点t3重新发出第二读出命令CMD_O2。第二读出命令CMD_O2在时间点t3在写入使能信号WEB的第二上升沿发出。这里,第三时间间隔Tc是通过从针对读取写入到非易失性存储器设备100的数据所估计的时间中减去第二读出命令CMD_O2的第一次发出的时间点(即时间点t1)而获得的。
根据实施例,由于第二读出命令CMD_O2已经重新发出,控制器200再次开始切换读取使能信号REB。响应于第二读出命令CMD_O2,非易失性存储器设备100向控制器200输出状态信息信号Status和读取数据Data。
在实施例中,非易失性存储器设备100根据与读取使能信号REB同步的数据选通信号DQS的上升沿和/或下降沿,输出指示就绪状态READY的状态信息信号Status和读取数据Data。控制器200确认状态信息信号Status指示就绪状态READY,并且完整地接收数据流。在实施例中,读取数据Data和状态信息信号Status都被包括在数据流中,并且读取数据Data在数据选通信号DQS的每个边沿被传送。读取数据Data经由包括在非易失性存储器设备100的输入/输出接口170中的多个引脚DQ输出。图8所示的数据项D0-D4中的每一个经由多个引脚DQ被同时传送到控制器200。
图9是示出了根据另一实施例的在第二读取模式下生成和发出的信号和命令的时序的时序图。下面省略上面参考图7和图8给出的描述。此外,假设已经发出了用于存储器单元阵列的读取操作的读取命令CMD_R。执行如上参考图8所述的相同操作,直到时间点t2。
图9示出了根据实施例的在第二读取模式下操作的存储器设备10的操作。在第二读取模式下,非易失性存储器设备100生成状态信息信号Status,但是不将状态信息信号Status输出到控制器200,并且使用状态信息信号Status来控制内部信号。也就是说,状态信息信号Status是作为预测非易失性存储器设备100的读取操作是否已经完成的结果而在控制逻辑110中生成的内部信号。
根据实施例,在第二时间点t2发出第二读出命令CMD_O2之后,控制器200在时间点t3开始切换读取使能信号REB。
根据本发明构思的实施例,非易失性存储器设备100响应于第二读出命令CMD_O2生成读取数据Data。非易失性存储器设备100确认忙碌状态BUSY,并且延迟切换数据选通信号DQS达第四时间间隔Td。控制器200继续切换读取使能信号REB,而不管状态信息信号Status如何。这里,第四时间间隔Td是通过从针对读取写入到非易失性存储器设备100的数据所估计的时间中减去发出第二读出命令CMD_O2的时间(即时间点t2)和切换读取使能信号REB的时间(即时间点t3)之间的时间差而获得的。
根据实施例,在延迟切换数据选通信号DQS达第四时间间隔Td之后,非易失性存储器设备100在时间点t4开始切换数据选通信号DQS。控制器200顺序地接收读取数据项Data(D0-D4)。
图10示出了根据实施例的由非易失性存储器设备生成的数据流。还参考了图1、图3和图5。
根据实施例,经由输入/输出接口170从非易失性存储器设备100输出到控制器200的数据流包括状态信息信号Status和读取数据Data。
根据实施例,状态信息信号Status可以包括指示从存储器单元阵列130进行读取的操作已经完成的就绪状态READY和指示从存储器单元阵列130进行读取的操作尚未完成的忙碌状态BUSY。
根据实施例,状态信息信号Status经由输入/输出接口170的至少一个引脚DQ输出到控制器200。状态信息信号Status的数据大小可以是但不限于从一位到几个字节。
根据实施例,读取数据Data从存储器单元阵列130读取,并且经由输入/输出接口170的多个引脚DQ输出。读取数据Data可以包括多个数据集,并且可以包括例如经由多个引脚DQ同时输出的信号。
根据实施例,读取数据Data可以包括第一至第五数据集。读取数据Data以至少一个字(word)为单位单独地输出,以构成数据集。例如,第一至第五数据集中的每一个可以是经由多个数据引脚DQ同时输出的信号。
根据实施例,第一数据Data0是除了读取数据Data之外的附加信息INFO。例如,在忙碌状态BUSY的情况下,非易失性存储器设备100生成包括非易失性存储器设备100的故障存储器单元地址或功率状态的附加信息INFO,向控制器200输出指示忙碌状态BUSY的状态信息信号Status,并且同时或之后,向控制器200输出附加信息。
图11和12示出了根据实施例的其中对针对每种模式发出的信号和命令进行了分类的表格。
图11示出了表格T1,其中对针对每个模式发出的命令进行了分类。
参考图11,根据实施例,控制器200在第一读取模式Mode1下发出读取命令CMD_R、状态读取命令CMD_SR和第一读出命令CMD_O1。
根据实施例,控制器200在第二模式Mode2下发出读取命令CMD_R和第二读出命令CMD_O2。
换句话说,根据实施例,控制器200发出读取命令CMD_R,而不管读取模式如何,以读取写入存储器单元阵列130的数据。此外,控制器200生成读取使能信号REB以读出读取数据。
图12示出了表格T2,其中更详细地分类了针对每种模式发出的信号和命令。下面省略上面参考图1至图11给出的描述。此外,假设已经发出了读取命令CMD_R。还参考了图1、图5和图12。
在第一读取模式Mode1下,根据实施例,自从发出了状态读取命令CMD_SR之后,已经确认了状态信息信号Status。当状态信息信号Status指示忙碌状态BUSY时,状态读取命令CMD_SR被重新发出。这里,读取使能信号REB处于关闭状态REB_off,即,不切换(nottoggling)。当状态信息信号Status指示就绪状态READY时,发出第一读出命令CMD_O1。这里,读取使能信号REB开始切换。
在第二读取模式Mode2下,根据实施例,自从发出了第二读出命令CMD_O2之后,已经确认了状态信息信号Status,并且读取使能信号REB开始切换。当状态信息信号Status指示忙碌状态BUSY时,重新发出第二读出命令CMD_O2。这里,读取使能信号REB停止切换。当状态信息信号Status指示就绪状态READY时,不发出附加命令,并且保持读取使能信号REB的切换。
图13是根据实施例的操作控制器的方法的流程图。还参考了图1、图3、图5和图8。
根据实施例,控制器200从主机接收读取请求。控制器200响应于读取请求发出读取命令CMD_R(S10)。
控制器200等待针对存储器单元阵列130完整地读取写入的数据所估计的第一时间间隔t1(S20)。
控制器200发出第二读出命令CMD_O2,该第二读出命令CMD_O2允许非易失性存储器设备100输出状态信息信号Status和读取数据Data两者(S30)。当发出第二读出命令CMD_O2时,控制器200开始切换读取使能信号REB。
控制器200响应于第二读出命令CMD_O2从非易失性存储器设备100接收状态信息信号Status,并且确认接收的状态信息信号Status指示忙碌状态BUSY还是就绪状态READY(S40)。此外,附加信息INFO或读取数据Data可以与状态信息信号Status一起从非易失性存储器设备100接收。
当经确认的状态信息信号Status指示忙碌状态BUSY时,控制器200停止切换读取使能信号REB(S50),并且等待对应于完成读取操作所需时间的第二时间间隔T2(S60)。
当经确认的状态信息信号Status指示就绪状态READY时,控制器200接收读取数据Data并且将该读取数据Data传送到主机HOST(S70)。
图14是根据实施例的操作包括控制器和非易失性存储器设备的存储设备的方法的详细流程图。还参考了图1、图3、图5、图8和图13,并且下面省略了上面参考图1、图3、图5、图8和图13给出的描述。
根据实施例,控制器200响应于来自主机HOST的读取请求而发出读取命令CMD_R(S210),并且读取命令CMD_R被传送到非易失性存储器设备100。
控制器200等待针对存储器单元阵列130完整地读取写入的数据所估计的第一时间间隔t1(S220)。非易失性存储器设备100取得读取命令CMD_R,并且根据读取命令CMD_R解码要读取的存储器单元的地址(S110)。非易失性存储器设备100选择页地址,并且将来自存储器单元阵列(memory cell array,MCA)130的所选择的存储器单元的数据输出到页缓冲器150(S120)。例如,操作S120可以在第一时间间隔t1期间执行。
在经过第一时间间隔t1之后,控制器200发出第二读出命令CMD_O2,该第二读出命令允许非易失性存储器设备100输出状态信息信号Status和读取数据Data两者(S230),并且所发出的第二读出命令CMD_O2被传送到非易失性存储器设备100。
响应于接收到第二读出命令CMD_O2,非易失性存储器设备100生成数据流,以用于经由输入/输出接口170中的多个引脚DQ将状态信息信号Status和读取数据Data传送到控制器200(S130)。
当发出第二读出命令CMD_O2时,控制器200开始切换读取使能信号REB(S240),并且确认状态信息信号Status(S250)。
当经确认的状态信息信号Status指示忙碌状态BUSY时,控制器200停止切换读取使能信号REB(S260),等待对应于完成读取操作所需时间的第二时间间隔t2(S270),并且在等待第二时间间隔t2之后重新发出第二读出命令CMD_O2(到S230)。
当经确认的状态信息信号Status指示就绪状态READY时,控制器200接收读取数据Data并且将读取数据Data传送到主机HOST(S280)。
图15是根据实施例的包括控制器和非易失性存储器设备的存储设备的框图。
参考图15,根据实施例,SSD系统1000包括主机1100和SSD 1200。SSD 1200经由信号连接器与主机1100交换信号SIG,并且主机1100经由功率连接器接收功率PWR。SSD 1200包括SSD控制器1210、辅助电源1220、以及存储器设备1230、存储器设备1240和存储器设备1250。存储器设备1230-1、存储器设备1230-2、……、和存储器设备1230-n分别经由通道Ch1、通道Ch2、……、和通道Chn连接到SSD控制器1210。
根据实施例,SSD控制器1210可以使用上面参考图1至图14描述的控制器200、控制器200a和控制器200b来实现。具体而言,SSD控制器1210经由与用于数据的输入/输出通道相同的输入/输出通道接收命令CMD和各种信号,并且与写入使能信号WEB同步地将命令CMD传送到存储器设备1230、存储器设备1240和存储器设备1250。例如,SSD控制器1210发出用于传送存储器设备1230、存储器设备1240和存储器设备1250的状态信息信号Status和读取数据Data两者的第二读出命令CMD,并且存储器设备1230、存储器设备1240和存储器设备1250响应于接收到第二读出命令CMD,将状态信息信号Status和读取数据Data两者传送到SSD控制器1210。
根据实施例,存储器设备1230、存储器设备1240和存储器设备1250使用了上面参考图1至图14描述的非易失性存储器设备100来实现。具体而言,存储器设备1230、存储器设备1240和存储器设备1250中的每一个经由与用于数据的输入/输出通道相同的输入/输出通道从SSD控制器1210接收命令CMD。例如,存储器设备1230、存储器设备1240和存储器设备1250从各自的控制逻辑电路接收状态信息信号Status,并且从各自的页缓冲器接收读取数据Data。响应于从SSD控制器1210接收到第二读出命令CMD_O2,存储器设备1230、存储器设备1240和存储器设备1250将状态信息信号Status和读取数据Data传送到SSD控制器1210。存储器设备1230、存储器设备1240和存储器设备1250在传送读取数据Data之前将状态信息信号Status传送到SSD控制器1210。
虽然已经参照本发明的示例性实施例具体地图示和描述了本发明构思的实施例,但是应当理解,在不脱离所附权利要求的精神和范围的情况下,可以在形式和细节上进行各种改变。

Claims (20)

1.一种操作存储设备的方法,所述存储设备包括非易失性存储器设备和控制所述非易失性存储器设备的操作的控制器,所述方法包括:
由所述控制器向所述非易失性存储器设备发出第一命令;
由所述非易失性存储器设备响应于所述第一命令,将第一数据从存储器单元阵列读取到所述非易失性存储器设备的页缓冲器中;
由所述控制器向所述非易失性存储器设备发出第二命令;以及
由所述非易失性存储器设备响应于所述第二命令,向所述控制器输出指示根据所述第一命令的读取操作是否已经完成的状态信息和从所述非易失性存储器设备的所述页缓冲器获得的第二数据。
2.如权利要求1所述的方法,还包括:
当所接收的状态信息指示其中所述存储器单元阵列的读取操作已经完成的就绪状态时,由所述控制器从所述非易失性存储器设备连续地接收第二数据;以及
当所接收的状态信息指示其中所述存储器单元阵列的读取操作尚未完成的忙碌状态时,由所述控制器停止从所述非易失性存储器设备接收所述第二数据。
3.如权利要求2所述的方法,还包括由所述控制器在停止所述第二数据的接收之后等待第一时间间隔之后重新发出第二命令。
4.如权利要求1所述的方法,还包括:
在发出所述第二命令之后,由所述控制器切换向所述非易失性存储器设备提供的读取使能信号;以及
在输出所述状态信息和所述第二数据之后,当所接收的状态信息指示其中读取操作尚未完成的忙碌状态时,由所述控制器停止所述读取使能信号的切换。
5.如权利要求4所述的方法,还包括由所述非易失性存储器设备生成与所述读取使能信号同步的数据选通信号,并且与所述数据选通信号的上升沿和/或下降沿同步地输出第二数据。
6.如权利要求1所述的方法,其中,所述输出还包括在其中所述存储器单元阵列的读取操作尚未完成的忙碌状态期间输出第三数据。
7.如权利要求6所述的方法,其中,所述第三数据是所述存储器单元阵列的故障存储器单元地址或功率状态中的至少一个。
8.如权利要求1所述的方法,其中,所述输出还包括在输出所述状态信息之后输出所述第二数据。
9.如权利要求1所述的方法,其中,当所述控制器被设置为第二读取模式时,所述控制器发出所述第一命令和所述第二命令,并且当所述控制器被设置为第一读取模式时,所述控制器发出第一命令、用于输出所述状态信息的第三命令和用于传送所述第二数据的第四命令。
10.一种存储设备,包括:
非易失性存储器设备;和
控制器,所述控制器控制非易失性存储器设备并发出多个命令,
其中,所述非易失性存储器设备包括:
存储器单元阵列,所述存储器单元阵列包括多个存储器单元,并且响应于第一命令而读取第一数据;
控制逻辑,所述控制逻辑基于所述多个命令控制所述存储器单元阵列的读取操作;
页缓冲器,所述页缓冲器缓冲所述第一数据;和
输入/输出接口,所述输入/输出接口响应于第二命令,向所述控制器输出指示读取操作是否已经完成的状态信息和通过缓冲所述第一数据而获得的第二数据。
11.如权利要求10所述的存储设备,其中,所述非易失性存储器设备与数据选通信号同步地输出所述状态信息和所述第二数据,与所述数据选通信号的第一边沿同步地输出状态信息,以及与所述数据选通信号的第二边沿同步地输出所述第一数据。
12.如权利要求10所述的存储设备,其中,所述控制器在发出所述第一命令之后等待第一时间间隔之后发出所述第二命令,并且当从所述非易失性存储器设备接收的状态信息指示其中所述存储器单元阵列的读取操作尚未完成的忙碌状态时,在等待第二时间间隔之后重新发出所述第二命令。
13.如权利要求10所述的存储设备,其中,所述控制器向所述非易失性存储器设备输出读取使能信号,在发出所述第二命令之后开始切换所述读取使能信号,并且当所接收的状态信息指示其中读取操作尚未完成的忙碌状态时停止切换所述读取使能信号。
14.如权利要求10所述的存储设备,其中,所述输入/输出接口在输出所述状态信息之后输出所述第二数据。
15.一种操作存储设备的方法,所述存储设备包括非易失性存储器设备和控制所述非易失性存储器设备的操作的控制器,所述方法包括:
由所述控制器向所述非易失性存储器设备发出第一命令;
由所述非易失性存储器设备响应于所述第一命令,从所述存储器单元阵列读取第一数据;
由所述控制器在第二读取模式下发出用于向所述控制器传送指示根据所述第一命令的所述存储器单元阵列的读取操作是否已经完成的状态信息和所述第一数据的第二命令;以及
由所述控制器在第一读取模式下发出用于输出所述状态信息的第三命令和用于传送所述第一数据的第四命令。
16.如权利要求15所述的方法,还包括由所述非易失性存储器设备响应于所述第二命令向所述控制器传送第一数据,并且在其中所述第一数据的所述读取尚未完成的忙碌状态下,延迟所述第一数据的输出达第一时间间隔。
17.如权利要求16所述的方法,其中,所述延迟还包括由所述非易失性存储器设备在接收到所述第二命令之后的所述第一时间间隔内完成从所述存储器单元阵列读取所述第一数据。
18.如权利要求15所述的方法,其中,发出所述第二命令包括在发出所述第二命令之后,由所述控制器切换所述读取使能信号达第二时间间隔,
其中所述读取使能信号与传送第一数据的数据选通信号同步。
19.如权利要求18所述的方法,其中,所述延迟还包括:
确定所述忙碌状态;以及
将所述数据选通信号保持在恒定电平,而不管所述读取使能信号如何。
20.如权利要求18所述的方法,其中,所述非易失性存储器设备在所述数据选通信号的每个上升沿和/或每个下降沿输出所述第一数据。
CN202011620407.6A 2020-01-02 2020-12-31 存储设备及其操作方法 Pending CN113064840A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200000484A KR20210087350A (ko) 2020-01-02 2020-01-02 저장 장치 및 이의 동작 방법
KR10-2020-0000484 2020-01-02

Publications (1)

Publication Number Publication Date
CN113064840A true CN113064840A (zh) 2021-07-02

Family

ID=74129944

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011620407.6A Pending CN113064840A (zh) 2020-01-02 2020-12-31 存储设备及其操作方法

Country Status (4)

Country Link
US (1) US20210208815A1 (zh)
EP (1) EP3846170A1 (zh)
KR (1) KR20210087350A (zh)
CN (1) CN113064840A (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220142660A (ko) * 2021-04-15 2022-10-24 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
CN115905032A (zh) * 2021-08-20 2023-04-04 深圳市江波龙电子股份有限公司 存储设备及其数据回收方法、控制设备及可读存储介质
US20240094948A1 (en) * 2022-06-29 2024-03-21 Western Digital Technologies, Inc. Transfer of internal device data over command response
EP4390927A1 (en) * 2022-12-23 2024-06-26 Samsung Electronics Co., Ltd. Memory controller and operation method thereof

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100762259B1 (ko) * 2005-09-12 2007-10-01 삼성전자주식회사 버스트 읽기 레이턴시 기능을 갖는 낸드 플래시 메모리장치
US20110264851A1 (en) * 2006-12-07 2011-10-27 Tae-Keun Jeon Memory system and data transmitting method thereof
KR20130034522A (ko) * 2011-09-28 2013-04-05 삼성전자주식회사 비휘발성 메모리 장치의 데이터 리드 방법, 및 이를 수행하는 장치
KR20140093855A (ko) * 2013-01-18 2014-07-29 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 제어 방법
KR102143517B1 (ko) * 2013-02-26 2020-08-12 삼성전자 주식회사 에러 정정회로를 포함하는 반도체 메모리 장치 및 반도체 메모리 장치의 동작방법
US9436397B2 (en) * 2014-09-23 2016-09-06 Sandisk Technologies Llc. Validating the status of memory operations
US10310942B2 (en) * 2016-09-20 2019-06-04 Toshiba Memory Corporation Memory system
JP2018163719A (ja) * 2017-03-24 2018-10-18 東芝メモリ株式会社 半導体デバイス
JP2019036375A (ja) * 2017-08-17 2019-03-07 東芝メモリ株式会社 半導体記憶装置
JP2019046254A (ja) * 2017-09-04 2019-03-22 東芝メモリ株式会社 半導体メモリ装置、方法及びプログラム
CN111448543B (zh) * 2017-12-07 2021-10-01 华为技术有限公司 内存访问技术及计算机系统
JP2021022414A (ja) * 2019-07-29 2021-02-18 キオクシア株式会社 半導体記憶装置
KR20210038753A (ko) * 2019-09-30 2021-04-08 에스케이하이닉스 주식회사 데이터 저장 장치 및 그 동작 방법
US11221911B2 (en) * 2019-10-11 2022-01-11 International Business Machines Corporation Data recovery due to transient effects in NAND flash memories
KR20210077451A (ko) * 2019-12-17 2021-06-25 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법

Also Published As

Publication number Publication date
EP3846170A1 (en) 2021-07-07
KR20210087350A (ko) 2021-07-12
US20210208815A1 (en) 2021-07-08

Similar Documents

Publication Publication Date Title
USRE48431E1 (en) Nonvolatile memory device, read method for nonvolatile memory device, and memory system incorporating nonvolatile memory device
KR102149768B1 (ko) 불휘발성 메모리 시스템
KR102353027B1 (ko) 스토리지 장치의 데이터 트레이닝 방법
US11416426B2 (en) Memory device and method of operating the same
EP3846170A1 (en) Storage device and operating method thereof
CN108573730B (zh) 数据传输训练方法及执行该方法的数据存储装置
CN107767913B (zh) 输出存储装置的内部状态的装置和使用其的存储系统
US11114170B2 (en) Memory system
US11200932B2 (en) Non-volatile memory device, controller and memory system
US10902928B2 (en) Memory system, operation method thereof, and nonvolatile memory device
US11442664B2 (en) Memory system and method of operating the same
US11837321B2 (en) Apparatus, memory controller, memory device, memory system, and method for clock switching and low power consumption
KR20220021772A (ko) 메모리 시스템 및 이에 포함된 메모리 장치의 동작 방법
CN110047547A (zh) 数据储存装置、其操作方法和非易失性存储器件
CN113900969A (zh) 存储器装置及其操作方法
CN113454720B (zh) 存储设备及其控制方法
US11645008B2 (en) Memory system and operating method thereof for controlling a multi-plane read operation
US20160077762A1 (en) Memory system, storage system
US20210089208A1 (en) Memory system and data processing system including the same
KR102473197B1 (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