CN114116530B - 存储控制方法及装置、数据处理方法及装置以及存储介质 - Google Patents

存储控制方法及装置、数据处理方法及装置以及存储介质 Download PDF

Info

Publication number
CN114116530B
CN114116530B CN202111474099.5A CN202111474099A CN114116530B CN 114116530 B CN114116530 B CN 114116530B CN 202111474099 A CN202111474099 A CN 202111474099A CN 114116530 B CN114116530 B CN 114116530B
Authority
CN
China
Prior art keywords
data
memory
block
partial
flag
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
CN202111474099.5A
Other languages
English (en)
Other versions
CN114116530A (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.)
Haiguang Information Technology Co Ltd
Original Assignee
Haiguang Information Technology 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 Haiguang Information Technology Co Ltd filed Critical Haiguang Information Technology Co Ltd
Priority to CN202111474099.5A priority Critical patent/CN114116530B/zh
Publication of CN114116530A publication Critical patent/CN114116530A/zh
Application granted granted Critical
Publication of CN114116530B publication Critical patent/CN114116530B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0811Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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)
  • Quality & Reliability (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Circuits Of Receivers In General (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

一种存储控制方法及装置、数据处理方法及装置以及存储介质。该存储控制方法包括:接收对于存储器的写请求,其中,写请求包括待写入至存储器的部分数据内容以及数据标志;基于数据标志确定写入模式;根据写入模式将部分数据内容写入至存储器的目标存储块,将数据标志写入至存储器中与目标存储块关联的ECC码段。该方法可以减少数据块传输次数,降低数据读写的传输延时、节省数据带宽,并降低***功耗。

Description

存储控制方法及装置、数据处理方法及装置以及存储介质
技术领域
本公开的实施例涉及存储控制方法及装置、数据处理方法及装置以及存储介质。
背景技术
如图1所示,当前的计算机处理器通常包含多个处理器核以及多个***存储器(主存),各个处理器核与主存之间还会包含多级高速缓存(例如L1缓存、L2缓存等)。多个处理器核以及主存通过互联总线彼此连接。每个主存(例如DRAM)由存储器控制器管理,存储器控制器的作用包括进行接口转换,将主设备(处理器核)发出的读、写等请求(命令)转换成主存能够识别的信号,完成主设备与存储器之间地址译码、数据格式的转换等。
发明内容
本公开的至少一个实施例提供了一种存储控制方法,包括:接收对于存储器的写请求,其中,所述写请求包括待写入至所述存储器的部分数据内容以及数据标志;基于所述数据标志确定写入模式;根据所述写入模式将所述部分数据内容写入至所述存储器的目标存储块,将所述数据标志写入至所述存储器中与所述目标存储块关联的ECC码段。
例如,在本公开至少一实施例的存储控制方法中,所述部分数据内容为待写入至所述目标存储块的数据块的一部分,所述数据标志表示所述数据块基于所述部分数据内容的数据模式,所述写入模式对应所述数据模式,响应于根据所述写入模式将所述部分数据内容写入至所述存储器的目标存储块,在所述目标存储块恢复所述数据块。
本公开的至少一个实施例提供了另一种存储控制方法,包括:接收对于存储器的读请求;根据所述读请求从所述存储器的目标存储块读取部分数据内容,以及从与所述目标存储块关联的ECC码段获取数据标志;基于所述数据标志确定读出模式;根据所述读出模式将所述部分数据内容以及所述数据标志返回。
例如,在本公开至少一实施例的存储控制方法中,所述部分数据内容为待从所述目标存储块读出的数据块的一部分,所述数据标志表示所述数据块基于所述部分数据内容的数据模式,所述读出模式对应所述数据模式,响应于根据所述读出模式将所述部分数据内容以及所述数据标志返回,不再从存储器读取所述数据块除所述部分数据内容之外的部分。
例如,在本公开至少一实施例的存储控制方法中,所述数据模式包括如下模式之一:
所述数据块基于所述部分数据内容规律分布;
所述数据块除所述部分数据内容之外的部分为特定值。
例如,在本公开至少一实施例的存储控制方法中,所述部分数据内容对应于所述数据块低位的一半。
例如,在本公开至少一实施例的存储控制方法中,所述数据块基于***缓存的缓存行,所述缓存行的长度等于所述存储块的大小且大于用于所述存储器的***带宽。
例如,在本公开至少一实施例的存储控制方法中,所述数据标志包括至少一个位,所述ECC码段包括多个位,所述数据标志的长度小于所述ECC码段的长度。
本公开的至少一个实施例提供了一种存储控制装置,包括:接收单元,配置为接收对于存储器的写请求,其中,所述写请求包括待写入至所述存储器的部分数据内容以及数据标志;数据标志确定单元,配置为基于所述数据标志确定写入模式;写入单元,根据所述写入模式将所述部分数据内容写入至所述存储器的目标存储块,以及将所述数据标志写入至所述存储器中与所述目标存储块关联的ECC码段。
本公开的至少一个实施例提供了另一种存储控制装置,包括:接收单元,配置为接收对于存储器的读请求;读取单元,配置为根据所述读请求从所述存储器的目标存储块读取部分数据内容,以及从与所述目标存储块关联的ECC码段获取数据标志;数据标志确定单元,配置为基于所述数据标志确定读出模式;数据返回单元,配置为根据所述读出模式将所述部分数据内容以及所述数据标志返回。
本公开的至少一个实施例提供了另一种存储控制装置,包括:存储器,用于非暂时性存储计算机可执行指令;以及处理单元,用于运行所述计算机可执行指令,其中,所述计算机可执行指令被所述处理单元运行时执行根据本公开任一实施例所述的存储控制方法。
本公开的至少一个实施例提供了一种非暂时性存储介质,非暂时性地存储计算机可执行指令,其中,当所述计算机可执行指令由计算机执行时,执行根据本公开任一实施例所述的存储控制方法。
本公开的至少一个实施例提供了一种数据处理方法,包括:获取数据块的数据模式,产生对应于所述数据模式的数据标志;根据所述数据模式,从所述数据块得到部分数据内容;基于所述部分数据内容和数据标志产生将所述数据块写入至存储器的写请求;发送所述写请求,以将所述部分数据内容写入至所述存储器的目标存储块以及将所述数据标志写入至所述存储器中与所述目标存储块关联的ECC码段。
本公开的至少一个实施例提供了另一种数据处理方法,包括:发送读请求;接收根据所述读请求从存储器的目标存储块读取的部分数据内容以及从与所述目标存储块关联的ECC码段读取的数据标志,其中,所述数据标志对应于获取所述数据块的数据模式;根据所述数据模式,从所述部分数据内容恢复所述数据块。
例如,在本公开至少一实施例的数据处理方法中,所述数据模式包括如下模式之一:
所述数据块基于所述部分数据内容规律分布;
所述数据块除所述部分数据内容之外的部分为特定值。
例如,在本公开至少一实施例的数据处理方法中,所述部分数据内容对应于所述数据块低位的一半。
例如,在本公开至少一实施例的数据处理方法中,所述数据块基于***缓存的缓存行,所述缓存行的长度等于所述存储块的大小且大于用于所述存储器的***带宽。
本公开的至少一个实施例提供了一种数据处理装置,包括:操作单元,配置为获取数据块的数据模式,产生对应于所述数据模式的数据标志,根据所述数据模式,从所述数据块得到部分数据内容;请求产生单元,配置为基于所述部分数据内容和数据标志产生将所述数据块写入至存储器的写请求;发送单元,配置为发送所述写请求,以将所述部分数据内容写入至所述存储器的目标存储块以及将所述数据标志写入至所述存储器中与所述目标存储块关联的ECC码段。
本公开的至少一个实施例提供了另一种数据处理装置,包括:发送单元,配置为发送读请求;接收单元,配置为接收根据所述读请求从存储器的目标存储块读取的部分数据内容以及从与所述目标存储块关联的ECC码段读取的数据标志,其中,所述数据标志对应于获取所述数据块的数据模式;操作单元,配置为根据所述数据模式,从所述部分数据内容恢复所述数据块。
本公开的至少一个实施例提供了另一种数据处理装置,包括:存储器,用于非暂时性存储计算机可执行指令;以及处理单元,用于运行所述计算机可执行指令,其中,所述计算机可执行指令被所述处理单元运行时执行根据本公开任一实施例所述的数据处理方法。
本公开的至少一个实施例提供了一种非暂时性存储介质,非暂时性地存储计算机可执行指令,其中,当所述计算机可执行指令由计算机执行时,执行根据本公开任一实施例所述的数据处理方法。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
图1示出了一种多处理器(核)的计算机***;
图2示出了本公开实施例提供的一种示例性***架构;
图3示出了本公开实施例提供的一种存储控制方法;
图4示出了本公开实施例提供的另一种存储控制方法;
图5示出了本公开实施例提供的一种数据处理方法;
图6示出了本公开实施例提供的另一种数据处理方法;
图7A示出了在本公开一实施例中进行数据写入时的示例;
图7B示出了对图7A的示例写入的数据进行数据读取时的示例;
图8示出了本公开实施例提供的一种存储控制装置;
图9示出了本公开实施例提供的一种数据处理装置;
图10示出了本公开实施例提供的一种存储控制装置或数据处理装置的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
图1示出了一种多处理器(核)的计算机***。在图1所示的处理器中,处理器核以缓存行为单位从对应的某一级缓存中访问数据,若所访问的数据在该缓存中命中,则直接从该缓存中访问数据;若在该缓存未命中,则从下一级缓存或从主存(内存)中读取数据,如果在主存中仍然没有命中,则需要进一步从例如硬盘等外部存储装置中读取。
缓存(Cache)的容量通常很小,缓存保存的内容是主存内容的一个子集,且缓存与主存的数据交换是以缓存行(Cache Line)为单位的。为了把主存中的数据缓存到缓存中,可以应用某种函数把主存中的数据对应的地址定位到缓存中,这称为地址映射。在将主存中的数据按这种映射关系缓存到缓存中后,处理器(处理器核)执行程序时,会将程序中的主存地址变换成缓存地址。
当处理器核需要从主存从中读取一个缓存行的数据时,需要通过存储器控制器访问主存。以64字节(byte,包括8位)大小的缓存行为例,出于带宽性能考虑,存储器控制器与处理器核之间的接口通常设计为128位(bit)或者256bit,即读取64byte的数据需要4拍(传输次数)或者2拍读取完成。存储器控制器将读取的数据返回给发送请求的处理器核与对应的缓存。主存在读写缓存行的数据时需要对地址内所有数据进行读写,但是由于存储器控制器的接口位宽限制,通常需要多拍才能完成对于一个缓存行的读写,另一方面,增加存储存储器的位宽会带来额外的硬件和软件成本以及升高的设计难度。
动态随机存取存储器(Dynamic Random Access Memory,DRAM)是最常见的***内存,基本单位(存储位)包括一个晶体管和一个电容器,断电之后数据会丢失。内存常见的类型包括DDR4、DDR3、LPDDR4、LPDDR3、HBM、GDDR等。
主存就像任何电子***一样,也会因为设计故障/缺陷或任何部件中的电噪声而发生错误。这些错误分为硬错误(由设计故障引起)或软错误(由***噪音引起或者由alpha 射线引起的内存阵列位翻转等)。尽管从理论出发,大部分内存错误是由DRAM造成,但是执行从存储器控制器到DRAM的端到端保护,对于整体内存的稳定性是非常必要的。为了在运行时处理这些内存错误,内存子***必须具有先进的 RAS(可靠性、可用性和可维护性)功能,以在发生内存错误时进行修正,延长整个***的正常运行时间。如果没有 RAS 功能,***很可能会因为内存错误而崩溃。
内存子***中最常用的一种RAS方案是纠错码 (Error Correction Code,ECC)内存。ECC码例如可以是在内存中加入的奇偶校验位、SECDED(单位纠错和双位检错)校验位、DECTED(双位纠错和三位检错)校验位等。以SECDED方式为例,存储器控制器为实际数据生成SECDED校验位数据并存储到附加DRAM存储单元中,以对 DRAM处理的数据进行单位纠错和双位检错。ECC码数据由存储器控制器根据当前处理的写入数据生成。内存同时存储写命令针对的写入数据和对应产生的ECC码。在读取操作时,存储器控制器从内存读取数据和相应的ECC码。存储器控制器利用接收到的数据重新生成ECC码,并将其与接收到的ECC码进行比较。如果两者匹配,则不会发生错误。如果不匹配,SECDED算法允许存储器控制器纠正任何单位(bit)错误并检测双位错误。实现纠错功能,内存需要额外的ECC码段以存储ECC码,例如,对于数据位(待检测数据的总位数)为32位时,需要的SECDED校验位为至少7位,需要的DECTED校验位为至少13位;对于数据位为64位时,需要的SECDED校验位为至少8位,需要的DECTED校验位为至少15位。例如,对于DDR5内存(条)每个通道具有40位,其中32位用于数据而8位用于ECC码段。
本公开的发明人注意到,具有ECC功能的主存除了数据位之外还包括ECC位,例如DDR5内存每32bit对应地提供有8bit(ECC码段)用于存储ECC码,在某些ECC模式下,这8bit的ECC码段不会全部使用,因此如果使用这些未使用的冗余ECC位存储用于存储块(对应于缓存行)中的数据的额外信息,那么可以利用该额外信息以在一定程度上减少访问传输次数,提高***访存性能。
基于上述理解,本公开的实施例提出一种方法,其使用主存中的ECC位中除了用于ECC功能之外的冗余位,以记录存储的数据的某种分布规律,以减少在位宽限制情况下写入或读取例如一个缓存行所需要的传输次数。
本公开的至少一个实施例提供了一种存储控制方法,该方法包括:接收对于存储器的写请求,其中,写请求包括待写入至存储器的部分数据内容以及数据标志;基于数据标志确定写入模式;根据写入模式将部分数据内容写入至存储器的目标存储块,将数据标志写入至存储器中与目标存储块关联的ECC码段。
本公开的至少一个实施例还提供了一种存储控制方法,该方法包括:接收对于存储器的读请求;根据读请求从存储器的目标存储块读取部分数据内容,以及从与目标存储块关联的ECC码段获取数据标志;基于数据标志确定读出模式;根据读出模式将部分数据内容以及数据标志返回。
本公开的至少一个实施例还提供了对应于上述存储控制方法的存储控制装置(存储器控制器)和存储介质。
本公开的至少一个实施例提供了一种数据处理方法,该方法包括:获取数据块的数据模式,产生对应于数据模式的数据标志;根据数据模式,从数据块得到部分数据内容;基于部分数据内容和数据标志产生将数据块写入至存储器的写请求;发送写请求,以将部分数据内容写入至存储器的目标存储块以及将数据标志写入至存储器中与目标存储块关联的ECC码段。
本公开的至少一个实施例还提供了一种数据处理方法,该方法包括:发送读请求;接收根据读请求从存储器的目标存储块读取的部分数据内容以及从与目标存储块关联的ECC码段读取的数据标志,其中,数据标志对应于获取数据块的数据模式;根据数据模式,从部分数据内容恢复数据块。
本公开的至少一个实施例还提供了对应于上述数据处理方法的处理处理器和存储介质。
本公开的各个实施例提供的存储控制方法、数据处理方法,可以利用内存的ECC码段(例如冗余的bit)作为数据标志,存储操作的数据块中的数据模式(或分布规律),从而在读写(大小***带宽)数据块时,可以减少存储器控制器和内存之间的传输次数,或减少处理器与存储器控制器之间的传输次数,降低数据读写的传输延时、节省数据带宽,并降低***功耗。
下面结合具体示例对于本公开的各个实施例进行说明。
图2示出了本公开实施例提供的一种示例性***架构。如图2所示,计算机***包含一个或多个处理器(或处理器核)以及一个或多个***存储器(例如主存),处理器与***存储器之间还可以包含一级或多级高速缓存(例如L1缓存、L2缓存等)。处理器以及***存储器通过互联总线彼此连接。***存储器由存储器控制器管理,存储器控制器的作用包括进行接口转换,将主设备(例如处理器或处理器核)发出的读、写等请求(命令)转换成***存储器能够识别的信号,完成主设备与***存储器之间地址译码、数据格式的转换等。在存储器控制器和***存储器之间具有控制接口、数据接口以及ECC码段接口,以传递控制信息、数据信息以及ECC码,各个接口根据不同的规格具有不同的位数。在存储器控制器和处理器之间通过***互联(例如总线、片上网络等)连接,且具有控制接口和数据接口,以传递控制信息和数据信息。
本公开的至少一个实施例提供了一种存储控制方法100,例如用于存储器控制器在例如处理器请求下向所控制的***存储器(例如主存)中写入数据,如图3所示,该方法包括如下步骤101~103:
步骤101:接收对于存储器的写请求。该写请求例如来自处理器的主设备,请求将数据写入例如作为主存的存储器中的目标地址,该写请求包括待写入至存储器的部分数据内容以及数据标志。
步骤102:基于数据标志确定写入模式。
例如,存储器控制器基于数据标志确定写入模式,即,如何写入能得到实际要写入的数据块。
步骤103:根据写入模式将部分数据内容写入至存储器的目标存储块,将数据标志写入至存储器中与目标存储块关联的ECC码段。
例如,存储器控制器基于写入模式,将部分数据内容写入至存储器的目标存储块,并且将数据标志写入至存储器中与目标存储块关联的ECC码段。
例如,至少一个示例中,写入请求包括的部分数据内容为待写入至目标存储块的数据块的一部分,数据标志表示数据块基于部分数据内容的数据模式,上述写入模式对应数据块的数据模式。根据写入模式,存储器控制器将部分数据内容写入至存储器的目标存储块,并且补足数据块除该部分数据内容之外的部分,例如在目标存储块恢复该部分数据内容以得到完整的数据块,即在存储器中的目标地址处实际写入了数据块。
本公开的至少一个实施例提供了一种存储控制方法200,例如用于存储器控制器在例如处理器请求下从所控制的***存储器(例如主存)中读取数据,如图4所示,该方法包括如下步骤201~204:
步骤201:接收对于存储器的读请求。该读请求例如来自例如处理器的主设备,请求从存储器的目标地址读取数据。
步骤202:根据读请求从存储器的目标存储块读取部分数据内容,以及从与目标存储块关联的ECC码段获取数据标志。
例如,存储器控制器根据读请求从存储器读取到部分数据内容的同时还获得了对应的ECC码,对该ECC码进行解析得到数据标志。
步骤203:基于数据标志确定读出模式。
例如,存储器控制器基于数据标志确定读出模式,例如,确定是否继续从存储器读取其他数据部分。
步骤204:根据读出模式将部分数据内容以及数据标志返回。
例如,存储器控制器将读取的部分数据内容以及数据标志一并返回给发出读请求的主设备。
例如,至少一个示例中,上述部分数据内容为待从目标存储块读出的数据块的一部分,数据标志表示数据块基于部分数据内容的数据模式,读出模式对应数据模式,响应于根据读出模式将部分数据内容以及数据标志返回,不再从存储器读取数据块除部分数据内容之外的部分。
例如,对于上述方法100或200,被处理的数据块基于部分数据内容的数据模式包括如下模式之一:
数据块基于部分数据内容规律分布;
数据块除部分数据内容之外的部分为特定值。
对于数据块基于部分数据内容规律分布的情形,例如,数据块基于部分数据内容重复n个周期得到,n为大于等于2的正整数,例如2、4、8等。例如,对于n=2的情形,部分数据内容对应于数据块低位的一半,也即,先处理数据块的低位的一半,而其高位的一半由于与低位的一半相同,由此可以直接由低位的一半得到。
对于数据块除部分数据内容之外的部分为特定值的情形,例如,数据块除部分数据内容之外的部分为全0,或全1,或其他特定数据。例如,当部分数据内容对应于数据块低位的一半时,数据块高位的一半可以为全0,或全1,或例如101010……等。
例如,在至少一个示例中,例如作为设备的处理器,在针对缓存读写数据时,如果在缓存中没有命中,则需要进一步从主存中读写数据,此时数传输以缓存行为单位。也即,数据块基于***缓存的缓存行,例如,缓存行的长度可以是缓存器读写数据时的最小单位,例如,缓存行的长度还可以等于存储块的大小且大于用于存储器的***带宽,该***带宽例如是处理器和存储器控制器之间的带宽,该带宽例如由连接处理器和存储器控制器的互联带宽决定。
例如,数据标志包括至少一个位,ECC码段包括多个位,数据标志的长度小于ECC码段的长度。例如,当数据标志为一个位时,仅有0和1两种值,因此仅能表示两种数据模式;当数据标志为多个位(至少两个位)时,则可以使用该多个位来表示多种不同情况的数据模式。
在上述存储控制方法中,写请求或读请求由例如处理器(或处理器核)的主设备产生,并且对需要写入的数据块和读取的数据块进行处理,因此本公开的至少一个实施例还提供了如下的数据处理方法。
本公开的至少一个实施例还提供了一种数据处理方法300,例如用于例如处理器产生写请求并将该写请求发送到存储器控制器,如图5所示,该方法包括如下步骤301~304:
步骤301:获取数据块的数据模式,产生对应于数据模式的数据标志。
例如,处理器具有写数据的需要时,将该数据所在的缓存的数据块整体写入存储器中,对于该数据块的数据模式进行分析,基于分析结果产生对应于数据模式的数据标志。
步骤302:根据数据模式,从数据块得到部分数据内容。
例如,处理器将根据所获得的数据模式,选择在数据块中实际被传输的部分数据内容。
步骤303:基于部分数据内容和数据标志产生将数据块写入至存储器的写请求。
例如,在获得了部分数据内容和数据标志之后,处理器产生将数据块写入至存储器的写请求。
步骤304:发送写请求。
例如,处理器该写请求发送到存储器控制器,用于将部分数据内容写入至存储器的目标存储块以及将数据标志写入至存储器中与目标存储块关联的ECC码段。
本公开的至少一个实施例还提供了一种数据处理方法400,例如用于例如处理器产生请求读请求并将该读请求发送到存储器控制器,从存储器控制器接收基于该读请求读取的数据,如图6所示,该方法包括如下步骤401~403:
步骤401:发送读请求。
例如,处理器具有读数据的需要时,将该数据所在的存储器的存储块整体读出并写入缓存中。
步骤402:接收根据读请求从存储器的目标存储块读取的部分数据内容以及从与目标存储块关联的ECC码段读取的数据标志。
例如,当存储器控制器根据读请求从存储器的目标存储块读取的部分数据内容以及从与目标存储块关联的ECC码段读取的数据标志之后,这些信号返回给处理器,被处理器接收。这里,数据标志对应于获取数据块的数据模式。
步骤403:根据数据模式,从部分数据内容恢复数据块。
例如,处理器将根据数据标志表示的数据模式,结合接收的部分数据内容,补足数据块除该部分数据内容之外的部分,由此得到实际要读取的整个数据块。
同样地,对于上述方法300或400,被处理的数据块基于部分数据内容的数据模式包括如下模式之一:
数据块基于部分数据内容规律分布;
数据块除部分数据内容之外的部分为特定值。
对于数据块基于部分数据内容规律分布的情形,例如,数据块基于部分数据内容重复n个周期得到,n为大于等于2的正整数,例如2、4、8等。例如,对于n=2的情形,部分数据内容对应于数据块低位的一半,也即,先处理数据块的低位的一半,而其高位的一半由于与低位的一半相同,由此可以直接由低位的一半得到。
对于数据块除部分数据内容之外的部分为特定值的情形,例如,数据块除部分数据内容之外的部分为全0,或全1,或其他特定数据。例如,当部分数据内容对应于数据块低位的一半时,数据块高位的一半可以为全0,或全1,或例如101010……等。
例如,在至少一个示例中,处理器在针对缓存读写数据时,如果在缓存中没有命中,则需要进一步从主存中读写数据,此时数传输以缓存行为单位。也即,数据块基于***缓存的缓存行,例如,缓存行的长度等于存储块的大小且大于用于存储器的***带宽,该***带宽例如是处理器和存储器控制器之间的带宽,该带宽例如由连接处理器和存储器控制器的互联带宽决定。
例如,数据标志包括至少一个位,ECC码段包括多个位,数据标志的长度小于ECC码段的长度。当数据标志为一个位时,仅有0和1两种值,因此仅能表示两种数据模式;当数据标志为多个位(至少两个位)时,则可以使用该多个位来表示多种不同情况的数据模式。
需要指出的是,本公开的各个实施例对于处理器(或处理器核)的类型没有限制,例如,可以是CISC架构(例如X86架构)、RISC架构(例如ARM架构)等。本公开的实施例对于主存的类型没有限制,例如,可以是动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)、双倍数据速率同步动态随机存取存储器(DDR SDRAM)、增强型同步动态随机存取存储器(ESDRAM)、同步连接动态随机存取存储器(SLDRAM)或直接内存总线随机存取存储器(DRRAM)等。本公开的实施例对于缓存的类型没有限制,例如,可以是动态随机存取存储器(DRAM)等。本公开的实施例对于缓存行的大小、主存的存储块的大小没有限制,例如,下面可以缓存行的大小和存储块的大小为64字节为例进行说明。本公开的实施例对于处理器和存储器控制器之间的带宽大小没有限制,例如可以为1/8个缓存行大小、1/4个缓存行大小、半个缓存行大小等,例如,下面可以处理器和存储器控制器之间的带宽为256位(即32字节)为例进行说明。
图7A示出了在本公开一实施例中进行数据写入时的示例。在应用程序运行的过程中,需要将一个64字节的缓存行的数据从处理器写到主存中,该缓存行的高位一半的数据与低位一半的数据彼此相同。处理器和存储器控制器之间的带宽为32字节,因此64字节的缓存行的数据通常需要传输2次才能能完整地传输到存储器控制器。
首先,处理器基于该缓存行中的数据块的数据模式,产生数据标志(例如1bit的标志位),基于低位一半的数据和数据标志产生写请求(即该写请求内包含该1bit标志位),然后发送该写请求到存储器控制器。
其次,储存器控制器在接收到该写请求之后,查看到数据标志位,知道将要写入的数据块的高低一半的数据相同,所以后续不会再接收高位一半的数据,将其中半个数据块(即数据块低位一半)发送到主存中的目标地址并存储为存储块的低位一半,并在主存的ECC码段中的一个冗余位写入代表数据块的高位一半的数据和低位一半的数据一致的数据标志,之后再一次将半个数据块发送到主存中的目标地址(相对于存入低位一半时具有半个存储块长度的偏移)并存储为存储块的高位一半,由此在主存中恢复了完整的数据块。
在该示例中,处理器将对应于一个缓存行的数据块经存储器控制器写入主存时,仅需要传输一次(1拍)数据块低位一半,即可实现在主存中完整恢复整个缓存行的数据。
图7B示出了在本公开一实施例中进行数据读取时的示例,对应于图7A所示的示例。当之后在应用程序运行的过程中,处理器需要读取上述被写入到内存中的存储块的数据时,将读取请求发送到存储器控制器,存储器控制器从主存中读取相应地址的低半个数据块的数据、ECC码段,从ECC码段对应的数据中获得数据标志。根据该数据标志,存储器控制器获知该数据块的高位一半的数据和低位一半的数据相同,因此不需要再读取数据块高位一半的数据。存储器控制器将该数据块低位一半和数据标志返回给处理器。处理器接收到返回的该数据块低位一半和数据标志,根据该数据标志获知该数据块的高位一半的数据和低位一半的数据相同,由此直接获得完整的数据块,该完整的数据块可以存入缓存的一个缓存行中。
本公开至少一实施例提供的一种存储控制装置,对应于上述存储控制方法100,如图8所示,该存储控制装置800至少包括接收单元801、数据标志确定单元802以及写入单元803。该存储控制装置耦接在主设备(例如处理器)和存储器(例如主存)之间,控制针对存储器的写入操作。
在该存储控制装置中,接收单元801配置为接收对于存储器的写请求,写请求包括待写入至存储器的部分数据内容以及数据标志。数据标志确定单元802配置为基于数据标志确定写入模式。写入单元803根据写入模式将部分数据内容写入至存储器的目标存储块,以及将数据标志写入至存储器中与目标存储块关联的ECC码段。
例如,在该实施例的至少一个示例中,部分数据内容为待写入至目标存储块的数据块的一部分,数据标志表示数据块基于部分数据内容的数据模式,写入模式对应数据模式。该写入单元803还配置为,响应于根据写入模式将部分数据内容写入至存储器的目标存储块,在目标存储块恢复数据块。
本公开至少一实施例提供了一种存储控制装置,对应于上述存储控制方法200,如图8所示,该存储控制装置800至少包括接收单元801、读取单元804、数据标志确定单元802以及数据返回单元805。该存储控制装置耦接在主设备(例如处理器)和存储器(例如主存)之间,控制针对存储器的读取操作。
在该存储控制装置中,接收单元801配置为接收对于存储器的读请求。读取单元804配置为根据读请求从存储器的目标存储块读取部分数据内容,以及从与目标存储块关联的ECC码段获取数据标志。数据标志确定单元802配置为基于数据标志确定读出模式。数据返回单元805配置为根据读出模式将部分数据内容以及数据标志返回。
例如,在该实施例的至少一个示例中,部分数据内容为待从目标存储块读出的数据块的一部分,数据标志表示数据块基于部分数据内容的数据模式,读出模式对应数据模式。数据返回单元805还配置为,响应于根据读出模式将部分数据内容以及数据标志返回,不再从存储器读取数据块除部分数据内容之外的部分。
对于本公开的实施例的上述存储控制装置的其他方面可以参考对于存储控制方法100或200的具体示例的描述,这里不再赘述。
上述该存储控制装置的技术效果与上述存储控制方法100或200的技术效果相同,可以减少数据块的传输次数,降低了数据读写的传输延时、节省了数据带宽,并降低了***功耗,此处不再赘述。
本公开至少一实施例提供了一种数据处理装置,对应于上述数据处理方法300,用于向存储控制装置发送写请求,如图9所示,该数据处理装置900至少包括操作单元901、请求产生单元902和发送单元903。例如,该数据处理装置900为处理器或多核处理器的处理器核,例如,该处理器可以是中央处理器(CPU)。
在该数据处理装置中,操作单元901配置为获取数据块的数据模式,产生对应于数据模式的数据标志,根据数据模式,从数据块得到部分数据内容;请求产生单元902配置为基于部分数据内容和数据标志产生将数据块写入至存储器的写请求;发送单元903配置为发送写请求,以将部分数据内容写入至存储器的目标存储块以及将数据标志写入至存储器中与目标存储块关联的ECC码段。
本公开至少一实施例提供了一种数据处理装置,对应于上述数据处理方法400,用于向存储控制装置发送读请求以及接收读取的数据,如图9所示,该数据处理装置900至少包括发送单元903、接收单元904和操作单元901。同样地,例如,该数据处理装置为处理器或多核处理器的处理器核,例如,该处理器可以是中央处理器(CPU)。
在该数据处理装置900中,发送单元903配置为发送读请求。接收单元904配置为接收根据读请求从存储器的目标存储块读取的部分数据内容以及从与目标存储块关联的ECC码段读取的数据标志,数据标志对应于获取数据块的数据模式。操作单元901配置为根据数据模式,从部分数据内容恢复数据块。
上述数据处理装置900的技术效果与上述数据处理方法300或400的技术效果相同,可以减少数据块的传输次数,降低了数据读写的传输延时、节省了数据带宽,并降低了***功耗,此处不再赘述。
在上述装置,各个单元,例如接收单元、读取单元、数据标志确定单元、写入单元、数据返回单元、操作单元等可以分别采用硬件、软件、固件以及它们任意可行的组合实现,本公开对此不作限制。
本公开至少一实施例还提出了一种存储控制装置,包括:存储器,用于非暂时性存储计算机可执行指令;以及处理装置,用于运行计算机可执行指令,其中,计算机可执行指令被处理装置运行时执行本公开至少一实施例提出的存储控制方法。
本公开至少一实施例还提出了一种数据处理装置,包括:存储器,用于非暂时性存储计算机可执行指令;以及处理单元,用于运行计算机可执行指令,其中,计算机可执行指令被处理单元运行时执行本公开至少一实施例提出的数据处理方法。
图6示出了根据本公开实施例的存储控制装置或数据处理装置600的示意图。如图6所示,根据本公开实施例的数据处理设备600可以包括处理单元601以及存储单元602,其可以通过总线603进行互连。
处理单元601可以根据存储在存储单元602中的程序或代码执行各种动作和处理。具体地,处理单元601可以是一种集成电路芯片,具有信号的处理能力。例如,上述处理装置可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本公开实施例中公开的各种方法、步骤、流程及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以是X86架构或者是ARM架构等。
存储单元602存储有计算机可执行指令,其中,计算机可执行指令在被处理单元601执行时实现本公开至少一实施例提供的存储控制方法或数据处理方法。存储单元602可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)或闪存。易失性存储器可以是随机存取存储器(RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)、双倍数据速率同步动态随机存取存储器(DDRSDRAM)、增强型同步动态随机存取存储器(ESDRAM)、同步连接动态随机存取存储器(SLDRAM)和直接内存总线随机存取存储器(DRRAM)。应注意,本文描述的方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本公开的实施例还提供了一种计算机可读存储介质,用于非瞬时性地存储计算机可执行指令,该计算机可执行指令在被处理单元执行时实现本公开至少一实施例提供的存储控制方法或数据处理方法。
类似地,本公开实施例中的计算机可读存储介质可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。应注意,本文描述的方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本公开的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理单元执行该计算机指令,使得该计算机设备执行根据本公开实施例的存储控制方法或数据处理方法。
上述存储控制装置或数据处理装置以及存储介质的技术效果与上述存储控制方法100或200,或与数据处理方法300或400的技术效果相同,此处不再赘述。
对于本公开,还有以下几点需要说明:
(1)本公开实施例附图只涉及到与本公开实施例涉及到的结构,其他结构可参考通常设计。
(2)在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合以得到新的实施例。
以上所述仅是本公开的示范性实施方式,而非用于限制本公开的保护范围,本公开的保护范围由所附的权利要求确定。

