里德所罗门码解码器硬件复用方法及其低硬件复杂度解码装置的制作方法

文档序号:7513632阅读:317来源:国知局

专利名称::里德所罗门码解码器硬件复用方法及其低硬件复杂度解码装置的制作方法
技术领域
:本发明属于数字信息传输
技术领域
,涉及通信和广播系统中信道编码方案的里德所罗门码解码器的硬件复用方法及低硬件复杂度解码装置。
背景技术
:在数据传输系统中,信道编码是对抗信道噪声、保证有效传输的一种常用技术。里德所罗门码于I960年被I.S.Reed和G.Solomon首次提出(I.S.Reed,GSolomon,"Polynomialcodeovercertainfinitecode,"Jowma/o/f/ze5bcz',々r/"t/组nWawiM^/e附加'cy,Vol.8,No.2.,pp.300-304,Jun.1960),在本专业领域内,人们通常简称为RS码,它具有突出的对抗连续噪声的性能,是最常见的信道编码方案之一,被广泛应用于无线与移动通信、空间通信、数据存储等多种应用系统和标准。相比编码器,RS码解码器要复杂很多。在RS解码器的设计和实现中,硬件复杂度和吞吐率是两个至关重要而又相互制约的设计目标。无线系统的吞吐率需求低于宽带有线系统,并由于便携性对系统规模的限制,低硬件复杂度的解码器对采用RS码编码方案的无线或移动系统的设计和应用具有很大的现实意义。RS码是一种多进制线性循环码。对于一个RS(iV,&m)码,每个信息序列包含《个符号,每个码字包含iV个符号。RS码字间的最小距离为扣7V-《+l,在每个码字中至多有,=L(W-《)/2」(1)个符号的错误可以被纠正。RS码的信息序列和码字中的每个符号都是有限域(FiniteField,也称为GaloisField)GF(2,的元素,编码和解码中RS符号的运算操作需要按照有限域运算法则进行。有限域的加法是对两个加数进行逐比特异或运算,即有限域元素...,"o)与Z)o)的和为J+^(a^①Z^aQ6Q)。有限域的乘法运算相对较复杂,有对偶基(DualBasis),自然基(NormalBasis)等实现方法。有限域除法可以由求逆查找表和一个乘法器实现。硬判决(hard-decision)译码具有较低的硬件实现复杂度,但是译码能力受限。RS解码过程可分为三个歩骤伴随式(syndrome)计算,计算误码位置多项式(errorlocatorpolynomial,ELP),纠正误码。伴随式序列定义为接收码字多项式在^,'。",/=0,1,5-2处的值,i(a"'。+'"(4)如果伴随式序列为全零,那么接收码字是合法码字;如果伴随式序列不为全零,解码器利用伴随式多项式(5)计算ELP和错误值多项式(errorevaluatorpolynomial,EEP)。误码位置多项式定义为L")=OL,0+""^h&;。「,?(6)错误值多项式定义为Wx)=L(x)5"(x)=w。+w一+w2x2+…(7)伴随式序列与错误位置多项式的牛顿等式A=-g'■=V/「,',"+V…,2,(8)解码器利用(8)式,计算与伴随式序列对应的错误位置多项式和错误值多项式。确定错误位置多项式和错误值多项式后,可以计算出错误位置和错误值,然后从接收码字中减去误码,完成解码。伴随式计算是多项式求值的过程,可以按照Homer规则来实现,即嵌套的加-乘运算f(.老—,""'。+'+;2>""'+'+;3>""'+'+..>'""+'+r0。(9)无除法BM(inversion-lessBM)算法能够以较低的运算量,利用伴随式多项式,计算出错误位置多项式,Reed于1991年提出了无除法博利坎普-梅西电路,用于完成无除法博利坎普-梅西算法(I.S.Reed,M.T.Shih,T.K.Truong.VLSIdesignofinverse-FreeBerlekamp-Masseyalgorithm[J].压£Pracee^"g^五,Vol.138,No.5,pp.295-298,September1991.)。计算出错误位置多项式之后,按照(13)进行多项式乘法,可以得出错误值多项式。Chien算法(R.T.Chen,"CyclicdecodingprocedureforBCHcodes,"!Tra舰/咖r肌T7zewy'Vol.IT-10:pp.357-363,October1964.)能够搜索出错误位置多项式的所有根,从而得到所有的错误位置。Chien算法的计算过程是对/=1,2,...,见逐个验证Z(a')是否等于零,若是,则对应码元"-,发生了误码。Forney给出了由错误位置多项式和错误值多项式计算错误值的方法(G.D.Forney,"OndecodingBCHcodes,"Thms./"/br附.77zeo/->>,Vol.IT-11,No.4:pp.357-363,October1965.),第(AK)码元的错误值为其中,yTW是错误位置多项式的有限域导数。Forney算法需要和Chien算法结合,才能正确纠错。现有的RS解码器由三个独立的模块,分别完成解码运算的伴随式计算、错误位置多项式计算和纠正误码步骤。
发明内容本发明需要解决的技术问题是,针对已有RS码解码器硬件复杂度高,便携性差,而无线、移动通信系统又需求低复杂度,且便携性好的RS解码器,为了克服这样一个需要矛盾的存在,就要重新提出一种方法,本发明的目的,就是提供一种里德所罗门码解码器硬件复用方法及低硬件复杂度解码装置,以降低RS解码器的硬件复杂度及良好便携性。为了实现这一目的,本发明所采用的技术方案为,一种里德所罗门码解码器硬件复用方法,其特征在于,将有限域乘法器、有限域加法器和寄存器模块复用于解码运算的伴随式计算、错误位置多项式计算和误码纠正计算的各步骤,该方法按以下步骤操作歩骤A:用有限域加法器、有限域乘法器和寄存器按照嵌套式加乘的多项式求值结构计算伴随式;歩骤B:将寄存器组织为串联移位寄存器,将伴随式存入伴随式存储器;步骤C:用有限域加法器、有限域乘法器、寄存器按照无除法博利坎普-梅西电路结构计算错误位置多项式;步骤D:用有限域乘法器、有限域加法器、寄存器按照多项式系数的矩阵乘法结构计算错误值多项式;步骤E:用有限域乘法器、有限域加法器、寄存器按照累乘多项式求值的结构计算错误位置和错误值并纠正误码。按上述实现方法所采用的解码装置,其特征在于,所述装置包括5个模块部分,它们分别是有限域加法器、有限域乘法器、寄存器、接收序列存储器和伴随式存储器,其中,所述有限域加法器用于伴随式计算中接收序列多项式求值的加法运算、无除法博利坎普-梅西算法中的加法运算、以及错误位置多项式求值和错误值多项式求值中的加法运算;所述有限域乘法器用于伴随式计算中接收序列多项式求值中的乘法运算、无除法博利坎普-梅西算法中的乘法运算、错误值多项式计算中错误位置多项式和伴随式多项式的系数的乘法运算、以及错误位置多项式求值和错误值多项式求值中的加法运算;所述寄存器用于寄存伴随式计算中的中间结果和伴随式、无除法博利坎普-梅西算法中的中间结果多项式系数和错误位置多项式系数、错误值多项式计算中的错误位置多项式系数、以及错误位置多项式和错误值多项式中错误位置多项式和错误值多项式的各项的值;所述接收序列存储器用于存储输入的接收序列中的信息位的码元;所述伴随式存储器用于存储计算出的伴随式符号。本发明所述解码器硬件资源复用方法,能够实现低硬件复杂度的RS解码器,显著降低硬件资源的消耗量,满足基于RS码编码方案的无线或移动应用系统对便携性的要求。具体的说,本发明拥有以下优点-(1)低复杂度。本发明的解码器硬件资源复用方法及其实现装置将硬件资源复用于解码运算中的伴随式计算、错误位置多项式计算、误码纠正步骤,从而能够显著降低解码的硬件复杂度。(2)通用性强。本发明的解码器硬件资源复用方法及其实现装置,适用于各种码率和参数的RS码的解码运算。图1是里德所罗门码解码器硬件资源复用方法的流程图。图2a是按照硬件资源复用方法实现的解码装置的模块连接图。图2b是按照硬件资源复用方法实现的解码装置结构图。具体实施方式为使本发明的目的、内容、和优点更加清楚,下面将结合附图对本发明实施方式作进一歩地详细描述。在参照附图之前,为了便于统一描述,我们先假设wfl,3为奇数,r为偶数,这些假设不会影响解码装置的具体结构和硬件资源复用方法。参照图l,为本发明所述的RS码解码器硬件资源复用方法,图中描述了本方法的流程歩骤。步骤A:用有限域加法器、有限域乘法器和寄存器按照嵌套式加乘的多项式求值结构计算伴随式;步骤B:将寄存器组织为串联移位寄存器,将伴随式存入伴随式存储器;步骤C:用有限域加法器、有限域乘法器、寄存器按照无除法博利坎普-梅西电路结构计算错误位置多项式;步骤D:用有限域乘法器、有限域加法器、寄存器按照多项式系数的矩阵乘法结构计算错误值多项式;步骤E:用有限域乘法器、有限域加法器、寄存器按照累乘多项式求值的结构计算错误位置和错误值并纠正误码。参照图2a,表示所述低复杂度RS解码装置的模块结构图,它包括有限域加法器(001),有限域乘法器(002),寄存器(003),接收序列存储器(004),伴随式存储器(005),以及控制单元(006)。控制单元根据本发明所述的硬件资源复用方法,配置其余模块的连接和运行方式,将它们复用与解码操作中的五个阶段,包括计算伴随式、存储伴随式、计算错误位置多项式、计算错误值多项式和纠正误码。参照图2b,表示所述低复杂度RS解码装置构成,,它按照本发明所述的硬件资源复用方法实现。本发明的解码装置由三个寄存器组T(101)、X(102)、Y(103),三个乘法器组mi(201)、m2(202)、m3(203),以及加法器,求逆查找表(502),多路开关,接收序列存储器GOl),伴随式存储器(302)以及控制逻辑等硬件资源实现。其中,每个乘法器组由(f+l)个有限域乘法器组成,每个寄存器组由(什l)个w比特寄存器组成。所有的模块和寄存器由统一的时钟信号驱动。解码装置中有8组多路开关Si,S2……S8,每个多路开关有2或3个连线端,如本图中所示,它们由控制信号控制,改变解码装置中模块的连接方式,让解码装置先后完成解码运算中五个阶段的操作1.计算伴随式按照Homer规则(9)计算伴随式;2.存储伴随式将伴随式序列存入伴随式存储器中,备后续使用;3.计算错误位置多项式按照iBM算法计算错误位置多项式;4.计算错误值多项式按照(7)式计算错误值多项式;5.纠正误码按照Chien算法确定错误位置、按照Fomey算法确定错误值,并纠正误码。8组多路开关在不同的解码阶段连接到不同的连线端,从而让解码装置在各个解码阶段完成不同功能,实现硬件资源的复用。解码器电路中多路开关的连线状态如表1所示,为了区别多路开关的不同连线端,图2b中在每个连线端上标示了不同数目的短横,例如连线端l上面有l条短横,连线端2上面有2条短横,等。表l解码装置中的多路开关连接<table>tableseeoriginaldocumentpage9</column></row><table>(其中,"-"表示连接任意连线端,"x"表示该多路开关的连线状态由控制信号决定)解码装置的按照如下过程工作当接收序列输入时,解码装置开始对接收序列进行解码操作。伴随式计算。解码装置中的寄存器组T和人以及乘法器组nn和m2首先计算伴随式。寄存器组T和X中的寄存器均初始化为0,乘法器组mi各乘法器的一个乘数固定为(,"2,'","'+1),乘法器组1112各乘法器的一个乘数固定为("'+2,"'+3,''',"2',0,0)。寄存器组X中的最后两个寄存器,以及乘法器组m2中的最后两个乘法器处于空闲状态。每一时钟周期,送入接收序列中的一个接收符号。每一时钟周期,乘法器组m!将乘数(a,^,…,"'+')与寄存器组T的输出相乘,乘积与接收符号相加,相加的结果被重新存回寄存器组T中。类似地,每一时钟周期,乘法器组m2将乘数("",",…,?,0,0)与寄存器组人的输出相乘,乘积与接收符号相加,相加的结果被重新存回寄存器组X中。这是按照Homer规则计算伴随式符号的过程,iV个时钟周期后,寄存器组T中的值为",&…A),寄存器组X中的值为(s,+,A+,,…,^一,0,0),即完成了伴随式的计算。每个接收符号被用于计算伴随式的同时,接收序列中的前《个符号也被存入接收序列存储器,供解码装置在纠错阶段使用。接收序列存储器是容量为^个符号、每个符号的宽度为m比特的随机访问存储器(RandomAccessMemory,RAM)。伴随式存储。为了将计算出来的伴随式存储到伴随式存储器中,寄存器组T与寄存器组X中的各寄存器串联起来,伴随式符号以逐个移位的方式,移入伴随式存储器中。伴随式存储器是容量为(&1)个符号、每个符号的宽度为附比特的RAM。错误位置多项式计算。在此解码阶段,解码装置按照iBM算法,计算错误位置多项式。寄存器组T存储由伴随式存储器读出的伴随式符号;寄存器组X存储iBM算法中多项式八W(x)的系数;寄存器组Y存储iBM算法中多项式rW(x)的系数。寄存器组X和寄存器组Y均初始化为(l,0,0,…,0)。伴随式符号以移位的方式移入寄存器组T。每一时钟周期,移入一个伴随式符号,并完iBM算法的一次循环。在iBM算法的过程中,多路开关S8受控于控制信号如果,+1、0且2/("£LS8连接到接线端3;否则,S8连接到接线端2。,l)个时钟周期之后,解码装置计算出错误位置多项式,寄存器组人中各寄存器的值为错误位置多项式的系数,gp(A,^,…,义,)。错误值多项式计算。在此解码阶段,解码电路将伴随式序列与错误位置多项式按照(7)式相乘,得到错误值多项式。解码装置清零寄存器组T后,重新将伴随式序列移入寄存器组T中。寄存器组^中的错误位置多项式与寄存器组T中的伴随式相乘,得到错误值多项式的系数。每一个时钟周期,解码装置移入一个伴随式符号到寄存器组T中,并在结点d(403)得出错误值多项式的一个系数,并将计算出的系数移位存入寄存器组Y中。在/时钟周期后,寄存器组Y的各个寄存器的值为d,,,—2,…,。,0)。误码纠正。在此解码阶段,解码装置按照CWen算法确定错误位置,按照Fomey算法确定错误值,并进行纠错。经过此前的解码阶段的计算,解码装置将错误位置多项式存放在寄存器组中,错误值多项式存放在寄存器组Y中。每一时钟周期,乘法器组rn,将(U,"2,"2,"4,"4'","'—2,a'—、a')与寄存器组人各寄存器的输出相乘,并将乘积存回到寄存器组Y中。每一时钟周期,乘法器组m3将("","'—"…,",l,0)与寄存器组y各寄存器的输出相乘,并将乘积存回到寄存器组Y中。在第z'时钟周期,寄存器组人的值为(H^("')2,/l3("')2,…,U"'广2,A("')'),其中结点4(402)的值为寄存器组X奇数位寄存器的输出之和《=八'("—w,,而结点4(401)的值为寄存器组人偶数位寄存器的输出之和,即错误位置多项式的偶数项之和。在第/时钟周期,寄存器组Y的值为(c^(a')",fiV2(a'广2,…,各寄存器的输出之和为Q(a—(w—'))。寄存器X(501)初始化为1,每个时钟周期将X的输出与a相乘一次,在第/时钟周期,X寄存器的值为ot'=a-(A"'〕。错误位置多项式的值由A(a-^W卜X《+《计算得出。按照Fomey算法,错误值1^,由错误值多项式的值Q(a—(w—'"除以A得到。解码电路,每一个时钟周期从接收序列存储器读出一个接收符号-,,并计算A("-("),如果A("—(i'))=0,解码器输出々+r狗;否则解码器输出下面给出一些具体数据进一步说明本发明的有益效果。表2给出了RS(255,207,8)解码器分别采用传统结构和本发明的硬件资源复用方法实现时占用的硬件资源和最高时钟频率。传统结构的解码器分别用不同的硬件模块实现伴随式计算、错误位置多项式计算、纠错等步骤。硬件复杂度以AlteraStratixII系列的FPGA(FieldProgrammableGateArray)的逻辑单元ALUT(AdaptiveLook-UpTable)和存储资源MemoryBit的占用数量表示。相比传统结构的RS解码器,本发明的硬件资源复用方法将硬件资源消耗量降低为55%,并且电路的运行速度不会受到严重影响。同时,相对文献中现有的RS解码器或商用IP核,本发明的解码器硬件资源复用方法能够显著降低硬件资源的消耗量。表2RS(255,207,8)解码器的实现结果比较<table>tableseeoriginaldocumentpage11</column></row><table>上面对本发明的具体实施例进行了详细说明,但本发明并不限制于上述实施例。在本发明权利要求的精神和原则之内,所作的任何修改、等同替换、和改进等,均应包含在本发明的保护范围之内。权利要求1.一种里德所罗门码解码器硬件复用方法,其特征在于,将有限域乘法器、有限域加法器和寄存器等模块复用于解码运算的伴随式计算、错误位置多项式计算和误码纠正计算的各等步骤。,该方法所述复用方法在解码过程中具体包括按以下步骤操作步骤A用有限域加法器、有限域乘法器和寄存器按照嵌套式加乘的多项式求值结构计算伴随式;步骤B将寄存器组织为串联移位寄存器,将伴随式存入伴随式存储器;步骤C用有限域加法器、有限域乘法器、寄存器按照无除法博利坎普-梅西电路结构计算错误位置多项式;步骤D用有限域乘法器、有限域加法器、寄存器按照多项式系数的矩阵乘法结构计算错误值多项式;步骤E用有限域乘法器、有限域加法器、寄存器按照累乘多项式求值的结构计算错误位置和错误值并纠正误码。2.如权利要求1所述的里德所罗门码解码器硬件复用方法所采用的低复杂度解码装置,其特征在于,所述解码装置包括5个模块部分,它们分别是有限域加法器、有限域乘法器、寄存器、接收序列存储器和伴随式存储器。3.根据权利要求2所述的里德所罗门码解码器硬件复用方法所釆用的低硬件复杂度解码装置,其特征在于,所述有限域加法器用于伴随式计算中接收序列多项式求值的加法运算、无除法博利坎普-梅西算法中的加法运算、以及错误位置多项式求值和错误值多项式求值中的加法运算;。4.根据权利要求2所述的里德所罗门码解码器硬件复用方法所采用的低硬件复杂度解码装置,其特征在于,所述有限域乘法器用于伴随式计算中接收序列多项式求值中的乘法运算、无除法博利坎普-梅西算法中的乘法运算、错误值多项式计算中错误位置多项式和伴随式多项式的系数的乘法运算、以及错误位置多项式求值和错误值多项式求值中的加法运算;。5.根据权利要求2所述的里德所罗门码解码器硬件复用方法所采用的低硬件复杂度解码装置,其特征在于,所述寄存器用于寄存伴随式计算中的中间结果和伴随式、无除法博利坎普-梅西算法中的中间结果多项式系数和错误位置多项式系数、错误值多项式计算中的错误位置多项式系数、以及错误位置多项式和错误值多项式中错误位置多项式和错误值多项式的各项的值;6.根据权利要求2所述的里德所罗门码解码器硬件复用方法所采用的低硬件复杂度解码装置,其特征在于,所述接收序列存储器用于存储输入的接收序列中的信息位的码元;。7.根据权利要求2所述的里德所罗门码解码器硬件复用方法所采用的低硬件复杂度解码装置,其特征在于,所述伴随式存储器用于存储计算出的伴随式符号。全文摘要里德所罗门码解码器硬件复用方法及其低硬件复杂度解码装置,属于数字信息传输
技术领域
。所述硬件资源复用方法复用有限域加法器、有限域乘法器和寄存器完成里德所罗门码解码运算的伴随式计算、伴随式存储、错误位置多项式计算、错误值多项式计算和误码纠正,通用于各种码率和参数的里德所罗门码解码器。所述解码装置包括有限域加法器、有限域乘法器、寄存器、接收序列存储器和伴随式存储器等模块,按照所述复用方法实现里德所罗门码解码运算。本发明所公开的复用方法及解码装置能够显著降低里德所罗门码解码的硬件复杂度。文档编号H03M13/00GK101277119SQ20081010666公开日2008年10月1日申请日期2008年5月14日优先权日2008年5月14日发明者健宋,彧张,彭克武,杨知行,南江申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1