[发明专利]一种基于FPGA的CRC并行运算IP核有效
申请号: | 201710897690.9 | 申请日: | 2017-09-28 |
公开(公告)号: | CN107704335B | 公开(公告)日: | 2019-08-20 |
发明(设计)人: | 刘洪光;刘玉荣 | 申请(专利权)人: | 华南理工大学 |
主分类号: | G06F11/10 | 分类号: | G06F11/10 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 李斌 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 fpga crc 并行 运算 ip | ||
1.一种基于FPGA的CRC并行运算IP核,其特征在于,包括:
CRC位宽自动识别模块,读入生成多项式对应的二进制数,根据二进制数的首位为1所在的位置识别出待计算的CRC码的位数;
refin配置模块,选择不同的功能模式:CRC生成模式和CRC检查模式;
特征矩阵生成模块,以模2运算方法计算32阶特征矩阵H32×32的n次方,其中n取CRC位宽和并行运算位宽中较小的数,并将矩阵运算结果传输给其他模块进行后续运算;
CRC生成运算模块,实现8bit、16bit、32bit CRC位宽和8bit、16bit、32bit并行运算位宽之间任意组合的CRC校验码的计算;
refout、xorout配置模块,选择不同的功能模式:CRC生成模式和CRC检查模式;
CRC检查运算模块,判断8bit、16bit、32bit CRC位宽和8bit、16bit、32bit并行运算位宽之间任意组合的CRC校验码与数据是否匹配;
所述CRC校验码的计算具体为:根据位宽自动识别模块输入的CRC位宽和输入的并行运算位宽,判定采用对应的运算公式,将refin配置模块输入的数据经过对应的公式运算,生成初步的CRC_1,输出给refout、xorout配置模块;
所述特征矩阵生成模块计算32阶特征矩阵H的n次方,采用的是矩阵列变换的方式,即矩阵A乘矩阵B,等同于按照矩阵B的元素特点对矩阵A进行列变换,并且本模块结合特征矩阵H内第2-31列包含单位矩阵的特点,将右乘H的矩阵运算采用2-31列右移取代列变换的操作方法。
2.根据权利要求1所述的基于FPGA的CRC并行运算IP核,其特征在于,CRC生成运算模块和CRC检查运算模块中在并行运算CRC值时的矩阵模乘运算均采用矩阵列变换的方式实现。
3.根据权利要求1所述的基于FPGA的CRC并行运算IP核,其特征在于,CRC生成运算模块和CRC检查运算模块的功能为实现8bit、16bit、32bitCRC位宽和8bit、16bit、32bit并行运算位宽之间任意组合配置的CRC校验码的生成和检查,设CRC位宽为k,并行运算位宽为w,则共有以下9种配置情况k/w:32/32、32/16、32/8、16/16、16/8、8/8、16/32、8/32、8/16;其中k≥w的情况有k/w:32/32、32/16、32/8、16/16、16/8、8/8共6种,k≤w的情况有16/32、8/32、8/16共3种;
设多项式的二进制系数向量g=[gk-1 gk-2…g0],rj(i)为存储CRC值的寄存器j在i时刻的状态,有下列公式成立:
令Rk(i)=[rk-1(i) rk-2(i)…r0(i)]T,其中k表示寄存器数目也即CRC位宽,则可写为如下形式其中为CRC运算的特征矩阵;
在k≥w的情况下,设各CRC寄存器的初始态为Rk(0),利用数学归纳法,可得在初始态后w时刻,
如CRC宽度32bit,并行处理位宽8bit,现态寄存器值为R32(0),次态寄存器值为R32(8)即为R32(0)经过8bit并行运算一拍后的值,其中H8由特征矩阵计算模块计算所得;
以上推导适用于k/w:32/32、32/16、32/8的情况,对于k/w:16/16、16/8、8/8的情况,以CRC高位宽运算电路向低位宽运算电路兼容的方式,将k/w:16/16、16/8、8/8的情况,复用一套实现32/32的电路来实现,具体实现原理如下:
以k/w:8/8为例:
k/w为32/32的实现方式为
k/w为的8/8实现方式为
8/8以32/32的方式实现,即为:
即只要将32/32计算电路的H32配置为H8,并将数据做一定位移,就可以重用32/32的计算电路来进行8/8的运算,16/16、16/8同理均可由32/32的运算电路配置而成;
对于k≤w的情况有16/32、8/32、8/16共3种,采用的是逐层运算的方式:
同理:
本模块所有涉及的公式中,模加运算为异或门实现,模乘运算为与门实现,矩阵模乘运算采用特征矩阵运算模块矩阵右乘列变换的方式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710897690.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:冻屏解决方法、移动终端及计算机可读存储介质
- 下一篇:一种数据存储方法及装置