[发明专利]一种基于二元域运算且支持任意码距的编码方法有效
| 申请号: | 202010407334.6 | 申请日: | 2020-05-14 |
| 公开(公告)号: | CN111585581B | 公开(公告)日: | 2023-04-07 |
| 发明(设计)人: | 唐聃;耿微;何磊;刘敦龙;曾琼 | 申请(专利权)人: | 成都信息工程大学 |
| 主分类号: | H03M13/15 | 分类号: | H03M13/15 |
| 代理公司: | 北京正华智诚专利代理事务所(普通合伙) 11870 | 代理人: | 陈航 |
| 地址: | 610225 四川省成都*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 二元 运算 支持 任意 编码 方法 | ||
1.一种基于二元域运算且支持任意码距的编码方法,其特征在于,包括以下步骤:
S1、获取编码方案中的原始数据长度k和最小汉明距离d;
S2、将原始数据按照设定数据块大小BlockSize进行分块,得到BlockNum个原始数据块;
S3、将所有原始数据块进行分条带处理,使k个原始数据块分为一个条带,得到StripNum个条带;
S4、对于任一个条带,将其k个原始数据块按顺序摆放为p×p的阵列;其中k=p×p;
S5、根据公式Di(r,c)=(r+i×c)modp获取该阵列中第r行第c列原始数据块在常数i取不同值时对应的值Di(r,c);其中mod表示取模运算;0≤i≤d-2;0≤r,cp;
S6、对于常数i的每一个取值,将对应的Di(r,c)值相同的原始数据块所在阵列的行列号放入同一个集合中,得到p×(d-1)个行列号集合;
S7、对于每个行列号集合,生成一个k维全零向量,获取该行列号集合中所有原始数据块的块号,将k维全零向量中位置与块号相同的元素置为1,得到p×(d-1)个与每个行列号集合相对应的k维向量;
S8、将所有k维向量按先后顺序组成k×p×(d-1)的矩阵Q;
S9、对于任一个条带,将其k个原始数据块的第q个字节数据组成1×k的矩阵Uq,将矩阵Uq与矩阵Q在二元域上的乘积结果作为该条带中的第q个校验数据,遍历每个字节数据进而得到与该条带对应的所有校验数据;其中每个校验数据包含p×(d-1)个元素;
S10、将每个校验数据中位于相同位置处的元素依次进行列序,得到该条带相对应的p×(d-1)个校验块;
S11、将该条带对应的原始数据块和校验块之和作为该条带的编码长度n,并将该条带的k个原始数据块和p×(d-1)个校验块分别存到n个不同的存储节点上,完成该条带的编码;
S12、重复步骤S4至步骤S11,直至所有条带都编码完成。
2.根据权利要求1所述的基于二元域运算且支持任意码距的编码方法,其特征在于,所述步骤S2的具体方法为:
将原始数据按照设定数据块大小BlockSize进行分块,得到BlockNum个原始数据块,判断最后一个原始数据块是否小于BlockSize,若是则在该原始数据块末尾填充零使其大小为BlockSize,否则直接进入步骤S3。
3.根据权利要求1所述的基于二元域运算且支持任意码距的编码方法,其特征在于,所述步骤S3的具体方法为:
对所有原始数据块按照k个原始数据块分为一个条带进行分条带处理,判断最后一个条带是否不足k个数据块,若是则填充全零数据块使其达到k个数据块,否则直接进入步骤S4。
4.根据权利要求1所述的基于二元域运算且支持任意码距的编码方法,其特征在于,所述步骤S7中原始数据块的块号的获取方法为:
根据公式:
js=rs×p+cs
获取原始数据块的块号js;其中(rs,cs)为原始数据块s在阵列中的位置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都信息工程大学,未经成都信息工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010407334.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:人工智能加速器和电子设备
- 下一篇:一种基于牙刷电机振动力度的控制方法和装置
- 同类专利
- 专利分类