Claims (19)

1.一种存储控制方法,包括:
接收对于存储器的写请求,其中,所述写请求包括待写入至所述存储器的部分数据内容以及数据标志;
基于所述数据标志确定写入模式;
根据所述写入模式将所述部分数据内容写入至所述存储器的目标存储块,将所述数据标志写入至所述存储器中与所述目标存储块关联的ECC码段,其中,所述数据标志表示待写入至所述目标存储块的数据块基于所述部分数据内容的数据模式,
所述数据模式包括所述数据块基于所述部分数据内容规律分布或者所述数据块除所述部分数据内容之外的部分为特定值。
2.根据权利要求1所述的存储控制方法,其中,所述部分数据内容为待写入至所述目标存储块的所述数据块的一部分,所述写入模式对应所述数据模式,
响应于根据所述写入模式将所述部分数据内容写入至所述存储器的目标存储块,在所述目标存储块恢复所述数据块。
3.一种存储控制方法,包括:
接收对于存储器的读请求;
根据所述读请求从所述存储器的目标存储块读取部分数据内容,以及从与所述目标存储块关联的ECC码段获取数据标志,其中,所述数据标志表示待从所述目标存储块读出的数据块基于所述部分数据内容的数据模式,
所述数据模式包括所述数据块基于所述部分数据内容规律分布或者所述数据块除所述部分数据内容之外的部分为特定值;
基于所述数据标志确定读出模式;
根据所述读出模式将所述部分数据内容以及所述数据标志返回。
4.根据权利要求3所述的存储控制方法,其中,所述部分数据内容为待从所述目标存储块读出的所述数据块的一部分,所述读出模式对应所述数据模式,
响应于根据所述读出模式将所述部分数据内容以及所述数据标志返回,不再从存储器读取所述数据块除所述部分数据内容之外的部分。
5.根据权利要求1或3所述的存储控制方法,其中,所述部分数据内容对应于所述数据块低位的一半。
6.根据权利要求2或4所述的存储控制方法,其中,所述数据块基于***缓存的缓存行,所述缓存行的长度等于所述存储块的大小且大于用于所述存储器的***带宽。
7.根据权利要求1-4任一所述的存储控制方法,其中,所述数据标志包括至少一个位,所述ECC码段包括多个位,所述数据标志的长度小于所述ECC码段的长度。
8.一种存储控制装置,包括:
接收单元,配置为接收对于存储器的写请求,其中,所述写请求包括待写入至所述存储器的部分数据内容以及数据标志;
数据标志确定单元,配置为基于所述数据标志确定写入模式;
写入单元,根据所述写入模式将所述部分数据内容写入至所述存储器的目标存储块,以及将所述数据标志写入至所述存储器中与所述目标存储块关联的ECC码段,其中,所述数据标志表示待写入至所述目标存储块的数据块基于所述部分数据内容的数据模式,
所述数据模式包括所述数据块基于所述部分数据内容规律分布或者所述数据块除所述部分数据内容之外的部分为特定值。
9.一种存储控制装置,包括:
接收单元,配置为接收对于存储器的读请求;
读取单元,配置为根据所述读请求从所述存储器的目标存储块读取部分数据内容,以及从与所述目标存储块关联的ECC码段获取数据标志,其中,所述数据标志表示待从所述目标存储块读出的数据块基于所述部分数据内容的数据模式,
所述数据模式包括所述数据块基于所述部分数据内容规律分布或者所述数据块除所述部分数据内容之外的部分为特定值;
数据标志确定单元,配置为基于所述数据标志确定读出模式;
数据返回单元,配置为根据所述读出模式将所述部分数据内容以及所述数据标志返回。
10.一种存储控制装置,包括:
存储器,用于非暂时性存储计算机可执行指令;以及
处理单元,用于运行所述计算机可执行指令,
其中,所述计算机可执行指令被所述处理单元运行时执行根据权利要求1-7任一所述的存储控制方法。
11.一种非暂时性存储介质,非暂时性地存储计算机可执行指令,其中,当所述计算机可执行指令由计算机执行时,执行根据权利要求1-7任一所述的存储控制方法。
12.一种数据处理方法,包括:
获取数据块的数据模式,产生对应于所述数据模式的数据标志;
根据所述数据模式,从所述数据块得到部分数据内容,所述数据模式包括所述数据块基于所述部分数据内容规律分布或者所述数据块除所述部分数据内容之外的部分为特定值;
基于所述部分数据内容和数据标志产生将所述数据块写入至存储器的写请求;
发送所述写请求,以将所述部分数据内容写入至所述存储器的目标存储块以及将所述数据标志写入至所述存储器中与所述目标存储块关联的ECC码段。
13.一种数据处理方法,包括:
发送读请求;
接收根据所述读请求从存储器的目标存储块读取的部分数据内容以及从与所述目标存储块关联的ECC码段读取的数据标志,其中,所述数据标志对应于获取数据块的数据模式,所述数据模式包括所述数据块基于所述部分数据内容规律分布或者所述数据块除所述部分数据内容之外的部分为特定值;
根据所述数据模式,从所述部分数据内容恢复所述数据块。
14.根据权利要求12或13所述的数据处理方法,其中,所述部分数据内容对应于所述数据块低位的一半。
15.根据权利要求12或13所述的数据处理方法,其中,所述数据块基于***缓存的缓存行,所述缓存行的长度等于所述存储块的大小且大于用于所述存储器的***带宽。
16.一种数据处理装置,包括:
操作单元,配置为获取数据块的数据模式,产生对应于所述数据模式的数据标志,根据所述数据模式,从所述数据块得到部分数据内容,所述数据模式包括所述数据块基于所述部分数据内容规律分布或者所述数据块除所述部分数据内容之外的部分为特定值;
请求产生单元,配置为基于所述部分数据内容和数据标志产生将所述数据块写入至存储器的写请求;
发送单元,配置为发送所述写请求,以将所述部分数据内容写入至所述存储器的目标存储块以及将所述数据标志写入至所述存储器中与所述目标存储块关联的ECC码段。
17.一种数据处理装置,包括:
发送单元,配置为发送读请求;
接收单元,配置为接收根据所述读请求从存储器的目标存储块读取的部分数据内容以及从与所述目标存储块关联的ECC码段读取的数据标志,其中,所述数据标志对应于获取数据块的数据模式,所述数据模式包括所述数据块基于所述部分数据内容规律分布或者所述数据块除所述部分数据内容之外的部分为特定值;
操作单元,配置为根据所述数据模式,从所述部分数据内容恢复所述数据块。
18.一种数据处理装置,包括:
存储器,用于非暂时性存储计算机可执行指令;以及
处理单元,用于运行所述计算机可执行指令,
其中,所述计算机可执行指令被所述处理单元运行时执行根据权利要求12-15任一所述的数据处理方法。
19.一种非暂时性存储介质,非暂时性地存储计算机可执行指令,其中,当所述计算机可执行指令由计算机执行时,执行根据权利要求12-15任一所述的数据处理方法。
CN202111474099.5A 2021-12-06 2021-12-06 存储控制方法及装置、数据处理方法及装置以及存储介质 Active CN114116530B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111474099.5A CN114116530B (zh) 2021-12-06 2021-12-06 存储控制方法及装置、数据处理方法及装置以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111474099.5A CN114116530B (zh) 2021-12-06 2021-12-06 存储控制方法及装置、数据处理方法及装置以及存储介质

