CN110321071B - 存储器系统、其操作方法和包括该存储器系统的计算系统 - Google Patents

存储器系统、其操作方法和包括该存储器系统的计算系统 Download PDF

Info

Publication number
CN110321071B
CN110321071B CN201910085149.7A CN201910085149A CN110321071B CN 110321071 B CN110321071 B CN 110321071B CN 201910085149 A CN201910085149 A CN 201910085149A CN 110321071 B CN110321071 B CN 110321071B
Authority
CN
China
Prior art keywords
memory device
memory
target data
ratio
metadata
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
CN201910085149.7A
Other languages
English (en)
Other versions
CN110321071A (zh
Inventor
金利锡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SK Hynix Inc
Original Assignee
SK Hynix Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SK Hynix Inc filed Critical SK Hynix Inc
Publication of CN110321071A publication Critical patent/CN110321071A/zh
Application granted granted Critical
Publication of CN110321071B publication Critical patent/CN110321071B/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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • 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/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7207Details relating to flash memory management management of metadata or control data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

存储器系统、其操作方法和包括该存储器系统的计算系统。一种存储器系统包括:多种类型的存储器装置;以及控制器,该控制器包括:计数器,其被配置为确定R/W比;数据管理器,其被配置为生成与目标数据对应的元数据;以及选择器,其被配置为将R/W比分别与多个存储器装置中的每一个的阈值进行比较,并且选择用于存储目标数据的存储器装置并选择用于存储元数据的存储器装置;以及处理器,其被配置为将目标数据和元数据存储在各个选择的存储器装置中。

Description

存储器系统、其操作方法和包括该存储器系统的计算系统
技术领域
本公开的各种实施方式涉及一种能够有效地处理数据的存储器系统、其操作方法以及包括该存储器系统的计算系统。
背景技术
在第四次工业革命中数据正在成为重要资产,并且对支持以高数据速率传送和分析大规模数据的新技术的需求正在增加。例如,随着人工智能、自主驾驶、机器人、医疗保健、虚拟现实(VR)、增强现实(AR)和智能家居技术普及,对服务器或数据中心的需求正在增加。
传统数据中心将用于计算、联网和存储数据的资源包括在同一设备中。然而,未来的大规模数据中心可具有单独构建的资源,这些资源在逻辑上被重构。例如,在大规模数据中心中,资源可在机柜级别进行模块化,并且模块化的资源可根据用途来重构和供应。因此,需要可用于未来大规模数据中心的融合存储或存储器装置。
发明内容
本公开的实施方式涉及一种能够将数据有效地存储到存储器装置中的存储器系统及其操作方法。
根据本发明的实施方式,一种存储器系统可包括:多种类型的存储器装置;以及控制器,其包括:计数器,其被配置为确定R/W比,该R/W比是目标数据的读操作次数与写操作次数之比;数据管理器,其被配置为生成与目标数据对应的元数据;选择器,其被配置为将R/W比分别与多个存储器装置中的每一个的阈值进行比较,并且基于比较操作的结果在所述多种类型的存储器装置当中选择用于存储目标数据的存储器装置并基于存储目标数据的存储器装置在所述多种类型的存储器装置当中选择用于存储与目标数据对应的元数据的存储器装置;以及处理器,其被配置为将目标数据和元数据存储在各个选择的存储器装置中。
根据本发明的实施方式,一种操作存储器系统的方法,该存储器系统包括多种不同类型的存储器装置以及控制多个存储器装置中的每一个的控制器,该方法可包括以下步骤:确定R/W比,该R/W比是目标数据的读操作次数与写操作次数之比;将R/W比与所述多个存储器装置中的每一个的阈值进行比较;基于比较步骤的结果在所述多种类型的存储器装置当中选择用于存储目标数据的存储器装置;基于存储目标数据的存储器装置在所述多种类型的存储器装置当中选择用于存储与目标数据对应的元数据的存储器装置;以及将目标数据和元数据存储在各个选择的存储器装置中。
根据本发明的实施方式,一种计算系统可包括:第一存储器系统,其包括多种类型的存储器装置以及被配置为控制多个存储器装置中的每一个的第一控制器;第二存储器系统,其包括类型与所述多个存储器装置的类型中的任一个不同的附加存储器装置以及被配置为控制所述附加存储器装置的第二控制器;以及存储器板管理单元,其被配置为与第一存储器系统和第二存储器系统执行数据通信,其中,第一控制器和第二控制器:确定相对于从存储器板管理单元接收的目标数据的R/W比,该R/W比表示对目标数据执行的读操作次数与对目标数据执行的写操作次数之比,将R/W比与第一存储器系统中的所述多个存储器装置和第二存储器系统中的所述附加存储器装置中的每一个的阈值进行比较,在所述多种类型的存储器装置和所述附加存储器装置中选择要存储目标数据的目标存储器装置,并将目标数据存储在目标存储器装置中。
根据本发明的实施方式,一种池式存储器系统可包括:第一组的存储器装置,其具有指示第一组中的各个存储器装置的容量和延迟中的至少一个的第一级别;第二组的存储器装置,其具有指示第二组中的各个存储器装置的容量和延迟中的至少一个的第二级别;以及控制器,其被配置为:基于目标数据的特性并且分别基于第一组的存储器装置的第一级别和第二组的存储器装置的第二级别来选择第一组的存储器装置和第二组的存储器装置中的一个,并且将目标数据存储在所选择的第一组或第二组的至少一个存储器装置中;其中,目标数据的特性包括对目标数据的读操作次数与写操作次数之比。
附图说明
图1是示出根据本公开的实施方式的数据处理系统的框图。
图2和图3示出根据本公开的实施方式的计算机柜。
图4是示出根据本公开的实施方式的计算板的框图。
图5是示出根据本公开的实施方式的存储器板的框图。
图6A是示出根据本公开的实施方式的存储器板的配置的图。
图6B是示出根据本公开的实施方式的存储器板的详细配置的图。
图7是示出根据本公开的实施方式的数据控制器的操作的流程图。
图8是示出根据本公开的实施方式的数据控制器的操作的流程图。
图9是示意性地示出根据本公开的实施方式的计算系统的结构的图。
具体实施方式
下面将参照附图更详细地描述本公开的各种实施方式。然而,本公开的元件和特征可与所公开的实施方式中示出和描述的不同地配置或布置。因此,本发明不限于本文所阐述的实施方式。相反,提供这些实施方式是为了使本公开彻底和完整,并且向本领域技术人员充分传达本公开的范围。贯穿本公开,相同的标号贯穿本公开的各个附图和实施方式指代相同的部件。另外,贯穿说明书,对“实施方式”、“另一实施方式”等的引用未必仅指一个实施方式,对任何这种短语的不同引用未必指相同的实施方式。
图1是示出数据处理系统10的框图。参照图1,数据处理系统10可包括多个计算机柜20、管理接口30以及用于计算机柜20和管理接口30之间的通信的网络40。具有这种机柜规模架构的数据处理系统10可由数据中心用来处理大规模数据。
各个计算机柜20可单独地实现一个计算装置。另选地,各个计算机柜20可与一个或更多个其它计算机柜组合以实现一个计算装置。下面描述计算机柜20的具体结构和操作。
管理接口30可提供交互接口以便于用户控制、支配或管理数据处理系统10。管理接口30可被实现为任何类型的计算装置,包括计算机、多处理器系统、服务器、机柜式服务器、板服务器、膝上型计算机、笔记本计算机、平板计算机、可穿戴计算装置、网络装置、web装置、分布式计算系统、基于处理器的系统、消费电子装置等中的任一种。
在本公开的一些实施方式中,管理接口30可被实现为具有可由计算机柜20执行的操作功能或者具有可由管理接口30执行的用户接口功能的分布式系统。在本公开的其它实施方式中,管理接口30可被实现为包括通过网络40分布的多计算装置的虚拟云服务器。管理接口30可包括处理器、输入/输出子系统、存储器、数据存储装置和通信电路。
网络40可在计算机柜20和管理接口30之间和/或在计算机柜20之间提供和/或接收数据。网络40可利用适当数量的各种有线和/或无线网络来实现。例如,网络40可包括可公开访问的全球网络,例如有线或无线局域网(LAN)、广域网(WAN)、蜂窝网络和/或互联网。另外,网络40可包括适当数量的辅助网络装置,例如辅助计算机、路由器和交换机。
图2示出根据本公开的实施方式的计算机柜的架构。
参照图2,计算机柜20可包括各种形式和结构的构成元件。例如,计算机柜20可包括多个抽屉21至29。抽屉21至29中的每一个可包括多个模块,各个模块可包括多个板。
在本公开的各种实施方式中,计算机柜20可由适当数量的计算机板、存储器板和/或互连板的组合实现。计算机柜20被描述为板的组合,但是计算机柜20也可由其它元件实现,例如抽屉、模块、托盘、板、框格或其它合适的单元。计算机柜20可具有构成元件根据其功能来分解和分类的结构。计算机柜20可从上到下按分类次序具有互连板、计算板和存储器板的结构,但是计算机柜20不限于这种结构。计算机柜20以及包括计算机柜20的计算装置可被称为“机柜规模系统”或“分解系统”。
在本公开的实施方式中,计算装置可被实现为一个计算机柜20。在其它实施方式中,计算装置可由两个或更多个计算机柜20的所有或一些构成元件或者一个计算机柜20的一些构成元件实现。
在本公开的各种实施方式中,计算装置可由包括在计算机柜20中的适当数量的计算板、存储器板和互连板的组合实现。如图2所示,计算机柜20A可包括两个计算板、三个存储器板和一个互连板。在另一示例中,计算机柜20B可包括三个计算板、两个存储器板和一个互连板。在另一示例中,计算机柜20C可包括一个计算板、四个存储器板和一个互连板。
尽管图2示出计算机柜20包括适当数量的计算板、存储器板和互连板的示例,但是计算机柜20可包括典型服务器中可包括的附加构成元件,例如电源系统、冷却系统、输入/输出装置等。
图3示出根据本公开的实施方式的计算装置100。
参照图3,计算装置100可包括多个计算板200、多个存储器板400和互连板300。计算板200可以是池式计算板或池式计算系统。类似地,存储器板可以是池式存储器板或池式存储器系统。计算装置100被描述为多个板的组合,但是计算装置100也可由诸如抽屉、模块、托盘、板、框格或其它合适的单元的元件实现。
各个计算板200可包括诸如处理器、处理/控制电路、中央处理单元(CPU)等的一个或更多个处理元件。
各个存储器板400可包括一个或更多个存储器,例如易失性存储器、非易失性存储器或其组合。例如,各个存储器板400可包括动态随机存取存储器(DRAM)、闪存、存储卡、硬盘驱动器(HDD)、固态驱动器(SSD)或其组合。
各个存储器板400可由各个计算板200中所包括的一个或更多个处理元件划分、分配或指定并使用。另外,各个存储器板400可存储可由计算板200初始化和/或执行的一个或更多个操作系统(OS)。
互连板300可包括通信电路、通信装置或其组合,其可由各个计算板200中所包括的一个或更多个处理元件划分、分配或指定并使用。例如,互连板300可由任何合适数量的网络接口端口、接口卡或接口开关实现。互连板300可使用与一种或更多种有线通信技术有关的协议来进行通信。例如,互连板300可基于诸如外围组件互连快速(PCIe)、QuickPath互连(QPI)、以太网等的协议中的一个或更多个来支持计算板200与存储器板400之间的通信。
图4是示出根据本公开的实施方式的计算板200的框图。
参照图4,计算板200可包括一个或更多个中央处理单元(CPU)210、一个或更多个本地存储器220以及输入/输出(I/O)接口230。
CPU 210可在图3所示的存储器板400当中划分、分配或指定要使用的一个或更多个存储器板。另外,CPU 210可将一个或更多个存储器板初始化,并对所述一个或更多个存储器板执行数据读操作和/或数据写(即,编程)操作。
本地存储器220可存储数据以执行CPU 210的操作。在本公开的各种实施方式中,本地存储器220可与CPU 210一一对应。
输入/输出接口230可通过图3的互连板300来支持CPU 210与存储器板400之间的接口连接。输入/输出接口230可使用与一种或更多种有线通信技术有关的协议,从CPU 210向互连板300输出并提供数据,并且接收从互连板300输入到CPU 210的数据。例如,输入/输出接口230可使用诸如外围组件互连快速(PCIe)、QuickPath互连(QPI)、以太网等的协议中的一个或更多个来支持CPU 210与互连板300之间的通信。
图5是示出根据本公开的实施方式的存储器板400的框图。
参照图5,存储器板400可包括控制器410和多个存储器420。在控制器410的控制下,存储器420可在其中存储(或写入)数据以及输出(或读取)所存储的数据。存储器420可包括第一存储器组420A、第二存储器组420B和第三存储器组420C。第一存储器组420A、第二存储器组420B和第三存储器组420C中的每一个可包括多个存储器或存储器装置。第一存储器组420A、第二存储器组420B和第三存储器组420C可具有相同的特性或不同的特性。根据本公开的各种实施方式,在容量或延迟方面,第一存储器组420A、第二存储器组420B和第三存储器组420C可包括具有相同特性的存储器或者具有不同特性的存储器。
控制器410可包括数据控制器510、存储控制器(MC)520A至520C以及输入/输出(I/O)接口530。
数据控制器510可控制在图3的存储器420和计算板200之间提供和接收的数据。例如,响应于写请求或命令,数据控制器510可从计算板200接收写数据并控制用于将写数据写入在存储器420当中的对应存储器中的写操作。在读操作中,响应于读请求或命令,数据控制器510可读出存储在存储器420当中的特定存储器中的数据并控制用于将读取的数据输出到计算板200当中的对应计算板的读操作。
存储控制器520A至520C可被设置在数据控制器510与存储器420之间,并且可支持数据控制器510与存储器420之间的接口连接。存储控制器520A至520C可包括第一存储控制器(iMC0)520A、第二存储控制器(iMC1)520B和第三存储控制器(iMC2)520C,其分别与包括在存储器420中的第一存储器组420A、第二存储器组420B和第三存储器组420C对应。第一存储控制器(iMC0)520A可被设置在数据控制器510与第一存储器组420A之间,并且可支持数据控制器510与第一存储器组420A之间的数据提供和/或数据接收。第二存储控制器(iMC1)520B可被设置在数据控制器510与第二存储器组420B之间,并且可支持数据控制器510与第二存储器组420B之间的数据提供和/或数据接收。第三存储控制器(iMC2)520C可被设置在数据控制器510与第三存储器组420C之间,并且可支持数据控制器510与第三存储器组420C之间的数据提供和/或数据接收。尽管本文中描述了控制器410包括三个存储控制器的示例,但是当第一存储器组420A、第二存储器组420B和第三存储器组420C包括DRAM时,控制器410可包括单个存储控制器。
输入/输出接口530可通过图3的互连板300来支持数据控制器510与计算板200之间的接口连接。输入/输出接口530可根据与有线通信技术有关的一种或更多种协议来操作,以将读取的数据从数据控制器510提供给互连板300并将写入的数据从互连板300提供给数据控制器510。例如,输入/输出接口530可基于诸如外围组件互连快速(PCIe)、QuickPath互连(QPI)、以太网等的协议中的一个或更多个来支持数据控制器510与互连板300之间的通信。
图6A是示出根据实施方式的存储器板(例如,存储器板400)的配置的图。具体地,图6A示出数据控制器510的详细结构。
参照图6A,存储器板400可包括控制器410和多个存储器装置420A至420C。多个存储器装置420A至420C可为不同的类型。例如,多个存储器装置420A至420C中的每一个可以是动态随机存取存储器(DRAM)、托管dram解决方案(MDS)、相变随机存取存储器(PCRAM)、NAND闪存等。
在本文所描述的实施方式中,多个存储器装置包括彼此不同的第一存储器装置420A至第三存储器装置420C。然而,这仅是示例;所述多个存储器装置可包括不止三个,其中一些或全部可为不同的类型。另外,作为示例,第一存储器装置420A的数据处理速度最快,第三存储器装置420C的数据处理速度最慢,第二存储器装置420B的数据处理速度介于之间。另外,作为示例,第三存储器装置420C的存储器容量最大,第一存储器装置420A的存储器容量最小,第二存储器装置420B的存储器容量介于之间。此外,作为示例,第一存储器装置420A是易失性存储器装置,第二存储器装置420B和第三存储器装置420C是非易失性存储器装置。
控制器410可包括数据控制器510、I/O接口530以及存储控制器520A至520C。
数据控制器510可包括计数器610、数据管理器630、选择器650和处理器670。
计数器610可测量与目标数据对应的读操作次数与写操作次数之比。目标数据可以是从外部装置(例如,图3的计算板200)向数据控制器510提供读或写请求的数据。并且,以下,与目标数据对应的读操作次数与写操作次数之比被称为R/W比。详细地,计数器610可分别对与目标数据对应的读操作次数以及与目标数据对应的写操作次数进行计数。并且,计数器610可确定目标数据的R/W比。
计数器610可如下对与目标数据对应的读操作次数进行计数:针对目标数据的读命令可包括用于执行读操作的标识符(ID)和地址信息。控制器410可使用标识符(ID)和地址信息来识别针对目标数据的读操作。计数器610可基于读命令来对与目标数据对应的读操作次数进行计数。按照相同的原理,计数器610对写操作次数进行计数,并确定与目标数据对应的R/W比。
对与目标数据对应的读操作次数和写操作次数进行计数的上述方法是实施方式,本发明不限于此。
另外,计数器610可存储所计数的读操作次数、所计数的写操作次数和所确定的R/W比。此外,所存储的读操作次数、所存储的写操作次数和所存储的R/W比可作为与目标数据对应的元数据存储在存储器装置420中。
此外,计数器610可将所确定的与目标数据对应的R/W比提供给数据管理器630。
数据管理器630可生成并存储多个存储器装置420A至420C中的每一个的存储器映射。并且,数据管理器630可分别管理第一存储器装置420A的存储器映射、第二存储器装置420B的存储器映射和第三存储器装置420C的存储器映射。此外,当由于存储在多个存储器装置420A至420C中的每一个中的数据的移动,存储器映射改变时,数据管理器630可更新多个存储器装置420A至420C中的每一个的存储器映射。
如上所述,数据管理器630可接收由计数器610确定的目标数据的R/W比。数据管理器630可管理R/W比。
另外,数据管理器630可生成与目标数据对应的元数据。该元数据可包括地址信息、R/W比以及指示数据存储是否完成的信息。例如,当目标数据已被存储在第一存储器装置420A中时,数据管理器630可基于存储器映射来生成元数据,该元数据包括关于已存储目标数据的第一存储器装置的地址信息、目标数据的R/W比以及指示第一存储器装置中的目标数据的存储是否完成的信息。
选择器650可基于计数器610中测量的R/W比来选择要存储数据的存储器装置。
例如,只有当目标数据的R/W比大于或等于第一阈值时,第一存储器装置420A才存储目标数据。此外,只有当目标数据的R/W比小于第一阈值但是大于或等于第二阈值时,第二存储器装置420B才存储目标数据。类似地,只有当目标数据的R/W比小于第二阈值时,第三存储器装置420C才存储目标数据。第一阈值和第二阈值可由设计者设定。
因此,选择器650可将目标数据的R/W比与上述阈值进行比较,并选择存储目标数据的最适合的存储器装置。
处理器670可将数据存储在由选择器650选择的存储器装置中。例如,对于具有大于第一阈值的R/W比的目标数据,处理器670可将目标数据存储在第一存储器装置420A中。又如,当存储在第三存储器装置中的数据具有大于第一阈值的R/W比时,处理器670可从第三存储器装置420C读取数据并将数据存储在第一存储器装置420A中。在这种情况下,数据管理器630可对改变了地址的数据执行映射更新。
另外,处理器670可基于存储目标数据的存储器装置420来存储由数据管理器630生成的元数据。
根据实施方式,上存储器装置可比下存储器装置更快地处理数据。另一方面,下存储器装置的存储容量可大于上存储器装置的存储容量。根据实施方式,第二存储器装置420B可以是第一存储器装置420A的下存储器装置。并且,第三存储器装置420C可以是第二存储器装置420B的下存储器装置。根据另一实施方式,非易失性存储器装置可以是易失性存储器装置的下存储器装置。
例如,当存储目标数据的存储器装置是易失性存储器装置时,处理器670可将元数据存储在存储目标数据的存储器装置的下存储器装置中。
例如,当处理器670将目标数据存储到第一存储器装置420A时,由于第一存储器装置420A是易失性存储器装置,所以处理器670将与目标数据对应的元数据存储在第二存储器装置420B中或第三存储器装置420C中。
例如,当处理器670将目标数据存储在第二存储器装置420B中时,由于第二存储器装置420B是非易失性存储器装置,所以处理器670可将与目标数据对应的元数据存储在第三存储器装置420C中。
例如,假定第三存储器装置420C可以是最下存储器装置。当处理器670将目标数据存储在第三存储器装置420C中时,处理器670可将与目标数据对应的元数据存储在第三存储器装置420C中。
例如,假定目标数据被存储在第二存储器装置420B中并且与目标数据对应的元数据被存储在第三存储器装置420C中。当处理器670将从第二存储器装置420B读取的目标数据存储在第一存储器装置420A中时,处理器670可将元数据存储在第二存储器装置420B中。然而,当第二存储器装置420B是易失性存储器装置时,处理器670可随后将元数据存储在第三存储器装置420C中。
例如,假定目标数据以及与目标数据对应的元数据被存储在第三存储器装置420C中。当处理器670将从第三存储器装置420C读取的目标数据存储在第二存储器装置420B中时,处理器670可随后将元数据存储在第三存储器装置420C中。
如上所述,当目标数据被存储在易失性存储器装置中时,元数据可被存储在非易失性存储器装置中。将目标数据和元数据分别存储在不同类型的存储器装置中的原因是为了当发生突然断电(SPO)时允许数据控制器510容易地执行突然断电恢复(SPOR)操作。当作为与易失性存储器装置420A的接口的存储控制器520A是非易失性双列直插式存储器模块(DIMM)(NVD)时,即使发生SPO,接口520A也可通电一段时间。结果,当发生SPO时,易失性存储器装置420A可通电一段时间。然而,无法检查存储在易失性存储器装置420A中的数据的状态(例如,是否正在写入数据或者数据已被写入)。在这种情况下,为了检查数据的状态,处理器670可读取元数据并检查数据的状态。当数据还未被写入时,数据控制器510可对数据执行SPOR操作。另外,当发生SPO时,数据管理器630可基于元数据来恢复移除的存储器映射。
图6B是示出根据实施方式的图6A的存储器板400的详细配置的图。参照图6B,图6A的第一存储器装置420A可被实现为动态随机存取存储器(DRAM)690A。图6A的第二存储器装置420B可被实现为相变随机存取存储器(PCRAM)690B。图6A的第三存储器装置420C可被实现为NAND闪存装置(以下,NAND)690C。此实现方式仅作为示例。根据处理和/或存储要求,各种存储器装置中的每一个可被实现为与上面刚刚所描述的不同类型的存储器装置。
关于存储器特性,与存储在PCRAM 690B或NAND 690C中的数据相比,存储在DRAM690A中的数据可被更快地处理。例如,与存储在PCRAM 690B或NAND 690C中的数据相比,存储在DRAM 690A中的数据可被更快地读取。例如,与PCRAM 690B或NAND 690C相比,数据可被更快地写到DRAM 690A。然而,DRAM 690A的存储容量可小于PCRAM 690B或NAND 690C。因此,DRAM 690A是适合于处理具有高R/W比的数据或者需要快速处理的数据的存储器装置。
另一方面,与存储在PCRAM 690B或DRAM 690A中的数据相比,存储在NAND 690C中的数据可被更慢地处理。但是NAND 690C的存储容量可大于另两个。因此,NAND装置690C适合于处理具有低R/W比的数据或者不需要快速处理的数据。
由于PCRAM 690B在处理速度和存储容量方面相对于DRAM 690A和NAND 690C具有中间性质,所以能够扮演DRAM 690A和NAND 690C的中间角色。
返回参照图6A,数据管理器630可生成DRAM 690A、PCRAM 690B和NAND 690C中的每一个的存储器映射。并且,数据管理器630可存储多个存储器映射。如上所述,数据管理器630可分别更新存储器装置690A至690C中的每一个的存储器映射。
选择器650可从存储器装置690A至690C当中选择要存储目标数据的存储器装置。并且,选择器650可基于存储目标数据的存储器装置来从存储器装置690A至690C当中选择要存储与目标数据对应的元数据的存储器装置。
例如,当目标数据的R/W比大于或等于第一阈值时,选择器650可选择要存储目标数据的DRAM 690A。即,如参照图6A所述,选择器650可根据目标数据的特性(例如,R/W比)来选择存储器装置。
图7是示出根据实施方式的数据控制器(例如,数据控制器510)的操作的流程图。例如,图7示出数据控制器510确定目标数据的特性,搜索适合于存储目标数据的存储器装置,并将目标数据存储在搜索中识别的存储器装置中的处理。这里出于描述的目的,目标数据是写数据,并且数据管理器630已经存储各个存储器装置的存储器映射。将参照图6A描述数据控制器510的操作。参照图6A,第一存储器装置420A是易失性存储器装置,并且第二存储器装置420B和第三存储器装置420C是非易失性存储器装置。
在步骤S701,计数器610可测量目标数据的R/W比。
在步骤S703,选择器650可将R/W比与第一阈值进行比较。
当R/W比大于或等于第一阈值(步骤S703为“是”)时,选择器650可在步骤S705选择第一存储器装置420A作为要存储目标数据的存储器装置。
在步骤S707,处理器670可将目标数据存储在第一存储器装置420A中。
在步骤S709,数据管理器630可生成与目标数据对应的元数据。该元数据可包括目标数据的地址信息、R/W比以及指示目标数据是否已被写入的信息。尽管在图7中示出在步骤S709生成元数据,但是这仅是示例。在另一示例中,数据管理器630可在步骤S709之前生成元数据,并且每次数据控制器510识别出地址信息时,每次确定R/W比时,以及每次目标数据已被写入时,数据管理器630可更新元数据。
在步骤S711,处理器670可将元数据存储在第二存储器装置420B中。如图6B中所述,由于第一存储器装置420A是易失性存储器装置,所以处理器670可将元数据存储在第二存储器装置420B中。
在步骤S731,数据管理器630可更新存储器映射以便反映关于存储在第一存储器装置420A中的目标数据的信息。
返回到步骤S703,当R/W比小于第一阈值(步骤S703为“否”)时,选择器650可在步骤S713将R/W比与第二阈值进行比较。
当R/W比大于或等于第二阈值(步骤S713为“是”)时,选择器650可在步骤S715选择第二存储器装置420B作为要存储目标数据的存储器装置。
在步骤S717,处理器670可将目标数据存储在第二存储器装置420B中。
在步骤S719,数据管理器630可生成与目标数据对应的元数据。该元数据可包括目标数据的地址信息、R/W比以及指示目标数据是否已被写入的信息。如上所述,元数据可在步骤S719以外的时间(例如,在步骤S719之前)生成。
在步骤S721,处理器670可将元数据存储在第二存储器装置420B中。如图6A中所述,由于第二存储器装置420B是非易失性存储器装置,所以处理器670可将与存储在第二存储器装置420B中的目标数据对应的元数据存储在第二存储器装置420B中。
在步骤S731,数据管理器630可更新存储器映射以便反映关于存储在第二存储器装置420B中的目标数据的信息。
返回到步骤S713,当R/W比小于第二阈值(步骤S713为“否”)时,选择器650可在步骤S723选择第三存储器装置420C作为要存储目标数据的存储器装置。
在步骤S725,处理器670可将目标数据存储在第三存储器装置420C中。
在步骤S727,数据管理器630可生成与目标数据对应的元数据。该元数据可包括目标数据的地址信息、R/W比以及指示目标数据是否已被写入的信息。如上所述,生成元数据的时间可不同(例如,在步骤S727之前)。
在步骤S729,处理器670可将所生成的元数据存储在第三存储器装置420C中。如图6A中所述,由于第三存储器装置420C是非易失性存储器装置,所以处理器670可将与存储在第三存储器装置420C中的目标数据对应的元数据存储在第三存储器装置420C中。
在步骤S731,数据管理器630可更新存储器映射以便反映关于存储在第三存储器装置420C中的目标数据的信息。
图8是示出根据另一实施方式的数据控制器(例如,数据控制器510)的操作的流程图。例如,图8是示出当目标数据是读数据时数据控制器510的操作的流程图。
在步骤S801,数据管理器630可检查所选择的存储器装置的存储器映射。即,数据管理器630可检查目标数据的地址信息。
在步骤S803,处理器670可从所选择的存储器装置读取目标数据。
在步骤S805,数据管理器630可确定是否需要改变当前存储目标数据的存储器装置。例如,当目标数据被存储在第三存储器装置420C中,并且针对目标数据的读操作次数增加并且目标数据的R/W比大于第二阈值时,要存储目标数据的存储器装置可能需要从第三存储器装置420C改变为第二存储器装置420B。
当需要改变要存储目标数据的存储器装置(步骤S805为“是”)时,在步骤S807,数据控制器510可执行图7的步骤S703至步骤S731。
另一方面,当不需要改变要存储目标数据的存储器装置(步骤S805为“否”)时,数据控制器510可保留存储目标数据的存储器装置。
返回参照图6A,第一存储器板400A的第一数据控制器510A可根据目标数据的特性来选择适合于存储目标数据的存储器装置,并将目标数据存储在所选择的存储器装置中。即,数据控制器510A基于目标数据的R/W比来选择用于存储目标数据的存储器装置。例如,第一数据控制器510A将目标数据的R/W比与多个存储器装置420A至420B中的每一个的阈值进行比较。然后,当需要快速数据处理时,第一数据控制器510A将目标数据存储在第一存储器装置中,当不需要快速数据处理时将目标数据存储在第三存储器装置420C中。然而,数据控制器510A不将目标数据的R/W比与第三存储器装置420C的阈值进行比较。将参照图9描述图6A中所描述的数据处理操作扩展至的计算系统900。
图9是示意性地示出根据实施方式的计算系统900的结构的图。
参照图9,计算系统900可包括存储器板管理单元(MMU)910以及多个存储器板400A和400B。MMU 910可对应于图2至图4所示的多个计算板200和互连板300。尽管图9示出两个存储器板400A和400B并且第二存储器板400B包括一种类型的存储器装置420D,这仅是示例。另外,作为示例,第一存储器装置420A是动态随机存取存储器(DRAM),第二存储器装置420B是相变随机存取存储器(PCRAM),第三存储器装置420C是NAND闪存,第四存储器装置是硬盘驱动器(HDD)。
第一存储器板400A和第二存储器板400B可对应于图6A和图6B的存储器板400,并且包括在存储器板中的元件可分别对应于包括在存储器板400中的那些元件。例如,第一数据控制器510A和第二数据控制器510B对应于数据控制器510。
MMU 910可管理关于多个存储器板400A和400B的存储器装置配置的信息。详细地,MMU 910可识别出第一存储器装置420A至第三存储器装置420C被包括在第一存储器板400A中并且第四存储器装置420D被包括在第二存储器板400B中。
另外,MMU 910可与多个存储器板400A和400B中的每一个通信。因此,MMU 910可向第一存储器板400A和第二存储器板400B提供数据以及从其接收数据。此外,MMU 910可将从第一存储器板400A接收的数据提供给第二存储器板400B。
第一存储器板400A的第一数据控制器510A可将目标数据存储在根据目标数据的特性所选择的存储器装置中。如上所述,第一数据控制器510A可确定或测量目标数据的R/W比,将所测量的R/W比与第一阈值和第二阈值进行比较,并选择要存储目标数据的存储器装置。另外,第一数据控制器510A可将所测量的R/W比与第三阈值进行比较。当R/W比小于第二阈值并且大于或等于第三阈值时,第一数据控制器510A可将目标数据存储在第三存储器装置420C中。另一方面,当R/W比小于第三阈值时,第一数据控制器510A可通过第一I/O接口530A将目标数据提供给MMU 910。由于MMU 910识别包括在多个存储器板400A和400B中的多个存储器装置420A至420D的特性,所以MMU 910可将目标数据从第一存储器板400A提供给第二存储器板400B。第二存储器板400B可从MMU 910接收目标数据。第二存储器板400B的第二数据控制器510B可通过第二I/O接口530B接收目标数据。此外,第二数据控制器510B可将目标数据存储在第四存储器装置420D中。按照相同的原理,第二数据控制器510B也可将与目标数据对应的元数据存储在第四存储器装置420D中。
当存储在第四存储器装置420D中的目标数据的R/W比增加时,第二数据控制器510B可读取目标数据。然后,第二数据控制器510B可通过第二I/O接口530B将读取的目标数据提供给MMU 910。MMU 910可将从第二存储器板400B接收的目标数据提供给第一存储器板400A。第一数据控制器510A可通过第一I/O接口530A接收目标数据。然后,第一数据控制器510A可按照与图6A中所描述的操作相同的方式基于目标数据的R/W比将目标数据存储在对应存储器装置中。按照相同的原理,第一数据控制器510A可将与目标数据对应的元数据存储在所选择的存储器装置中。
如上所述,根据实施方式的数据控制器510和计算系统900可根据数据的特性来选择要存储数据的存储器装置,并将数据存储在所选择的存储器装置中,从而有效地处理数据。即,数据控制器510和计算系统900可在存储需要快速处理的数据的存储器装置与存储不需要相对快速处理的数据的存储器装置之间选择,以有效地处理数据。结果,整个系统的性能可改进。
尽管描述和示出了各种实施方式,但是根据本公开,对于本领域技术人员而言将显而易见的是,在不脱离以下权利要求中限定的本发明的精神和范围的情况下,可进行各种改变和修改。
相关申请的交叉引用
本申请要求2018年3月28日提交的韩国专利申请No.10-2018-0036122的优先权,其整体通过引用并入本文。

Claims (17)

1.一种存储器系统,该存储器系统包括:
多种类型的多个存储器装置,其中,所述多种类型的多个存储器装置包括第一存储器装置和第二存储器装置;以及
控制器,该控制器包括:
计数器,该计数器被配置为确定R/W比,该R/W比是目标数据的读操作次数与写操作次数之比;
数据管理器,该数据管理器被配置为生成与所述目标数据对应的元数据;
选择器,该选择器被配置为将所述R/W比分别与所述多个存储器装置中的每一个的阈值进行比较,并且基于比较操作的结果来在所述多种类型的存储器装置当中选择用于存储所述目标数据的存储器装置,并基于存储所述目标数据的存储器装置来在所述多种类型的存储器装置当中选择用于存储与所述目标数据对应的所述元数据的存储器装置;以及
处理器,该处理器被配置为将所述目标数据和所述元数据存储在各个选择的存储器装置中,
其中,所述选择器将所述R/W比与对应于所述第一存储器装置的第一阈值进行比较,并且当所述R/W比大于或等于所述第一阈值时,选择所述第一存储器装置,并且
其中,所述处理器将所述目标数据存储在所述第一存储器装置中。
2.根据权利要求1所述的存储器系统,
其中,所述第一存储器装置是易失性存储器装置,并且所述第二存储器装置是非易失性存储器装置,
其中,当所述选择器选择了用于存储所述目标数据的所述第一存储器装置时,所述选择器选择用于存储所述元数据的所述第二存储器装置,并且
其中,所述处理器将所述元数据存储在所述第二存储器装置中。
3.根据权利要求2所述的存储器系统,
其中,所述多种类型的多个存储器装置还包括第三存储器装置,
其中,当所述R/W比小于所述第一阈值时,所述选择器将所述R/W比与对应于所述第二存储器装置的第二阈值进行比较,并且当所述R/W比大于或等于所述第二阈值时,选择所述第二存储器装置,并且
其中,所述处理器将所述目标数据存储在所述第二存储器装置中。
4.根据权利要求3所述的存储器系统,
其中,当所述选择器选择了用于存储所述目标数据的所述第二存储器装置时,所述选择器选择用于存储所述元数据的所述第二存储器装置,并且
其中,所述处理器将所述元数据存储在所述第二存储器装置中。
5.根据权利要求4所述的存储器系统,
其中,当所述R/W比小于所述第二阈值时,所述选择器选择所述第三存储器装置,并且
其中,所述处理器将所述目标数据和所述元数据存储在所述第三存储器装置中。
6.根据权利要求1所述的存储器系统,其中,所述多种类型的存储器装置包括易失性存储器装置和非易失性存储器装置,并且
当所述目标数据已被存储在所述易失性存储器装置中时,所述处理器将所述元数据存储在所述非易失性存储器装置中。
7.一种存储器系统的操作方法,该存储器系统包括多种类型的存储器装置以及控制多个存储器装置中的每一个的控制器,其中,所述多种类型的多个存储器装置包括第一存储器装置和第二存储器装置,所述方法包括以下步骤:
确定R/W比,该R/W比是目标数据的读操作次数与写操作次数之比;
将所述R/W比与所述多个存储器装置中的每一个的阈值进行比较;
基于比较步骤的结果在所述多种类型的存储器装置当中选择用于存储所述目标数据的存储器装置;
基于存储所述目标数据的存储器装置在所述多种类型的存储器装置当中选择用于存储与所述目标数据对应的元数据的存储器装置;以及
将所述目标数据和所述元数据存储在各个选择的存储器装置中,
其中,比较所述R/W比的步骤将所述R/W比与对应于所述第一存储器装置的第一阈值进行比较,
其中,当所述R/W比大于或等于所述第一阈值时,选择用于存储所述目标数据的存储器装置的步骤选择所述第一存储器装置,并且
其中,存储所述目标数据和所述元数据的步骤将所述目标数据存储在所述第一存储器装置中。
8.根据权利要求7所述的操作方法,
其中,所述第一存储器装置是易失性存储器装置,并且所述第二存储器装置是非易失性存储器装置,
其中,当选择了用于存储所述目标数据的所述第一存储器装置时,选择用于存储所述元数据的存储器装置的步骤选择用于存储所述元数据的所述第二存储器装置,并且
其中,存储所述目标数据和所述元数据的步骤将所述元数据存储在所述第二存储器装置中。
9.根据权利要求8所述的操作方法,
其中,所述多种类型的多个存储器装置还包括第三存储器装置,
其中,当所述R/W比小于所述第一阈值时,比较所述R/W比的步骤将所述R/W比与对应于所述第二存储器装置的第二阈值进行比较,
其中,当所述R/W比大于或等于所述第二阈值时,选择用于存储所述目标数据的存储器装置的步骤选择所述第二存储器装置,并且
其中,存储所述目标数据和所述元数据的步骤将所述目标数据存储在所述第二存储器装置中。
10.根据权利要求9所述的操作方法,
其中,当选择了用于存储所述目标数据的所述第二存储器装置时,选择用于存储所述元数据的存储器装置的步骤选择用于存储所述元数据的所述第二存储器装置,并且
其中,存储所述目标数据和所述元数据的步骤将所述元数据存储在所述第二存储器装置中。
11.根据权利要求10所述的操作方法,
其中,当所述R/W比小于所述第二阈值时,选择用于存储所述目标数据的存储器装置的步骤选择所述第三存储器装置,
其中,选择用于存储所述元数据的存储器装置的步骤选择所述第三存储器装置,并且
其中,存储所述目标数据和所述元数据的步骤将所述目标数据和所述元数据存储在所述第三存储器装置中。
12.根据权利要求7所述的操作方法,
其中,所述多种类型的存储器装置包括易失性存储器装置和非易失性存储器装置,并且
其中,存储所述目标数据和所述元数据的步骤将所述目标数据存储在所述易失性存储器装置中并将所述元数据存储在所述非易失性存储器装置中。
13.一种计算系统,该计算系统包括:
第一存储器系统,该第一存储器系统包括多种类型的多个存储器装置以及第一控制器,该第一控制器被配置为控制所述多个存储器装置中的每一个,其中,所述多种类型的多个存储器装置包括第一存储器装置、第二存储器装置和第三存储器装置;
第二存储器系统,该第二存储器系统包括类型与所述多个存储器装置的类型中的任一个不同的附加存储器装置以及第二控制器,该第二控制器被配置为控制所述附加存储器装置;以及
存储器板管理单元,该存储器板管理单元被配置为与所述第一存储器系统和所述第二存储器系统执行数据通信,
其中,所述第一控制器和所述第二控制器:
确定相对于从所述存储器板管理单元接收的目标数据的R/W比,该R/W比表示对所述目标数据执行的读操作次数与对所述目标数据执行的写操作次数之比,
将所述R/W比与所述第一存储器系统中的所述多个存储器装置和所述第二存储器系统中的所述附加存储器装置中的每一个的阈值进行比较,
在所述多种类型的存储器装置和所述附加存储器装置中选择要存储所述目标数据的目标存储器装置,并且
将所述目标数据存储在所述目标存储器装置中,
其中,所述第一控制器将所述R/W比与对应于所述第一存储器装置的第一阈值进行比较,并且当所述R/W比大于或等于所述第一阈值时,选择所述第一存储器装置作为所述目标存储器装置。
14.根据权利要求13所述的计算系统,其中,当所述R/W比小于所述第一阈值时,所述第一控制器将所述R/W比与对应于所述第二存储器装置的第二阈值进行比较,并且当所述R/W比大于或等于所述第二阈值时,选择所述第二存储器装置作为所述目标存储器装置。
15.根据权利要求14所述的计算系统,其中,当所述R/W比小于所述第二阈值时,所述第一控制器将所述R/W比与对应于所述第三存储器装置的第三阈值进行比较,并且当所述R/W比大于或等于所述第三阈值时,选择所述第三存储器装置作为所述目标存储器装置。
16.根据权利要求15所述的计算系统,其中,当所述R/W比小于所述第三阈值时,所述第一控制器将所述目标数据提供给所述存储器板管理单元,所述存储器板管理单元将所接收的目标数据提供给所述第二控制器,并且所述第二控制器将所述目标数据存储在所述附加存储器装置中。
17.根据权利要求16所述的计算系统,其中,当所述R/W比大于所述第一阈值、所述第二阈值或所述第三阈值时,所述第二控制器将所述目标数据从所述附加存储器装置提供给所述存储器板管理单元,所述存储器板管理单元将所接收的目标数据提供给所述第一控制器,并且所述第一控制器将所述目标数据存储在所述第一存储器系统的所述多种类型的存储器装置中的一个中。
CN201910085149.7A 2018-03-28 2019-01-29 存储器系统、其操作方法和包括该存储器系统的计算系统 Active CN110321071B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0036122 2018-03-28
KR1020180036122A KR20190113437A (ko) 2018-03-28 2018-03-28 메모리 시스템, 그것의 동작방법 및 메모리 시스템을 포함하는 컴퓨팅 시스템

Publications (2)

Publication Number Publication Date
CN110321071A CN110321071A (zh) 2019-10-11
CN110321071B true CN110321071B (zh) 2023-07-04

Family

ID=68054382

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910085149.7A Active CN110321071B (zh) 2018-03-28 2019-01-29 存储器系统、其操作方法和包括该存储器系统的计算系统

Country Status (5)

Country Link
US (2) US10754570B2 (zh)
JP (1) JP7368942B2 (zh)
KR (1) KR20190113437A (zh)
CN (1) CN110321071B (zh)
TW (1) TWI795505B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021052353A (ja) 2019-09-26 2021-04-01 日本電気株式会社 送信側中継装置、システム、方法、及びプログラム
US11520488B2 (en) * 2020-04-22 2022-12-06 Dell Products, L.P. Method and apparatus for identifying a device missing from a consistency group
TWI767584B (zh) * 2021-02-24 2022-06-11 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體控制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8341300B1 (en) * 2007-08-30 2012-12-25 Virident Systems, Inc. Systems for sustained read and write performance with non-volatile memory
CN103186490A (zh) * 2011-12-28 2013-07-03 苹果公司 模拟存储单元中的优化的阈值搜索
CN106997324A (zh) * 2015-12-14 2017-08-01 三星电子株式会社 非易失性存储器模块、具有其的计算系统及其操作方法
CN107783730A (zh) * 2016-08-26 2018-03-09 株式会社东芝 存储装置、存储器ic及向存储器ic写入的写入处理方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4933861B2 (ja) 2005-09-22 2012-05-16 株式会社日立製作所 ストレージ制御装置、データ管理システムおよびデータ管理方法
KR101464338B1 (ko) 2007-10-25 2014-11-25 삼성전자주식회사 불휘발성 메모리 장치를 이용한 데이터 저장장치, 메모리시스템, 그리고 컴퓨터 시스템
US7801994B2 (en) * 2007-11-29 2010-09-21 Hitachi, Ltd. Method and apparatus for locating candidate data centers for application migration
JP2011128792A (ja) 2009-12-16 2011-06-30 Toshiba Corp メモリ管理装置
US8230123B2 (en) * 2010-08-23 2012-07-24 International Business Machines Corporation Using information on input/output (I/O) sizes of accesses to an extent to determine a type of storage device for the extent
JP2012094030A (ja) 2010-10-28 2012-05-17 Hitachi Ltd 計算機システム及び処理制御方法
KR101999132B1 (ko) 2012-12-17 2019-10-01 삼성전자주식회사 가상 머신 환경에서 메모리 관리 방법 및 장치
US9792227B2 (en) 2014-08-19 2017-10-17 Samsung Electronics Co., Ltd. Heterogeneous unified memory
US20170075812A1 (en) * 2015-09-16 2017-03-16 Intel Corporation Technologies for managing a dynamic read cache of a solid state drive
KR102435873B1 (ko) * 2015-12-18 2022-08-25 삼성전자주식회사 스토리지 장치 및 그것의 리드 리클레임 방법
KR20170099437A (ko) 2016-02-23 2017-09-01 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
TWI602061B (zh) * 2017-03-16 2017-10-11 群聯電子股份有限公司 資料寫入方法、記憶體儲存裝置與記憶體控制電路單元
KR102394695B1 (ko) 2017-11-08 2022-05-10 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8341300B1 (en) * 2007-08-30 2012-12-25 Virident Systems, Inc. Systems for sustained read and write performance with non-volatile memory
CN103186490A (zh) * 2011-12-28 2013-07-03 苹果公司 模拟存储单元中的优化的阈值搜索
CN106997324A (zh) * 2015-12-14 2017-08-01 三星电子株式会社 非易失性存储器模块、具有其的计算系统及其操作方法
CN107783730A (zh) * 2016-08-26 2018-03-09 株式会社东芝 存储装置、存储器ic及向存储器ic写入的写入处理方法

Also Published As

Publication number Publication date
TWI795505B (zh) 2023-03-11
US20190303032A1 (en) 2019-10-03
TW201942750A (zh) 2019-11-01
CN110321071A (zh) 2019-10-11
JP7368942B2 (ja) 2023-10-25
KR20190113437A (ko) 2019-10-08
JP2019175433A (ja) 2019-10-10
US10754570B2 (en) 2020-08-25
US20200348871A1 (en) 2020-11-05

Similar Documents

Publication Publication Date Title
CN110008149B (zh) 融合式存储器件及其操作方法
CN110321071B (zh) 存储器系统、其操作方法和包括该存储器系统的计算系统
CN111352857B (zh) 存储器系统及其操作方法
US11461024B2 (en) Computing system and operating method thereof
CN112214161B (zh) 存储器系统及其操作方法
KR102446716B1 (ko) 통합 메모리 디바이스 및 그의 동작 방법
CN109753236B (zh) 存储系统及其操作方法
CN111435337B (zh) 存储器系统和数据处理系统
KR102433549B1 (ko) 통합 메모리 디바이스 및 그의 동작 방법
KR102586741B1 (ko) 메모리 시스템 및 그것의 동작방법
US20190129483A1 (en) Computing device and operation method thereof
JP2020087409A (ja) データ処理システム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant