[发明专利]一种适用于向量处理器的通用CRC并行计算部件及方法有效
| 申请号: | 201310750101.6 | 申请日: | 2013-12-31 |
| 公开(公告)号: | CN103731239B | 公开(公告)日: | 2017-01-18 |
| 发明(设计)人: | 王东琳;张峰;田园;徐晓梅 | 申请(专利权)人: | 中国科学院自动化研究所 |
| 主分类号: | H04L1/00 | 分类号: | H04L1/00 |
| 代理公司: | 中科专利商标代理有限责任公司11021 | 代理人: | 宋焰琴 |
| 地址: | 100190 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 适用于 向量 处理器 通用 crc 并行 计算 部件 方法 | ||
技术领域
本发明涉及计算机向量处理器技术领域,具体涉及一种适用于向量处理器的通用CRC并行计算部件及方法。
背景技术
在通信系统中,由于存在各种各样的干扰信号,会导致通信过程中出现误码。为了有效检测误码存在,发送端在信息数据后增加CRC校验码,接收端对接收到的信息数据进行同样的CRC计算,通过与附加CRC校验码进行比较,可以判断出数据传输是否有误码。
经典的CRC校验方法一般采用线性反馈移位寄存器(LFSR)实现,该方法按位计算数据CRC编码,速度极慢;为提高CRC编码计算速度,有人又提出采取查表法实现数据CRC编码,该方法按照CRC生成多项式长度将信息数据分为多个子数据块,然后将上次结果与当前子数据块相异或后查表得到当前子数据块CRC编码,该方法前后两个子数据块间存在数据相关,子数据块之间只能顺序计算,速度仍然较慢。
在光通信、超宽带移动无线通信等高速通信领域,由于数据传输量大,查表法也无法满足需求,同时一套通信系统中存在几种CRC编码方法,如在LTE中就存在CRC24A、CRC24B、CRC16、CRC8四种编码方法,这就要求采用一种针对各种CRC生成多项式的并行度更高的计算方法实现CRC编码过程。
向量处理器是一种典型的SIMD指令集,可以一次对一维数组进行并行计算,如果能针对向量处理器设计一种CRC并行计算部件,即将CRC编码过程分解适合宽度的数据同时计算,则可以成倍提高CRC编码效率。
发明内容
为解决现有技术中存在的上述缺陷,本发明公开了一种向量处理器的CRC并行计算部件和方法。
根据本发明一方面,其提供了一种向量处理器的通用CRC并行计算部件,其包括:16个子数据块CRC编码器和一个子块编码合并模块,其中每个CRC编码器接收将待编码信息等分成16个子数据块后的其中一个子数据块,并通过所述编码系数矩阵对其进行编码,所述子块编码合并模块将16个子数据块CRC编码器输出的编码结果进行合并后输出编码数据,其输出反馈至第一个子数据块CRC编码器,与第一个子数据块进行异或后参与编码。
根据本发明另一方面,其还提供了一种适用于向量处理器的通用CRC并行计算方法,其包括:
步骤1、根据CRC生成多项式生成各子数据块对应的编码系数矩阵,并配置到CRC并行计算部件中;
步骤2、将待编码数据按照512比特长度分割为N个预备数据块;
步骤3、将预备数据块按照32比特长度分割为16个子数据块,并通过16个独立的子数据块编码器同时计算出16个子数据块CRC编码结果;
步骤4、将16个子数据块CRC编码进行合并,得到预备数据块编码结果;
步骤5、将预备数据块编码结果与下一个预备数据块低32位子数据块进行异或;
步骤6、重复步骤3-5,直到将所有预备数据块计算完毕,即得到待编码数据的CRC编码结果。
上述CRC编码计算方法和部件可同时并行计算512位CRC编码,与传统的线性反馈移位寄存器方法相比,计算速度可提高512倍。
附图说明
图1示出了本发明中向量处理器的通用CRC并行计算部件框图;
图2示出了本发明中全部数据块CRC编码流程图;
图3示出了本发明中预备数据块分割示意图;
图4示出了本发明中线性反馈移位寄存器CRC编码电路图;
图5示出了本发明中预备数据块CRC编码框图;
图6示出了本发明中子数据块CRC编码框图;
图7示出了本发明中子数据块编码合并模块框图;
图8示出了本发明中CRC码长适配模块框图;
图9示出了本发明中不同码长编码系数矩阵组成图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明作进一步的详细说明。
图1示出了本发明提出的一种向量处理器的通用CRC并行计算部件结构图。如图1所示,其包括:16个子数据块CRC编码器和一个子块编码合并模块,其中每个CRC编码器接收将待编码信息等分成16个子数据块后的其中一个子数据块,并通过所述编码系数矩阵对其进行编码,所述子块编码合并模块将16个子数据块CRC编码器输出的编码结果进行合并后输出编码数据,其输出反馈至第一个子数据块CRC编码器,与第一个子数据块进行异或后参与编码。
名词解释:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院自动化研究所,未经中国科学院自动化研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310750101.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种防胀裂球阀
- 下一篇:一种镍合金球阀的球体





