一种解码器转让专利

申请号 : CN200810186101.7

文献号 : CN101425875B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 唐杰

申请人 : 炬力集成电路设计有限公司

摘要 :

本发明涉及解码纠错领域,尤其涉及可对传输数据的随机错误进行纠错的具有多种纠错能力的解码器。该解码器包括复合错误位置多项式计算装置,其具有多种纠错能力;所述计算装置的选择信号输入端用以选择当前纠错能力;以及所述计算装置包括的伴随式存储单元、错误位置多项式存储单元、辅助多项式存储单元中都包括资源选择逻辑子单元用以根据输入的选择信号选通相应的计算资源。由于资源选择逻辑子单元可以对单元中的计算资源进行相应选通,使得计算装置在不同纠错能力要求时选通相应的计算资源参与计算,并且装置使用的计算资源仅等于纠错能力中最大纠错能力的计算资源,从而实现了一种既节约硬件资源又具有多种纠错能力的解码器。

权利要求 :

1.一种解码器,其特征在于,所述解码器可对传输数据的随机错误进行纠错,且具有纠错能力a和纠错能力b,所述a和b为可纠正所述传输数据的随机错误的比特数,所述a和b均为自然数,且a大于b;所述解码器包括复合错误位置多项式计算装置,所述复合错误位置多项式计算装置包括选择信号的输入端、辅助多项式存储单元、伴随式存储单元、错误位置多项式存储单元;

所述选择信号的输入端用于输入选择所述解码器当前纠错能力为a或者b的信号;

所述辅助多项式存储单元进一步包括第一资源选择逻辑子单元以及a个寄存器τ0~τa-1,所述第一资源选择逻辑子单元的输入端与所述选择信号的输入端相连,所述第一资源选择逻辑子单元在选择信号选择当前纠错能力为a或者b时,分别选通τ0~τa-1或者τ0~τb-1参与计算;

所述错误位置多项式存储单元进一步包括第二资源选择逻辑子单元以及a+1个寄存器σ0~σa,所述第二资源选择逻辑子单元的输入端与所述选择信号输入端相连,所述第二资源选择逻辑子单元在选择信号选择当前纠错能力为a或者b时,分别选通σ0~σa或者σ0~σb参与计算;

所述伴随式存储单元进一步包括第三资源选择逻辑子单元以及2a个寄存器S1~S2a,所述第三资源选择逻辑子单元的输入端与所述选择信号的输入端相连,所述第三资源选择逻辑子单元在选择信号选择当前纠错能力为a或者b时,分别选通S1~S2a或者S1~S2b参与计算。

2.如权利要求1所述的解码器,其特征在于,所述复合错误位置多项式计算装置进一步包括:迭代次数计数器,所述迭代次数计数器进一步包括第四资源选择逻辑子单元以及a+1个寄存器P0~Pa,所述第四资源选择逻辑子单元的输入端与所述选择信号输入端相 连,所述第四资源选择逻辑子单元根据输入的选择信号输出相应的迭代周期信号作为所述迭代次数计数器的输出。

3.如权利要求1所述的解码器,其特征在于,所述第一资源选择逻辑子单元具体由多路选择器构成。

4.如权利要求2所述的解码器,其特征在于,所述第一资源选择逻辑子单元具体由多路选择器构成。

5.如权利要求1所述的解码器,其特征在于,所述第二资源选择逻辑子单元具体由多路选择器构成。

6.如权利要求2所述的解码器,其特征在于,所述第二资源选择逻辑子单元具体由多路选择器构成。

7.如权利要求1所述的解码器,其特征在于,所述第三资源选择逻辑子单元具体由多路选择器构成。

8.如权利要求2所述的解码器,其特征在于,所述第三资源选择逻辑子单元具体由多路选择器构成。

9.如权利要求2所述的解码器,其特征在于,所述第四资源选择逻辑子单元具体由多路选择器构成。

10.如权利要求1-9任一所述的解码器,其特征在于,所述解码器还具有纠错能力c,所述c为自然数,且a大于c;所述选择信号还用以选择所述解码器的当前纠错能力为c;

所述辅助多项式存储单元的第一资源选择逻辑子单元还用于在所述选择信号选择当前纠错能力为c时选通τ0~τc-1参与计算;

所述错误位置多项式存储单元的第二资源选择逻辑子单元还用于在所述选择信号选择当前纠错能力为c时选通σ0~σc参与计算;

所述伴随式存储单元的第三资源选择逻辑子单元还用于在所述选择信号选择当前纠错能力为c时选通S1~S2c参与计算。

11.如权利要求1或2所述的解码器,其特征在于,所述a等于16,所 述b等于12。

