CN117336308A - 使用网络恢复存储装置中的数据的方法和存储装置 - Google Patents
使用网络恢复存储装置中的数据的方法和存储装置 Download PDFInfo
- Publication number
- CN117336308A CN117336308A CN202310759198.0A CN202310759198A CN117336308A CN 117336308 A CN117336308 A CN 117336308A CN 202310759198 A CN202310759198 A CN 202310759198A CN 117336308 A CN117336308 A CN 117336308A
- Authority
- CN
- China
- Prior art keywords
- data
- backup
- storage device
- storage
- backup storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000004044 response Effects 0.000 claims abstract description 32
- 238000011084 recovery Methods 0.000 claims abstract description 30
- 230000015654 memory Effects 0.000 claims description 146
- 238000010586 diagram Methods 0.000 description 26
- 239000000872 buffer Substances 0.000 description 17
- 239000002775 capsule Substances 0.000 description 16
- 239000004744 fabric Substances 0.000 description 12
- 238000013523 data management Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000012937 correction Methods 0.000 description 5
- 230000002085 persistent effect Effects 0.000 description 5
- 230000015556 catabolic process Effects 0.000 description 4
- 238000006731 degradation reaction Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000010076 replication Effects 0.000 description 4
- 239000000835 fiber Substances 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 101100481702 Arabidopsis thaliana TMK1 gene Proteins 0.000 description 2
- 101000927946 Homo sapiens LisH domain-containing protein ARMC9 Proteins 0.000 description 2
- 102100036882 LisH domain-containing protein ARMC9 Human genes 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 206010067959 refractory cytopenia with multilineage dysplasia Diseases 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 101100481704 Arabidopsis thaliana TMK3 gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000012005 ligant binding assay Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000013403 standard screening design Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0772—Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
提供了一种恢复存储装置中的数据的方法。该方法包括:从主机装置接收与备份存储装置关联的备份存储信息,主机装置和备份存储装置二者均在存储装置外部,并且备份存储装置被配置为存储与第一数据对应的备份数据;对第一数据执行数据读操作;响应于在读取第一数据的同时出现的不可恢复数据故障,基于备份存储信息直接从备份存储装置接收与第一数据对应的备份数据;以及基于备份数据执行第一数据的数据恢复操作。
Description
相关申请的交叉引用
本申请要求2022年7月1日提交于韩国知识产权局的韩国专利申请No.10-2022-0081221的优先权,其公开内容整体以引用方式并入本文中。
技术领域
示例实施例总体上涉及半导体集成电路,更具体地,涉及使用网络恢复存储装置中的数据的方法和执行该数据恢复方法的存储装置。
背景技术
存储系统包括主机装置和存储装置,并且存储装置可以是包括存储器控制器和存储器装置的存储器系统或仅是存储器装置。在存储系统中,主机装置和存储装置通过各种接口标准彼此连接,例如通用闪存(UFS)、串行高级技术附件(SATA)、小型计算机系统接口(SCSI)、串行附接SCSI(SAS)、嵌入式多媒体卡(eMMC)、高速非易失性存储器(NVMe)等。最近,已应用了通过网络直接访问NVMe以允许数据输入/输出的经由Fabrics的NVMe(NVMeover Fabrics,NVMe-oF)。
发明内容
一个或多个示例实施例提供了一种恢复存储装置中的数据的方法,其能够在减小网络上的负载并减小性能劣化的同时高效地还原损坏的数据。
一个或多个示例实施例提供了一种执行该数据恢复方法的存储装置。
根据示例实施例,一种恢复存储装置中的数据的方法包括:从主机装置接收与备份存储装置关联的备份存储信息,主机装置和备份存储装置二者均在存储装置外部,并且备份存储装置被配置为存储与第一数据对应的备份数据;对第一数据执行数据读操作;响应于在读取第一数据的同时出现的不可恢复数据故障,基于备份存储信息直接从备份存储装置接收与第一数据对应的备份数据;以及基于备份数据执行第一数据的数据恢复操作。
根据示例实施例,一种存储装置包括:非易失性存储器,其包括多个存储区域;以及存储控制器,其被配置为:从主机装置接收与备份存储装置关联的备份存储信息,主机装置和备份存储装置二者均在存储装置外部,并且备份存储装置被配置为存储与第一数据对应的备份数据;对第一数据执行数据读操作;响应于在读取第一数据的同时出现的不可恢复数据故障,基于备份存储信息直接从备份存储装置接收与第一数据对应的备份数据;并且基于备份数据执行第一数据的数据恢复操作。
根据示例实施例,一种恢复存储装置中的数据的方法,该方法包括:对第一数据执行数据写操作;从主机装置接收与备份存储装置关联的备份存储信息,主机装置和备份存储装置二者均在存储装置外部,并且备份存储装置被配置为存储与第一数据对应的备份数据;对第一数据执行数据读操作;响应于在读取第一数据的同时出现的不可恢复数据故障,基于备份存储信息直接从备份存储装置接收与第一数据对应的备份数据,该备份数据从备份存储装置接收而不经过主机装置;以及基于备份数据执行第一数据的数据恢复操作。接收备份存储信息包括:由存储装置向主机装置发送备份存储信息请求;由主机装置基于备份存储信息请求向存储装置发送备份存储信息;以及由存储装置记录备份存储信息。直接接收备份数据包括:收集与出现了不可恢复数据故障的第一数据关联的第一信息;基于第一信息搜索备份存储信息;由存储装置直接向备份存储装置发送用于读取备份数据的读命令分组;以及由备份存储装置基于读命令分组直接向存储装置发送备份数据。
附图说明
以上和其它方面和特征将从以下结合附图进行的示例实施例的描述更显而易见。
图1是示出根据示例实施例的恢复存储装置中的数据的方法的流程图。
图2是示出根据示例实施例的包括存储装置的存储系统的框图。
图3是示出根据示例实施例的存储控制器的示例的框图。
图4是示出根据示例实施例的非易失性存储器的框图。
图5A、图5B和图5C是用于描述根据示例实施例的非易失性存储器上设定的命名空间的示图。
图6是示出根据示例实施例的接收备份存储信息的流程图。
图7是根据示例实施例的接收备份存储信息的示图。
图8是示出根据示例实施例的对第一数据执行数据读操作的流程图。
图9A、图9B和图9C是用于描述根据示例实施例的对第一数据执行数据读操作的示图。
图10是示出根据示例实施例的直接接收备份数据的流程图。
图11是用于描述根据示例实施例的直接接收备份数据的示图。
图12是用于描述根据示例实施例的数据恢复操作的示图。
图13是示出根据示例实施例的恢复存储装置中的数据的方法的流程图。
图14是用于描述根据示例实施例的恢复存储装置中的数据的示图。
图15是示出根据示例实施例的恢复存储装置中的数据的方法的流程图。
图16和图17是用于描述根据示例实施例的恢复存储装置中的数据的示图。
图18是示出根据示例实施例的存储系统的框图。
图19A、图19B、图19C、图19D和图19E是用于描述根据示例实施例的应用于存储装置的NVMe-oF的示图。
图20是示出根据示例实施例的包括存储装置的数据中心的框图。
具体实施方式
将参照示出实施例的附图更充分地描述各种示例实施例。作为示例提供本文所描述的实施例,因此,本公开不限于此,可按各种其它形式实现。不排除以下描述中提供的各个示例实施例与本文中也提供或本文中未提供但与本公开一致的另一示例或另一示例实施例的一个或更多个特征关联。将理解,当元件或层被称为“在”另一元件或层“上”、“连接到”或“联接到”另一元件或层时,它可直接在另一元件或层上、连接或联接到另一元件或层,或者可存在中间元件或层。相反,当元件被称为“直接在”另一元件或层“上”、“直接连接到”或“直接联接到”另一元件或层时,不存在中间元件或层。在元素列表之前的诸如“…中的至少一个”的表达修饰的是整个元素列表,而非修饰列表的各个元素。例如,表达“a、b和c中的至少一个”应该被理解为仅包括a、仅包括b、仅包括c、包括a和b二者、包括a和c二者、包括b和c二者、或包括所有a、b和c。
图1是示出根据示例实施例的恢复存储装置中的数据的方法的流程图。
参照图1,由包括存储控制器和多个存储区域(或存储区)的存储装置执行根据示例实施例的恢复存储装置中的数据的方法。可由多个非易失性存储器形成或提供所述多个存储区域。将参照图2描述存储装置和包括存储装置的存储系统的配置。
在根据示例实施例的恢复存储装置中的数据的方法中,从主机装置接收与备份存储装置关联或有关的备份存储信息(操作S 100)。主机装置和备份存储装置二者均位于或设置在存储装置之外。备份存储装置是存储与存储装置中所存储的第一数据对应的备份数据的存储介质。将参照图6来描述操作S 100。
当第一数据被写入或存储到存储装置中时,可通过复制或拷贝第一数据来生成与第一数据实质上相同或相同的备份数据,备份数据可被写入或存储到与存储装置不同的备份存储装置中,因此即使稍后第一数据损坏,也可使用备份数据来恢复或还原第一数据。存储装置可被称为主存储装置,备份存储装置可被称为辅存储装置。备份数据可被称为复制数据或重复数据。
在一些示例实施例中,主机装置、存储装置和备份存储装置可通过网络彼此连接。例如,网络可基于经由Fabrics的非易失性存储器高速(NVMe over Fabrics,NVMe-oF)协议来实现。将参照图2来描述主机装置、存储装置和备份存储装置之间的连接。
在一些示例实施例中,存储装置和备份存储装置可物理上彼此不同。例如,备份存储装置可设置在与设置存储装置的空间相同或相邻的空间中。又如,可与设置存储装置的空间分开设置备份存储装置。将参照图18来描述备份存储装置的布置。
对于或者针对第一数据执行数据读操作(操作S200)。例如,可基于外部请求(例如,来自主机装置的读请求)来执行数据读操作。又如,可由存储装置本身内部执行数据读操作。例如,数据读操作可类似于一般(或正常)数据读操作,并且可包括检查或确定是否出现了不可恢复数据故障(或者损坏或损毁)的操作。将参照图8来描述操作S200。
当待读取的第一数据上出现了不可恢复数据故障时,基于备份存储信息直接从备份存储装置接收与第一数据对应的备份数据(操作S300)。例如,不可恢复数据故障可包括不可纠正错误(UE),其是纠错码(ECC)引擎无法纠正的错误。
在一些示例实施例中,可直接在备份存储装置和存储装置之间执行操作S300,而不经过主机装置(例如,无需主机装置的干预或辅助)。将参照图10来描述操作S300。
基于备份数据对于或者针对第一数据执行数据恢复操作(操作S400)。例如,数据恢复操作可类似于一般(或正常)数据恢复操作。将参照图12来描述操作S400。
可基于数据恢复操作的结果完成对第一数据的数据读操作(操作S800)。例如,可响应于来自主机装置的读请求将第一数据发送到主机装置。
在一些示例实施例中,可以将操作S100描述为将使用备份存储信息和备份数据执行的数据恢复处理从主机装置卸载到存储装置的操作。术语“卸载”是指将资源密集计算任务转移到单独的处理器(例如,硬件加速器)或外部平台(例如,集群、网格或云)。根据一些方面,将诸如图像渲染应用或数学计算的应用卸载到协处理器可用于加速应用或数学计算。经由网络将应用和计算卸载到外部平台可提供增加的计算能力并且有助于克服装置的硬件限制(例如,有限的计算能力、存储和能源)。
在根据示例实施例的恢复存储装置中的数据的方法中,存储装置可预先识别与备份存储装置关联的备份存储信息。当待读取的第一数据上出现了不可恢复数据故障时,存储装置可直接从备份存储装置接收备份数据而无需主机装置干预,并且可基于备份数据执行数据恢复操作。主机装置可执行正常操作而无需等待数据恢复操作完成,因此可减小性能劣化,并且可使主机装置的干预或干扰最小化。因此,可降低主机装置用于数据恢复操作的负载或开销,可以最小的性能劣化执行数据恢复操作,可减少网络上的业务,并且可尽可能持续地使用存储装置。
图2是示出根据示例实施例的包括存储装置的存储系统的框图。
参照图2,存储系统10包括主机装置100、网络150、存储装置200和备份存储装置300。
主机装置100控制存储系统10的总体操作。主机装置100还可包括主机处理器和主机存储器。主机处理器可控制主机装置100的操作。例如,主机处理器可执行操作系统(OS)。例如,操作系统可包括用于文件管理的文件系统以及用于在操作系统级别控制包括存储装置200的外围装置的装置驱动器。主机存储器可存储由主机处理器执行和/或处理的指令和/或数据。
在一些示例实施例中,主机装置100可被实现为服务器。例如,主机装置100可以是应用服务器。又如,主机装置100可以是由应用服务器调用以执行数据复制和/或数据备份的备份服务器。
网络150可将主机装置100、存储装置200和备份存储装置300彼此连接。主机装置100、存储装置200和备份存储装置300可通过网络150彼此通信或交换数据和/或信号。
在一些示例实施例中,网络150可以是仅存储(storage-only)网络,例如存储区域网(SAN)。在其它示例实施例中,网络150可以是一般网络,例如广域网(WAN)。例如,可基于NVMe-oF协议来实现网络150,并且网络150可包括Infiniband、经由融合以太网的远程直接存储器存取(RDMA)(RDMA over Converged Ethernet,RoCE)v3、互联网广域RDMA协议(iWARP)、经由以太网的光纤通道(FC)(FC over Ethernet,FCoE)等。
主机装置100可访问存储装置200。存储装置200可包括存储控制器210、多个存储区域220a和220b以及缓冲存储器230。
存储控制器210可控制存储装置200的操作。例如,基于从主机装置100接收的请求(例如,写请求或读请求),存储控制器210可控制存储装置200的操作(例如,写操作或读操作),并且可控制在主机装置100和存储装置200之间交换数据(例如,接收并存储写数据或发送读数据)的操作。例如,存储控制器210可生成用于控制多个存储区域220a和220b的操作(例如,写操作或读操作)的命令(例如,写命令或读命令),可将命令发送到多个存储区域220a和220b,并且可控制与多个存储区域220a和220b交换数据(例如,发送并编程写数据或接收读数据)的操作。例如,从主机装置100接收的请求可被称为主机命令,并且发送到多个存储区域220a和220b的命令可被称为存储器命令。
可由存储控制器210控制多个存储区域220a和220b,并且多个存储区域220a和220b可存储多个数据。例如,多个存储区域220a和220b可存储元数据、各种用户数据等。例如,多个存储区域220a和220b中的每一个可包括一个或更多个非易失性存储器。
在一些示例实施例中,非易失性存储器可包括NAND闪存。在其它示例实施例中,非易失性存储器可包括下列之一:电可擦除可编程只读存储器(EEPROM)、相变随机存取存储器(PRAM)、电阻随机存取存储器(RRAM)、纳米浮栅存储器(NFGM)、聚合物随机存取存储器(PoRAM)、磁性随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)等。
缓冲存储器230可存储由存储控制器210执行和/或处理的指令和/或数据,并且可暂时存储多个存储区域220a和220b中存储或要存储的数据。例如,缓冲存储器230可包括各种易失性存储器中的至少一种,例如,静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等。
在一些示例实施例中,缓冲存储器230可包括在存储控制器210中。
主机装置100可访问备份存储装置300。备份存储装置300可存储与存储在存储装置200中的第一数据DAT实质上相同的备份数据(或复制数据)BDAT。备份存储装置300可具有与存储装置200类似的配置。例如,备份存储装置300可包括存储控制器、多个存储区域和缓冲存储器。
存储装置200和备份存储装置300可以是物理上不同的存储装置。在一些示例实施例中,存储装置200和备份存储装置300二者可设置在或位于第一空间中(例如,在同一空间中)。在其它示例实施例中,存储装置200可设置在第一空间(例如,本地空间)中,并且备份存储装置300可设置在与第一空间相隔的第二空间(例如,远程空间)中。例如,同一空间可表示同一建筑物中的同一楼层上的同一办公室,而彼此相隔的不同空间可表示同一建筑物中的不同楼层上的办公室或者不同建筑物中的办公室。可基于网络150来连接和驱动物理上远离(例如,彼此间隔开)的存储装置。
存储装置200和存储控制器210可执行参照图1描述的根据示例实施例的恢复存储装置中的数据的方法。例如,存储控制器210可通过网络150从主机装置100接收与备份存储装置300关联的备份存储信息BSI,备份存储装置300存储了存储装置200中所存储的第一数据DAT的备份数据BDAT,并且存储控制器210可存储或记录备份存储信息BSI。当在对第一数据DAT执行数据读操作的同时在第一数据DAT上出现了不可恢复数据故障时,存储控制器210可收集与第一数据DAT关联的第一信息FDI,可基于第一信息FDI搜索备份存储信息BSI,可基于备份存储信息BSI通过网络150直接从备份存储装置300接收第一数据DAT的备份数据BDAT(例如,而无需主机装置100干预),并且可基于备份数据BDAT执行第一数据DAT的数据恢复操作。
存储控制器210可包括用于请求、接收和记录备份存储信息BSI的配置,并且可包括当对于第一数据DAT发生不可恢复数据损毁时用于收集第一信息FDI并且搜索备份存储信息BSI的配置,将参照图3来描述该配置。
另外,存储装置200和存储控制器210可执行根据示例实施例的恢复存储装置中的数据的方法,这将参照图13和图15来描述。
在一些示例实施例中,存储装置200可以是固态驱动器(SSD)、通用闪存(UFS)、多媒体卡(MMC)或嵌入式多媒体卡(eMMC)。在其它示例实施例中,存储装置200可以是下列之一:安全数字(SD)卡、微型SD卡、记忆棒、芯片卡、通用串行总线(USB)卡、智能卡、紧凑闪存(CF)卡等。
在一些示例实施例中,存储系统10可以是任何计算系统,例如,个人计算机(PC)、服务器计算机、数据中心、工作站、数字电视、机顶盒、导航系统等。在其它示例实施例中,存储系统10可以是任何移动系统,例如,移动电话、智能电话、平板计算机、膝上型计算机、个人数字助理(PDA)、便携式多媒体播放器(PMP)、数字相机、便携式游戏机、音乐播放器、摄像机、视频播放器、导航装置、可穿戴装置、物联网(IoT)装置、万物互联(IoE)装置、电子书阅读器、虚拟现实(VR)装置、增强现实(AR)装置、机器人装置、无人机、汽车等。
图3是示出根据示例实施例的存储控制器的示例的框图。例如,存储控制器可设置在存储装置中。
参照图3,存储控制器400可包括网络接口(I/F)410、处理器420、存储器430、纠错码(ECC)引擎440、路由注册模块450、数据管理模块460、发现模块470、非易失性存储器(NVM)接口480和恢复模块490。
网络接口410可在网络和存储装置(例如,图2中的网络150和存储装置200)之间提供连接。例如,网络接口410可提供与用于存储装置和外部装置(例如,图2中的主机装置100和/或备份存储装置300)之间的通信的网络协议对应的接口。
例如,网络接口410可通过网络从主机装置接收请求REQ,可与主机装置交换数据DAT,并且可向主机装置发送与请求REQ对应的响应RSP。例如,在数据写操作中,请求REQ、数据DAT和响应RSP可分别是写请求、写数据和写完成响应。例如,在数据读操作中,请求REQ、数据DAT和响应RSP可分别是读请求、读数据和读完成响应。
例如,网络接口410可通过网络从主机装置接收备份存储信息BSI,并且可从备份存储装置接收备份数据BDAT。例如,当接收到备份存储信息BSI时,可向主机装置发送备份存储信息请求,并且可向主机装置发送备份存储信息接收完成响应。例如,当接收到备份数据BDAT时,可向备份存储装置发送用于请求备份数据BDAT的读命令分组。
非易失性存储器接口480可与存储装置的多个存储区域(例如,图2中的多个存储区域220a和220b)交换数据。例如,非易失性存储器接口480可被配置为符合标准协议,例如,Toggle或开放NAND闪存接口(ONFI)。
例如,非易失性存储器接口480可向多个存储区域发送与请求REQ对应的命令CMD,并且可与多个存储区域交换数据DAT。例如,在数据写操作中,命令CMD和数据DAT可分别是写命令和写数据。例如,在数据读操作中,命令CMD和数据DAT可分别是读命令和读数据。
处理器420可控制存储控制器400的操作。例如,处理器420可控制存储装置的操作,并且可通过采用用于操作存储装置的固件来控制相应组件。
存储器430可存储由处理器420执行和处理的指令和数据。例如,可利用诸如DRAM、SRAM、高速缓存存储器等的易失性存储器来实现存储器430。
可由处理器420和存储器430实现闪存转换层(FTL)。闪存转换层可执行各种功能,例如,地址映射操作、磨损均衡操作、垃圾收集操作等。地址映射操作可以是将从主机装置接收的逻辑地址转换为非易失性存储器中实际用于存储数据的物理地址的操作。磨损均衡操作可以是通过允许均匀地使用非易失性存储器的块来防止特定块过度劣化的技术。作为示例,可使用平衡物理块的擦除计数的固件技术来实现磨损均衡操作。垃圾收集操作可以是通过在将现有块的有效数据拷贝到新块之后擦除现有块来确保非易失性存储器中的可用容量的技术。
用于纠错的ECC引擎440可使用Bose-Chaudhuri-Hocquenghem(BCH)码、低密度奇偶校验(LDPC)码、turbo码、Reed-Solomon码、卷积码、递归系统码(RSC)、网格编码调制(TCM)、块编码调制(BCM)等执行编码调制,或者可使用上述码或其它纠错码执行ECC编码和ECC解码。
路由注册模块450可存储与备份存储装置关联的备份存储信息BSI。例如,备份存储信息BSI可包括与备份存储装置关联的网络地址信息,并且可使用备份存储信息BSI来检查备份存储装置300在网络上的位置。例如,可以映射表的形式记录第一数据DAT和备份存储信息BSI之间的关系。例如,可在多个存储区域中的至少一个中存储这种信息(例如,映射表),并且可在存储装置200重启或者通电或断电时读取和使用这种信息。
当第一数据DAT上出现了不可恢复数据故障时,数据管理模块460可收集与第一数据DAT关联的第一信息(例如,失效或损坏的数据信息)FDI,并且可将第一信息FDI提供给路由注册模块450。路由注册模块450可基于第一信息FDI来搜索备份存储信息BSI。例如,第一信息FDI可包括第一数据DAT的地址信息和存储第一数据DAT的第一存储区域的信息中的至少一个。
发现模块470可存储与存储装置200关联的存储信息SI。例如,与备份存储信息BSI一样,存储信息SI可包括与存储装置200关联的网络地址信息。
恢复模块490可基于备份存储信息BSI、第一信息FDI和存储信息SI来生成分组(例如,图11中的读命令分组RCMD_PKT),并且可将分组提供给网络接口410。当备份数据BDAT的接收完成时,恢复模块490可将接收完成通知给数据管理模块460,并且可执行数据恢复操作。在这方面,恢复模块490通常可管理和/或控制与根据示例实施例的恢复存储装置中的数据的方法关联的操作。
在一些示例实施例中,路由注册模块450、数据管理模块460、发现模块470和恢复模块490的至少一部分可被实现为硬件。例如,路由注册模块450、数据管理模块460、发现模块470和恢复模块490的至少一部分可包括在基于计算机的电子系统中。在其它示例实施例中,路由注册模块450、数据管理模块460、发现模块470和恢复模块490的至少一部分可被实现为指令代码或程序例程(例如,软件程序)。例如,指令代码或程序例程可由基于计算机的电子系统执行,并且可被存储在位于基于计算机的电子系统内部或外部的任何存储装置中。包括网络接口410、路由注册模块450、数据管理模块460、发现模块470和恢复模块490的配置可被称为网络代理。
存储控制器400还可包括用于数据加密/解密的高级加密标准(AES)引擎等。
图4是示出根据示例实施例的可包括在存储装置中的非易失性存储器的示例的框图。
参照图4,非易失性存储器500可包括存储器单元阵列510、地址解码器520、页缓冲器电路530、数据输入/输出(I/O)电路540、电压生成器550和控制电路560。可由一个或更多个非易失性存储器形成或提供一个存储区域。
存储器单元阵列510可经由多条串选择线SSL、多条字线WL和多条接地选择线GSL连接到地址解码器520。存储器单元阵列510还可经由多条位线BL连接到页缓冲器电路530。存储器单元阵列510可包括连接到多条字线WL和多条位线BL的多个存储器单元(例如,多个非易失性存储器单元)。存储器单元阵列510可被分成各自包括存储器单元的多个存储器块BLK1、BLK2、...、BLKz。另外,多个存储器块BLK1至BLKz中的每一个可被分成多个页。
在一些示例实施例中,包括在存储器单元阵列510中的多个存储器单元可布置成二维(2D)阵列结构或三维(3D)竖直阵列结构。3D竖直阵列结构可包括竖直取向的竖直单元串,使得至少一个存储器单元位于另一存储器单元上方。至少一个存储器单元可包括电荷陷阱层。
控制电路560可(例如,从图2中的存储控制器210)接收命令CMD和地址ADDR,并且可基于命令CMD和地址ADDR控制非易失性存储器500的擦除、编程和读操作。擦除操作可包括执行擦除循环序列,并且编程操作可包括执行编程循环序列。各个编程循环可包括编程操作和编程验证操作。各个擦除循环可包括擦除操作和擦除验证操作。读操作可包括正常读操作和数据恢复读操作。
例如,控制电路560可生成用于控制电压生成器550的控制信号CON,可基于命令CMD生成用于控制页缓冲器电路530的控制信号PBC,并且可基于地址ADDR生成行地址R_ADDR和列地址C_ADDR。控制电路560可将行地址R_ADDR提供给地址解码器520,并且可将列地址C_ADDR提供给数据I/O电路540。
地址解码器520可经由多条串选择线SSL、多条字线WL和多条接地选择线GSL连接到存储器单元阵列510。例如,在数据擦除/写/读操作中,基于行地址R_ADDR,地址解码器520可将多条字线WL中的至少一条确定为所选字线,可将多条串选择线SSL中的至少一条确定为所选串选择线,并且可将多条接地选择线GSL中的至少一条确定为所选接地选择线。
电压生成器550可基于电源PWR和控制信号CON生成非易失性存储器500的操作所需的电压VS。可经由地址解码器520将电压VS施加到多条串选择线SSL、多条字线WL和多条接地选择线GSL。另外,电压生成器550可基于电源PWR和控制信号CON生成数据擦除操作所需的擦除电压VERS。可将擦除电压VERS直接或经由位线BL施加到存储器单元阵列510。
页缓冲器电路530可经由多条位线BL连接到存储器单元阵列510。页缓冲器电路530可包括多个页缓冲器。页缓冲器电路530可存储要编程到存储器单元阵列510中的数据DAT,或者可存储从存储器单元阵列510感测的读数据DAT。在这方面,页缓冲器电路530可根据非易失性存储器500的操作模式作为写驱动器或感测放大器操作。
数据I/O电路540可经由数据线DL连接到页缓冲器电路530。基于列地址C_ADDR,数据I/O电路540可经由页缓冲器电路530将数据DAT从非易失性存储器500的外部提供给存储器单元阵列510,或者可将数据DAT从存储器单元阵列510提供到非易失性存储器500的外部。
尽管基于NAND闪存描述了根据示例实施例的存储装置中所包括的非易失性存储器,但根据示例实施例的非易失性存储器可以是任何非易失性存储器,例如PRAM、RRAM、NFGM、PoRAM、MRAM、FRAM等。
图5A、图5B和图5C是用于描述根据示例实施例的(例如,包括在存储装置中的那些)非易失性存储器上设定的命名空间的示图。
根据示例实施例的存储装置可基于高速非易失性存储器(NVMe)协议来操作,并且可支持命名空间功能和/或分区命名空间(ZNS)功能。NVMe可以是在诸如固态驱动器(SSD)的存储装置与主机软件之间执行通信的寄存器级别的接口。NVMe可基于高速外围组件互连(PCIe)总线或计算高速链路(CXL)总线,并且可以是为SSD设计或优化的接口。当使用命名空间功能时,利用一个物理装置实现的存储装置可被分割成多个逻辑装置(例如,多个命名空间),并且可基于这多个命名空间来管理数据。当使用分区命名空间功能时,一个命名空间可被另外分割成多个区,并且可基于多个命名空间和多个区来管理数据。多个命名空间和多个区可在物理上全部包括在同一存储装置中,并且各个命名空间和各个区可用作单独的存储空间。
参照图5A,示出了在多个非易失性存储器NVM1、NVM2、...、NVMp上生成并设定多个命名空间NS11、NS21、...、NSp1的示例,其中,p是大于或等于2的自然数。例如,多个非易失性存储器NVM1至NVMp可包括在一个存储装置中,因此多个命名空间NS11至NSp1也可包括在一个存储装置中。
在示例中,如图5A所示,可在一个非易失性存储器上生成并设定一个命名空间。例如,可在非易失性存储器NVM1的整个区域上生成并设定命名空间NS11,可在非易失性存储器NVM2的整个区域上生成并设定命名空间NS21,可在非易失性存储器NVMp的整个区域上生成并设定命名空间NSp1。
参照图5B,示出了在多个非易失性存储器NVM1、NVM2、...、NVMp上生成并设定多个命名空间NS12、NS22、...、NSp2的另一示例。将省略与图5A重复的描述。
在示例中,如图5B所示,可在所有多个非易失性存储器NVM1至NVMp上生成并设定一个命名空间。例如,可在所有多个非易失性存储器NVM1至NVMp的一些区域上生成并设定命名空间NS12,可在所有多个非易失性存储器NVM1至NVMp的一些区域上生成并设定命名空间NS22,可在所有多个非易失性存储器NVM1至NVMp的一些区域上生成并设定命名空间NSp2。
可根据示例实施例不同地实现生成并设定命名空间的操作。例如,命名空间NS11至NSp1和NS12至NSp2的容量可彼此基本上相等或不同。例如,命名空间NS11至NSp1和NS 12至NSp2的数量和非易失性存储器NVM1至NVMp的数量可彼此基本上相等或不同。
参照图5C,示出了在一个命名空间NS上生成并设定多个区ZN1、ZN2、...、ZNq的示例,其中,q是大于或等于2的自然数。命名空间NS可对应于图5A中的命名空间NS 11至NSp1和图5B中的命名空间NS12至NSp2之一。
在一些示例实施例中,可在初始操作时期预先执行生成并设定命名空间和/或区的操作。在其它示例实施例中,可实时执行或在运行时间期间执行生成并设定命名空间和/或区的操作。
图6是示出根据示例实施例的接收备份存储信息的流程图。图7是用于描述图6的操作的示图。
参照图1、图6和图7,为了接收备份存储信息(操作S100),存储装置200可向主机装置100发送备份存储信息请求BSI_REQ(操作S110)。例如,存储控制器210可生成备份存储信息请求BSI_REQ,并且可通过网络150输出备份存储信息请求BSI_REQ。网络150可形成在主机装置100和存储控制器210之间,如参照图2所述。例如,可由图3中的网络接口410执行操作S110。
响应于备份存储信息请求BSI_REQ,主机装置100可向存储装置200发送备份存储信息BSI(操作S 120)。例如,存储控制器210可通过网络150接收备份存储信息BSI。例如,可由图3中的网络接口410接收备份存储信息BSI。
在一些示例实施例中,备份存储信息BSI可包括与备份存储装置300关联的网络地址信息。例如,在NVMe协议中,备份存储信息BSI可包括NVMe限定名称(NQN)。又如,在iSCSI(经由TCP/IP的SCSI或互联网SCSI)协议中,备份存储信息BSI可包括iSCSI限定名称(IQN)。然而,示例实施例不限于此,备份存储信息BSI还可包括元数据等。
存储装置200可记录备份存储信息BSI(操作S130)。例如,存储控制器210可执行备份存储信息记录操作BSI_R。例如,可记录第一数据DAT和与备份存储装置300关联的备份存储信息BSI之间的关系(或对应关系),备份存储装置300存储了与第一数据DAT对应的备份数据BDAT。例如,可由图3中的路由注册模块450执行操作S130。
此后,存储装置200(例如,存储控制器210)可向主机装置100发送备份存储信息记录完成响应BSI_RSP。
在一些示例实施例中,可周期性地执行图7中的操作,并且通过周期性操作而改变的信息可被存储到存储装置200中所包括的非易失性存储器中。
图8是示出根据示例实施例的对第一数据执行数据读操作的流程图。图9A、图9B和图9C是用于描述图8的操作的示图。
参照图1、图8、图9A、图9B和图9C,为了对第一数据执行数据读操作(操作S200),主机装置100可向存储装置200发送读请求R_REQ。图9A、图9B和图9C示出了基于来自主机装置100的读请求R_REQ执行数据读操作,但示例实施例不限于此。例如,可基于来自主机装置100以外的外部装置的读请求来执行数据读操作。又如,可由存储装置200本身内部执行数据读操作,而无需从外部接收读请求(例如,通过执行预防代码或防御代码等)。
此后,存储控制器210可向包括在存储装置200中的存储区域220发送读命令RCMD,并且存储第一数据DAT(操作S210)。可基于读命令RCMD从存储区域220读取或检索第一数据DAT(操作S220)。可从存储区域220将第一数据DAT发送到存储控制器210。例如,可由图3中的非易失性存储器接口480执行操作S210和S220。
存储装置200可检查或确定第一数据DAT上是否存在不可恢复数据故障。例如,可确定第一数据DAT上是否出现了数据故障(或错误)(操作S230)。当第一数据DAT上出现了数据故障(操作S230:是)时,可确定数据故障是否可恢复(操作S240)。当数据故障不可恢复(操作S240:否)时,例如,当确定出现了不可恢复数据故障时,可执行操作S300。
在一些示例实施例中,可由存储控制器210执行操作S230和S240。例如,如图9A所示,在接收到第一数据DAT之后,存储控制器210可执行检测包括在第一数据DAT中的不可恢复数据故障的操作F_DET。在此示例中,可由图3中的ECC引擎440执行操作S230和S240。
在其它示例实施例中,可由存储区域220(例如,由非易失性存储器)执行操作S230和S240。例如,如图9B所示,在接收到第一数据DAT之后,存储控制器210可从存储区域220接收第一通知信号NS,其表示第一数据DAT包括不可恢复数据故障。在这方面,可从存储区域220通知第一数据DAT包括不可恢复数据故障的信息。在此示例中,与存储区域220对应的非易失性存储器(例如,图4的非易失性存储器500)可包括内部执行ECC编码和ECC解码的管芯上(或芯片上)ECC引擎,并且可由包括在非易失性存储器500中的管芯上ECC引擎执行操作S230和S240。例如,可基于擦除编码方案、独立磁盘冗余阵列(RAID)5方案、RAID 6方案等执行上述操作。
当第一数据DAT上没有出现数据故障(操作S230:否)时,存储装置200(例如,存储控制器210)可基于未检测到数据故障的操作N_DET向主机装置100发送第一数据DAT。
当第一数据DAT上出现了数据故障(操作S230:是)时,并且当数据故障可恢复(操作S240:是)时,例如,当确定出现了可恢复数据故障时,存储装置200(例如,存储控制器210)可对第一数据DAT执行内部数据恢复操作I_RCV(操作S250),并且可向主机装置100发送恢复或还原的第一数据DAT’。例如,如图9C所示,可由图3中的ECC引擎440执行操作S250。又如,可由包括在非易失性存储器中的管芯上ECC引擎执行操作S250。
此后,存储装置200(例如,存储控制器210)可向主机装置100发送读完成响应R_RSP。
图10是示出根据示例实施例的直接接收备份数据的流程图。图11是用于描述图10的操作的示图。
参照图1、图10和图11,当直接接收备份数据(操作S300)时,存储装置200可收集或采集与出现了不可恢复数据故障的第一数据DAT关联的第一信息FDI(操作S310)。例如,存储控制器210可执行收集第一信息FDI的操作GT_FDI。例如,可由图3中的数据管理模块460执行操作S310,并且可将第一信息FDI提供给图3中的路由注册模块450。
在一些示例实施例中,第一信息FDI可包括第一数据DAT的地址信息和存储第一数据DAT的存储区域220的信息中的至少一个。例如,第一信息FDI可包括逻辑地址信息(例如,逻辑块地址(LBA))、命名空间信息、区信息、NVM集合信息、持久组信息、卷或逻辑单元号(LUN)信息等。然而,示例实施例不限于此,第一信息FDI还可包括各种信息中的至少一个。
可如参照图5A、图5B和图5C所述实现命名空间和区,并且命名空间和区可表示主机软件可访问的LBA集合。
NVM集合可表示这样的概念:一个或更多个命名空间和未作为命名空间分配的空间作为一个集合处理。一个命名空间可不包括在超过一个NVM集合中。一组多个NVM集合可被称为NVM集合。
持久组可表示NVM集合作为一个组被处理以增加性能和寿命的概念。例如,假设存在包括三级单元(TLC)的持久组和包括单级单元(SLC)的持久组。可能有效的是,使用包括SLC的持久组提供需要高性能的服务,而使用包括TLC的持久组提供需要大容量而非高性能的服务。另外,当应用磨损均衡操作以增加寿命时,可针对各个持久组执行磨损均衡操作,因此可执行有效磨损均衡。
LUN可表示存储装置中的逻辑卷。例如,如小型计算机系统接口(SCSI)标准所定义的那样,LUN可以是用于指定与主机装置执行输入/输出(I/O)命令的单个物理或虚拟存储装置或者物理或虚拟存储装置的集合的唯一标识符。
存储装置200可基于第一信息FDI搜索或检索备份存储信息BSI(操作S320)。例如,存储控制器210可执行搜索备份存储信息BSI的操作SR_BSI。例如,可由图3中的路由注册模块450执行操作S320。可使用与第一数据DAT关联的上述各种信息来准确且有效地搜索备份存储信息BSI。
存储装置200可直接向备份存储装置300发送用于读取备份数据BDAT的读命令分组RCMD_PKT(操作S330)。例如,存储控制器210可生成读命令分组RCMD_PKT,并且可通过网络150输出读命令分组RCMD_PKT。网络150可形成在备份存储装置300和存储控制器210之间,如参照图2所述。例如,可由图3中的网络接口410执行操作S330。
响应于读命令分组RCMD_PKT,备份存储装置300可直接向存储装置200发送备份数据BDAT(操作S340)。例如,存储控制器210可通过网络150接收备份数据BDAT。例如,可由图3中的网络接口410接收备份数据BDAT。
在一些示例实施例中,当存储装置200基于NVMe-oF操作时,可例如使用基于NVMe-oF的RDMA通过网络接口410来执行操作S330和S340。
在根据示例实施例的恢复存储装置中的数据的方法中,存储装置200可不向主机装置100发送接收备份数据BDAT的请求,因此可无需主机装置100的干预来执行操作S310、S320、S330和S340。主机装置100不会识别存储装置200中出现的数据故障,因此性能不会劣化,并且与正常操作相比可能存在最小附加延迟。因此,可降低主机装置100的开销,可改进网络150的带宽,并且可以最大输出和/或性能来利用存储装置200。
图12是用于描述根据示例实施例的数据恢复操作的示图。
参照图1和图12,当执行数据恢复操作(操作S400)时,存储装置200(例如,存储控制器210)可基于备份数据BDAT对第一数据DAT执行数据恢复操作RCV。例如,数据恢复操作RCV可包括拷贝和存储备份数据BDAT的操作、基于循环冗余码(CRC)、ECC、RAID、擦除编码等的操作。备份数据BDAT可对应于恢复的第一数据DAT。例如,可在闪存转换层上处理上述至少一些操作。
此后,存储装置200可存储恢复的第一数据DAT”。例如,存储控制器210可将写命令WCMD和恢复的第一数据DAT”发送到存储区域220,并且存储区域220可基于写命令WCMD存储恢复的第一数据DAT”。
图13是示出根据示例实施例的恢复存储装置中的数据的方法的流程图。图14是用于描述图13的操作的示图。将省略与图1和图12重复的描述。
参照图13和图14,在根据示例实施例的恢复存储装置中的数据的方法中,操作S100、S200、S300和S400可与参照图1描述的那些实质上相同。例如,可如参照图6至图12所述执行操作S100、S200、S300和S400。图1中的操作S800可在操作S400之后执行。
可将与第一数据关联的数据恢复信息发送到主机装置(操作S500)。例如,存储装置200(例如,存储控制器210)可生成数据恢复信息RCV_INF,并且可通过网络150输出数据恢复信息RCV_INF。例如,可由图3中的网络接口410、路由注册模块450和数据管理模块460执行操作S500。
如上所述,即使在没有主机装置100干预的情况下执行操作S300并且主机装置100没有识别到存储装置200中出现的数据故障,存储装置200也可通知主机装置100对第一数据DAT执行了数据恢复操作,因此存储装置200可帮助或辅助主机装置100的数据管理。在这方面,即使主机装置100没有接收到用于提供备份数据BDAT的请求和/或针对第一数据DAT的数据恢复请求,主机装置100也可接收与第一数据DAT关联的数据恢复信息RCV_INF。
图15是示出根据示例实施例的恢复存储装置中的数据的方法的流程图。图16和图17是用于描述图15的操作的示图。将省略与图1重复的描述。
参照图15、图16和图17,在根据示例实施例的恢复存储装置中的数据的方法中,在执行操作S100、S200、S300和S400之前,可对于或者针对第一数据执行数据写操作(操作S600)。例如,如图16所示,主机装置100可向存储装置200(例如,向存储控制器210)发送写请求W_REQ和第一数据DAT,存储控制器210可向存储区域220发送写命令WCMD和第一数据DAT,并且存储区域220可基于写命令WCMD存储第一数据DAT。此后,存储装置200(例如,存储控制器210)可向主机装置100发送写完成响应W_RSP。
在一些示例实施例中,从主机装置接收备份存储信息的操作和对第一数据的数据写操作可一起执行,并且可在对第一数据执行数据写操作的同时执行从主机装置接收备份存储信息的操作。在这方面,操作S100可以是在数据写操作期间一起执行的处理,例如,操作S600和S100可基本上同时或并发地执行。
在一些示例实施例中,将备份数据存储到备份存储装置中的数据复制操作和对第一数据的数据写操作可一起执行,并且可在对第一数据执行数据写操作的同时执行数据复制操作。例如,如图17所示,主机装置100可向存储装置200发送第一写请求W_REQ1和第一数据DAT,并且还可向备份存储装置300发送第二写请求W_REQ2和备份数据BDAT。存储装置200可对第一数据DAT执行第一数据写操作WO1,并且可向主机装置100发送第一写完成响应W_RSP1。备份存储装置300可对备份数据BDAT执行第二数据写操作WO2,并且可向主机装置100发送第二写完成响应W_RSP2。在这方面,可在数据写操作期间一起执行数据复制和/或备份操作。
在操作S600之后执行的操作S100、S200、S300和S400可与参照图1描述的那些实质上相同。例如,可如参照图6至图12所述执行操作S 100、S200、S300和S400。图1中的操作S800可在操作S400之后执行。
本领域技术人员将理解,本发明构思可被具体实现为系统、方法、和/或在其上实现有计算机可读程序代码的一个或更多个计算机可读介质中实现的计算机程序产品。计算机可读程序代码可被提供给通用计算机、专用计算机或其它可编程数据处理设备的处理器。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是可包含或存储程序的任何有形介质,所述程序由指令执行系统、设备或装置使用,或者与指令执行系统、设备或装置结合。例如,计算机可读介质可以是非暂时性计算机可读介质。
图18是示出根据示例实施例的包括存储装置的存储系统的框图。将省略与图2重复的描述。
参照图18,存储系统1000可包括服务器1110和1120、存储装置1210、备份存储装置1220和1230、网络交换机1310以及网络1410、1420和1510。
服务器1110和1120可对应于图2中的主机装置100。例如,服务器1110和1120中的每一个可以是在其上执行应用的服务器。又如,服务器1110和1120中的每一个可以是执行数据复制和/或数据备份的服务器。
存储装置1210可对应于图2中的存储装置200。存储装置1210可存储第一数据DAT。备份存储装置1220和1230可对应于图2中的备份存储装置300。备份存储装置1220和1230中的每一个可存储备份数据BDAT。
备份存储装置1220和1230可包括本地存储装置1220和远程存储装置1230。本地存储装置1220可通过网络交换机1310连接到存储装置1210,并且可设置在与存储装置1210相同的本地空间中。远程存储装置1230可通过网络交换机1310和网络1410、1420和1510连接到存储装置1210,并且可设置在与存储装置1210间隔开的远程空间中。
尽管图18示出存储一个原始数据和两个备份数据(或复制数据)(例如,总共三个数据)的示例,但示例实施例不限于此。
网络交换机1310可将存储装置1210与本地空间中的本地存储装置1220连接。例如,网络交换机1310可以是以太网交换机,但示例实施例不限于此。
网络1410、1420和1510可对应于图2中的网络150。网络1410、1420和1510可将服务器1110和1120、存储装置1210、备份存储装置1220和1230以及网络交换机1310彼此连接。例如,网络1410和1420中的每一个可以是SAN,并且网络1510可以是WAN,但示例实施例不限于此。
图19A、图19B、图19C、图19D和图19E是用于描述根据示例实施例的应用于存储装置的NVMe-oF的示图。
图19A示出NVMe-oF中使用的命令胶囊(capsule)的示例。图19B示出NVMe-oF中使用的响应胶囊的示例。图19C示出NVMe-oF中使用的命令集的示例。
胶囊是NVMe-oF中使用的信息交换的NVMe单元。胶囊可被分类为命令胶囊或响应胶囊。命令胶囊可包括命令(格式化为提交队列条目(SQE)),并且可选地可包括分散收集列表(SGL)或数据。响应胶囊可包括响应(格式化为完成队列条目(CQE)),并且可选地可包括数据。数据可包括在主机装置和NVM子系统之间的NVMe层处传送的任何数据(例如,逻辑块数据或与命令关联的数据结构)。胶囊可独立于任何底层NVMe传输单元(例如,分组、消息或帧以及关联的标题和注脚),并且可包括多个这样的单元。
命令胶囊可从主机装置传送到NVM子系统。SQE可包括管理(Admin)命令、I/O命令或Fabrics命令。命令胶囊的最小尺寸可为NVMe传输绑定特定,但大小可至少为64B。命令胶囊的最大尺寸可为NVMe传输绑定特定。响应胶囊可从NVM子系统传送到主机装置。CQE可与先前发出的Admin命令、I/O命令或Fabrics命令关联。响应胶囊的尺寸可为NVMe传输绑定特定,但大小可至少为16B。响应胶囊的最大尺寸可为NVMe传输绑定特定。
NVMe-oF可支持三个命令集。Fabrics命令集可为NVMe-oF特定。Admin和I/O命令集可由NVMe基本规范定义。Fabrics命令集命令可用于NVMe-oF所特定的操作,包括建立连接、NVMe带内认证以及获取或设定属性。所有Fabrics命令可在Admin队列上提交,并且一些Fabrics命令也可在I/O队列上提交。与Admin和I/O命令不同,Fabrics命令可由控制器处理,而不管控制器是否被启用(例如,不管CC.EN的状态)。
图19D示出主机装置和NVM子系统内的光纤通道(FC)传输协议层的示例。图19E示出主机装置和NVM子系统内的远程直接存储器存取(RDMA)传输协议层和RDMA提供者(例如,iWARP、InfiniBand和RoCE)的示例。
根据示例实施例发送的命令、数据和/或信号可如图19A、图19B和图19C所示实现。根据示例实施例的使用基于NVMe-oF的RDMA执行的操作(例如,图10中的操作S330和S340)可基于图19D和图19E所示的示例实现。
图20是示出根据示例实施例的包括存储装置的数据中心的框图。
参照图20,数据中心3000可以是收集各种类型的数据并提供各种服务的设施,并且可被称为数据存储中心。数据中心3000可以是用于操作搜索引擎和数据库的系统,并且可以是诸如银行或政府机构的公司所使用的计算系统。数据中心3000可包括应用服务器3100至3100n和存储服务器3200至3200m。可根据示例实施例不同地选择应用服务器3100至3100n的数量和存储服务器3200至3200m的数量,并且应用服务器3100至3100n的数量和存储服务器3200至3200m的数量可彼此不同。
应用服务器3100可包括至少一个处理器3110和至少一个存储器3120,并且存储服务器3200可包括至少一个处理器3210和至少一个存储器3220。将作为示例描述存储服务器3200的操作。处理器3210可控制存储服务器3200的总体操作,并且可访问存储器3220以执行加载在存储器3220中的指令和/或数据。存储器3220可包括双倍数据速率(DDR)同步动态随机存取存储器(SDRAM)、高带宽存储器(HBM)、混合存储器立方体(HMC)、双列直插存储器模块(DIMM)、Optane DIMM、非易失性DIMM(NVDIMM)等中的至少一种。可根据示例实施例不同地选择包括在存储服务器3200中的处理器3210的数量和存储器3220的数量。在一些示例实施例中,处理器3210和存储器3220可提供处理器-存储器对。在一些示例实施例中,处理器3210的数量和存储器3220的数量可彼此不同。处理器3210可包括单核处理器或多核处理器。存储服务器3200的上述描述可类似地应用于应用服务器3100。应用服务器3100可包括至少一个存储装置3150,并且存储服务器3200可包括至少一个存储装置3250。在一些示例实施例中,应用服务器3100可不包括存储装置3150。可根据示例实施例不同地选择包括在存储服务器3200中的存储装置3250的数量。
应用服务器3100至3100n和存储服务器3200至3200m可通过网络3300彼此通信。可使用光纤通道(FC)或以太网来实现网络3300。FC可以是用于相对高速的数据传输的介质,并且可使用提供高性能和/或高可用性的光学交换机。根据网络3300的接入方案,存储服务器3200至3200m可提供作为文件存储、块存储或对象存储。
在一些示例实施例中,网络3300可以是仅存储网络或专用于存储的网络,例如存储区域网(SAN)。例如,SAN可以是使用FC网络并且根据FC协议(FCP)实现的FC-SAN。又如,SAN可以是使用传输控制协议/互联网协议(TCP/IP)网络并且根据iSCSI(经由TCP/IP的SCSI或互联网SCSI)协议实现的IP-SAN。在其它示例实施例中,网络3300可以是诸如TCP/IP网络的一般网络。例如,可根据诸如经由以太网的FC(FCoE)、网络附接存储(NAS)、NVMeover Fabrics(NVMe-oF)等的协议中的至少一种来实现网络3300。
以下,将基于应用服务器3100和存储服务器3200来描述示例实施例。应用服务器3100的描述可应用于另一应用服务器3100n,并且存储服务器3200的描述可应用于另一存储服务器3200m。
应用服务器3100可通过网络3300将用户或客户端请求存储的数据存储到存储服务器3200至3200m之一中。另外,应用服务器3100可通过网络3300从存储服务器3200至3200m之一获得用户或客户端请求读取的数据。例如,应用服务器3100可被实现为web服务器或数据库管理系统(DBMS)。
应用服务器3100可通过网络3300访问包括在另一应用服务器3100n中的存储器3120n或存储装置3150n,和/或可通过网络3300访问包括在存储服务器3200至3200m中的存储器3220至3220m或存储装置3250至3250m。因此,应用服务器3100可对存储在应用服务器3100至3100n和/或存储服务器3200至3200m中的数据执行各种操作。例如,应用服务器3100可执行用于在应用服务器3100至3100n和/或存储服务器3200至3200m之间移动或拷贝数据的命令。数据可直接或通过存储服务器3200至3200m的存储器3220至3220m从存储服务器3200至3200m的存储装置3250至3250m传送到应用服务器3100至3100n的存储器3120至3120n。例如,为了安全或隐私,通过网络3300传送的数据可以是加密的数据。
在存储服务器3200中,接口3254可提供处理器3210和控制器3251之间的物理连接和/或网络接口卡(NIC)3240和控制器3251之间的物理连接。例如,可基于直接附接存储(DAS)方案来实现接口3254,其中利用专用线缆直接连接存储装置3250。例如,可基于各种接口方案中的至少一种来实现接口3254,例如,高级技术附件(ATA)、串行ATA(SATA)、外部SATA(e-SATA)、小型计算机系统接口(SCSI)、串行附接SCSI(SAS)、外围组件互连(PCI)、高速PCI(PCIe)、NVMe、计算高速链路(CXL)、IEEE 1394、通用串行总线(USB)、安全数字(SD)卡接口、多媒体卡(MMC)接口、嵌入式MMC(eMMC)接口、通用闪存(UFS)接口、嵌入式UFS(eUFS)接口、紧凑闪存(CF)卡接口等。
存储服务器3200还可包括交换机3230和NIC 3240。在处理器3210的控制下,交换机3230可选择性地将处理器3210与存储装置3250连接,或者可选择性地将NIC 3240与存储装置3250连接。类似地,应用服务器3100还可包括交换机3130和NIC 3140。
在一些示例实施例中,NIC 3240可包括网络接口卡、网络适配器等。NIC 3240可通过有线接口、无线接口、蓝牙接口、光学接口等连接到网络3300。NIC 3240还可包括内部存储器、数字信号处理器(DSP)、主机总线接口等,并且可通过主机总线接口连接到处理器3210和/或交换机3230。主机总线接口可被实现为接口3254的上述示例之一。在一些示例实施例中,NIC 3240可与处理器3210、交换机3230和存储装置3250中的至少一个集成。
在存储服务器3200至3200m和/或应用服务器3100至3100n中,处理器可向存储装置3150至3150n和3250至3250m或存储器3120至3120n和3220至3220m发送命令以编程或读取数据。例如,数据可以是通过纠错码(ECC)引擎纠错的数据。例如,可通过数据总线反转(DBI)或数据掩蔽(DM)对数据进行处理,并且数据可包括循环冗余码(CRC)信息。例如,为了安全或隐私,数据可以是加密的数据。
响应于从处理器接收的读命令,存储装置3150至3150m和3250至3250m可向NAND闪存装置3252至3252m发送控制信号和命令/地址信号。当从NAND闪存装置3252至3252m读取数据时,可输入读使能(RE)信号作为数据输出控制信号,并且读使能(RE)信号可用于向DQ总线输出数据。可使用RE信号生成数据选通信号(DQS)。可基于写使能(WE)信号的上升沿或下降沿将命令和地址信号锁存在页缓冲器中。
控制器3251可控制存储装置3250的总体操作。在一些示例实施例中,控制器3251可包括静态随机存取存储器(SRAM)。控制器3251可响应于写命令将数据写入NAND闪存装置3252中,或者可响应于读命令从NAND闪存装置3252读取数据。例如,可从存储服务器3200中的处理器3210、另一存储服务器3200m中的处理器3210m或应用服务器3100至3100n中的处理器3110至3110n提供写命令和/或读命令。DRAM 3253可暂时存储(例如,可缓冲)要写入NAND闪存装置3252的数据或从NAND闪存装置3252读取的数据。此外,DRAM3253可存储元数据。元数据可以是由控制器3251生成以管理用户数据或NAND闪存装置3252的数据。
存储装置3250至3250m中的每一个可以是根据示例实施例的存储装置,并且可执行根据示例实施例的恢复存储装置中的数据的方法。
本发明构思可应用于包括存储装置的各种电子装置和系统。例如,本发明构思可应用于诸如个人计算机(PC)、服务器计算机、数据中心、工作站、移动电话、智能电话、平板计算机、膝上型计算机、个人数字助理(PDA)、便携式多媒体播放器(PMP)、数字相机、便携式游戏机、音乐播放器、摄像机、视频播放器、导航装置、可穿戴装置、物联网(IoT)装置、万物互联(IoE)装置、电子书阅读器、虚拟现实(VR)装置、增强现实(AR)装置、机器人装置、无人机等的系统。
在一些示例实施例中,由块表示的各个组件(例如,图2至图4、图18和图20所示的那些)可被实现为根据实施例执行上述相应功能的各种数量的硬件、软件和/或固件结构。例如,这些组件中的至少一个可包括各种硬件组件,包括数字电路、可编程或不可编程逻辑器件或阵列、专用集成电路(ASIC)、晶体管、电容器、逻辑门或使用直接电路结构的其它电路,例如存储器、处理器、逻辑电路、查找表等,其可通过一个或更多个微处理器或其它控制设备的控制执行相应功能。另外,这些组件中的至少一个可包括模块、程序或部分代码,其包含用于执行指定的逻辑功能、并且由一个或更多个微处理器或其它控制设备执行的一个或更多个可执行指令。另外,这些组件中的至少一个还可包括处理器或可由处理器实现,诸如执行相应功能的中央处理单元(CPU)、微处理器等。可在一个或更多个处理器上执行的算法中实现实施例的功能方面。此外,由块或处理步骤表示的组件、元件、模块或单元可采用任何数量的相关技术进行电子配置、信号处理和/或控制、数据处理等。
上述是示例实施例的例示,不应被解释为其限制。尽管描述了一些示例实施例,但本领域技术人员将容易理解,在不实质脱离示例实施例的情况下,可进行许多修改。因此,将理解,上述是各种示例实施例的例示,不应被解释为限于所公开的特定示例实施例,并且对所公开的示例实施例的修改以及其它示例实施例旨在包括在所附权利要求的范围内。
Claims (20)
1.一种恢复存储装置中的数据的方法,该方法包括:
从主机装置接收与备份存储装置关联的备份存储信息,所述主机装置和所述备份存储装置二者均在所述存储装置外部,并且所述备份存储装置被配置为存储与第一数据对应的备份数据;
对所述第一数据执行数据读操作;
响应于在读取所述第一数据的同时出现的不可恢复数据故障,基于所述备份存储信息直接从所述备份存储装置接收与所述第一数据对应的所述备份数据;以及
基于所述备份数据执行所述第一数据的数据恢复操作。
2.根据权利要求1所述的方法,其中,直接在所述备份存储装置和所述存储装置之间执行直接接收所述备份数据,而不经过所述主机装置。
3.根据权利要求1所述的方法,其中,所述主机装置、所述存储装置和所述备份存储装置通过网络彼此连接。
4.根据权利要求3所述的方法,其中,所述存储装置和所述备份存储装置物理上彼此不同。
5.根据权利要求1所述的方法,其中,接收所述备份存储信息包括:
由所述存储装置向所述主机装置发送备份存储信息请求;
由所述主机装置基于所述备份存储信息请求向所述存储装置发送所述备份存储信息;以及
由所述存储装置记录所述备份存储信息。
6.根据权利要求5所述的方法,其中,周期性地执行向所述主机装置发送所述备份存储信息请求、向所述存储装置发送所述备份存储信息以及记录所述备份存储信息,并且
其中,该方法还包括:
将向所述主机装置发送所述备份存储信息请求、向所述存储装置发送所述备份存储信息以及记录所述备份存储信息的结果存储到设置在所述存储装置中的非易失性存储器中。
7.根据权利要求5所述的方法,其中,所述备份存储信息包括与所述备份存储装置关联的网络地址信息。
8.根据权利要求1所述的方法,其中,直接接收所述备份数据包括:
收集与所述第一数据关联的第一信息;
基于所述第一信息搜索所述备份存储信息;
由所述存储装置直接向所述备份存储装置发送用于读取所述备份数据的读命令分组;以及
由所述备份存储装置基于所述读命令分组直接向所述存储装置发送所述备份数据。
9.根据权利要求8所述的方法,其中,所述第一信息包括下列信息中的任一个或任何组合:与所述第一数据对应的地址信息;以及指示存储所述第一数据的第一存储区域的信息。
10.根据权利要求1所述的方法,其中,对所述第一数据执行所述数据读操作包括:
由设置在所述存储装置中的存储控制器向设置在所述存储装置中并存储所述第一数据的第一存储区域发送读命令;
基于所述读命令读取所述第一数据;以及
检查所述第一数据上是否出现了所述不可恢复数据故障。
11.根据权利要求10所述的方法,其中,所述存储控制器被配置为检测包括在所述第一数据中的所述不可恢复数据故障。
12.根据权利要求10所述的方法,其中,所述存储控制器被配置为从所述第一存储区域接收第一通知信号,并且
其中,所述第一通知信号表示所述第一数据包括所述不可恢复数据故障。
13.根据权利要求10所述的方法,其中,对所述第一数据执行所述数据读操作还包括:
响应于针对所述第一数据出现的所述不可恢复数据故障,执行所述第一数据的内部数据恢复操作。
14.根据权利要求1所述的方法,还包括:
向所述主机装置发送与所述第一数据关联的数据恢复信息。
15.根据权利要求1所述的方法,还包括:
对所述第一数据执行数据写操作,
其中,从所述主机装置接收所述备份存储信息和对所述第一数据执行所述数据写操作一起执行。
16.根据权利要求15所述的方法,还包括:
执行将所述备份数据存储到所述备份存储装置中的数据复制操作,
其中,所述数据复制操作和对所述第一数据的所述数据写操作一起执行。
17.根据权利要求16所述的方法,其中,所述备份存储装置是通过网络交换机连接到所述存储装置的本地存储装置。
18.根据权利要求16所述的方法,其中,所述备份存储装置是通过网络交换机和至少一个网络连接到所述存储装置的远程存储装置。
19.一种存储装置,包括:
非易失性存储器,其包括多个存储区域;以及
存储控制器,其被配置为:
从主机装置接收与备份存储装置关联的备份存储信息,所述主机装置和所述备份存储装置二者均在所述存储装置外部,并且所述备份存储装置被配置为存储与第一数据对应的备份数据;
对所述第一数据执行数据读操作;
响应于在读取所述第一数据的同时出现的不可恢复数据故障,基于所述备份存储信息直接从所述备份存储装置接收与所述第一数据对应的所述备份数据;并且
基于所述备份数据执行所述第一数据的数据恢复操作。
20.一种恢复存储装置中的数据的方法,所述方法包括:
对第一数据执行数据写操作;
从主机装置接收与备份存储装置关联的备份存储信息,所述主机装置和所述备份存储装置二者均在所述存储装置外部,并且所述备份存储装置被配置为存储与所述第一数据对应的备份数据;
对所述第一数据执行数据读操作;
响应于在读取所述第一数据的同时出现的不可恢复数据故障,基于所述备份存储信息直接从所述备份存储装置接收与所述第一数据对应的所述备份数据,从所述备份存储装置接收所述备份数据而不经过所述主机装置;以及
基于所述备份数据执行所述第一数据的数据恢复操作,
其中,接收所述备份存储信息包括:
由所述存储装置向所述主机装置发送备份存储信息请求;
由所述主机装置基于所述备份存储信息请求向所述存储装置发送所述备份存储信息;以及
由所述存储装置记录所述备份存储信息,并且
其中,直接接收所述备份数据包括:
收集与出现了所述不可恢复数据故障的所述第一数据关联的第一信息;
基于所述第一信息搜索所述备份存储信息;
由所述存储装置直接向所述备份存储装置发送用于读取所述备份数据的读命令分组;以及
由所述备份存储装置基于所述读命令分组直接向所述存储装置发送所述备份数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220081221A KR102477051B1 (ko) | 2022-07-01 | 2022-07-01 | 네트워크를 이용한 스토리지 장치의 데이터 복구 방법 및 이를 수행하는 스토리지 장치 |
KR10-2022-0081221 | 2022-07-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117336308A true CN117336308A (zh) | 2024-01-02 |
Family
ID=84439210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310759198.0A Pending CN117336308A (zh) | 2022-07-01 | 2023-06-26 | 使用网络恢复存储装置中的数据的方法和存储装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240004762A1 (zh) |
EP (1) | EP4300313A1 (zh) |
KR (1) | KR102477051B1 (zh) |
CN (1) | CN117336308A (zh) |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05210466A (ja) * | 1991-11-28 | 1993-08-20 | Nec Corp | 磁気ディスクファイルバックアップシステム |
US6073209A (en) * | 1997-03-31 | 2000-06-06 | Ark Research Corporation | Data storage controller providing multiple hosts with access to multiple storage subsystems |
JPH10333958A (ja) * | 1997-06-03 | 1998-12-18 | Hitachi Computer Peripherals Co Ltd | データバックアップ方法 |
US6880101B2 (en) * | 2001-10-12 | 2005-04-12 | Dell Products L.P. | System and method for providing automatic data restoration after a storage device failure |
US20070277012A1 (en) * | 2006-05-23 | 2007-11-29 | Hitachi, Ltd. | Method and apparatus for managing backup data and journal |
JP4607981B2 (ja) * | 2008-03-27 | 2011-01-05 | 富士通株式会社 | コピー制御装置、コピー制御方法およびコピー制御プログラム |
US9015527B2 (en) * | 2013-01-29 | 2015-04-21 | Hewlett-Packard Development Company, L.P. | Data backup and recovery |
JP2015011421A (ja) * | 2013-06-27 | 2015-01-19 | ソニー株式会社 | 記憶制御装置、記憶装置、および、その記憶制御方法 |
US10901848B2 (en) * | 2018-08-03 | 2021-01-26 | Western Digital Technologies, Inc. | Storage systems with peer data recovery |
US11061787B2 (en) * | 2019-04-23 | 2021-07-13 | Micron Technology, Inc. | Custom error recovery in selected regions of a data storage device |
-
2022
- 2022-07-01 KR KR1020220081221A patent/KR102477051B1/ko active IP Right Grant
-
2023
- 2023-04-12 EP EP23167492.0A patent/EP4300313A1/en active Pending
- 2023-05-11 US US18/196,258 patent/US20240004762A1/en active Pending
- 2023-06-26 CN CN202310759198.0A patent/CN117336308A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
KR102477051B1 (ko) | 2022-12-13 |
EP4300313A1 (en) | 2024-01-03 |
US20240004762A1 (en) | 2024-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9921914B2 (en) | Redundant array of independent disks (RAID) write hole solutions | |
EP3989052B1 (en) | Method of operating storage device and method of operating storage system using the same | |
US20220269561A1 (en) | Storage controller, operation method thereof | |
US12045470B2 (en) | Method of writing data in nonvolatile memory device and nonvolatile memory device performing the same | |
US12007884B2 (en) | Method of allocating and protecting memory in computational storage device, computational storage device performing the same and method of operating storage system using the same | |
US11765229B2 (en) | Method of operating network-based storage device, method of operating storage system using the same and storage module performing the same | |
EP4300313A1 (en) | Method of recovering data in storage device using network and storage device performing the same | |
US12118246B2 (en) | Method of operating storage device for retention enhancement and storage device performing the same | |
EP4180969B1 (en) | Method of operating a storage device using multi-level address translation and a storage device performing the same | |
US20240256130A1 (en) | Method of operating storage device using host request bypass and storage device performing the same | |
US20240211424A1 (en) | Memory expander and computing system including the same | |
US20240176543A1 (en) | Method of operating storage device using program suspension control and storage device performing the same | |
US12014772B2 (en) | Storage controller and storage device including the same | |
KR102482115B1 (ko) | 멀티-레벨 어드레스 변환을 이용한 스토리지 장치의 구동 방법 및 이를 수행하는 스토리지 장치 | |
EP4379524A1 (en) | Storage device and storage system for direct storage | |
US20240193041A1 (en) | Operation method of memory controller configured to control memory device | |
US20230401002A1 (en) | Method of writing data in storage device using write throttling and storage device performing the same | |
US20230409219A1 (en) | Storage device and method of operating the same | |
KR20240120962A (ko) | 스토리지 장치, 스토리지 장치의 동작 방법, 및 스토리지 컨트롤러의 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |