[发明专利]一种处理链路层数据错误的方法在审
申请号: | 201810729580.6 | 申请日: | 2018-07-05 |
公开(公告)号: | CN108988990A | 公开(公告)日: | 2018-12-11 |
发明(设计)人: | 刘刚 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | H04L1/00 | 分类号: | H04L1/00;H04L1/18 |
代理公司: | 济南诚智商标专利事务所有限公司 37105 | 代理人: | 黄晓燕 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 纠正 链路层数据 传输数据 校验 处理链 校验位 路层 重传 矫正 错误校验 校正因子 有效带宽 纠错 链路 取反 发送 | ||
本发明实施例公开了一种处理链路层数据错误的方法,所述方法包括S1,将传输数据进行ecc编码,得到带有r个校验位的ecc数据并发送;S2,获取所述ecc数据,分别校验r个校验位,得到r个矫正因子,根据矫正因子的值判断链路层数据错误是否可纠正;S3,将可纠正情况下对应错误校验位的值取反进行纠错,将不可纠正情况下的ecc数据进行重传。本发明将传输数据进行ecc编码并校验,根据校正因子判断链路层数据错误是否可纠正,在可纠正的情况下直接对数据进行纠正,无需重传,提高链路的有效带宽。
技术领域
本发明涉及计算机通信技术领域,具体地说是一种处理链路层数据错误的方法。
背景技术
随着计算机性能的逐步提高,计算机串行总线的应用越来越广泛,串行总线保证了链路层传输数据的正确性。
在现有技术中,通过crc(Cyclic Redundancy Check,循环冗余校验)校验重传方式保证数据完整性。具体操作为发送端在发送数据的同时携带crc编码,接收端通过crc校验检查数据是否有错误,如发现错误,则进行重传。
当传输通道出现1bit(bit,binary digit,意思为“比特”,是表示信息的最小单位)错误时,需要整个数据进行重传,导致链路有效带宽下降,影响数据传输速率。
发明内容
本发明实施例中提供了一种处理链路层数据错误的方法,以解决现有技术中传输通道出现错误,导致链路有效带宽下降的问题。
为了解决上述技术问题,本发明实施例公开了如下技术方案:
本发明提供了一种处理链路层数据错误的方法,包括以下步骤:
S1,将传输数据进行ecc(Error Correcting Code,错误检查代码)编码,得到带有r个校验位的ecc数据并发送;
S2,获取所述ecc数据,分别校验r个校验位,得到r个矫正因子,根据矫正因子的值判断链路层数据错误是否可纠正;
S3,将可纠正情况下对应错误校验位的值取反进行纠错,将不可纠正情况下的ecc数据进行重传。
进一步地,所述方法还包括
在可纠正情况下,根据被纠正校验位所处的比特位映射串行通道,定位低质量传输通道。
进一步地,步骤S1还包括
将ecc数据保存在重传缓存中。
进一步地,将传输数据进行ecc编码的具体过程为:
S11,根据传输数据位数k及关系式k+r≤2r-1,确定校验码位数r;
S12,将校验位分别安排在2i码位上,信息位依次设置在非2i码位上;
S13,将k+r位汉明码ecc分为r组,每组包含一位校验位,校验位与本组内信息位构成偶校验关系,计算校验位的值;
S14,将校验位和信息位按照步骤S12的规则进行排列,得到ecc数据。
进一步地,步骤S13中分组规则为:
根据S13的规则,确定每个校验位所在的码位j;
从该组校验位所在的码位开始,重复进行连续校验j个码位,然后跳过j个码位,得到每组的数据。
进一步地,将每组的数据进行异或逻辑运算,运算结果记为矫正因子。
进一步地,所述根据矫正因子的值判断链路层数据错误是否可纠正的具体过程为:
若矫正因子均为0,则不存在传输错误,无需纠错;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810729580.6/2.html,转载请声明来源钻瓜专利网。