Publications (2)

Publication Number Publication Date
CN114116530A CN114116530A (zh) 2022-03-01
CN114116530B true CN114116530B (zh) 2022-09-13

Family

ID=80366740

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111474099.5A Active CN114116530B (zh) 2021-12-06 2021-12-06 存储控制方法及装置、数据处理方法及装置以及存储介质

Country Status (1)

Country Link
CN (1) CN114116530B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6397365B1 (en) * 1999-05-18 2002-05-28 Hewlett-Packard Company Memory error correction using redundant sliced memory and standard ECC mechanisms
CN104317525A (zh) * 2014-09-23 2015-01-28 天津国芯科技有限公司 一种随机存储器的扩展方法及装置
CN105354153A (zh) * 2015-11-23 2016-02-24 浙江大学城市学院 一种紧耦合异构多处理器数据交换缓存的实现方法
CN108847269A (zh) * 2017-04-18 2018-11-20 爱思开海力士有限公司 存储***及其操作方法
CN110502452A (zh) * 2019-07-12 2019-11-26 华为技术有限公司 访问电子设备中的混合缓存的方法及装置
CN111857600A (zh) * 2020-07-30 2020-10-30 江苏金恒信息科技股份有限公司 一种数据读写方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100437826C (zh) * 2004-09-16 2008-11-26 展讯通信(上海)有限公司 有异步缓存的双倍速动态随机存取存储器控制装置及方法
US8271735B2 (en) * 2009-01-13 2012-09-18 Oracle America, Inc. Cache-coherency protocol with held state
CN107240419B (zh) * 2012-02-22 2020-04-07 慧荣科技股份有限公司 读取快闪存储器中所储存的数据的方法、存储器控制器与***
WO2020199061A1 (zh) * 2019-03-30 2020-10-08 华为技术有限公司 一种处理方法、装置及相关设备
CN111897744B (zh) * 2019-05-05 2024-06-14 兆易创新科技集团股份有限公司 一种数据写入方法、装置、电子设备及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6397365B1 (en) * 1999-05-18 2002-05-28 Hewlett-Packard Company Memory error correction using redundant sliced memory and standard ECC mechanisms
CN104317525A (zh) * 2014-09-23 2015-01-28 天津国芯科技有限公司 一种随机存储器的扩展方法及装置
CN105354153A (zh) * 2015-11-23 2016-02-24 浙江大学城市学院 一种紧耦合异构多处理器数据交换缓存的实现方法
CN108847269A (zh) * 2017-04-18 2018-11-20 爱思开海力士有限公司 存储***及其操作方法
CN110502452A (zh) * 2019-07-12 2019-11-26 华为技术有限公司 访问电子设备中的混合缓存的方法及装置
CN111857600A (zh) * 2020-07-30 2020-10-30 江苏金恒信息科技股份有限公司 一种数据读写方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
优化内存***能效的DRAM架构研究综述;展旭升;《高技术通讯》;20181015;第28卷(第9-10期);794-812 *
基于通用向量DSP的深度学习硬件加速技术;王慧丽等;《中国科学:信息科学》;20190320;第49卷(第3期);256-276 *

