一种存储器故障单元的替换方法及装置、数据存储系统制造方法及图纸

技术编号:8532704 阅读:165 留言:0更新日期:2013-04-04 15:38
本发明专利技术适用于数据处理领域,提供一种存储器故障单元的替换方法及装置、数据存储系统,其中所述方法包括:根据读取地址读取主存储器中对应数据,并检测所述数据是否正确;若所述数据错误,则在映射表中查找所述读取地址对应的替换地址,从替换存储器中获取所述替换地址对应的替换数据并返回至处理器,其中所述映射表保存有主存储器中故障单元地址和替换存储器中对应替换地址的映射关系,所述替换存储器用于保存主存储器中故障单元所对应的正确数据;若所述数据正确,则将所述数据直接返回至处理器。使用本方法即使主存储器存储单元中出现了多处错误,亦可通过映射表获取正确的数据,并且替换存储器的容量也非常小,成本和功耗都很低。

【技术实现步骤摘要】
一种存储器故障单元的替换方法及装置、数据存储系统
本专利技术属于数据处理领域,尤其涉及一种存储器故障单元的替换方法及装置、数 据存储系统。
技术介绍
常用的半导体随机存取存储器可以分为动态随机存取存储器DRAM和静态随机存 取存储器SRAM两大类,DRAM具有集成度高、速度快等特点,主要用作系统的内存;SRAM可以 达到更高的速度,不需要定时刷新,但是集成度较低,因此主要用作高速缓存。DRAM和SRAM都通过电荷来保存信息,例如DRAM是根据晶体管栅极电容是否存有 电荷来表示I或0,SRAM是根据晶体管的导通或截止来表示I或O。它们在外部宇宙射线 或芯片封装材料中放射性元素的影响下,电荷状态可能发生变化,例如从I变成0,导致保 存的信息出现变化。这种现象称为软失效,但是其中的存储单元并未损坏,只是信息发生变 化而已,可以通过重新写入数据将其纠正。此外,芯片工作电压的波动、电磁干扰也会引起 软失效,随着半导体生产工艺的不断改进,DRAM和SRAM的集成度越来越高,工作电压也在 不断降低,因此软失效的几率在不断增加。同时,存储器也会有个别存储单元出现硬失效, 这种故障无法通过重新写入数据进行纠正,从该存储单元中读出来的数据可能一直是1、一 直是O或者不确定。存储器中保存的是系统运行的代码和数据,如果其中的内容发生变化,会产生意 料不到的结果,甚至可能使得系统运行失常或死机。为了解决存储单元的失效问题,现有技术中通过采用ECC (Error Check andCorrection,检错纠错)算法,在现有存储器的基础上新增一片校验存储器(例如内存条 上有9个存储器芯片,其中8个是数据存储器,I个是校验存储器),两者共用同一个通道。 每次向存储器写入数据时,将根据ECC算法得到的校验数据也一起写入校验存储器,从存 储器读出数据时,也一起读出校验存储器中的数据,并根据ECC算法检测是否发生了错误。 如果出现了单比特错误,ECC算法可以将其纠正,得到正确的数据。但ECC算法的纠错能力 很有限,一般只能纠正单个比特的错误,如果发生多个比特错误将无法纠正。同时,虽然ECC 算法将读出的单比特错误纠正了,但存储器中的内容仍然是错误的,如果此后再发生一个 比特的失效就无法纠正了。为此,现有技术为了进一步提高纠错能力,将两个完全相同的存储器组成镜像或 锁步方式,使用两个通道与存储控制器连接。其中镜像方式是将两个存储器的内容组成 一一对应的关系,当检测到其中一个存储器的数据出错时,再从另一个存储器取数据,因此 可以容忍整个存储器失效;锁步方式是将两个存储器通道组合成一个逻辑通道,采用了更 先进的纠错算法,可以容忍单个存储器芯片失效。但是显然,所述镜像方式和锁步方式都要 求使用两组容量、速度完全一样的存储器,增加了系统成本和功耗。
技术实现思路
鉴于上述问题,本专利技术提供一种存储器故障单元的替换方法及装置和数据存储系 统,旨在解决现有技术中,通过增加校验存储器,采用ECC算法的纠错能力很有限,以及采 用镜像方式或锁步方式增加了系统成本和功耗的技术问题。第一方面,所述存储器故障单元的替换方法包括根据读取地址读取主存储器中 对应数据;检测所述数据是否正确;若所述数据错误,则在映射表中查找所述读取地址对 应的替换地址,从替换存储器中获取所述替换地址对应的替换数据并返回至处理器,其中 所述映射表保存有主存储器中故障单元地址和替换存储器中对应替换地址的映射关系,所 述替换存储器用于保存主存储器中故障单元所对应的正确数据;若所述数据正确,则将所 述数据直接返回至处理器。在第一方面的第一种可能的实现方式中,所述根据读取地址读取主存储器中对应 数据,并检测所述数据是否正确步骤之前,还包括根据写入地址将数据写入主存储器中对 应的存储单元,若映射表中存在所述写入地址,将所述数据同时替换存储器中对应的存储 单元。结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式 中,若所述数据错误,则在映射表中查找所述读取地址对应的替换地址,从替换存储器中获 取所述替换地址对应的替换数据并返回至处理器步骤,具体包括若所述数据错误且无法 纠正,则在映射表中查找所述读取地址对应的替换地址,从替换存储器中获取所述替换地 址对应的替换数据并返回至处理器。结合第一方面第二种可能的实现方式,在第三种可能的实现方式中,若所述数据 错误但可以纠正,则将纠正后的数据返回至处理器。结合第一方面第二种可能的实现方式,在第四种可能的实现方式中,若所述数据 错误且无法纠正,则在映射表中查找所述读取地址对应的替换地址,从替换存储器中获取 所述替换地址对应的替换数据并返回至处理器步骤,具体包括若所述数据错误且无法纠 正,同时映射表中存在所述读取地址,则根据读取地址所对应的替换地址,从替换存储器中 获取对应的替换数据并返回至处理器。结合第一方面第四种可能的实现方式中,在第五种可能的实现方式中,若所述数 据错误且无法纠正,同时映射表中不存在所述读取地址,则分配一个替换存储器的空白地 址与所述读取地址对应,作为新的映射表项写入映射表,并输出重启指令。结合第一方面第三种可能的实现方式,在第六种可能的实现方式中,所述若所述 数据错误但可以纠正,则将纠正后的数据返回至处理器步骤,具体包括若所述数据错误但 可以纠正,同时映射表中存在所述读取地址,则将纠正后的数据返回至处理器。结合第一方面地六种可能的实现方式,在第七种可能实现的方式中,若所述数据 错误但可以纠正,同时映射表中不存在所述读取地址,则将纠正后的数据返回至处理器,再 分配一个替换存储器的空白地址与所述读取地址对应,作为新的映射表项写入映射表,并 将纠正后数据写入所述空白地址对应的存储单元。结合第一方面的第五种或第七种可能的实现方式,在第八中可能的实现方式中, 在写入新的映射表项时若已达到映射表的容量上限,则随机选取一个映射表项替换为所述 新的映射表项;或者,在映射表中按照顺序顺次替换所述新的映射表项;或者,将最近最少 使用的映射表项替换为所述新的映射表项。结合第一方面第八中可能的实现方式,在第九种可能的实现方式中,在写入新的 映射表项时若已达到映射表的容量上限,则同时向处理器输出中断告警。第二方面,所述存储器故障单元的替换装置包括读取检测单元,用于根据读取地 址读取主存储器中对应数据,并检测所述数据是否正确;替换数据返回单元,用于当所述读 取检测单元检测到所述数据错误时,映射表中查找所述读取地址对应的替换地址,从替换 存储器中获取所述替换地址对应的替换数据并返回至处理器,其中所述映射表保存有主存 储器中故障单元地址和替换存储器中对应替换地址的映射关系,所述替换存储器用于保存 主存储器中故障单元所对应的正确数据;数据直接返回单元,用于当所述读取检测单元检 测到所述数据正确时,将所述数据直接返回至处理器。在第二方面的第一种可能的实现方式中,所述装置还包括数据写入单元,用于根 据写入地址将数据写入主存储器中对应的存储单元,若映射表中存在所述写入地址,将所 述数据同时替换存储器中对应的存储单元。结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式 中,所述替换数据返回单元包括替换返回模块,用于当所述数据错误且无法纠正时,本文档来自技高网
...

