WO2019090657A1 - 一种存储器容错保护方法、装置、设备及存储介质 - Google Patents

一种存储器容错保护方法、装置、设备及存储介质 Download PDF

Info

Publication number
WO2019090657A1
WO2019090657A1 PCT/CN2017/110364 CN2017110364W WO2019090657A1 WO 2019090657 A1 WO2019090657 A1 WO 2019090657A1 CN 2017110364 W CN2017110364 W CN 2017110364W WO 2019090657 A1 WO2019090657 A1 WO 2019090657A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
stored data
storage
dimension
matrix
Prior art date
Application number
PCT/CN2017/110364
Other languages
English (en)
French (fr)
Inventor
邵翠萍
李慧云
王峥
Original Assignee
深圳先进技术研究院
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 深圳先进技术研究院 filed Critical 深圳先进技术研究院
Priority to PCT/CN2017/110364 priority Critical patent/WO2019090657A1/zh
Publication of WO2019090657A1 publication Critical patent/WO2019090657A1/zh

Links

Images

Classifications

    • 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

Definitions

  • FIG. 4 is a schematic structural diagram of a memory fault tolerance protection apparatus according to Embodiment 4 of the present invention.
  • step S101 when a data write request is received, the storage data requested to be written into the storage is acquired, and the stored data is odd-even coded to obtain all the first parity bits of the stored data.
  • the feature vector corresponding to the d eigenvalues, Y d is the data expression in the low dimensional space.
  • the values on each column are the same, which is the mean of the dimensions corresponding to X. For example, for the M-dimensional data X, then Mean by each dimension composition.
  • the obtained stored data is subjected to odd/even parity encoding to obtain all the second parity bits of the stored data.
  • the first parity bit is the same as the second parity bit.
  • the dimension-reduced data corresponding to the stored data is obtained from the storage, The data is restored after the dimensionality reduction to recover the undistorted high-dimensional data, and then the undistorted high-dimensional data obtained by the recovery is output, thereby improving the accuracy of reading the data.
  • d feature values are selected from the feature values ⁇ i according to the dimension d after dimensionality reduction, d feature values are selected in the order of the largest value in the feature value ⁇ i , thereby improving the accuracy of subsequent calculations. Sex.
  • the first encoding unit 41 is configured to: when receiving the data write request, acquire the storage data requested to be written into the storage, and perform odd/even parity encoding on the stored data to obtain all the first parity bits of the stored data.
  • FIG. 5 shows the structure of a storage device according to Embodiment 5 of the present invention. For the convenience of description, only parts related to the embodiment of the present invention are shown.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

一种存储器容错保护方法、装置、设备及存储介质,该方法包括:当接收到数据写入请求时,获取请求写入储存器的存储数据,对存储数据进行奇/偶校验编码,得到存储数据所有的奇偶校验位(S101),使用主成分析法对存储数据进行降维,得到存储数据对应的降维后数据(S102),将存储数据、所有的奇偶校验位以及降维后数据写入到储存器中(S103),从而优化了写入到储存器中的数据,进而降低储存器中数据读出时发生错误的概率。

Description

