[发明专利]一种同时纠正相变存储器软硬错误的方法及装置在审
申请号: | 201911413668.8 | 申请日: | 2019-12-31 |
公开(公告)号: | CN111522684A | 公开(公告)日: | 2020-08-11 |
发明(设计)人: | 王锐;王语涵;杨凯;张连怡;张晗;蔡继红;钱德沛 | 申请(专利权)人: | 北京航空航天大学;北京仿真中心 |
主分类号: | G06F11/10 | 分类号: | G06F11/10;G11C29/42 |
代理公司: | 北京科迪生专利代理有限责任公司 11251 | 代理人: | 安丽;邓治平 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 同时 纠正 相变 存储器 软硬 错误 方法 装置 | ||
1.一种同时纠正相变存储器软硬错误的方法,其特征在于:包括局部的ECC纠错机制、全局的ECP纠错机制和存储行错误数目标记机制;对于存储器中的每一行,设置一个局部的ECC纠错机制,对于整个存储器设置一个全局的ECP纠错机制,基于相变存储器在写入数据时会校验,如果该相变存储器中的存储行中存在硬错误,则在写入时会被发现,从而触发纠错机制,局部ECC纠错机制校验和纠正存储器中的每个行的一位错误;当某个存储器行出现大于一位错误时,局部ECC机制无法纠正,此时采用全局ECP纠错机制来纠正,全局ECP纠错机制具体实现为:以行为单位,在存储器中分配一定的专门空间,不存储普通数据,而作为全局ECP纠错区,每一行称为ECP行;当存储器中任何一行只出现1位错,无论是硬错误还是软错误,则该行的局部ECC机制发现并纠正,当存储器中任何一行在写入时出现了2位或者以上的硬错误时,此时存储行错误数目标记机制记录错误信息,并触发全局ECP纠错机制,使用全局纠错区的存储空间替换出错区的数据行来存储数据;在一种特殊情况,即是某一行之前有一个数据位出现硬错误,已经用局部ECC纠错了,但是运行时又出现了一位软错误,则该行的局部ECC能够发现错误,但无法纠正,此时也需要采用全局ECP纠错机制进行纠错,使用全局纠错区的存储空间替换出错区的存储器行来存储数据;
对于存储器中的每一行的ECC纠错机制,在ECC的存储位之外,增加若干个数据存储位,作为该行的错误数标记位,用来记录硬错误的个数,如果以字母n代表数据存储位的个数,那么错误数标记位可以记录的错误数为2的n次方个;错误数标记位的作用是在存储器读取数据时,根据错误数标记位的信息,决定是否查询全局ECP纠错机制中的全局存储区,如果错误数标志位显示错误数大于等于2,那么查询ECP纠错机制中该存储器行的替代行,将替代行的数据读出。
2.根据权利要求1所述的同时纠正相变存储器软硬错误的方法,其特征在于:局部的ECC纠错机制是:使用增加一个奇偶校验位的海明码算法实现,纠正1位错误,并检测到2位错误。
3.根据权利要求1所述的同时纠正相变存储器软硬错误的方法,其特征在于:全局的ECP纠错机制中,每个ECP行,记录其中的硬错误的地址;ECP纠错机制的第一级使用组相连映射方式,记录存储器中所有硬错误;当组内空间不足时,使用ECP存储机制的第二级。
4.根据权利要求3所述的同时纠正相变存储器软硬错误的方法,其特征在于:第二级ECP存储机制将所有第一级相连映射方式的组存储器存储不下的硬错误逐一顺序存储在第二级ECP的表内。
5.根据权利要求2所述的同时纠正相变存储器软硬错误的方法,其特征在于:错误数标记位是:对于存储器每一行的ECC对应一个标记位,错误数标记位有三种状态:
第一种状态:存储器中该行没有硬错误;
第二种状态:存储器中该行有1处硬错误;
第三种状态:该行有超过1处的硬错误;
标记位依据相变存储器写入时检测到的硬错误个数不断更新标记位状态,当相变存储器写入数据时,根据错误数标记位的状态,决定读取数据的具体方式。
6.根据权利要求5所述的同时纠正相变存储器软硬错误的方法,其特征在于:所述读取数据的具体方式是:当要读取存储器中的一行时,首先访问该行对应的错误数目标记位,根据标记位的状态,执行不同操作,
当标记位为第一种状态,即该行没有硬错误时,直接读取该行并进行ECC校验,此时产生1位软错误可以正确纠正,若产生2位或2位以上软错误则,由ECC报告错误;
当标记位为第二种状态,即该行有1处硬错误时,读取该行并通过ECC校验纠正该行硬错误,若此时没有产生软错误则ECC校验结束,若产生了1位软错误即ECC检测到了2位错误时,则使用ECP纠错机制将硬错误先行纠正,再使用ECC纠正该1位软错误;若产生2位或2位以上软错误,则由ECC报告错误;
当标记位为第三种状态,即该行有超过1处的硬错误,则直接先行通过ECP机制纠错,ECP纠错完成后,再通过该行对应的ECC纠错机制纠错,若此时产生1位软错误能正确纠正,若产生2位或2位以上软错误,则由ECC报告错误。
7.一种同时纠正相变存储器软硬错误的装置,其特征在于:包括在存储器读取时候工作的读取纠错模块、在存储器写入时候工作的存储纠错模块;读取纠错模块工作在计算机要读取存储器中的一行时,首先读取该行的错误数标记位,判断该行是否存在大于1位的硬错误,如果存在大于1位的硬错误,那么启动全局ECP纠错机制,读取全局ECP存储区中用于替换的行的数据,用于纠正读取时的软错误以及存储器本身的硬错误;存储纠错模块是工作在计算机要写入存储器中的一行时,先读取错误数标记位,如果该位显示硬错误数大于1,那么启动全局ECP纠错机制,将数据写入ECP全局存储区中事先分配好的存储器行;如果错误数标记位不大于1,那么写入数据,再将写入的数据读出,与之前待写入的数据对比,如果发现有1位不一致,那么根据写入的数据计算并更新ECC校验位;如果写入后校验时发现有若干位的数据不一致,而且不一致的位数大于1,那么更新错误数标记位,并启动全局ECP纠错机制,为该存储器行在全局ECP纠错区中分配一行存储空间,用来写入将要写入该行的数据,并更新错误数标记位。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学;北京仿真中心,未经北京航空航天大学;北京仿真中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911413668.8/1.html,转载请声明来源钻瓜专利网。