CN105322973A - 一种rs码编码器及编码方法 - Google Patents

一种rs码编码器及编码方法 Download PDF

Info

Publication number
CN105322973A
CN105322973A CN201410549916.2A CN201410549916A CN105322973A CN 105322973 A CN105322973 A CN 105322973A CN 201410549916 A CN201410549916 A CN 201410549916A CN 105322973 A CN105322973 A CN 105322973A
Authority
CN
China
Prior art keywords
code
parallel
register
symbol
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410549916.2A
Other languages
English (en)
Other versions
CN105322973B (zh
Inventor
谭卓越
单琦
孟祥国
靳云
李璇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Space Star Technology Co Ltd
Original Assignee
Space Star Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Space Star Technology Co Ltd filed Critical Space Star Technology Co Ltd
Priority to CN201410549916.2A priority Critical patent/CN105322973B/zh
Publication of CN105322973A publication Critical patent/CN105322973A/zh
Application granted granted Critical
Publication of CN105322973B publication Critical patent/CN105322973B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明公开了一种RS码编码器及编码方法,包括RS码并行生成多项式系数计算模块、RS码符号串并转换模块、RS码并行计算使能产生模块和RS码符号并行计算模块;RS码并行生成多项式系数计算模块接受任意RS码生成多项式系数,完成并行生成多项式系数计算,将并行生成多项式系数传递给RS码符号并行计算模块;RS码符号串并转换模块对输入待编码信息完成串并转换,输出并行RS码信息符号;计算使能产生模块根据输入配置参数及数据时钟产生RS码并行计算模块使能信号;RS码符号并行计算模块根据RS码并行生成多项式系数及计算使能完成并行RS码校验符号计算;本发明适用于基于FPGA的高速调制器的高速RS编码,并且支持定义在不同有限域上的RS码码率自适应编码。

Description

一种RS码编码器及编码方法
技术领域
本发明涉及一种RS码编码器及编码方法,属于数字信息传输技术领域。
背景技术
在通信系统前向纠错编码技术中,RS(Reed-Solomon)码是一种非二进制分组循环码,具有较好的抗突发错误能力。在基于FPGA的高速数据调制器开发时,通常采用RS码完成数据的信道编码,提高信息传输的有效性。
RS码是一种多进制BCH码,采用移位寄存器结构实现,其运算均在给定的有限域上进行。有限域由域多项式确定其运算方式,RS码编码由码长n、信息符号长度k确定其生成多项式。当对编码速率要求超过FPGA程序串行最大处理速率时,由于受FPGA工作时钟限制,需要以并行方式进行编码。现有的并行编码方法可分为两类:码字级并行编码及符号级并行编码。码字级并行编码方法相当于采用多个RS串行编码器同时进行编码,以达到较高的编码数据吞吐率,将占用大量的芯片资源;符号级并行编码方法通过每次完成多个符号的编码运算实现并行编码,进行符号级并行编码时,涉及到RS符号在有限域上的并行乘法运算。
在采用FPGA实现有限域的乘法时,通常有两种方式,一种则是利用FPGA逻辑资源实现有限域乘法器,每个FPGA工作时钟周期可完成一次乘法,在域多项式改变时需要重新生成乘法器。另一种是预先生成乘法查找表,遍历给定有限域上的所有基元素的乘法运算。采用查找表方式需要占用一定的存储资源(对位宽为m的扩展域GF(2m),共有2m-1个基元素,因而查找表的大小为m×(2m-1)2/2比特),且每次查表只能得到一次有限域乘法结果,不便于并行实现。这两种乘法器实现方式,在采用移位寄存器结构进行RS编码时,每次仅能移入一个RS信息符号,编码速率受限。若要求每次移入多个RS码信息符号,则需要多个乘法器或存储多个查找表,且如果需要实时(FPGA程序运行时)更改域多项式,也需要存储多个查找表,都将占用较多芯片资源,且灵活性有限。
发明内容
本发明解决的技术问题是:克服现有技术不足,提供了一种实现高速的数据传输、提高通信系统的信道适应能力的高速实时可配置的RS编码器及编码方法。
为解决上述技术问题,本发明的技术解决方案如下:
一种RS码编码器,包括RS码并行生成多项式系数计算模块、RS码并行计算使能产生模块、RS码符号串并转换模块和RS码符号并行计算模块。
所述的RS码并行生成多项式系数计算模块,根据外部输入的配置参数RS码生成多项式系数及RS码符号并行度,利用线性反馈移位寄存器结构计算并行生成多项式系数。
本发明设置n-k个m位宽的寄存器R0~Rn-k-1构成线性反馈移位寄存器结构。RS码并行生成多项式系数计算模块接受外部输入配置参数:RS码生成多项式系数、RS码码长n、RS码信息符号数k,RS符号位宽m及符号并行度p。在加载有限域域多项式信号高有效时,R0~Rn-k-1分别初始化为RS码生成多项式系数g1~gn-k,然后完成p次并行生成多项式系数计算。每次计算时,寄存器R0的值作为反馈值与g1~gn-k相乘得到n-k个结果,分别与各寄存器移入值求和后作为各寄存器的更新值,其中,寄存器Rn-k-1的移入值恒为0。计算完成后每个寄存器对应p个并行生成多项式系数,与常系数1构成共(p+1)×(n-k)个并行生成多项式系数输出,以及系数计算完成指示信号。
所述的RS码符号串并转换模块,根据外部输入的配置参数RS码符号并行度及RS码码长、RS码信息符号数,对输入待编码信息数据转换为并行RS码符号输出。
RS码符号串并转换模块,根据外部输入的配置参数符号并行度p及RS码信息符号数k,对输入待编码信息进行串并转换,每m比特构成一个RS码信息符号。并对RS码信息符号数进行计数,当计数值count小于等于k-p时,每次并行输出为p×m比特,即每次输出p个RS码信息符号;否则输出k-count个RS码信息符号。
所述的RS码并行计算使能产生模块,根据外部输入的配置参数RS码码长,RS码信息符号数,以及RS码符号并行度,产生RS码并行计算使能信号。
RS码符号并行计算模块接受RS码并行生成多项式系数产生模块输出的并行生成多项式系数、RS码符号串并转换模块输出的并行RS码符号,在RS码并行计算使能模块输出的计算使能信号为1时,完成RS码的符号并行计算;当计算使能信号为0时,将各寄存器的值依次输出即得到RS码校验符号。
所述的RS码符号并行计算模块,在RS码并行计算使能信号为高时,利用线性反馈移位寄存器结构实现,将RS码符号串并转换模块输出的p个或者k-count个RS码信息符号移入,完成RS码并行输入符号的相乘和求和,在RS码并行计算使能信号为低时,依次输出各寄存器值,即为RS码编码后的校验符号。
RS码并行计算使能产生模块,接受RS码并行生成多项式系数计算模块输出的系数计算完成指示信号,根据外部输入的RS码配置参数:RS码码长n,RS码信息符号数k,以及RS码符号并行度p,对RS码符号串并转换模块输出的RS码信息符号数进行计数,当计数值小于等于k时,输出计算使能信号为1,否则输出计算使能信号为0,持续(n-k)个FPGA工作时钟周期后,清零计数器并重新开始计数。
RS码符号并行计算模块,其特征在于:可根据所述RS码并行生成多项式系数完成RS码校验符号的并行计算。在每次输入p个RS码信息符号时,线性反馈移位寄存器每次移入p个RS码信息符号时,与寄存器R0~Rn-k-1的值构成(n-k+p)个符号构成的向量,每个寄存器运算时,截取该向量中的P+1个符号与该寄存器更新值时使用对应的p+1个并行生成多项式系数相乘后求和,即得到该寄存器的更新值;当移入k-count个RS码信息符号时,与寄存器R0~Rn-k-1的值构成(n-count)个符号向量,每个寄存器运算时,截取符号向量中的k-count+1个符号与该寄存器更新值时使用对应的k-count+1个并行生成多项式系数相乘后求和,即得到该寄存器的更新值。此时,寄存器R0~Rn-k-1的值即RS码编码得到的n-k个校验符号。
进一步的,所述的RS符号相乘及求和运算均在给定的有限域上进行。采用有限域上的乘法运算子模块完成任意给定域多项式的有限域上的乘法运算,该子模块作为RS码并行生成系数计算模块及RS码符号并行计算模块的基础。有限域上的乘法运算子模块以移位异或运算实现,当输入m比特的数据X,Y时,对X按位左移,移出位为1时,将X左移得到的值与有限域域多项式系数按位异或;移出位为0时,直接取左移得到的值。该值在Y的当前位为1时,参与最后的按位异或运算,Y的当前位为0时,不参与运算。则当X按Y的所有位移出得到的中间结果按位异或即得到X和Y在该有限域上的乘法运算结果。
本发明提供了一种基于FPGA的RS码并行生成多项式系数的计算方法,在FPGA程序运行时,若需要配置为不同码率的RS码,则RS码并行生成多项式系数计算模块在加载RS码生成多项式系数信号有效时,重新计算所需的RS码并行多项式生成系数。若需要配置为定义在不同有限域上的RS码,则有限域乘法运算子模块将根据外部输入的配置参数有限域域多项式实现定义在该有限域上的乘法运算,以此为基础实现实时可配置的高速RS码编码,支持任意小于RS信息符号长度k的符号并行度编码。支持实时修改有限域域多项式及RS码生成多项式,可用于高速信道编码等技术应用。
本发明提供一种RS码编码方法,通过以下步骤实现:
第一步,生成RS码并行生成多项式系数,
A1.1、当有限域域多项式信号有效时,寄存器R0~Rn-k-1分别初始化为RS码生成多项式系数g1~gn-k,其中n为RS码码长,k为RS码信息符号数,m为RS符号位宽,p为符号并行度;
A1.2、将寄存器R0的值作为反馈值与g1~gn-k相乘得到n-k个过程值,n-k个过程值再分别与各寄存器移入值求和后作为各寄存器的更新值,其中,寄存器Rn-k-1的移入值恒为0,计算完成后每个寄存器对应p个并行生成多项式系数,与常系数1构成共(p+1)×(n-k)个RS码并行生成多项式系数,同时输出系数计算完成指示信号;
第二步,生成并行的RS码信息符号,
A2.1、根据外部输入的配置参数符号并行度p及RS码信息符号数k,对外部输入的待编码信息进行串并转换,每m比特构成一个RS码信息符号,并对RS码信息符号数进行计数;
A2.2、每次输出时判断计数值count的大小,若计数值count满足count≤k-p,每次并行输出p个RS码信息符号,若不满足则输出k-count个RS码信息符号;
A2.3、输出k个RS码信息符号后,暂停输出,等待至少一个FPGA时钟周期后计数值count清零;
第三步,生成计算使能信号,
A3.1、判断第一步RS码并行生成多项式系数是否生成,若生成则转入步骤A3.2;
A3.2、按第二步生成的并行RS码信息符号的数据时钟进行累加计数,每次累加值为p;
A3.3、当计数值小于等于k时,生成计算使能信号为1,转入第四步,否则生成计算使能信号为0,转入第五步;
第四步,利用接收到的RS码并行生成多项式系数和RS码并行符号,完成RS码的符号并行计算,得到RS码校验符号;
在n-k个m位宽的寄存器R0~Rn-k-1构成的线性反馈移位寄存器结构中完成RS码校验符号的并行计算,线性反馈移位寄存器每次移入p个RS码信息符号时,与寄存器R0~Rn-k-1的值构成(n-k+p)个符号构成的向量,每个寄存器运算时,截取该向量中的P+1个符号与该寄存器更新值时使用对应的p+1个并行生成多项式系数相乘后求和,即得到该寄存器的更新值;当移入k-count个RS码信息符号时,与寄存器R0~Rn-k-1的值构成(n-count)个符号向量,每个寄存器运算时,截取符号向量中的k-count+1个符号与该寄存器更新值时使用对应的k-count+1个并行生成多项式系数相乘后求和,即得到该寄存器的更新值,此时寄存器R0~Rn-k-1的值即为n-k个RS码校验符号。
第五步,将第一步中各寄存器的值依次输出即得到RS码校验符号。
本发明与现有技术相比具有如下优点:
(1)本发明将有限域域多项式作为有限域乘法子模块的输入配置参数,利用移位异或方式实现有限域上的乘法运算,将RS码生成多项式作为RS码并行生成多项式系数计算模块的输入配置参数,利用RS码并行生成多项式系数产生模块计算并行编码所需的并行生成多项式系数,以此为基础实现实时可配置的通用RS码并行编码输出,因而具有广泛的适应性;
(2)本发明使用线性反馈移位寄存器结构在外部输入配置参数RS码生成多项式系数时,用于RS码并行生成多项式系数的计算,在RS码并行生成多项式系数计算完成后,用于RS码符号并行计算,节省了FPGA芯片资源;
(3)本发明可根据外部输入的配置参数RS码生成多项式完成任意并行度小于RS码信息符号数k的并行生成多项式系数产生;可根据外部输入的配置参数有限域域多项式,实现不同有限域域多项式的实时配置功能。
附图说明
图1为本发明RS码符号线性反馈移位寄存器结构示意图;
图2为本发明RS码并行生成多项式系数计算流程图;
图3为本发明RS码并行编码实现框图。
具体实施方式
在下面的描述中以实际示例阐述了相关实施细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施的限制。
根据有限域理论,若有限域GF(23)的域多项式为f(x)=x3+x+1,定义α为域多项式的一个根,则αk,k=0,…,6均为域多项式的根,αk与0共8个元素构成了该扩展域的基。基与其二进制及十进制表示的对应关系如下表所示。
幂次表示 多项式表示 二进制表示 十进制表示
0 0 000 0
α0 α0 001 1
α1 α1 010 2
α2 α2 100 4
α3 α+1 011 3
α4 α2 110 6
α5 α2+α+1 111 7
α6 α2+1 101 5
有限域上的运算以多项式为基础进行,乘法运算时按多项式幂次相加,加法运算时按异或方式进行。例如,α3×α4=(α+1)(α2+α)=α3+α=1,即α3×α4=α7=c,事实上,对该有限域的任一非零元素x,都有x7=1。
如图1,RS码编码以线性反馈移位寄存器结构实现,以5级线性反馈移位寄存器为例,反馈值为寄存器R0的值,与RS码生成多项式系数g0~gn-k相乘,其中,g0恒为1。反馈值与每个寄存器左边的值求和后作为该寄存器的更新值,其中,寄存器R4移入值即为输入的RS码信息符号。该结构适用于每次移入一个RS码信息符号的编码运算。
如图2,本发明所述RS码并行生成多项式系数的计算流程:
在计算RS码并行生成多项式系数时,使用线性反馈移位寄存器结构实现。寄存器R0的值作为反馈值,与RS码生成多项式系数g1~gn-k-1相乘后,分别与寄存器R1~Rn-k-1求和后,作为寄存器R0~Rm-k-2的更新值,寄存器Rn-k-1的更新值为反馈值与gn-k相乘的结果。各寄存器的值更新后,即为一次迭代操作。通过一次迭代即可得到RS码符号并行度为2的并行生成多项式系数。在RS码码长为n,RS码信息符号数为k,符号并行度为p时,RS码并行生成多项式系数的计算步骤如下所示,
步骤一,取外部输入的配置参数RS码生成多项式的(n-k)个系数,作为移位寄存器的初始值;取寄存器R0的状态值与(gn-k,…,g1)通过有限域乘法子模块相乘得到中间结果(tn-k,…,t1),转入步骤二。
步骤二,移位寄存器右移一个符号与中间结果(tn-k,…,t1)按位异或得到(rn-k,…,r1),转入步骤三。
步骤三,更新移位寄存器状态,并且迭代次数加1。如果迭代次数等于外部输入的配置参数RS码符号并行度p,则输出所有计算得到的系数值与系数计算完成指示信号,否则转入步骤二。
RS码并行生成多项式系数的计算,以RS码符号并行度取4时为例,在RS码生成多项式输入后,寄存器R0~R4分别初始化为RS码生成多项式系数g1~g5,第一次移位时,反馈值g1与g5相乘后得到g5g1更新寄存器R4,同理计算出寄存器R0~R3的更新值;第二次移位时,得到寄存器R0~R4的更新值,与5个常系数1共同构成5个寄存器对应的符号并行度为3的所有并行生成多项式系数如下表所示。
如图3,本发明进行RS码并行编码时,可按如下步骤进行:
步骤一,RS码并行生成多项式系数计算模块接受外部输入配置参数:RS码生成多项式系数、RS码码长n、RS码信息符号数k,RS符号位宽m及符号并行度p。设置n-k个m位宽的寄存器R0~Rn-k-1构成线性反馈移位寄存器结构。在加载有限域域多项式信号高有效时,R0~Rn-k-1分别初始化为RS码生成多项式系数g1~gn-k,然后完成p次并行生成多项式系数计算。每次计算时,寄存器R0的值作为反馈值与g1~gn-k相乘得到n-k个结果,分别与各寄存器移入值求和后作为各寄存器的更新值,其中,寄存器Rn-k-1的移入值恒为0。计算完成后每个寄存器对应p个并行生成多项式系数,与常系数1构成共(p+1)×(n-k)个并行生成多项式系数输出,以及系数计算完成指示信号。
步骤二,RS码并行计算使能产生模块,接受RS码并行生成多项式系数计算模块输出的系数计算完成指示信号,根据外部输入的RS码配置参数:RS码码长n,RS码信息符号数k,以及RS码符号并行度p,对RS码符号串并转换模块输出的RS码信息符号数进行计数,当计数值小于等于k时,输出计算使能信号为1,否则输出计算使能信号为0,持续(n-k)个FPGA工作时钟周期后,清零计数器并重新开始计数。
步骤三,RS码符号串并转换模块,根据外部输入的配置参数符号并行度p及RS码信息符号数k,对输入待编码信息进行串并转换,每m比特构成一个RS码信息符号。并对RS码信息符号数进行计数,当计数值count小于等于k-p时,每次并行输出为p×m比特,即每次输出p个RS码信息符号;否则输出k-count个RS码信息符号。
步骤四,RS码符号并行计算模块接受RS码并行生成多项式系数产生模块输出的并行生成多项式系数、RS码符号串并转换模块输出的并行RS码符号,在RS码并行计算使能模块输出的计算使能信号为1时,完成RS码的符号并行计算;当计算使能信号为0时,将各寄存器的值依次输出即得到RS码校验符号。
当进行RS码符号并行计算时,以定义在GF(24)的RS(15,10)为例,若记输入的RS信息符号为M0~M8,当线性反馈移位寄存器每次移入一个RS码信息符号时,寄存器R0~R4在第4~第7次的更新值如下表所示。
若外部输入配置参数RS符号并行度p为3时,即每次线性反馈移位寄存器将移入3个RS码信息符号进行编码计算。输入的3个RS码信息符号为M5~M7,与当前各寄存器的值M0~M4构成的长度为8的符号向量。求寄存器R0的更新值时,从符号向量中截取4个值{M3,M2,M1,M0},分别与寄存器R0对应的并行生成多项式系数{1,g1,g2+g1g1,g3+g1g1g1}分别相乘后求和记得到R0的更新值M3+M2g1+M1(g2+g1g1)+M0(g3+g1g1g1),依此类推,寄存器R4的更新值为M7+M2g5+M1g5g1+M0(g5g2+g5g1g1),求出5个更新值后更新寄存器R0~R4即完成了一次RS码符号并行编码计算。在RS码并行计算使能产生模块输出的计算使能有效时,由于RS码信息码元数为10,不为RS码符号并行度3的整数倍,因此前3次并行编码时,每次移入3个RS码信息符号,第4次并行编码时,移入1个RS码信息符号,共完成10个RS码信息符号的并行编码后,寄存器的值即RS码校验符号。
虽然本发明已通过实施例说明如上,但这些实施例并非用以限定本发明或本领域的技术人员,在不脱离本发明的精神和范围内,应有能力对该较佳实施例做出各种改正和补充,因此,本发明的保护范围以权利要求书的范围为准。

Claims (5)

1.一种RS码编码器,其特征在于:包括RS码并行生成多项式系数计算模块、RS码并行计算使能产生模块、RS码符号串并转换模块和RS码符号并行计算模块;
所述的RS码并行生成多项式系数计算模块在n-k个m位宽的寄存器R0~Rn-k-1构成的线性反馈移位寄存器结构中完成并行生成多项式系数计算,其中n为RS码码长,k为RS码信息符号数,m为RS符号位宽,p为符号并行度,RS码并行生成多项式系数计算模块在加载有限域域多项式信号有效时,寄存器R0~Rn-k-1分别初始化为RS码生成多项式系数g1~gn-k,利用外部输入的RS码生成多项式系数完成p次并行生成多项式系数计算,并将计算得到的RS码并行生成多项式系数输出到RS码符号并行计算模块,同时将系数计算完成指示信号输出到RS码并行计算使能产生模块;
所述的RS码符号串并转换模块根据外部输入的配置参数符号并行度p及RS码信息符号数k,对外部输入的待编码信息进行串并转换,每m比特构成一个RS码信息符号,并对RS码信息符号数进行计数,当计数值count小于等于k-p时,每次输出p个并行的RS码信息符号到RS码并行计算使能产生模块,否则输出k-count个并行的RS码信息符号到RS码并行计算使能产生模块;
所述的RS码并行计算使能产生模块接收RS码并行生成多项式系数计算模块输出的系数计算完成指示信号,对RS码符号串并转换模块输出的RS码信息符号数进行计数,当计数值小于等于k时,输出计算使能信号1到RS码符号并行计算模块,否则输出计算使能信号0到RS码符号并行计算模块;
所述的RS码符号并行计算模块在接收到为1的计算使能信号后,利用接收到的RS码并行生成多项式系数和并行的RS码信息符号,完成RS码的符号并行计算,RS码符号并行计算模块在接收到为0的计算使能信号后,将RS码并行生成多项式系数计算模块的各寄存器的值依次输出即得到RS码校验符号。
2.根据权利要求1所述的一种RS码编码器,其特征在于:所述的RS码并行生成多项式系数计算模块每次计算时,寄存器R0的值作为反馈值与g1~gn-k相乘得到n-k个过程值,n-k个过程值再分别与各寄存器移入值求和后作为各寄存器的更新值,其中,寄存器Rn-k-1的移入值恒为0,计算完成后每个寄存器对应p个并行生成多项式系数,与常系数1构成共(p+1)×(n-k)个RS码并行生成多项式系数。
3.根据权利要求1所述的一种RS码编码器,其特征在于:所述的RS码符号并行计算模块根据接收到RS码并行生成多项式系数,在n-k个m位宽的寄存器R0~Rn-k-1构成的线性反馈移位寄存器结构中完成RS码校验符号的并行计算,线性反馈移位寄存器每次移入p个RS码信息符号时,与寄存器R0~Rn-k-1的值构成(n-k+p)个符号构成的向量,每个寄存器运算时,截取该向量中的P+1个符号与该寄存器更新值时使用对应的p+1个并行生成多项式系数相乘后求和,即得到该寄存器的更新值;当移入k-count个RS码信息符号时,与寄存器R0~Rn-k-1的值构成(n-count)个符号向量,每个寄存器运算时,截取符号向量中的k-count+1个符号与该寄存器更新值时使用对应的k-count+1个并行生成多项式系数相乘后求和,即得到该寄存器的更新值,此时寄存器R0~Rn-k-1的值即为n-k个RS码校验符号。
4.一种RS码编码方法,其特征在于,通过以下步骤实现:
第一步,生成RS码并行生成多项式系数,
A1.1、当有限域域多项式信号有效时,寄存器R0~Rn-k-1分别初始化为RS码生成多项式系数g1~gn-k,其中n为RS码码长,k为RS码信息符号数,m为RS符号位宽,p为符号并行度;
A1.2、将寄存器R0的值作为反馈值与g1~gn-k相乘得到n-k个结果,n-k个过程值再分别与各寄存器移入值求和后作为各寄存器的更新值,其中,寄存器Rn-k-1的移入值恒为0,计算完成后每个寄存器对应p个并行生成多项式系数,与常系数1构成共(p+1)×(n-k)个RS码并行生成多项式系数,同时输出系数计算完成指示信号;
第二步,生成并行的RS码信息符号,
A2.1、根据外部输入的配置参数符号并行度p及RS码信息符号数k,对外部输入的待编码信息进行串并转换,每m比特构成一个RS码信息符号,并对RS码信息符号数进行计数;
A2.2、每次输出时判断计数值count的大小,若计数值count满足count≤k-p,每次并行输出p个RS码信息符号,若不满足则输出k-count个RS码信息符号;
A2.3、输出k个RS码信息符号后,暂停输出,等待至少一个FPGA时钟周期后计数值count清零;
第三步,生成计算使能信号,
A3.1、判断第一步RS码并行生成多项式系数是否生成,若生成则转入步骤A3.2;
A3.2、按第二步生成的并行RS码信息符号的数据时钟进行累加计数,每次累加值为p;
A3.3、当计数值小于等于k时,生成计算使能信号为1,转入第四步,否则生成计算使能信号为0,转入第五步;
第四步,利用接收到的RS码并行生成多项式系数和RS码并行符号,完成RS码的符号并行计算,得到RS码校验符号;
第五步,将第一步中各寄存器的值依次输出即得到RS码校验符号。
5.根据权利要求4所述的一种RS码编码方法,其特征在于:所述第四步在n-k个m位宽的寄存器R0~Rn-k-1构成的线性反馈移位寄存器结构中完成RS码校验符号的并行计算,线性反馈移位寄存器每次移入p个RS码信息符号时,与寄存器R0~Rn-k-1的值构成(n-k+p)个符号构成的向量,每个寄存器运算时,截取该向量中的P+1个符号与该寄存器更新值时使用对应的p+1个并行生成多项式系数相乘后求和,即得到该寄存器的更新值;当移入k-count个RS码信息符号时,与寄存器R0~Rn-k-1的值构成(n-count)个符号向量,每个寄存器运算时,截取符号向量中的k-count+1个符号与该寄存器更新值时使用对应的k-count+1个并行生成多项式系数相乘后求和,即得到该寄存器的更新值,此时寄存器R0~Rn-k-1的值即为n-k个RS码校验符号。
CN201410549916.2A 2014-10-16 2014-10-16 一种rs码编码器及编码方法 Active CN105322973B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410549916.2A CN105322973B (zh) 2014-10-16 2014-10-16 一种rs码编码器及编码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410549916.2A CN105322973B (zh) 2014-10-16 2014-10-16 一种rs码编码器及编码方法

Publications (2)

Publication Number Publication Date
CN105322973A true CN105322973A (zh) 2016-02-10
CN105322973B CN105322973B (zh) 2019-04-05

Family

ID=55249668

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410549916.2A Active CN105322973B (zh) 2014-10-16 2014-10-16 一种rs码编码器及编码方法

Country Status (1)

Country Link
CN (1) CN105322973B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018118660A1 (en) * 2016-12-21 2018-06-28 PhazrIO Inc. Integrated security and data redundancy
CN109067428A (zh) * 2018-08-29 2018-12-21 广东工业大学 一种基于蓝牙内核与rs码的融合跳频方法
CN109672453A (zh) * 2018-12-17 2019-04-23 上海沿芯微电子科技有限公司 Rs编码器串并混用编码电路、编码方法及rs编码器
CN110380738A (zh) * 2019-07-19 2019-10-25 广东省新一代通信与网络创新研究院 参数软件可配置的rs编码器ip核电路结构及其编码方法
CN110995281A (zh) * 2019-12-21 2020-04-10 中国电波传播研究所(中国电子科技集团公司第二十二研究所) 一种适合测井电缆传输的可变码长rs编码方法
CN112671414A (zh) * 2020-12-22 2021-04-16 北京时代民芯科技有限公司 一种新型并串转换电路
CN112671415A (zh) * 2020-12-14 2021-04-16 天津大学 一种面向乘积码的高吞吐量编码方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5631914A (en) * 1988-07-18 1997-05-20 Canon Kabushiki Kaisha Error correcting apparatus
US20010023497A1 (en) * 2000-03-01 2001-09-20 Nec Corporation Parallel processing reed-solomon encoding circuit and method
US20080140740A1 (en) * 2006-12-08 2008-06-12 Agere Systems Inc. Systems and methods for processing data sets in parallel
CN201533304U (zh) * 2009-09-07 2010-07-21 中国电子科技集团公司第五十四研究所 一种高速部分并行ldpc信道编码器
CN102843153A (zh) * 2012-09-27 2012-12-26 苏州威士达信息科技有限公司 一种ccsds中多码率rs码的并行编码器和编码方法
CN102882534A (zh) * 2012-10-12 2013-01-16 烽火通信科技股份有限公司 Rs编码的并行实现方法及装置
CN103677743A (zh) * 2013-11-22 2014-03-26 航天恒星科技有限公司 一种基于fpga的pn序列并行产生方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5631914A (en) * 1988-07-18 1997-05-20 Canon Kabushiki Kaisha Error correcting apparatus
US20010023497A1 (en) * 2000-03-01 2001-09-20 Nec Corporation Parallel processing reed-solomon encoding circuit and method
US20080140740A1 (en) * 2006-12-08 2008-06-12 Agere Systems Inc. Systems and methods for processing data sets in parallel
CN201533304U (zh) * 2009-09-07 2010-07-21 中国电子科技集团公司第五十四研究所 一种高速部分并行ldpc信道编码器
CN102843153A (zh) * 2012-09-27 2012-12-26 苏州威士达信息科技有限公司 一种ccsds中多码率rs码的并行编码器和编码方法
CN102882534A (zh) * 2012-10-12 2013-01-16 烽火通信科技股份有限公司 Rs编码的并行实现方法及装置
CN103677743A (zh) * 2013-11-22 2014-03-26 航天恒星科技有限公司 一种基于fpga的pn序列并行产生方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
XINMIAO ZHANG AND KESHAB K.PARHI: "High-Speed Architectures for Parallel Long BCH Encoders", 《IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION(VLSI) SYSTEMS》 *
张怡 和 韩维: "高速RS编码算法及FPGA实现", 《无线通信技术》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018118660A1 (en) * 2016-12-21 2018-06-28 PhazrIO Inc. Integrated security and data redundancy
US10656996B2 (en) 2016-12-21 2020-05-19 PhazrIO Inc. Integrated security and data redundancy
CN109067428A (zh) * 2018-08-29 2018-12-21 广东工业大学 一种基于蓝牙内核与rs码的融合跳频方法
CN109672453A (zh) * 2018-12-17 2019-04-23 上海沿芯微电子科技有限公司 Rs编码器串并混用编码电路、编码方法及rs编码器
CN110380738A (zh) * 2019-07-19 2019-10-25 广东省新一代通信与网络创新研究院 参数软件可配置的rs编码器ip核电路结构及其编码方法
CN110380738B (zh) * 2019-07-19 2023-01-31 广东省新一代通信与网络创新研究院 参数软件可配置的rs编码器ip核电路结构及其编码方法
CN110995281A (zh) * 2019-12-21 2020-04-10 中国电波传播研究所(中国电子科技集团公司第二十二研究所) 一种适合测井电缆传输的可变码长rs编码方法
CN110995281B (zh) * 2019-12-21 2024-02-27 中国电波传播研究所(中国电子科技集团公司第二十二研究所) 一种适合测井电缆传输的可变码长rs编码方法
CN112671415A (zh) * 2020-12-14 2021-04-16 天津大学 一种面向乘积码的高吞吐量编码方法
CN112671414A (zh) * 2020-12-22 2021-04-16 北京时代民芯科技有限公司 一种新型并串转换电路
CN112671414B (zh) * 2020-12-22 2023-08-29 北京时代民芯科技有限公司 一种新型并串转换电路

Also Published As

Publication number Publication date
CN105322973B (zh) 2019-04-05

Similar Documents

Publication Publication Date Title
CN105322973A (zh) 一种rs码编码器及编码方法
Hou et al. BASIC codes: Low-complexity regenerating codes for distributed storage systems
CN101478314B (zh) 一种里德-所罗门编码译码器及其译码的方法
CN101902228B (zh) 快速循环冗余校验编码方法及装置
US20120030548A1 (en) Method and device for implementing cyclic redundancy check codes
CN101227194B (zh) 用于并行bch编码的电路、编码器及方法
CN102546089B (zh) 循环冗余校验crc码的实现方法及装置
CN201153259Y (zh) 并行数据循环冗余校验装置及双向数据传输系统
CN107239362B (zh) 一种并行crc校验码的计算方法及系统
CN105264778A (zh) 一种crc计算方法及装置
CN112039535A (zh) 一种基于准循环生成矩阵的码率兼容ldpc编码器
WO2023134130A1 (zh) 伽罗华域乘法器及纠删编解码系统
CN101296053A (zh) 计算循环冗余校验码之方法及系统
CN101834615B (zh) 里德-索罗蒙编码器实现方法
CN112468161A (zh) 一种rs高速编码电路
CN102820892A (zh) 一种用于并行bch编码的电路、编码器及方法
US9065482B1 (en) Circuit for forward error correction encoding of data blocks
CN108809323B (zh) 循环冗余校验码的生成方法和装置
CN103763064A (zh) 适用于超高速通讯系统的循环冗余校验码生成方法与电路
CN102891689B (zh) 一种错误位置多项式求解方法及装置
CN102130744B (zh) 计算循环冗余校验码的方法和装置
CN100517214C (zh) 一种实现二进制多项式运算的硬件配置方法及硬件系统
CN115632662A (zh) 一种rs译码中的伴随式计算方法、装置、设备及介质
Shum et al. Network coding based on byte-wise circular shift and integer addition
CN103152059A (zh) Ccsds系统rs编码中常系数矩阵的生成装置和方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant