CN106168882A - 管理存储装置的方法及其存储系统 - Google Patents
管理存储装置的方法及其存储系统 Download PDFInfo
- Publication number
- CN106168882A CN106168882A CN201510783724.2A CN201510783724A CN106168882A CN 106168882 A CN106168882 A CN 106168882A CN 201510783724 A CN201510783724 A CN 201510783724A CN 106168882 A CN106168882 A CN 106168882A
- Authority
- CN
- China
- Prior art keywords
- data
- storage
- memory space
- data block
- migration
- 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
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/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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- 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/0625—Power saving in storage systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Memory System (AREA)
- Dram (AREA)
Abstract
本发明揭露一种管理存储装置的方法及其存储系统。其中,该存储系统包含:存储装置,包含分别通过多个存储通道存取的多个存储空间;以及数据迁移控制电路,配置该数据迁移控制电路控制将该多个存储空间的第二存储空间中的第一存储数据迁移至该多个存储空间的第一存储空间,其中,当执行该第一存储数据的第一数据块的数据迁移期间请求该第一数据块时,进一步配置该数据迁移控制电路阻止该第一数据块的数据存取,直到完全将该第一数据块存入该第一存储空间为止,其中,该第一数据块的尺寸小于该第一存储数据的尺寸。本发明提供的管理存储装置的方法及其存储系统可降低系统功耗。
Description
交叉引用
本发明要求如下优先权:编号为62/162,944,申请日为2015年5月18日的美国临时专利申请。上述美国临时专利申请在此一并作为参考。
技术领域
本发明涉及一种管理存储装置的方法及其存储系统。特别地,本发明涉及一种多通道存储装置中控制数据迁移的方法及其存储系统,以取得节省功耗的效果。
背景技术
随着计算机系统中处理系统以及存储系统的性能大幅提高,计算机技术继续大幅度地发展。例如,为了响应更快、更有效计算机系统的需求,可将处理系统设计为具有更高计算功率并且对于处理更多任务运行更快。如果存储系统的操作性能不能达到带宽需求,则存储系统将变成性能瓶颈。因此,需要提高存储系统的吞吐量。
为了达到带宽需求,现已发展出了多通道存储装置。以双通道存储装置为例,其具有两条平行的存储通道,并且两条存储通道可通知操作以提供更大的数据吞吐量。当多通道存储装置中使用的存储通道数量越大时,其意味着功率消耗也会越大。此外,计算机系统并不总是需要较大的存储带宽。在计算机系统仅需要较小存储带宽情况下,如果多通道存储装置的所有存储通道皆处于激活状态,则功率使用情况并不能达到最优化状态。如果上述计算机系统是电池供电的可携式装置(例如,智能手机),则由于提高了存储系统的功率消耗,电池使用时间会缩短。因此,亟需一种新颖设计以有效降低多通道存储装置的功率消耗。
发明内容
有鉴于此,本发明揭露一种管理存储装置的方法及其存储系统。
根据本发明一实施例,提供一种存储系统,包含:存储装置,包含分别通过多个存储通道存取的多个存储空间;以及数据迁移控制电路,配置该数据迁移控制电路控制将该多个存储空间的第二存储空间中的第一存储数据迁移至该多个存储空间的第一存储空间,其中,当执行该第一存储数据的第一数据块的数据迁移期间请求该第一数据块时,进一步配置该数据迁移控制电路阻止该第一数据块的数据存取,直到完全将该第一数据块存入该第一存储空间为止,其中,该第一数据块的尺寸小于该第一存储数据的尺寸。
根据本发明另一实施例,提供一种管理存储装置的方法,其中该存储装置包含分别通过多个存储通道存取的多个存储空间,该管理存储装置的方法包含:控制将该多个存储空间的第二存储空间中的第一存储数据迁移至该多个存储空间的第一存储空间;以及当执行该第一存储数据的第一数据块的数据迁移期间请求该第一数据块时,阻止该第一数据块的数据存取,直到完全将该第一数据块存入该第一存储空间为止,其中,该第一数据块的尺寸小于该第一存储数据的尺寸。
根据本发明另一实施例,提供一种存储系统,包含:存储装置,包含分别通过多个存储通道存取的多个存储空间;以及数据迁移控制电路,配置该数据迁移控制电路检测该存储装置是否从第一带宽场景切换至第二带宽场景,并且当检测到该存储装置从该第一带宽场景切换至该第二带宽场景时,进一步配置该数据迁移控制电路控制将该多个存储空间的第二存储空间中的第一存储数据迁移至该多个存储空间的第一存储空间,其中,该第一带宽场景与该第二带宽场景具有不同的存储带宽需求。
根据本发明另一实施例,提供一种管理存储装置的方法,其中该存储装置包含分别通过多个存储通道存取的多个存储空间,该管理存储装置的方法包含:检测该存储装置是否从第一带宽场景切换至第二带宽场景,其中,该第一带宽场景与该第二带宽场景具有不同的存储带宽需求;以及当检测到该存储装置从该第一带宽场景切换至该第二带宽场景时,控制将该多个存储空间的第二存储空间中的第一存储数据迁移至该多个存储空间的第一存储空间。
本发明提供的管理存储装置的方法及其存储系统可降低系统功耗。
附图说明
图1是根据本发明实施例描述的存储系统示意图;
图2是根据本发明第一实施例描述的存储装置中数据迁移的示意图;
图3是根据本发明实施例描述的数据迁移控制电路执行复制/移动操作的示意图;
图4是根据本发明第二实施例描述的存储装置中数据迁移的示意图;
图5是根据本发明实施例描述的图1所示数据迁移控制电路执行的交换操作示意图;
图6是根据本发明第三实施例描述的存储装置中数据迁移示意图。假设存储装置为双通道存储器;
图7是根据本发明第四实施例描述的存储装置中数据迁移示意图。假设存储装置为四通道存储器;
图8是根据本发明第五实施例描述的存储装置中数据迁移示意图。假设存储装置为四通道存储器;
图9是根据本发明实施例描述的数据迁移控制电路另一设计示意图;
图10是根据本发明实施例描述的基于一个迁移指针的数据存取控制方案示意图;
图11是根据本发明实施例描述的基于迁移指针的另一数据存取控制方案示意图;
图12是根据本发明实施例描述的基于迁移指针的另一数据存取控制方案示意图。
具体实施方式
在说明书及权利要求书当中使用了某些词汇来指称特定的元件。所属技术领域的技术人员应可理解,硬件制造商可能会用不同的名词来称呼同一个元件。本说明书及权利要求书并不以名称的差异作为区分元件的方式,而是以元件在功能上的差异作为区分的准则。在通篇说明书及权利要求项中所提及的“包含”为一开放式的用语,故应解释成“包含但不限定于”。此外,“耦接”一词在此包含任何直接及间接的电气连接手段。因此,若文中描述第一装置耦接于第二装置,则代表第一装置可直接电气连接于第二装置,或透过其它装置或连接手段间接地电气连接至第二装置。
接下来的描述是实现本发明的最佳实施例,其是为了描述本发明原理的目的,并非对本发明的限制。可以理解地是,本发明实施例可由软件、硬件、固件或其任意组合来实现。
本发明提出的存储系统设计,其可在不降低使用计算机系统用户体验的情况下,动态改变多通道存储装置中所用的激活存储通道的数量。例如,可执行动态通道切换操作,并且上述操作并不会让用户感到数据迁移延迟。在实施例中,可非动态地改变激活存储通道的数量。可执行数据迁移以将存储数据从第二存储通道的第二存储空间迁移至第一存储通道的第一存储空间。如果在上述数据迁移完成后,第二存储空间不存在有效数据,则可将第二存储通道及/或相关存储控制器断电或休眠用于节省功耗。进一步地,在完成数据迁移后,可降低同时处于激活状态的存储通道的数量。因此,存储控制器不需要同时控制通过所有存储通道的数据存取。功率消耗也会相应降低。此外,可将存储数据分为多个数据块(data piece),并且可将数据块一个接一个地从第二存储空间迁移至第一存储空间。当硬件模块请求当前正迁移的数据块时,在数据块已存储入第一存储空间后,数据块变为可存取的。因此,由等待一个数据块(其为待迁移存储数据的一部分)迁移完成造成的存取延迟比由等待所有存储数据迁移完成造成的存取延迟要大大缩短。这样,计算机系统的用户不易察觉由一个请求数据块的存取延迟引起的系统响应延迟。接下来将详细描述本发明提出的存储系统设计。
图1是根据本发明实施例描述的存储系统示意图。存储系统100可为计算机系统的一部分。例如,存储系统100可位于可携式装置中,例如,平板电脑、智能手机或可穿戴装置。存储系统100可包含存储装置(例如,动态随机存取存储器)102、多个存储控制器104_1-104_N、数据迁移控制电路106,其中,N为不小于2的任意正整数。在本实施例中,存储装置102可为具有多个存储空间108_1-108_N的多通道存储器,其中上述多通道存储器可分别通过多个存储通道109_1-109_N进行存取。可配置存储控制器104_1-104_N分别控制存储空间108_1-108_N的数据存取(即,读写操作)。因此,存储控制器104_1-104_N的数量等于存储空间108_1-108_N的数量,也等于存储通道109_1-109_N的数量。值得注意的是,可根据实际设计需要调整N的数值。例如,当N等于2时,可使用双通道存储器装配存储装置102。在另一示例中,当N等于4时,可使用四通道存储器装配存储装置102。每个存储空间108_1-108_N具有相同芯片选择信号控制的一个或多个存储列(memory rank)110,并且每个存储列110包含一个或多个存储芯片。
例如,当计算机系统进入挂起模式/待机模式或将存储装置102从高带宽场景(例如,视频播放、运行游戏等)切换至低带宽场景(例如,编辑文档、上网等)时,可启动上述数据迁移方案以允许存储装置102具有较低功率消耗。然而,当计算机系统离开挂起模式/待机模式或将存储装置102从低带宽场景切换至高带宽场景时,可启动上述数据迁移方案的逆向操作以允许存储装置102满足较高带宽需求。
在实施例中,数据迁移控制电路106可检测是否将存储装置102从第一带宽场景切换至第二带宽场景,并且当检测到存储装置102从第一带宽场景切换至第二带宽场景时,可控制存储空间108_1-108_N的第二存储空间中的第一存储数据迁移至存储空间108_1-108_N的第一存储空间,其中第一带宽场景与第二带宽场景具有不同的存储带宽需求。
数据迁移控制电路106可管理存储装置102的不同存储通道的数据迁移。在本实施例中,数据迁移控制电路106可包含直接存储器存取(Direct Memory Access,DMA)控制器112与转换表114。DMA控制器112可依DMA方式控制存储数据的数据迁移。上述数据迁移可复制/移动第二存储通道的第二存储空间的存储数据至第一存储通道的第一存储空间,及/或交换第二存储通道的第二存储空间的存储数据与第一存储通道的第一存储空间的存储数据。即,上述数据迁移可为单向数据传送、双向数据传送或两者结合。当执行数据迁移以取得数据交换时,使用DMA控制器112中的缓冲器116在DMA控制器112将第二存储空间的存储数据写入第一存储空间之前,暂时保存第一存储空间的存储数据。因此,在第二存储空间的至少部分存储数据重写第一存储空间的至少部分存储数据(即,部分或全部存储数据)之后,DMA控制器112开始取回缓冲器116中的至少部分存储数据(即,部分或全部存储数据)并且将上述取回的数据写入第二存储空间以重写第二存储空间的至少部分存储数据,其中上述第二存储空间的至少部分存储数据已经存储入第一存储空间。可使用较小尺寸的存储模组实施缓冲器116。例如,缓冲器116的尺寸可等于数据块的尺寸。
可配置转换表114记录原始存储地址与新存储地址之间的映射关系。因此,虽然将存储数据迁移至不同存储位置,其中外部硬件模块(例如,存储管理单元)并未获知上述不同存储位置,但通过转换表114,上述存储数据可正确进行存取。例如,转换表114可将MMU生成的一个物理地址转换至请求数据实际所在的另一物理地址。在一个示例中,在将存储数据从原始存储地址传送入新存储地址后,可配置DMA控制器112通知转换表114记录上述映射关系。为了更好理解本发明的技术细节,下面将详细描述几个数据迁移示例。
图2是根据本发明第一实施例描述的存储装置中数据迁移的示意图。假设存储装置102为双通道存储器。因此,存在MS_1与MS_2标注的两个存储空间108_1-108_N(N等于2)、CH_1与CH_2标注的两个存储通道109_1-109_N(N等于2)以及DRAMC_1与DRAMC_2标注的两个存储控制器104_1-104-N(N等于2)。在本示例中,存储空间MS_1具有上部存储列Rank_1B以及下部存储列Rank_1A,以及存储空间MS_2具有上部存储列Rank_2B以及下部存储列Rank_2A。进一步地,分配给存储空间中上部存储列的地址高于分配给相同存储空间中下部存储列的地址。
如图2的子表(A)所示,可将存储装置102分割为高性能使用的交错区域(interleaving region)以及低功率使用的级联区域(cascaderegion)。当在低功耗与低带宽场景使用存储装置102时,将级联区域安排至下部存储列Rank_1A的下部区域以及下部存储列Rank_2A的下部区域,其中下部存储列Rank_2A的下部区域可级联下部存储列Rank_1A的下部区域以定义具有连续存储地址的区域。可将级联区域的较低存储地址安排至下部存储列Rank_1A的下面,并且将较高存储地址安排至下部存储列Rank_2A的下面。在本示例中,下部存储列Rank_1A的下部区域尺寸可为256MB(兆字节),并且下部存储列Rank_2A的下部区域尺寸可为256MB。因此,级联区域的尺寸可为512MB(即,256MB与256MB之和)。值得注意的是,存储装置102中级联区域的安排仅是为了说明的目的,并不是对本发明的限制。例如,可根据实际设计调整级联区域的尺寸。
在低功率与低带宽场景中,存储控制器DRAMC_1与DRAMC_2可在级联存储器存取模式(cascade memory access mode)下控制级联区域(即,下部存储列Rank_1A的下部以及下部存储列Rank_2A的下部)的数据存取。即,对于读请求或写请求的每个存储地址,在读取级联区域的数据或将数据写入级联区域时,仅有一个存储通道(存储通道CH_1与存储通道CH_2中的一个)处于激活状态。因此,在级联存储器存取模式下,无需同时激活所有存储通道(存储通道CH_1与CH_2)。
将交错区域安排在下部存储列Rank_1A的上部区域、下部存储列Rank_2A的上部区域以及上部存储列Rank_1B与Rank_2B。在高性能与高带宽场景中,存储控制器DRAMC_1与DRAMC_2可在交错存储器存取模式(interleaving memory access mode)下控制交错区域(即,下部存储列Rank_1A的上部区域、下部存储列Rank_2A的上部区域以及上部存储列Rank_1B与Rank_2B)的数据存取。即,对于存储地址上的数据读写,存储通道CH_1与CH_2同时皆处于激活状态。因此,存储控制器DRAMC_1与DRAMC_2可并行存取下部存储列Rank_1A的上部区域与下部存储列Rank_2A的上部区域,并且存储控制器DRAMC_1与DRAMC_2可并行存取上部存储列Rank_1B与上部存储列Rank_2B。值得注意的是,存储装置102中交错区域的安排仅是为了说明的目的,并不是对本发明的限制。例如,可根据实际设计调整交错区域的尺寸。
在上部存储列Rank_1B与上部存储列Rank_2B不存储有效数据情况下,如图2的子表(A)所示,上部存储列Rank_1B与上部存储列Rank_2B每一个可禁用其自刷新操作并且进入最低可能功率状态,例如深度休眠(Deep Power Down,DPD)状态。例如,可将上部存储列Rank_1B中的所有有效数据转移至下部存储列Rank_1A,并且可将上部存储列Rank_2B中的所有有效数据转移至下部存储列Rank_2A。接着,上部存储列Rank_1B与上部存储列Rank_2B每一个进入DPD状态用于节省功率。
如图2的子表(A)所示,可将下部存储列Rank_1A的上部区域分配为部分交替区域,并且可将下部存储列Rank_2A的下部区域分配为部分级联区域。考虑到下部存储列Rank_1A的上部区域具有足够空闲空间用于安排下部存储列Rank_2A的下部区域的所有有效数据,并且同时存储装置102操作在低带宽场景或计算机系统进入挂起模式/待机模式,可启动上述数据迁移方案以复制/移动下部存储列Rank_2A的下部区域中的所有有效数据至下部存储列Rank_1A的上部区域。
图3是根据本发明实施例描述的数据迁移控制电路106执行复制/移动操作的示意图。DMA控制器112可将下部存储列Rank_2A的下部区域中存储的有效数据分割为多个数据块,并且将数据块依次转移至下部存储列Rank_1A的上部区域中的空闲空间。每个数据块的尺寸小于迁移存储数据的尺寸。例如,数据块尺寸是1KB(千字节)、4KB、1MB、4MB或其他预设值。
在本示例中,可将下部存储列Rank_2A的下部区域中存储的有效数据分割为数据块P1-PM,其中数据块P1-PM分别具有块地址ADDR_21-ADDR_2M。既然下部存储列Rank_1A的上部区域中具有足够空闲空间用于安排下部存储列Rank_2A的下部区域中的所有有效数据,DMA控制器112可将每个数据块P1-PM转移至下部存储列Rank_1A的上部区域中的任意空闲空间。举例但不局限于此,下部存储列Rank_1A的上部区域中不具有有效数据。因此,DMA控制器112可将数据块P1-PM转移至下部存储列Rank_1A的上部区域中的连续空闲空间。如图3所示,DMA控制器112可将下部存储列Rank_2A的下部区域中的块地址ADDR_21处的数据块P1转移至下部存储列Rank_1A的上部区域中的块地址ADDR_11。可配置转换表114记录/更新数据块P1的原始块地址ADDR_21与数据块P1的新块地址ADDR_11之间的映射关系。在一个示例中,当完成数据块P1的数据迁移时,DMA控制器112指示转换表114记录/更新上述映射关系。
接着,DMA控制器112将下部存储列Rank_2A的下部区域中的块地址ADDR_22处的数据块P2转移至下部存储列Rank_1A的上部区域中的块地址ADDR_12。相似地,可配置转换表114记录/更新数据块P2的原始块地址ADDR_22与数据块P2的新块地址ADDR_12之间的映射关系。在一个示例中,当完成数据块P2的数据迁移时,DMA控制器112指示转换表114记录/更新上述映射关系。DMA控制器112可保持转移下部存储列Rank_2A的下部区域中的剩余数据块至下部存储列Rank_1A的上部区域中,直到完成最后数据块PM的数据迁移为止。在完成最后数据块PM的数据迁移后,转换表114具有多个列表项目,其记录下部存储列Rank_2A的下部区域中的数据块P1-PM的块地址ADDR_21-ADDR_2M与下部存储列Rank_1A的上部区域中的数据块P1-PM的块地址ADDR_11-ADDR_1M之间的映射关系。
值得注意的是,当DMA控制器112正转移下部存储列Rank_2A的下部区域中的特定数据块至下部存储列Rank_1A的上部区域时,临时阻止对特定数据块的任意存取请求以确保数据完整性。例如,外部硬件模块(例如,MMU)可发出对存储装置102中物理地址的存取请求用于存储目标数据。假设在数据块P2的数据迁移期间请求数据块P2,则数据迁移控制电路106阻止数据块P2的数据存取,直到将数据块P2完全存入下部存储列Rank_1A的上部区域中的块地址ADDR_12的空闲空间为止。
在本实施例中,转换表114接收外部硬件模块(例如,MMU)生成的输入物理地址ADDR_IN,并且使用输出物理地址ADDR_IN’进行响应,然后将输出物理地址ADDR_IN’发送至至少一个存储控制器104_1-104_N。在数据块P2的数据迁移期间,如果转换表114接收物理地址ADDR_22用以存取下部存储列Rank_2A的下部区域中的数据块(即,ADDR_IN等于ADDR_22),那么转换表114不响应下部存储列Rank_1A的上部区域中的数据块P2的物理地址ADDR_12,直到DMA控制器112将数据块P2完全存入下部存储列Rank_1A的上部区域为止。也就是说,转换表114延迟ADDR_22至ADDR_12的物理地址转换以等待所请求数据块P2的数据迁移的完成。当存储控制器104_1接收到输出物理地址ADDR_IN’等于转换表114生成的ADDR_12时,存储控制器104_1存取下部存储列Rank_1A的上部区域中所请求的数据块P2以响应外部硬件模块发出的数据存取请求。
如果已经完成数据块P1的数据迁移后,转换表114接收到物理地址ADDR_21用以存取下部存储列Rank_2A的下部区域中的数据块P1(即,ADDR_IN等于ADDR_21),则转换表114无需延迟ADDR_21至ADDR_11的物理地址转换,并可使用下部存储列Rank_1A的上部区域中的数据块P1的物理地址ADDR_11进行回复(即,ADDR_IN’等于ADDR_11)。当存储控制器104_1接收到转换表114生成的输出物理地址ADDR_IN’时,存储控制器104_1存取下部存储列Rank_1A的上部区域中的所请求的数据块P1以响应外部硬件模块发出的数据存取请求。
如果数据块PM的数据迁移开始之前,转换表114接收到物理地址ADDR_2M用以存取下部存储列Rank_2A的下部区域中的数据块PM(即,ADDR_IN等于ADDR_2M),则转换表114无需进行任何物理地址转换,并可使用未处理的物理地址ADDR_2M进行回复(即,ADDR_IN’等于ADDR_2M)。当存储控制器104_N(N等于2)接收到转换表114生成的输出物理地址ADDR_IN’时,存储控制器104_1存取下部存储列Rank_2A的下部区域中所请求的数据块PM以响应外部硬件模块发出的数据存取请求。
假设下部存储列Rank_2A的上部未存储任何有效数据。如图2的子表(B)所示,在将下部存储列Rank_2A的下部区域中的存储数据存入下部存储列Rank_1A的上部区域后,下部存储列Rank_2A可禁用其自刷新操作并且进入DPD状态用于节省功率。既然相同存储通道CH_2中的所有存储列Rank_2A与Rank_2B皆处于DPD状态,则可将存储控制器DRAMC_2的供电关闭以节省更多功率。上述数据迁移方案可取得存储装置102中的动态通道切换,从而使得存储装置102得到强制更多存储列进入DPD状态的机会。在许多实施例中,可非动态完成上述通道切换操作。
值得注意的是,由数据存取阻挡造成的延迟大小取决于数据块的尺寸。当数据块尺寸为较小值时,本发明用于节省功耗的数据迁移方案造成的数据存取延迟并不大。当合理设定上述数据块尺寸时,在对使用计算机系统的用户体验无较大影响情况下,可取得降低存储装置功率消耗的目的。因此,在用户意识不到迁移延迟情况下,可取得动态通道切换。
图3所示的数据迁移示例仅为说明的目的,并不是对本发明的限制。在另一设计中,下部存储列Rank_2A的下部区域中安排的数据块P1-PM的顺序可不同于下部存储列Rank_1A的上部区域中安排的数据块P1-PM的顺序。另外,可根据实际设计调整数据块P1-PM的尺寸及/或数量。
在上述示例中,因为下部存储列Rank_1A的上部区域具有足够的空闲空间用于安排下部存储列Rank_2A的下部区域中的所有有效数据(或下部存储列Rank_1A的上部区域并不存在任何有效数据),数据迁移控制电路106的DMA控制器122可执行数据迁移以将存储在存储空间MS_2中的数据复制/移动至另一存储空间MS_1。在另一种情况下,如果存储装置102运行在低带宽场景下并且下部存储列Rank_1A的上部区域不具有足够的空闲空间用于安排下部存储列Rank_2A的下部区域中的所有有效数据(或下部存储列Rank_1A的上部区域被有效数据占据),则可执行上述数据迁移方案以将下部存储列Rank_2A的下部区域中存储的有效数据与下部存储列Rank_1A的上部区域中存储的有效数据进行交换。
请结合图5参考图4。图4是根据本发明第二实施例描述的存储装置中数据迁移的示意图。图5是根据本发明实施例描述的图1所示数据迁移控制电路106执行的交换操作示意图。DMA控制器112将下部存储列Rank_2A的下部区域存储的有效数据分割为多个数据块,将下部存储列Rank_1A的上部区域中存储的有效数据也分割为多个数据块,并且将下部存储列Rank_2A的下部区域与下部存储列Rank_1A的上部区域中存储的有效数据通过数据块交换操作进行交换。假设下部存储列Rank_1A的上部区域中存储的有效数据的尺寸等于下部存储列Rank_2A的下部区域中存储的有效数据的尺寸,并且使用上述相同数据块尺寸用于分割待迁移的存储数据。如图5所示,可将下部存储列Rank_2A的下部区域存储的有效数据分割为数据块P1-PM,其中数据块P1-PM分别具有块地址ADDR_21-ADDR_2M;以及可将下部存储列Rank_1A的上部区域存储的有效数据分割为数据块P1’-PM’,其中数据块P1’-PM’分别具有块地址ADDR_11-ADDR_1M。例如,数据块尺寸可是1KB、4KB、1MB、4MB或其他预设值。
既然数据块P1’-PM’占据下部存储列Rank_1A的上部区域,则DMA控制器112需要执行交换操作以避免在执行下部存储列Rank_2A的下部区域存储的数据迁移后丢失下部存储列Rank_1A的上部区域存储的数据。因此,交换操作将数据块P1-PM迁移至下部存储列Rank_1A的上部区域并且将数据块P1’-PM’迁移至下部存储列Rank_2A的下部区域。举例但不限定,DMA控制器112可将数据块P1-PM迁移至下部存储列Rank_1A的上部区域的连续块地址,以及可将数据块P1’-PM’迁移至下部存储列Rank_2A的下部区域的连续块地址。
如图5所示,DMA控制器112将块地址ADDR_11处的数据块P1’转移至缓冲器116,将块地址ADDR_21处的数据块P1转移至块地址ADDR_11处,并且将存储在缓冲器116中的数据块P1’转移至块地址ADDR_21处。可替换地,DMA控制器112将块地址ADDR_21处的数据块P1转移至缓冲器116,将块地址ADDR_11处的数据块P1’转移至块地址ADDR_21处,并且将存储在缓冲器116中的数据块P1转移至块地址ADDR_11处。这样可取得交换数据块P1与P1’的相同目的。可配置转换表114记录/更新数据块P1的原始块地址ADDR_21与数据块P1的新块地址ADDR_11之间的映射关系。在一个示例中,当完成数据块P1的数据迁移时,DMA控制器112可指示转换表114记录/更新上述映射关系。相似地,可配置转换表114记录/更新数据块P1’的原始块地址ADDR_11与数据块P1’的新块地址ADDR_21之间的映射关系。在一个示例中,当完成数据块P1’的数据迁移时,DMA控制器112指示转换表114记录/更新上述映射关系。
接着,DMA控制器112将块地址ADDR_12处的数据块P2’转移至缓冲器116,将块地址ADDR_22处的数据块P2转移至块地址ADDR_12处,并且将存储在缓冲器116中的数据块P2’转移至块地址ADDR_22处。可替换地,DMA控制器112将块地址ADDR_22处的数据块P2转移至缓冲器116,将块地址ADDR_12处的数据块P2’转移至块地址ADDR_22处,并且将存储在缓冲器116中的数据块P2转移至块地址ADDR_12处。这样可取得交换数据块P2与P2’的相同目的。可配置转换表114记录/更新数据块P2的原始块地址ADDR_22与数据块P2的新块地址ADDR_12之间的映射关系。在一个示例中,当完成数据块P2的数据迁移时,DMA控制器112可指示转换表114记录/更新上述映射关系。相似地,可配置转换表114记录/更新数据块P2’的原始块地址ADDR_12与数据块P2’的新块地址ADDR_22之间的映射关系。在一个示例中,当完成数据块P2’的数据迁移时,DMA控制器112指示转换表114记录/更新上述映射关系。
DMA控制器112可保持将下部存储列Rank_2A的下部区域中的下列数据块转移至下部存储列Rank_1A的上部区域,直到完成最后数据块PM的数据迁移为止。此外,DMA控制器112可保持将下部存储列Rank_1A的上部区域中的下列数据块转移至下部存储列Rank_2A的下部区域,直到完成最后数据块PM’的数据迁移为止。
在完成最后数据块PM与PM’的数据迁移后,转换表114具有多个列表项目,其记录下部存储列Rank_2A的下部区域中的数据块P1-PM的块地址ADDR_21-ADDR_2M与下部存储列Rank_1A的上部区域中的数据块P1-PM的块地址ADDR_11-ADDR_1M之间的映射关系,并且可进一步具有多个列表项目,其记录下部存储列Rank_1A的上部区域中的数据块P1’-PM’的块地址ADDR_11-ADDR_1M与下部存储列Rank_2A的下部区域中的数据块P1’-PM’的块地址ADDR_21-ADDR_2M之间的映射关系。
值得注意的是,当DMA控制器112正转移一个存储列中的特定数据块至另一存储列时,临时阻挡对特定数据块的任意存取请求以确保数据完整性。例如,外部硬件模块(例如,MMU)可发出对存储装置102中物理地址的存取请求用于存储目标数据。假设在数据块P2(或P2’)的数据迁移期间请求数据块P2(或P2’),则阻止数据块P2(或P2’)的数据存取,直到将数据块P2(或P2’)完全存至块地址ADDR_12(或块地址ADDR_22)为止。
在本实施例中,转换表114接收外部硬件模块生成的输入物理地址ADDR_IN,并且使用输出物理地址ADDR_IN’进行响应,然后将输出物理地址ADDR_IN’发送至至少一个存储控制器104_1-104_N。在数据块P2的数据迁移期间,如果转换表114接收物理地址ADDR_22用以存取下部存储列Rank_2A的下部区域中的数据块P2(即,ADDR_IN等于ADDR_22),那么转换表114不响应下部存储列Rank_1A的上部区域中的数据块P2的物理地址ADDR_12,直到数据块P2完全存入下部存储列Rank_1A的上部区域为止。当存储控制器104_1接收到输出物理地址ADDR_IN’等于ADDR_12后,存储控制器104_1存取下部存储列Rank_1A的上部区域中的数据块P2以响应外部硬件模块发出的数据存取请求。相似地,在数据块P2’的数据迁移期间,如果转换表114接收物理地址ADDR_12用以存取下部存储列Rank_1A的上部区域中的数据块P2’(即,ADDR_IN等于ADDR_12),那么转换表114不响应下部存储列Rank_2A的下部区域中的数据块P2’的物理地址ADDR_22,直到数据块P2’完全存入下部存储列Rank_2A的下部区域为止。当存储控制器104_N(N等于2)接收到输出物理地址ADDR_IN’等于ADDR_22后,存储控制器104_N存取下部存储列Rank_2A的下部区域中的数据块P2’以响应外部硬件模块发出的数据存取请求。
如果已经完成数据块P1的数据迁移后,转换表114接收到物理地址ADDR_21用以存取下部存储列Rank_2A的下部区域中的数据块P1(即,ADDR_IN等于ADDR_21),则转换表114无需延迟ADDR_21至ADDR_11的物理地址转换,并可使用下部存储列Rank_1A的上部区域中的数据块P1的物理地址ADDR_11进行回复(即,ADDR_IN’等于ADDR_11)。当存储控制器104_1接收到输出物理地址ADDR_IN’后,存储控制器104_1存取下部存储列Rank_1A的上部区域中的数据块P1以响应外部硬件模块发出的数据存取请求。相似地,如果已经完成数据块P1’的数据迁移后,转换表114接收到物理地址ADDR_11用以存取下部存储列Rank_1A的上部区域中的数据块P1’(即,ADDR_IN等于ADDR_11),则转换表114无需延迟ADDR_11至ADDR_21的物理地址转换,并可使用下部存储列Rank_2A的下部区域中的数据块P1’的物理地址ADDR_21进行回复(即,ADDR_IN’等于ADDR_21)。当存储控制器104_N(N等于2)接收到输出物理地址ADDR_IN’后,存储控制器104_N存取下部存储列Rank_2A的下部区域中的数据块P1’以响应外部硬件模块发出的数据存取请求。
在另一示例中,如果数据块PM的数据迁移开始之前,转换表114接收到物理地址ADDR_2M用以存取下部存储列Rank_2A的下部区域中的数据块PM(即,ADDR_IN等于ADDR_2M),则转换表114无需进行任何物理地址转换,并可使用未处理的物理地址ADDR_2M进行回复(即,ADDR_IN’等于ADDR_2M)。当存储控制器104_N(N等于2)接收到输出物理地址ADDR_IN’后,存储控制器104_N存取下部存储列Rank_2A的下部区域中的数据块PM以响应外部硬件模块发出的数据存取请求。相似地,如果数据块PM’的数据迁移开始之前,转换表114接收到物理地址ADDR_1M用以存取下部存储列Rank_1A的上部区域中的数据块PM’(即,ADDR_IN等于ADDR_1M),则转换表114无需进行任何物理地址转换,并可使用未处理的物理地址ADDR_1M进行回复(即,ADDR_IN’等于ADDR_1M)。当存储控制器104_1接收到输出物理地址ADDR_IN’后,存储控制器104_1存取下部存储列Rank_1A的上部区域中的数据块PM’以响应外部硬件模块发出的数据存取请求。
在将存储在下部存储列Rank_2A的下部区域以及下部存储列Rank_1A的上部区域的数据交换后,如图4所示的子图(B)所示,可控制存储装置102按照单通道存储器进行操作。存储控制器DRAMC_1与DRAMC_2皆可保持激活状态。然而,用于数据存取而同时激活的通道数量可减少。这样,可相应降低功率消耗。如上所示,由数据存取阻挡造成的延迟大小取决于数据块的尺寸。当数据块尺寸为较小值时,本发明用于节省功耗的数据迁移方案造成的数据存取延迟并不大。当合理设定上述数据块尺寸时,在对使用计算机系统的用户体验无较大影响情况下,可取得降低存储装置功率消耗的目的。
图5所示的数据迁移示例仅是为了说明的目的。在一替换设计中,下部存储列Rank_2A的下部区域中安排的数据块P1-PM的顺序可不同于下部存储列Rank_1A的上部区域中安排的数据块P1-PM的顺序,及/或下部存储列Rank_1A的上部区域中安排的数据块P1’-PM’的顺序可不同于下部存储列Rank_2A的下部区域中安排的数据块P1’-PM’的顺序。
在上述示例中,数据迁移可发生在级联区域与交错区域之间。然而,这仅是为了说明的目的,并不是对本发明的限制。在一替换设计中,数据迁移可发生在交错区域中不同部分之间。此外,在完成存储数据的数据迁移后,可将存储装置从真全交错模式切换至伪全交错模式。下面将详细描述技术细节。
图6是根据本发明第三实施例描述的存储装置中数据迁移示意图。假设存储装置102为双通道存储器。因此,存在MS_1与MS_2标注的两个存储空间108_1-108_N(N等于2)、CH_1与CH_2标注的两个存储通道109_1-109_N(N等于2)。在本示例中,存储空间MS_1具有上部存储列Rank_1B以及下部存储列Rank_1A,以及存储空间MS_2具有上部存储列Rank_2B以及下部存储列Rank_2A。值得注意的是,分配给存储空间中上部存储列的地址高于分配给相同存储空间中下部存储列的地址。
如图6的子图(A)所示,可将整个存储装置102配置为交错区域。当在高功率以及高带宽场景下使用存储装置102时,存储装置102可使用交错存储访问模式(例如,真全交错模式)。因此,可将一个数据组块(data chunk)分为高数据分区(DH)以及低数据分区(DL),其中可将高数据分区DH与低数据分区DL分别提交至不同的存储通道CH_1与CH_2以得到最大带宽。在本实施例中,可将高数据分区DH存储在存储通道CH_2的下部存储列Rank_2A,并且将低数据分区DL存储在存储通道CH_1的下部存储列Rank_1A。
当计算机系统进入挂起模式/待机模式或将存储装置102从高功率以及高带宽场景切换至低功率以及低带宽场景时,可启动上述数据迁移方案以将存储数据从一个存储空间转移至另一存储空间用以减少同时激活的存储通道数量。例如,如图6的子图(B)所示,DMA控制器112可将包含高数据分区DH的存储数据从下部存储列Rank_2A转移至上部存储列Rank_1B。
因此,在数据迁移控制电路106控制执行下部存储列Rank_2A中存储数据的数据迁移后,可将相同数据组块的高数据分区DH与低数据分区DL存储在相同存储通道CH_1的不同存储列Rank_1A与Rank_1B中。在本示例中,既然在某一时刻仅有一个存储通道处于激活状态,可控制存储装置102像单通道存储器一样进行操作。进一步地,存储装置102可使用另一交错存储访问模式(例如,伪全交错模式)以模拟原始全交错数据处理。
在数据迁移为上述复制/移动操作情况下,并且当上述数据迁移完成后存储空间不具有有效数据时,存储列Rank_2A与Rank_2B皆进入DPD状态,并且可关闭存储空间MS_2的存储控制器104_N(N等于2)的供电。在数据迁移是上述交换操作情况下,由于存储装置102类似于单通道存储器,则同时激活用于数据存取的通道数量相应减少。在这种情况下可降低功率消耗。此外,本发明的基于数据块的数据迁移方案可缓解或避免用户感知迁移延迟。
图7是根据本发明第四实施例描述的存储装置中数据迁移示意图。假设存储装置102为四通道存储器。因此,存在MS_1、MS_2、MS_3与MS_4标注的四个存储空间108_1-108_N(N等于4)、CH_1、CH_2、CH_3与CH_4标注的四个存储通道109_1-109_N(N等于4)。在本示例中,存储空间MS_1具有上部存储列Rank_1B以及下部存储列Rank_1A,存储空间MS_2具有上部存储列Rank_2B以及下部存储列Rank_2A,存储空间MS_3具有上部存储列Rank_3B以及下部存储列Rank_3A以及存储空间MS_4具有上部存储列Rank_4B以及下部存储列Rank_4A。值得注意的是,分配给存储空间中上部存储列的地址高于分配给相同存储空间中下部存储列的地址。
如图7的子图(A)所示,可将整个存储装置102配置为交错区域。当在高功率以及高带宽场景下使用存储装置102时,存储装置102可使用交错存储访问模式(例如,真全交错模式)。因此,可将一个数据组块分为高数据分区DH、中高数据分区DMH、中低数据分区DML以及低数据分区DL,其中可将高数据分区DH、中高数据分区DMH、中低数据分区DML以及低数据分区DL分别提交至不同的存储通道CH_1-CH_4以得到最大带宽。在本实施例中,可将高数据分区DH存储在存储通道CH_4的下部存储列Rank_4A,可将中高数据分区DMH存储在存储通道CH_3的下部存储列Rank_3A,可将中低数据分区DML存储在存储通道CH_2的下部存储列Rank_2A,并且将低数据分区DL存储在存储通道CH_1的下部存储列Rank_1A。
当计算机系统进入挂起模式/待机模式或将存储装置102从高功率以及高带宽场景切换至低功率以及低带宽场景时,可启动上述数据迁移方案以将存储数据从一个存储空间转移至另一存储空间用以减少同时激活的存储通道数量。例如,如图7的子图(B)所示,DMA控制器112可将包含高数据分区DH的存储数据从下部存储列Rank_4A转移至上部存储列Rank_2B,以及将包含中高数据分区DMH的存储数据从下部存储列Rank_3A转移至上部存储列Rank_1B。因此,可将相同数据组块的高数据分区DH与中低数据分区DML存储在相同存储通道CH_2的不同存储列Rank_2B与Rank_2A中,以及可将相同数据组块的中高数据分区DMH与低数据分区DL存储在相同存储通道CH_1的不同存储列Rank_1B与Rank_1A中。在本示例中,既然在某一时刻仅有两个存储通道处于激活状态,可控制存储装置102像双通道存储器一样进行操作。进一步地,存储装置102可使用另一交错存储访问模式(例如,伪全交错模式)以模拟原始全交错数据处理。
在数据迁移为上述复制/移动操作情况下,并且当上述数据迁移完成后存储空间MS_3与MS_4不具有有效数据时,存储列Rank_3A、Rank_3B、Rank_4A与Rank_4B皆进入DPD状态,并且可关闭存储空间MS_3与MS_4的相关存储控制器104_N-1与104_N(N等于4)的供电。在数据迁移是上述交换操作情况下,由于存储装置102类似于双通道存储器,则同时激活用于数据存取的通道数量相应减少。在这种情况下可降低功率消耗。此外,本发明的基于数据块的数据迁移方案可缓解或避免用户感知迁移延迟。
图8是根据本发明第五实施例描述的存储装置中数据迁移示意图。假设存储装置102为四通道存储器。因此,存在MS_1、MS_2、MS_3与MS_4标注的四个存储空间108_1-108_N(N等于4)、CH_1、CH_2、CH_3与CH_4标注的四个存储通道109_1-109_N(N等于4)。图7与图8所示的数据迁移操作的最大不同在于在完成图8所示的数据迁移操作后可控制存储装置102类似单通道存储器进行操作。
当在高功率以及高带宽场景下使用存储装置102时,存储装置102可使用交错存储访问模式(例如,真全交错模式)。如图8的子图(A)所示,可将高数据分区DH、中高数据分区DMH、中低数据分区DML以及低数据分区DL分别提交至不同的存储通道CH_1-CH_4以得到最大带宽。
当计算机系统进入挂起模式/待机模式或将存储装置102从高功率以及高带宽场景切换至低功率以及低带宽场景时,可启动上述数据迁移方案以将存储数据从一个存储空间转移至另一存储空间。例如,DMA控制器112可将包含高数据分区DH的存储数据从下部存储列Rank_4A转移至上部存储列Rank_1B的上部区域,以及将包含中高数据分区DMH的存储数据从下部存储列Rank_3A转移至上部存储列Rank_1B的下部区域,以及将包含中低数据分区DML的存储数据从下部存储列Rank_2A转移至下部存储列Rank_1A的上部区域。如图8的子图(B)所示,可将相同数据组块的高数据分区DH与中高数据分区DMH存储在存储通道CH_1的一个存储列Rank_1B,并且将相同数据组块的中低数据分区DML与低数据分区DL存储在相同存储通道CH_1的另一个存储列Rank_1A中。在本示例中,既然在某一时刻仅有一个存储通道处于激活状态,可控制存储装置102像单通道存储器一样进行操作。进一步地,存储装置102可使用另一交错存储访问模式(例如,伪全交错模式)以模拟原始全交错数据处理。
在数据迁移为上述复制/移动操作情况下,并且当上述数据迁移完成后存储空间MS_2、MS_3与MS_4不具有有效数据时,存储列Rank_2A、Rank_2B、Rank_3A、Rank_3B、Rank_4A与Rank_4B皆进入DPD状态,并且可关闭存储空间MS_2、MS_3与MS_4的相关存储控制器104_2、104_N-1与104_N(N等于4)的供电。在数据迁移是上述交换操作情况下,由于存储装置102类似于单通道存储器,则同时激活用于数据存取的通道数量相应减少。在这种情况下可降低功率消耗。此外,本发明的基于数据块的数据迁移方案可缓解或避免用户感知迁移延迟。
如上所示,当转换表114接收的物理地址用于请求的数据块是当前正从一个存储空间转移至另一存储空间时,转换表114可延迟外部硬件模块发出的接收物理地址的地址转换。可替换地,在存储数据从一个存储空间至另一存储空间的数据转移期间,可使用存储指针控制所请求数据块的数据存取。接下来将对此进行详细描述。
图9是根据本发明实施例描述的数据迁移控制电路另一设计示意图。可使用图9所示的数据迁移控制电路900替换图1所示的数据迁移控制电路106。在本实施例中,数据迁移控制电路900包含数据块存取控制器902以及DMA控制器112。如上所述,DMA控制器112将存储数据划分为多个数据块,并且通过DMA模式将数据块从一个存储空间转移至另一存储空间。对于数据块存取控制器902,其存储一个迁移指针PTR1或多个迁移指针PTR1-PTRn,其中DMA控制器112可维护每个迁移指针用于指示目前正在迁移的数据块所要迁移至的存储空间中迁移区域的位置(或目前正在迁移的数据块来自于的存储空间中迁移区域的位置)。换句话说,当DMA控制器112完成当前数据块的数据迁移时并且开始另一数据块的数据迁移之前,DMA控制器112指示数据块存取控制器902更新迁移指针。值得注意的是,迁移指针PTR1-PTRn的数量取决于DMA控制器112使用的数据迁移方案以及存储通道数量。
举例但不限制,迁移指针可指示当前DMA位置,其中上述当前DMA位置是DMA控制器112当前正操作的位置,并且与当前DMA位置关联的迁移区域的尺寸等于DMA单元尺寸(例如,一个数据块尺寸)。因此,可配置数据块存取控制器902检查迁移指针(例如,PTR1)以确定所请求数据块是否为当前正在迁移的数据块,其中上述当前正在迁移的数据块是迁移至迁移指针所指的迁移区域或者是来自于迁移指针所指的迁移区域。当确定所请求数据块是迁移至迁移区域或来自于迁移区域的当前正在迁移的数据块时,数据块存取控制器902阻止所请求数据块的数据存取,直到完全将所请求数据块存入迁移区域或完全从迁移区域复制或移动出所请求数据块为止。
图10是根据本发明实施例描述的基于一个迁移指针的数据存取控制方案示意图,其用于将存储数据从一个存储空间转移至另一存储空间期间。对于图6所示的示例数据迁移操作,DMA控制器112维护数据块存取控制器902中的一个迁移指针PTR1以指示哪个数据块已经迁移以及哪个数据块还未迁移。在本实施例中,可将下部存储列Rank_2A中存储数据的数据块连续迁移至上部存储列Rank_1B并且连续保存入上部存储列Rank_1B。即,对于下部存储列Rank_2A中的任意两个连续数据块,在下部存储列Rank_2A中具有第二块地址的第二数据块之前,迁移下部存储列Rank_2A中具有第一块地址的第一数据块,其中第一块地址与第二块地址是下部存储列Rank_2A中紧邻的块地址。例如,第一块地址低于第二块地址。进一步地,可将第一数据块迁移至上部存储列Rank_1B中的第三块地址处,并且将第二数据块迁移至上部存储列Rank_1B中的第四块地址处,其中第三块地址与第四块地址是上部存储列Rank_1B中紧邻的块地址。例如,第三块地址低于第四块地址。为了避免DMA控制器112与外部硬件模块的竞争情形,迁移指针PTR1指向的迁移区域MZ1可定义为DMA控制器112正操作的小区域。
如图10所示,当DMA控制器112正转移数据块(例如,图6所示的高数据分区DH)时,DMA控制器112更新迁移指针PTR1以合理定义迁移区域MZ1。因此,数据块存取控制器902可参考迁移指针PTR1以获知迁移区域MZ1的地址范围。既然将下部存储列Rank_2A中存储数据的数据块连续迁移至上部存储列Rank_1B并且连续保存入上部存储列Rank_1B,所以迁移区域MZ1上方的存储区域不具有所迁移数据块,以及迁移区域MZ1下方的存储区域已经存储有已迁移的数据块。
当外部硬件模块请求已迁移至迁移区域MZ1下方的存储区域的数据时,数据块存取控制器902不阻止所请求数据的数据存取,从而使得在迁移区域MZ1下方的存储区域立即存取所请求的数据。当外部硬件模块请求未迁移至迁移区域MZ1上方的存储区域的数据时,数据块存取控制器902不阻止所请求数据的数据存取,从而使得立即存取在下部存储列Rank_2A中所请求的数据。当外部硬件模块请求当前正在迁移至迁移区域MZ1的数据时,数据块存取控制器902阻止所请求数据的数据存取,直到将当前数据块(例如,高数据分区DH)完全存入迁移区域MZ1为止。
在本实施例中,可将上述迁移区域MZ1定义为迁移目的地。例如,当将下部存储列Rank_2A中所存数据的数据块连续迁移至上部存储列Rank_1B并且连续存入上部存储列Rank_1B时,图10中迁移指针PTR1指向的迁移区域MZ1可定义为迁移目的地(即,上部存储列Rank_1B)。
在一替换实施例中,可将上述迁移区域MZ1定义为迁移源。例如,当将上部存储列Rank_1B中所存数据的数据块连续迁移至下部存储列Rank_1A并且连续存入下部存储列Rank_1A时,图10中迁移指针PTR1指向的迁移区域MZ1可定义为迁移源(即,上部存储列Rank_1B)。上述方法可使用迁移区域MZ1达到避免DMA控制器112与外部硬件模块的竞争的相同目的。
请结合图7参考图11。图11是根据本发明实施例描述的基于迁移指针的另一数据存取控制方案示意图,其用于将存储数据从一个存储空间转移至另一存储空间期间。对于图7所示的示例数据迁移操作,DMA控制器112维护数据块存取控制器902中的一个迁移指针PTR1以指示哪个数据块已经迁移以及哪个数据块还未迁移。在本实施例中,可将下部存储列Rank_3A中存储数据的数据块连续迁移至上部存储列Rank_1B并且连续保存入上部存储列Rank_1B;以及将下部存储列Rank_4A中存储数据的数据块连续迁移至上部存储列Rank_2B并且连续保存入上部存储列Rank_2B。相似地,为了避免DMA控制器112与外部硬件模块(例如,MMU)的竞争,迁移指针PTR1指向的迁移区域MZ1可定义为DMA控制器112正操作的上部存储列Rank_1B中的小区域;以及迁移指针PTR1也指向的迁移区域MZ2可定义为DMA控制器112正操作的上部存储列Rank_2B中的小区域。
如图11所示,当DMA控制器112正转移数据块(例如,中高数据分区DMH以及高数据分区DH)时,DMA控制器112更新迁移指针PTR1以合理定义存储列Rank_1B与Rank_2B中的迁移区域MZ1以及MZ2。因此,数据块存取控制器902可参考迁移指针PTR1以获知每个迁移区域MZ1以及MZ2的地址范围。既然将下部存储列Rank_3A中存储数据的数据块连续迁移至上部存储列Rank_1B并且连续保存入上部存储列Rank_1B,以及将下部存储列Rank_4A中存储数据的数据块连续迁移至上部存储列Rank_2B并且连续保存入上部存储列Rank_2B,所以迁移区域MZ1上方的存储区域与迁移区域MZ2上方的存储区域不具有所迁移数据块,以及迁移区域MZ1下方的存储区域与迁移区域MZ2下方的存储区域已经存储有已迁移的数据块。
当外部硬件模块请求已迁移至迁移区域MZ1/MZ2下方的存储区域的数据时,数据块存取控制器902不阻止所请求数据的数据存取,从而使得在迁移区域MZ1/MZ2下方的存储区域立即存取所请求的数据。当外部硬件模块请求未迁移至迁移区域MZ1/MZ2上方的存储区域的数据时,数据块存取控制器902不阻止所请求数据的数据存取,从而使得立即存取在下部存储列Rank_3A/Rank_4A中所请求的数据。当外部硬件模块请求当前正在迁移至迁移区域MZ1/MZ2的数据时,数据块存取控制器902阻止所请求数据的数据存取,直到将当前数据块DMH/DH(例如,高数据分区DH)完全存入迁移区域MZ1/MZ2为止。
在本实施例中,可将上述迁移区域MZ1以及MZ2定义为迁移目的地。例如,当将下部存储列Rank_3A中所存数据的数据块连续迁移至上部存储列Rank_1B并且连续存入上部存储列Rank_1B,以及将下部存储列Rank_4A中所存数据的数据块连续迁移至上部存储列Rank_2B并且连续存入上部存储列Rank_2B时,图11中迁移指针PTR1指向的迁移区域MZ1以及MZ2可定义为迁移目的地(即,上部存储列Rank_1B与Rank_2B)。
在一替换实施例中,可将上述迁移区域MZ1以及MZ2定义为迁移源。例如,当将上部存储列Rank_1B中所存数据的数据块连续迁移至下部存储列Rank_3A并且连续存入下部存储列Rank_3A,以及将上部存储列Rank_2B中所存数据的数据块连续迁移至下部存储列Rank_4A并且连续存入下部存储列Rank_4A时,图11中迁移指针PTR1指向的迁移区域MZ1以及MZ2可定义为迁移源(即,上部存储列Rank_1B与Rank_2B)。上述方法可使用迁移区域MZ1以及MZ2达到避免DMA控制器112与外部硬件模块的竞争的相同目的。
请结合图8参考图12。图12是根据本发明实施例描述的基于迁移指针的另一数据存取控制方案示意图,其用于将存储数据从一个存储空间转移至另一存储空间期间。对于图8所示的示例数据迁移操作,DMA控制器112维护数据块存取控制器902中的多个迁移指针PTR1、PTR2、PTR3以指示哪个数据块已经迁移以及哪个数据块还未迁移。在本实施例中,可将下部存储列Rank_2A的下部区域中存储数据的数据块连续迁移至下部存储列Rank_1A的上部区域并且连续保存入下部存储列Rank_1A的上部区域;以及将下部存储列Rank_3A的下部区域中存储数据的数据块连续迁移至上部存储列Rank_1B的下部区域并且连续保存入上部存储列Rank_1B的下部区域;以及将下部存储列Rank_4A的下部区域中存储数据的数据块连续迁移至上部存储列Rank_1B的上部区域并且连续保存入上部存储列Rank_1B的上部区域。相似地,为了避免DMA控制器112与外部硬件模块的竞争,迁移指针PTR1指向的迁移区域MZ1可定义为DMA控制器112正操作的下部存储列Rank_1A的上部区域中的小区域;迁移指针PTR2指向的迁移区域MZ2可定义为DMA控制器112正操作的上部存储列Rank_1B的下部区域中的小区域;以及迁移指针PTR3指向的迁移区域MZ3可定义为DMA控制器112正操作的上部存储列Rank_1B的上部区域中的小区域。
如图12所示,当DMA控制器112正转移数据块(例如,中低数据分区DML、中高数据分区DMH以及高数据分区DH)时,DMA控制器112更新迁移指针PTR1-PTR3以合理定义存储列Rank_1B与Rank_1A中的迁移区域MZ1-MZ3。因此,数据块存取控制器902可参考迁移指针PTR1-PTR3以获知每个迁移区域MZ1-MZ3的地址范围,并且控制所请求数据的数据存取。
在本实施例中,可将上述迁移区域MZ1-MZ3定义为迁移目的地。例如,当将下部存储列Rank_2A的下部区域中所存数据的数据块连续迁移至下部存储列Rank_1A的上部区域并且连续存入下部存储列Rank_1A的上部区域,将下部存储列Rank_3A的下部区域中所存数据的数据块连续迁移至上部存储列Rank_1B的下部区域并且连续存入上部存储列Rank_1B的下部区域,以及将下部存储列Rank_4A的下部区域中所存数据的数据块连续迁移至上部存储列Rank_1B的上部区域并且连续存入上部存储列Rank_1B的上部区域时,图12中迁移指针PTR1-PTR3指向的迁移区域MZ1-MZ3可定义为迁移目的地(即,上部存储列Rank_1B与下部存储列Rank_1A)。
在一替换实施例中,可将上述迁移区域MZ1-MZ3定义为迁移源。例如,当将下部存储列Rank_1A的上部区域中所存数据的数据块连续迁移至下部存储列Rank_2A的下部区域并且连续存入下部存储列Rank_2A的下部区域,将上部存储列Rank_1B的下部区域中所存数据的数据块连续迁移至下部存储列Rank_3A的下部区域并且连续存入下部存储列Rank_3A的下部区域,以及将上部存储列Rank_1B的上部区域中所存数据的数据块连续迁移至下部存储列Rank_4A的下部区域并且连续存入下部存储列Rank_4A的下部区域时,图12中迁移指针PTR1-PTR3指向的迁移区域MZ1-MZ3可定义为迁移源(即,上部存储列Rank_1B与下部存储列Rank_1A)。上述方法可使用迁移区域MZ1-MZ3达到避免DMA控制器112与外部硬件模块的竞争的相同目的。
呈现上述描述以允许本领域技术人员根据特定应用以及其需要的内容实施本发明。所述实施例的各种修改对于本领域技术人员来说是显而易见的,并且可将上述定义的基本原则应用于其他实施例。因此,本发明不局限于所述的特定实施例,而是符合与揭露的原则及新颖特征相一致的最宽范围。在上述细节描述中,为了提供对本发明的彻底理解,描述了各种特定细节。然而,本领域技术人员可以理解本发明是可实施的。
在不脱离本发明精神或本质特征的情况下,可以其他特定形式实施本发明。描述示例被认为说明的所有方面并且无限制。因此,本发明的范围由权利要求书指示,而非前面描述。所有在权利要求等同的方法与范围中的变化皆属于本发明的涵盖范围。
Claims (26)
1.一种存储系统,包含:
存储装置,包含分别通过多个存储通道存取的多个存储空间;以及
数据迁移控制电路,配置该数据迁移控制电路控制将该多个存储空间的第二存储空间中的第一存储数据迁移至该多个存储空间的第一存储空间,其中,当执行该第一存储数据的第一数据块的数据迁移期间请求该第一数据块时,进一步配置该数据迁移控制电路阻止该第一数据块的数据存取,直到完全将该第一数据块存入该第一存储空间为止,其中,该第一数据块的尺寸小于该第一存储数据的尺寸。
2.如权利要求1所述的存储系统,其特征在于,配置该数据迁移控制电路交换该第二存储空间中的该第一存储数据与该第一存储空间中的第二存储数据;并且当执行该第二存储数据的第二数据块从该第一存储空间至该第二存储空间的数据迁移期间请求该第二数据块时,进一步配置该数据迁移控制电路阻止该第二数据块的数据存取,直到将该第二数据块完全存入该第二存储空间为止,其中,该第二数据块的尺寸小于该第二存储数据的尺寸。
3.如权利要求1所述的存储系统,其特征在于,该第一存储空间与该第二存储空间的每一个包含第一存储列与第二存储列,并且分配至该第一存储列的存储地址低于分配至该第二存储列的存储地址;以及配置该数据迁移控制电路控制该第一存储数据从该第二存储空间的该第一存储列迁移至该第一存储空间的该第一存储列。
4.如权利要求3所述的存储系统,其特征在于,该第一存储空间的该第一存储列进一步具有第二存储数据;并且在执行该第一存储数据的数据迁移前,依据级联存储器存取模式或交错存储器存取模式将该第一存储数据与该第二存储数据存入该第二存储空间与该第一存储空间。
5.如权利要求1所述的存储系统,其特征在于,该第一存储空间与该第二存储空间的每一个包含第一存储列与第二存储列,并且分配至该第一存储列的存储地址低于分配至该第二存储列的存储地址;以及配置该数据迁移控制电路控制该第一存储数据从该第二存储空间的该第一存储列迁移至该第一存储空间的该第二存储列。
6.如权利要求5所述的存储系统,其特征在于,该第一存储空间的该第一存储列进一步具有第二存储数据;并且在执行该第一存储数据的数据迁移前,依据交错存储器存取模式将该第一存储数据与该第二存储数据存入该第二存储空间与该第一存储空间。
7.如权利要求1所述的存储系统,其特征在于,该数据迁移控制电路包含:
直接存储器存取控制器,配置以将该第一存储数据分割为多个数据块,并且将该多个数据块从该第二存储空间转移至该第一存储空间;以及
转换表,配置以记录该第二存储空间中该多个数据块的原始地址与该第一存储空间中该多个数据块的新地址之间的映射关系。
8.如权利要求7所述的存储系统,其特征在于,当在该第二存储空间中该第一数据块的该数据迁移期间接收该第一数据块的物理地址时,该转换表不使用该第一存储空间中该第一数据块的物理地址进行响应,直到将该第一数据块完全存入该第一存储空间为止。
9.如权利要求7所述的存储系统,其特征在于,该直接存储器存取控制器包含缓冲器,在配置该直接存储器存取控制器将该第二存储数据分割为多个第二数据块并且将该多个第二数据块从该第一存储空间转移至该第二存储空间情况下,当将该第二存储空间中的该多个数据块转移至该第一存储空间之前,配置该缓冲器用于暂时保存该第一存储空间中的该多个第二数据块的至少一个。
10.如权利要求9所述的存储系统,其特征在于,该多个数据块的数量等于该多个第二数据块的数量,并且该缓冲器的尺寸等于至少一个数据块的尺寸。
11.如权利要求1所述的存储系统,其特征在于,该数据迁移控制电路包含:
直接存储器存取控制器,配置以将该第一存储数据分割为多个数据块,并且将该多个数据块从该第二存储空间转移至该第一存储空间;以及
数据块存取控制器,配置以存储至少一个迁移指针,其中该直接存储器存取控制器维护该至少一个迁移指针以指示该直接存储器存取控制器当前正操作的迁移区域的位置;以及该迁移区域位于该第一存储空间与该第二存储空间的至少一个中。
12.如权利要求11所述的存储系统,其特征在于,该迁移区域位于该第一存储空间中;进一步配置该数据块存取控制器以检查该至少一个迁移指针从而确定是否正在将请求的该第一数据块迁移至该至少一个迁移指针指向的该迁移区域;以及当确定正在将该第一数据块迁移至该迁移区域时,进一步配置该数据块存取控制器阻止该第一数据块的数据存取,直到将该第一数据块完全存入该迁移区域为止。
13.如权利要求11所述的存储系统,其特征在于,该迁移区域位于该第二存储空间中;进一步配置该数据块存取控制器以检查该至少一个迁移指针从而确定是否正在将请求的该第一数据块从该至少一个迁移指针指向的该迁移区域迁移出;以及当确定正在将该第一数据块从该迁移区域迁移出时,进一步配置该数据块存取控制器阻止该第一数据块的数据存取,直到将该第一数据块从该迁移区域完全复制或移出为止。
14.一种管理存储装置的方法,其中该存储装置包含分别通过多个存储通道存取的多个存储空间,该管理存储装置的方法包含:
控制将该多个存储空间的第二存储空间中的第一存储数据迁移至该多个存储空间的第一存储空间;以及
当执行该第一存储数据的第一数据块的数据迁移期间请求该第一数据块时,阻止该第一数据块的数据存取,直到完全将该第一数据块存入该第一存储空间为止,其中,该第一数据块的尺寸小于该第一存储数据的尺寸。
15.如权利要求14所述的管理存储装置的方法,其特征在于,该控制将该多个存储空间的该第二存储空间中的该第一存储数据迁移至该多个存储空间的该第一存储空间的步骤包含:
交换该第二存储空间中的该第一存储数据与该第一存储空间中的第二存储数据;以及
该管理存储装置的方法另包含:当执行该第二存储数据的第二数据块从该第一存储空间至该第二存储空间的数据迁移期间请求该第二数据块时,阻止该第二数据块的数据存取,直到将该第二数据块完全存入该第二存储空间为止,其中,该第二数据块的尺寸小于该第二存储数据的尺寸。
16.如权利要求14所述的管理存储装置的方法,其特征在于,该第一存储空间与该第二存储空间的每一个包含第一存储列与第二存储列,并且分配至该第一存储列的存储地址低于分配至该第二存储列的存储地址;以及该控制将该多个存储空间的该第二存储空间中的该第一存储数据迁移至该多个存储空间的该第一存储空间的步骤包含:控制该第一存储数据从该第二存储空间的该第一存储列迁移至该第一存储空间的该第一存储列。
17.如权利要求16所述的管理存储装置的方法,其特征在于,该第一存储空间的该第一存储列进一步具有第二存储数据;并且该管理存储装置的方法进一步包含:在执行该第一存储数据的数据迁移前,依据级联存储器或交错存储器存取模式存取模式将该第一存储数据与该第二存储数据存入该第二存储空间与该第一存储空间。
18.如权利要求14所述的管理存储装置的方法,其特征在于,该第一存储空间与该第二存储空间的每一个包含第一存储列与第二存储列,并且分配至该第一存储列的存储地址低于分配至该第二存储列的存储地址;以及该控制将该多个存储空间的该第二存储空间中的该第一存储数据迁移至该多个存储空间的该第一存储空间的步骤包含:控制该第一存储数据从该第二存储空间的该第一存储列迁移至该第一存储空间的该第二存储列。
19.如权利要求18所述的管理存储装置的方法,其特征在于,该第一存储空间的该第一存储列进一步具有第二存储数据;并且该管理存储装置的方法进一步包含:在执行该第一存储数据的数据迁移前,依据交错存储器存取模式将该第一存储数据与该第二存储数据存入该第二存储空间与该第一存储空间。
20.如权利要求14所述的管理存储装置的方法,其特征在于,该控制将该多个存储空间的该第二存储空间中的该第一存储数据迁移至该多个存储空间的该第一存储空间的步骤包含:
将该第一存储数据分割为多个数据块,并且将该多个数据块通过直接存储器存取从该第二存储空间转移至该第一存储空间;以及
该管理存储装置的方法进一步包含:利用转换表记录该第二存储空间中该多个数据块的原始地址与该第一存储空间中该多个数据块的新地址之间的映射关系。
21.如权利要求20所述的管理存储装置的方法,其特征在于,该阻止该第一数据块的数据存取的步骤包含:当在该第二存储空间中该第一数据块的该数据迁移期间接收该第一数据块的物理地址时,阻止该转换表使用该第一存储空间中该第一数据块的物理地址进行响应,直到将该第一数据块完全存入该第一存储空间为止。
22.如权利要求14所述的管理存储装置的方法,其特征在于,该控制将该多个存储空间的该第二存储空间中的该第一存储数据迁移至该多个存储空间的该第一存储空间的步骤包含:
将该第一存储数据分割为多个数据块,并且将该多个数据块通过直接存储器存取从该第二存储空间转移至该第一存储空间;以及
该管理存储装置的方法进一步包含:存储至少一个迁移指针,其中该至少一个迁移指针用以指示该直接存储器存取当前正操作的迁移区域的位置;以及该迁移区域位于该第一存储空间与该第二存储空间的至少一个中。
23.如权利要求22所述的管理存储装置的方法,其特征在于,该迁移区域位于该第一存储空间中;并且该阻止该第一数据块的数据存取的步骤包含:检查该至少一个迁移指针从而确定是否正在将请求的该第一数据块迁移至该至少一个迁移指针指向的该迁移区域;以及当确定正在将该第一数据块迁移至该迁移区域时,阻止该第一数据块的数据存取,直到将该第一数据块完全存入该迁移区域为止。
24.如权利要求22所述的管理存储装置的方法,其特征在于,该迁移区域位于该第二存储空间中;并且该阻止该第一数据块的数据存取的步骤包含:检查该至少一个迁移指针从而确定是否正在将请求的该第一数据块从该至少一个迁移指针指向的该迁移区域迁移出;以及当确定正在将该第一数据块从该迁移区域迁移出时,阻止该第一数据块的数据存取,直到将该第一数据块从该迁移区域完全复制或移出为止。
25.一种存储系统,包含:
存储装置,包含分别通过多个存储通道存取的多个存储空间;以及
数据迁移控制电路,配置该数据迁移控制电路检测该存储装置是否从第一带宽场景切换至第二带宽场景,并且当检测到该存储装置从该第一带宽场景切换至该第二带宽场景时,进一步配置该数据迁移控制电路控制将该多个存储空间的第二存储空间中的第一存储数据迁移至该多个存储空间的第一存储空间,其中,该第一带宽场景与该第二带宽场景具有不同的存储带宽需求。
26.一种管理存储装置的方法,其中该存储装置包含分别通过多个存储通道存取的多个存储空间,该管理存储装置的方法包含:
检测该存储装置是否从第一带宽场景切换至第二带宽场景,其中,该第一带宽场景与该第二带宽场景具有不同的存储带宽需求;以及
当检测到该存储装置从该第一带宽场景切换至该第二带宽场景时,控制将该多个存储空间的第二存储空间中的第一存储数据迁移至该多个存储空间的第一存储空间。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562162944P | 2015-05-18 | 2015-05-18 | |
US62/162,944 | 2015-05-18 | ||
US14/736,261 US10002072B2 (en) | 2015-05-18 | 2015-06-10 | Method and apparatus for controlling data migration in multi-channel memory device |
US14/736,261 | 2015-06-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106168882A true CN106168882A (zh) | 2016-11-30 |
Family
ID=57324797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510783724.2A Withdrawn CN106168882A (zh) | 2015-05-18 | 2015-11-16 | 管理存储装置的方法及其存储系统 |
Country Status (2)
Country | Link |
---|---|
US (2) | US10002072B2 (zh) |
CN (1) | CN106168882A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109213434A (zh) * | 2017-07-04 | 2019-01-15 | 慧荣科技股份有限公司 | 数据储存装置以及其操作方法 |
CN109582242A (zh) * | 2018-12-04 | 2019-04-05 | 北京和讯永源科技有限公司 | 级联存储阵列系统的地址确定方法、装置、电子设备 |
CN111199761A (zh) * | 2018-11-19 | 2020-05-26 | 美光科技公司 | 数据迁移动态随机存取存储器 |
CN111475010A (zh) * | 2019-01-23 | 2020-07-31 | 联发科技股份有限公司 | 管线式处理器及节电方法 |
US11163473B2 (en) | 2018-11-19 | 2021-11-02 | Micron Technology, Inc. | Systems, devices, techniques, and methods for data migration |
US11182090B2 (en) | 2018-11-19 | 2021-11-23 | Micron Technology, Inc. | Systems, devices, and methods for data migration |
US11256437B2 (en) | 2018-11-19 | 2022-02-22 | Micron Technology, Inc. | Data migration for memory operation |
CN114489490A (zh) * | 2021-12-31 | 2022-05-13 | 浙江大华技术股份有限公司 | 数据迁移方法及装置 |
WO2022179368A1 (zh) * | 2021-02-26 | 2022-09-01 | 华为技术有限公司 | 优化闪存颗粒的方法和相关装置 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102535700B1 (ko) * | 2016-02-01 | 2023-05-24 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
US10467028B2 (en) * | 2017-03-21 | 2019-11-05 | Intel Corporation | Technologies for memory margin aware reliable software execution |
KR102482896B1 (ko) * | 2017-12-28 | 2022-12-30 | 삼성전자주식회사 | 이종 휘발성 메모리 칩들을 포함하는 메모리 장치 및 이를 포함하는 전자 장치 |
TWI730332B (zh) * | 2019-05-27 | 2021-06-11 | 瑞昱半導體股份有限公司 | 處理系統與控制方法 |
CN112631954A (zh) * | 2019-10-09 | 2021-04-09 | 联想企业解决方案(新加坡)有限公司 | 可扩展的双列直插式内存模块 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050154849A1 (en) * | 2004-01-13 | 2005-07-14 | Naoki Watanabe | Data-migration method |
US20050246508A1 (en) * | 2004-04-28 | 2005-11-03 | Shaw Mark E | System and method for interleaving memory |
CN101118477A (zh) * | 2007-08-24 | 2008-02-06 | 成都索贝数码科技股份有限公司 | 一种提高磁盘数据访问效率的方法 |
US20100220536A1 (en) * | 2009-02-27 | 2010-09-02 | International Business Machines Corporation | Advanced memory device having reduced power and improved performance |
CN102136003A (zh) * | 2011-03-25 | 2011-07-27 | 上海交通大学 | 大规模分布式存储系统 |
US20130268739A1 (en) * | 2011-12-01 | 2013-10-10 | Saurabh Gupta | Hardware based memory migration and resilvering |
CN103620580A (zh) * | 2011-04-28 | 2014-03-05 | 网络存储技术公司 | 用于数据副本的迁移的系统和方法 |
CN103858092A (zh) * | 2013-12-19 | 2014-06-11 | 华为技术有限公司 | 一种数据迁移方法和装置 |
US20140201482A1 (en) * | 2013-01-15 | 2014-07-17 | International Busliness Machines Corporation | Selecting first data sets in a first storage group to swap with second data sets in a second storage group |
US20150012567A1 (en) * | 2013-07-02 | 2015-01-08 | Hitachi Data Systems Engineering UK Limited | Method and apparatus for migration of a virtualized file system, data storage system for migration of a virtualized file system, and file server for use in a data storage system |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6212599B1 (en) | 1997-11-26 | 2001-04-03 | Intel Corporation | Method and apparatus for a memory control system including a secondary controller for DRAM refresh during sleep mode |
US7571295B2 (en) | 2005-08-04 | 2009-08-04 | Intel Corporation | Memory manager for heterogeneous memory control |
US20080005516A1 (en) | 2006-06-30 | 2008-01-03 | Meinschein Robert J | Memory power management through high-speed intra-memory data transfer and dynamic memory address remapping |
US8095725B2 (en) | 2007-12-31 | 2012-01-10 | Intel Corporation | Device, system, and method of memory allocation |
GB2466264A (en) | 2008-12-17 | 2010-06-23 | Symbian Software Ltd | Memory defragmentation and compaction into high priority memory banks |
US8589650B2 (en) | 2010-05-17 | 2013-11-19 | Texas Instruments Incorporated | Dynamically configurable memory system |
US20110296095A1 (en) | 2010-05-25 | 2011-12-01 | Mediatek Inc. | Data movement engine and memory control methods thereof |
US8380940B2 (en) | 2010-06-25 | 2013-02-19 | Qualcomm Incorporated | Multi-channel multi-port memory |
EP2620838B1 (en) | 2012-01-26 | 2015-04-22 | ST-Ericsson SA | Automatic partial array self-refresh |
US9086882B2 (en) | 2012-08-07 | 2015-07-21 | International Business Machines Corporation | DRAM energy use optimization using application information |
US9542106B2 (en) * | 2014-04-02 | 2017-01-10 | International Business Machines Corporation | Efficient repository ingest of a target volume without breaking a flashcopy chain |
-
2015
- 2015-06-10 US US14/736,261 patent/US10002072B2/en active Active
- 2015-11-16 CN CN201510783724.2A patent/CN106168882A/zh not_active Withdrawn
-
2018
- 2018-05-18 US US15/983,090 patent/US20180267890A1/en not_active Abandoned
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050154849A1 (en) * | 2004-01-13 | 2005-07-14 | Naoki Watanabe | Data-migration method |
US20050246508A1 (en) * | 2004-04-28 | 2005-11-03 | Shaw Mark E | System and method for interleaving memory |
CN101118477A (zh) * | 2007-08-24 | 2008-02-06 | 成都索贝数码科技股份有限公司 | 一种提高磁盘数据访问效率的方法 |
US20100220536A1 (en) * | 2009-02-27 | 2010-09-02 | International Business Machines Corporation | Advanced memory device having reduced power and improved performance |
CN102136003A (zh) * | 2011-03-25 | 2011-07-27 | 上海交通大学 | 大规模分布式存储系统 |
CN103620580A (zh) * | 2011-04-28 | 2014-03-05 | 网络存储技术公司 | 用于数据副本的迁移的系统和方法 |
US20130268739A1 (en) * | 2011-12-01 | 2013-10-10 | Saurabh Gupta | Hardware based memory migration and resilvering |
US20140201482A1 (en) * | 2013-01-15 | 2014-07-17 | International Busliness Machines Corporation | Selecting first data sets in a first storage group to swap with second data sets in a second storage group |
US20150012567A1 (en) * | 2013-07-02 | 2015-01-08 | Hitachi Data Systems Engineering UK Limited | Method and apparatus for migration of a virtualized file system, data storage system for migration of a virtualized file system, and file server for use in a data storage system |
CN103858092A (zh) * | 2013-12-19 | 2014-06-11 | 华为技术有限公司 | 一种数据迁移方法和装置 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109213434A (zh) * | 2017-07-04 | 2019-01-15 | 慧荣科技股份有限公司 | 数据储存装置以及其操作方法 |
CN109213434B (zh) * | 2017-07-04 | 2021-08-31 | 慧荣科技股份有限公司 | 数据储存装置以及其操作方法 |
US11709613B2 (en) | 2018-11-19 | 2023-07-25 | Micron Technology, Inc. | Data migration for memory operation |
CN111199761A (zh) * | 2018-11-19 | 2020-05-26 | 美光科技公司 | 数据迁移动态随机存取存储器 |
US11163473B2 (en) | 2018-11-19 | 2021-11-02 | Micron Technology, Inc. | Systems, devices, techniques, and methods for data migration |
US11182090B2 (en) | 2018-11-19 | 2021-11-23 | Micron Technology, Inc. | Systems, devices, and methods for data migration |
US11256437B2 (en) | 2018-11-19 | 2022-02-22 | Micron Technology, Inc. | Data migration for memory operation |
US11853578B2 (en) | 2018-11-19 | 2023-12-26 | Micron Technology, Inc. | Systems, devices, and methods for data migration |
US11782626B2 (en) | 2018-11-19 | 2023-10-10 | Micron Technology, Inc. | Systems, devices, techniques, and methods for data migration |
US11442648B2 (en) | 2018-11-19 | 2022-09-13 | Micron Technology, Inc. | Data migration dynamic random access memory |
CN109582242A (zh) * | 2018-12-04 | 2019-04-05 | 北京和讯永源科技有限公司 | 级联存储阵列系统的地址确定方法、装置、电子设备 |
CN109582242B (zh) * | 2018-12-04 | 2022-05-06 | 北京和讯永源科技有限公司 | 级联存储阵列系统的地址确定方法、装置、电子设备 |
CN111475010A (zh) * | 2019-01-23 | 2020-07-31 | 联发科技股份有限公司 | 管线式处理器及节电方法 |
WO2022179368A1 (zh) * | 2021-02-26 | 2022-09-01 | 华为技术有限公司 | 优化闪存颗粒的方法和相关装置 |
CN114489490A (zh) * | 2021-12-31 | 2022-05-13 | 浙江大华技术股份有限公司 | 数据迁移方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US10002072B2 (en) | 2018-06-19 |
US20180267890A1 (en) | 2018-09-20 |
US20160342343A1 (en) | 2016-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106168882A (zh) | 管理存储装置的方法及其存储系统 | |
US10521003B2 (en) | Method and apparatus to shutdown a memory channel | |
JP5490093B2 (ja) | ストレージシステムおよびその制御方法 | |
CN110825320B (zh) | 虚拟化固态存储介质的隔离区域 | |
CN104216837A (zh) | 一种内存系统、内存访问请求的处理方法和计算机系统 | |
CN109542333A (zh) | 存储器系统及控制非易失性存储器的控制方法 | |
US8724392B1 (en) | Controller management of memory array of storage device using magnetic random access memory (MRAM) | |
CN104572478A (zh) | 数据存取方法和数据存取装置 | |
CN107329696B (zh) | 一种保证数据崩溃一致性的方法及系统 | |
TWI506422B (zh) | 用來管理具有多通道、多途徑的記憶裝置之方法以及相關之記憶裝置及其控制器 | |
CN104885034A (zh) | 经由使用非易失性存储器来降低易失性存储器的功耗 | |
CN106445834A (zh) | 管理存储器模块中的操作状态数据 | |
CN102609360A (zh) | 一种数据处理方法、装置及系统 | |
CN104866428A (zh) | 数据存取方法和数据存取装置 | |
JP2023508660A (ja) | ダブルデータレートメモリトレーニングの削減によるメモリコンテキスト復元、システムオンチップのブート時間の短縮 | |
CN102346682A (zh) | 信息处理装置及信息处理方法 | |
CN108062201A (zh) | 用于固态驱动器的自虚拟化闪速存储器 | |
CN104391803B (zh) | 一种分区操作系统的存储管理方法 | |
CN103914325B (zh) | 基于混合内存的Linux系统的关机、开机方法及系统 | |
CN1426558A (zh) | 带有可编程存储体选择的具有不同数据缓冲区容量的多层存储体 | |
CN112988387A (zh) | 一种内存页管理方法及计算设备 | |
CN105404591A (zh) | 处理器系统及其存储器控制方法 | |
CN104182359A (zh) | 一种缓存分配方法及装置 | |
TWI752784B (zh) | 非對稱型平面管理方法以及資料儲存裝置及其控制器 | |
CN105653468B (zh) | 一种使用mram的存储设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20161130 |