12.如权利要求10所述的解码器,其特征在于,所述a等于16,所述b等于12,所述c等于8。

13.如权利要求1-9任一所述的解码器,其特征在于,所述解码器还具有纠错能力c1~cn,所述n为大于1的整数,c1~cn为小于a的自然数;

所述选择信号的输入端还用于选择所述解码器当前的纠错能力为c1~cn其中之一;

所述辅助多项式存储单元的第一资源选择逻辑子单元还用于在选择信号选择当前的纠错能力为cj时选通 参与计算;

所述错误位置多项式存储单元的第二资源选择逻辑子单元还用于在选择信号选择当前的纠错能力为cj时选通 参与计算;

所述伴随式存储单元的第三资源选择逻辑子单元还用于在选择信号选择当前的纠错能力为cj时选通 参与计算;

所述j为大于等于1、小于等于n的整数。

说明书 :

一种解码器

技术领域

[0001] 本发明涉及解码纠错领域,尤其涉及可对传输数据的随机错误进行纠错的具有多种纠错能力的解码器。

背景技术

[0002] 目前在数字通信及存储系统中,BCH/RS码被广泛使用(BCH是由BCH码的三个发明人的名字:霍昆格姆Hocquenghem、博斯Bose、雷-查德胡里Ray-Chaudhuri的首字母组成,RS也是由RS码的两个发明人的名字:里德Reed和索罗蒙Solomon的首字母组成),用来实现对数据传输和数据存储过程中的错误检测和纠正。图1是RS解码器的基本架构。如果是针对BCH码进行解码,则BCH解码器与图1所示的RS解码器区别在于BCH解码器不包含图1中的错误值计算部分。
[0003] 在解码器中错误位置多项式计算装置的错误位置多项式计算方法是根据伯利坎普(Berlekamp)和梅西(Massey)两人提出的BM迭代算法得到的。BM迭代算法的核心思想是给定一个初始的错误位置多项式,然后根据伴随式和当前的错误位置多项式计算偏差,如果偏差为0,则继续沿用此错误位置多项式,如果偏差不为0,则修正此错误位置多项式,其中,用来修正错误位置多项式的修正多项式由伴随式和错误位置多项式计算得到。
[0004] 为了降低硬件资源消耗,现有技术中采用了一种无逆的BM迭代算法,其迭代算法如下:
[0005] 1、给定下列参数:K表示迭代次数;L表示错误位置多项式最高次数;δ表示存储的差项值;Δ表示迭代差项;τ(x)表示辅助多项式;σ(x)表示错误位置多项式。假定最大错误个数为t,伴随式计算所得伴随因子为S1,S2,...,S2t。
[0006] 2、设定初始值:L(-1)=0,τ(-1)(x)=1,σ(-1)(x)=1,δ(-1)=1,Δ(0)=S1。
[0007] 3、在0≤K≤2t-1的范围内计算:k (k) i
[0008] 式中σi 表示σ (x)的x 系(k)
数,σ (x)的最高次为vi。
[0009] 4、如果Δ(k)=0或者2L(k)>k,则L(k)=L(k-1),τ(k)(x)=xτ(k-1)(x),δ(k)=(k-1) (k) (k-1) (k) (k) (k) (k)δ ;否则,L =k+1-L ,τ (x)=σ (x),δ =Δ 。
[0010] 5、如果K=2t-1,停止迭代,否则,K=K+1,跳转到第3步重新迭代。
[0011] 图2为实现上述无逆BM迭代算法的错误位置多项式计算装置的电路框图,而图3a为现有技术中一种串行结构的纠错能力t=8位的错误位置多项式计算装置的具体电路。
[0012] 在图3a计算装置中,寄存器S1,S2,...,S16组成图2所示框图中的伴随式存储单元;
[0013] 寄存器σ0,σ1,...,σ8组成图2所示框图中的错误位置多项式存储单元;
[0014] 寄存器τ0,τ1,...,τ7组成图2所示框图中的辅助多项式存储单元;
[0015] 寄存器Δ,Δr,Δx组成图2所示框图中差项存储单元;
[0016] 加法器Add2和乘法器Mult3组成图2所示框图中乘加器1;
[0017] 加法器Add1和乘法器Mult1、Mult2组成图2所示框图中乘加器2;
[0018] 寄存器K和P0,P1,...,P8组成图2所示框图中迭代次数计数器,该迭代次数计数器通过P0-P8的计数,从而输出迭代周期信号P8。迭代周期信号P8的时间长度为计算时钟周期长度的9倍;在每个迭代周期信号有效时,更新差项存储单元和错误位置多项式次数。
[0019] 寄存器L构成错误位置多项式次数计数器;而控制条件ctl即为迭代修正条件,其通过控制迭代修正单元中的多路选择器M1,M2,M3,M4实现迭代修正。
[0020] 图3b则示出现有技术中一种纠错能力t=16位的错误位置多项式计算装置的具体电路。
[0021] 在目前的数字通信和信息存储系统中,有对控制器的RS/BCH码具有多种纠错能力的要求。例如,在闪存控制器中,根据闪存的制造工艺和冗余区(spare area)结构的不同,要求采用不同纠错能力的纠错码,那么在闪存控制器的设计中就要设计一种具有多种纠错能力的解码器,以最大限度的适应各类闪存。如果将具有不同纠错能力的解码器简单集成到一个控制器当中(例如将上述图3a和图3b所示的电路集成到一个控制器以实现纠错能力为8和16的解码器),势必使硬件资源的消耗更大,从而导致控制器成本的增加。