一种存储器容错保护方法、装置、设备及存储介质 技术领域
本发明属于计算机技术领域,尤其涉及一种存储器容错保护方法、装置、设备及存储介质。
背景技术
存储器控制器是嵌入式系统中的核心部件之一,处理器运行的程序及程序所需的计算数据均是通过请求存储器控制器从存储器中取得,存储器的容错能力在一定程度上决定了嵌入式系统的应用范围,对处理器的可靠性至关重要。
针对单粒子翻转(Single Event Upset,简称SEU)问题,除了从物理上防御和基于电路的加固外,三模冗余(Triple Modular Redundancy,简称TMR)和检错纠错码(Error Correcting Code,简称ECC)是最常用的两种方法。TMR技术通过将同一份信息保存在三份物理存储空间中,读取的时候比较三份内容,取两个一致的值为真值,从而提高读取的准确性。这种方案可以纠正每位错误,甚至一个数据全错,也能得到正确的结果,而且读取速度快,只是需要增加较多的硬件元器件。ECC技术是目前用于存储系统可靠性的常用技术。
TMR是一种常见的硬件冗余技术,其原理是在相同的一组硬件单元上同时发生错误的概率要比在单一硬件单元上发生错误的概率小,基本方法是将所需容错的硬件单元增加到三倍或更多,并将各个单元的输出连接到一个表决器上,由表决器选择所有硬件单元中的绝大多数输出值作为整体的输出值。这种方法可以容忍并纠正多位错误,但是硬件开销非常大。
ECC有多种编码技术,不同的编码技术有不同的检错和纠错能力。例如,奇偶校验码只能检测出一个码字中的一位或奇数位错,但是不能定位错误,因而也就不能纠正错误;汉明码可以纠正一少字中任何一位错误,检测出两位错 误。还有许多其它高阶的ECC编码算法,例如BCH码,RS码等,可以检测和纠正一个码字中的多位错误,但是算法复杂,面积和延迟开销也更大,并且当发生类似MBU这种多位错误的时候,高阶编码技术也不能保证准确定位错误位置。具体来讲,每增加一位错误的检测,编码算法的复杂度和硬件开销都急剧增加。所以到目前为止,在存储器容错编码中用的最广泛的仍然是纠二检一码。
发明内容
本发明的目的在于提供一种存储器容错保护方法、装置、设备及存储介质,旨在解决由于现有技术硬件开销和时延太大、错误的检测和纠正效率不高,导致存储器数据读取速度较慢的问题。
一方面,本发明提供了一种存储器容错保护方法,所述方法包括下述步骤:
当接收到数据写入请求时,获取请求写入储存器的存储数据,对所述存储数据进行奇/偶校验编码,得到所述存储数据所有的第一奇偶校验位;
使用主成分析法对所述存储数据进行降维,得到所述存储数据对应的降维后数据;
将所述存储数据、所述所有的第一奇偶校验位以及所述降维后数据写入到所述储存器中。
另一方面,本发明提供了一种存储器容错保护装置,所述装置包括:
第一编码单元,用于当接收到数据写入请求时,获取请求写入储存器的存储数据,对所述存储数据进行奇/偶校验编码,得到所述存储数据所有的第一奇偶校验位;
数据降维单元,用于使用主成分析法对所述存储数据进行降维,得到所述存储数据对应的降维后数据;以及
数据写入单元,用于将所述存储数据、所述所有的第一奇偶校验位以及所述降维后数据写入到所述储存器中。
另一方面,本发明还提供了一种存储设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如所述存储器容错保护方法的步骤。
另一方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如所述存储器容错保护方法的步骤。
本发明当接收到数据写入请求时,获取请求写入储存器的存储数据,对存储数据进行奇/偶校验编码,得到存储数据所有的奇偶校验位,使用主成分析法对存储数据进行降维,得到存储数据对应的降维后数据,将存储数据、所有的奇偶校验位以及降维后数据写入到储存器中,从而优化了写入到储存器中的数据,进而降低储存器中数据读出时发生错误的概率。
附图说明
图1是本发明实施例一提供的存储器容错保护方法的实现流程图;
图2是本发明实施例二提供的存储器容错保护方法的实现流程图;
图3是本发明实施例三提供的存储器容错保护装置的结构示意图;
图4是本发明实施例四提供的存储器容错保护装置的结构示意图;以及
图5是本发明实施例五提供的存储设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
以下结合具体实施例对本发明的具体实现进行详细描述:
实施例一:
图1示出了本发明实施例一提供的存储器容错保护方法的实现流程,为了 便于说明,仅示出了与本发明实施例相关的部分,详述如下:
在步骤S101中,当接收到数据写入请求时,获取请求写入储存器的存储数据,对存储数据进行奇/偶校验编码,得到存储数据所有的第一奇偶校验位。
本发明实施例适用于储存器,尤其适用于可读写储存器,以方便进行存储器容错保护。在本发明实施例中,当接收到用户的数据写入请求时,首先获取请求写入储存器的存储数据对应的矩阵,然后根据矩阵对存储数据进行奇/偶校验编码(矩阵每一行每一列上的数据就对应一个奇偶校验位),得到存储数据所有的第一奇偶校验位,为了便于描述,在这里将存储数据的奇偶校验位记为第一奇偶校验位。奇/偶校验包含奇校验和偶校验两种校验。奇校验(Odd Parity)所约定的编码规律是让整个校验码(包含有效信息和校验位)中“1”的个数为奇数,而偶校验(Even Parity)约定的编码规律是让整个校验码中“1”的个数为偶数。被校验数据可能是奇性(“1”的个数为奇数)的,也可能是偶性的,所以奇、偶两种校验都只需配一个校验码,就可以使整个校验码满足指定的奇偶性要求。奇偶校验位可以为“0”或者“1”,奇偶校验位取“0”还是“1”的原则是:若是奇校验,则连同校验位在内编码里含“1”的个数共有奇数个;若是偶校验,则连同校验位在内编码里含“1”的个数是偶数个。
在步骤S102中,使用主成分析法对存储数据进行降维,得到存储数据对应的降维后数据。
在本发明实施例中,使用主成分析法对存储数据做降维变换,得到存储数据对应的降维后数据,以方便在后续数据保护过程中仅对变换后的低维数据进行保护,从而优化数据保护过程,进而降低硬件开销和时延。
优选地,在使用主成分析法对存储数据进行降维时,首先获取存储数据对应的原始矩阵X,计算原始矩阵X每一维度上的均值
Figure PCTCN2017110364-appb-000001
并计算原始矩阵X的协方差矩阵∑,接着获取协方差矩阵的特征值λi,i=1,2…,M*N,计算特征值λi对应的特征向量ui对原始矩阵的贡献率CR,根据贡献率CR确定降维后的维度d,根据降维后的维度d从特征值λi中选择d个特征值,将原始矩阵X投 影到d个特征值对应的线性子空间中,得到原始矩阵X对应的d维降维矩阵Yd,从而在降维的同时,提高降维后数据的准确性。其中,原始矩阵X为N*M矩阵,N为样本个数,M为样本维度,j为列标。
进一步优选地,在计算特征值λi对应的特征向量ui对原始矩阵的贡献率CR,根据贡献率CR确定降维后的维度d时,首先获取由协方差矩阵的特征值λi构成的对角阵
Figure PCTCN2017110364-appb-000002
然后计算特征值λi对应的特征向量ui对原始矩阵的贡献率
Figure PCTCN2017110364-appb-000003
最后,判断计算得到的贡献率CR是否大于预设阈值,当贡献率CR大于预设阈值时,满足条件的最小的d即为满足要求的新的维度d。具体地,预设阈值可以根据对数据准确性的要求进行设置,例如,可以设置为95%或者99%等。
具体地,
Figure PCTCN2017110364-appb-000004
Yd为降维后数据,为d*N维的矩阵(N为样本个数,d为降维之后的维度),Ud=(u1,…ud)T是对应于Δ中最大的d个特征值对应的特征向量,Yd即为低维空间中的数据表达,
Figure PCTCN2017110364-appb-000005
为与X维度相同的矩阵,每列上的值相同,为X对应维度上的均值。例如,对于M维的数据X,则
Figure PCTCN2017110364-appb-000006
由每一维度上的均值
Figure PCTCN2017110364-appb-000007
组成。
进一步优选地,在根据降维后的维度d从特征值λi中选择d个特征值时,在特征值λi中按照从大到小的顺序选择d个特征值,从而提高后续计算的准确性。
在步骤S103中,将存储数据、所有的第一奇偶校验位以及降维后数据写入到储存器中。
在本发明实施例中,得到存储数据对应的降维后数据之后,将存储数据、所有的第一奇偶校验位以及降维后数据写入到储存器中,从而优化了写入到储存器中的数据,进而降低储存器中数据读出时发生错误的概率。
实施例二:
图2示出了本发明实施例二提供的存储器容错保护方法的实现流程,为了 便于说明,仅示出了与本发明实施例相关的部分,详述如下:
在步骤S201中,当接收到数据写入请求时,获取请求写入储存器的存储数据,对存储数据进行奇/偶校验编码,得到存储数据所有的第一奇偶校验位。
本发明实施例适用于储存器,尤其适用于可读写储存器,以方便进行存储器容错保护。在本发明实施例中,当接收到用户的数据写入请求时,首先获取请求写入储存器的存储数据对应的矩阵,然后根据矩阵对存储数据进行奇/偶校验编码(矩阵每一行每一列上的数据就对应一个奇偶校验位),得到存储数据所有的第一奇偶校验位,为了便于描述,在这里将存储数据的奇偶校验位记为第一奇偶校验位。奇/偶校验包含奇校验和偶校验两种校验。奇校验(Odd Parity)所约定的编码规律是让整个校验码(包含有效信息和校验位)中“1”的个数为奇数,而偶校验(Even Parity)约定的编码规律是让整个校验码中“1”的个数为偶数。被校验数据可能是奇性(“1”的个数为奇数)的,也可能是偶性的,所以奇、偶两种校验都只需配一个校验码,就可以使整个校验码满足指定的奇偶性要求。奇偶校验位可以为“0”或者“1”,奇偶校验位取“0”还是“1”的原则是:若是奇校验,则连同校验位在内编码里含“1”的个数共有奇数个;若是偶校验,则连同校验位在内编码里含“1”的个数是偶数个。
在步骤S202中,使用主成分析法对存储数据进行降维,得到存储数据对应的降维后数据。
在本发明实施例中,使用主成分析法对存储数据做降维变换,得到存储数据对应的降维后数据,以方便在后续数据保护过程中仅对变换后的低维数据进行保护,从而优化数据保护过程,进而降低硬件开销和时延。
优选地,在使用主成分析法对存储数据进行降维时,首先获取存储数据对应的原始矩阵X,计算原始矩阵X每一维度上的均值
Figure PCTCN2017110364-appb-000008
并计算原始矩阵X的协方差矩阵∑,接着获取协方差矩阵的特征值λi,i=1,2…,M*N,计算特征值λi对应的特征向量ui对原始矩阵的贡献率CR,根据贡献率CR确定降维后的维度d,根据降维后的维度d从特征值λi中选择d个特征值,将原始矩阵X投 影到d个特征值对应的线性子空间中,得到原始矩阵X对应的d维降维矩阵Yd,从而在降维的同时,提高降维后数据的准确性。其中,原始矩阵X为N*M矩阵,N为样本个数,M为样本维度,j为列标。
进一步优选地,在计算特征值λi对应的特征向量ui对原始矩阵的贡献率CR,根据贡献率CR确定降维后的维度d时,首先获取由协方差矩阵的特征值λi构成的对角阵
Figure PCTCN2017110364-appb-000009
然后计算特征值λi对应的特征向量ui对原始矩阵的贡献率
Figure PCTCN2017110364-appb-000010
最后,判断计算得到的贡献率CR是否大于预设阈值,当贡献率CR大于预设阈值时,满足条件的最小的d即为满足要求的新的维度d。具体地,预设阈值可以根据对数据准确性的要求进行设置,例如,可以设置为95%或者99%等。
具体地,
Figure PCTCN2017110364-appb-000011
Yd为降维后数据,为d*N维的矩阵(N为样本个数,d为降维之后的维度),Ud=(u1,…ud)T是对应于Δ中最大的d个特征值对应的特征向量,Yd即为低维空间中的数据表达,
Figure PCTCN2017110364-appb-000012
为与X维度相同的矩阵,每列上的值相同,为X对应维度上的均值。例如,对于M维的数据X,则
Figure PCTCN2017110364-appb-000013
由每一维度上的均值
Figure PCTCN2017110364-appb-000014
组成。
进一步优选地,在根据降维后的维度d从特征值λi中选择d个特征值时,在特征值λi中按照从大到小的顺序选择d个特征值,从而提高后续计算的准确性。
在步骤S203中,将存储数据、所有的第一奇偶校验位以及降维后数据写入到储存器中。
在本发明实施例中,得到存储数据对应的降维后数据之后,将存储数据、所有的第一奇偶校验位以及降维后数据写入到储存器中,从而优化了写入到储存器中的数据,进而降低储存器中数据读出时发生错误的概率。
在步骤S204中,当接收到数据读出请求时,从储存器中获取读出请求对应的存储数据以及存储数据对应的所有的第一奇偶校验位。
在本发明实施例中,当接收到数据读出请求时,首先根据数据读出请求从储存器中获取读出请求对应的存储数据以及存储数据对应的所有的第一奇偶校验位,以用于后续的数据错误判断。
在步骤S205中,对获取的存储数据进行奇/偶校验编码,得到存储数据的第二奇偶校验位。
在本发明实施例中,对获取的存储数据进行奇/偶校验编码,得到存储数据所有的第二奇偶校验位。其中,对同一数据,第一奇偶校验位与第二奇偶校验位相同。
在步骤S206中,根据第一奇偶校验位和第二奇偶校验位,判断存储数据是否发生错误,是则执行步骤S207,否则执行步骤S208。
在步骤S207中,当存储数据发生错误时,从储存器中获取存储数据对应的降维后数据,对降维后数据进行数据恢复,并输出恢复得到的数据。
在本发明实施例中,如果第一奇偶校验位与对应的第二奇偶校验位不全相同,则说明存储数据出错,此时,从储存器中获取存储数据对应的降维后数据,对降维后数据进行数据恢复,以恢复出不失真的高维数据,然后输出恢复得到的不失真高维数据,从而提高了读取数据的准确性。
优选地,在对降维后数据进行数据恢复时,根据公式
Figure PCTCN2017110364-appb-000015
进行数据恢复,从而提高了数据恢复过程的准确性。
在步骤S208中,当存储数据未发生错误时,直接从储存器中获取存储数据并输出。
在本发明实施例中,首先,采用降维方法对存储数据进行降维编码,简化了存储复杂度,其次,通过降维后的低维数据恢复原始数据,不会受到原始数据的错误分布的限制,降低了低维数据发生错误的概率,从而在不增加硬件开销的情况下仍然能够检测和纠正多位错误。再者,本发明实施例采用奇偶检验位判断预读取的数据是否有错,如果没有错误则直接解码读取,如果有错误才对低维的数据做恢复处理,恢复得到不失真的高维数据,这样,保证了只在数 据出错时做数据恢复,提高了数据读取速度。
实施例三:
图3示出了本发明实施例三提供的存储器容错保护装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分,其中包括:
第一编码单元31,用于当接收到数据写入请求时,获取请求写入储存器的存储数据,对存储数据进行奇/偶校验编码,得到存储数据所有的第一奇偶校验位。
在本发明实施例中,当接收到用户的数据写入请求时,通过第一编码单元31首先获取请求写入储存器的存储数据对应的矩阵,然后根据矩阵对存储数据进行奇/偶校验编码(矩阵每一行每一列上的数据就对应一个奇偶校验位),得到存储数据所有的第一奇偶校验位,为了便于描述,在这里将存储数据的奇偶校验位记为第一奇偶校验位。奇/偶校验包含奇校验和偶校验两种校验。奇校验(Odd Parity)所约定的编码规律是让整个校验码(包含有效信息和校验位)中“1”的个数为奇数,而偶校验(Even Parity)约定的编码规律是让整个校验码中“1”的个数为偶数。被校验数据可能是奇性(“1”的个数为奇数)的,也可能是偶性的,所以奇、偶两种校验都只需配一个校验码,就可以使整个校验码满足指定的奇偶性要求。奇偶校验位可以为“0”或者“1”,奇偶校验位取“0”还是“1”的原则是:若是奇校验,则连同校验位在内编码里含“1”的个数共有奇数个;若是偶校验,则连同校验位在内编码里含“1”的个数是偶数个。
数据降维单元32,用于使用主成分析法对存储数据进行降维,得到存储数据对应的降维后数据。
在本发明实施例中,通过数据降维单元32使用主成分析法对存储数据做降维变换,得到存储数据对应的降维后数据,以方便在后续数据保护过程中仅对变换后的低维数据进行保护,从而优化数据保护过程,进而降低硬件开销和时延。
优选地,在使用主成分析法对存储数据进行降维时,首先获取存储数据对 应的原始矩阵X,计算原始矩阵X每一维度上的均值
Figure PCTCN2017110364-appb-000016
并计算原始矩阵X的协方差矩阵∑,接着获取协方差矩阵的特征值λi,i=1,2…,M*N,计算特征值λi对应的特征向量ui对原始矩阵的贡献率CR,根据贡献率CR确定降维后的维度d,根据降维后的维度d从特征值λi中选择d个特征值,将原始矩阵X投影到d个特征值对应的线性子空间中,得到原始矩阵X对应的d维降维矩阵Yd,从而在降维的同时,提高降维后数据的准确性。其中,原始矩阵X为N*M矩阵,N为样本个数,M为样本维度,j为列标。
进一步优选地,在计算特征值λi对应的特征向量ui对原始矩阵的贡献率CR,根据贡献率CR确定降维后的维度d时,首先获取由协方差矩阵的特征值λi构成的对角阵
Figure PCTCN2017110364-appb-000017
然后计算特征值λi对应的特征向量ui对原始矩阵的贡献率
Figure PCTCN2017110364-appb-000018
最后,判断计算得到的贡献率CR是否大于预设阈值,当贡献率CR大于预设阈值时,满足条件的最小的d即为满足要求的新的维度d。具体地,预设阈值可以根据对数据准确性的要求进行设置,例如,可以设置为95%或者99%等。
具体地,
Figure PCTCN2017110364-appb-000019
Yd为降维后数据,为d*N维的矩阵(N为样本个数,d为降维之后的维度),Ud=(u1,…ud)T是对应于Δ中最大的d个特征值对应的特征向量,Yd即为低维空间中的数据表达,
Figure PCTCN2017110364-appb-000020
为与X维度相同的矩阵,每列上的值相同,为X对应维度上的均值。例如,对于M维的数据X,则
Figure PCTCN2017110364-appb-000021
由每一维度上的均值
Figure PCTCN2017110364-appb-000022
组成。
进一步优选地,在根据降维后的维度d从特征值λi中选择d个特征值时,在特征值λi中按照从大到小的顺序选择d个特征值,从而提高后续计算的准确性。
数据写入单元33,用于将存储数据、所有的第一奇偶校验位以及降维后数据写入到储存器中。
在本发明实施例中,得到存储数据对应的降维后数据之后,通过数据写入 单元33将存储数据、所有的第一奇偶校验位以及降维后数据写入到储存器中,从而优化了写入到储存器中的数据,进而降低储存器中数据读出时发生错误的概率。
在本发明实施例中,存储器容错保护装置的各单元可由相应的硬件或软件单元实现,各单元可以为独立的软、硬件单元,也可以集成为一个软、硬件单元,在此不用以限制本发明。
实施例四:
图4示出了本发明实施例四提供的存储器容错保护装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分,其中包括:
第一编码单元41,用于当接收到数据写入请求时,获取请求写入储存器的存储数据,对存储数据进行奇/偶校验编码,得到存储数据所有的第一奇偶校验位。
在本发明实施例中,当接收到用户的数据写入请求时,通过第一编码单元41首先获取请求写入储存器的存储数据对应的矩阵,然后根据矩阵对存储数据进行奇/偶校验编码(矩阵每一行每一列上的数据就对应一个奇偶校验位),得到存储数据所有的第一奇偶校验位,为了便于描述,在这里将存储数据的奇偶校验位记为第一奇偶校验位。奇/偶校验包含奇校验和偶校验两种校验。奇校验(Odd Parity)所约定的编码规律是让整个校验码(包含有效信息和校验位)中“1”的个数为奇数,而偶校验(Even Parity)约定的编码规律是让整个校验码中“1”的个数为偶数。被校验数据可能是奇性(“1”的个数为奇数)的,也可能是偶性的,所以奇、偶两种校验都只需配一个校验码,就可以使整个校验码满足指定的奇偶性要求。奇偶校验位可以为“0”或者“1”,奇偶校验位取“0”还是“1”的原则是:若是奇校验,则连同校验位在内编码里含“1”的个数共有奇数个;若是偶校验,则连同校验位在内编码里含“1”的个数是偶数个。
数据降维单元42,用于使用主成分析法对存储数据进行降维,得到存储数据对应的降维后数据。
在本发明实施例中,通过降维编码单元42使用主成分析法对存储数据做降维变换,得到存储数据对应的降维后数据,以方便在后续数据保护过程中仅对变换后的低维数据进行保护,从而优化数据保护过程,进而降低硬件开销和时延。
优选地,在使用主成分析法对存储数据进行降维时,首先获取存储数据对应的原始矩阵X,计算原始矩阵X每一维度上的均值
Figure PCTCN2017110364-appb-000023
并计算原始矩阵X的协方差矩阵∑,接着获取协方差矩阵的特征值λi,i=1,2…,M*N,计算特征值λi对应的特征向量ui对原始矩阵的贡献率CR,根据贡献率CR确定降维后的维度d,根据降维后的维度d从特征值λi中选择d个特征值,将原始矩阵X投影到d个特征值对应的线性子空间中,得到原始矩阵X对应的d维降维矩阵Yd,从而在降维的同时,提高降维后数据的准确性。其中,原始矩阵X为N*M矩阵,N为样本个数,M为样本维度,j为列标。
进一步优选地,在计算特征值λi对应的特征向量ui对原始矩阵的贡献率CR,根据贡献率CR确定降维后的维度d时,首先获取由协方差矩阵的特征值λi构成的对角阵
Figure PCTCN2017110364-appb-000024
然后计算特征值λi对应的特征向量ui对原始矩阵的贡献率
Figure PCTCN2017110364-appb-000025
最后,判断计算得到的贡献率CR是否大于预设阈值,当贡献率CR大于预设阈值时,满足条件的最小的d即为满足要求的新的维度d。具体地,预设阈值可以根据对数据准确性的要求进行设置,例如,可以设置为95%或者99%等。
具体地,
Figure PCTCN2017110364-appb-000026
Yd为降维后数据,为d*N维的矩阵(N为样本个数,d为降维之后的维度),Ud=(u1,…ud)T是对应于Δ中最大的d个特征值对应的特征向量,Yd即为低维空间中的数据表达,
Figure PCTCN2017110364-appb-000027
为与X维度相同的矩阵,每列上的值相同,为X对应维度上的均值。例如,对于M维的数据X,则
Figure PCTCN2017110364-appb-000028
由每一维度上的均值
Figure PCTCN2017110364-appb-000029
组成。
进一步优选地,在根据降维后的维度d从特征值λi中选择d个特征值时, 在特征值λi中按照从大到小的顺序选择d个特征值,从而提高后续计算的准确性。
数据写入单元43,用于将存储数据、所有的第一奇偶校验位以及降维后数据写入到储存器中。
在本发明实施例中,得到存储数据对应的降维后数据之后,通过数据写入单元43将存储数据、所有的第一奇偶校验位以及降维后数据写入到储存器中,从而优化了写入到储存器中的数据,进而降低储存器中数据读出时发生错误的概率。
数据获取单元44,用于当接收到数据读出请求时,从储存器中获取读出请求对应的存储数据以及存储数据对应的所有的第一奇偶校验位。
在本发明实施例中,当接收到数据读出请求时,通过数据获取单元44首先根据数据读出请求从储存器中获取读出请求对应的存储数据以及存储数据对应的所有的第一奇偶校验位,以用于后续的数据错误判断。
第二编码单元45,用于对获取的存储数据进行奇/偶校验编码,得到存储数据的第二奇偶校验位。
在本发明实施例中,通过第二编码单元45对存储数据进行奇/偶校验编码,得到存储数据的第二奇偶校验位。其中,对同一数据,第一奇偶校验位与第二奇偶校验位相同。
错误判断单元46,用于根据第一奇偶校验位和第二奇偶校验位,判断存储数据是否发生错误。
第一输出单元47,用于当存储数据发生错误时,从储存器中获取存储数据对应的降维后数据,对降维后数据进行数据恢复,并输出恢复得到的数据。
在本发明实施例中,如果第一奇偶校验位与对应的第二奇偶校验位不全相同,则说明存储数据出错,此时,通过第一输出单元47从储存器中获取存储数据对应的降维后数据,对降维后数据进行数据恢复,以恢复出不失真的高维数据,然后输出恢复得到的不失真高维数据,从而提高了读取数据的准确性。
优选地,在对降维后数据进行数据恢复时,根据公式
Figure PCTCN2017110364-appb-000030
进行数据恢复,从而提高了数据恢复过程的准确性。
第二输出单元48,用于当存储数据未发生错误时,直接从储存器中获取存储数据并输出。
因此,优选地,该数据降维单元42包括:
原始矩阵获取单元421,用于获取存储数据对应的原始矩阵X,原始矩阵X为N*M矩阵,其中,N为样本个数,M为样本维度;
协方差计算单元422,用于计算原始矩阵X每一维度上的均值
Figure PCTCN2017110364-appb-000031
并计算原始矩阵X的协方差矩阵∑,其中,j为列标;
维度确定单元423,用于获取协方差矩阵∑的特征值λi,计算特征值λi对应的特征向量ui对原始矩阵X的贡献率CR,根据贡献率CR确定降维后的维度d;以及
降维矩阵获取单元424,用于根据降维后的维度d从特征值λi中选择d个特征值,将原始矩阵X投影到d个特征值对应的线性子空间中,得到原始矩阵X对应的d维降维矩阵Yd
在本发明实施例中,存储器容错保护装置的各单元可由相应的硬件或软件单元实现,各单元可以为独立的软、硬件单元,也可以集成为一个软、硬件单元,在此不用以限制本发明。
实施例五:
图5示出了本发明实施例五提供的存储设备的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
本发明实施例的存储设备5包括处理器50、存储器51以及存储在存储器51中并可在处理器50上运行的计算机程序52。该处理器50执行计算机程序52时实现上述各个存储器容错保护方法实施例中的步骤,例如图1所示的步骤S101至S103、图2所示的步骤S201至S208。或者,处理器50执行计算机程序52时实现上述各装置实施例中各单元的功能,例如,图3所示单元31至33、 图4所示单元41至48的功能。
在本发明实施例中,该处理器50执行计算机程序52时实现上述各个存储器容错保护方法实施例中的步骤时,当接收到数据写入请求时,获取请求写入储存器的存储数据,对存储数据进行奇/偶校验编码,得到存储数据所有的奇偶校验位,使用主成分析法对存储数据进行降维,得到存储数据对应的降维后数据,将存储数据、所有的奇偶校验位以及降维后数据写入到储存器中,从而优化了写入到储存器中的数据,进而降低储存器中数据读出时发生错误的概率。
该存储设备5中处理器50在执行计算机程序52时实现的步骤具体可参考实施例一中方法的描述,在此不再赘述。
实施例六:
在本发明实施例中,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述各个存储器容错保护方法实施例中的步骤,例如,图1所示的步骤S101至S103、图2所示的步骤S201至S208。或者,该计算机程序被处理器执行时实现上述各装置实施例中各单元的功能,例如,图3所示单元31至33、图4所示单元41至48的功能。
在本发明实施例中,当接收到数据写入请求时,获取请求写入储存器的存储数据,对存储数据进行奇/偶校验编码,得到存储数据所有的奇偶校验位,使用主成分析法对存储数据进行降维,得到存储数据对应的降维后数据,将存储数据、所有的奇偶校验位以及降维后数据写入到储存器中,从而优化了写入到储存器中的数据,进而降低储存器中数据读出时发生错误的概率。该计算机程序被处理器执行时实现的存储器容错保护方法进一步可参考前述方法实施例中步骤的描述,在此不再赘述。
本发明实施例的计算机可读存储介质可以包括能够携带计算机程序代码的任何实体或装置、记录介质,例如,ROM/RAM、磁盘、光盘、闪存等存储器。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

  1. 一种存储器容错保护方法,其特征在于,所述方法包括下述步骤:
    当接收到数据写入请求时,获取请求写入储存器的存储数据,对所述存储数据进行奇/偶校验编码,得到所述存储数据所有的第一奇偶校验位;
    使用主成分析法对所述存储数据进行降维,得到所述存储数据对应的降维后数据;
    将所述存储数据、所述所有的第一奇偶校验位以及所述降维后数据写入到所述储存器中。
  2. 如权利要求1所述的方法,其特征在于,所述方法还包括:
    当接收到数据读出请求时,从所述储存器获取所述数据读出请求对应的所述存储数据以及所述存储数据对应的所有的第一奇偶校验位;
    对所述存储数据进行奇/偶校验编码,得到所述存储数据所有的第二奇偶校验位;
    根据所述第一奇偶校验位和所述第二奇偶校验位,判断所述存储数据是否发生错误;
    当所述存储数据发生错误时,从所述储存器获取所述存储数据对应的降维后数据,对所述降维后数据进行数据恢复,并输出所述恢复得到的数据。
  3. 如权利要求2所述的方法,其特征在于,所述方法还包括:
    当所述存储数据未发生错误时,直接从所述储存器中获取所述存储数据并输出。
  4. 如权利要求1所述的方法,其特征在于,使用主成分析法对所述存储数据进行降维的步骤,包括:
    获取所述存储数据对应的原始矩阵X,所述原始矩阵X为N*M矩阵,所述N为样本个数,所述M为样本维度;
    计算所述原始矩阵X每一维度上的均值
    Figure PCTCN2017110364-appb-100001
    并计算所述原始矩阵X的协方 差矩阵∑,所述j为列标;
    获取所述协方差矩阵∑的特征值λi,计算所述特征值λi对应的特征向量ui对所述原始矩阵X的贡献率CR,根据所述贡献率CR确定降维后的维度d;
    根据所述降维后的维度d从所述特征值λi中选择d个特征值,将所述原始矩阵X投影到所述d个特征值对应的线性子空间中,得到所述原始矩阵X对应的d维降维矩阵Yd
  5. 一种存储器容错保护装置,其特征在于,所述装置包括:
    第一编码单元,用于当接收到数据写入请求时,获取请求写入储存器的存储数据,对所述存储数据进行奇/偶校验编码,得到所述存储数据所有的第一奇偶校验位;
    数据降维单元,用于使用主成分析法对所述存储数据进行降维,得到所述存储数据对应的降维后数据;以及
    数据写入单元,用于将所述存储数据、所述所有的第一奇偶校验位以及所述降维后数据写入到所述储存器中。
  6. 如权利要求5所述的装置,其特征在于,所述装置还包括:
    数据获取单元,用于当接收到数据读出请求时,从所述储存器获取所述数据读出请求对应的所述存储数据以及所述存储数据对应的所有的第一奇偶校验位;
    第二编码单元,用于对所述存储数据进行奇/偶校验编码,得到所述存储数据所有的第二奇偶校验位;
    错误判断单元,用于根据所述第一奇偶校验位和所述第二奇偶校验位,判断所述存储数据是否发生错误;以及
    第一输出单元,用于当所述存储数据发生错误时,从所述储存器获取所述存储数据对应的降维后数据,对所述降维后数据进行数据恢复,并输出所述恢复得到的数据。
  7. 如权利要求6所述的装置,其特征在于,所述装置还包括:
    第二输出单元,用于当所述存储数据未发生错误时,直接从所述储存器中获取所述存储数据并输出。
  8. 如权利要求5所述的装置,其特征在于,所述数据降维单元包括:
    原始矩阵获取单元,用于获取所述存储数据对应的原始矩阵X,所述原始矩阵X为N*M矩阵,所述N为样本个数,所述M为样本维度;
    协方差计算单元,用于计算所述原始矩阵X每一维度上的均值
    Figure PCTCN2017110364-appb-100002
    并计算所述原始矩阵X的协方差矩阵∑,所述j为列标;
    维度确定单元,用于获取所述协方差矩阵∑的特征值λi,计算所述特征值λi对应的特征向量ui对所述原始矩阵X的贡献率CR,根据所述贡献率CR确定降维后的维度d;以及
    降维矩阵获取单元,用于根据所述降维后的维度d从所述特征值λi中选择d个特征值,将所述原始矩阵X投影到所述d个特征值对应的线性子空间中,得到所述原始矩阵X对应的d维降维矩阵Yd
  9. 一种存储设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至4任一项所述方法的步骤。
  10. 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述方法的步骤。
