CN106257401B - 数据存储装置 - Google Patents

数据存储装置 Download PDF

Info

Publication number
CN106257401B
CN106257401B CN201610443293.XA CN201610443293A CN106257401B CN 106257401 B CN106257401 B CN 106257401B CN 201610443293 A CN201610443293 A CN 201610443293A CN 106257401 B CN106257401 B CN 106257401B
Authority
CN
China
Prior art keywords
data
volatile memory
storage device
controller
storage devices
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
CN201610443293.XA
Other languages
English (en)
Other versions
CN106257401A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN106257401A publication Critical patent/CN106257401A/zh
Application granted granted Critical
Publication of CN106257401B publication Critical patent/CN106257401B/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/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/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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • 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
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • 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/0629Configuration or reconfiguration 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation 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/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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)
  • 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

数据存储装置
要求于2015年6月22日提交的第10-2015-0088574号韩国专利申请的优先权,所述申请的全部内容通过引用包含于此。
技术领域
本发明构思总体上涉及一种数据存储装置,更具体地,涉及一种包括根据从主机接收的数据的特性将数据传输到外扩存储装置(scale-out storage device)中的一个以及从外扩存储装置中的一个接收数据的控制器的数据存储装置,以及一种包括该数据存储装置的数据处理系统。
背景技术
存储装置用于存储数据。存储装置可分成易失性存储装置和非易失性存储装置。闪存装置是使用单个操作对存储单元进行编程或擦除的EEPROM的示例。例如,程序或读取操作可通过页的单元来执行,擦除操作可通过块的单元来执行。块可包括多个页。
闪存装置可包括多个闪存芯片。闪存装置的性能的寿命可根据所述多个闪存芯片中的一个来确定。例如,如果所述多个闪存芯片中的一个是不能再用的,或者闪存芯片的性能降低,则闪存装置的整体寿命或性能会劣化。
发明内容
发明构思的实施例提供了数据存储装置。数据存储装置包括多个外扩存储装置以及被构造成确定数据的特性的控制器。控制器被构造成基于确定的特性将数据传输到所述多个外扩存储装置中的第一外扩存储装置以及从所述多个外扩存储装置中的第一外扩存储装置接收数据。所述多个外扩存储装置中的每个包括易失性存储器、非易失性存储器以及被构造成控制易失性存储器和非易失性存储器的外扩控制器。
控制器确定每个外扩存储装置的类型,控制器基于由控制器确定的每个外扩存储装置的类型和确定的特性而将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。控制器包括接收用于确定每个外扩存储装置的类型的用户输入的用户接口。控制器包括基于用户输入来确定每个外扩存储装置的类型的类型格式化器,控制器基于确定的特性和由类型格式化器确定的每个外扩存储装置的类型将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。数据存储装置还包括被构造成存储类型格式化器和分类器的存储器以及被构造成执行类型格式化器和分类器的CPU。类型格式化器基于用户输入来确定每个外扩存储装置的类型,分类器确定数据的特性。分类器基于由类型格式化器确定的每个外扩存储装置的类型和确定的特性将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。
数据的特性通过数据的逻辑地址来确定。控制器基于确定的特性和控制器的操作频率来将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。数据存储装置包括连接到控制器的外部易失性存储器。控制器基于确定的特性和外部易失性存储器的带宽来将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。控制器基于确定的特性和与包括在非易失性存储器中的存储单元有关的编程方法将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。控制器基于确定的特性和管理非易失性存储器中的存储数据的闪存转换层(FTL)的映射尺寸将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。控制器基于确定的特性和非易失性存储器的用户数据区和预留空间区的比例将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。控制器基于确定的特性和非易失性存储器的容量来将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。
控制器确定易失性存储器的特性和非易失性存储器的特性,控制器确定控制器的操作频率。控制器基于确定出的数据的特性、确定出的易失性存储器的特性、确定出的非易失性存储器的特性和确定出的操作频率中的至少一个来将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。易失性存储器的特性通过带宽来确定。非易失性存储器的特性包括与包括在非易失性存储器中的存储单元有关的编程方法、管理在非易失性存储器中的存储数据的FTL的映射尺寸、非易失性存储器的用户数据区和预留空间区的比例和非易失性存储器的容量中的至少一个。数据可以是热数据或冷数据。数据是程序数据或读取数据。数据可以是随机数据或顺序数据。数据可以是用户数据或元数据。易失性存储器和外扩控制器封装在多芯片封装件中。易失性存储器可以是DRAM、非易失性存储器可以是闪存。数据存储装置可以是固态驱动器。
发明构思的实施例提供了包括主机和经由接口连接到主机的数据存储装置的数据处理系统。数据存储装置包括多个外扩存储装置和构造成确定经由接口传输到主机和从主机接收的数据的特性的控制器。控制器被构造成基于确定的特性将数据传输到多个外扩存储装置中的第一外扩存储装置以及从多个外扩存储装置中的第一外扩存储装置接收数据。多个外扩存储装置中的每个包括易失性存储器、非易失性存储器以及被构造成控制易失性存储器和非易失性存储器的外扩控制器。
数据存储装置包括被构造成接收用户输入以确定多个外扩装置中每个的类型的用户接口和被构造成确定多个外扩装置中每个的类型的控制器。控制器基于确定的类型和确定的特性来将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。数据存储装置还包括连接到控制器的DRAM。控制器基于确定的特性、控制器的操作频率、DRAM的带宽、与包括在多个外扩存储装置中每个的非易失性存储器中的存储单元有关的编程方法、管理在非易失性存储器中的存储数据的FTL的映射尺寸、非易失性存储器的用户数据区和预留空间区的比例和非易失性存储器的容量中的至少一个来将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。
控制器确定易失性存储器的特性和包括在多个外扩存储装置中的每个中的非易失性存储器的特性。控制器确定控制器的操作频率。控制器基于确定出的数据的特性、确定出的易失性存储器的特性、确定出的非易失性存储器的特性和确定出的操作频率中的至少一个来将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。易失性存储器的特性通过带宽来确定。非易失性存储器的特性包括与包括在非易失性存储器中的存储单元有关的编程方法、管理非易失性存储器中的存储数据的FTL的映射尺寸、非易失性存储器的用户数据区和预留空间区的比例和非易失性存储器的容量中的至少一个。数据的特性通过数据的逻辑地址来确定。数据可以是热数据、冷数据、程序数据、读取数据、随机数据、顺序数据、用户数据和元数据中的一种。
发明构思的实施例提供了一种操作包括经由接口将数据传输到主机以及从主机接收数据的数据存储装置的数据处理系统的方法。所述方法包括确定数据的特性以及基于确定的特性将数据传输到多个外扩存储装置中的第一外扩存储装置以及从多个外扩存储装置中的第一外扩存储装置接收数据。数据存储装置包括多个外扩存储装置,多个外扩存储装置中的每个包括易失性存储器、非易失性存储器以及控制易失性存储器和非易失性存储器的外扩控制器。
所述方法还包括接收用户输入以确定多个外扩存储装置中每个的类型、基于用户输入来确定多个外扩存储装置中每个的类型、基于确定的特性和确定的类型来选择多个外扩存储装置中的第一外扩存储装置以及将数据传输到第一外扩存储装置以及从第一外扩存储装置接收数据。数据存储装置包括在数据库中,主机可以是控制数据库的数据库服务器。易失性存储器可以是DRAM,非易失性存储器可以是闪存。数据存储装置可以固态驱动器。
附图说明
基于考虑在附图中示出的特定实施例,发明构思的上述和其他特征和优点将变得更明显。
图1是示出根据发明构思的实施例的数据处理系统的框图。
图2A是进一步示出根据发明构思的实施例的图1的数据存储装置的框图。
图2B是进一步示出根据发明构思的另一实施例的图1的数据存储装置的框图。
图3是示出根据发明构思的实施例的图2A和图2B的第一集群的框图。
图4是示出根据发明构思的实施例的图3的第一外扩装置的框图。
图5是示出根据发明构思的实施例的图4的第一外扩装置的半导体封装件的图。
图6是示出根据发明构思的实施例的包括图1的存储控制器和第一外扩存储装置的半导体封装件的图。
图7是示出根据发明构思的实施例的图4的第一外扩控制器的框图。
图8是示出根据发明构思的实施例的数据处理系统的框图。
图9是示出根据发明构思的实施例的使用类型格式化器将逻辑地址分配到外扩存储装置的方法的概念图。
图10是示出根据发明构思的实施例的使用数据分类器将逻辑地址传输到外扩存储装置的方法的概念图。
图11是列出根据发明构思的实施例的分配到外扩存储装置的示例性逻辑地址的表。
图12是列出根据发明构思的实施例的从逻辑地址到分配到外扩存储装置的物理地址的示例性转换的表。
图13是大体上总结了根据发明构思的实施例的根据数据特性来产生关于外扩存储装置的表的方法的流程图。
图14是示出根据发明构思的实施例的数据分类器分析数据特性并根据分析结果将数据传输到相应的外扩存储装置的过程的概念图。
图15是示出根据发明构思的实施例的将外扩存储装置分类成数据特性的相应类型的方法的表。
图16是示出根据发明构思的实施例的随机存取和顺序存取的概念图。
图17是示出根据发明构思的实施例的数据处理系统的框图。
图18是示出根据发明构思的另一实施例的数据处理系统的框图。
图19是示出根据发明构思的实施例的数据处理系统的框图。
具体实施方式
现在将参照附图来描述发明构思的特定实施例。然而,发明构思可以被不同地实施并且不应被解释为仅限于举例说明的实施例。在整个书面描述和附图中,同样的附图标记指示同样或相似的元件。
应该理解的是,虽然这里可使用术语第一、第二等来描述不同的元件,但是这些元件不应受这些术语限制。这些术语仅用于将一个元件与另一元件区分开。例如,在不脱离发明构思的示例实施例的范围的情况下,第一元件可被称为第二元件,相似地,第二元件可被称为第一元件。如这里所使用的,术语“和/或”包括一个或更多个相关所列项的任何组合和所有组合。
应该理解的是,当元件被称为“连接”或“结合”到另一元件时,它可直接连接或结合到所述另一元件或者可存在中间元件。相反,当元件被称为“直接连接”或“直接结合”到另一元件时,不存在中间元件。用于描述元件之间的关系的其他词语应该以同样的方式来解释,例如,“在……之间”与“直接在……之间”、“相邻”与“直接相邻”等。
这里使用的术语仅出于描述具体实施例的目的,而不意图限制发明构思的示例实施例。除非上下文另外清楚地表示,否则如这里所使用的单数形式“一个”、“一种”和“该(所述)”也意图包括复数形式。还应该理解的是,当这里使用术语“包含”和/或“包括”时,说明存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或更多个其他特征、整体、步骤、操作、元件、组件和/或它们的组。
还应该注意的是,关于特定示出的实施例,可以按照与关于举例说明的实施例描述的特定顺序不同的顺序来执行某些功能、动作和/或步骤。此外,示出为连续发生的两个或更多个功能、动作和/或步骤根据涉及的功能性、动作和/或步骤实际上可以基本上同时执行或者有时可以以相反的顺序执行。
除非另有定义,否则这里使用的所有术语(包括技术术语和科学术语)具有与发明构思的示例实施例所属领域的普通技术人员所通常理解的意思相同的意思。还应该理解的是,除非这里明确这样定义,否则术语(诸如在通用词典中定义的术语)应被解释为具有与相关领域的背景中的它们的意思一致的意思,并且将不以理想或过于形式化的意义来解释。
这里关于增大数据存储装置或包括数据存储装置的数据服务器的数据处理性能的方式描述了扩充(scale-up)和外扩(scale-out)。扩充增大了数据服务器的容量。因此,提高了数据服务器的数据处理容量。它被称为“垂直扩展(vertical scaling)”。外扩增大了连接数据服务器的数量。因此,提高了包括数据服务器的系统的数据处理容量。它被称为“水平扩展(horizontal scaling)”。
在包括扩充结构的数据存储装置中,如果非易失性存储装置的数量增加,则它会增大实施在非易失性存储装置与非易失性存储装置的控制器之间的接口的负载电容。因此,数据存储装置的数据处理容量会减小。数据存储装置可包括外扩结构。
如这里所使用的,外扩存储装置可包括易失性存储器、至少一个非易失性存储器和用于控制易失性存储器和至少一个非易失性存储器的外扩控制器。如果易失性存储器、至少一个非易失性存储器和外扩控制器由半导体芯片或半导体封装件来单独实施,则外扩存储装置可被称为多芯片组。外扩控制器可意指核。
图1是示出根据发明构思的实施例的数据处理系统的框图。参照图1,数据处理系统100包括主机200、连接到主机200的显示器240、接口110和用于经由接口110将数据和/或指令传输到主机以及从主机接收数据和/或指令的数据存储装置300。
当包括在数据存储装置300中的存储集群400的结构为在图2A或图2B中示出的结构时,数据存储装置300可实施为外扩结构。例如,数据处理系统100可意指存储系统。
例如,数据处理系统可以是个人计算机(PC)、工作站、数据中心、互联网数据中心(IDC)、存储区域网(SAN)、网络附加存储(NAS)或移动计算装置。然而,它不限于此。
包括存储集群400的移动计算装置可以是膝上型计算机、蜂窝电话、智能电话、平板PC、个人数字助理(PDA)、企业数字助理(EDA)、数字静态相机、数字视频相机、便携式导航装置、掌上型游戏控制器、移动互联网装置(MID)、可穿戴计算机、物联网(IoT)装置、万物互联(IoE)装置、无人机和电子书等。然而,它不限于此。
接口可以是例如串行高级技术附件(SATA)接口、SATA快速(SATAe)接口、串行连接小型计算机系统接口(SCSI)、外围组件互连快速(PCIe)接口、非易失性存储快速(NVMe)接口、高级主机控制器接口(AHCI)和/或多媒体卡(MMC)接口等。然而,它不限于此。根据发明构思的实施例,接口110可传输电信号或光信号。接口110可以是例如有线接口或无线接口。
主机200可经由接口110来控制数据处理操作(例如,写入操作或读取操作)。主机200可意指主机控制器。
主机200可向用户提供用户接口。用户可经由在显示器240上显示的用户接口来设定每个外扩存储装置的逻辑地址的范围。用户可经由在显示器240上显示的用户接口来设定每个外扩存储装置的数据的特性。例如,用户接口可以是图形用户接口(GUI)。
CPU 220可经由总线210将指令和/或数据传输到第一接口230以及从第一接口230接收指令和/或数据。在图1中,所示的主机200包括总线210、CPU 220和第一接口230。然而,发明构思不限于此。
主机200可以是例如集成电路(IC)、主板、片上系统(SoC)、应用处理器(AP)、移动AP、网络服务器、数据服务器和数据库服务器。
例如,总线210可以是高级微控制器总线架构(AMBA)、高级高性能总线(AHB)、高级外围总线(APB)、高级可扩展接口(AXI)、高级系统总线(ASB)、AXI一致性扩展(ACE)。然而,总线210不限于此。
CPU 200可产生写入请求以控制数据存储装置300的写入操作。CPU 200可产生读取请求以控制读取操作。写入请求可包括写入地址(例如,逻辑地址)。读取请求可包括读取地址(例如,逻辑地址)。例如,CPU 220可包括至少一个核。写入请求和读取请求可意指指令。
第一接口230可改变用于传输到数据存储装置300的数据格式和/或指令格式。第一接口可经由接口110将具有改变的格式的数据和/或指令传输到数据存储装置300。第一接口可改变从数据存储装置300接收的响应和/或数据的格式。第一接口230可经由总线210将具有改变的格式的响应和/或数据传输到CPU 220。例如,第一接口230可包括能够传输和接收数据和/或指令的收发两用机。第一接口230的结构和操作可实施为与接口110的结构和操作匹配。
第一接口230可控制显示器240的操作。第一接口230可将经由包括在显示器240中的触摸板或触摸屏接收的用户数据传输到CPU 220。
数据存储装置300包括控制器310、缓冲器360、电源管理IC 370和存储集群400。这里,存储集群400可以是一组存储装置。另外,存储集群400可包括在图2A至图7中示出的外扩装置和存储装置。
数据存储装置300可实施为闪存类存储装置。例如,数据存储装置300可以是固态驱动器或固态磁盘(SSD)、嵌入式SSD、通用闪存(UFS)、多媒体卡(MMC)、嵌入式MMC和管理型NAND。然而,这不限于此。例如,闪存类存储装置可实施为NAND型闪存装置或NOR型闪存装置。
闪存类存储装置可包括存储单元阵列。存储单元阵列可包括多个存储单元。例如,存储单元阵列可包括2维存储单元阵列或3维存储单元阵列。
3维存储单元阵列可以以设置在硅基板上或上方的具有有源区的存储单元阵列的至少一个物理级单片地(或单块地)形成。3维存储单元阵列可包括关于存储单元的操作的电路。电路可形成在基板上或上方。术语“单片(monolithic)”可以指,阵列的每级的层直接沉积在阵列的每个下面级的层上。3维存储单元阵列可包括至少一个存储单元垂直地定向在另一存储单元上的垂直NAND串。至少一个存储单元可包括电荷捕获层。
例如,数据存储装置300可以是硬盘驱动器(HDD)、相变RAM(PRAM)装置、磁阻RAM(MRAM)装置、自旋转换扭矩MRAM(STT-MRAM)装置、铁电RAM(FRAM)装置或电阻式RAM(RRAM)装置。
控制器310可控制主机200、缓冲器360和存储集群400之间的数据和/或指令传输。控制器310可控制数据处理。例如,控制器310可实施为IC或SoC。
控制器310可包括总线结构311、内部存储器315、数据分类电路317、第二接口320、至少一个CPU 330和/或331、缓冲控制器340和第三接口350。总线结构311可实施为AMBA、AHB、APB、AXI、ASB、ACE或它们的任何组合。
内部存储器315可存储控制器310的操作所需的数据。内部存储器315可存储通过由控制器310执行的数据处理操作(例如,写入操作或读取操作)产生的数据。
例如,内部存储器315可存储由CPU 330和/或331操作的第一闪存转换层(FTL)FTL1。例如,如果数据存储装置300被启动(启动),则第一FTL FTL1可从存储集群400加载到内部存储器315。加载的第一FTL可通过CPU 330和/或331来执行。
例如,内部存储器315可以是随机存取存储器(RAM)、动态RAM(DRAM)、静态RAM(SRAM)、缓冲器、缓冲存储器、高速缓存存储器和紧密耦合存储器(TCM)。
数据分类电路317可确定从主机200接收的数据的特性。数据分类电路317可根据确定的结果来对应于外扩存储装置将数据分类。数据分类电路317可将分类的数据传输到相应的外扩存储装置。每个外扩存储装置可被分类成用于处理分配的数据的不同类型。因此,控制器310可使用数据分类电路317将数据传输到外扩存储装置以及从外扩存储装置接收数据。在图1中,数据分类电路317实施为单独的电路。然而,数据分类电路可实施在控制器310内部的任何区域中。
数据分类电路317可将逻辑地址传输到相应的外扩存储装置。逻辑地址可通过用户分配到相应的外扩存储装置。因此,控制器310可使用数据分类电路317来将数据传输到相应的外扩存储装置以及从相应的外扩存储装置接收数据。
数据分类电路317包括类型格式化器317-1和数据分类器317-2。类型格式化器317-1可根据由用户或制造商存储的默认类型(例如,数据特性和/或逻辑地址)来处理用于每个外扩存储装置的格式。数据分类器317-2可根据数据特性和/或逻辑地址将数据传输到相应的外扩存储装置。将参照图9至图16来更充分地描述类型格式化器317-1和数据分类器317-2的操作。
第二接口320可改变用于传输到主机200的响应格式和/或数据格式。第二接口320可经由接口110将具有改变的格式的响应和/或数据传输到主机200。另外,第二接口320可从主机200接收指令和/或数据。第二接口320可改变接收的指令和/或数据的格式。第二接口320可将具有改变的格式的指令和/或数据传输到至少一个CPU 330和/或331和/或缓冲控制器340。例如,第二接口320可包括收发两用机。
第二接口320可以是例如SATA接口、SATAe接口、SAS接口、PCIe接口、NVMe接口、AHCI接口、MMC接口、NAND型闪存接口或NOR型闪存接口。然而,发明构思不限于此。
CPU(330和/或331)可经由总线结构311来控制内部存储器315、数据分类电路317、第二接口320、缓冲控制器340和第三接口350。CPU 330和/或331可包括至少一个核。例如,CPU 330和/或331可控制电源管理集成电路(PMIC)370。
例如,第一CPU 330可经由第二接口320将数据传输到主机200以及从主机200接收数据。第二CPU 331可经由第三接口350将数据传输到存储集群400以及从存储集群400接收数据。例如,第一CPU 330和第二CPU 331可包括在多CPU中。例如,第一CPU 330可控制第二CPU 331。
缓冲控制器340可根据第一CPU 330或第二CPU 331的控制将数据写入到缓冲器360。缓冲控制器340可根据第一CPU 330或第二CPU 331的控制从缓冲器360读取数据。缓冲控制器340可被称为缓冲管理器并且可控制写入操作和读取操作。
根据第一CPU 330或第二CPU 331的控制,第三接口350可经由多个主通道(CHA、CHB、…、CHC)中的主通道来控制关于存储集群400的数据处理操作(例如,写入操作、读取操作、特定类型的设定操作等)。
例如,第三接口350可以是SATA接口、SATAe接口、SAS接口、PCIe接口、NVMe接口、AHCI接口、MMC接口、NAND型闪存接口和/或NOR型闪存接口。
例如,第三接口350可包括纠错码(ECC)引擎350-1。ECC引擎350-1可纠正将存储在存储集群400中的数据的差错。ECC引擎350-1可纠正从存储集群400接收的数据的差错。在图1中,ECC引擎350-1示出为被包括在第三接口350中。根据发明构思,ECC引擎350-1可实施在控制器310内部的任何区域中。
缓冲控制器340可从缓冲器360读取数据。缓冲控制器340可将数据写入到缓冲器360。例如,缓冲器360可以是非易失性存储装置、RAM、SRAM和/或DRAM。
缓冲器360可包括第一区和第二区。第一区可存储映射表。映射表可包括用于将逻辑地址转变成物理地址的信息。第二区可以是高速缓存存储器。例如,第一区可存储第一表TABLE1。第一表TABLE1可以是存储在第一区中的映射表的全部或部分。将参照图11或图15来更充分地描述第一表TABLE1。
例如,CPU 330和/或331可执行第一FTL FTL1。第一FTL可使用用于将逻辑地址转换成物理地址的存储在缓冲器360的第一区中的映射表。第一FTL可使用用于选择与逻辑地址对应的外扩存储装置的第一表TABLE1。例如,逻辑地址可以是逻辑块地址LBA或逻辑页地址LPN。逻辑页地址可以是分配到每个外扩存储装置的局部逻辑页地址。逻辑页地址可以是分配到每个外扩存储装置的全局逻辑页地址。
根据发明构思的实施例,当控制器310和缓冲器360中的每个实施为半导体芯片时,控制器310和缓冲器360可以是诸如层叠封装件(PoP)、多芯片封装件(MCP)或系统级封装件(SiP)的单个封装件。例如,包括缓冲器360的第一芯片可通过堆叠球堆叠在包括控制器310的第二芯片上方。
PMIC 370可控制提供到控制器310、缓冲器360和/或存储集群400的操作电压。例如,第一操作电压可提供到控制器310。第二操作电压可提供到缓冲器360。第三操作电压可提供到存储集群400。在发明构思的实施例中,第一操作电压、第二操作电压和第三操作电压可彼此不同。在发明构思的另一实施例中,第一操作电压、第二操作电压和第三操作电压可彼此相同。
存储集群400可包括多个集群410、430、…、450。第一集群410可连接到第一主通道CHA。第二集群430可连接到第二主通道CHB。第三集群450可连接到第三主通道。每个集群可包括至少一个外扩存储装置。将参照图2A至图7来更充分地描述每个集群的结构。
根据发明构思的实施例,主通道可以是设置在第三接口350与相应的集群之间的独立的数据路径。数据路径可包括用于传输数据和/或控制信号的传输线。
术语“路”被用于指共用单个主通道的一组非易失性存储装置。组可包括至少一个非易失性存储装置。因此,多个路可连接到单个主通道。非易失性存储装置可以是晶圆、存储装置和/或半导体封装件。控制器310可控制A通道×B路。这里,A、B中的每个是等于或大于1的自然数。
图2A是进一步示出根据发明构思的实施例的图1的数据存储装置的框图。图2B是进一步示出根据发明构思的另一实施例的图1的数据存储装置的框图。图3是进一步示出图2A和图2B的第一集群的一个示例的框图。图2A和图2B的数据存储装置300可实施为具有外扩结构的数据存储装置。
每个集群410、430、…、450可包括至少一个外扩存储装置(或多个芯片组)。第一集群410可包括多个外扩存储装置410-1~410-4。第二集群430也可包括多个外扩存储装置430-1~430-4。相似地,第三集群450可包括多个外扩存储装置450-1~450-4。每个集群410、430、…、450可包括相同数量的外扩存储装置。或者,每个集群410、430、…、450可包括不同数量的外扩存储装置。
外扩装置可包括外扩控制器、易失性存储器和至少一个非易失性存储装置(例如,NAND型闪存装置)。
参照图1至图3,假设每个集群410~450的结构和操作可以是相同的。因此,可代表性地描述第一集群410的结构和操作。参照图3,第一集群410可包括多个外扩存储装置410-1~410-4。在图3中,示出了4个外扩存储装置410-1~410-4。根据发明构思的实施例,包括在第一集群410中的外扩存储装置的数量不限于此。
第一集群410可包括外扩装置(410-1A、410-2A、410-4A)和NAND型闪存装置。NAND型装置可连接到相应的外扩装置。
第一外扩存储装置410-1可包括第一外扩装置410-1A和连接到第一外扩装置410-1A的非易失性存储装置NAND。第二外扩存储装置410-2可包括第二外扩装置410-2A和连接到第二外扩装置410-2A的非易失性存储装置。第四外扩存储装置410-4可包括第四外扩装置410-4A和连接到第四外扩装置410-4A的非易失性存储装置。
每个外扩装置410-1A、410-2A、…、410-4A可分别包括外扩控制器411-1、411-2、…、411-4以及非易失性存储装置413-1、413-2、…、413-4。外扩控制器411-1、411-2、…、411-4的结构可相同。
第一外扩控制器411-1可连接到第一主通道CHA、通道CH11至CH1m(m是等于或大于2的自然数)以及第一易失性存储装置413-1。每个通道CH11~CH1m可连接到相应的非易失性存储装置。例如,每个非易失性存储装置可以是NAND型闪存装置或管理型NAND闪存装置。这里,每个通道可以是位于第一外扩控制器411-1与相应的非易失性存储装置之间的独立的数据路径。
第一外扩控制器411-1可经由通道CH11~CH1m来控制非易失性存储装置的操作。例如,控制器310可经由第一主通道CHA来控制第一外扩控制器411-1的操作。
第一易失性存储装置413-1可包括第一区。第一区可存储映射表。映射表可包括与连接到通道CH11~CH1m中的每个通道的非易失性存储装置的逻辑地址和物理地址有关的映射信息。第一易失性存储装置413-1可包括第二区(或高速缓存区)。第二区可暂时存储用于写入到连接到通道CH11~CH1m的非易失性存储装置中的一个非易失性存储装置的数据。第二区可暂时存储从非易失性存储装置中的一个接收的数据。
例如,如图7中所示,第二FTL FTL2可使用存储在第一易失性存储装置413-1的第一区中的映射表将逻辑地址转换成物理地址。第二FTL FTL2可通过包括在第一外扩控制器411-1中的CPU 423-1或423-2来执行。第二FTL FTL2可从包括在第一集群410中的非易失性存储装置加载到内部存储器425。加载的第二FTL可通过CPU 423-1或423-2来执行。
第二外扩控制器411-2可连接到第一主通道CHA、通道CH21~CH2m以及第二存储装置413-2。通道可分别连接到相应的非易失性存储装置(例如,NAND闪存)。
第二外扩控制器411-2可经由通道CH21~CH2m来控制非易失性存储装置的操作。例如,控制器310可经由主通道CHA来控制第二外扩控制器415-2的操作。
第二易失性存储装置413-2可包括第一区。第一区可存储与连接到每个通道CH21~CH2m的非易失性存储装置的逻辑地址和物理地址有关的映射信息(或映射表)。第二易失性存储装置413-2可包括第二区(或高速缓存区)。第二区可暂时存储用于写入到连接到通道CH21~CH2m的非易失性存储装置中的一个的数据。第二区可暂时存储从连接到通道CH21~CH2m的非易失性存储装置中的一个读取的数据。
如图7中所示,当第一外扩控制器411-1的结构与第二外扩控制器411-2的结构相同时,第二外扩控制器411-2的CPU 423-1或423-2可执行第三FTL。第三FTL可使用存储在第二易失性存储装置413-2的第一区中的映射表将逻辑地址转换成物理地址。第三FTL可从第一集群410的非易失性存储装置加载到内部存储器425。加载的第三FTL可通过CPU 423-1或423-2来执行。
第四外扩控制器411-4可连接到第一主通道CHA、通道CH41~CH4m、和第四易失性存储装置413-4。通道CH41~CH4m可分别连接到相应的非易失性存储装置。
第四外扩控制器411-4可经由通道CH41~CH4m中的每个来控制每个非易失性存储装置。例如,控制器310可经由主通道CHA来控制第四外扩控制器411-4的操作。
第四易失性存储装置413-4可包括第一区。第一区可存储与连接到通道CH41~CH4m的相应的非易失性存储装置的逻辑地址和物理地址有关的映射信息(或映射表)。第四易失性存储装置413-3可包括第二区(或高速缓存区),以存储用于写入到连接到通道CH41~CH4m中的每个通道的非易失性存储装置中的至少一个的数据。第二区可存储从连接到通道CH41~CH4m中的每个通道的非易失性存储装置中的至少一个读取的数据。
如图7中所描述的,当第一外扩控制器411-1的结构与第四外扩控制器411-4的结构相同时,第五FTL可使用存储在第四易失性存储装置413-4的第一区中的映射表将逻辑地址转换成物理地址。第五FTL可通过包括在第四外扩控制器411-4中的CPU 423-1或423-2来执行。第五FTL可从第一集群410的非易失性存储装置加载到内部存储器425。加载的第五FTL可通过CPU 423-1或423-2来执行。
易失性存储装置413-1~413-4可以是缓冲器或缓冲存储器、RAM、SRAM和/或DRAM。
在图3中,外扩存储装置410-1~410-4分别包括相同数量的通道。然而,包括在每个外扩存储装置中的通道的数量可彼此不同。
图4是示出根据发明构思的实施例的图3的第一外扩装置的框图。图7是示出根据发明构思的实施例的图4的第一外扩控制器的框图。参照图1至图5以及图7,外扩控制器411-1~411-4中每个的结构和操作可彼此基本上相同。因此,将代表性地描述第一外扩控制器411-1的结构和操作。
第一外扩控制器411-1可控制在非易失性存储装置之间接收和传输指令和/或数据。非易失性存储装置可包括在控制器310、第一易失性存储装置413-1或第一外扩存储装置410-1中。例如,第一外扩控制器411-1可以是IC或SoC。
第一外扩控制器411-1包括总线结构420、第四接口421、至少一个CPU 423-1和/或423-2、内部存储器425、缓冲控制器427和第五接口429。总线结构可以是例如AMBA、AHB、APB、AXI、ASB和ACE。
第四接口421可改变用于传输到控制器310的响应的格式。第四接口421可改变用于传输到控制器310的数据的格式。第四接口421可经由第一主通道CHA将具有改变的格式的响应和/或数据传输到控制器310。第四接口421可从控制器310接收指令和/或数据。第四接口421可改变接收的指令和/或数据的格式。第四接口421可将具有改变的格式的指令传输到至少一个CPU 423-1和/或423-2和/或缓冲控制器427。第四接口421可将具有改变的格式的数据传输到至少一个CPU 423-1和/或423-2和/或缓冲控制器427。例如,第四接口421可包括收发两用机。
第四接口421的结构和操作可实施为适用于第三接口350的结构和操作。例如,第四接口421可以是SATA接口、SATAe接口、SAS接口、PCIe接口、NVMe接口、AHCI接口、MMC接口、NAND型闪存接口和NOR型闪存接口。
参照图4和图7,第四接口421可连接到通道(或主通道)或路。第一端子PT1可用于将第一主通道CHA与第四接口421连接。第三端子PT3可用于将第一易失性存储装置413-1与缓冲控制器427连接。第二端子PT2可用于将第五接口429与通道CH11~CH1m中的一个连接。端子可以是引脚或焊盘。
一个或更多个CPU 423-1和/或423-2可经由总线结构420来控制第四接口421、内部存储器425、缓冲控制器427和第五接口429。每个CPU 423-1或423-2可包括至少一个核。
例如,第一CPU 423-1可经由第一主通道CHA和第四接口421来将数据传输到第三接口350以及从第三接口350接收数据。第二CPU 423-2可经由第五接口429将数据传输到连接到通道CH11~CH1m中每个的至少一个非易失性存储装置以及从连接到通道CH11~CH1m中每个的至少一个非易失性存储装置接收数据。例如,第一CPU 423-1和第二CPU 423-2可包括在多CPU中。例如,第一CPU 423-1可控制第二CPU 423-2。
内部存储器425可存储操作第一外扩控制器411-1所需的数据。内部存储器425还可存储由数据处理操作(例如,写入操作或读取操作)产生的数据。数据处理操作可通过第一外扩控制器411-1来执行。例如,内部存储器425可存储第二FTL。第二FTL可通过CPU 423-1或423-2来执行。例如,当数据存储装置300被启动时,第二FTL可从存储集群400的非易失性存储器加载到内部存储器425。例如,内部存储器可以是RAM、DRAM、SRAM、缓冲器、缓冲存储器、高速缓存存储器和TCM。
缓冲控制器427可根据第一CPU 423-1或第二CPU 423-2的控制将数据写入到第一易失性存储装置413-1。缓冲控制器427可从第一易失性存储装置413-1读取数据。缓冲控制器427可称为控制与第一易失性存储装置413-1有关的写入操作和读取操作的控制器或缓冲管理器。
第五接口429可根据第一CPU 423-1或第二CPU 423-2的控制而经由多个通道CH11~CH1m中的相应的通道来控制与非易失性存储装置有关的数据处理操作。
参照图4和图7,多个通道和/或多个路可连接到第五接口429。例如,第五接口429可以是SATA接口、SATAe接口、SAS接口、PCIe接口、NVMe接口、AHCI接口、MMC接口、NAND型闪存接口和/或NOR型闪存接口。例如,第五接口429可包括分别与通道CH11~CH1m对应的存储控制器429-1~429-m。例如,当非易失性存储装置是NAND型闪存时,存储控制器429-1~429-m可以是NAND闪存控制器。
第一易失性存储装置413-1可包括第一区和第二区。第一区可存储与包括在第一外扩存储装置410-1中的非易失性存储装置有关的用于将逻辑地址转换成物理地址的映射表。第二区可以是高速缓存存储器或缓存器。例如,第二FTL可通过CPU 423-1或423-2来执行。第二FTL FTL2可使用存储在第一区中的映射表来将逻辑地址转换成物理地址。
如果图3的非易失性存储装置中的一个被外扩存储装置(例如,410-1)代替,则关于存储集群400的存储容量的可扩展性可提高。
图5是示出根据发明构思的实施例的图4的第一外扩装置的半导体封装件的图。参照图3、图4和图5,第一外扩装置410-1A可以是半导体封装件。即,第一外扩装置410-1A包括附着或安装在基板415上的第一外扩控制器411-1和第一易失性存储装置413-1。
例如,第一外扩控制器411-1可作为倒装芯片结构附着在基板415上。另外,当第一外扩控制器411-1通过粘合材料附着在基板415上时,第一外扩控制器411-1可经由键合线将电信号传输到基板415以及从基板415接收电信号。
例如,第一易失性存储装置413-1可作为倒装芯片结构附着在基板415上。另外,当第一易失性存储装置413-1通过粘合材料附着在基板415上时,第一易失性存储装置413-1可经由键合线将电信号传输到基板415以及从基板415接收电信号。即,第一外扩控制器411-1可经由基板415将指令和数据传输到第一易失性存储装置413-1以及从第一易失性存储装置413-1接收指令和数据。与外扩装置410-1A~410-4A中的每个有关的半导体封装件可相同。
图6是示出根据发明构思的实施例的包括图1的存储控制器和第一外扩存储装置的半导体封装件的图。图6的半导体封装件300-1A可以是嵌入式层叠封装件(ePOP)。
例如,半导体封装件300-1A包括基板415-1、第一封装件PKG1和第二封装件PKG2。第一封装件PKG1可设置在基板415-1之上。第二封装件PKG2可设置在第一封装件PKG1之上。第一封装件PKG1可经由第一凸块415-2附着在基板415-1上。第一封装件PKG1可经由第一凸块415-2将电信号传输到基板415-1以及从基板415-1接收电信号。第二封装件PKG2可经由第二凸块415-3附着到第一封装件PKG1。第二封装件PKG2可经由第二凸块415-3将电信号传输到基板415-1以及从基板415-1接收电信号。第一封装件PKG1包括控制器310。第二封装件PKG2包括第一外扩控制器411-1、第一易失性存储装置413-1和至少一个NAND型闪存470。例如,外扩存储装置410-2、…、410-4中的每个可实施为封装件。当外扩存储装置附着在基板415-1上时,控制器310可经由基板415-1来控制外扩存储装置410-2、…、410-4中的每个。
图8是示出根据发明构思的实施例的数据处理系统的框图。参照图1和图8,除了数据分类电路317和数据分类模块330A之外,图1的数据处理系统100的结构和操作可与图8的数据处理系统100-1的结构和操作相同。
在图1中,数据分类电路317实施为硬件,图8的数据分类模块可实施为通过CPU330或331来执行的软件。硬件格式化器317-1的功能和软件格式化器330-1的功能可相同。硬件数据分类器317-2的功能和软件数据分类器330-2的功能可相同。因此,将省略关于软件数据格式化器330-1和软件数据分类器330-2的描述。
图9是示出根据发明构思的实施例的使用类型格式化器将逻辑地址分配到外扩存储装置的方法的概念图。图10是示出根据发明构思的实施例的使用数据分类器将逻辑地址传输到外扩存储装置的方法的概念图。图11是根据发明构思的实施例的列出分配到外扩存储装置的示例性逻辑地址的表。图12是根据发明构思的实施例的列出从逻辑地址到分配到外扩存储装置的物理地址的示例性转换的表。
参照图1至图12,根据主机的CPU 220的控制,CPU 330或331可执行用于将逻辑地址分配到每个外扩存储装置的类型格式化器330-1。因此,显示器240可根据CPU 220或类型格式化器330-1的控制向用户提供可设定用于每个外扩存储装置的逻辑地址的范围的用户接口。用户可通过显示在显示器240上的用户接口来设定每个外扩存储装置的逻辑地址范围(S101)。
CPU 220可将分配到每个外扩存储装置的逻辑地址范围传输到CPU 330或类型格式化器330-1(S103)。图11的第一表TB1可示出分配到每个外扩存储装置的逻辑地址范围LAR。
例如,参照图2B、图9、图10和图11,假定的是,逻辑地址LA0~LA0999可分配到第一集群410或第一外扩存储装置410-1。逻辑地址LA1000~LA1999可分配到第二集群430或第二外扩存储装置430-1。逻辑地址LA3000~LA3999可分配到第三集群450或第三外扩存储装置450-1。另外,为了简明描述,集群410、430、…、450中的每个可包括至少一个外扩存储装置410-1、430-1、…、450-1。
CPU 330或类型格式化器330-1可通过缓冲控制器340将第一表TB1存储到缓冲器360(S105)。第一表TB1可包括逻辑地址范围LAR。类型格式化器330-1可使用第一表TB1将分配到每个外扩存储装置的逻辑地址范围LAR传输到相应的外扩存储装置(S107)。
第一外扩存储装置410-1可分类成第一类型(TYPE1)。第一外扩存储装置410-1的CPU可使用逻辑地址LA0~LA0999来生成图12的第二表TABLE2。第二FTL FTL2可通过第一外扩存储装置410-1的CPU来执行。第二FTL FTL2也可生成图12的第二表TABLE2。第一外扩存储装置410-1的CPU或第二FTL FTL2可将第二表TABLE2存储到第一易失性存储器413-1。例如,第二表TABLE2可以是用于将逻辑地址LA0~LA0999转换成物理地址PA0~PA0999的地址映射表。例如,物理地址PA0~PA0999可以是与包括在第一外扩存储装置410-1中包括的NAND型闪存装置的存储区MR2中的页有关的逻辑地址。存储区MR2、MR3、…、MR5中的每个可包括x个块。这里,x是等于或大于2的自然数。假定的是,每个块可包括128个页。
第二外扩存储装置430-1可分类成第二类型(TYPE2)。第三FTL FTL3可通过第二外扩存储装置430-1的CPU来执行。第三FTL可使用逻辑地址LA1000~LA1999来生成图12的第三表TABLE3。第三FTL可将第三表TABLE3存储到第二易失性存储器433-1。例如,第三表可以是用于将逻辑地址LA1000~LA1999转换成物理地址PA1000~PA1999的地址映射表。例如,物理地址PA1000~PA1999可以是与包括在第二外扩存储装置430-1的NAND型闪存装置的存储区MR3中的页有关的物理地址。
第三外扩存储装置450-1可分类为第四类型。第五FTL可通过第三外扩存储装置450-1的CPU来执行。第三外扩存储装置的CPU和第五FTL可使用逻辑地址LA3000~LA3999来生成图12的第五表TABLE5。第三外扩存储装置的CPU或第五FTL可将第五表TABLE5存储到第三易失性存储器453-1。例如,第五表TABLE5可以是用于将逻辑地址LA3000~LA3999转换成物理地址PA3000~PA3999的地址映射表。例如,物理地址PA3000~PA3999可以是与包括在第三外扩存储装置450-1的NAND型闪存装置的存储区MR5中的页有关的物理地址。
主机200可将逻辑地址LAi(例如,LA0999)传输到数据存储装置300。CPU 330或数据分类器317-2或330-2可基于第一表TB1来将逻辑地址LAi(例如,LA0999)传输到分类成第一类型TYPE1的第一集群410或第一外扩存储装置410-1(S115)。
当逻辑地址LAi可以是与写入操作有关的逻辑地址时,主机200可将写入数据WDATA传输到数据存储装置300(S117)。CPU 330或数据分类器317-2或330-2可基于图11的第一表TB1来将写入数据WDATA传输到第一外扩存储装置410-1(S119)。第二FTL FTL2可在第一外扩存储装置410-1处被执行。第二FTL可基于图12的第二表TABLE2将逻辑地址LAi(例如,LA0999)转换成物理地址(例如,PA0999)。因此,写入数据WDATA可编程为物理地址的相应的页。
第二FTL FTL2可在第一外扩存储装置410-1中被执行。当逻辑地址LAi(例如,LA0999)是与读取操作有关的逻辑地址时,第二FTL FTL2可基于图12的第二表TABLE2将逻辑地址转换成物理地址(例如,PA0999)。因此,第一外扩存储装置410-1可从与物理地址(例如,PA0999)对应的页读取读取数据RDATA(S121)。第一外扩存储装置410-1可将读取数据RDATA传输到主机200(S123)。
从主机200接收的逻辑地址LAi(0≤i≤3999)可被包括在写入指令或读取指令中。
因此,当从主机200接收的逻辑地址LAi是逻辑地址LA1000~LA1999中的一个时,控制器310可使用第三表TABLE3将与逻辑地址LA1000~LA1999对应的数据传输到分类成第二类型TYPE2的第二外扩存储装置430-1以及从分类成第二类型TYPE2的第二外扩存储装置430-1接收与逻辑地址LA1000~LA1999对应的数据。另外,当从主机200接收的逻辑地址LAi是逻辑地址LA3000~LA3999中的一个时,控制器310可使用第五表TABLE5将与LA3000~LA3999的逻辑地址对应的数据传输到分类成第四类型TYPE4的第三外扩存储装置450-1以及从分类成第四类型TYPE4的第三外扩存储装置450-1接收与LA3000~LA3999的逻辑地址对应的数据。
图13是根据发明构思的实施例的总体上总结用于对应数据特性来生成关于外扩存储装置的表的方法的流程图。图14是示出根据发明构思的实施例的数据分类器分析数据特性并根据分析结果将数据传输到相应的外扩存储装置的过程的概念图。图15是示出根据发明构思的实施例的将外扩存储装置分类成数据特性的相应类型的方法的表。
在本说明书中,“确定传输到主机200和从主机200接收的数据的特性”可意味着下述中之一:
(1)确定是用于顺序存取的数据还是用于随机存取的数据;
(2)确定是写入数据(或程序数据)还是读取数据;
(3)确定是热数据还是冷数据;和/或
(4)确定是大尺寸数据还是小尺寸数据。然而,发明构思可不限于此。
图16是示出根据发明构思的实施例的随机存取和顺序存取的概念图。如图16中所示,顺序存取可意指逻辑地址LA0~LA5是顺序的。顺序存取也可意指与存储区的对应于逻辑地址LA0~LA5的存储数据DATA0~DATA5有关的存取(写入或读取)是顺序的。随机存取可意指逻辑地址LA0~LA5是随机的。随机存取也可意指与存储区的对应于逻辑地址LA0~LA5的存储数据DATA0~DATA5有关的存取是随机的。
热数据可以是经常地通过主机200或控制器310存取的数据。冷数据可以是不经常地通过主机200或控制器310存取的数据。
参照图15,CPU 330或类型格式化器317-1或330-1可将每个外扩存储数据分类成一种类型。CPU 330或类型格式化器317-1或330-1可使每个外扩存储数据格式化。根据发明构思的实施例,可通过每个集群来确定每种类型。另外,根据发明构思的实施例,可不管集群而通过每个外扩存储装置来确定每种类型。
参照图15,假定的是,CPU 330或类型格式化器317-1或330-1可根据下列项和/或数据特性中的至少一个来确定每个集群的类型。还假定的是,每个集群包括至少一个外扩存储装置。
(1)控制器310和/或每个外扩存储装置的外扩控制器的工作时钟频率(在下文中,称为“时钟频率”);
(2)连接到外扩控制器的易失性存储器413-1、433-1、…、453-1和/或连接到控制器310的易失性存储器360的容量和/或带宽;
(3)与包括在每个外扩存储装置中的NAND型闪存装置有关的编程方法;
(4)用于管理包括在每个外扩存储装置中的NAND型闪存装置的写入数据和读取数据的FTL映射尺寸;
(5)包括在每个外扩存储装置中的NAND型闪存装置的用户数据区和预留空间区(over-provisioning region)的比例(OVP RATIO);
(6)包括在每个外扩存储装置中的NAND型闪存装置的容量。然而,发明构思不限于此。
编程方法可包括单层单元(SLC)编程方法、多层单元(MLC)编程方法和三层单元(TLC)编程方法。SLC编程方法可将1位数据编程成单层单元。MLC编程方法可将2位数据编程成单层单元。TLC编程方法可将3位数据编程成单层单元。
例如,如果每单元的位数(bpc)增加,则程序擦除循环可减小,并且读取时间、写入时间和擦除时间可增加。如果每单元的位数(bpc)减少,数据的可靠性可增大。
FTL映射尺寸可意指用于管理NAND型闪存装置的写入数据和读取数据的尺寸。FTL映射尺寸可以是4KB、8KB或16KB。例如,如果FTL映射尺寸增大,则用于逻辑地址和物理地址的映射表的尺寸可减小。
如果用户数据区和预留空间区的比例OVP RATIO增大,则NAND型闪存装置的性能和寿命可提高。
CPU 330或类型格式化器317-1或330-1可根据至少一个数据特性来确定每个集群的类型。CPU 330或类型格式化器317-1或330-1可将包括每个集群的确定的类型的第六表TB6存储到缓冲器360。
主机200的CPU 220可执行用于基于至少一个数据特性来确定每个外扩存储装置的类型的类型格式化器317-1或330-1和控制器310-1的CPU 300。因此,显示器240可根据CPU 220的控制或类型格式化器317-1或330-1的控制向用户提供用户接口。用户可通过显示在显示器240上的用户接口来分别设定外扩存储装置的类型。例如,外扩存储装置的类型可通过数据存储装置300的制造商设定为默认值。
制造商或用户可根据图15的项中的至少一项来设定每个外扩存储装置的类型。CPU 300或类型格式化器317-1或330-1对每个外扩存储装置的类型进行分类(S201)。CPU300或类型格式化器317-1或330-2可根据分类结果生成第六表TB6(S203)。CPU 300或类型格式化器317-1或330-1可将第六表TB6存储到缓冲器360(S205)。CPU 300或者类型格式化器317-1或330-1可将与每个外扩存储装置类型有关的信息传输到每个外扩存储装置。因此,每个外扩存储装置可将与其自身类型有关的信息存储到易失性存储器。
如图14中所示,第一集群410或第一外扩存储装置410-1可通过CPU 300或类型格式化器317-1或330-1分类成第一类型TYPE1。第二集群430或第二外扩存储装置430-1可分类成第二类型TYPE2。第三集群450或第三外扩存储装置450-1可分类成第四类型TYPE4。
当主机传输数据时,数据分类器317-2或330-2可确定数据的特性。数据分类器317-2或330-2可使用确定的特性或图15的第六表TB6来确定外扩装置以传输外扩装置410-1、430-1、…、450-1中的数据。
数据分类器317-2或330-2可确定数据的类型或数据的特性。数据分类器317-2或330-2可根据确定的特性将数据传输到相应的外扩存储装置。从主机200传输的数据可以是热数据、冷数据、程序数据、读取数据、随机数据、顺序数据、用户数据和/或元数据。
例如,当从主机200接收的数据是热数据或随机数据时,数据分类器317-2或330-2可使用第六表TB6和/或确定的特性来将数据存储在分类成第四类型TYPE4的第三外扩存储装置450-1中。如图15中所示,第三外扩存储装置450-1可具有小的FTL映射尺寸(例如,4KB)和高的比例(OVP RATIO),并且可使用SLC(或MLC)编程方法。
当从主机200接收的数据是冷数据或顺序数据时,数据分类器317-2或330-2可使用第六表TB6和/或确定的特性来将数据存储在分类成第三类型TYPE3的外扩存储装置中。如图15中所示,外扩存储装置可具有大的FTL尺寸(例如,8KB)和低的比例(OVP RATIO),并且可使用TLC编程方法。
当从主机200接收的数据需要被快速地处理时,数据分类器317-2或330-2可使用图15的第六表TB6和/或确定的特性将数据存储在分类成第二类型TYPE2的第二外扩存储装置430-1中。如图15中所示,第二外扩存储装置430-1可使用高的时钟频率和高的带宽,并且可使用SLC或MLC编程方法。
当从主机200接收的数据需要高的可靠性(例如,元数据)时,数据分类器317-2或330-2可使用图15的第六表TB6和/或确定的特性将数据存储在分类成第一类型TYPE1的第一外扩存储装置410-1中。如图15中所示,第一外扩存储装置410-1可使用低的时钟频率、低的带宽和大的FTL映射尺寸(例如,8KB),并且可使用SLC编程方法。
当从主机200接收的数据不需要被快速地处理,或者数据需要在低功耗的情况下处理时,数据分类器317-2或330-2可根据图15的第六表TB6和/或确定的特性将数据存储在诸如第一外扩存储装置410-1的具有低的时钟频率、低的带宽的外扩存储装置中。
图17是示出根据发明构思的实施例的数据处理系统的框图。参照图1至图17,数据处理系统100B可包括主机200和无DRAM的数据存储装置300B。数据处理系统100B还可包括图1的显示器240。
例如,数据处理系统100B可以是移动计算装置。无DRAM的数据存储装置300B可包括控制器310-1和存储集群400。无DRAM的数据存储装置300B可以是eMMC。
缓冲控制器340-1可不执行关于外部缓冲器的数据处理。当执行写入操作或读取操作时,缓冲控制器340-1可使用内部缓冲器341将数据传输到第二接口320或第三接口350。除了缓冲控制器340-1的操作以外,图17的控制器310-1的结构和操作可与图1的控制器310的结构和操作相同。因此,将省略关于控制器310-1的描述。例如,可存储在图1的缓冲器360中的第一表TB1和第六表TB6可存储在内部缓冲器341中。
图18是示出根据发明构思的另一实施例的数据处理系统的框图。参照图17和图18,除了数据分类电路317和数据分类模块330A以外,图17的数据处理系统100B的结构和操作可与图18的数据处理系统100B的结构和操作相同。
图17的数据分类电路317实施为硬件。图18的数据分类模块330A可实施为在CPU330和/或331中执行的软件。硬件型格式化器317-1的功能可与软件型格式化器330-1的功能相同。硬件数据分类器317-2的功能可与软件数据分类器330-2的功能相同。因此,将省略与软件型格式化器330-1的功能和软件数据分类器330-2的功能有关的描述。
图19是示出根据发明构思的实施例的数据处理系统的框图。参照图1至图19,数据处理系统500包括数据库520、数据库服务器530、第二网络540和多个客户端计算机550和551。数据中心510可以是因特网数据中心或云数据中心。数据中心510可包括数据库520和数据库服务器530。
数据库520可包括多个数据存储装置300或300B(称为“300”)。多个数据存储装置300可安装在机架(rack)中。每个数据存储装置300的结构和操作可与图1至图18的数据存储装置的结构和操作相同。
数据库服务器530可控制每个数据存储装置300。例如,数据库服务器530可执行图1的主机200的功能。数据库服务器530可通过第一网络535连接到第二无线网络540。第一网络可以是局域网LAN。第二无线网络540可以是因特网或wi-fi。多个客户端计算机550和551可分别通过第二无线网络540连接到数据库服务器530。
如在发明构思的方面的惯例,实施例可以依据实现描述的(多个)功能的块来描述和示出。这里可称为单元或模块等的这些块通过诸如逻辑门、集成电路、微处理器、微控制器、存储电路、无源电子组件、有源电子组件、光学组件、硬连线电路等的模拟和/或数字电路来物理地实施,并且可以可选择地通过固件和/或软件来驱动。例如,电路可以实现在一个或更多个半导体芯片中,或者可以实现在诸如印刷电路板等的基板支撑件上。构成块的电路可通过专用硬件,或者通过处理器(例如,一个或更多个程序化的微处理器和关联的电路),或者通过用于执行块的一些功能的专用硬件和用于执行块的其他功能的处理器的组合来执行。在不脱离发明构思的范围的情况下,实施例的每个块可物理地分离成两个或更多个相互作用且分立的块。同样地,在不脱离发明构思的范围的情况下,实施例的块可物理地结合成更复杂的块。
上面公开的主题被认为实际上是说明性的,权利要求的范围扩展到考虑到上文后对于本领域普通技术人员将变得明显的许多修改和改进。因此,在法律允许的最大范围内,权利要求的范围应该通过最广泛的可允许的解释来确定,并且不应该仅受限或局限于上面举例说明的实施例。

