基于fpga的高性能组合rs处理器的制造方法

文档序号:7545418阅读:231来源:国知局
基于fpga的高性能组合rs处理器的制造方法
【专利摘要】本发明公开了一种基于FPGA的高速组合RS编译码器,主要解决现有技术的可移植性差、运算速度低及纠突发错误弱的问题。其包括发送端缓冲模块、控制模块、RS码编码模块、交织模块、接收端缓冲模块、解交织模块、RS码译码模块七个模块,其中在发送端缓冲模块加入了码长控制信号,将信息组经RS编码后进行交织并将其发送至信道;在接收端缓冲模块分别加入了码长控制信号和修正因子,将接收码组送入解交织模块进行解交织,在RS译码模块采用单时钟上升沿下降沿双控制,并使钱搜索子模块和法尼算法子模块同时工作。本发明不仅提高了RS编译码器的可移植性和运算速度,而且有效的减少了硬件占用率,有极强的纠突发错误能力,可用于无线通信。
【专利说明】基于FPGA的高性能组合RS处理器
【技术领域】
[0001]本发明属于通信【技术领域】,更进一步涉及信道编码【技术领域】中的基于现场可编程门阵列FPGA的连续的里德-所罗门RS码编译码器,可广泛地适用于无线通信,以及数字用户线路(DSL)系统中。
【背景技术】
[0002]RS码是里德-所罗门(Reed-Solomon)码的简称,属于前向纠错FEC方式。可归于BCH码,是非2进制的BCH码。当然也是循环码,线性分组码,其特别适合纠突发误码。使用RS码的目的是通过增加冗余符号来提高信道传输的可靠性,显然信息传输速率下降了。在信源编码中是尽可能去掉一些无用的信息,以提高信息传输速率。所以从这一方面讲,信道编码使传输的可靠性与信息传输速率成为相对的矛盾统一体。
[0003]RS码被广泛的应用于各种商业用途,最显著的是在⑶、DVD和蓝光光盘上的使用;在数据传输中,它也被用于数字用户线路(DSL)和全球微波互联接入(WiMAX);广播系统中数字视频广播(DVB)和美国数字电视国家标准(ATSC)也闪现着它的身影;在电脑科学里,它是第六层标准磁盘阵列(RAID)的重要成员。
[0004]在基于FPGA的RS码译码过程中,由于译码方法中关键方程的求解复杂度的限制,采用了多次迭代的方法进行处理,从而限制了译码速度,所以一个RS处理器的实际应用,在很大程度上取决于译码方法中关键方程的改进上。王峰(RS译码器算法研究与实现,苏州大学研究生论文,2010)给出了一种基于iBM算法的译码器实现,其在FPGA上的处理速度并不高,在Xilinx公司的XC3S100E芯片工作频率仅为94.54Mbits/s。
[0005]尽管RS码在基于FPGA的编译码技术研究中很成熟,但是现有的FPGA的RS编译码器均是仅能输入固定码长的,由于在不同的无线通信环境下需要输入不同长度的码长,因此使得RS编译码器无法在多种通信环境下运行,导致RS编译码器的可移植性不佳。
[0006]其次在一般的无线通信中存在突发错误,单独使用RS码编译码器并不能很好地纠正突发错误。例如,专利CN102122964A提出的RS码处理器,虽然具有较高的吞吐量,但是并未使用交织技术处理突发错误问题。

【发明内容】