PCT/CN2017/110364 2017-11-10 2017-11-10 一种存储器容错保护方法、装置、设备及存储介质 WO2019090657A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/110364 WO2019090657A1 (zh) 2017-11-10 2017-11-10 一种存储器容错保护方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/110364 WO2019090657A1 (zh) 2017-11-10 2017-11-10 一种存储器容错保护方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
WO2019090657A1 true WO2019090657A1 (zh) 2019-05-16

Family

ID=66438222

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/110364 WO2019090657A1 (zh) 2017-11-10 2017-11-10 一种存储器容错保护方法、装置、设备及存储介质

Country Status (1)

Country Link
WO (1) WO2019090657A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101123123A (zh) * 2006-08-07 2008-02-13 富士通株式会社 能够改变纠错码码长的半导体存储装置
US20100174969A1 (en) * 2008-12-31 2010-07-08 Stmicroelectronics, Inc. Error-locator-polynomial generation with erasure support
CN102609677A (zh) * 2011-01-21 2012-07-25 北京数字指通软件技术有限公司 一种基于指纹和纠错码的生物特征密码系统
CN103870808A (zh) * 2014-02-27 2014-06-18 中国船舶重工集团公司第七一〇研究所 一种手指静脉识别方法
CN105991230A (zh) * 2015-02-13 2016-10-05 瑞昱半导体股份有限公司 存储器控制模块与方法以及纠错码编/解码电路与方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101123123A (zh) * 2006-08-07 2008-02-13 富士通株式会社 能够改变纠错码码长的半导体存储装置
US20100174969A1 (en) * 2008-12-31 2010-07-08 Stmicroelectronics, Inc. Error-locator-polynomial generation with erasure support
CN102609677A (zh) * 2011-01-21 2012-07-25 北京数字指通软件技术有限公司 一种基于指纹和纠错码的生物特征密码系统
CN103870808A (zh) * 2014-02-27 2014-06-18 中国船舶重工集团公司第七一〇研究所 一种手指静脉识别方法
CN105991230A (zh) * 2015-02-13 2016-10-05 瑞昱半导体股份有限公司 存储器控制模块与方法以及纠错码编/解码电路与方法