Claims (23)

1.一种数据存储装置,所述数据存储装置包括:
多个外扩存储装置;以及
控制器,被构造成确定数据的特性和所述多个外扩存储装置的类型,并且被构造成基于数据的特性和所述多个外扩存储装置的类型将数据传输到所述多个外扩存储装置中的相应的外扩存储装置以及从所述相应的外扩存储装置接收数据,
其中,所述多个外扩存储装置中的每个外扩存储装置包括易失性存储器、非易失性存储器以及被构造成控制易失性存储器和非易失性存储器的外扩控制器,
其中,数据的特性通过数据的逻辑地址来确定,
其中,控制器还被构造成基于所述多个外扩存储装置的类型将逻辑地址分配到所述多个外扩存储装置中的每个,
其中,传输到所述多个外扩存储装置中的相应的外扩存储装置的数据的逻辑地址被分配到所述多个外扩存储装置中的相应的外扩存储装置,
其中,控制器还被构造成将数据传输到所述多个外扩存储装置中的分配了数据的逻辑地址的相应的外扩存储装置。
2.如权利要求1所述的数据存储装置,其中,控制器包括接收用于确定所述多个外扩存储装置的类型的用户输入的用户接口。
3.如权利要求2所述的数据存储装置,其中,控制器包括基于用户输入来确定所述多个外扩存储装置的类型的类型格式化器,
控制器基于数据的特性和所述多个外扩存储装置的类型来将数据传输到所述相应的外扩存储装置以及从所述相应的外扩存储装置接收数据。
4.如权利要求2所述的数据存储装置,所述数据存储装置还包括:
存储器,被构造成存储类型格式化器和分类器;以及
CPU,被构造成执行类型格式化器和分类器,
其中,类型格式化器基于用户输入来确定每个外扩存储装置的类型,
分类器确定数据的特性,并且
分类器基于每个外扩存储装置的类型和特性来将数据传输到所述相应的外扩存储装置以及从所述相应的外扩存储装置接收数据。
5.如权利要求1所述的数据存储装置,其中,控制器基于数据的特性和控制器的操作频率来将数据传输到所述相应的外扩存储装置以及从所述相应的外扩存储装置接收数据。
6.如权利要求1所述的数据存储装置,所述数据存储装置还包括连接到控制器的外部易失性存储器,
其中,控制器基于数据的特性和外部易失性存储器的带宽来将数据传输到所述相应的外扩存储装置以及从所述相应的外扩存储装置接收数据。
7.如权利要求1所述的数据存储装置,其中,控制器基于数据的特性和与包括在非易失性存储器中的存储单元有关的编程方法来将数据传输到所述相应的外扩存储装置以及从所述相应的外扩存储装置接收数据。
8.如权利要求1所述的数据存储装置,其中,控制器基于数据的特性和管理非易失性存储器中的存储数据的闪存转换层的映射尺寸来将数据传输到所述相应的外扩存储装置以及从所述相应的外扩存储装置接收数据。
9.如权利要求1所述的数据存储装置,其中,控制器基于数据的特性和非易失性存储器的用户数据区和预留空间区的比例来将数据传输到所述相应的外扩存储装置以及从所述相应的外扩存储装置接收数据。
10.如权利要求1所述的数据存储装置,其中,控制器基于数据的特性和非易失性存储器的容量来将数据传输到所述相应的外扩存储装置以及从所述相应的外扩存储装置接收数据。
11.如权利要求1所述的数据存储装置,其中,控制器确定易失性存储器的特性、非易失性存储器的特性以及控制器的操作频率,
控制器基于数据的特性、易失性存储器的特性、非易失性存储器的特性和操作频率中的至少一个来将数据传输到所述相应的外扩存储装置以及从所述相应的外扩存储装置接收数据。
12.如权利要求11所述的数据存储装置,其中,易失性存储器的特性通过带宽来确定,
非易失性存储器的特性包括与包括在非易失性存储器中的存储单元有关的编程方法、管理非易失性存储器中的存储数据的闪存转换层的映射尺寸、非易失性存储器的用户数据区和预留空间区的比例以及非易失性存储器的容量中的至少一个。
13.如权利要求1所述的数据存储装置,其中,数据是热数据或冷数据。
14.如权利要求1所述的数据存储装置,其中,数据是程序数据或读取数据。
15.如权利要求1所述的数据存储装置,其中,数据是随机数据或顺序数据。
16.如权利要求1所述的数据存储装置,其中,数据是用户数据或元数据。
17.如权利要求1所述的数据存储装置,其中,易失性存储器和外扩控制器封装在多芯片封装件中。
18.如权利要求1所述的数据存储装置,其中,易失性存储器是DRAM,
非易失性存储器是闪存,
数据存储装置是固态驱动器。
19.一种数据存储装置,所述数据存储装置包括:
多个外扩存储装置;以及
控制器,包括CPU和被构造成确定数据的特性和所述多个外扩存储装置的类型以及对数据进行分类的数据分类电路,控制器被构造成基于所述特性和所述多个外扩存储装置的类型将数据传输到所述多个外扩存储装置中的相应的外扩存储装置以及从所述相应的外扩存储装置接收数据,
其中,所述多个外扩存储装置中的每个外扩存储装置包括易失性存储器、非易失性存储器以及被构造成控制易失性存储器和非易失性存储器的外扩控制器,
其中,数据的特性通过数据的逻辑地址来确定,
其中,控制器还被构造成基于所述多个外扩存储装置的类型将逻辑地址分配到所述多个外扩存储装置中的每个,
其中,传输到所述多个外扩存储装置中的相应的外扩存储装置的数据的逻辑地址被分配到所述多个外扩存储装置中的相应的外扩存储装置,
其中,控制器还被构造成将数据传输到所述多个外扩存储装置中的分配了数据的逻辑地址的相应的外扩存储装置。
20.如权利要求19所述的数据存储装置,所述数据存储装置还包括被构造成接收用户输入以及确定所述多个外扩存储装置的类型的用户接口。
21.如权利要求19所述的数据存储装置,所述数据存储装置还包括连接到控制器的DRAM,
控制器基于数据的特性、控制器的操作频率、DRAM的带宽、与包括在所述多个外扩存储装置的非易失性存储器中的存储单元有关的编程方法、管理非易失性存储器中的存储数据的闪存转换层的映射尺寸、非易失性存储器的用户数据区和预留空间区的比例和非易失性存储器的容量中的至少一个来将数据传输到所述相应的外扩存储装置以及从所述相应的外扩存储装置接收数据。
22.如权利要求19所述的数据存储装置,其中,控制器确定易失性存储器的特性和包括在所述多个外扩存储装置中的非易失性存储器的特性,
控制器确定控制器的操作频率,
控制器基于数据的特性、易失性存储器的特性、非易失性存储器的特性和操作频率中的至少一个来将数据传输到所述相应的外扩存储装置以及从所述相应的外扩存储装置接收数据。
23.如权利要求22所述的数据存储装置,其中,易失性存储器的特性通过带宽来确定,
非易失性存储器的特性包括与包括在非易失性存储器中的存储单元有关的编程方法、管理非易失性存储器中的存储数据的闪存转换层的映射尺寸、非易失性存储器的用户数据区和预留空间区的比例和非易失性存储器的容量中的至少一个。
CN201610443293.XA 2015-06-22 2016-06-20 数据存储装置 Active CN106257401B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020150088574A KR102397582B1 (ko) 2015-06-22 2015-06-22 데이터 저장 장치, 이를 포함하는 데이터 처리 시스템, 및 이의 작동 방법
KR10-2015-0088574 2015-06-22