[0007]本发明的目的在于针对上述现有的技术缺陷,提出一种基于FPGA的高性能组合RS处理器,以提高处理器的时钟资源利用率和吞吐率,并使其具有可移植性,且能及时纠正突发错误。
[0008]为实现上述目的,本发明的组合RS处理器,包括:发送端缓冲模块1、控制模块2、RS码编码模块3、接收端缓冲模块4、RS码译码模块5,发送端缓冲模块I与RS码编码模块3相连,其特征在于:
[0009]RS码编码模块3的输出端连接有交织模块6,用于对编码后码组进行交织处理,并发送至信道;[0010]接收端缓冲模块4与RS译码模块5之间连接有解交织模块7,用于对经解交织器处理后的码组进行解码,从而恢复编码信息再输出给RS译码模块5 ;
[0011]发送端缓冲模块(1),设有两个接收信号端,分别用于接收数据总线的数据信息k和码长控制信号Ctrl ;
[0012]接收端缓冲模块(4),设有两个接收信号端,分别用于接收数据总线的数据信息{R,!, R' 2,..., R' ctrl+16}和码长控制信号 Ctrl-r,其中 ctrl-r=ctrl+16 ;
[0013]RS译码模块5,其包括:
[0014]伴随式计算子模块51,用于对接收码组取,R2,...,Retal+16}进行迭代运算,并在时钟elk的上升沿控制下,运算得到16个伴随多项式系数(S1, S2,, S16I,并将多项式系数(S1, S2,, S16I送入到RiBM算法子模块中;
[0015]RiBM算法子模块52,根据RiBM算法对输入的伴随多项式系数(S1, S2, , S16I进行迭代运算,并在时钟elk的下降沿控制下,分别得到错误位置多项式(Atl, A1,..., AJ和错误值多项式{Ω & Q1,..., Ω8},并将错误位置多项式{Λ& A1,..., Λ8}输出到钱搜索算法子模块53和法尼算法子模块54,将错误值多项式{Ω& Q1,..., Ω8}输出到法尼算法子模块54 ;
[0016]钱搜索算法子模块53,用于对输入的错误位置多项式{Λ& A1,..., A8I进行迭代运算,并在时钟elk的上升沿控制下求解错误位置σ(..V,.^ ;
[0017]法尼算法子模块54,用于对输入的错误位置多项式{Λ& A1,..., AJ和错误值多项式{Ω& Q1,..., Ω8}进行迭代运算,并在时钟elk的上升沿控制下求解错误值?(' 丨);
[0018]FIFO子模块55,用于将输入的码组取,R2, , Rctrl+16}按先后顺序存储到FPGA芯片的FIFO单元中,在获得错误位置D和错误值《(七后,根据错误情况输出码组(R1, R2,, Rctrl+16}到错误纠正电路中进行纠正;
[0019]所述的伴随式计算子模块51、钱搜索算法子模块53和法尼算法子模块54,其均设有修正因子Qj, a2_...,d16<y},用于根据接收数据总线对码长的要求,自适应的修正这三个模块在迭代过程中产生的误差,以适应不同的码长;
[0020]所述的钱搜索算法子模块53与法尼算法子模块54同时工作,以降低硬件资源占用率并实现高速运行。
[0021]本发明与现有技术相比,具有如下有益效果:
[0022]1.本发明由于在发送端缓冲模块I中加入码长控制信号ctrl,并在RS译码模块中加入了修正因子,使RS处理器适应不同输入码长的要求,大大提高了 RS处理器的可移植性。
[0023]2.本发明由于在RS处理器中级联了交织模块6和解交织模块7,使该处理器具有很强的纠正突发错误能力。
[0024]3.本发明由 于在RS译码模块中使钱搜索算法子模块53与法尼算法子模块54同时工作,大大降低了硬件资源占用率并提高了时钟利用率。
[0025]4.本发明由于在RS译码模块中使用了单时钟上升沿下降沿双控制的方法,大大提高了 RS处理器的工作频率,如用Xilinx公司的XC6VCX75T进行综合仿真及静态时序分析,其中编码部分最高工作频率为374Mbit/s,译码部分最高工作频率为301Mbit/s,其数据吞吐量约为2.48Gbit/s。另外其硬件资源占用率很低,如下表所列:
[0026]
【权利要求】
1.一种基于FPGA的高性能组合RS处理器,包括:发送端缓冲模块(I)、控制模块(2)、RS码编码模块(3)、接收端缓冲模块(4)、RS码译码模块(5),发送端缓冲模块(I)与RS码编码模块(3)相连,其特征在于: RS码编码模块(3)的输出端连接有交织模块(6),用于对编码后码组进行交织处理,并发送至信道; 接收端缓冲模块(4)与RS译码模块(5)之间连接有解交织模块(7),用于对经解交织器处理后的码组进行解码,从而恢复编码信息再输出给RS译码模块(5); 发送端缓冲模块(1),设有两个接收信号端,分别用于接收数据总线的数据信息k和码长控制信号ctrl ; 接收端缓冲模块(4),设有两个接收信号端,分别用于接收数据总线的数据信息{R,!, R' 2,..., R' ctrl+16}和码长控制信号 Ctrl-r,其中 ctrl-r=ctrl+16 ; RS译码模块(5),其包括: 伴随式计算子模块(51),用于对接收码组(R1, R2,...,Rrtrt+16}进行迭代运算,并在时钟elk的上升沿控制 下,运算得到16个伴随多项式系数(S1, S2,, S16I,并将多项式系数(S1, S2,, S16I送入到RiBM算法子模块中;RiBM算法子模块(52),根据RiBM算法对输入的伴随多项式系数(S1, S2,, S16I进行迭代运算,并在时钟elk的下降沿控制下,分别得到错误位置多项式{Λ& A1,..., A8I和错误值多项式{Ω & Q1,..., Ω8},并将错误位置多项式{Λ& A1,..., Λ 8}输出到钱搜索算法子模块和法尼算法子模块,将错误值多项式{Ω& Ω”...,Ω8}输出到法尼算法子模块;钱搜索算法子模块(53),用于对输入的错误位置多项式{Λ& A1,..., A8I进行迭代运算,并在时钟elk的上升沿控制下求解错误位置σ(.r,.^ ; 法尼算法子模块(54),用于对输入的错误位置多项式(Atl, A1,..., A8I和错误值多项式{Ω& Q1,..., Ω8}进行迭代运算,并在时钟elk的上升沿控制下求解错误值 FIFO子模块(55),用于将输入的码组(R1, R2,, Rctrl+16}按先后顺序存储到FPGA芯片的FIFO单元中,在获得错误位置(61(?1)和错误值后,根据错误情况输出码组(R1, R2,, Rctrl+16}到错误纠正电路中进行纠正; 所述的伴随式计算子模块(51)、钱搜索算法子模块(53)和法尼算法子模块(54),其均设有修正因子Qj, a2_...,,用于根据接收数据总线对码长的要求,自适应的修正这三个模块在迭代过程中产生的误差,以适应不同的码长; 所述的钱搜索算法子模块(53)与法尼算法子模块(54)同时工作,以降低硬件资源占用率并实现高速运行。
2.根据权利要求1所述的基于FPGA的高性能组合RS处理器,其特征在于:所述的RS码编码模块(3),采用常系数有限域乘法器,该乘法器是由并行的异或门构成,异或门的输入端按固定参数要求输入乘数,以将多级与运算和异或运算简化为一级异或运算,该乘法器对输入的乘数(?, a” a2,..., a7}进彳了有限域乘法处理,将乘数{a0, a” a2,...,a7}与乘法器内部的固定参数相乘,得到并输出结果Y1, y2,, y7},实现编码器的高速运行。
3.根据权利要求1所述的基于FPGA的高性能组合RS处理器,其特征在于:所述的交织模块由一个只读存储器R0M1、两个随机存储器RAM1、RAM2和两个开关Kl、K2组成;第一开关Kl的后触点与第一随机存储器RAMl信息输入端相连,第二开关K2的后触点与第二随机存储器RAM2信息输入端相连,第一只读存储器ROMl信息输出端分别与第一随机存储器RAMl和第二随机存储器RAM2的地址输入端相连;当第一组数据输入时第一开关Kl闭合,第二开关K2打开,第一只读存储器ROMl中的地址信息读入到第一随机存储器RAMl的地址输入端以控制数据存储到第一随机存储器RAMl中;当第一随机存储器RAMl存满后,将第一随机存储器RAMl中的数据信息按顺序输出输出,同时第一开关Kl打开,第二开关K2闭合,第一只读存储器ROMl中的地址信息读入到第二随机存储器RAM2的地址输入端以控制下一组数据信息读入 到第二随机存储器RAM2中,当第二随机存储器RAM2存满后,将第二随机存储器RAM2中的数据信息按顺序输出输出;两个开关交替打开,数据交替输入到第一随机存储器RAMl和第二随机存储器RAM2中,第一随机存储器RAMl和第二随机存储器RAM2交替输出交织后的结果。
4.根据权利要求1所述的基于FPGA的高性能组合RS处理器,其特征在于:所述解交织模块由一个只读存储器R0M2、两个随机存储器RAM3、RAM4和开关K3、K4组成;第三开关K3的后触点与第三随机存储器RAM3信息输入端相连,第四开关K4的后触点与第四随机存储器RAM4信息输入端相连,第二只读存储器R0M2信息输出端分别与第三随机存储器RAM3和第四随机存储器RAM4的地址输入端相连;当第一组数据输入时第三开关K3闭合,第四开关K4打开,第二只读存储器R0M2中的地址信息读入到第三随机存储器RAM3的地址输入端以控制数据存储到第三随机存储器RAM3中;当第三随机存储器RAM3存满后,将第三随机存储器RAM3中的数据信息按顺序输出输出,同时第三开关K3打开,第四开关K4闭合,第二只读存储器R0M2中的地址信息读入到第四随机存储器RAM4的地址输入端以控制下一组数据信息读入到第四随机存储器RAM4中,当第四随机存储器RAM4存满后,将第四随机存储器RAM4中的数据信息按顺序输出输出;两个开关交替打开,数据交替输入到第三随机存储器RAM3和第四随机存储器RAM4中,第三随机存储器RAM3和第四随机存储器RAM4交替输出解交织后的结果;其中第二只读存储器R0M2中存储的地址信息与第一只读存储器ROMl的地址信息互逆。
5.根据权利要求1所述的基于FPGA的高性能组合RS处理器,其特征在于:所述码长控制信号ctrl,用于接收来自数据总线的控制信息以控制输入码组的长度,同时给出相应的修正因子& α」,a 2<iJ, a 1WJ},使RS处理器适应不同输入码长的要求,以提高RS处理器的可移植性。
【文档编号】H03M13/15GK103929209SQ201410140098
【公开日】2014年7月16日 申请日期:2014年4月9日 优先权日:2014年4月9日
【发明者】孙蓉, 刘景伟, 田宇, 蔡鑫, 白宝明 申请人:西安电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1