发明内容

[0022] 本发明实施例提供了一种解码器,用以提供一种节约硬件资源且具有多种纠错能力的解码器。
[0023] 一种解码器,所述解码器可对传输数据的随机错误进行纠错,且具有纠错能力a和纠错能力b,所述a和b为可纠正所述传输数据的随机错误的位(比特)数,所述a和b均为自然数,且a大于b;所述解码器包括复合错误位置多项式计算装置,所述复合错误位置多项式计算装置包括选择信号的输入端、辅助多项式存储单元、伴随式存储单元、错误位置多项式存储单元;
[0024] 所述选择信号的输入端用于输入选择所述解码器当前纠错能力为a或者b的信号;
[0025] 所述辅助多项式存储单元进一步包括第一资源选择逻辑子单元以及a个寄存器τ0~τa-1,所述第一资源选择逻辑子单元的输入端与所述选择信号的输入端相连,所述第一资源选择逻辑子单元在选择信号选择当前纠错能力为a或者b时,分别选通τ0~τa-1或者τ0~τb-1参与计算;
[0026] 所述错误位置多项式存储单元进一步包括第二资源选择逻辑子单元以及a+1个寄存器σ0~σa,所述第二资源选择逻辑子单元的输入端与所述选择信号输入端相连,所述第二资源选择逻辑子单元在选择信号选择当前纠错能力为a或者b时,分别选通σ0~σa或者σ0~σb参与计算;
[0027] 所述伴随式存储单元进一步包括第三资源选择逻辑子单元以及2a个寄存器S1~S2a,所述第三资源选择逻辑子单元的输入端与所述选择信号的输入端相连,所述第三资源选择逻辑子单元在选择信号选择当前纠错能力为a或者b时,分别选通S1~S2a或者S1~S2b参与计算。
[0028] 本发明还提供了一种解码器,其特征为所述解码器可对传输数据随机错误进行纠错,且具有纠错能力a和纠错能力b,所述a和b为可纠正所述传输数据的随机错误的位(比特)数,所述a和b均为自然数,且a大于b,所述解码器还具有纠错能力c1~cn,所述n为大于1的整数,所述c1~cn为可纠正所述传输数据的随机错误的位(比特)数,c1~cn为小于a的自然数;
[0029] 所述解码器包括复合错误位置多项式计算装置,所述计算装置包括选择信号的输入端、辅助多项式存储单元、伴随式存储单元、错误位置多项式存储单元;
[0030] 所述选择信号输入端还用以选择所述解码器当前的纠错能力为c1~cn其中之一;
[0031] 所述辅助多项式存储单元的第一资源选择逻辑子单元还用于在选择信号选择当前的纠错能力为cj时选通 参与计算;
[0032] 所述错误位置多项式存储单元的第二资源选择逻辑子单元还用于在选择信号选择当前的纠错能力为cj时选通 参与计算;
[0033] 所述伴随式存储单元的第三资源选择逻辑子单元还用于在选择信号选择当前的纠错能力为cj时选通 参与计算;
[0034] 所述j为大于等于1、小于等于n的整数。
[0035] 本发明实施例的复合错误位置多项式计算装置中由于伴随式存储单元、错误位置多项式存储单元、辅助多项式存储单元中具有可以根据输入的纠错能力选择信号对单元中的计算资源进行相应选通的资源选择逻辑子单元,使得复合错误位置多项式计算装置可以在不同纠错能力要求时选通相应的计算资源参与计算,从而实现多种纠错能力的错误位置多项式计算,并且占用的计算资源仅等于实现的纠错能力中最大纠错能力的计算资源,从而实现了一种节省硬件资源且具有对传输数据的随机错误进行纠错的多种纠错能力的解码器。

附图说明

