基于FPGA的Reed-Solomon码编解码器设计文献综述

 2021-11-07 22:29:35

毕业论文课题相关文献综述

{title}

毕业论文课题相关文献综述

{title}

一、研究RS编解码的背景与意义

RS码是一种纠错性能很强的多进制BCH码,广泛应用于差错控制中,是当前最有效的,应用最广的差错控制编码方式之一。通常情况,在短的中等码长下,RS码的性能很理想,几乎完美;同时在纠正随机错误,突发错误,以及二者的结合上表现也尤为突出;此外,它还可以用来构造级联码,也用作单独码;它可以作为外码提供纠错能力更强的串行级联码,并广泛应用于信道条件极其恶劣的场合,尤其是在具有多径衰弱特性的信道。

在RS编解码早期,由于没有较好的解码算法,对应纠正6个以上的传输错误都显得异常困难。直到1967年,Berlekamp提出了一种可以有效实现BCH和RS码解码的方法,它首次使得纠正多个错误的RS码的解码成为可能。随着微电子技术的发展,在RS算法不断改进的过程中,RS解码算法的硬件实现成为可能,从而也推动了RS解码器结构的研究与发展。随着更高效的解码算法以及大规模集成电路技术的发展,RS码在移动通信,光纤通信,军用通信,深空通信,磁盘阵列及光储存等方面得到了很广泛的应用,

二、RS编解码器的原理

1、RS码编码原理

RS编码是一种线性的块编码,它的表示形式为。当编码器接收到一个数据信息序列,该数据信息序列被分隔成若干长度为k的信息块,并通过运算符将每个数据信息块编码成长度为n的编码数据块。在RS码中的码元符号不是二进制而是多进制符号,其中以进制为主。能纠正t个错的RS码具有表1所示的参数,其中t表示最多可以纠正t个随机错误符号。下表为RS码的参数:

表1RS码的参数

码长

n=-1个多进制符号

监督位

n-k=2t

最小距离

=2t 1

由于RS码是对多进制符号进行纠错,因此RS码可用于纠正突发错误,比如能纠正两个八进制符号错误的RS(7,3)码,每个符号可用3bit二进制符号表示。八进制的RS(7,3)码相当于二进制的(21,9)码,因此纠正两个符号就相当于纠正连续6bit二进制符号的突发错误,然而二进制的(21,9)码却没有纠正6bit突发错误的能力,它能纠正任何2个随机错误以及长度≤4的突发错误。

2、编码器的结构

RS编码器分为n-k级和k级编码器,n-k级编码器又可再分为乘法和除法结构的编码器。这里一般采用nk级除法电路来实现。之所以采用这种方法,是因为这种方法根据的是生成多项式G(x),而且基于这种方法可以得到编解码速度更快的系统码。例如:RS(204,188)码是RS(255,239)码的缩短码,信息数据长度k=188字节,编码后的码长n=204字节,校验数据长度r=16字节,m=8,能纠正最大错误字节数t=8。根据RS编码原理,RS(204,188)编码器的码生成多项式为:

(1)

接下来介绍RS(204,188)编码器原理框图,如图1所示,图中所有的数据通道宽度都是8位,Go、G。G15表示生成多项式从低位到高位的多项式系数,x1、x2x16表示8位寄存器,D表示数据入,T表示数据出,K1、K2、K3表示数据流开关。

图1RS(204,188)编码器原理框图

编码电路的实现过程如下:

①对16个移位寄存器进行初始化,初始状态为0;

②前后时钟开关k2、k3闭合,k1断开,直接输出信息码元,同时完成了除法运算;

③七个时钟后,k1闭合,k2、k3断开,计算监督码元并输出;

④重复上述过程,送入第2组信息码元。

3、编码步骤

第一步:确定生成多项式,这里是最为常用的生成多项式:(2)

式中a定义为m阶初等多项式p(x)的根它可生成全部GF域的元素。以RS(15,9)为例,RS(15,9)的生成多项式:

(3)

第二步:取模运算产生校验信息多项式;

(4)

式中m(x)表示RS编码码字中的数据信息,它是K一1阶的线性多项式。

第三步:由加法运算生成最终编码后的多项式;

