CN101425875B - 一种解码器 - Google Patents

一种解码器 Download PDF

Info

Publication number
CN101425875B
CN101425875B CN2008101861017A CN200810186101A CN101425875B CN 101425875 B CN101425875 B CN 101425875B CN 2008101861017 A CN2008101861017 A CN 2008101861017A CN 200810186101 A CN200810186101 A CN 200810186101A CN 101425875 B CN101425875 B CN 101425875B
Authority
CN
China
Prior art keywords
error correcting
sub unit
logical sub
decoder
memory cell
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.)
Expired - Fee Related
Application number
CN2008101861017A
Other languages
English (en)
Other versions
CN101425875A (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.)
Actions Technology Co Ltd
Original Assignee
Actions Semiconductor Co Ltd
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 Actions Semiconductor Co Ltd filed Critical Actions Semiconductor Co Ltd
Priority to CN2008101861017A priority Critical patent/CN101425875B/zh
Publication of CN101425875A publication Critical patent/CN101425875A/zh
Application granted granted Critical
Publication of CN101425875B publication Critical patent/CN101425875B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

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

Description

一种解码器
技术领域
本发明涉及解码纠错领域,尤其涉及可对传输数据的随机错误进行纠错的具有多种纠错能力的解码器。
背景技术
目前在数字通信及存储系统中,BCH/RS码被广泛使用(BCH是由BCH码的三个发明人的名字:霍昆格姆Hocquenghem、博斯Bose、雷-查德胡里Ray-Chaudhuri的首字母组成,RS也是由RS码的两个发明人的名字:里德Reed和索罗蒙Solomon的首字母组成),用来实现对数据传输和数据存储过程中的错误检测和纠正。图1是RS解码器的基本架构。如果是针对BCH码进行解码,则BCH解码器与图1所示的RS解码器区别在于BCH解码器不包含图1中的错误值计算部分。
在解码器中错误位置多项式计算装置的错误位置多项式计算方法是根据伯利坎普(Berlekamp)和梅西(Massey)两人提出的BM迭代算法得到的。BM迭代算法的核心思想是给定一个初始的错误位置多项式,然后根据伴随式和当前的错误位置多项式计算偏差,如果偏差为0,则继续沿用此错误位置多项式,如果偏差不为0,则修正此错误位置多项式,其中,用来修正错误位置多项式的修正多项式由伴随式和错误位置多项式计算得到。
为了降低硬件资源消耗,现有技术中采用了一种无逆的BM迭代算法,其迭代算法如下:
1、给定下列参数:K表示迭代次数;L表示错误位置多项式最高次数;δ表示存储的差项值;Δ表示迭代差项;τ(x)表示辅助多项式;σ(x)表示错误位置多项式。假定最大错误个数为t,伴随式计算所得伴随因子为S1,S2,...,S2t
2、设定初始值:L(-1)=0,τ(-1)(x)=1,σ(-1)(x)=1,δ(-1)=1,Δ(0)=S1
3、在0≤K≤2t-1的范围内计算:
σ ( k ) ( x ) = δ ( k - 1 ) · σ ( k - 1 ) ( x ) - Δ ( k ) · x · τ ( k - 1 ) ( x ) Δ ( k + 1 ) = s k + 2 σ 0 ( k ) + s k + 1 σ 1 ( k ) + s k σ 2 ( k ) + . . . + s k + 2 - v i σ v i ( k ) , 式中σi k表示σ(k)(x)的xi系数,σ(k)(x)的最高次为vi
4、如果Δ(k)=0或者2L(k)>k,则L(k)=L(k-1),τ(k)(x)=xτ(k-1)(x),δ(k)=δ(k-1);否则,L(k)=k+1-L(k-1),τ(k)(x)=σ(k)(x),δ(k)=Δ(k)
5、如果K=2t-1,停止迭代,否则,K=K+1,跳转到第3步重新迭代。
图2为实现上述无逆BM迭代算法的错误位置多项式计算装置的电路框图,而图3a为现有技术中一种串行结构的纠错能力t=8位的错误位置多项式计算装置的具体电路。
在图3a计算装置中,寄存器S1,S2,...,S16组成图2所示框图中的伴随式存储单元;
寄存器σ0,σ1,...,σ8组成图2所示框图中的错误位置多项式存储单元;
寄存器τ0,τ1,...,τ7组成图2所示框图中的辅助多项式存储单元;
寄存器Δ,Δr,Δx组成图2所示框图中差项存储单元;
加法器Add2和乘法器Mult3组成图2所示框图中乘加器1;
加法器Add1和乘法器Mult1、Mult2组成图2所示框图中乘加器2;
寄存器K和P0,P1,...,P8组成图2所示框图中迭代次数计数器,该迭代次数计数器通过P0-P8的计数,从而输出迭代周期信号P8。迭代周期信号P8的时间长度为计算时钟周期长度的9倍;在每个迭代周期信号有效时,更新差项存储单元和错误位置多项式次数。
寄存器L构成错误位置多项式次数计数器;而控制条件ctl即为迭代修正条件,其通过控制迭代修正单元中的多路选择器M1,M2,M3,M4实现迭代修正。
图3b则示出现有技术中一种纠错能力t=16位的错误位置多项式计算装置的具体电路。
在目前的数字通信和信息存储系统中,有对控制器的RS/BCH码具有多种纠错能力的要求。例如,在闪存控制器中,根据闪存的制造工艺和冗余区(spare area)结构的不同,要求采用不同纠错能力的纠错码,那么在闪存控制器的设计中就要设计一种具有多种纠错能力的解码器,以最大限度的适应各类闪存。如果将具有不同纠错能力的解码器简单集成到一个控制器当中(例如将上述图3a和图3b所示的电路集成到一个控制器以实现纠错能力为8和16的解码器),势必使硬件资源的消耗更大,从而导致控制器成本的增加。
发明内容
本发明实施例提供了一种解码器,用以提供一种节约硬件资源且具有多种纠错能力的解码器。
一种解码器,所述解码器可对传输数据的随机错误进行纠错,且具有纠错能力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参与计算。
本发明还提供了一种解码器,其特征为所述解码器可对传输数据随机错误进行纠错,且具有纠错能力a和纠错能力b,所述a和b为可纠正所述传输数据的随机错误的位(比特)数,所述a和b均为自然数,且a大于b,所述解码器还具有纠错能力c1~cn,所述n为大于1的整数,所述c1~cn为可纠正所述传输数据的随机错误的位(比特)数,c1~cn为小于a的自然数;
所述解码器包括复合错误位置多项式计算装置,所述计算装置包括选择信号的输入端、辅助多项式存储单元、伴随式存储单元、错误位置多项式存储单元;
所述选择信号输入端还用以选择所述解码器当前的纠错能力为c1~cn其中之一;
所述辅助多项式存储单元的第一资源选择逻辑子单元还用于在选择信号选择当前的纠错能力为cj时选通
Figure G2008101861017D00041
参与计算;
所述错误位置多项式存储单元的第二资源选择逻辑子单元还用于在选择信号选择当前的纠错能力为cj时选通
Figure G2008101861017D00042
参与计算;
所述伴随式存储单元的第三资源选择逻辑子单元还用于在选择信号选择当前的纠错能力为cj时选通
Figure G2008101861017D00043
参与计算;
所述j为大于等于1、小于等于n的整数。
本发明实施例的复合错误位置多项式计算装置中由于伴随式存储单元、错误位置多项式存储单元、辅助多项式存储单元中具有可以根据输入的纠错能力选择信号对单元中的计算资源进行相应选通的资源选择逻辑子单元,使得复合错误位置多项式计算装置可以在不同纠错能力要求时选通相应的计算资源参与计算,从而实现多种纠错能力的错误位置多项式计算,并且占用的计算资源仅等于实现的纠错能力中最大纠错能力的计算资源,从而实现了一种节省硬件资源且具有对传输数据的随机错误进行纠错的多种纠错能力的解码器。
附图说明
图1为现有技术的RS解码器的结构框图;
图2为现有技术的错误位置多项式计算装置结构框图;
图3a为现有技术的串行结构的纠错能力为8位时的错误位置多项式计算装置电路图;
图3b为现有技术的串行结构的纠错能力为16位时的错误位置多项式计算装置电路图;
图4为本发明实施例的串行结构的纠错能力为12位和16位时的解码器框图;
图5a、5b为本发明实施例的串行结构的纠错能力为12位和16位时的复合错误位置多项式计算装置电路图;
图6a、6b为本发明实施例的并行结构的纠错能力为12位和16位时的复合错误位置多项式计算装置电路图;
图7a为本发明实施例的串行结构的纠错能力为8位、12位和16时的复合错误位置多项式计算装置电路图;
图7b、7c为本发明实施例的并行结构的纠错能力为8位、12位和16位时的复合错误位置多项式计算装置电路图。
具体实施方式
本发明的发明人考虑到可对传输数据进行纠错的具有不同纠错能力的BCH/RS解码器需要具有不同纠错能力的复合错误位置多项式计算装置。也就是说,设计具有不同纠错能力的复合错误位置多项式计算装置是设计不同纠错能力的解码器的关键点。
而各种不同纠错能力的解码器的复合错误位置多项式计算装置之间的差别主要在于,根据纠错能力的不同采用不同的计算资源来进行计算,而计算的方法则各计算装置都是采用相同的算法(例如,上述现有技术中介绍的算法)来实现的。
例如,在纠错能力为8位时,复合错误位置多项式计算装置中:伴随式存储单元包括16个寄存器:S1,S2,...,S16;错误位置多项式存储单元包括9个寄存器:σ0,σ1,...,σ8;辅助多项式存储单元包括8个寄存器:τ0,τ1,...,τ7;迭代次数计数器包括9个寄存器:P0,P1,...,P8
而在纠错能力为16位时,复合错误位置多项式计算装置中:伴随式存储单元包括32个寄存器:S1,S2,...,S32;错误位置多项式存储单元包括17个寄存器:σ0,σ1,...,σ16;辅助多项式存储单元包括16个寄存器:τ0,τ1,...,τ15;迭代次数计数器包括17个寄存器:P0,P1,...,P16
由上述可以看出,不同纠错能力的解码器的复合错误位置多项式计算装置中主要是参与运算的资源改变了:纠错能力为16位时复合错误位置多项式计算装置的伴随式存储单元的寄存器为32个,而纠错能力为8位时复合错误位置多项式计算装置的伴随式存储单元的寄存器为16个;纠错能力为16位时复合错误位置多项式计算装置的错误位置多项式存储单元的寄存器为17个,而纠错能力为8时复合错误位置多项式计算装置的错误位置多项式存储单元的寄存器为9个;纠错能力为16位时复合错误位置多项式计算装置的辅助多项式存储单元的寄存器为16个,而纠错能力为8位时复合错误位置多项式计算装置的辅助多项式存储单元的寄存器为8个,而进行运算的一些单元,例如乘加器1、乘加器2、差项存储单元的结构则没有什么改变。因此,如果实现一种电路根据选择信号来选择使用不同的参与运算的资源,那么就可以实现多种不同的纠错能力的解码器的复合错误位置多项式计算装置。
本发明实施例提供的一种串行结构的复合错误位置多项式计算装置的框图,如图4所示,可以实现纠错能力为16位和12位的复合错误位置多项式计算装置,相比于现有技术的单个纠错能力的复合错误位置多项式计算装置增加了输入选择信号的输入端。从输入选择信号的输入端输入的选择信号有Sel16和Sel12。当输入的选择信号Sel16有效时,则该复合错误位置多项式计算装置实现的是解码器纠错能力为16位时的错误位置多项式计算;当输入的选择信号Sel12有效时,则该复合错误位置多项式计算装置实现的是解码器纠错能力为12位时的错误位置多项式计算。
纠错能力包括16位和12位时的复合错误位置多项式计算装置的具体电路,如图5a所示。
图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的选通为本领域技术人员所熟知,此处不再赘述。
而复合错误位置多项式计算装置中的差项存储单元、乘加器1、乘加器2、错误位置多项式次数计数器的结构相比于现有技术都没有改变,根据迭代次数计数器输出的迭代周期信号Px进行计算。
图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的选通为本领域技术人员所熟知,此处不再赘述。
类似的,错误位置多项式存储单元包括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的选通为本领域技术人员所熟知,此处不再赘述。
图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来实现,此处不再赘述。
虽然,图5a所示计算装置中的伴随式存储单元、错误位置多项式存储单元、辅助多项式存储单元、迭代次数计数器的内部结构都与现有技术的不一样了,但这些单元和计数器与其它单元,如差项存储单元、乘加器1、乘加器2、错误位置多项式次数计数器之间的连接关系仍与现有技术的计算装置中的一样。也就是说,本发明实施例主要是根据输入的选择信号对伴随式存储单元、错误位置多项式存储单元、辅助多项式存储单元、迭代次数计数器内的计算资源进行相应的选取,从而实现多种纠错能力的错误位置多项式计算。
根据上述的纠错能力为16位和12位时的复合错误位置多项式计算装置,可以看出,将较小纠错能力的电路融合到较大纠错能力的电路中,可以实现资源的重复利用,而不必配备两套纠错能力的电路资源,从而在实现多种不同纠错能力的解码器的同时,还节省了硬件资源。
不失一般性,对于对传输数据的随机错误进行纠错的多种纠错能力的解码器具有纠错能力a和纠错能力b,该解码器包括复合错误位置多项式计算装置,其中a和b为可纠正所述传输数据的随机错误的位(比特)数,a和b为自然数,且a大于b。该复合错误位置多项式计算装置的输入端包括用以输入选择信号的输入端,所述选择信号用以选择所述复合错误位置多项式计算装置当前纠错能力为a、或者b。
复合错误位置多项式计算装置中的辅助多项式存储单元包括a个寄存器τ0~τa-1以及第一资源选择逻辑子单元,第一资源选择逻辑子单元的输入端与所述选择信号输入端相连,所述第一资源选择逻辑子单元根据输入的选择信号选择当前纠错能力为a、或者b,分别选通τ0~τa-1、或者τ0~τb-1参与计算。例如,第一资源选择逻辑子单元可以包括多路选择器,第一资源选择逻辑子单元的多路选择器的输入端与所述选择信号输入端相连,其用于根据输入的选择信号选通τ0~τb-1、或者τ0~τa-1参与计算。
复合错误位置多项式计算装置中的错误位置多项式存储单元包括a+1个寄存器σ0~σa以及第二资源选择逻辑子单元,第二资源选择逻辑子单元的输入端与所述选择信号输入端相连,所述第二资源选择逻辑子单元根据所述选择信号选择当前纠错能力为a、或者b,分别选通σ0~σa、或者σ0~σb参与计算。例如,第二资源选择逻辑子单元可以包括多路选择器,第二资源选择逻辑子单元的多路选择器的输入端与所述选择信号输入端相连,其用于根据输入的选择信号选通σ0~σb、或者σ0~σa参与计算。
复合错误位置多项式计算装置中的伴随式存储单元包括2a个寄存器S1~S2a以及第三资源选择逻辑子单元,第三资源选择逻辑子单元的输入端与所述选择信号输入端相连,所述第三资源选择逻辑子单元根据所述选择信号选择当前纠错能力为a、或者b,分别选通S1~S2a、或者S1~S2b参与计算。例如,所述第三资源选择逻辑子单元可以包括多路选择器,第三资源选择逻辑子单元的多路选择器的输入端与所述选择信号输入端相连,其用于根据输入的选择信号选通S1~S2b、或者S1~S2a参与计算。
若该复合错误位置多项式计算装置不是完全并行结构电路的计算装置,则复合错误位置多项式计算装置中的迭代次数计数器包括a+1个寄存器P0~Pa以及第四资源选择逻辑子单元,第四资源选择逻辑子单元的输入端与所述选择信号输入端相连,第四资源选择逻辑子单元根据所述选择信号输出相应的迭代周期信号。例如,当选择信号为选择所述解码器当前纠错能力为a时,则第四资源选择逻辑子单元选通寄存器P0~Pa进行计数,输出周期等于计算时钟周期长度a+1倍的迭代周期信号;当选择信号为选择所述解码器当前纠错能力为b时,则第四资源选择逻辑子单元选通寄存器P0~Pb进行计数,输出周期等于计算时钟周期长度b+1倍的迭代周期信号。第四资源选择逻辑子单元具体可以包括多路选择器,所述第四资源选择逻辑子单元中的多路选择器,其输入端与所述选择信号输入端相连,用于根据输入的选择信号输出相应的迭代周期信号。
复合错误位置多项式计算装置中的差项存储单元、乘加器1、乘加器2、错误位置多项式次数计数器的结构相比于现有技术没有改变,根据迭代次数计数器输出的迭代周期信号进行计算。
这里需要指出的是,复合错误位置多项式计算装置的实现既可以通过串行电路来实现,也可以通过并行电路来实现。如图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组都包括多个多路选择器用以根据输入的选择信号实现对应计算资源的选通,从而完成资源选择的功能。在实际应用中,本领域技术人员也可采用单个具有多路选择开关的器件、或者其它的逻辑电路来达到同样的资源选择功能,此处就不再一一列举。
因此,图6a以及图6b所示的基于并行电路的复合错误位置多项式计算装置与图5b中的基于串行电路的复合错误位置多项式计算装置相类似,是对于复合错误位置多项式计算装置中的辅助多项式存储单元、错误位置多项式存储单元、伴随式存储单元(或者还包括迭代次数计数器)中的部分或者全部计算资源的进行选通,从而达到实现节约成本的多纠错能力的电路的目的。图6a、6b中的复合错误位置多项式计算装置的具体连接方法,此处不再进行赘述,本领域技术人员根据本发明实施例公开的内容可以针对各种不同的复合错误位置多项式计算装置(例如串行的、并行的或者其它实现方式的计算装置)采用本发明实施例的原理轻而易举的实现节约成本的多纠错能力的电路。
进一步,在复合错误位置多项式计算装置中根据上述原理还可以在上述具有纠错能力a和纠错能力b的解码器中增加纠错能力c。只要c小于a,那么依然可以利用复合错误位置多项式计算装置中实现最大纠错能力a的计算资源中的一部分来实现纠错能力c。
具体的,计算装置中的辅助多项式存储单元的第一资源选择逻辑子单元还可以根据输入的选择信号或者选通τ0~τc-1参与计算。例如,当选择信号为选择所述解码器当前纠错能力为c时,则选通τ0~τc-1参与计算。例如,第一资源选择逻辑子单元的多路选择器还用于根据输入的选择信号或者选通τ0~τc-1参与计算。
计算装置中的错误位置多项式存储单元的第二资源选择逻辑子单元还可以根据所述选择信号或者选通σ0~σc参与计算。例如,当选择信号为选择所述解码器当前纠错能力为c时,则选通σ0~σc参与计算。例如,第二资源选择逻辑子单元的多路选择器还用于根据输入的选择信号或者选通σ0~σc参与计算。
计算装置中的伴随式存储单元的第三资源选择逻辑子单元还可以根据所述选择信号或者选通S1~S2c参与计算。例如,第三资源选择逻辑子单元包括的多路选择器,其输入端与所述选择信号输入端相连,其用于根据输入的选择信号确定是否仅选通S1~S2c参与计算。
若该计算装置不是完全并行结构电路的计算装置,则计算装置中的迭代次数计数器的第四资源选择逻辑子单元根据所述选择信号输出相应的迭代周期信号。例如,当选择信号为选择所述解码器当前纠错能力为c时,则第四资源选择逻辑子单元选通寄存器P0~Pc进行计数,输出周期等于计算时钟周期长度c+1倍的迭代周期信号。
一种具体的复合错误位置多项式计算装置(基于串行电路)如图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。
依据上述相同的原理还可以在具有纠错能力a、b和c的解码器。继续增加纠错能力d、e、f等。增加的原理与上述相同:
假设对于上述具有纠错能力a和纠错能力b的解码器,其还具有纠错能力c1~cn,所述n为大于1的整数,c1~cn为小于a的整数;所述选择信号还用以选择所述解码器当前纠错能力或者为c1~cn之一;
复合错误位置多项式计算装置中的辅助多项式存储单元的第一资源选择逻辑子单元还根据输入的选择信号选择当前的纠错能力为cj时选通
Figure G2008101861017D00151
参与计算;
复合错误位置多项式计算装置中的错误位置多项式存储单元的第二资源选择逻辑子单元还根据所述选择信号选择当前的纠错能力为cj时选通
Figure G2008101861017D00152
参与计算;
复合错误位置多项式计算装置中的伴随式存储单元的第三资源选择逻辑子单元还根据所述选择信号选择当前的纠错能力为cj时选通参与计算;
所述j为大于等于1、小于等于n的整数。
本领域技术人员可以根据本发明实施例公开的内容轻而易举实现在具有纠错能力a、b和c的解码器继续增加纠错能力d、e、f等,此处不再一一列举。
本发明实施例的复合错误位置多项式计算装置中由于伴随式存储单元、错误位置多项式存储单元、辅助多项式存储单元中具有可以根据输入的纠错能力选择信号对单元中的计算资源进行相应选通的资源选择逻辑子单元,使得复合错误位置多项式计算装置可以在不同纠错能力要求时选通相应的计算资源参与计算,从而实现多种纠错能力的复合错误位置多项式的计算,并且占用的计算资源仅等于实现的纠错能力中最大纠错能力的计算资源,从而实现了一种节约硬件资源且具有多种纠错能力的解码器。
本领域普通技术人员可以理解实现上述实施例方法中的电路可以通过硬件描述语言Verilog HDL,VHDL等进行描述,然后通过ASIC,FPGA,CPLD等方式实现。
还可以理解的是,附图或实施例中所示的装置结构仅仅是示意性的,表示逻辑结构。其中作为分离部件显示的模块可能是或者可能不是物理上分开的,作为模块显示的部件可能是或者可能不是物理模块。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (13)

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时选通 
Figure FSB00000271179000031
参与计算;
所述错误位置多项式存储单元的第二资源选择逻辑子单元还用于在选择信号选择当前的纠错能力为cj时选通 
Figure FSB00000271179000032
参与计算;
所述伴随式存储单元的第三资源选择逻辑子单元还用于在选择信号选择当前的纠错能力为cj时选通 
Figure FSB00000271179000033
参与计算;
所述j为大于等于1、小于等于n的整数。 
CN2008101861017A 2008-12-17 2008-12-17 一种解码器 Expired - Fee Related CN101425875B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101861017A CN101425875B (zh) 2008-12-17 2008-12-17 一种解码器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101861017A CN101425875B (zh) 2008-12-17 2008-12-17 一种解码器

