[發明專利]一種循環冗余校驗方法和裝置在審
| 申請號: | 202010868867.4 | 申請日: | 2020-08-25 |
| 公開(公告)號: | CN114124291A | 公開(公告)日: | 2022-03-01 |
| 發明(設計)人: | 李西昆;樊震 | 申請(專利權)人: | 北京百卓網絡技術有限公司 |
| 主分類號: | H04L1/00 | 分類號: | H04L1/00 |
| 代理公司: | 北京集智東方知識產權代理有限公司 11578 | 代理人: | 陳亞斌;關兆輝 |
| 地址: | 100095 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 循環 冗余 校驗 方法 裝置 | ||
本發明公開了一種循環冗余校驗方法和裝置,該方法包括:獲取待處理的數據報文;獲取所述待處理的數據報文的有效字節和無效字節,將所述無效字節填充為0;設置CRC32_D512算法模塊;輸入所述有效字節到所述CRC32_D512算法模塊;基于所述CRC32_D512算法模塊計算得到第一CRC結果;設置反推導crc32_rollback模塊;輸入所述第一CRC結果至所述反推導crc32_rollback模塊;基于所述反推導crc32_rollback模塊反推得到第二CRC結果;基于所述有效字節的字節數和所述第二CRC結果,選擇獲取第三CRC結果。本發明在不需要額外添加算法模塊的前提下,實現大位寬數據CRC(循環冗余校驗)計算,且不額外占用系統資源,不會影響整體系統性能,易于實現。
技術領域
本說明書涉及數據校驗領域,特別是一種循環冗余校驗方法和裝置。
背景技術
在數據傳輸過程中,無論傳輸系統的設計再怎么完美,差錯總會存在,這種差錯可能會導致在鏈路上傳輸的一個或者多個幀被破壞(出現比特差錯,0變為1,或者1變為0),從而接受方接收到錯誤的數據。為盡量提高接受方收到數據的正確率,在接收方接收數據之前需要對數據進行差錯檢測,當且僅當檢測的結果為正確時接收方才真正收下數據。檢測的方式有多種,包括循環冗余校驗CRC(Cyclic Redundancy Check)。
循環冗余校驗CRC(Cyclic Redundancy Check)是一種根據網絡數據包或計算機文件等數據產生簡短固定位數校驗碼的一種信道編碼技術,主要用來檢測或校驗數據傳輸或者保存后可能出現的錯誤。它是利用除法及余數的原理來作錯誤偵測的。
在網絡通信中,為了提高通信的可靠性,需要對數據流做CRC(循環冗余校驗)處理,針對高位寬數據流做CRC(循環冗余校驗)實現時,數據流非全字節有效的情況下,需要根據數據流的有效字節個數來確定使用的CRC計算功能函數。現有技術方法比較繁雜,需要額外消耗一部分資源,且在數字可編程芯片FPGA芯片實現方式下,還會降低整體系統性能。
發明內容
本說明書實施例的目的在于,提供了一種循環冗余校驗方法和裝置,在不需要額外添加算法模塊的前提下,實現大位寬數據crc(循環冗余校驗)計算,且不額外占用系統資源,不會影響整體系統性能,易于實現。
為達到上述目的,一方面,本說明書實施例提供了一種循環冗余校驗方法,包括:
獲取待處理的數據報文;
獲取所述待處理的數據報文的有效字節和無效字節,將所述無效字節填充為0;
設置CRC32_D512算法模塊;
輸入所述有效字節到所述CRC32_D512算法模塊;
基于所述CRC32_D512算法模塊計算得到第一CRC結果;
設置反推導crc32_rollback模塊;
輸入所述第一CRC結果至所述反推導crc32_rollback模塊;
基于所述反推導crc32_rollback模塊反推得到第二CRC結果;
基于所述有效字節的字節數和所述第二CRC結果,選擇獲取第三CRC結果。
另一方面,本說明書實施例還提供了一種循環冗余校驗裝置,包括:
報文處理模塊,用于基于獲取的規則全文,處理待處理報文;
報文獲取模塊,用于獲取待處理的數據報文和所述待處理的數據報文的有效字節和無效字節,并將所述無效字節填充為0;
CRC32_D512算法模塊,用于基于輸入的所述有效字節計算得到第一CRC結果;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京百卓網絡技術有限公司,未經北京百卓網絡技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010868867.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:冰箱的控制方法及冰箱
- 下一篇:啟動系統及電瓶車