(5)

由上可以看出,RS码的编码过程主要是围绕码的生成多项式进行的,一旦生成多项式确定了,则码就确定了。

4、RS码解码的功能实现

RS解码器实现以下五个功能:

第一:从接收到的码字计算伴随式;

第二:利用BM算法计算错误多项式和错误值多项式;

第三:利用钱搜索计算错误位置;

第四:Fomey算法计算错误值;

第五:错误值与FIFO控制器所储存的接受码字模二和计算解码输出。

5、解码流程如图二所示。

图2RS解码流程图

三、RS编解码器的实现

在特定应用域中,RS码的设计与实现是比较困难的。RS码是在有限域上进行的代数运算,不同于常用的二进制系统,实现相对复杂一些,其复杂度主要决定于有限域的大小、码字的长度、采用的编码算法等,编码器的实现方式主要有以下几种:

通用的微处理器采用查表(Table-lookup)方法可以实现RS编码,首先需要产生有限域运算中的系数,存于内存中,就可以通过查表的方法实现编码了。

DSP早已成为传统微处理器的一种替代品,现在的DSP芯片已能对一些特定的应用提供并行的处理结构,可以在DSP芯片中完成RS编码,不过DSP不是专为实现纠错中需要的特定功能设计的,同样也可以采用查表的方法在DSP中实现快速有限域运算。

ASIC是专用集成电路,由LSI-LogicCorpera2tion设计的ASIC芯片,有3kB的RAM和4kB的ROM,是实现高速编码器的最佳选择。

相较以上三种实现方法,FPGA能够快速和经济地将电路描述转化为硬件实现,而且对设计的修订也比较方便。而通常的ASIC需要的设计时间较长,制作费用也较高,也不便于调整。因此本设计采用基于FPGA的RS编解码设计。

其次,本次设计的工具是Altera公司的设计软件和Mentor公司的仿真软件Modelsim,支持原理图、VHDL、VerilogHDL以及AHDL(AlteraHardwareDescriptionLanguage)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。而Modelsim能提供友好的仿真环境,是业界唯一的单内核支持VHDL和Verilog混合仿真的仿真器。它采用直接优化的编译技术、Tcl/Tk技术、和单一内核仿真技术,编译仿真速度快,编译的代码与平台无关,便于保护IP核,个性化的图形界面和用户接口,能为用户加快调错提供强有力的手段,是公认的FPGA/ASIC设计的首选仿真软件。

一、研究RS编解码的背景与意义

RS码是一种纠错性能很强的多进制BCH码,广泛应用于差错控制中,是当前最有效的,应用最广的差错控制编码方式之一。通常情况,在短的中等码长下,RS码的性能很理想,几乎完美;同时在纠正随机错误,突发错误,以及二者的结合上表现也尤为突出;此外,它还可以用来构造级联码,也用作单独码;它可以作为外码提供纠错能力更强的串行级联码,并广泛应用于信道条件极其恶劣的场合,尤其是在具有多径衰弱特性的信道。

在RS编解码早期,由于没有较好的解码算法,对应纠正6个以上的传输错误都显得异常困难。直到1967年,Berlekamp提出了一种可以有效实现BCH和RS码解码的方法,它首次使得纠正多个错误的RS码的解码成为可能。随着微电子技术的发展,在RS算法不断改进的过程中,RS解码算法的硬件实现成为可能,从而也推动了RS解码器结构的研究与发展。随着更高效的解码算法以及大规模集成电路技术的发展,RS码在移动通信,光纤通信,军用通信,深空通信,磁盘阵列及光储存等方面得到了很广泛的应用,

二、RS编解码器的原理

1、RS码编码原理

RS编码是一种线性的块编码,它的表示形式为。当编码器接收到一个数据信息序列,该数据信息序列被分隔成若干长度为k的信息块,并通过运算符将每个数据信息块编码成长度为n的编码数据块。在RS码中的码元符号不是二进制而是多进制符号,其中以进制为主。能纠正t个错的RS码具有表1所示的参数,其中t表示最多可以纠正t个随机错误符号。下表为RS码的参数:

表1RS码的参数

以上是毕业论文文献综述,课题毕业论文、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。