CN109992201B - 数据存储设备及其操作方法 - Google Patents

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

Info

Publication number
CN109992201B
CN109992201B CN201811125478.1A CN201811125478A CN109992201B CN 109992201 B CN109992201 B CN 109992201B CN 201811125478 A CN201811125478 A CN 201811125478A CN 109992201 B CN109992201 B CN 109992201B
Authority
CN
China
Prior art keywords
command
abort
data
normal
commands
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.)
Active
Application number
CN201811125478.1A
Other languages
English (en)
Other versions
CN109992201A (zh
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
SK Hynix 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 SK Hynix Inc filed Critical SK Hynix Inc
Publication of CN109992201A publication Critical patent/CN109992201A/zh
Application granted granted Critical
Publication of CN109992201B publication Critical patent/CN109992201B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

本发明涉及一种数据存储设备,该数据存储设备包括:非易失性存储器装置;命令队列,对一个或多个正常命令和中止命令进行排队;数据缓冲器,临时存储待从主机设备传输到非易失性存储器装置的写入数据以及从非易失性存储器装置读出并待被传输到主机设备的读取数据;中止处理器,执行针对正常命令之中的、与中止命令相对应的正常命令的中止处理;以及处理器,指示中止处理器在正常命令被传输到非易失性存储器装置之前执行中止处理。

Description

数据存储设备及其操作方法
相关申请的交叉引用
本申请要求于2018年1月3日提交的申请号为10-2018-0000735的韩国专利申请的优先权,其通过引用整体并入本文。
技术领域
各个实施例可以总体涉及一种半导体设备,并且更特别地,涉及一种数据存储设备及其操作方法。
背景技术
近年来,计算机环境范例变成可以随时随地使用的普适计算。因此,诸如移动电话、数码相机和膝上型计算机的便携式电子设备的使用已经快速增长。通常,便携式电子设备使用采用了存储器装置的数据存储设备,来存储在便携式电子设备中使用的数据。
使用存储器装置的数据存储设备不具有机械驱动单元并且表现出优良的稳定性和耐久性、高信息访问速度和低功耗。这种数据存储设备可以包括通用串行总线(USB)存储器装置、具有各种接口的存储卡、通用闪存(UFS)装置、固态驱动器(SSD)等。由于消费者对改进的电子装置的需求,需要进一步改进在这种装置中采用的数据存储设备的功能和性能。
发明内容
提供了本发明的实施例,包括一种能够防止故障的数据存储设备及数据存储设备的操作方法。
在本公开的实施例中,提供了一种数据存储设备,该数据存储设备可以包括:非易失性存储器装置;命令队列,其被配置为对一个或多个正常命令和中止命令(abortcommand)进行排队;数据缓冲器,其被配置为临时存储待从主机设备传输到非易失性存储器装置的写入数据以及从非易失性存储器装置读出并待被传输到主机设备的读取数据;中止处理器,其被配置为执行针对正常命令之中的、与中止命令相对应的正常命令的中止处理;以及处理器,其被配置为指示中止处理器在正常命令被传输到非易失性存储器装置之前执行中止处理。
在本公开的实施例中,提供了一种数据存储设备的操作方法,该方法可以包括:指示中止处理器执行中止处理;通过中止处理器扫描命令队列来确定是否存在被排队的中止命令;通过中止处理器执行针对正常命令之中的、与中止命令相对应的正常命令的中止处理;并且通过中止处理器将完成中止处理的报告提供给控制器。
在本公开的实施例中,提供了一种用于控制存储器系统的控制器,该控制器包括:命令队列,其适于对一个或多个命令进行排队;数据缓冲器,其适于缓冲与命令相对应的数据;命令缓冲器,其适于缓冲一个或多个命令;以及处理器,其适于:在命令列队中重新排列被排队的命令;使被重新排列的命令出队(de-queue)到命令缓冲器;输出被缓冲的命令以控制存储器装置执行操作;删除由中止命令指示的被排队的命令、被重新排列的命令和被缓冲的命令之中的一个或多个;并且删除与被删除的命令相对应的被缓冲的数据。
根据本发明的各个实施例,控制器可以确定待执行从主机设备传输的中止命令的中止处理的时间点,并且因此可以防止控制器内的各种功能模块之间的或非易失性存储器装置内的各种功能模块之间的操作同步被中断。
以下在标题为“具体实施方式”的部分中描述这些和其它特征、方面和实施例。
附图说明
从以下结合附图的详细描述中将更清楚地理解本公开主题的上述和其它方面、特征及优点,其中:
图1是示出根据本公开的实施例的数据存储设备的配置示例的简化框图;
图2是示出根据本公开的实施例的命令传输进程的简图;
图3A和图3B是示出根据本公开的实施例的根据中止处理指令定时来改变删除请求中止命令的位置的示例的简图;
图4是示出根据本公开的实施例的与写入命令相对应的写入数据被存储在数据缓冲器中的示例的简图;
图5是示出根据本公开的实施例的在执行中止处理时删除存储在数据缓冲器中的数据并且改变索引的示例的简图;
图6是示出根据本公开的实施例的数据存储设备的操作方法的流程图;
图7是示出执行图6中的中止处理的进程的详细流程图;
图8是示出包括根据本公开的实施例的固态硬盘(SSD)的数据处理系统的示例的简图;
图9是示出图8所示的控制器的示例的简图;
图10是示出包括根据本公开的实施例的数据存储设备的数据处理系统的示例的简图;
图11是示出包括根据本公开的实施例的数据存储设备的数据处理系统的示例的简图;
图12是示出包括根据本公开的实施例的数据存储设备的网络系统的示例的简图;以及
图13是示出包括在根据本公开的实施例的数据存储设备中的非易失性存储器装置的示例的简图。
具体实施方式
将参照附图更详细地描述本发明的各个实施例。附图是各个实施例(和中间结构)的简化示意图。这样,由于例如制造技术和/或公差导致的图示的配置和形状的变化是可预期的。因此,描述的实施例不应被解释为限于本文示出的特定配置和形状,而是可以包括不脱离如所附权利要求中限定的本发明的精神和范围的、在配置和形状方面的偏离。
本文参照本发明的理想化实施例的横截面图和/或平面图来描述本发明。然而,本发明的实施例不应被解释为限制本发明构思。虽然将示出和描述本发明的少数实施例,但是本领域的普通技术人员将理解,在不脱离本发明的原理和精神的情况下,可以对这些实施例进行改变。
将进一步理解的是,当元件被称为“连接至”或“联接至”另一元件时,它可以直接在其它元件上、连接至或联接至其它元件,或可存在一个或多个中间元件。另外,还将理解的是,当元件被称为在两个元件“之间”时,两个元件之间可以仅有该元件或也可存在一个或多个中间元件。
当在本文中与项目列表一起使用短语“......和......中的至少一个”时,该短语是指列表中的单个项目或列表中项目的任意组合。例如,“A、B和C中的至少一个”是指仅A、或仅B、或仅C、或A、B和C的任意组合。
本文所使用的术语“或”是指两个或更多个可选方案中的一个,而不是两个可选方案中的两者,也不是更多方案中的任意组合。
如本文使用的,术语“和/或”包括一个或多个相关所列项目中的任意和所有组合。
如本文使用的,单数形式也旨在包括复数形式,除非上下文另有清楚地说明。
将进一步理解的是,在本说明书中,术语“包含(includes)”和“包含有(including)”可以与开放式术语“包括(comprises)”、“包括有(comprising)”互换使用,以指定任何所述元件的存在并且不排除一个或多个其它未阐述元件的存在或添加。
除非另有限定,否则就本公开而言,本文所使用的包括技术术语和科学术语的所有术语具有与本发明所属领域中普通技术人员通常理解的含义相同的含义。将进一步理解的是,诸如在常用词典中限定的那些术语的术语应被理解为具有与它们在本公开的上下文和相关领域中的含义一致的含义并且将不以理想化或过于正式的意义来解释,除非本文如此明确地限定。
在以下描述中,为了提供本发明的全面理解,阐述了许多具体细节。本发明可在没有一些或全部这些具体细节的情况下被实施。在其它情况下,为了不使本发明不必要地模糊,未详细地描述公知的进程结构和/或进程。
图1是示出根据实施例的数据存储设备10的配置示例的简化框图。根据实施例的数据存储设备10可以存储待由诸如移动电话、MP3播放器、膝上型计算机、台式计算机、游戏机、电视(TV)或车载信息娱乐系统等的主机设备(未示出)访问的数据。在本文中,数据存储设备10也可以被称为存储器系统。
数据存储设备10可以被制造为可以经由采用传输协议的合适的主机接口与主机设备(未示出)联接的各种类型的存储设备中的任意一种。例如,数据存储设备10可以被配置为诸如以下的各种类型的存储设备之中的任意一种:固态硬盘(SSD)、以MMC、eMMC、RS-MMC和微型-MMC形式的多媒体卡、以SD、迷你-SD和微型-SD形式的安全数字卡、通用串行总线(USB)存储装置、通用闪存(UFS)装置、个人计算机存储卡国际协会(PCMCIA)卡式存储装置、外围组件互连(PCI)卡式存储装置、PCI-高速(PCI-E)卡式存储装置、标准闪存(CF)卡、智能媒体卡、记忆棒等。
数据存储设备10可以被制造为各种类型的封装之中的任意一种。例如,数据存储设备10可以被制造为诸如以下的各种类型的封装之中的任意一种:堆叠封装(POP)、系统级封装(SIP)、片上系统(SOC)、多芯片封装(MCP)、板上芯片(COB)、晶圆级制造封装(WFP)和晶圆级堆叠封装(WSP)。
参照图1,数据存储设备10可以包括非易失性存储器装置100和控制器200。
非易失性存储器装置100可以用作数据存储设备10的存储介质。非易失性存储器装置100可以包括诸如以下的各种类型的非易失性存储器装置之中的任意一种:NAND闪速存储器装置、NOR闪速存储器装置、使用铁电电容器的铁电随机存取存储器(FRAM)、使用隧道磁阻(TMR)层的磁性随机存取存储器(MRAM)、使用硫族化物合金的相变随机存取存储器(PRAM)和使用过渡金属化合物的电阻式随机存取存储器(RERAM)。
虽然非易失性存储器装置100在图1中被示为一个块,但是非易失性存储器装置100可以包括多个管芯,每个管芯包括多个存储块。
非易失性存储器装置100可以包括存储器单元阵列,其中存储器单元阵列包括多个存储器单元(未示出),其中多个存储器单元布置在多个字线(未示出)和多个位线(未示出)彼此交叉的区域中。存储器单元阵列可以包括多个存储块,并且多个存储块中的每一个可以包括多个页面。
例如,存储器单元阵列中的存储器单元中的每一个可以是存储单个位数据(例如,1位数据)的单层单元(SLC)、存储2位数据的多层单元(MLC)、存储3位数据的三层单元(TLC)以及存储4位数据的四层单元QLC中的至少一种。存储器单元阵列可以包括SLC、MLC、TLC和QLC中的一个或多个单元。存储器单元阵列可以包括以二维(2D)水平结构或三维(3D)垂直结构布置的存储器单元。
控制器200可以包括主机接口210、命令队列(CMDQ)220、处理器230、随机存取存储器(RAM)240、缓冲器管理器(BM)250、中止处理器260和存储器接口270。
主机接口210可以执行主机设备(未示出)和数据存储设备10之间的接口连接。例如,主机接口210可以通过包括例如以下的合适的传输协议与主机设备通信:USB协议、UFS协议、MMC协议、并行高级技术附件(PATA)协议、串行高级技术附件(SATA)协议、小型计算机系统接口(SCSI)协议、串列SISI(SAS)协议、PCI协议、PCI-E协议等。
主机接口210可以包括主机命令缓冲器HCMDB,以用于临时存储从主机设备传输的诸如读取命令、写入命令、取消映射命令等的命令。主机命令缓冲器HCMDB可以被配置为具有先入先出(FIFO)结构。
命令队列220可以包括正常命令队列NCMDQ和中止命令队列ACMDQ。临时存储在主机命令缓冲器HCMDB中的命令之中的正常命令可以被排队在正常命令队列NCMDQ中。正常命令可以指请求对非易失性存储器装置100执行例如读取操作、写入操作、取消映射操作等操作的命令。例如,正常命令可以包括请求待在非易失性存储器装置100中执行操作的任何命令。中止命令可以指请求中止根据先前被传输的正常命令之中的任意正常命令而待被执行的操作的命令。
存储在主机接口210的主机命令缓冲器HCMDB中的正常命令和中止命令可以通过处理器230的控制而被分别排队到命令队列220的正常命令队列NCMDQ和中止命令队列ACMDQ中。
处理器230可以被配置为微控制单元(MCU)或中央处理单元(CPU)。处理器230可以处理从主机设备传输的命令(例如,读取命令、写入命令、取消映射命令等)。为了处理从主机设备传输的命令,处理器230可以驱动被加载到RAM 240中的代码类型指令或算法(例如,软件)。处理器230可以控制内部功能块和非易失性存储器装置100。
当从主机设备接收到中止命令时,处理器230可以使接收的中止命令排队到命令队列220的中止命令队列ACMDQ中,并且可以不中止当前执行的操作。处理器230可以控制中止处理器260在预设的任意定时处执行针对接收的中止命令的中止处理。下面将参照附图详细描述这种操作。
RAM 240可以被配置为诸如动态RAM(DRAM)或静态RAM(SRAM)的随机存取存储器。RAM 240可以存储通过处理器230被驱动的软件。RAM 240可以存储驱动软件所需的数据。例如,RAM 240可以用作处理器230的工作存储器。
当非易失性存储器装置100被配置为闪速存储器装置时,处理器230可以控制非易失性存储器装置100的内部操作并驱动用于向主机设备提供装置兼容性的、被称为闪存转换层(FTL)的软件。通过驱动闪存转换层(FTL),主机设备可以通过将数据存储设备10识别为诸如硬盘的通用数据存储设备来使用数据存储设备10。
闪存转换层(FTL)可以被加载到RAM 240中并且可以被配置为模块,其中模块被配置为执行驱动该模块所需的各种功能和元数据。例如,闪存转换层(FTL)可以包括损耗均衡模块、坏块管理模块、垃圾收集模块、交叉模块、突然断电管理模块、地址映射等。然而,应注意,闪存转换层(FTL)的配置不限于此。
RAM 240可以包括数据缓冲器DB,其中数据缓冲器DB可以临时存储从主机设备接收并待被传输到非易失性存储器装置100的数据(例如,写入数据)以及从非易失性存储器装置100读出并且待被传输到主机设备的数据(例如,读取数据)。虽然未在图1中具体示出,但是数据缓冲器DB可以包括临时存储写入数据的写入数据缓冲器和临时存储读取数据的读取数据缓冲器。
缓冲器管理器250可以被配置为管理数据缓冲器DB。例如,缓冲器管理器250可以管理数据缓冲器DB,使得临时存储在数据缓冲器DB中的写入数据或读取数据被传输到非易失性存储器装置100或主机设备。缓冲器管理器250可以管理数据缓冲器DB,使得临时存储在数据缓冲器DB中的数据之中的、与由于中止命令而待被中止的正常命令相对应的数据被删除。缓冲管理器250可以改变由于中止命令而在数据缓冲器DB中被删除数据的位置的索引。与被删除数据相对应的索引可以是分配给被删除数据的索引,并且因此可以对随后待被存储的数据重新分配索引,并且可以通过缓冲管理器250来管理新索引分配。
中止处理器260可以通过处理器230的控制,响应于中止命令来执行中止处理。例如,当响应于中止命令从处理器230传输中止处理指令时,中止处理器260可以通过扫描命令队列220的中止命令队列ACMDQ来确定是否有一个或多个中止命令被排队在中止命令队列ACMDQ中。
当不存在排队的中止命令时,中止处理器260可以向处理器230报告不需要执行中止处理。当从中止处理器260接收到不需要执行中止处理的报告时,处理器230可以控制数据存储设备10的全部操作,以便执行后续操作。
当存在一个或多个排队的中止命令时,中止处理器260可以执行针对作为中止命令的目标的正常命令的中止处理。中止处理可以包括以下的一系列操作:从命令队列220的正常命令队列NCMDQ或包括在存储器接口270中的存储器命令缓冲器MCMDB中删除目标正常命令,从数据缓冲器DB中删除与被删除的正常命令相对应的数据(例如,写入数据或读取数据),并且改变数据缓冲器DB中被删除数据的位置的索引。
图2是示出命令传输进程的简图,并且图3A和图3B是示出根据中止处理指令定时来改变删除请求中止的命令的位置的示例的简图。在图2至图3B中,参考字母“W”、“U”和“R”可以分别表示“写入命令”、“取消映射命令”和“读取命令”,并且字母后面的附图标记“1”和“2”可以表示命令接收的顺序。参考字母“A”表示“中止命令”。例如,“AW1”可以指示用于请求中止第一写入命令“W1”的中止命令。
参照图2,可以根据从主机设备接收的命令的接收顺序将从主机设备接收的命令存储在主机接口210的主机命令缓冲器HCMDB中。存储在主机命令缓冲器HCMDB中的命令可以按照命令接收顺序被传输到命令队列220。
如上所述,命令队列220可以包括将正常命令进行排队的正常命令队列NCMDQ和将中止命令进行排队的中止命令队列ACMDQ。从主机命令缓冲器HCMDB传输的命令可以根据命令是正常命令还是中止命令而被排队在正常命令队列NCMDQ或中止命令队列ACMDQ。被排队在命令队列220的正常命令队列NCMDQ中排队的正常命令,例如“W1”、“U1”、“W2”和“R1”可以根据排队顺序从正常命令队列NCMDQ中出队,并且被存储在存储器接口270的存储器命令缓冲器MCMDB中。存储在存储器命令缓冲器MCMDB中的存储器命令可以被传输到非易失性存储器装置100。存储在存储器命令缓冲器MCMDB中的存储器命令可以是基于如上所述的从正常命令队列NCMDQ出列的正常命令而在命令发生器(未示出)中生成的命令。
处理器230可以根据被排队在命令队列220的正常命令队列NCMDQ中的正常命令的优先级重新排列被排队在命令队列220的正常命令队列NCMDQ中正常命令。重新排列被排队的命令的操作在相关技术中已经是公知的,并且与本公开的主要特征无关,因此将省略对其的详细描述。
处理器230可以指示中止处理器260在被排队正常命令队列NCMDQ中的正常命令W1、U1、W2和R1被重新排列之前的定时①处或者在正常命令W1、U1、W2和R1被重新排列之后的出队之前的定时②处执行中止处理。当从处理器230接收到中止处理指令时,中止处理器260可以通过扫描命令队列220的中止命令队列ACMDQ来确定是否存在排队的中止命令。
当不存在中止命令时,中止处理器260可以将不需要中止处理的报告提供至处理器230。当从中止处理器260接收到不需要中止处理的报告时,处理器230可以控制数据存储设备10执行随后的操作。例如,处理器230可以确定被排队在正常命令队列NCMDQ中的正常命令W1、U1、W2和R1中不存在待被中止的命令,并且使待被传输到存储器命令缓冲器MCMDB的正常命令出队。
当存在中止命令时,中止处理器260可以确定作为中止命令“AW1”的目标的正常命令的当前位置。假设正常命令W1是中止命令AW1的目标。例如,当处理器230的中止处理指令定时是在正常命令W1、U1、W2和R1被重新排列之后正常命令W1、U1、W2和R1出队之前的定时②时,中止处理器260可以确定作为中止命令AW1的目标的正常命令W1的当前位置是正常命令队列NCMDQ。因此,如图3A所示,中止处理器260可以从正常命令队列NCMDQ中删除与中止命令AW1相对应的正常命令W1,并且可以不将删除的正常命令W1传输到存储器命令缓冲器MCMDB。
处理器230可以指示中止处理器260在存储在存储器命令缓冲器MCMDB中的命令W1、U1、W2和R1被传输到非易失性存储器装置100之前的定时③处执行中止处理。中止处理器260可以通过与上述方法相同的方法来确定与中止命令AW1相对应的正常命令W1的当前位置是存储器命令缓冲器MCMDB。因此,如图3B所示,中止处理器260可以从存储器命令缓冲器MCMDB中删除与中止命令AW1相对应的正常命令W1,并且可以不将被删除的正常命令W1传输到非易失性存储器装置100。
图4是示出与写入命令相对应的写入数据被存储在数据缓冲器DB中的示例的简图,并且图5是示出通过执行中止处理来删除存储在数据缓冲器DB中的数据并且改变被删除数据的索引的示例的简图。为了清楚起见,在图4和图5中已经示出,数据缓冲器DB是存储写入数据的写入数据缓冲器,并且数据缓冲器DB具有存储j个数据的大小。图4和图5中数据缓冲器DB一侧处的符号“1”至“j”可以指示存储的写入数据的索引。
当从主机设备接收到写入命令时,可以与写入命令一起接收与写入命令相对应的写入数据,并且可以将接收的写入数据临时存储在RAM 240的数据缓冲器DB中。可以通过缓冲器管理器250来设置和改变数据缓冲器DB中的、存储写入数据的位置的索引。每当新数据被存储在数据缓冲器DB中时,可以增加数据缓冲器DB中的位置的索引,但是这不限于此。
如图4所示,当第一写入命令W1和第二写入命令W2从主机设备被顺序地传输并被存储在主机命令缓冲器HCMDB中时,与第一写入命令W1相对应的第一写入数据WDATA11至WDATA1i以及与第二写入命令W2相对应的第二写入数据WDATA21至WDATA2i也可以被顺序地存储在数据缓冲器DB中。索引“1”至“i”可以对应于第一写入数据WDATA11至WDATA1i,并且索引“i+1”至“j”可以对应于第二写入数据WDATA21至WDATA2i。
根据处理器230的中止处理指令,如图3A和图3B所示,中止处理器260可以从正常命令队列NCMDQ或存储器命令缓冲器MCMDB中删除与中止命令AW1相对应的正常命令W1,并且同时,如图5所示,中止处理器260使用缓冲管理器250删除存储在数据缓冲器DB中的第一写入数据WDATA11至WDATA1i。当删除第一写入数据WDATA11至WDATA1i时,可能需要改变被分配给第一写入数据WDATA11至WDATA1i的索引(例如,“1”至“i”)。中止处理器260可以使用缓冲器管理器250将数据缓冲器DB中的、存储第一写入数据WDATA11至WDATA1i的位置的索引“1”至“i”改变为“j+1”至“k”。然后,从主机设备接收的数据可以被顺序地存储在改变了索引的位置中。
在实施例中,可以不通过中断方式来处理中止命令,而是可以使用单独设置的中止处理器260在基于处理器230所确定的定时处处理中止命令。例如,在实施例中,控制器200可以确定中止处理的执行定时,并且因此可以防止数据存储设备10的控制器200内的各种功能模块之间的或非易失性存储器装置100内的各种功能模块之间的同步被打断的问题。
存储器接口270可以根据处理器230的控制来控制非易失性存储器装置100。存储器接口270也可以被称为存储器装置控制器。存储器接口270可以将控制信号提供给非易失性存储器装置100。控制信号可以包括用于控制非易失性存储器装置100的命令、地址等。存储器接口270可以将数据提供给非易失性存储器装置100,或者可以从非易失性存储器装置100接收数据。存储器接口270可以通过信道CH联接到非易失性存储器装置100。信道可以包括一个或多个信号线。
存储器接口270可以包括存储器命令缓冲器MCMDB。虽然未在图1中示出,但是控制器200可以包括命令发生器(未示出),其中命令发生器被配置为基于被排队在命令队列220的正常命令队列NCMDQ中的正常命令来生成待被传输到非易失性存储器装置100的存储器命令。处理器230可以使用命令发生器生成存储器命令,并且在命令发生器中生成的存储器命令可以被存储在存储器接口270的存储器命令缓冲器MCMDB中。存储器命令缓冲器MCMDB可以具有FIFO结构。
图6是示出根据本公开的实施例的数据存储设备的操作方法的流程图。图7是示出图6的操作S640的详细流程图。将参照图1至图7描述根据实施例的数据存储设备的操作方法。
在操作S610中,控制器(参见图1的200)的处理器(参见图1的230)可以指示中止处理器260执行中止处理。
在操作S620中,中止处理器260可以扫描命令队列220的中止命令队列ACMDQ。
在操作S630中,中止处理器260可以确定是否存在被排队在中止命令队列ACMDQ中的中止命令。当存在被排队在中止命令队列ACMDQ中排队的中止命令时,处理器可以进行到操作S640。
在操作640中,中止处理器260可以执行针对中止命令的中止处理。将参照图7描述中止处理的详细操作。
在操作S641中,中止处理器260可以删除与中止命令相对应的正常命令。例如,当处理器230的中止处理指令定时是在被排队正常命令队列NCMDQ中的正常命令被重新排列之前的定时或者在正常命令从正常命令队列NCMDQ出队之前的定时时,中止处理器260可以从正常命令队列NCMDQ中删除与中止命令相对应的正常命令。当处理器230的中止处理指令定时是存储在存储器命令缓冲器MCMDB中的正常命令被传输到非易失性存储器装置100之前的定时时,中止处理器260可以从存储器命令缓冲器MCMDB中删除与中止命令相对应的正常命令。
在操作S643中,中止处理器260可以使用缓冲器管理器250从数据缓冲器DB中删除与被删除的正常命令相对应的数据。当被删除的正常命令是写入命令时,中止处理器260可以从数据缓冲器DB的写入数据缓冲器中删除相应的写入数据。当被删除的正常命令是读取命令并且在从非易失性存储器装置100读出与相应读取命令相对应的数据之前,待从数据缓冲器DB的读取数据缓冲器中删除的数据可能不存在。
在操作S645中,中止处理器260可以使用缓冲器管理器250来改变从数据缓冲器DB中删除数据的位置的索引。当完成了索引改变时,可以完成针对中止命令的中止处理。
在操作S650中,中止处理器260可以将完成中止处理的报告提供给处理器230。当接收到完成中止处理的报告时,处理器230可以控制数据存储设备10执行随后操作。
在操作S630中,当不存在被排队在中止命令队列ACMDQ中的中止命令时,处理器230可以进行到操作S660。
在操作S660中,中止处理器260可以将不需要中止处理的报告提供给处理器230。当接收到不需要中止处理的报告时,处理器230可以控制数据存储设备10执行随后操作。
图8是示出包括根据实施例的固态硬盘(SSD)的数据处理系统的示例的简图。参照图8,数据处理系统2000可以包括主机设备2100和SSD 2200。
SSD 2200可以包括控制器2210、缓冲存储器装置2220、非易失性存储器装置2231至223n、电源2240、信号连接器2250和电源连接器2260。
控制器2210可以控制SSD 2220的全部操作。
缓冲存储器装置2220可以临时存储待被存储在非易失性存储器装置2231至223n中的数据。缓冲存储器装置2220可以临时存储从非易失性存储器装置2231至223n读取的数据。临时存储在缓冲存储器装置2220中的数据可以根据控制器2210的控制而被传输到主机设备2100或非易失性存储器装置2231至223n。
非易失性存储器装置2231至223n可以用作SSD 2200的存储介质。非易失性存储器装置2231至223n可以通过多个信道CH1至CHn联接到控制器2210。一个或多个非易失性存储器装置可以联接到一个信道。联接到一个信道的非易失性存储器装置可以联接到相同的信号总线和相同的数据总线。
电源2240可以将通过电源连接器2260输入的电力PWR提供给SSD 2200的内部。电源2240可以包括辅助电源2241。辅助电源2241可以供给电力,使得即使当发生突然断电时SSD 2200也正常地终止。辅助电源2241可以包括能够对电力PWR充电的大容量电容器。
控制器2210可以通过信号连接器2250与主机设备2100交换信号SGL。信号SGL可以包括命令、地址、数据等。根据主机设备2100和SSD 2200之间的接口方式,信号连接器2250可以被配置为各种类型的连接器。
图9是示出图8的控制器2210的示例的简图。参照图9,控制器2210可以包括主机接口单元2211、控制单元2212、随机存取存储器(RAM)2213、错误校正码(ECC)单元2214和存储器接口单元2215。控制单元2212、主机接口单元2211、存储器接口2215和存储器RAM 2213可以分别对应于图1的处理器230、主机接口210、存储器接口270和RAM 240。根据主机设备2100的协议,主机接口单元2211可以执行主机设备2100和SSD 2200之间的接口连接。例如,主机接口单元2211可以通过以下之中的任意一种来与主机设备2100通信:安全数字协议、通用串行总线(USB)协议、多媒体卡(MMC)协议、嵌入式MMC(eMMC)协议、个人计算机存储卡国际协会(PCMCIA)协议、并行高级技术附件(PATA)协议、串行高级技术附件(SATA)协议、小型计算机系统接口(SCSI)协议、串列SCSI(SAS)协议、外围组件互连(PCI)协议、PCI高速(PCI-E)协议和通用闪存装置(UFS)协议。主机接口单元2211可以执行主机设备2100将SSD2200识别为例如硬盘驱动器HDD的通用数据存储设备的盘模拟功能。
控制单元2212可以分析和处理从主机设备2100输入的信号SGL。控制单元2212可以根据用于驱动SSD 2200的固件和/或软件来控制内部功能块的操作。RAM 2213可以用作驱动固件或软件的工作存储器。
ECC单元2214可以生成待被传输到非易失性存储器装置2231至223n的数据的奇偶校验数据。生成的奇偶校验数据可以与数据一起被存储在非易失性存储器装置2231至223n中。ECC单元2214可以基于奇偶校验数据来检测从非易失性存储器装置2231至223n读取的数据的错误。如果检测到的错误在可校正的范围内,则ECC单元2214可以校正检测到的错误。
存储器接口单元2215可以根据控制单元2212的控制将诸如命令和地址的控制信号提供给非易失性存储器装置2231至223n。存储器接口单元2215可以根据控制单元2212的控制与非易失性存储器装置2231至223n交换数据。例如,存储器接口单元2215可以将存储在缓冲存储器装置2220中的数据提供给非易失性存储器装置2231至223n,或将从非易失性存储器装置2231至223n读取的数据提供给缓冲存储器装置2220。
图10是示出包括根据实施例的数据存储设备的数据处理系统的示例的简图。参照图10,数据处理系统3000可以包括主机设备3100和数据存储设备3200。
主机设备3100可以被配置成诸如印刷电路板(PCB)的板形式。虽然在图10中未示出,但是主机设备3100可以包括被配置成执行主机设备3100的功能的内部功能块。
主机设备3100可以包括诸如插座、插槽或连接器的连接端子3110。数据存储设备3200可以被安装在连接端子3110上。
数据存储设备3200可以被配置成诸如PCB的板形式。数据存储设备3200可以指存储器模块或存储卡。数据存储设备3200可以包括控制器3210、缓冲存储器装置3220、非易失性存储器装置3231至3232、电源管理集成电路(PMIC)3240和连接端子3250。
控制器3210可以控制数据存储设备3200的全部操作。控制器3210可以被配置为具有与图9所示的控制器2210相同的配置。
缓冲存储器装置3220可以临时存储待被存储在非易失性存储器装置3231和3232中的数据。缓冲存储器装置3220可以临时存储从非易失性存储器装置3231和3232读取的数据。临时存储在缓冲存储器装置3220中的数据可以根据控制器3210的控制被传输到主机设备3100或非易失性存储器装置3231和3232。
非易失性存储器装置3231和3232可以用作数据存储设备3200的存储介质。
PMIC 3240可以将输入的电力通过连接端子3250提供给数据存储设备3200的内部。PMIC 3240可以根据控制器3210的控制来管理数据存储设备3200的电力。
连接端子3250可以联接到主机设备3100的连接端子3110。诸如命令、地址的信号以及数据和电力可以通过连接端子3250在主机设备3100和数据存储设备3200之间传输。根据主机设备3100和数据存储设备3200之间的接口方式,连接端子3250可以被配置成各种形式。连接端子3250可以被布置在数据存储设备3200的任意一侧中。
图11是示出包括根据实施例的数据存储设备的数据处理系统的示例的简图。参照图11,数据处理系统4000可以包括主机设备4100和数据存储设备4200。
主机设备4100可以被配置成诸如PCB的板形式。虽然在图11中未示出,但是主机设备4100可以包括被配置成执行主机设备4100的功能的内部功能块。
数据存储设备4200可以被配置成表面安装封装的形式。数据存储设备4200可以通过焊球4250被安装到主机设备4100上。数据存储设备4200可以包括控制器4210、缓冲存储器装置4220和非易失性存储器装置4230。
控制器4210可以控制数据存储设备4200的全部操作。控制器4210可以被配置为具有与图9所示的控制器2210相同的配置。
缓冲存储器装置4220可以临时存储待被存储在非易失性存储器装置4230中的数据。缓冲存储器装置4220可以临时存储从非易失性存储器装置4230读取的数据。临时存储在缓冲存储器装置4220中的数据可以通过控制器4210的控制被传输到主机设备4100或非易失性存储器装置4230。
非易失性存储器装置4230可以用作数据存储设备4200的存储介质。
图12是示出包括根据实施例的数据存储设备的网络系统5000的示例的简图。参照图12,网络系统5000可以包括通过网络5500联接的服务器系统5300和多个客户端系统5410至5430。
服务器系统5300可以响应于多个客户端系统5410至5430的请求来服务数据。例如,服务器系统5300可以存储从多个客户端系统5410到5430提供的数据。又例如,服务器系统5300可以将数据提供给多个客户端系统5410至5430。
服务器系统5300可以包括主机设备5100和数据存储设备5200。数据存储设备5200可以被配置为图1的数据存储设备10、图8的数据存储设备2200、图10的数据存储设备3200或图11的数据存储设备4200。
图13是示出根据实施例的数据存储设备中包括的非易失性存储器装置的示例的简化框图。参照图13,非易失性存储器装置100可以包括存储器单元阵列110、行解码器120、列解码器140、数据读取/写入块130、电压发生器150和控制逻辑160。
存储器单元阵列110可以包括布置在字线WL1至WLm和位线BL1至BLn彼此相交的区域中的存储器单元MC。
行解码器120可以通过字线WL1至WLm联接到存储器单元阵列110。行解码器120可以通过控制逻辑160的控制来操作。行解码器120可以解码从外部设备(未示出)提供的地址。行解码器120可以基于解码结果来选择并驱动字线WL1至WLm。例如,行解码器120可以将从电压发生器150提供的字线电压提供给字线WL1至WLm。
数据读取/写入块130可以通过位线BL1至BLn联接到存储器单元阵列110。数据读取/写入块130可以包括与位线BL1至BLn相对应的读取/写入电路RW1至RWn。数据读取/写入块130可以根据控制逻辑160的控制来操作。数据读取/写入块130可以根据操作模式而用作写入驱动器或读出放大器。例如,在写入操作中,数据读取/写入块130可以用作被配置成将从外部设备提供的数据存储到存储器单元阵列110中的写入驱动器。又例如,在读取操作中,数据读取/写入块130可以用作被配置成从存储器单元阵列110读取数据的读出放大器。
列解码器140可以根据控制逻辑160的控制来操作。列解码器140可以解码从外部设备(未示出)提供的地址。列解码器140可以基于解码结果,将数据读取/写入块130的、与位线BL1至BLn相对应的读取/写入电路RW1至RWn和数据输入/输出(I/O)线(或数据I/O缓冲器)连接。
电压发生器150可以生成用于非易失性存储器装置100的内部操作的电压。通过电压发生器150生成的电压可以被施加到存储器单元阵列110的存储器单元。例如,在编程操作中生成的编程电压可以被施加到在待被执行编程操作的存储器单元的字线。又例如,在擦除操作中产生的擦除电压可以被施加到在待被执行擦除操作的存储器单元的阱区。再例如,在读取操作中生成的读取电压可以被施加到在待被执行读取操作的存储器单元的字线。
控制逻辑160可以基于从外部设备提供的控制信号来控制非易失性存储器装置100的全部操作。例如,控制逻辑160可以控制非易失性存储器装置100的操作,诸如非易失性存储器装置100的读取操作、写入操作和擦除操作。
本发明的上述实施例旨在说明而不是限制本发明。各种另选方案和等同方案是可能的。本发明不受本文所述的实施例的限制。本发明也不限于任何具体类型的半导体装置。鉴于本公开,其它添加、删减或变型是显而易见的,并且旨在落入所附权利要求的范围内。

Claims (12)

1.一种数据存储设备,包括:
非易失性存储器装置;
命令队列,对一个或多个正常命令和中止命令进行排队;
数据缓冲器,临时存储待从主机设备传输到所述非易失性存储器装置的写入数据以及从所述非易失性存储器装置读出并待被传输到所述主机设备的读取数据;
中止处理器,执行针对所述正常命令之中的、与所述中止命令相对应的正常命令的中止处理;以及
处理器,指示所述中止处理器在所述正常命令被传输到所述非易失性存储器装置之前执行所述中止处理,
其中所述处理器指示所述中止处理器在以下之中的至少一个定时中执行所述中止处理:在被排队所述命令队列中的所述正常命令被重新排列之前的第一定时、在所述正常命令从所述命令队列中出队之前的第二定时以及在所述正常命令被提供给所述非易失性存储器装置之前的第三定时。
2.根据权利要求1所述的数据存储设备,进一步包括存储器命令缓冲器,所述存储器命令缓冲器顺序地存储从所述命令队列出队的所述正常命令并且根据存储顺序将存储的正常命令提供给所述非易失性存储器装置。
3.根据权利要求1所述的数据存储设备,其中当从所述处理器指示所述中止处理器在所述第一定时或所述第二定时处执行所述中止处理时,所述中止处理器通过扫描所述命令队列来确定是否存在被排队的中止命令,并且从所述命令队列中删除与所述被排队的中止命令相对应的正常命令。
4.根据权利要求3所述的数据存储设备,其中所述中止处理器从所述命令队列中删除与所述被排队的中止命令相对应的所述正常命令,并且然后从所述数据缓冲器中删除与被删除的正常命令相对应的数据。
5.根据权利要求4所述的数据存储设备,其中所述中止处理器改变从所述数据缓冲器中删除的数据的位置的索引。
6.根据权利要求2所述的数据存储设备,其中当从所述处理器指示所述中止处理器在所述第三定时处执行所述中止处理时,所述中止处理器通过扫描所述命令队列来确定是否存在被排队的中止命令,并且从所述存储器命令缓冲器中删除与所述被排队的中止命令相对应的正常命令。
7.根据权利要求6所述的数据存储设备,其中所述中止处理器从所述存储器命令缓冲器中删除与所述被排队的中止命令相对应的所述正常命令,并且然后从所述数据缓冲器中删除与被删除的正常命令相对应的数据。
8.根据权利要求7所述的数据存储设备,其中所述中止处理器改变从所述数据缓冲器中删除的所述数据的位置的索引。
9.根据权利要求1所述的数据存储设备,其中所述命令队列包括:
正常命令队列,所述正常命令被排队在所述正常命令队列中;以及
中止命令队列,所述中止命令被排队在所述中止命令队列中。
10.一种数据存储设备的操作方法,所述数据存储设备包括非易失性存储器装置、控制所述非易失性存储器装置的操作并且包括命令队列和中止处理器的控制器,其中正常命令和中止命令被排队在所述命令队列中并且所述中止处理器执行中止处理,所述方法包括:
指示所述中止处理器执行所述中止处理;
通过所述中止处理器扫描所述命令队列来确定是否存在被排队的中止命令;
通过所述中止处理器执行针对所述正常命令之中的、与所述中止命令相对应的正常命令的中止处理;并且
通过所述中止处理器将完成所述中止处理的报告提供给所述控制器,
其中指示所述中止处理器将在以下中的至少一个定时处执行所述中止处理:在被排队所述命令队列中的所述正常命令被重新排列之前的第一定时、在所述正常命令从所述命令队列中出队之前的第二定时以及在从接收来自所述命令队列的所述正常命令并将所述正常命令提供给所述非易失性存储器装置的存储器命令缓冲器输出所述正常命令之前的第三定时。
11.根据权利要求10所述的方法,其中执行所述中止处理包括:
从所述命令队列或所述存储器命令缓冲器中删除与所述中止命令相对应的正常命令;
从所述控制器内的数据缓冲器中删除与被删除的正常命令有关的数据;并且
改变从所述数据缓冲器中删除的数据的位置的索引。
12.一种用于控制存储器系统的控制器,所述控制器包括:
命令队列,对一个或多个命令进行排队;
数据缓冲器,缓冲与所述命令相对应的数据;
命令缓冲器,缓冲一个或多个命令;以及
处理器:
在所述命令队列中重新排列被排队的命令;
使被重新排列的命令出队到所述命令缓冲器;
输出被缓冲的命令以控制存储器装置执行操作;
删除由中止命令指示的所述被排队的命令、所述被重新排列的命令和所述被缓冲的命令之中的一个或多个;并且
删除与被删除的命令相对应的被缓冲的数据。
CN201811125478.1A 2018-01-03 2018-09-26 数据存储设备及其操作方法 Active CN109992201B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180000735A KR20190083150A (ko) 2018-01-03 2018-01-03 데이터 저장 장치 및 그것의 동작 방법
KR10-2018-0000735 2018-01-03

Publications (2)

Publication Number Publication Date
CN109992201A CN109992201A (zh) 2019-07-09
CN109992201B true CN109992201B (zh) 2022-05-24

Family

ID=67059587

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811125478.1A Active CN109992201B (zh) 2018-01-03 2018-09-26 数据存储设备及其操作方法

Country Status (3)

Country Link
US (1) US20190205059A1 (zh)
KR (1) KR20190083150A (zh)
CN (1) CN109992201B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190083052A (ko) * 2018-01-03 2019-07-11 에스케이하이닉스 주식회사 컨트롤러 및 그것의 동작방법
KR20210043819A (ko) * 2019-10-14 2021-04-22 에스케이하이닉스 주식회사 컨트롤러 및 컨트롤러의 동작방법
US11907572B2 (en) * 2019-12-30 2024-02-20 Micron Technology, Inc. Interface read after write
KR20210098717A (ko) * 2020-02-03 2021-08-11 에스케이하이닉스 주식회사 컨트롤러, 컨트롤러의 동작 방법 및 이를 포함하는 저장 장치
KR20220045342A (ko) * 2020-10-05 2022-04-12 에스케이하이닉스 주식회사 호스트 장치, 데이터 저장 장치, 데이터 처리 시스템 및 데이터 처리 방법
US20230185715A1 (en) 2021-12-13 2023-06-15 Relativity Oda Llc Queue optimization via predicitve caching in cloud computing

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011175666A (ja) * 2010-01-29 2011-09-08 Toshiba Corp 半導体記憶装置及び半導体記憶装置の制御方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7484058B2 (en) * 2004-04-28 2009-01-27 Emc Corporation Reactive deadlock management in storage area networks
US8307128B2 (en) * 2006-12-08 2012-11-06 International Business Machines Corporation System and method to improve sequential serial attached small computer system interface storage device performance
US7739461B2 (en) * 2007-07-10 2010-06-15 International Business Machines Corporation DRAM power management in a memory controller
JP4516999B2 (ja) * 2008-03-28 2010-08-04 富士通株式会社 データ通信制御装置、データ通信制御方法およびそのためのプログラム
US8706900B2 (en) * 2008-07-10 2014-04-22 Juniper Networks, Inc. Dynamic storage resources
US8195909B2 (en) * 2009-10-05 2012-06-05 Seagate Technology Llc Data management in a data storage system
JP5547148B2 (ja) * 2011-09-13 2014-07-09 株式会社東芝 メモリデバイス
US9792989B2 (en) * 2013-02-07 2017-10-17 Toshiba Memory Corporation Memory system including nonvolatile memory
US20150186068A1 (en) * 2013-12-27 2015-07-02 Sandisk Technologies Inc. Command queuing using linked list queues
KR102308777B1 (ko) * 2014-06-02 2021-10-05 삼성전자주식회사 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법
US10282103B1 (en) * 2015-11-09 2019-05-07 Seagate Technology Llc Method and apparatus to delete a command queue
US10359967B2 (en) * 2016-08-10 2019-07-23 Hitachi, Ltd. Computer system
TWI676893B (zh) * 2017-10-11 2019-11-11 祥碩科技股份有限公司 橋接裝置與資料傳輸方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011175666A (ja) * 2010-01-29 2011-09-08 Toshiba Corp 半導体記憶装置及び半導体記憶装置の制御方法

Also Published As

Publication number Publication date
US20190205059A1 (en) 2019-07-04
CN109992201A (zh) 2019-07-09
KR20190083150A (ko) 2019-07-11

Similar Documents

Publication Publication Date Title
CN109992201B (zh) 数据存储设备及其操作方法
CN108694018B (zh) 数据存储装置及其操作方法
US10877887B2 (en) Data storage device and operating method thereof
CN107122317B (zh) 数据存储装置
CN109992202B (zh) 数据存储设备、其操作方法以及包括其的数据处理系统
US10877697B2 (en) Data storage device and operating method thereof
CN111124273B (zh) 数据存储装置及数据存储装置的操作方法
US20200241956A1 (en) Memory system and operating method thereof
CN111414313B (zh) 数据存储装置及数据存储装置的操作方法
CN109407966B (zh) 数据存储装置及其操作方法
CN109426453B (zh) 数据存储装置及其操作方法
CN112988045A (zh) 数据存储装置及其操作方法
CN112201296A (zh) 控制器、存储器系统及其操作方法
US11409473B2 (en) Data storage device and operating method thereof
US11232023B2 (en) Controller and memory system including the same
CN111324297B (zh) 控制器、数据存储装置及数据存储装置的操作方法
CN110941566B (zh) 数据存储装置及其操作方法
US20200250082A1 (en) Controller, memory system, and operating method thereof
US10515693B1 (en) Data storage apparatus and operating method thereof
CN112445714A (zh) 半导体存储器设备的地址搜索电路和方法及其控制器
US11157214B2 (en) Controller, memory system and operating method thereof
CN111324302B (zh) 数据存储装置及其操作方法
US20200409848A1 (en) Controller, memory system, and operating methods thereof
US20190212946A1 (en) Data storage device and operating method thereof

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
GR01 Patent grant
GR01 Patent grant