适用于少量冗余里德-所罗门码的快速编码方法及设备技术

技术编号:18579147 阅读:31 留言:0更新日期:2018-08-01 14:17
本发明专利技术公开了一种适用于少量冗余里德‑所罗门码的快速编码方法,包括设置奇偶校验矩阵步骤:预设奇偶校验矩阵H2和H3;其中,里德‑所罗门码中冗余码元个数s取值为2或3,构建缩短里所码步骤:构建有限域GF(2m)上的符合所述预设奇偶校验矩阵的(k,s)里所码;将R点输入

Fast coding method and equipment for a small amount of redundant Reed Solomon code

The present invention discloses a fast coding method suitable for a small number of redundant Reed Solomon codes, including the setting parity check matrix steps: the default parity check matrix H2 and H3; in which the redundant code number s in the Reed Solomon code is valued at 2 or 3, and the code step in the shortening is constructed: the construction of the coincidence of the limited domain GF (2m) is constructed. Describe the code in the (k, s) of the default parity check matrix; input the R point.

【技术实现步骤摘要】
适用于少量冗余里德-所罗门码的快速编码方法及设备
本专利技术涉及编码
,特别涉及一种适用于少量冗余里德-所罗门码的快速编码方法及设备。
技术介绍
里德-所罗门码(以下简称为里所码)是一种最大距离可分码,目前已经广泛应用在存储与通信系统中。目前对里所码进行编码的方法一般包括多项式除法、基于矩阵-向量乘法和基于快速傅里叶变换的算法。其中,基于多项式除法的里所码编码,其生成多项式定义为:g(X)=(X-a)(X-a2)…(X-as),其中,g(X)为生成多项式,a为有限域GF(2m)本原元,而s为冗余码元个数。令o=[o1o2...ok]为k个信息码元,那么信息码多项式的定义为o(X)=o1+o2X+…+okXk-1,则冗余码多项式r(x)可以经过该算式得出:r(X)=o(X)Xs(modg(X))。其中r(x)为剩余多项式。但是,基于多项式除法的编码需要进行约sk次有限域加法和sk次有限域乘法的计算,因此,其计算的复杂度为O(sk×Mq),其中Mq为有限域乘/加法的复杂度。基于矩阵-向量乘法进行里所码编码时,需要给定生成矩阵G=[PI],其中I为k×k单位矩阵,而P为一给定k×s矩阵,s表示冗余码元个数,k表示信息码元个数。其码字定义为:c=oG=o[PI]=[oPo]。式中,c为码字,o为信息码元,oP为向量-矩阵乘法,其结果向量有s位校验位。其中oP计算的复杂度与前述多项式除法的计算复杂度相同,均较大。基于快速傅里叶变换进行里所码编码时,这类算法的常数项比较大,因此不适合短的里所码。对于短的里所码,研究人员提出了优化矩阵-向量乘法的方法,比如采用柯西(Cauchy)矩阵取代范德蒙(Vandermonde)矩阵,且编译过程中的有限域乘法可以转换成异或(XOR)运算的形式,但是这些技术并没有改变矩阵-向量乘法结构,因此,其优化程度有限,计算的复杂度仍然巨大。为了降低计算量,研究人员提出其他的码,这类其他的码不是里所码,但是与里所码同属于最大距离可分码。比如,当冗余码元个数s=2时,有EvenOdd,X-Code,RDP(Row-DiagonalParity),P-Code等。当s=3时,有StarCode,RTP(RAIDtripleparity)等。但是这类方法也只能对应具有少量冗余码元的一类码,如s=2,3,而且在s=3时,这类码需要至少3个有限域加法运算。可见,现有技术中,虽然存在降低少量冗余里所码(即短的里所码)的编码方式,但其计算复杂度的降低量有限,计算速度非常慢。
技术实现思路
本专利技术的目的在于提供一种适用于少量冗余里德-所罗门码的快速编码方法及设备,以降低少量冗余里所码的计算量。本专利技术的目的还在于提供一种计算机可读存储介质。为实现以上目的,本专利技术实施例提供的一种适用于少量冗余里德-所罗门码的快速编码方法,该方法包括:设置奇偶校验矩阵步骤:预设奇偶校验矩阵H2和H3;其中,里德-所罗门码中冗余码元个数s取值为2或3,当s为3时,预设奇偶校验矩阵具体为:当s为2时,预设奇偶校验矩阵具体为:构建缩短里所码步骤:构建有限域GF(2m)上的符合所述预设奇偶校验矩阵的(k,s)里所码;将R点输入中的k个点作为信息码元、剩下的点设为零;将R点中剩下的点设为零即o0=0且ok+1=…=oR-1=0;上述m表示码中的每个码元二进制位数,R=2r,k为信息码元个数,s为冗余码元个数。对於i=0,1,…,R-1,oi为信息码元;编码步骤:根据R点输入以及有限域的基底向量,计算得到s个冗余码元,实现对少量冗余里所码的编码。本专利技术实施例还提供了一种电子设备,适用于对少量冗余里德-所罗门码的快速编码,该电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现前述方法步骤。本专利技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现前述的方法步骤。与现有技术相比,本专利技术存在以下技术效果:本专利技术通过对构建于有限域上符合特定的奇偶校验矩阵的一类(k,s=2,3)缩短里所码进行快速编码。主要思想是将这类缩短里所码的输入转化成R点输入,其中R为2的倍数,规定k各信息码元并将R点中剩余的点设定为0,然后对R点输入进行递回处理,将R点输入依次转化为R/2点输入、R/4点输入直至2点输入,最后根据其2点输入计算这类缩短里所码的冗余码元。与上述现行的编码方式相比,利用本专利技术的快速编码方法对这类缩短里所码进行编码时,计算量逼近2个有限域加法,大大减少了计算量,将这类里所码及快速编码方法应用在各种通信系统或者存储系统中时,可以有效的提高效能以及降低能源消耗。附图说明图1是本专利技术一实施例提供的一种适用于少量冗余里德-所罗门码的快速编码方法得到流程示意图;图2是本专利技术一实施例中步骤S3的细分步骤的流程示意图;图3是本专利技术一实施例中对里所码R点输入进行递回处理的示意图;图4是本专利技术一实施例中对里所码R=2点输入进行递回处理的示意图;图5是本专利技术一实施例中对里所码R=8点输入进行递回处理的示意图;图6是本专利技术一实施例提供的一种适用于少量冗余里德-所罗门码的快速编码系统的结构示意图;图7是本专利技术一实施例提供的一种适用于少量冗余里德-所罗门码的快速编码方法得到流程示意图;图8是本专利技术一实施例提供的一种电子设备结构示意图。具体实施方式下面结合图1至图6所示,对本专利技术做进一步详细叙述。如图1所示,本实施例公开了一种适用于少量冗余里德-所罗门码的快速编码方法,该方法包括如下步骤S1至S3:S1、将建构于有限域GF(2m)上的符合预设奇偶校验矩阵的(k,s)里所码藉由缩短码技术转化为R点输入,其中,m表示码中的每个码元二进制位数,例如m=8表示码中每个码元有8位二进制,R=2r,k为信息码元个数,s为冗余码元个数,本实施例中,s取值为2或3:对於i=0,1,…,R-1,oi为信息码元。令{wi|i=0,1,...,2m-1}为GF(2m)的2m元素。其中,当s为3时,预设奇偶校验矩阵H3具体为:当s为2时,预设奇偶校验矩阵具体为:其中,{wi|i=1,2...,k}为GF(2m)中k个互相不同的非零元素。需要说明的是,上述H2和H3是根据本实施例需要所设置的,并不是已有的奇偶校验矩阵。本实施例公开的快速编码方法适用构建于有限域GF(2m)=F2[X]/p(X)上的(k≥1,s=2,3)的缩短里所码,式中F2[X]为二元多项式的集合,p(X)为本原多项式。其信息码元的个数为k,冗余码元的个数为s,码长为k+s,且k≤2m-1。具体地,本实施例中所说的符合预设的奇偶校验矩阵的里所码是指将原来的里所码某些位置上的码字用0代替,以缩短里所码的长度,前述“某些位置”可为码字上的任意位置,但一般而言会填充在信息码元之后,且“0”的数量为R-k。而且令缩短后的里所码的奇偶校验矩阵与预设的奇偶校验矩阵形式相符,就可以利用本实施例公开的快速编码方法对其缩短后的里所码进行快速编码。S2、缩短里所码:将R点输入中的k个点作为信息码元、剩下的点设为零;这里,采用常规现有的缩短里所码的技术即可。本文档来自技高网
...

