发明名称 一种64bit位宽的并行CRC32校验方法及装置
摘要 64bit位宽的并行CRC32校验方法及装置,所述方法包括:对输入数据以64bit进行位宽匹配,若判断出输入数据不足64bit,则将预设的56比特数据中低8i比特数据作为填充比特添加到所述输入数据的尾部,得到64bit的数据;其中,i=1、2、...、7;对所述64bit的数据进行CRC32-D64校验,然后将得到的校验结果与所述填充比特对应的CRC校验值进行比较,若两者相同,则判定CRC校验正确;若两者不同,则判定CRC校验错误;所述填充比特对应的CRC校验值是利用校验矩阵F<sub>i32</sub>计算得到并预先存储的。采用本发明后,使得对连续数据的校验在不损失性能的前提下,极大的缩减了资源,提升Fmax的频率。
申请公布号 CN102158316B 申请公布日期 2015.06.17
申请号 CN201110103920.2 申请日期 2011.04.25
申请人 中兴通讯股份有限公司 发明人 吴卫海
分类号 H04L1/00(2006.01)I 主分类号 H04L1/00(2006.01)I
代理机构 北京安信方达知识产权代理有限公司 11262 代理人 解婷婷;龙洪
主权项 一种64bit位宽的并行CRC32校验方法,包括:对输入数据以64bit进行位宽匹配,若判断出输入数据不足64bit,则将预设的56比特数据中低8i比特数据作为填充比特添加到所述输入数据的尾部,得到64bit的数据;其中,i=1、2、…、7;对所述64bit的数据进行CRC32‑D64校验,然后将得到的校验结果与所述填充比特对应的CRC校验值进行比较,若两者相同,则判定CRC校验正确;若两者不同,则判定CRC校验错误;所述填充比特对应的CRC校验值是利用校验矩阵F<sub>i32</sub>计算得到并预先存储的;所述填充比特对应的CRC校验值是利用校验矩阵F<sub>i32</sub>计算得到并预先存储是指:利用校验矩阵F<sub>i32</sub>计算出预设的56比特数据中低8i比特数据对应的CRC校验值,并存储所述56比特数据中低8i比特数据对应的CRC校验值,计算的步骤具体包括:利用下式计算所述56比特数据中低8i比特数据对应的校验值C′<sub>8i</sub>:C′<sub>8i</sub>=(F<sub>i32</sub>×C′<sub>8(i‑1)</sub>)⊕(F<sub>d8</sub>×D′<sub>8i</sub>)其中,×表示按位进行逻辑与运算,⊕表示按位进行逻辑异或运算;F<sub>d8</sub>表示8bit位宽的数据生成矩阵;F<sub>i32</sub>为32bit位宽数据对应的CRC32校验矩阵;C′<sub>0</sub>值为0xc704dd7b;D′<sub>8i</sub>为所述56比特数据中低8i比特数据中的高8bit数据。
地址 518057 广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦法务部