Publications (2)

Publication Number Publication Date
CN101425875A CN101425875A (zh) 2009-05-06
CN101425875B true CN101425875B (zh) 2011-01-26

Family

ID=40616236

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101861017A Expired - Fee Related CN101425875B (zh) 2008-12-17 2008-12-17 一种解码器

Country Status (1)

Country Link
CN (1) CN101425875B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102654854A (zh) * 2011-03-04 2012-09-05 上海华虹集成电路有限责任公司 一种可动态调整ECC纠错能力的Nandflash控制器
CN103580793A (zh) * 2012-08-02 2014-02-12 北京兆易创新科技股份有限公司 纠错处理方法和系统
CN108683425B (zh) * 2018-05-18 2022-08-26 中国科学院微电子研究所 一种bch译码器
CN111162799B (zh) * 2019-12-27 2023-08-29 北京时代民芯科技有限公司 一种抗辐射rs码译码电路
CN112540848A (zh) * 2020-12-03 2021-03-23 安徽寒武纪信息科技有限公司 图像解压缩的设备、方法及可读存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222297A (zh) * 2008-01-31 2008-07-16 复旦大学 交织码和网络编码结合的数据分发方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222297A (zh) * 2008-01-31 2008-07-16 复旦大学 交织码和网络编码结合的数据分发方法

