买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种高速网络中CRC分段计算方法及装置_北京诺芮集成电路设计有限公司_202210365156.4 

申请/专利权人:北京诺芮集成电路设计有限公司

申请日:2022-04-02

公开(公告)日:2024-04-23

公开(公告)号:CN114679239B

主分类号:H04L1/00

分类号:H04L1/00

优先权:

专利状态码:有效-授权

法律状态:2024.04.23#授权;2022.07.15#实质审查的生效;2022.06.28#公开

摘要:本发明涉及一种高速网络中CRC分段计算方法及装置,其中方法包括:将网络中待计算CRC值的数据包进行分块得到按照数据顺序排列的M笔待计算数据块;计算每一笔待计算数据块CRC值;采用前一笔数据块的CRC终值作为当前笔数据块的CRC初值;并将最后一笔数据块的终值作为数据包的CRC值;在进行当前笔数据块的CRC计算时,结合当前笔数据块的CRC初值,采用N个CRC计算单元进行并行计算获得当前笔数据块的CRC终值。本发明能够快速且实时地计算出大规模数据包的CRC值,以满足高速网络的带宽要求。

主权项:1.一种高速网络中CRC分段计算方法,其特征在于,包括:将网络中待计算CRC值的数据包进行分块得到按照数据顺序排列的M笔待计算数据块;计算每一笔待计算数据块CRC值;采用前一笔数据块的CRC终值作为当前笔数据块的CRC初值;并将最后一笔数据块的终值作为数据包的CRC值;在进行当前笔数据块的CRC计算时,结合当前笔数据块的CRC初值,采用N个CRC计算单元进行并行计算获得当前笔数据块的CRC终值;将网络中待计算CRC值的数据包进行分块得到按照数据顺序排列的M笔待计算数据块时,按照N个CRC计算单元的位宽之和的数据长度Y进行分块;每一笔待计算数据块CRC值计算过程包括:步骤S1、判断当前笔数据块长度X是否能整除CRC计算单元的位宽L;是,则将当前笔数据块作为第一数据块转入下一步骤;否,则按位宽L的整数倍将当前笔数据拆分成两个数据块,第一数据块为拆分后长度为位宽L的整数倍的数据,第二数据块为拆分后的余数部分;步骤S2、判断转入的第一数据块长度是否等于数据长度Y;是,则直接转入下一步骤;否,则进行补零操作后得到数据长度Y的数据,转入下一步骤;步骤S3、进行数据切分和编号;按照均等的长度L将待计算数据块分为N个数据段,并按照数据段的bit位高低顺序,对各个数据段编号为数据段Di;i=1,…,N;N=YL;L为CRC计算单元的位宽;步骤S4、将数据段D1中数据与当前笔数据块的CRC初值进行异或操作后,重新赋值到数据段D1中;第一笔数据块的CRC初值的数值为全0、全F或预设的其他数值;步骤S5、采用N个CRC计算单元,对N段数据段进行并行CRC计算,得到N个CRC结果;CRC计算单元1处理数据段D1中数据;CRC计算单元2处理数据段D2中数据;依次类推,CRC计算单元N处理数据段DN中数据;每个CRC计算单元存在和对应数据段编号相关的处理信息;步骤S6、将得到的N个CRC结果进行异或运算,合并得到第一数据块的CRC终值;步骤S7、判断当前笔数据块的计算中是否具有未计算CRC结果的第二数据块;否,则将第一数据块的CRC终值,作为当前笔数据块的CRC终值后,进入下一笔数据块CRC值计算;是,则转入下一步骤;步骤S8、将第二数据块高位补零,使第二数据块的长度与第一数据块的CRC终值长度相同,将补零后的第二数据块与第一数据块的CRC终值进行异或;步骤S9、采用1个余数部分CRC计算单元,对异或结果进行CRC计算,得到CRC结果作为当前笔数据块的CRC终值;所述当前笔数据块的CRC终值作为下一笔数据块的CRC初值,在步骤S304中进行下一笔数据块的异或操作。

全文数据:

权利要求:

百度查询: 北京诺芮集成电路设计有限公司 一种高速网络中CRC分段计算方法及装置

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。