Also Published As

Publication number Publication date
CN114116530A (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
CN107943609B (zh) 存储器模块、存储器控制器和***及其相应操作方法
US9817749B2 (en) Apparatus and method of offloading processing from a data storage device to a host device
US11704204B2 (en) High-reliability non-volatile memory using a voting mechanism
US6754858B2 (en) SDRAM address error detection method and apparatus
KR101860809B1 (ko) 메모리 시스템 및 메모리 에러 정정 방법
KR102198611B1 (ko) 메모리 내 에러 수정 방법
US8140940B2 (en) Method and apparatus for controlling memory
KR20100082710A (ko) 데이터 메모리 디바이스 및 인터페이스 에러 검출 및 처리 논리를 갖는 제어기
WO2014164134A2 (en) Detecting effect of corrupting event on preloaded data in non-volatile memory
US20150039968A1 (en) Error code management in systems permitting partial writes
US20180210786A1 (en) Memory systems and electronic systems performing an adaptive error correction operation with pre-checked error rate, and methods of operating the memory systems
US20040225944A1 (en) Systems and methods for processing an error correction code word for storage in memory components
JP3851093B2 (ja) データ転送方法及びデータ処理システム
US10725672B2 (en) Memory module, memory controller and systems responsive to memory chip read fail information and related methods of operation
KR101425704B1 (ko) 비트 포이즈닝 장치, 방법, 시스템 및 제품
US11698832B2 (en) Selective sampling of a data unit during a program erase cycle based on error rate change patterns
US7392347B2 (en) Systems and methods for buffering data between a coherency cache controller and memory
US8489978B2 (en) Error detection
WO2020051528A1 (en) Memory sub-system including an in-package sequencer to perform error correction and memory testing operations
CN112530509A (zh) 为存储设备提供ecc的方法、ecc模块及存储设备
US10735030B2 (en) Re-encoding data associated with failed memory devices
CN114116530B (zh) 存储控制方法及装置、数据处理方法及装置以及存储介质
US7240272B2 (en) Method and system for correcting errors in a memory device
CN105023616A (zh) 一种基于汉明码存取数据的方法及集成随机存取存储器
US9043655B2 (en) Apparatus and control method

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