[0036] 图1为现有技术的RS解码器的结构框图;
[0037] 图2为现有技术的错误位置多项式计算装置结构框图;
[0038] 图3a为现有技术的串行结构的纠错能力为8位时的错误位置多项式计算装置电路图;
[0039] 图3b为现有技术的串行结构的纠错能力为16位时的错误位置多项式计算装置电路图;
[0040] 图4为本发明实施例的串行结构的纠错能力为12位和16位时的解码器框图;
[0041] 图5a、5b为本发明实施例的串行结构的纠错能力为12位和16位时的复合错误位置多项式计算装置电路图;
[0042] 图6a、6b为本发明实施例的并行结构的纠错能力为12位和16位时的复合错误位置多项式计算装置电路图;
[0043] 图7a为本发明实施例的串行结构的纠错能力为8位、12位和16时的复合错误位置多项式计算装置电路图;
[0044] 图7b、7c为本发明实施例的并行结构的纠错能力为8位、12位和16位时的复合错误位置多项式计算装置电路图。

具体实施方式

[0045] 本发明的发明人考虑到可对传输数据进行纠错的具有不同纠错能力的BCH/RS解码器需要具有不同纠错能力的复合错误位置多项式计算装置。也就是说,设计具有不同纠错能力的复合错误位置多项式计算装置是设计不同纠错能力的解码器的关键点。
[0046] 而各种不同纠错能力的解码器的复合错误位置多项式计算装置之间的差别主要在于,根据纠错能力的不同采用不同的计算资源来进行计算,而计算的方法则各计算装置都是采用相同的算法(例如,上述现有技术中介绍的算法)来实现的。
[0047] 例如,在纠错能力为8位时,复合错误位置多项式计算装置中:伴随式存储单元包括16个寄存器:S1,S2,...,S16;错误位置多项式存储单元包括9个寄存器:σ0,σ1,...,σ8;辅助多项式存储单元包括8个寄存器:τ0,τ1,...,τ7;迭代次数计数器包括9个寄存器:P0,P1,...,P8。
[0048] 而在纠错能力为16位时,复合错误位置多项式计算装置中:伴随式存储单元包括32个寄存器:S1,S2,...,S32;错误位置多项式存储单元包括17个寄存器:σ0,σ1,...,σ16;
辅助多项式存储单元包括16个寄存器:τ0,τ1,...,τ15;迭代次数计数器包括17个寄存器:P0,P1,...,P16。
[0049] 由上述可以看出,不同纠错能力的解码器的复合错误位置多项式计算装置中主要是参与运算的资源改变了:纠错能力为16位时复合错误位置多项式计算装置的伴随式存储单元的寄存器为32个,而纠错能力为8位时复合错误位置多项式计算装置的伴随式存储单元的寄存器为16个;纠错能力为16位时复合错误位置多项式计算装置的错误位置多项式存储单元的寄存器为17个,而纠错能力为8时复合错误位置多项式计算装置的错误位置多项式存储单元的寄存器为9个;纠错能力为16位时复合错误位置多项式计算装置的辅助多项式存储单元的寄存器为16个,而纠错能力为8位时复合错误位置多项式计算装置的辅助多项式存储单元的寄存器为8个,而进行运算的一些单元,例如乘加器1、乘加器2、差项存储单元的结构则没有什么改变。因此,如果实现一种电路根据选择信号来选择使用不同的参与运算的资源,那么就可以实现多种不同的纠错能力的解码器的复合错误位置多项式计算装置。
[0050] 本发明实施例提供的一种串行结构的复合错误位置多项式计算装置的框图,如图4所示,可以实现纠错能力为16位和12位的复合错误位置多项式计算装置,相比于现有技术的单个纠错能力的复合错误位置多项式计算装置增加了输入选择信号的输入端。从输入选择信号的输入端输入的选择信号有Sel16和Sel12。当输入的选择信号Sel16有效时,则该复合错误位置多项式计算装置实现的是解码器纠错能力为16位时的错误位置多项式计算;当输入的选择信号Sel12有效时,则该复合错误位置多项式计算装置实现的是解码器纠错能力为12位时的错误位置多项式计算。
[0051] 纠错能力包括16位和12位时的复合错误位置多项式计算装置的具体电路,如图5a所示。
[0052] 图5a所示计算装置的迭代次数计数器的输入端与输入选择信号的输入端相连,迭代次数计数器根据输入的选择信号输出相应的迭代周期信号。图5a所示计算装置的迭代次数计数器包括17个寄存器:P0,P1,...,P16以及资源选择逻辑子单元N4。资源选择逻辑子单元N4的输入与计算装置输入选择信号的输入端相连,资源选择逻辑子单元N4根据输入的选择信号选择P0,P1,...,P16中相应的寄存器参与计算。例如,当Sel16有效时,表示复合错误位置多项式计算装置当前纠错能力选择为16位,则资源选择逻辑子单元N4选通P0~P16,输出迭代周期信号Px具体为P16,即输出的迭代周期信号的周期为计算时钟周期的17倍;当Sel12有效时,表示复合错误位置多项式计算装置当前纠错能力选择为12位,则资源选择逻辑子单元N4选通P0~P12,输出迭代周期信号Px具体为P12,即输出的迭代周期信号的周期为计算时钟周期的13倍。资源选择逻辑子单元N4的具体电路本领域技术人员可以根据其实现的选择功能采用多种逻辑电路搭建,比如可以采用多路选择器M8来实现资源选择逻辑子单元N4的功能(如图5b所示)或者采用控制开关、三态门或者其它逻辑电路来实现资源选择功能。如何在迭代次数计数器中具体连接多路选择器M8来实现P0~P12、或者P0~P16的选通为本领域技术人员所熟知,此处不再赘述。
[0053] 而复合错误位置多项式计算装置中的差项存储单元、乘加器1、乘加器2、错误位置多项式次数计数器的结构相比于现有技术都没有改变,根据迭代次数计数器输出的迭代周期信号Px进行计算。
[0054] 图5a所示计算装置的辅助多项式存储单元包括16个寄存器:τ0,τ1,...,τ15,以及资源选择逻辑子单元N1。辅助多项式存储单元的输入端与所述选择信号输入端相连,辅助多项式存储单元根据输入的选择信号选通τ0~τ11、或者τ0~τ15参与计算。具体的,辅助多项式存储单元的资源选择逻辑子单元N1的输入端与所述选择信号输入端相连,资源选择逻辑子单元N1根据输入的选择信号选通τ0~τ11、或者τ0~τ15参与计算。比如,若Sel16信号有效,则资源选择逻辑子单元N1接通τ15的输出到多路选择器M2的输入,从而选通τ0~τ15参与计算;若Sel12有效,则资源选择逻辑子单元N1接通τ11的输出到多路选择器M2的输入,选通τ0~τ11参与计算。资源选择逻辑子单元N1的具体电路本领域技术人员可以根据其实现的选择功能采用多种逻辑电路搭建,比如可以采用多路选择器M5来实现资源选择逻辑子单元N1的功能(如图5b所示),或者采用控制开关、三态门或者其它逻辑电路来实现资源选择功能。如何在辅助多项式存储单元中具体连接多路选择器M5来实现τ0~τ11、或者τ0~τ15的选通为本领域技术人员所熟知,此处不再赘述。
[0055] 类似的,错误位置多项式存储单元包括17个寄存器:σ0,σ1,...,σ16,以及资源选择逻辑子单元N2。错误位置多项式存储单元的输入端与所述选择信号输入端相连,错误位置多项式存储单元根据输入的选择信号选通σ0~σ12、或者σ0~σ16参与计算。具体的,辅助多项式存储单元的资源选择逻辑子单元N2的输入端与所述选择信号输入端相连,资源选择逻辑子单元N2根据输入的选择信号选通σ0~σ12、或者σ0~σ16参与计算。比如,若Sel16信号有效,则资源选择逻辑子单元N2接通σ16的输出到多路选择器M2的输入,从而选通σ0~σ16参与计算;若Sel12有效,则资源选择逻辑子单元N2接通σ12的输出到多路选择器M2的输入,从而选通σ0~σ12参与计算。资源选择逻辑子单元N2的具体电路本领域技术人员可以根据其实现的选择功能采用多种逻辑电路搭建,比如可以采用多路选择器M6来实现资源选择逻辑子单元N2的功能(如图5b所示),或者采用控制开关、三态门或者其它逻辑电路来实现资源选择功能。如何在错误位置多项式存储单元中具体连接多路选择器M6来实现σ0~σ12、或者σ0~σ16的选通为本领域技术人员所熟知,此处不再赘述。
[0056] 图5a所示计算装置的伴随式存储单元包括32个寄存器S1,S2,...,S32,以及资源选择逻辑子单元N3。伴随式存储单元的输入端与所述选择信号输入端相连,错误位置多项式存储单元根据输入的选择信号选通S1~S32、或者S1~S24参与计算。具体的,辅助多项式存储单元的资源选择逻辑子单元N3的输入端与所述选择信号输入端相连,资源选择逻辑子单元N3根据输入的选择信号选通S1~S32、或者S1~S24参与计算。资源选择逻辑子单元N3的具体电路本领域技术人员可以根据其实现的选择功能采用多种逻辑电路搭建,比如可以采用多路选择器M7来实现资源选择逻辑子单元N3的功能(如图5b所示),或者采用控制开关、三态门或者其它逻辑电路来实现资源选择功能。由于伴随式存储单元的寄存器之间的连接方式相比于错误位置多项式存储单元以及辅助多项式存储单元有所不同,因此,多路选择器M7的连接也有所不同。具体的,多路选择器M7输入的选择信号中若Sel12信号有效,则多路选择器M7将S24的输入与S1的输出接通,从而选通S1~S24参与计算,而S25~S32由于S25的输出没有与S24的输入接通则不再参与计算;若Sel12信号无效,则多路选择器M7将S24的输入与S25的输出接通,从而允许S24之后的寄存器参与计算,也就是选通了S1~S32参与计算。如何在伴随式存储单元中具体连接多路选择器M7来实现S1~S32、或者S1~S24的选通,本领域技术人员可以根据伴随式存储单元中的寄存器的连接特点利用多路选择器M7来实现,此处不再赘述。
[0057] 虽然,图5a所示计算装置中的伴随式存储单元、错误位置多项式存储单元、辅助多项式存储单元、迭代次数计数器的内部结构都与现有技术的不一样了,但这些单元和计数器与其它单元,如差项存储单元、乘加器1、乘加器2、错误位置多项式次数计数器之间的连接关系仍与现有技术的计算装置中的一样。也就是说,本发明实施例主要是根据输入的选择信号对伴随式存储单元、错误位置多项式存储单元、辅助多项式存储单元、迭代次数计数器内的计算资源进行相应的选取,从而实现多种纠错能力的错误位置多项式计算。
[0058] 根据上述的纠错能力为16位和12位时的复合错误位置多项式计算装置,可以看出,将较小纠错能力的电路融合到较大纠错能力的电路中,可以实现资源的重复利用,而不必配备两套纠错能力的电路资源,从而在实现多种不同纠错能力的解码器的同时,还节省了硬件资源。
[0059] 不失一般性,对于对传输数据的随机错误进行纠错的多种纠错能力的解码器具有纠错能力a和纠错能力b,该解码器包括复合错误位置多项式计算装置,其中a和b为可纠正所述传输数据的随机错误的位(比特)数,a和b为自然数,且a大于b。该复合错误位置多项式计算装置的输入端包括用以输入选择信号的输入端,所述选择信号用以选择所述复合错误位置多项式计算装置当前纠错能力为a、或者b。
[0060] 复合错误位置多项式计算装置中的辅助多项式存储单元包括a个寄存器τ0~τa-1以及第一资源选择逻辑子单元,第一资源选择逻辑子单元的输入端与所述选择信号输入端相连,所述第一资源选择逻辑子单元根据输入的选择信号选择当前纠错能力为a、或者b,分别选通τ0~τa-1、或者τ0~τb-1参与计算。例如,第一资源选择逻辑子单元可以包括多路选择器,第一资源选择逻辑子单元的多路选择器的输入端与所述选择信号输入端相连,其用于根据输入的选择信号选通τ0~τb-1、或者τ0~τa-1参与计算。
[0061] 复合错误位置多项式计算装置中的错误位置多项式存储单元包括a+1个寄存器σ0~σa以及第二资源选择逻辑子单元,第二资源选择逻辑子单元的输入端与所述选择信号输入端相连,所述第二资源选择逻辑子单元根据所述选择信号选择当前纠错能力为a、或者b,分别选通σ0~σa、或者σ0~σb参与计算。例如,第二资源选择逻辑子单元可以包括多路选择器,第二资源选择逻辑子单元的多路选择器的输入端与所述选择信号输入端相连,其用于根据输入的选择信号选通σ0~σb、或者σ0~σa参与计算。
[0062] 复合错误位置多项式计算装置中的伴随式存储单元包括2a个寄存器S1~S2a以及第三资源选择逻辑子单元,第三资源选择逻辑子单元的输入端与所述选择信号输入端相连,所述第三资源选择逻辑子单元根据所述选择信号选择当前纠错能力为a、或者b,分别选通S1~S2a、或者S1~S2b参与计算。例如,所述第三资源选择逻辑子单元可以包括多路选择器,第三资源选择逻辑子单元的多路选择器的输入端与所述选择信号输入端相连,其用于根据输入的选择信号选通S1~S2b、或者S1~S2a参与计算。
[0063] 若该复合错误位置多项式计算装置不是完全并行结构电路的计算装置,则复合错误位置多项式计算装置中的迭代次数计数器包括a+1个寄存器P0~Pa以及第四资源选择逻辑子单元,第四资源选择逻辑子单元的输入端与所述选择信号输入端相连,第四资源选择逻辑子单元根据所述选择信号输出相应的迭代周期信号。例如,当选择信号为选择所述解码器当前纠错能力为a时,则第四资源选择逻辑子单元选通寄存器P0~Pa进行计数,输出周期等于计算时钟周期长度a+1倍的迭代周期信号;当选择信号为选择所述解码器当前纠错能力为b时,则第四资源选择逻辑子单元选通寄存器P0~Pb进行计数,输出周期等于计算时钟周期长度b+1倍的迭代周期信号。第四资源选择逻辑子单元具体可以包括多路选择器,所述第四资源选择逻辑子单元中的多路选择器,其输入端与所述选择信号输入端相连,用于根据输入的选择信号输出相应的迭代周期信号。
[0064] 复合错误位置多项式计算装置中的差项存储单元、乘加器1、乘加器2、错误位置多项式次数计数器的结构相比于现有技术没有改变,根据迭代次数计数器输出的迭代周期信号进行计算。
[0065] 这里需要指出的是,复合错误位置多项式计算装置的实现既可以通过串行电路来实现,也可以通过并行电路来实现。如图3a、3b、4b所示的复合错误位置多项式计算装置都为通过串行电路实现的。而通过并行电路实现的计算装置虽然形式上与通过串行电路实现的计算装置有差异,但其运算原理都相同,都是采用如现有技术中所介绍的原理进行计算。因此,对于通过并行电路实现的计算装置,也可以运用本发明实施例的方法将较小纠错能力的电路融合到较大纠错能力的电路中,从而实现节约成本的多纠错能力的电路。如图6a和图6b所示电路均为具有纠错能力的12位和16位的通过并行电路实现的复合错误位置多项式计算装置(即并行结构的复合错误位置多项式计算装置)。可以看出图6a中的复合错误位置多项式计算装置与图5b中的复合错误位置多项式计算装置的差别主要在于,图6a中的复合错误位置多项式计算装置用Mult3组替代了图5b中的Mult3,图6a中的复合错误位置多项式计算装置的差项存储单元中没有Δx寄存器。对于图6b所示的完全并行结构电路的计算装置,由于其计算都是通过并行资源进行计算,不必在电路中再引入迭代周期信号Px进行计算,因此,迭代次数计数器中仅包括寄存器K,不必再通过资源选择逻辑子单元来进行计算资源的选择。此外,图6b中的复合错误位置多项式计算装置与图5b中的复合错误位置多项式计算装置的差别还在于,图6b中的复合错误位置多项式计算装置用Mult1组替代了图5b中的Mult1、用Mult2组替代了图5b中的Mult2、用Mult3组替代了图5b中的Mult3、用Add1组替代了图5b中的Add1、用M2组替代了图5b中的M2。这里还需要指出,在图6b所示的复合错误位置多项式计算装置中的辅助多项式存储单元、错误位置多项式存储单元、伴随式存储单元中采用了多个多路选择器来组成资源选择逻辑子单元,例如辅助多项式存储单元中的M5组、错误位置多项式存储单元中的M6组都包括多个多路选择器用以根据输入的选择信号实现对应计算资源的选通,从而完成资源选择的功能。在实际应用中,本领域技术人员也可采用单个具有多路选择开关的器件、或者其它的逻辑电路来达到同样的资源选择功能,此处就不再一一列举。
[0066] 因此,图6a以及图6b所示的基于并行电路的复合错误位置多项式计算装置与图5b中的基于串行电路的复合错误位置多项式计算装置相类似,是对于复合错误位置多项式计算装置中的辅助多项式存储单元、错误位置多项式存储单元、伴随式存储单元(或者还包括迭代次数计数器)中的部分或者全部计算资源的进行选通,从而达到实现节约成本的多纠错能力的电路的目的。图6a、6b中的复合错误位置多项式计算装置的具体连接方法,此处不再进行赘述,本领域技术人员根据本发明实施例公开的内容可以针对各种不同的复合错误位置多项式计算装置(例如串行的、并行的或者其它实现方式的计算装置)采用本发明实施例的原理轻而易举的实现节约成本的多纠错能力的电路。
[0067] 进一步,在复合错误位置多项式计算装置中根据上述原理还可以在上述具有纠错能力a和纠错能力b的解码器中增加纠错能力c。只要c小于a,那么依然可以利用复合错误位置多项式计算装置中实现最大纠错能力a的计算资源中的一部分来实现纠错能力c。
[0068] 具体的,计算装置中的辅助多项式存储单元的第一资源选择逻辑子单元还可以根据输入的选择信号或者选通τ0~τc-1参与计算。例如,当选择信号为选择所述解码器当前纠错能力为c时,则选通τ0~τc-1参与计算。例如,第一资源选择逻辑子单元的多路选择器还用于根据输入的选择信号或者选通τ0~τc-1参与计算。
[0069] 计算装置中的错误位置多项式存储单元的第二资源选择逻辑子单元还可以根据所述选择信号或者选通σ0~σc参与计算。例如,当选择信号为选择所述解码器当前纠错能力为c时,则选通σ0~σc参与计算。例如,第二资源选择逻辑子单元的多路选择器还用于根据输入的选择信号或者选通σ0~σc参与计算。
[0070] 计算装置中的伴随式存储单元的第三资源选择逻辑子单元还可以根据所述选择信号或者选通S1~S2c参与计算。例如,第三资源选择逻辑子单元包括的多路选择器,其输入端与所述选择信号输入端相连,其用于根据输入的选择信号确定是否仅选通S1~S2c参与计算。
[0071] 若该计算装置不是完全并行结构电路的计算装置,则计算装置中的迭代次数计数器的第四资源选择逻辑子单元根据所述选择信号输出相应的迭代周期信号。例如,当选择信号为选择所述解码器当前纠错能力为c时,则第四资源选择逻辑子单元选通寄存器P0~Pc进行计数,输出周期等于计算时钟周期长度c+1倍的迭代周期信号。
[0072] 一种具体的复合错误位置多项式计算装置(基于串行电路)如图7a所示,其具有纠错能力a=16、b=12和c=8。图7a中的多路选择器M5、M6、M7、M8分别相当于上述的第一、二、三、四多路选择器。而选择信号则包括图7a中的信号Sel16、Sel12、Se18。图7a的复合错误位置多项式计算装置则可以根据输入的选择信号在伴随式存储单元、错误位置多项式存储单元、辅助多项式存储单元、迭代次数计数器中选择相应资源参与计算,从而实现多纠错能力的错误位置多项式计算。具体为,当Sel8信号有效时:多路选择器M5选通τ0~τ7参与计算、多路选择器M6选通σ0~σ8参与计算、多路选择器M8选通S1~S16参与计算。对于基于并行电路的复合错误位置多项式计算装置,类似的,也可以再进一步增加纠错能力,例如如图7b、7c所示的计算装置都可以依据上述相同的方法再在纠错能力a=16、b=12的基础上增加纠错能力c=8。
[0073] 依据上述相同的原理还可以在具有纠错能力a、b和c的解码器。继续增加纠错能力d、e、f等。增加的原理与上述相同:
[0074] 假设对于上述具有纠错能力a和纠错能力b的解码器,其还具有纠错能力c1~cn,所述n为大于1的整数,c1~cn为小于a的整数;所述选择信号还用以选择所述解码器当前纠错能力或者为c1~cn之一;
[0075] 复合错误位置多项式计算装置中的辅助多项式存储单元的第一资源选择逻辑子单元还根据输入的选择信号选择当前的纠错能力为cj时选通 参与计算;
[0076] 复合错误位置多项式计算装置中的错误位置多项式存储单元的第二资源选择逻辑子单元还根据所述选择信号选择当前的纠错能力为cj时选通 参与计算;
[0077] 复合错误位置多项式计算装置中的伴随式存储单元的第三资源选择逻辑子单元还根据所述选择信号选择当前的纠错能力为cj时选通 参与计算;
[0078] 所述j为大于等于1、小于等于n的整数。
[0079] 本领域技术人员可以根据本发明实施例公开的内容轻而易举实现在具有纠错能力a、b和c的解码器继续增加纠错能力d、e、f等,此处不再一一列举。
[0080] 本发明实施例的复合错误位置多项式计算装置中由于伴随式存储单元、错误位置多项式存储单元、辅助多项式存储单元中具有可以根据输入的纠错能力选择信号对单元中的计算资源进行相应选通的资源选择逻辑子单元,使得复合错误位置多项式计算装置可以在不同纠错能力要求时选通相应的计算资源参与计算,从而实现多种纠错能力的复合错误位置多项式的计算,并且占用的计算资源仅等于实现的纠错能力中最大纠错能力的计算资源,从而实现了一种节约硬件资源且具有多种纠错能力的解码器。
[0081] 本领域普通技术人员可以理解实现上述实施例方法中的电路可以通过硬件描述语言Verilog HDL,VHDL等进行描述,然后通过ASIC,FPGA,CPLD等方式实现。
[0082] 还可以理解的是,附图或实施例中所示的装置结构仅仅是示意性的,表示逻辑结构。其中作为分离部件显示的模块可能是或者可能不是物理上分开的,作为模块显示的部件可能是或者可能不是物理模块。
[0083] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。