CN113467708A - 电子装置、数据存储装置及其操作方法 - Google Patents
电子装置、数据存储装置及其操作方法 Download PDFInfo
- Publication number
- CN113467708A CN113467708A CN202010932122.XA CN202010932122A CN113467708A CN 113467708 A CN113467708 A CN 113467708A CN 202010932122 A CN202010932122 A CN 202010932122A CN 113467708 A CN113467708 A CN 113467708A
- Authority
- CN
- China
- Prior art keywords
- storage device
- storage
- data
- slave
- controller
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4234—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本公开涉及一种电子装置,该电子装置可以包括多个数据存储装置,该数据存储装置中的每个包括主存储装置以及一个或多个从存储装置。其中多个数据存储装置中的每个包括被配置为存储数据的存储设备以及被配置为控制针对该存储设备的数据的输入和输出操作的控制器。其中主存储装置的控制器从一个或多个从存储装置中的每个接收包括存储容量信息的装置信息,在触发容量控制事件时,在一个或多个从存储装置之中选择至少一个目标存储装置,将从主存储装置中的存储设备读取的源数据传输到目标存储装置,并且从主存储装置中的存储设备中擦除该源数据。
Description
相关申请的相交引用
本申请要求于2020年3月30日向韩国知识产权局提交的、申请号为10-2020-0038269的韩国专利申请的优先权,该韩国专利申请的全部内容通过引用整体并入本文。
技术领域
各个实施例总体涉及一种半导体集成装置,并且更特别地,涉及一种电子装置、数据存储装置及其操作方法。
背景技术
数据存储装置可以被主机装置访问,并且响应于主机装置的请求而执行输入/输出操作。
随着人工智能和大数据有关产业的发展,电子装置使用数据存储装置处理的数据量可能会显著增加。
为了处理海量的数据,可能需要增加电子装置中的数据存储装置的存储容量。进一步地,可能还需要高效地管理数据存储装置中存储的数据。
发明内容
在本公开的示例性实施例中,一种电子装置可以包括多个数据存储装置,该数据存储装置中的每个包括主存储装置和一个或多个从存储装置。其中多个数据存储装置中的每个包括被配置为存储数据的存储设备和被配置为控制针对该存储设备的数据的输入和输出操作的控制器。其中主存储装置的控制器从一个或多个从存储装置中的每个接收包括存储容量信息的装置信息,在触发容量控制事件时,在一个或多个从存储装置之中选择至少一个目标存储装置,将从主存储装置的存储设备读取的源数据传输到目标存储装置,并且从主存储装置的存储设备中擦除该源数据。
在本公开的示例性实施例中,一种数据存储装置可以包括:存储设备,被配置为存储数据;控制器,被配置为控制针对该存储设备的数据的输入和输出操作。其中控制器包括:存储装置接口,被配置为从联接到数据存储装置的一个或多个从数据存储装置中接收包括存储容量信息的装置信息;以及容量控制器,被配置为在触发容量控制事件时,在通过存储装置接口访问的一个或多个从数据存储装置之中选择至少一个目标存储装置,将从存储设备读取的源数据传输到至少一个目标存储装置,并且从存储设备中擦除该源数据。
在本公开的示例性实施例中,一种操作数据存储装置的方法,该数据存储装置包括存储设备和控制器,该方法包括:由控制器接收装置信息,该装置信息包括联接到数据存储装置的一个或多个从数据存储装置的存储容量信息;在触发容量控制事件时,由控制器在一个或多个从数据存储装置之中选择至少一个目标存储装置;由控制器将从存储设备读取的源数据传输到目标存储装置;并且由控制器从存储设备中擦除该源数据。
附图说明
从以下结合附图的详细描述中,将更清楚地理解本公开的主题的上述和其它方面、特征以及优点,其中:
图1是示出根据实施例的电子装置的视图;
图2至图4是示出根据实施例的数据存储装置的分层式配置的视图;
图5是示出根据实施例的数据存储装置的视图;
图6是示出根据实施例的控制器的视图;
图7是示出根据实施例的容量控制器的视图;
图8是示出根据实施例的操作数据存储装置的方法的流程图;
图9是示出根据实施例的数据存储系统的视图;
图10和图11是示出根据实施例的数据处理系统的视图;
图12是示出根据实施例的包括数据存储装置的网络系统的视图;并且
图13是示出根据实施例的数据存储装置中包括的非易失性存储器装置的视图。
具体实施方式
将参照附图更详细地描述本公开的各个实施例。然而,本公开的实施例不应被解释为限制本发明构思。尽管将示出并描述本公开的一些实施例,但是本领域普通技术人员将理解的是,在不脱离本发明的原理和精神的情况下,可以对这些实施例进行改变。
图1是示出根据实施例的电子装置1的视图。
参照图1,电子装置1可以包括主机装置103和数据存储装置组101,该数据存储装置组101被配置为响应于主机装置103的请求而处理数据。
主机装置103可以包括将数据存储装置组101使用为存储介质的计算装置。
数据存储装置组101可以包括多个数据存储装置10-M和10-1~10-N,M和N是大于1的正整数。
多个数据存储装置10-M和10-1~10-N中的至少一个可以由电子装置1中的主机装置103访问。主机装置103可以将数据存储装置10-M和10-1~10-N中的任意一个设置为主存储装置,并且将剩余的数据存储装置设置为从存储装置。在图1中,将存储装置10-M设置为主存储装置,将剩余的数据存储装置10-1~10-N设置为从存储装置。因此,数据存储装置组101可以包括主存储装置10-M和从存储装置10-1~10-N。
主机装置103可以将读取请求或写入请求传输到主存储装置10-M,以与主存储装置10-M交换数据。
主存储装置10-M可以与从存储装置10-1~10-N通信以接收从存储装置10-1~10-N的装置信息。该装置信息可以包括从存储装置10-1~10-N的标识信息、存储容量信息等。
在实施例中,当数据存储装置10-M和10-1~10-N电连接到主机装置103并且将数据存储装置10-M设置为主存储装置10-M时,从存储装置10-1~10-N可以被配置为将装置信息传输到主存储装置10-M。
主存储装置10-M可以通过触发容量控制事件来选择从存储装置10-1~10-N中的至少一个作为目标存储装置,并且将主存储装置10-M中存储的数据传输到目标存储装置。
图2至图4是示出根据实施例的包括数据存储装置10-M和10-1~10-N的数据存储装置组的分层式配置的视图。
参照图2,在数据存储装置组101-1中,数据存储装置10-M和10-1~10-N可以通过通信通道105彼此通信。当主机装置103可以选择数据存储装置10-M和10-1~10-N中的任意一个作为主存储装置时,例如选择数据存储装置10-M作为主存储装置时,剩余的存储装置10-1~10-N可以被设置为从存储装置,并且将主存储装置10-M识别为一种主机,以在主存储装置10-M的控制下读取或写入数据。然而,在该实施例中,主机装置103可以通过通信通道105直接访问从存储装置10-1~10-N。
参照图3,在数据存储装置组101-2中,主机装置103可以通过通信通道105直接访问主存储装置10-M。从存储装置10-1~10-N可以由主存储装置10-M通过诸如数据总线的路径107直接访问。与图2所示的实施例相反,其中从存储装置10-1~10-N可以由主机装置103间接访问。在图3中,从存储装置10-1~10-N中的每一个可以由主存储装置10-M控制。因此,从存储装置10-1~10-N可以将主存储装置10-M识别为一种主机。在实施例中,从存储装置10-1~10-N可以位于逻辑上低于主存储装置10-M的等级或层级。从存储装置10-1~10-N可以位于相同等级或相同层级。
参照图4,在数据存储装置组101-3中,主机装置103可以通过通信通道105直接访问主存储装置10-M。主存储装置10-M可以通过诸如数据总线的路径107访问从存储装置10-1~10-N中的一个,例如从存储装置10-1。从存储装置10-1可以通过诸如数据总线的路径107访问从存储装置10-1~10-N中的另一个,例如从存储装置10-N。也就是说,从存储装置10-1~10-N可以彼此串联并且分层地连接。从存储装置10-2~10-N中的任意一个可以由其它的从存储装置10-1~10-(N-1)通过诸如数据总线的路径107间接访问。
在实施例中,从存储装置10-1~10-N可以具有N层级结构,其中从存储装置10-1~10-N彼此分层地连接。也就是说,从存储装置10-1~10-N中的任意一个可以将从存储装置10-1~10-N中的另一个识别为主存储装置或主机。
在图2至图4所示的实施例中,主存储装置10-M可以响应于主机装置103的请求而读取或写入数据。主存储装置10-M可以管理主存储装置10-M中的存储设备的状态。当触发了容量控制事件时,主存储装置10-M可以将其存储设备中存储的数据传输到从存储装置10-1~10-N中的至少一个。
在实施例中,当需要垃圾收集时、当存储设备的剩余容量变得低于第一阈值时或者当存储设备中的空闲块的数量变得低于第二阈值时,可以触发容量控制事件,但是实施例不限于此。
当将主存储装置10-M中存储的数据传输到从存储装置10-1~10-N中的至少一个时,主存储装置10-M可以从自身擦除所传输的数据以获得主存储装置10-M中的存储空间。
主存储装置10-M可以针对所传输的数据来重建映射信息,以无错误地响应主机装置103的后续请求。
另外,在图4所示的数据存储装置组101-3中,当第一至第三存储装置彼此分层地连接时,逻辑层级低于第一存储装置的第二存储装置可以响应于第一存储装置的请求而读取或写入数据。第二存储装置可以管理其中的存储设备的状态。当触发了容量控制事件时,第二存储装置可以将其存储设备中存储的数据传输到逻辑层级低于第二存储装置的第三存储装置。
当将第二存储装置中存储的数据传输到第三存储装置时,第二存储装置可以从自身擦除所传输的数据以获得第二存储装置中的存储空间。第二存储装置可以针对所传输的数据重建映射信息,以无错误地响应第一存储装置的后续请求。
图5是示出根据实施例的数据存储装置10-x的视图。图5的数据存储装置10-x可以对应于图1至图4所示的数据存储装置10-1~10-N和10-M中的任意一个。
参照图5,数据存储装置10-x可以包括控制器110和存储设备120。
控制器110可以被配置为响应于主机装置103或主存储装置10-M的请求而控制存储设备120。例如,控制器110可以响应于主机装置103或主存储装置10-M的编程(或写入)请求而将数据编程到存储设备120。控制器110可以响应于主机装置103或主存储装置10-M的读取请求而将存储设备120中存储的数据传输到主机装置103或主存储装置10-M。
存储设备120可以被配置为在控制器110的控制下存储数据或输出所存储的数据。存储设备120可以包括易失性存储器装置或非易失性存储器装置。在实施例中,存储设备120可以包括以下中的一种或多种:电可擦除可编程ROM(EEPROM)、NAND闪速存储器、NOR闪速存储器、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)、自旋转移扭矩磁性RAM(STT-MRAM)等。存储设备120可以包括多个管芯、多个芯片、多个封装等中的任意一种。进一步地,存储设备120可以包括被配置为存储一位数据的单层单元(SLC)或被配置为存储多于一位数据的多层单元(MLC)。
尽管在附图中未描述,但是可以在控制器110的内部或外部设置缓冲存储器。当数据存储装置10-x可执行与主机装置103或主存储装置10-M的、包括写入操作和读取操作的一系列操作时,缓冲存储器可以用作临时存储装置。缓冲存储器可以由缓冲存储器管理单元控制。
在实施例中,控制器110可以包括存储装置接口201和容量控制器203。
存储装置接口201可以在数据存储装置10-x和另一数据存储装置之间提供通信通道,其中数据存储装置10-x和另一数据存储装置具有与图2至图4中的每个所示的分层结构基本相同或相似的分层结构。
当数据存储装置10-x对应于与主数据存储装置10-M通信的、数据存储装置10-1~10-N中的任意一个时,存储装置接口201可以将数据存储装置10-x的装置信息提供到存储装置接口201所识别的主存储装置10-M。装置信息可以包括标识(ID)信息、容量信息等。
当数据存储装置10-x对应于主数据存储装置10-M时,存储装置接口201可以从存储装置接口201所识别的从存储装置10-1~10-N中的一个或多个接收装置信息。
当触发了容量控制事件时,容量控制器203可以选择从存储装置10-1~10-N中的、除了数据存储装置10-x之外的至少一个作为目标存储装置。容量控制器203可以将存储设备120中存储的数据传输到目标存储装置。在实施例中,当需要垃圾收集时、当存储设备120的剩余容量变得低于第一阈值时或者当存储设备120中的空闲块的数量变得低于第二阈值时,可以触发容量控制事件,但是实施例不限于此。
当由于容量控制事件被触发而将存储设备120中存储的数据传输到目标存储装置时,容量控制器203可以从存储设备120中擦除所传输的数据以获得存储设备120中的容量。
进一步地,容量控制器203可以针对所传输的数据而重建映射信息。
图6是示出根据实施例的图5的控制器110的视图。
参照图6,控制器110可以包括处理器111、主机接口113、ROM1151、RAM 1153、存储器接口119、存储装置接口201和容量控制器203。
处理器111可以向主机接口113、存储器接口119、存储装置接口201和容量控制器203提供各种控制信息,以用于针对存储设备120执行数据的读取操作或写入操作。在实施例中,处理器111可以通过驱动针对数据存储装置10-x的各种操作而提供的固件来操作。在实施例中,处理器111可以执行闪存转换层(FTL)的功能以用于执行垃圾收集、地址映射、损耗均衡等来管理存储设备120、执行检测从存储设备120读取的数据的错误并且对检测到的错误执行错误检查和校正(ECC)的功能等。
主机接口113可以在处理器111的控制下从主机装置103接收命令和时钟信号。主机接口113可以提供用于控制数据的输入/输出的通信通道。特别地,主机接口113可以在主机装置103与数据存储装置10-x之间提供物理连接。主机接口113可以根据主机装置103的总线格式来执行与主机装置103的接口连接。主机装置103的总线格式可以包括诸如以下的标准接口协议中的至少一种:安全数字、通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、个人计算机存储卡国际协会(PCMCIA)、并行高级技术附件(PATA)、串行高级技术附件(SATA)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、外围组件互连(PCI)、高速PCI(PCI-E)、通用闪存(UFS)等。
ROM 1151可以存储用于控制器110的操作的程序代码,例如固件或软件、程序代码所使用的代码数据等。
RAM 1153可以存储用于控制器110的操作的数据或由控制器110生成的数据。
存储器接口119可以提供通信通道,可以通过该通信通道来在控制器110和存储设备120之间传输信号。存储器接口119可以在处理器111的控制下将数据写入存储设备120中。存储器接口119可以通过主机接口113而将从存储设备120读取的数据传输到主机装置103。
存储装置接口201可以在数据存储装置10-x与另一数据存储装置之间提供通信通道。
如上所述,数据存储装置组101、101-1、101-2和101-3中的每一个可以包括主存储装置10-M和从存储装置10-1~10-N。如图2所示,主存储装置10-M可以由主机装置103通过通信通道105直接访问。在这种情况下,从存储装置10-1~10-N可以将主存储装置10-M识别为主存储装置或主机。
可选地,如图3所示,主存储装置10-M可以由主机装置103通过通信通道105直接访问。在这种情况下,从存储装置10-1~10-N可以由主存储装置10-M通过路径107直接访问,并且将主存储装置10-M识别为主存储装置或主机。
进一步地,如图4所示,主存储装置10-M可以由主机装置103通过通信通道105直接访问。在这种情况下,从存储装置10-1~10-N可以具有N层级结构,其中从存储装置10-1~10-N可以通过路径107彼此访问。也就是说,如图4所示,从存储装置10-1~10-N中的任意一个从存储装置可以将从存储装置10-1~10-N中的、逻辑层级高于从存储装置10-1~10-N中的该任意一个从存储装置的另一从存储装置识别为主存储装置或主机。
重新参照图6,当数据存储装置10-x是与主存储装置10-M通信的从存储装置10-1~10-N中的一个从存储装置时,存储装置接口201可以向存储装置接口201所识别的主存储装置10-M提供装置信息,该装置信息包括从存储装置10-1~10-N中的该从存储装置的ID信息、容量信息等。
另外,当如图4所示,数据存储装置10-x是主存储装置10-M或从存储装置10-1~10-N中的、访问从存储装置10-1~10-N中的另一从存储装置的一个从存储装置时,存储装置接口201可以由存储装置接口201所识别的、从存储装置10-1~10-N中的一个从存储装置或从存储装置10-1~10-N中的另一从存储装置中接收包括ID信息、容量信息等的装置信息。
容量控制器203可以通过触发容量控制事件来选择从存储装置10-1~10-N中的至少一个作为目标存储装置。容量控制器203可以将存储设备120中存储的数据传输到目标存储装置。容量控制器203可以从存储设备120中擦除所传输的数据以获得存储设备120中的容量。容量控制器203可以针对所传输的数据重建映射信息。
图7是示出根据实施例的图5的容量控制器203的视图。
参照图7,容量控制器203可以包括状态管理器2031、从选择器2033、数据移动器2035和映射信息管理器2037。在实施例中,容量控制器203中的组件可以利用一个或多个处理器来实施。
状态管理器2031可以被配置为确定在数据存储装置10-x中是否触发了容量控制事件。在实施例中,当需要垃圾收集时、当存储设备120的剩余容量变得低于第一阈值时或者当存储设备120中的空闲块的数量变得低于第二阈值时,可以生成或触发容量控制事件,但是实施例不限于此。
当触发了容量控制事件时,从选择器2033可以选择从存储装置10-1~10-N中的至少一个作为目标存储装置。在实施例中,从选择器2033可以基于数据存储装置10-x中待获得的容量和从存储装置10-1~10-N的容量信息来选择目标存储装置。在实施例中,可以基于第一阈值或第二阈值来确定待获得的容量,但是实施例不限于此。
数据移动器2035可以被配置为选择待传输到目标存储装置的数据(源数据)。在实施例中,存储设备120可以包括至少一个管芯,管芯包括至少一个平面,平面包括多个存储块,存储块包括多个页面。数据移动器2035可以基于存储设备120中的多个存储块中的每一个中的有效页面的数量和待获得的容量来选择源数据块,但是实施例不限于此。
当将源数据或源数据块中存储的数据传输到目标存储装置时,数据移动器2035可以擦除所传输的数据以获得存储设备120中的容量。
映射信息管理器2037可以被配置为针对所传输的数据重建映射信息。在实施例中,映射信息管理器2037可以将针对所传输数据的由主机装置103使用的逻辑地址、被传输数据的目标存储装置的ID编号以及目标存储装置中的存储所传输数据的物理地址进行相互映射,但是实施例不限于此。
图8是示出根据实施例的操作图1的数据存储装置组101的方法的流程图。
当将数据存储装置组101安装在电子装置1中时,可以选择数据存储装置组101中的数据存储装置10-M和10-1~10-N中的一个数据存储装置作为主存储装置,并且可以选择剩余的数据存储装置作为从存储装置。图8示出了被选择为主存储装置的数据存储装置10-M以及代表从存储装置10-1~10-N的数据存储装置10-S。
参照图8,在步骤S101中,主存储装置10-M的主控制器Controller-M可以从从存储装置10-S的从控制器Controller-S接收装置信息。
在步骤S103中,主存储装置10-M可以控制主存储设备Storage-M以处理主机装置103的请求。
在处理主机装置103的请求期间,在步骤S105中,主控制器Controller-M可以确定是否生成了触发容量控制事件的条件。
在实施例中,当需要垃圾收集时、当主存储设备Storage-M的剩余容量变得低于第一阈值时或者当主存储设备Storage-M中的空闲块的数量变得低于第二阈值时,可以触发容量控制事件,但是实施例不限于此。
当未触发容量控制事件时,主控制器Controller-M可以连续地处理主机装置103的请求。
当触发了容量控制事件时,在步骤S107中,主控制器Controller-M可以基于待获得的容量和从存储装置10-1~10-N的装置信息,来选择从存储装置10-1~10-N中的至少一个作为目标从存储装置。在图8中,选择从存储装置10-S作目标从存储装置。
在实施例中,可以基于第一阈值或第二阈值来确定待获得的容量,但是实施例不限于此。
在步骤S109中,主控制器Controller-M可以基于待获得的容量来选择待传输到目标从存储装置的源数据或源数据块。
在步骤S111中,主控制器Controller-M可以从主存储设备Storage-M读取源数据或源数据块中存储的数据。
在步骤S113中,主控制器Controller-M可以将包括源数据或源数据块中存储的数据的写入请求传输到从控制器Controller-S。
在步骤S115中,从控制器Controller-S可以将从主存储装置10-M传输的数据编程到从存储设备Storage-S中。
在完成数据编程之后,在步骤S117中,从控制器Storage-S可以向主控制器Controller-M通知数据编程完成。
在步骤S119中,主控制器Controller-M可以从主存储设备Storage-M中擦除所传输的数据,以获得主存储设备Storage-M中的容量。
在步骤S121中,主控制器Controller-M可以针对所传输的数据重建或更新映射信息。在实施例中,主控制器Controller-M可以将针对所传输数据的由主机装置103使用的逻辑地址、被传输数据的目标从存储装置的ID编号以及目标从存储装置中的存储所传输数据的物理地址进行相互映射,但是实施例不限于此。
根据实施例,主机装置103所识别的主存储装置10-M可以将数据传输到至少一个从存储装置10-S以控制主存储装置10-M中的容量。
在另一实施例中,主存储装置10-M可以基于从从存储装置10-1~10-N接收的装置信息,将可能执行容量控制操作的从存储装置中的数据移动到主存储装置10-M或另一从存储装置。因此,可以通过在主存储装置10-M与从存储装置10-1~10-N之间传输数据,或者在从存储装置10-1~10-N之间传输数据来控制数据存储装置10-M和10-1~10-N的容量。
图9是示出根据实施例的数据存储系统1000的视图。
参照图9,数据存储系统1000可以包括主机装置1100和数据存储装置1200。在实施例中,数据存储装置1200可以被配置为固态驱动器(SSD)。
数据存储装置1200可以包括控制器1210、多个非易失性存储器装置1220-0至1220-n、缓冲存储器装置1230、电源1240、信号连接器1101和电源连接器1103。
控制器1210可以控制数据存储装置1200的一般操作。尽管未示出,但是控制器1210可以包括主机接口单元、控制单元、用作工作存储器的随机存取存储器、错误校正码(ECC)单元和存储器接口单元。在实施例中,控制器1210可以被配置为图5至图7中所示的控制器110。
主机装置1100可以通过信号连接器1101与数据存储装置1200交换信号。该信号可以包括命令、地址、数据等中的一种或多种。
控制器1210可以分析和处理从主机装置1100接收的信号。控制器1210可以通过驱动固件或软件来控制数据存储装置1200的内部功能块的操作。
缓冲存储器装置1230可以临时存储待存储在非易失性存储器装置1220-0至1220-n中的至少一个中的数据。进一步地,缓冲存储器装置1230可以临时存储从非易失性存储器装置1220-0至1220-n中的至少一个读取的数据。可以根据控制器1210的控制将临时存储在缓冲存储器装置1230中的数据传输到主机装置1100或非易失性存储器装置1220-0至1220-n中的至少一个。
非易失性存储器装置1220-0至1220-n可以用作数据存储装置1200的存储介质。非易失性存储器装置1220-0至1220-n可以分别通过多个通道CH0至CHn与控制器1210联接。一个或多个非易失性存储器装置可以联接到一个通道。联接到每个通道的非易失性存储器装置可以联接到相同的信号总线和数据总线。
电源1240可以将通过电源连接器1103输入的电力提供到数据存储装置1200的控制器1210、非易失性存储器装置1220-0至1220-n和缓冲存储器装置1230。电源1240可以包括辅助电源。辅助电源可以供应电力以允许当发生突然断电时数据存储装置1200正常终止。辅助电源可以包括足以存储所需电荷的大容量电容器。
根据主机装置1100和数据存储装置1200之间的接口方案,信号连接器1101可以利用各种类型的连接器中的一种或多种来实施。
根据主机装置1100的电力供应方案,电源连接器1103可以利用各种类型的连接器中的一种或多种来实施。
图10是示出根据实施例的数据处理系统3000的视图。参照图10,数据处理系统3000可以包括主机装置3100和存储器系统3200。
主机装置3100可以以诸如印刷电路板的板形式来配置。尽管未示出,但是主机装置3100可以包括内部功能块。
主机装置3100可以进一步包括连接端子3110,诸如插座、插槽或连接器。存储器系统3200可以连接到连接端子3110。
存储器系统3200可以以诸如印刷电路板的板形式来配置。存储器系统3200可以被称为存储器模块或存储卡。存储器系统3200可以包括控制器3210、缓冲存储器装置3220、非易失性存储器装置3231和3232、电源管理集成电路(PMIC)3240和连接端子3250。
控制器3210可以控制存储器系统3200的一般操作。控制器3210可以以与图5至图7中所示的控制器110相同的方式配置。
缓冲存储器装置3220可以临时存储待存储在非易失性存储器装置3231和3232中的数据。进一步地,缓冲存储器装置3220可以临时存储从非易失性存储器装置3231和3232读取的数据。根据控制器3210的控制,可以将临时存储在缓冲存储器装置3220中的数据传输到主机装置3100或非易失性存储器装置3231和3232。
非易失性存储器装置3231和3232可以用作存储器系统3200的存储介质。
PMIC 3240可以将通过连接端子3250输入的电力提供到存储器系统3200的内部。PMIC 3240可以根据控制器3210的控制来管理存储器系统3200的电力。
连接端子3250可以联接到主机装置3100的连接端子3110。通过连接端子3110和连接端子3250,可以在主机装置3100和存储器系统3200之间传送诸如命令、地址、数据等的信号以及电力。根据主机装置3100和存储器系统3200之间的接口方案,连接端子3250可以被配置为具有各种类型中的一种或多种。如图10所示,连接端子3250可以被设置在存储器系统3200的一侧。
图11是示出根据实施例的数据处理系统4000的视图。参照图11,数据处理系统4000可以包括主机装置4100和存储器系统4200。
主机装置4100可以以诸如印刷电路板的板形式来配置。尽管未示出,但是主机装置4100可以包括内部功能块。
存储器系统4200可以以表面安装型封装的形式配置。存储器系统4200可以通过焊球4250安装到主机装置4100上。存储器系统4200可以包括控制器4210、缓冲存储器装置4220和非易失性存储器装置4230。
控制器4210可以控制存储器系统4200的一般操作。控制器4210可以以与图5至图7中所示的控制器110相同的方式配置。
缓冲存储器装置4220可以临时存储待存储在非易失性存储器装置4230中的数据。进一步地,缓冲存储器装置4220可以临时存储从非易失性存储器装置4230读取的数据。根据控制器4210的控制,可以将临时存储在缓冲存储器装置4220中的数据传输到主机装置4100或非易失性存储器装置4230。
非易失性存储器装置4230可以用作存储器系统4200的存储介质。
图12是示出根据实施例的包括数据存储装置的网络系统5000的视图。参照图12,网络系统5000可以包括通过网络5500联接的服务器系统5300和多个客户端系统5410、5420和5430。
服务器系统5300可以响应于来自多个客户端系统5410至5430的请求而服务数据。例如,服务器系统5300可以存储由多个客户端系统5410至5430提供的数据。又例如,服务器系统5300可以向多个客户端系统5410至5430提供数据。
服务器系统5300可以包括主机装置5100和存储器系统5200。存储器系统5200可以被配置为图1至图4所示的数据存储装置、图9所示的数据存储装置1200、图10所示的存储器系统3200,或图11所示的存储器系统4200。
图13是示出根据实施例的诸如图1至图4所示的数据存储装置的数据存储装置中包括的非易失性存储器装置300的视图。参照图13,非易失性存储器装置300可以包括存储器单元阵列310、行解码器320、数据读取/写入块330、列解码器340、电压生成器350和控制逻辑360。
存储器单元阵列310可以包括布置在字线WL1至WLm和位线BL1至BLn的相交处的存储器单元MC。
存储器单元阵列310可以包括三维存储器阵列。三维存储器阵列可以具有在垂直于半导体衬底的顶表面的方向上布置的堆叠结构。此外,三维存储器阵列可以包括NAND串,每个NAND串包括在垂直于半导体衬底的顶表面的方向上堆叠的多个存储器单元。
三维存储器阵列的结构不限于上述实施例。可以以高度集成的方式形成具有水平方向性和垂直方向性的存储器阵列结构。在实施例中,在三维存储器阵列的NAND串中,相对于半导体衬底的顶表面在水平和垂直方向上布置存储器单元。存储器单元可以被不同地间隔以提供不同的集成度。
行解码器320可以通过字线WL1至WLm与存储器单元阵列310联接。行解码器320可以根据控制逻辑360的控制而操作。行解码器320可以对由外部装置(未示出)提供的地址进行解码。行解码器320可以基于解码结果来选择和驱动字线WL1至WLm。例如,行解码器320可以将由电压生成器350提供的字线电压提供到字线WL1至WLm。
数据读取/写入块330可以通过位线BL1至BLn与存储器单元阵列310联接。数据读取/写入块330可以包括分别对应于位线BL1至BLn的读取/写入电路RW1至RWn。数据读取/写入块330可以根据控制逻辑360的控制而操作。数据读取/写入块330可以根据操作模式而作为写入驱动器或读出放大器来操作。例如,在写入操作中,数据读取/写入块330可以作为写入驱动器来操作以将由外部装置提供的数据存储在存储器单元阵列310中。又例如,在读取操作中,数据读取/写入块330可以作为读出放大器来操作以从存储器单元阵列310读出数据。
列解码器340可以根据控制逻辑360的控制而操作。列解码器340可以对由外部装置提供的地址进行解码。列解码器340可以基于解码结果,将数据读取/写入块330中的分别对应于位线BL1至BLn的读取/写入电路RW1至RWn与数据输入/输出线或数据输入/输出缓冲器联接。
电压生成器350可以生成待在非易失性存储器装置300的内部操作中使用的电压。由电压生成器350生成的电压可以施加到存储器单元阵列310的存储器单元。例如,可以将在编程操作中生成的编程电压施加到待执行编程操作的存储器单元的字线。又例如,可以将在擦除操作中生成的擦除电压施加到待执行擦除操作的存储器单元的阱区。再例如,可以将在读取操作中生成的读取电压施加到待执行读取操作的存储器单元的字线。
控制逻辑360可以基于由外部装置提供的控制信号来控制非易失性存储器装置300的一般操作。例如,控制逻辑360可以控制非易失性存储器装置300的操作,诸如非易失性存储器装置300的读取操作、写入操作和擦除操作。
本公开的上述实施例旨在说明而非限制本发明。各种替代方案及等同方案是可能的。本发明也不限于任何特定类型的半导体装置。鉴于本公开,其它增加、减少或修改是显而易见的,并且旨在落入所附权利要求的范围内。
Claims (14)
1.一种电子装置,包括:
多个数据存储装置,所述多个数据存储装置中的每个包括主存储装置以及一个或多个从存储装置,
其中所述多个数据存储装置中的每个包括存储设备和控制器,所述存储设备存储数据,所述控制器控制针对所述存储设备的数据的输入和输出操作,并且
其中所述主存储装置中的控制器从所述一个或多个从存储装置中的每个接收包括存储容量信息的装置信息;在触发容量控制事件时,在所述一个或多个从存储装置之中选择至少一个目标存储装置;将从所述主存储装置中的存储设备读取的源数据传输到所述目标存储装置;并且从所述主存储装置中的存储设备中擦除所述源数据。
2.根据权利要求1所述的电子装置,其中当需要垃圾收集时、当所述主存储装置的剩余存储容量变得低于第一阈值时或者当所述主存储装置中的空闲块的数量变得低于第二阈值时,触发所述容量控制事件。
3.根据权利要求1所述的电子装置,其中所述主存储装置中的控制器基于待通过传输所述源数据而获得的存储容量来选择所述源数据,并且基于待获得的所述存储容量和所述一个或多个从存储装置的存储容量信息来选择所述目标存储装置。
4.根据权利要求1所述的电子装置,其中所述装置信息进一步包括所述一个或多个从存储装置中的每个的标识信息,即ID信息,并且所述主存储装置中的控制器基于所述目标存储装置的ID信息来改变所述源数据的映射信息。
5.根据权利要求1所述的电子装置,其中所述一个或多个从存储装置中的每个由所述主存储装置通过通信通道访问或者由另一从存储装置通过数据总线访问。
6.一种数据存储装置,包括:
存储设备,存储数据;
控制器,控制针对所述存储设备的数据的输入和输出操作,
其中所述控制器包括:
存储装置接口,从联接到所述数据存储装置的一个或多个从数据存储装置接收包括存储容量信息的装置信息;以及
容量控制器,在触发容量控制事件时,在通过所述存储装置接口访问的所述一个或多个从数据存储装置之中选择至少一个目标存储装置;将从所述存储设备读取的源数据传输到所述至少一个目标存储装置,并且从所述存储设备中擦除所述源数据。
7.根据权利要求6所述的数据存储装置,其中当需要垃圾收集时、当所述存储设备的剩余存储容量变得低于第一阈值时或者当所述存储设备中的空闲块的数量变得低于第二阈值时,触发所述容量控制事件。
8.根据权利要求6所述的数据存储装置,其中所述控制器基于待通过传输所述源数据而获得的存储容量来选择所述源数据,并且基于待获得的所述存储容量和所述一个或多个从数据存储装置的存储容量信息来选择所述目标存储装置。
9.根据权利要求6所述的数据存储装置,其中所述装置信息进一步包括所述一个或多个从数据存储装置中的每个的标识信息,即ID信息,并且所述控制器基于所述目标存储装置的ID信息来改变所述源数据的映射信息。
10.根据权利要求6所述的数据存储装置,其中所述数据存储装置由所述一个或多个从数据存储装置通过通信通道访问或者由另一数据存储装置通过数据总线访问。
11.一种操作数据存储装置的方法,所述数据存储装置包括存储设备和控制器,所述方法包括:
由所述控制器接收装置信息,所述装置信息包括联接到所述数据存储装置的一个或多个从数据存储装置的存储容量信息;
在触发容量控制事件时,由所述控制器在所述一个或多个从数据存储装置之中选择至少一个目标存储装置;
由所述控制器将从所述存储设备读取的源数据传输到所述目标存储装置;并且
由所述控制器从所述存储设备中擦除所述源数据。
12.根据权利要求11所述的方法,其中当需要垃圾收集时、当所述存储设备的剩余存储容量变得低于第一阈值时或者当所述存储设备中的空闲块的数量变得低于第二阈值时,触发所述容量控制事件。
13.根据权利要求11所述的方法,其中基于待通过传输所述源数据而获得的存储容量来选择所述源数据,并且基于待获得的所述存储容量和所述一个或多个从数据存储装置的存储容量信息来选择所述目标存储装置。
14.根据权利要求11所述的方法,其中所述装置信息进一步包括所述一个或多个从数据存储装置中的每个的标识信息,即ID信息,并且所述控制器基于所述目标存储装置的ID信息来改变所述源数据的映射信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2020-0038269 | 2020-03-30 | ||
KR1020200038269A KR20210121503A (ko) | 2020-03-30 | 2020-03-30 | 전자 장치와, 이를 위한 데이터 저장 장치 및 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113467708A true CN113467708A (zh) | 2021-10-01 |
Family
ID=77857166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010932122.XA Withdrawn CN113467708A (zh) | 2020-03-30 | 2020-09-08 | 电子装置、数据存储装置及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210303157A1 (zh) |
KR (1) | KR20210121503A (zh) |
CN (1) | CN113467708A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112751693B (zh) * | 2019-10-31 | 2022-09-06 | 北京金山云网络技术有限公司 | 分布式存储系统的数据处理方法、装置及电子设备 |
-
2020
- 2020-03-30 KR KR1020200038269A patent/KR20210121503A/ko unknown
- 2020-08-19 US US16/997,246 patent/US20210303157A1/en not_active Abandoned
- 2020-09-08 CN CN202010932122.XA patent/CN113467708A/zh not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
US20210303157A1 (en) | 2021-09-30 |
KR20210121503A (ko) | 2021-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110874188B (zh) | 数据存储装置、其操作方法以及具有其的存储系统 | |
CN113515231A (zh) | 数据存储装置及其操作方法 | |
CN111177031B (zh) | 数据存储装置及操作方法和具有数据存储装置的存储系统 | |
KR20190067370A (ko) | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 | |
US20200152274A1 (en) | Data storage apparatus, operating method thereof, and storage system including data storage apparatus | |
KR20190121973A (ko) | 데이터 저장 장치 및 이의 리드 디스터번스 방지 방법, 이를 이용한 스토리지 시스템 | |
CN113360427A (zh) | 数据存储装置及其操作方法 | |
CN111414311B (zh) | 数据存储装置、其操作方法及其控制器 | |
US11543990B2 (en) | Data storage apparatus with extended lifespan and operation method thereof | |
CN112578998A (zh) | 数据存储设备及其操作方法 | |
CN111708480B (zh) | 数据存储装置及其操作方法和控制器 | |
CN111752854A (zh) | 数据存储装置及其操作方法 | |
US20210303157A1 (en) | Electronic device, data storage device, and method of operating the same | |
KR20200121068A (ko) | 데이터 저장 장치 및 이의 동작 방법, 이를 위한 컨트롤러 | |
US11635896B2 (en) | Method and data storage apparatus for replacement of invalid data blocks due to data migration | |
CN115938422A (zh) | 刷新数据的数据存储装置及其操作方法 | |
US11593006B2 (en) | Data storage apparatus and method for managing valid data based on bitmap table | |
US11847332B2 (en) | Data storage apparatus and operating method thereof | |
CN110727393A (zh) | 数据存储装置及其操作方法、存储系统 | |
US20220188008A1 (en) | Data storage apparatus and operation method thereof | |
US20220188026A1 (en) | Data storage apparatus and operation method thereof | |
US11243718B2 (en) | Data storage apparatus and operation method i'hereof | |
US20210326053A1 (en) | Electronic device, data storage device and method of operating therefor | |
KR20230161650A (ko) | 리드 효율이 향상된 데이터 저장 장치와, 이를 위한 컨트롤러, 메모리 장치 및 그 동작 방법 | |
CN116774917A (zh) | 存储器系统及操作存储器系统的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20211001 |
|
WW01 | Invention patent application withdrawn after publication |