Similar Documents

Publication Publication Date Title
US9170898B2 (en) Apparatus and methods for providing data integrity
KR101560077B1 (ko) 데이터 무결성을 제공하기 위한 방법 및 장치
EP2529305B1 (en) System and method to correct data errors using a stored count of bit values
US9632863B2 (en) Track error-correcting code extension
US11086712B2 (en) Error recovery handling
US9881670B2 (en) Soft information module
US20220365846A1 (en) Integrated circuit and method of operating same
CN108021467B (zh) 一种存储器容错保护方法、装置、设备及存储介质
US11150813B2 (en) Memory system
US20180203625A1 (en) Storage system with multi-dimensional data protection mechanism and method of operation thereof
US9959166B2 (en) Error correction for non-volatile memory
WO2015165202A1 (zh) 一种基于汉明码存取数据的方法及集成随机存取存储器
WO2019090657A1 (zh) 一种存储器容错保护方法、装置、设备及存储介质
US11962327B2 (en) Iterative decoding technique for correcting DRAM device failures
CN108984340B (zh) 存储器数据的容错保护方法、装置、设备及存储介质
CN109032833B (zh) 多位错误数据的纠正方法、装置、设备及存储介质
WO2019232727A1 (zh) 多位错误数据的纠正方法、装置、设备及存储介质
CN110597656B (zh) 一种二级缓存标记阵列的校验单错处理方法
WO2019232721A1 (zh) 存储器中数据读取的错误纠正方法、装置、设备及介质
US11809272B2 (en) Error correction code offload for a serially-attached memory device
US20210109808A1 (en) Using Original Data as Soft Bit Information in a Decoder
US10558523B2 (en) Computing system with data protection enhancement mechanism and method of operation thereof
KR20240039361A (ko) 메모리 장치의 오류 정정 방법 및 장치
JP5916204B2 (ja) メモリ装置及びメモリパトロールによるデータ化け回避方法
SOWJANYA et al. Implementation of Systematic Error-Correcting Codes for Matching of Data Encoded

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17931435

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17931435

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 10.11.2020)

122 Ep: pct application non-entry in european phase

Ref document number: 17931435

Country of ref document: EP

Kind code of ref document: A1