CN112468161A - 一种rs高速编码电路 - Google Patents

一种rs高速编码电路 Download PDF

Info

Publication number
CN112468161A
CN112468161A CN202011386791.8A CN202011386791A CN112468161A CN 112468161 A CN112468161 A CN 112468161A CN 202011386791 A CN202011386791 A CN 202011386791A CN 112468161 A CN112468161 A CN 112468161A
Authority
CN
China
Prior art keywords
data
coding
module
galois field
paths
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
CN202011386791.8A
Other languages
English (en)
Other versions
CN112468161B (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.)
Xian University of Posts and Telecommunications
Original Assignee
Xian University of Posts and Telecommunications
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 Xian University of Posts and Telecommunications filed Critical Xian University of Posts and Telecommunications
Priority to CN202011386791.8A priority Critical patent/CN112468161B/zh
Publication of CN112468161A publication Critical patent/CN112468161A/zh
Application granted granted Critical
Publication of CN112468161B publication Critical patent/CN112468161B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

为解决现有技术应用RS编码时编码效率低的技术问题,本发明提供了一种RS高速编码电路,包括输入仲裁模块、第一编码电路、第二编码电路、输出仲裁模块;第一编码电路、第二编码电路结构相同,二者之间通过输入仲裁模块和输出仲裁模块按照节拍、相互配合切换进行数据处理,实现RS编码。本发明对输入数据作并行化处理,将输入数据划分成并行的预定数目路数据,提高了电路编码效率;利用乒乓电路设计思想,提高了编码硬件电路时序;采用定乘数的伽罗华域乘法器,将伽罗华域乘法运算中输入数据符号与固定乘数的乘法形式,转换为输入数据符号自身进行不同位比特异或的形式,从而求积,该乘法器的使用节省了逻辑资源,提高了电路的最大工作频率。

Description