【技术保护点】
1.一种适用于少量冗余里德‑所罗门码的快速编码方法,其特征在于,所述方法包括:设置奇偶校验矩阵步骤:预设奇偶校验矩阵H2和H3;其中,里德‑所罗门码中冗余码元个数s取值为2或3,当s为3时,预设奇偶校验矩阵具体为:

【技术特征摘要】
2017.01.23 CN 20171005871031.一种适用于少量冗余里德-所罗门码的快速编码方法,其特征在于,所述方法包括:设置奇偶校验矩阵步骤:预设奇偶校验矩阵H2和H3;其中,里德-所罗门码中冗余码元个数s取值为2或3,当s为3时,预设奇偶校验矩阵具体为:当s为2时,预设奇偶校验矩阵具体为:构建缩短里所码步骤:构建有限域GF(2m)上的符合所述预设奇偶校验矩阵的(k,s)里所码;将R点输入中的k个点作为信息码元、剩下的点设为零;将R点中剩下的点设为零即o0=0且ok+1=…=oR-1=0;上述m表示码中的每个码元二进制位数,R=2r,k为信息码元个数,s为冗余码元个数,i=0,1,…,R-1,oi为信息码元;编码步骤:根据R点输入以及有限域的基底向量,计算得到s个冗余码元,实现对少量冗余里所码的编码。2.根据权利要求1所述的方法,其特征在于,所述根据R点输入以及有限域的基底向量,计算得到s个冗余码元的步骤包括:令RSV(o0,…,oR-1)表示里所码的编码,其中为有限域GF(2m)的一个基底,且其输出为s个冗余码元;且有限域GF(2m)中的2m元素记为GF(2m)={wi|i=0,1,…,2m-1},其中,每个元素定义为wi=i0v0+i1v1+…+im-1vm-1,(im-1…i0)2为i的二进制表达,对于0≤i≤2m-1,i的二进制表达为:i=i0+i12+…+im-12m-1,且i0,i1,...,im-1∈{0,1};当R为2时,根据R点输入,以及GF(2m)的基底向量v0,计算出s个冗余码元,具体地,计算RSV(o0,o1)并输出s个冗余码元;当R大于2时,将R点输入转化为R/2点输入,并进行...

【专利技术属性】
技术研发人员:田辉
申请(专利权)人:合肥高维数据技术有限公司
类型:发明
国别省市:安徽,34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1