Publications (2)

Publication Number Publication Date
CN106257401A CN106257401A (zh) 2016-12-28
CN106257401B true CN106257401B (zh) 2021-12-14

Family

ID=57588092

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610443293.XA Active CN106257401B (zh) 2015-06-22 2016-06-20 数据存储装置

Country Status (3)

Country Link
US (1) US10503406B2 (zh)
KR (1) KR102397582B1 (zh)
CN (1) CN106257401B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102398181B1 (ko) 2017-07-03 2022-05-17 삼성전자주식회사 쓰기 데이터를 위해 할당될 물리 어드레스를 미리 관리하는 스토리지 장치
CN107967121B (zh) * 2017-10-25 2020-04-14 华为技术有限公司 数据写入方法和存储设备
US11029883B2 (en) 2018-12-28 2021-06-08 Micron Technology, Inc. Reduce system active power based on memory usage patterns
CN116719486B (zh) * 2023-08-10 2023-11-17 杭州智灵瞳人工智能有限公司 一种内置数据自动传输功能的多模存储装置及控制方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6148377A (en) * 1996-11-22 2000-11-14 Mangosoft Corporation Shared memory computer networks
KR100704037B1 (ko) 2005-04-15 2007-04-04 삼성전자주식회사 이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법
KR100855467B1 (ko) 2006-09-27 2008-09-01 삼성전자주식회사 이종 셀 타입을 지원하는 비휘발성 메모리를 위한 맵핑장치 및 방법
US7657572B2 (en) 2007-03-06 2010-02-02 Microsoft Corporation Selectively utilizing a plurality of disparate solid state storage locations
US8397011B2 (en) 2007-10-05 2013-03-12 Joseph Ashwood Scalable mass data storage device
US8244961B2 (en) 2008-05-27 2012-08-14 Initio Corporation SSD with distributed processors
WO2011030290A1 (en) * 2009-09-08 2011-03-17 International Business Machines Corporation Data management in solid-state storage devices and tiered storage systems
WO2011031796A2 (en) * 2009-09-08 2011-03-17 Fusion-Io, Inc. Apparatus, system, and method for caching data on a solid-state storage device
TW201211775A (en) 2010-09-03 2012-03-16 Jmicron Technology Corp Electronic device, a controller for accessing a plurality of chips via at least one bus and method for accessing a plurality of chips via at least one bus
WO2012056491A1 (en) 2010-10-26 2012-05-03 Hitachi, Ltd. Storage apparatus and data control method
JP2012230554A (ja) 2011-04-26 2012-11-22 Toshiba Corp データ記憶装置、メモリ制御装置及びメモリ制御方法
KR20130063244A (ko) 2011-12-06 2013-06-14 주식회사 디에이아이오 비휘발성 메모리 시스템
US20130185482A1 (en) * 2012-01-18 2013-07-18 Samsung Electronics Co., Ltd. Memory system using a storage having firmware with a plurality of features
US20130185487A1 (en) * 2012-01-18 2013-07-18 Samsung Electronics Co., Ltd Memory system and mobile device including host and flash memory-based storage device
US8760922B2 (en) 2012-04-10 2014-06-24 Sandisk Technologies Inc. System and method for micro-tiering in non-volatile memory
US9390055B2 (en) * 2012-07-17 2016-07-12 Coho Data, Inc. Systems, methods and devices for integrating end-host and network resources in distributed memory
US9223693B2 (en) 2012-12-31 2015-12-29 Sandisk Technologies Inc. Memory system having an unequal number of memory die on different control channels
KR20140112303A (ko) 2013-03-13 2014-09-23 삼성전자주식회사 불휘발성 메모리 장치, 전자 장치 그리고 그것을 포함하는 컴퓨팅 시스템
CN103455283B (zh) * 2013-08-19 2016-01-20 华中科技大学 一种混合存储系统
WO2015034954A1 (en) * 2013-09-03 2015-03-12 Sandisk Technologies Inc. Process and apparatus to reduce declared capacity of a storage device by reducing a range of logical addresses
US9582220B2 (en) * 2014-09-02 2017-02-28 Sandisk Technologies Llc Notification of trigger condition to reduce declared capacity of a storage device in a multi-storage-device storage system