一种RS高速编码电路
技术领域
本发明涉及光通信领域,具体涉及一种RS高速编码电路。
背景技术
随着高速光纤通信领域的迅猛发展,传输过程中产生的误码率也在增加,因此,人们一直致力于传输的稳定性以及高速性的研究。在数据传输的稳定性上面,通常采用FEC(Forword Error Correction,前向纠错编码)技术来提高传输的可靠性。
RS(Reed-Solomon)码是前向纠错码FEC的码类中非常重要的线性分组码。线性分组码由于编译码相对简单、译码延时固定、编解码结构相对稳定性能强等特点,不仅可以纠正随机差错,而且对突发错误的纠错能力也很强,最适用于光纤通信系统中。
现有技术应用RS编码时,通常采用串行编码的方法,其编码流程如图1所示,闭合开关K1,将K个信息符号dk-1,......d1、d0串行移入RS编码电路中,同时送入通信信道。一旦所有的信息符号全部移入RS编码电路中,经过运算存入n-k个寄存器D中的n-k个符号就构成了校验数据;闭合开关K2,以关闭反馈连接;顺序移出n-k个校验符号p0、p1,......pn-k-1到通信信道中。这n-k个校验符号p0、p1,......pn-k-1与之前的K个信息符号dk-1,......d1、d0共同构成了一个完整的码字。利用图1所示串行编码流程,每个时钟只能处理一个码字,编码效率低并且数据的吞吐率也低,不利于高速传输系统的实现。
发明内容
为解决现有技术应用RS编码时编码效率低的技术问题,本发明提供了一种RS高速编码电路。
本发明的技术方案是:
一种RS高速编码电路,其特殊之处在于:
包括输入仲裁模块、第一编码电路、第二编码电路、输出仲裁模块;第一编码电路、第二编码电路结构相同,二者之间通过输入仲裁模块和输出仲裁模块按照节拍、相互配合切换进行数据处理,实现RS编码;
假定输入RS高速编码电路的K个信息符号中每个符号的位宽为f,则输入RS高速编码电路的信码的总位宽为K·f;
输入仲裁模块将第一组K·f位数据分配到第一输入缓冲模块Fifo_in_1中,将第二组K·f位数据分配到第二输入缓冲模块Fifo_in_2中,将第三组K·f位数据分配到第一输入缓冲模块Fifo_in_1中,将第四组K·f位数据分配到第二输入缓冲模块Fifo_in_2中,如此交替分配,实现第一输入缓冲模块Fifo_in_1与第二输入缓冲模块Fifo_in_2的切换,进而将缓存的数据没有停顿的送往后续模块中进行数据编码处理;
第一编码电路包括第一输入缓存模块Fifo_in_1、第一位宽转换模块、第一编码计算模块Rs Encode_1和第一输出缓存模块Fifo_out_1;第一输入缓存模块Fifo_in_1将缓存的数据分别传输给第一位宽转换模块和第一输出缓存模块Fifo_out_1中;第一位宽转换模块用于将输入的每组数据进行数据并行化处理,转换为p路并行数据并送入第一编码计算模块Rs Encode_1中,且p路并行数据中的每一路数据大小均为symbol_size位,symbol_size为系统使用码字的符号位大小,其数值等于信息符号的位宽f;第一编码计算模块Rs_encode_1用于在每一个时钟周期内,对接收到的p路并行数据进行编码计算,每一路的待编码数据经过
Figure BDA0002809917330000021
个时钟周期计算完成,最终生成(n-k)·f比特的RS校验码,并将其转换为
Figure BDA0002809917330000022
个s比特的RS校验码送入第一输出缓存模块Fifo_out_1中;s为通信信道的数据位宽;
第一输出缓存模块Fifo_out_1将其存储的输入数据与其对应的RS校验码,在输出仲裁模块的控制下,将输入数据与校验码输出。
进一步地,第一编码计算模块Rs Encode_1包括计算模块一、计算模块二、具有计数功能的选择器和数据位宽转换模块Rs Tranform_66;
当选择器的计数值小于等于m时,采用计算模块一对p路并行数据进行编码计算,当选择器的计数值大于m时,采用计算模块二对p路并行数据进行编码计算;
Figure BDA0002809917330000031
k为信码符号个数;
Figure BDA0002809917330000032
表示
Figure BDA0002809917330000033
的整数部分;
数据位宽转换模块Rs Tranform_66用于将计算模块二的输出数据,转换为
Figure BDA0002809917330000034
个s比特的RS校验码,并送入第一输出缓存模块Fifo_out_1中。
进一步地,计算模块一包括p×(n-k)个第一伽罗华域乘法器、1个第一寄存器和1个第一加法器;
p×(n-k)个第一伽罗华域乘法器接收p路并行数据i_datain_0、i_datain_1,…,i_datain_p-1;
第1组的n-k个第一伽罗华域乘法器将p路并行数据中的第1路数据i_datain_0与Fp-1以及G相乘,并将相乘结果送入第一加法器;第2组的n-k个第一伽罗华域乘法器将p路并行数据中的第2路数据i_datain_1与Fp-2以及G相乘,并将相乘结果送入第一加法器;依次类推;第p组的n-k个第一伽罗华域乘法器用于将p路并行数据中的第p路数据i_datain_p与G相乘,并将相乘结果送入第一加法器;
第一伽罗华域乘法器用于将第一寄存器中的数值x(n)与Fp相乘,并将相乘结果送入第一加法器;x(n)的初始值为0;第一加法器将p×(n-k)个第一伽罗华域乘法器输出的相乘结果以及x(n)与Fp的相乘结果相加,将相加结果送入第一寄存器,用该相加结果更新第一寄存器中的x(n);
每进行一次并行p路数据的编码计算,即从编码计算开始计算的时刻起,选择器的计数值随时钟周期的更新而加1;
所述F为RS编码的生成多项式系数与常量组成的方阵;
所述G为RS编码的生成多项式系数组成的矩阵。
进一步地,计算模块二包括(n-k)个第二伽罗华域乘法器、1个第二寄存器和1个第二加法器;
第二伽罗华域乘法器用于将p路并行数据中的第一路数据i_datain_0作为last_datain与G相乘,并将相乘结果送入第二加法器;
第二伽罗华域乘法器还用于将第二寄存器中的数值x(n)与F相乘,并将相乘结果送入第二加法器;
第二加法器将第二伽罗华域乘法器输出的相乘结果以及x(n)与F的相乘相加,并将相加结果送入数据位宽转换模块Rs Tranform_66。
进一步地,第一伽罗华域乘法器与第二伽罗华域乘法器均为定乘数的伽罗华域乘法器。
与现有技术相比,本发明的优点是:
1.本发明对输入数据作并行化处理,将输入数据划分成并行的预定数目路数据,提高了电路编码效率。
2.本发明利用乒乓电路设计思想,提高编码硬件电路时序,使该电路最终工作频率可达到390.625Mhz。
3.采用定乘数的伽罗华域乘法器,将伽罗华域乘法运算中输入数据符号与固定乘数的乘法形式,转换为输入数据符号自身进行不同位比特异或的形式,从而求积,该乘法器的使用节省了逻辑资源,提高了电路的最大工作频率。
附图说明
图1为现有的RS串行编码电路示意图。
图2为通用型的RS高速编码电路结构图。
图3为本发明RS高速编码电路实施例的RS并行编码数学原理图。
图4为本发明RS高速编码电路实施例的电路图。
图5为图4中编码计算模块的电路图(以六路并行为例)。
图6为本发明具体实例的仿真结果对比图。
图7为本发明实例电路综合的时钟频率结果图。
具体实施方式
以下结合附图和实例对本发明作详细说明。
图2为通用的编码电路结构图。数据经过预处理模块,输出为编码计算模块所能处理的数据量,经过编码计算模块计算出RS校验码,然后输出给编码数据处理模块,最终由编码数据处理模块输出RS校验码。
图3为本发明所依据的RS并行编码数学原理图,图中第一个公式表示RS编码计算基于的数学原理。其中,g0、g1,...,gn-k-1表示该RS编码的生成多项式系数,x0(n)、x1(n),...,xn-k-1(n)表示每次编码计算中的状态变量,m(n)表示n时刻的输入数据。将RS编码的生成多项式系数组成的矩阵记为G,RS编码的生成多项式系数与常量组成的方阵记为F,则图中第一个公式可以简记为图中第二个公式。利用迭代计算的方法对多路并行RS编码算法进行设计,根据需求,设计出多倍并行RS编码计算算法,编码计算公式如图2中第三个公式。
如图4所示,本发明所提供的RS高速编码电路,包括输入仲裁模块、第一编码电路、第二编码电路、输出仲裁模块;第一编码电路、第二编码电路结构相同,二者之间通过输入仲裁模块和输出仲裁模块按照节拍、相互配合切换进行数据处理,实现RS编码。
第一编码电路包括第一输入缓存模块Fifo_in_1、第一位宽转换模块、第一编码计算模块Rs Encode_1和第一输出缓存模块Fifo_out_1。
第二编码电路包括第二输入缓存模块Fifo_in_2、第二位宽转换模块、第二编码计算模块Rs Encode_2和第二输出缓存模块Fifo_out_2。
假定输入RS高速编码电路的K个信息符号中每个符号的位宽为f,通信信道的数据位宽为s,则输入RS高速编码电路的信码的总位宽为K·f;
输入仲裁模块将第一组K·f位数据分配到第一输入缓冲模块Fifo_in_1中,将第二组K·f位数据分配到第二输入缓冲模块Fifo_in_2中,将第三组K·f位数据分配到第一输入缓冲模块Fifo_in_1中,将第四组K·f位数据分配到第二输入缓冲模块Fifo_in_2中,如此交替分配,实现第一输入缓冲模块Fifo_in_1与第二输入缓冲模块Fifo_in_2的切换,进而将缓存的数据没有停顿的送往后续模块中进行数据编码处理。
第一编码电路与第二编码电路的结构、原理完全相同,以下仅以第一编码电路为例进行详细说明。
第一编码电路的第一输入缓存模块Fifo_in_1将缓存的数据分别传输给第一位宽转换模块和第一输出缓存模块Fifo_out_1中。第一位宽转换模块用于将输入的每组数据进行数据并行化处理,转换为p路并行数据并送入第一编码计算模块Rs Encode_1中,且p路并行数据中的每一路数据大小均为symbol_size位,symbol_size为系统使用码字的符号位大小,其数值等于信息符号的位宽f。第一输出缓存模块Fifo_out_1暂时存储一组输入数据。
第一编码计算模块Rs_encode_1用于在每一个时钟周期内,对接收到的p路并行数据进行编码计算,每一路的待编码数据经过
Figure BDA0002809917330000061
个时钟周期计算完成,最终生成(n-k)·f比特的RS校验码。由于生成的RS校验码数据为(n-k)个f比特的数据,因此,利用第一编码计算模块Rs_encode_1中的数据位宽转换模块Rs Tranform_66,将(n-k)个f比特的数据转换为
Figure BDA0002809917330000062
个s比特的校验码数据。
如图5所示,第一编码计算模块Rs Encode_1包括计算模块一、计算模块二、具有计数功能的选择器和数据位宽转换模块Rs Tranform_66;当选择器的计数值小于等于m时,采用计算模块一对p路并行数据进行编码计算,当选择器的计数值大于m时,采用计算模块二对p路并行数据进行编码计算;
Figure BDA0002809917330000071
k为信码符号个数;
Figure BDA0002809917330000072
表示
Figure BDA0002809917330000073
的整数部分。
计算模块一包括p×(n-k)个第一伽罗华域乘法器、1个第一寄存器和1个第一加法器;计算模块二包括(n-k)个第二伽罗华域乘法器、1个第二寄存器和1个第二加法器;
第一伽罗华域乘法器与第二伽罗华域乘法器均为定乘数的伽罗华域乘法器。
该乘法器的工作原理是:
将采用的伽罗华域记为GF(2θ),其本原多项式P(x)=xθ+xα+...+1,该域上元素的多项式表示形式为f(α)=aθ-1αθ-1+aθ-2αθ-2+...+a3α3+a2α2+a1α+a0,其中aθ-1,aθ-2,...,a3,a2,a1,a0均为自然数0或1,该域上的元素对应的二进制数表示形式为aθ-1aθ-2...a3a2a1a0,位宽为θ比特,θ的值即为上述K个信息符号中每个符号的位宽f。将该域上已知的乘数表示为f1(α)=bθ-1αθ-1+bθ-2αθ-2+...+b3α3+b2α2+b1α+b0,其对应的二进制数为bθ-1bθ-2...b3b2b1b0,由于乘数已知,因此bθ-1、bθ-2...b3、b2、b1、b0均可求出。将固定乘数f1(α)与任意元素f(α)相乘,利用伽罗华域乘法运算法则,得出其积f1(α)f(α)的表达式:
f(α)f1(α)=(aθ-1bθ-12(θ-1)+(aθ-1bθ-2+aθ-2bθ-12θ-3+...+(a1b0+a0b1)α+a0b0 (1)
由于式(1)中bθ-1,bθ-2,...,b1,b0均为已知,因此,式(1)中每项的系数均由非固定乘数f(α)每项的系数决定。又根据其本原多项式P(x)=xθ+xα+...+1,可得αθ=αα+...+1式(2),并且在伽罗华域中αθ+1=αθ·α,将该式与式(1)、
(2)结合,可以消掉式(1)中幂次数大于θ的项,得出其对应θ位二进制数的积的多项式表达式:
f(α)f1(α)=gθ-1(a)αθ-1+gθ-2(a)αθ-2+...+g1(a)α1+g0(a)α0
其中,
Figure BDA0002809917330000081
由于bθ-1,bθ-2,...,b1,b0均为已知,因此式(4)中
Figure BDA0002809917330000082
均可计算出,其积对应的θ位二进制数表示形式为gθ-1(a)gθ-2(a)...g1(a)g0(a),因此,由式(4)可知,可以将固定乘数的伽罗华域乘法运算形式转换为输入数据自身不同比特位异或的形式。
第一编码计算模块Rs Encode_1的工作过程和原理是:
步骤1:计算模块一的p×(n-k)个第一伽罗华域乘法器接收p路并行数据i_datain_0、i_datain_1,…,i_datain_p-1;
步骤2:第1组的n-k个第一伽罗华域乘法器将p路并行数据中的第1路数据i_datain_0与Fp-1以及G相乘,并将相乘结果送入第一加法器;第2组的n-k个第一伽罗华域乘法器将p路并行数据中的第2路数据i_datain_1与Fp-2以及G相乘,并将相乘结果送入第一加法器;第3组的n-k个第一伽罗华域乘法器将p路并行数据中的第3路数据i_datain_2与Fp-3以及G相乘,并将相乘结果送入第一加法器;依次类推;第p组的n-k个第一伽罗华域乘法器用于将p路并行数据中的第p路数据i_datain_p与G相乘,并将相乘结果送入第一加法器;
步骤3:第一伽罗华域乘法器将第一寄存器中的数值x(n)与Fp相乘,并将相乘结果送入第一加法器;x(n)的初始值为0;
步骤4:第一加法器将p×(n-k)个第一伽罗华域乘法器输出的相乘结果以及x(n)与Fp的相乘结果相加,将相加结果送入第一寄存器,用该相加结果更新第一寄存器中的x(n),此时对p路数据的第1次编码计算完成;
步骤5:每进行一次并行p路数据的编码计算,即从编码计算开始计算的时刻起,选择器的计数值随时钟周期的更新而加1,判断选择器的计数值是否大于m,若否,则返回步骤1进行下一次编码计算;若是,则计算模块一停止计算,并将当前第一寄存器内更新后的x(n)送入计算模块二的第二寄存器;
步骤6:第二伽罗华域乘法器将p路并行数据中的第一路数据i_datain_0作为last_datain与G相乘,并将相乘结果送入第二加法器;
步骤7:第二伽罗华域乘法器将第二寄存器中的数值x(n)与F相乘,并将相乘结果送入第二加法器;
步骤8:第二加法器将第二伽罗华域乘法器输出的相乘结果以及x(n)与F的相乘相加,并将相加结果送入数据位宽转换模块Rs Tranform_66;
步骤9:数据位宽转换模块Rs Tranform_66用于将计算模块二的输出数据,转换为
Figure BDA0002809917330000091
个s比特的RS校验码,并送入第一输出缓存模块Fifo_out_1中。
步骤10:第一输出缓存模块Fifo_out_1中存储着输入数据与其对应的RS校验码,在输出仲裁模块的控制下,将数据与校验码输出编码器。
上述步骤中:
F为RS编码的生成多项式系数与常量组成的方阵;
G为RS编码的生成多项式系数组成的矩阵。
实施例:
本实例基于IEEE802.3协议,采用RS(1023,847)码组。根据相关技术需求,本实例的时序约束最高可以达到390.625MHZ。每组预定数目编码数据单元持续158个时钟周期,其中,有效数据持续130个时钟周期,空闲字符持续28个时钟周期,数据位宽为66比特。
图4为本实施例的RS并行编码数学原理图,,利用迭代计算的方法对多路并行RS编码算法进行设计,根据需求,设计出6倍并行RS编码计算算法,编码计算公式如图2中第三个公式。
图5为本实施例RS并行编码电路的结构框图。该电路具有乒乓结构。位宽为66比特的输入数据首先经过输入仲裁单元,在写时钟域下,等时选择数据写入第一输入缓存模块Fifo_in1或第二输入缓存模块Fifo_in2。在读时钟域下进行编码计算,按节拍与写操作相互配合从第一输入缓存模块Fifo_in1或第二输入缓存模块Fifo_in2中读出数据,既实现高速数据流的无缝衔接与处理,又实现了数据的跨时钟域传输。
第一位宽转换模块和第二位宽转换模块将输入的有效数据首先进行比特重排,然后进行6路并行化处理,之后,需要对每组待编码数据单元进行补零操作;比特重排的具体方法是:在130个时钟周期内,有效数据位宽为66比特,先将66比特的最低同步数据位去掉,然后将130个时钟周期的65比特数据拼接在一起;补零操作的具体方法是:在拼接好的数据前面添加20比特的全0数据,使其构成编码所需8470比特有效数据载荷。
第一编码计算模块Rs Encode_1和第二编码计算模块Rs Encode_2对6路输入数据进行并行化编码计算,每一个时钟周期中将并行60比特数据进行编码计算,每组待编码数据单元经过142个时钟周期计算完成,生成1760比特的RS校验码。
第一编码计算模块Rs Encode_1和第二编码计算模块Rs Encode_2生成每组RS校验码之前,还包括:每组待编码数据单元在前141个计算时钟周期中,采用并行6倍编码计算方式在计算模块一中进行计算;在进行142个计算时钟周期之后,由选择器切换数据通路,数据输入计算模块二进行并行1倍编码计算方式,该并行编码计算方式根据信息码比特数8470比特与计算过程中采用的6倍并行计算方式计算得来。
上述定乘数的伽罗华域乘法器在本实施例中的具体应用为:
RS(1023,847)编码器基于的伽罗华域是GF(210),采用的本原多项式为式p(x)=x10+x3+1(5),该域中元素的多项式表示形式为f(α)=a9α9+a8α8+a7α7+a6α6+a5α5+a4α4+a3α3+a2α2+a1α+a0(6),给定乘数的多项式表示形式为f1(α)=b9α9+b8α8+b7α7+b6α6+b5α5+b4α4+b3α3+b2α2+b1α+b0,求得其积的多项式表示形式为:
f(α)f1(α)=g9(a)α9+g8(a)α8+g7(a)α7+...+g2(a)α2+g1(a)α1+g0(a)
其中,gi(a)=ci9a9+c8 ia8+...c1 ia1+ci 0a0,i∈[0,9]
因此,两乘数的积的二进制表示形式为g9(a)g8(a)g7(a)...g2(a)g1(a)g0(a),则该乘法器的积的每一位均可由输入数据的不同比特位异或得出。
图6为实例的仿真结果对比图。将同一编码数据首先用软件Matlab计算其对应的RS编码,其校验码字见图6下部;然后将同一编码数据用电路进行仿真,得出其校验码字的计算结果如图6上部(部分结果),由图中校验码字起始部分开始比对,可见,RS(1023,847)编码器的逻辑功能是正确的。
图7为本实例的电路综合的时钟频率结果图。可见,选用英特尔stratix10芯片,并基于Quartus Prime Pro18.1逻辑综合工具进行综合,电路的最大时钟频率大于390.625Mhz,在数据接口宽度为66比特的情况下,达到25G/bits的数据吞吐率。

Claims (5)

1.一种RS高速编码电路,其特征在于:
包括输入仲裁模块、第一编码电路、第二编码电路、输出仲裁模块;第一编码电路、第二编码电路结构相同,二者之间通过输入仲裁模块和输出仲裁模块按照节拍、相互配合切换进行数据处理,实现RS编码;
假定输入RS高速编码电路的K个信息符号中每个符号的位宽为f,则输入RS高速编码电路的信码的总位宽为K·f;
输入仲裁模块将第一组K·f位数据分配到第一输入缓冲模块Fifo_in_1中,将第二组K·f位数据分配到第二输入缓冲模块Fifo_in_2中,将第三组K·f位数据分配到第一输入缓冲模块Fifo_in_1中,将第四组K·f位数据分配到第二输入缓冲模块Fifo_in_2中,如此交替分配,实现第一输入缓冲模块Fifo_in_1与第二输入缓冲模块Fifo_in_2的切换,进而将缓存的数据没有停顿的送往后续模块中进行数据编码处理;
第一编码电路包括第一输入缓存模块Fifo_in_1、第一位宽转换模块、第一编码计算模块Rs Encode_1和第一输出缓存模块Fifo_out_1;第一输入缓存模块Fifo_in_1将缓存的数据分别传输给第一位宽转换模块和第一输出缓存模块Fifo_out_1中;第一位宽转换模块用于将输入的每组数据进行数据并行化处理,转换为p路并行数据并送入第一编码计算模块Rs Encode_1中,且p路并行数据中的每一路数据大小均为symbol_size位,symbol_size为系统使用码字的符号位大小,其数值等于信息符号的位宽f;第一编码计算模块Rs_encode_1用于在每一个时钟周期内,对接收到的p路并行数据进行编码计算,每一路的待编码数据经过
Figure FDA0002809917320000011
个时钟周期计算完成,最终生成(n-k)·f比特的RS校验码,并将其转换为
Figure FDA0002809917320000012
个s比特的RS校验码送入第一输出缓存模块Fifo_out_1中;s为通信信道的数据位宽;
第一输出缓存模块Fifo_out_1将其存储的输入数据与其对应的RS校验码,在输出仲裁模块的控制下,将输入数据与校验码输出。
2.根据权利要求1所述的RS高速编码电路,其特征在于:
第一编码计算模块Rs Encode_1包括计算模块一、计算模块二、具有计数功能的选择器和数据位宽转换模块Rs Tranform_66;
当选择器的计数值小于等于m时,采用计算模块一对p路并行数据进行编码计算,当选择器的计数值大于m时,采用计算模块二对p路并行数据进行编码计算;
Figure FDA0002809917320000021
k为信码符号个数;
Figure FDA0002809917320000022
表示
Figure FDA0002809917320000023
的整数部分;
数据位宽转换模块Rs Tranform_66用于将计算模块二的输出数据,转换为
Figure FDA0002809917320000024
个s比特的RS校验码,并送入第一输出缓存模块Fifo_out_1中。
3.根据权利要求2所述的RS高速编码电路,其特征在于:
计算模块一包括p×(n-k)个第一伽罗华域乘法器、1个第一寄存器和1个第一加法器;
p×(n-k)个第一伽罗华域乘法器接收p路并行数据i_datain_0、i_datain_1,…,i_datain_p-1;
第1组的n-k个第一伽罗华域乘法器将p路并行数据中的第1路数据i_datain_0与Fp-1以及G相乘,并将相乘结果送入第一加法器;第2组的n-k个第一伽罗华域乘法器将p路并行数据中的第2路数据i_datain_1与Fp-2以及G相乘,并将相乘结果送入第一加法器;依次类推;第p组的n-k个第一伽罗华域乘法器用于将p路并行数据中的第p路数据i_datain_p与G相乘,并将相乘结果送入第一加法器;
第一伽罗华域乘法器用于将第一寄存器中的数值x(n)与Fp相乘,并将相乘结果送入第一加法器;x(n)的初始值为0;第一加法器将p×(n-k)个第一伽罗华域乘法器输出的相乘结果以及x(n)与Fp的相乘结果相加,将相加结果送入第一寄存器,用该相加结果更新第一寄存器中的x(n);
每进行一次并行p路数据的编码计算,即从编码计算开始计算的时刻起,选择器的计数值随时钟周期的更新而加1;
所述F为RS编码的生成多项式系数与常量组成的方阵;
所述G为RS编码的生成多项式系数组成的矩阵。
4.根据权利要求3所述的RS高速编码电路,其特征在于:
计算模块二包括(n-k)个第二伽罗华域乘法器、1个第二寄存器和1个第二加法器;
第二伽罗华域乘法器用于将p路并行数据中的第一路数据i_datain_0作为last_datain与G相乘,并将相乘结果送入第二加法器;
第二伽罗华域乘法器还用于将第二寄存器中的数值x(n)与F相乘,并将相乘结果送入第二加法器;
第二加法器将第二伽罗华域乘法器输出的相乘结果以及x(n)与F的相乘相加,并将相加结果送入数据位宽转换模块Rs Tranform_66。
5.根据权利要求3或4所述的RS高速编码电路,其特征在于:
第一伽罗华域乘法器与第二伽罗华域乘法器均为定乘数的伽罗华域乘法器。
CN202011386791.8A 2020-12-01 2020-12-01 一种rs高速编码电路 Active CN112468161B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011386791.8A CN112468161B (zh) 2020-12-01 2020-12-01 一种rs高速编码电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011386791.8A CN112468161B (zh) 2020-12-01 2020-12-01 一种rs高速编码电路

Publications (2)

Publication Number Publication Date
CN112468161A true CN112468161A (zh) 2021-03-09
CN112468161B CN112468161B (zh) 2023-09-22

Family

ID=74805220

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011386791.8A Active CN112468161B (zh) 2020-12-01 2020-12-01 一种rs高速编码电路

Country Status (1)

Country Link
CN (1) CN112468161B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114157396A (zh) * 2021-12-03 2022-03-08 江西洪都航空工业集团有限责任公司 一种rs编码器及rs编解码方法
CN114499767A (zh) * 2022-04-14 2022-05-13 苏州联讯仪器有限公司 一种数据传输系统及其rs编码装置和方法
CN117254823A (zh) * 2023-11-20 2023-12-19 苏州联讯仪器股份有限公司 一种并行rs编码方法、装置、系统及计算机存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5768296A (en) * 1994-07-01 1998-06-16 Quantum Corporation ECC system supporting different-length Reed-Solomon codes whose generator polynomials have common roots
JP2000124813A (ja) * 1998-10-20 2000-04-28 Texas Instr Japan Ltd リードソロモン符号化装置およびその方法とリードソロモン復号装置およびその方法
US20030192007A1 (en) * 2001-04-19 2003-10-09 Miller David H. Code-programmable field-programmable architecturally-systolic Reed-Solomon BCH error correction decoder integrated circuit and error correction decoding method
CN104601179A (zh) * 2014-12-12 2015-05-06 北京麓柏科技有限公司 一种存储系统纠删码编码、解码电路及编解码电路
US20180129564A1 (en) * 2016-11-04 2018-05-10 Sandisk Technologies Llc Method and decoder to adjust an error locator polynomial based on an error parity
CN109035233A (zh) * 2018-07-24 2018-12-18 西安邮电大学 视觉注意力网络及工件表面缺陷检测方法
CN110380738A (zh) * 2019-07-19 2019-10-25 广东省新一代通信与网络创新研究院 参数软件可配置的rs编码器ip核电路结构及其编码方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5768296A (en) * 1994-07-01 1998-06-16 Quantum Corporation ECC system supporting different-length Reed-Solomon codes whose generator polynomials have common roots
JP2000124813A (ja) * 1998-10-20 2000-04-28 Texas Instr Japan Ltd リードソロモン符号化装置およびその方法とリードソロモン復号装置およびその方法
US20030192007A1 (en) * 2001-04-19 2003-10-09 Miller David H. Code-programmable field-programmable architecturally-systolic Reed-Solomon BCH error correction decoder integrated circuit and error correction decoding method
CN104601179A (zh) * 2014-12-12 2015-05-06 北京麓柏科技有限公司 一种存储系统纠删码编码、解码电路及编解码电路
US20180129564A1 (en) * 2016-11-04 2018-05-10 Sandisk Technologies Llc Method and decoder to adjust an error locator polynomial based on an error parity
CN109035233A (zh) * 2018-07-24 2018-12-18 西安邮电大学 视觉注意力网络及工件表面缺陷检测方法
CN110380738A (zh) * 2019-07-19 2019-10-25 广东省新一代通信与网络创新研究院 参数软件可配置的rs编码器ip核电路结构及其编码方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
商世广;桂新翔;: "基于重归一化的CABAC算法改进", 信息技术, no. 09 *
李锦明;刘梦欣;成乃朋;: "RS编码算法的优化与FPGA实现", 电子技术应用, no. 02 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114157396A (zh) * 2021-12-03 2022-03-08 江西洪都航空工业集团有限责任公司 一种rs编码器及rs编解码方法
CN114499767A (zh) * 2022-04-14 2022-05-13 苏州联讯仪器有限公司 一种数据传输系统及其rs编码装置和方法
CN114499767B (zh) * 2022-04-14 2022-08-05 苏州联讯仪器有限公司 一种数据传输系统及其rs编码装置和方法
CN117254823A (zh) * 2023-11-20 2023-12-19 苏州联讯仪器股份有限公司 一种并行rs编码方法、装置、系统及计算机存储介质
CN117254823B (zh) * 2023-11-20 2024-03-15 苏州联讯仪器股份有限公司 一种并行rs编码方法、装置、系统及计算机存储介质

Also Published As

Publication number Publication date
CN112468161B (zh) 2023-09-22

Similar Documents

Publication Publication Date Title
CN112468161B (zh) 一种rs高速编码电路
US7219293B2 (en) High performance CRC calculation method and system with a matrix transformation strategy
KR101354288B1 (ko) 통신 시스템에서 에러 검출 방법 및 장치
US5440570A (en) Real-time binary BCH decoder
US5343481A (en) BCH error-location polynomial decoder
US20100017676A1 (en) Decoding of linear codes with parity check matrix
US20050204268A1 (en) Decoding and error correction for algebraic geometric codes
JP2000156646A (ja) 符号化装置及び方法、復号装置及び方法、信号処理装置、デ―タ伝送装置、無線通信装置、ネットワ―クステ―ション、並びに情報処理装置及び方法
US8700971B2 (en) Parallel residue arithmetic operation unit and parallel residue arithmetic operating method
US7539918B2 (en) System and method for generating cyclic codes for error control in digital communications
CN101854222B (zh) 一种数据处理的方法、通信装置和系统
KR20180085651A (ko) 리스트 디코딩 생성을 통한 이진 bch 코드들의 bm-기반 빠른 체이스 디코딩에서 빠른 다항식 업데이트를 위한 방법을 수행하기 위한 asic
CN101834615B (zh) 里德-索罗蒙编码器实现方法
EP0393080B1 (en) Hypersystolic reed-solomon encoder
JPH09505952A (ja) プログラム可能な冗長/シンドローム生成装置
CN117014017A (zh) 一种基于高位宽数据计算多项式除法余数的crc计算方法
CN100417031C (zh) 宽带无线接入系统中里德索洛门卷积级联码的实现方法
US7181671B2 (en) Parallelized CRC calculation method and system
KR100874484B1 (ko) 준순환 저밀도 패리티 검사 부호화 방법 및 장치
US9032277B1 (en) Parallel low and asymmetric rate Reed Solomon coding
CN117254823B (zh) 一种并行rs编码方法、装置、系统及计算机存储介质
Bhoyar Design of encoder and decoder for Golay code
US7287207B2 (en) Method and apparatus for computing parity characters for a codeword of a cyclic code
CN114157396A (zh) 一种rs编码器及rs编解码方法
CN114726383A (zh) 一种基于crc-16的高吞吐量并行循环冗余校验的方法

Legal Events

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