[发明专利]一种硬件表项校验错误的处理方法及装置有效
申请号: | 201210374815.7 | 申请日: | 2012-09-29 |
公开(公告)号: | CN102904685A | 公开(公告)日: | 2013-01-30 |
发明(设计)人: | 刘如冰;许诚 | 申请(专利权)人: | 杭州华三通信技术有限公司 |
主分类号: | H04L1/00 | 分类号: | H04L1/00 |
代理公司: | 北京鑫媛睿博知识产权代理有限公司 11297 | 代理人: | 龚家骅 |
地址: | 310053 浙江省杭州市高新技术产业*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 硬件 校验 错误 处理 方法 装置 | ||
技术领域
本发明涉及通信领域,尤其涉及一种硬件表项校验错误的处理方法及装置。
背景技术
ECC(Error Correcting Code,错误检查和纠正)内存是指应用了EEC技术的内存,一般多应用于服务器及图形工作站上,以使整个电脑工作系统在工作时更趋于安全稳定。
在EEC技术出现之前,内存中应用最多的技术为Parity(奇偶校验)技术。在数字电路中,最小的数据单位为比特(bit),也叫数据“位”,比特也是内存中的最小单位,它是通过“1”和“0”来表示数据高、低电平信号的。在数字电路中8个连续的比特是一个字节(byte)。在不带“奇偶校验”的内存中每个字节只有8位,若它的某一位存储出现了错误,就会使其中存储的相应数据发生改变而导致应用程序发生错误。而带有“奇偶校验”的内存在每一字节(8位)之外又额外增加了一位用来进行错误检测。比如一个字节中存储了某一数值(1、0、1、0、1、0、1、1),把每一位相加起来(1+0+1+0+1+0+1+1=5)。若其结果为奇数,对于偶校验,校验位就定义为1,反之则定位为0;对于奇校验,则相反。当CPU返回读取存储的数据时,它会再次相加前8位中存储的数据,计算结果是否与校验位相一致。当CPU发现二者不一致时就会尝试纠正这些错误。但Parity的不足是:当内存查到某个数据位有错误时,却并不一定能确定在哪一个位,也就不一定能修正错误。所以带有奇偶校验的内存的主要功能仅仅是“发现错误”,并能纠正部分简单的错误。
通过上面的分析我们知道,Parity内存是通过在原来数据位的基础上增加一个数据位来检查当前8位数据的正确性,但随着数据位的增加Parity用来检验的数据位也成倍增加,就是说当数据位为16位时它需要增加2位用于检查,当数据位为32位时则需增加4位,依此类推。特别是当数据量非常大时,数据出错的几率也就越大,对于只能纠正简单错误的奇偶检验的方法就显得无法满足需求了,正是基于这样一种情况,一种新的内存技术应运而生了,这就是ECC内存,这种内存技术也是在原来的数据位上外加校验位来实现的。不同的是两者增加的方法不一样,这也就导致了两者的主要功能不太一样。它与Parity不同的是如果数据位是8位,则需要增加5位来进行错误检查和纠正,数据位每增加一倍,ECC只增加一位检验位,也就是说当数据位为16位时ECC位为6位,32位时ECC位为7位,数据位为64位时ECC位为8位,依此类推,数据位每增加一倍,ECC位只增加一位。总之,在内存中ECC能够容许错误,并可以将错误更正,使系统得以持续正常的操作,不致因错误而中断,且ECC具有比Parity更先进的自动识别、更正的能力,可以将Parity无法检查出来的错误位查出并将错误修正,但ECC仅能纠正单个比特的错误,当错误位超过一个比特,则无法进行纠正。
硬件表项可以保存在转发芯片内部的寄存器中,也可以保存在转发芯片内部或外挂RAM(Random Access Memory,随机存取存储器)中,且可以占用32bits,或多个32bits,其作用为指导报文的转发。
硬件表项下发到硬件过程中会产生奇偶校验或ECC值下发到器件中,不同器件可以使用不同的硬件表项校验错误方法。在报文转发过程中,读取此表项并对比校验值是否与原来的值相同。如果不相同,则确定数据发生错误。
当前硬件表项校验方法已经广泛应用到各个器件中,但是由于Parity不能纠正错误,而ECC也仅能纠正单个比特的错误,现有技术中,并没有提供一种检测到硬件表项校验错误后的恢复机制,导致检测到硬件表项校验错误后必须更换整个转发板卡。
发明内容
本发明提供一种硬件表项校验错误的处理方法及装置,以提高系统的可靠性和可维护性。
为了达到以上目的,本发明实施例提供了一种硬件表项校验错误的处理方法,包括:
获取器件的校验信息寄存器记录的该器件的硬件表项校验错误信息;其中,所述硬件表项校验错误信息包括出错硬件表项的地址和出错次数;
确定第一预设时间内所述硬件表项校验错误信息中出错硬件表项的出错次数超过门限值,则根据该出错硬件表项的地址确定该出错硬件表项的索引;
根据所述出错硬件表项的索引查询对应的软件表项,并根据查询到的软件表项刷新所述出错硬件表项;
确定在第二预设时间内所述器件的校验信息寄存器未记录新的硬件表项校验错误信息,则保持所述器件工作状态。
其中,所述根据所述硬件表项校验错误信息确定出错硬件表项的索引,具体通过以下公式实现:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华三通信技术有限公司,未经杭州华三通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210374815.7/2.html,转载请声明来源钻瓜专利网。