【技术保护点】
一种存储器故障单元的替换方法,其特征在于,所述方法包括:根据读取地址读取主存储器中对应数据;检测所述数据是否正确;若所述数据错误,则在映射表中查找所述读取地址对应的替换地址,从替换存储器中获取所述替换地址对应的替换数据并返回至处理器,其中所述映射表保存有主存储器中故障单元地址和替换存储器中对应替换地址的映射关系,所述替换存储器用于保存主存储器中故障单元所对应的正确数据;若所述数据正确,则将所述数据直接返回至处理器。

【技术特征摘要】
1.一种存储器故障单元的替换方法,其特征在于,所述方法包括 根据读取地址读取主存储器中对应数据; 检测所述数据是否正确; 若所述数据错误,则在映射表中查找所述读取地址对应的替换地址,从替换存储器中获取所述替换地址对应的替换数据并返回至处理器,其中所述映射表保存有主存储器中故障单元地址和替换存储器中对应替换地址的映射关系,所述替换存储器用于保存主存储器中故障单元所对应的正确数据; 若所述数据正确,则将所述数据直接返回至处理器。2.如权利要求1所述方法,其特征在于,所述根据读取地址读取主存储器中对应数据步骤之前,还包括 根据写入地址将数据写入主存储器中对应的存储单元,若映射表中存在所述写入地址,将所述数据同时替换存储器中对应的存储单元。3.如权利要求1或2所述方法,其特征在于,所述若所述数据错误,则在映射表中查找所述读取地址对应的替换地址,从替换存储器中获取所述替换地址对应的替换数据并返回至处理器包括 若所述数据错误且无法纠正,则在映射表中查找所述读取地址对应的替换地址,从替换存储器中获取所述替换地址对应的替换数据并返回至处理器。4.如权利要求3所述方法,其特征在于,还包括 若所述数据错误但可以纠正,则将纠正后的数据返回至处理器。5.如权利要求3所述方法,其特征在于,若所述数据错误且无法纠正,则在映射表中查找所述读取地址对应的替换地址,从替换存储器中获取所述替换地址对应的替换数据并返回至处理器步骤,具体包括 若所述数据错误且无法纠正,同时映射表中存在所述读取地址,则根据读取地址所对应的替换地址,从替换存储器中获取对应的替换数据并返回至处理器。6.如权利要求5所述的方法,其特征在于,还包括 若所述数据错误且无法纠正,同时映射表中不存在所述读取地址,则分配一个替换存储器的空白地址与所述读取地址对应,作为新的映射表项写入映射表,并输出重启指令。7.如权利要求4所述方法,其特征在于,所述若所述数据错误但可以纠正,则将纠正后的数据返回至处理器步骤,具体包括 若所述数据错误但可以纠正,同时映射表中存在所述读取地址,则将纠正后的数据返回至处理器。8.如权利要求7所述的方法,其特征在于还包括 若所述数据错误但可以纠正,同时映射表中不存在所述读取地址,则将纠正后的数据返回至处理器,再分配一个替换存储器的空白地址与所述读取地址对应,作为新的映射表项写入映射表,并将纠正后数据写入所述空白地址对应的存储单元。9.如权利要求6或8所述方法,其特征在于,在写入新的映射表项时若已达到映射表的容量上限,则随机选取一个映射表项替换为所述新的映射表项;或者,在映射表中按照顺序顺次替换所述新的映射表项;或者,将最近最少使用的映射表项替换为所述新的映射表项。10.如权利要求9所述方法,其特征在于,在写入新的映射表项时若已达到映射表的容量上限,则同时向处理器输出中断告警。11.一种存储器故障单元的替换装置,其特征在于,所述装置包括 数据读取单元,用于根据读取地址读取主存储器中对应数据; 数据检测单元,用于检测所述数据是否正确; 替换数据返回单元,用于当所述读取检测单元检测到所述数据错误时,映射表中查找所述读取地址对应的替换地址,从替换存储器中获取所述替换地址对应的替换数据并返回至处理器,其中所述映射表保存有主存...

【专利技术属性】
技术研发人员:李延松
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1