Also Published As

Publication number Publication date
KR20160150497A (ko) 2016-12-30
KR102397582B1 (ko) 2022-05-13
US20160371031A1 (en) 2016-12-22
US10503406B2 (en) 2019-12-10
CN106257401A (zh) 2016-12-28

Similar Documents

Publication Publication Date Title
US10579279B2 (en) Data storage device and data processing system having the same
US10534560B2 (en) Data storage device and data processing system having the same
US11182078B2 (en) Method of accessing a data storage device using a multi-access command
US11561912B2 (en) Host controller interface using multiple circular queue, and operating method thereof
US9996282B2 (en) Method of operating data storage device and method of operating system including the same
US11287978B2 (en) Data storage devices, having scale-out devices to map and control groups on non-volatile memory devices
KR102258126B1 (ko) 메모리 컨트롤러의 작동 방법, 이를 포함하는 데이터 저장 장치, 및 이를 포함하는 데이터 처리 시스템
US10691338B2 (en) Data storage device and data processing system including same
CN106257401B (zh) 数据存储装置
US20160291869A1 (en) Data storage device and data processing system including the same
US10416886B2 (en) Data storage device that reassigns commands assigned to scale-out storage devices and data processing system having the same
US10331366B2 (en) Method of operating data storage device and method of operating system including the same

Legal Events

Date Code Title Description
C06 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