Also Published As

Publication number Publication date
CN101425875A (zh) 2009-05-06

Similar Documents

Publication Publication Date Title
EP2974036B1 (en) Fast cyclic redundancy check computation circuit
CN101425875B (zh) 一种解码器
WO2010115371A1 (zh) 一种循环冗余校验crc码的实现方法和装置
US5130990A (en) VLSI architecture for a Reed-Solomon decoder
US10725841B1 (en) Method and apparatus for error detection and correction
US9996499B2 (en) Scalable and programmable processor comprising multiple cooperating processor units
JP2011165026A (ja) エラー検出訂正システム
CN101478314A (zh) 一种里德-所罗门编码译码器及其译码的方法
CN101227194A (zh) 用于并行bch编码的电路、编码器及方法
Krainyk et al. Hardware-oriented turbo-product codes decoder architecture
US9934841B1 (en) Systems and methods for refreshing data in memory circuits
US20180358986A1 (en) Circuitry and method for dual mode reed-solomon-forward error correction decoder
CN101296053A (zh) 计算循环冗余校验码之方法及系统
CN101488762B (zh) 一种面积紧凑且快速的bch并行译码方法
CN102820892A (zh) 一种用于并行bch编码的电路、编码器及方法
US10367529B2 (en) List decode circuits
El-Medany FPGA implementation of CRC with error correction
CN101777922B (zh) 用于BCH译码器的高速低延时Berlekamp-Massey迭代译码电路
US8156411B2 (en) Error correction of an encoded message
US8527851B2 (en) System and method for using the universal multipole for the implementation of a configurable binary Bose-Chaudhuri-Hocquenghem (BCH) encoder with variable number of errors
US20100162071A1 (en) Circuits for implementing parity computation in a parallel architecture ldpc decoder
US8930787B1 (en) Decoder in a device receiving data having an error correction code and a method of decoding data
Lee et al. Implementation of parallel BCH encoder employing tree-type systolic array architecture
Reviriego et al. On the use of euclidean geometry codes for efficient multibit error correction on memory systems
CN104378121A (zh) 一种译码方法及译码装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: JUXIN(ZHUHAI) TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: JULI INTEGRATED CIRCUIT DESIGN CO., LTD.

Effective date: 20141212

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20141212

Address after: 519085, C, No. 1, No. four, 1 hi tech Zone, Tang Wan Town, Guangdong, Zhuhai

Patentee after: ACTIONS (ZHUHAI) TECHNOLOGY Co.,Ltd.

Address before: 519085 No. 1, unit 15, building 1, 1 Da Ha Road, Tang Wan Town, Guangdong, Zhuhai

Patentee before: Juli Integrated Circuit Design Co., Ltd.

CP01 Change in the name or title of a patent holder

Address after: 519085 High-tech Zone, Tangjiawan Town, Zhuhai City, Guangdong Province

Patentee after: ACTIONS TECHNOLOGY Co.,Ltd.

Address before: 519085 High-tech Zone, Tangjiawan Town, Zhuhai City, Guangdong Province

Patentee before: ACTIONS (ZHUHAI) TECHNOLOGY Co.,Ltd.

CP01 Change in the name or title of a patent holder
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110126

Termination date: 20201217

CF01 Termination of patent right due to non-payment of annual fee