一种用于多模式bch码编码的方法及使用该方法的编码器的制造方法

文档序号:9473917阅读:673来源:国知局
一种用于多模式bch码编码的方法及使用该方法的编码器的制造方法
【技术领域】
[0001] 本发明关于一种编码器,特别是关于一种多模式编码器,用于不同BCH码,包含任 何码长、码率或GF (2m)中的数字m。
【背景技术】
[0002] Bose-Chaudhuri-Hocquenghem(BCH)码是非常普遍使用于储存与通信设备的错误 更正码,BCH码能侦测及修正由于存储设备通道中的噪声和缺陷,随机发生的错误。BCH码 的编码常利用线性反馈移位寄存器与某些逻辑集成电路的组合来实现。现有的的线性反馈 移位寄存器电路如图1所示。为了加速运算,该电路通常采平行运算方式设计。图1中的 符号P表示在第j个频率中,用以进行同步计算的输入的R'(j)的P位数据。于编码后,输 出计算的结果Z(j)。如果该码长为η位,编码的程序会在[n/p]个频率后完成。
[0003] 关于BCH编码的详细说明如下。一具有η位的编码BCH码字,具有k位信息,在编 码过程中应用了一生成多项式:
[0004] g (X) = XR+g' R !Xr kg' R 2XR 2+…+g' 2X2+g' V+g' 0,
[0005] 而其中R = n-k+1。当使用一个能同步进行p个并行计算编码的编码器时,对于一 具有k位信息的η位的初始处理数据以p位为单位切割为R'(I)、R'(2)…R'(n/p) (R'(n/ P)不需要为P位),并依序于每频率中输入至该编码器以进行运算。基于一通式,在第j个 频率(1彡j彡n/p)中,输出的计算值为:Z(j) = FpX [Z(j-1)+R'(j)]。应注意的是Z(O) 中所有元素都是0。为了便利运算,以下表示
[0007] 中,R'(j)为第 j 个p 位。Z (j)具有 R 位,各表示为 Z0(j)、Z1(JO-ZriU)q
[0008] 其它以上公式内表示式进一步描述如下:
[0011] 令F' = [Fp的前P列|FP],可以得到Z(j)的转置矩阵:
[0013] 能满足以上运算的电路,也能达成如图1所示的编码运算。一编码的码字能于第 [n/p]频率后获得。
[0014] 前述的方法仅能用在相同的伽罗瓦场GF(2m)中,码率跟码长是固定的。对某些应 用来说,可能需要不同的码长、码率、GF(2m)中的次方m及平行参数p。传统上,这些需求能 通过特定BCH编码器来实现。因而,硬件的复杂性变高了。为了减少硬件复杂性,某些设计 人员可能会加入一些多任务器到线性反馈移位寄存器中以共享缓存器。然而,因为加入这 些多任务器而多出的面积成本与延时会损及产品本身的价值。
[0015] 因此,需要一种对于不同BCH码,能共享一线性反馈移位寄存器的方法与使用该 方法的编码器。此外,该方法能加大共同子表达式在矩阵中的搜寻空间,以减少硬件逻辑面 积。

【发明内容】

[0016] 如上所述,在BCH码的编码的设计电路现有方案中,硬件的复杂度偏高且面积成 本大。因此一种对于不同BCH码,能共享一线性反馈移位寄存器的方法与使用该方法的编 码器是非常迫切需要的。
[0017] 因此,依照本发明的一种态样,一种用于多模式BCH码编码的方法,包含步骤:建 立多个编码矩阵;以一侧对齐方式结合该编码矩阵,以形成一结合矩阵;于该结合矩阵中 寻找共同子表达式;及使用该结合矩阵编码一信息,其中每一编码矩阵具有以下形式
[0019] 而
,其中对于一具有k位信息的η位的初始处理数据 以P位为单位切害!],R定义为R = n-k+1 ;g' R i、g' R 2…及g'。为一生成多项式g(x)= xR+g' R iXR 1+g' R 2xR 2+…+g' W W。的系数;任意两个编码矩阵具有相同或相异的η及 /或k。
[0020] 依照本案构想,在结合矩阵中,不为编码矩阵元素所占之处以0补足。编码矩阵依 序排列于该结合矩阵的一侧。该结合矩阵中至少一编码矩阵使用在该结合矩阵中另一编码 矩阵的共同子表达式。当结合矩阵中最小的编码矩阵能容置在邻近其它编码矩阵所形成O 之处的一部分,该最小的编码矩阵设置于该处且两侧各邻近一编码矩阵。较佳的情况是两 个相邻编码矩阵以多个O分隔开。
[0021] 此外,依照本发明的另一种态样,一种用于多模式BCH码编码的编码器,包含:一 结合矩阵单元,用以提供多个编码矩阵,用以将其中一个编码矩阵内的元素与一具有P位 的输入数据相乘,并于一第一频率中输出结果为一计算数据;一线性反馈移位寄存器,用 以线性地移位该计算数据为一输出数据,并于一第二频率中输出该输出数据;及一加法器, 用以接收该输出数据与一具有P位的切割的处理数据,将该输出数据与切割的处理数据相 加,及于该第二频率中输出该相加结果为另一输入数据至该结合矩阵单元,其中一具有k 位信息的η位的初始处理数据以p位为单位切割,作为切割的处理资料依序地输入该加法 器;一编码的码字于第[η/ρ]个频率获得;第二频率落后于第一频率一个频率。
[0022] 该编码矩阵以一侧对齐方式形成一结合矩阵于该结合矩阵单元中,且该结合矩阵 单元依照对应的BCH码,使用一编码矩阵内元素或一编码矩阵内元素连同另一编码矩阵中 的共同子表达式,进行乘法运算。而其中每一编码矩阵具有以下形式
[0025] 其中对于该具有k位信息的η位的初始处理数据以ρ位为单位切割,R定义为R = n-k+1 ;g' R !、g' R 2…及 g'。为一生成多项式 g(x) = xR+g' R !Xr kg' R 2xR 2+…+g' 2x2+g' V+g'。 的系数;任意两个编码矩阵具有相同或相异的n及/或k。
【附图说明】
[0026] 图1为用于一 BCH码的传统编码器;
[0027] 图2为本发明提供的用于编码多模式BCH码的编码器;
[0028] 图3显示用于一实施例中的一结合矩阵部的结构;
[0029] 图4显示用于另一实施例中的一结合矩阵部的结构;
[0030] 图5显示用于又一实施例中的一结合矩阵部的结构;
[0031] 图6显示用于再一实施例中的一结合矩阵部的结构;
[0032] 图7为本发明提供的一编码方法的流程图。
[0033] 附图标记说明:10_编码器;100-结合矩阵单元;110-结合矩阵部;120-逻辑运算 部;200-线性反馈移位寄存器;300-加法器。
【具体实施方式】
[0034] 本发明将参照下列的实施例而更具体地描述。
[0035] 请参阅图2至图4,藉以说明依照本发明的一实施例。一用来编码多模式BCH码的 编码器10包括一结合矩阵单元100、一线性反馈移位寄存器200及一加法器300。每一 BCH 码的模式可具有不同的码率、码长或伽罗瓦场GF(2m)中的次方m。通过该编码器10,任何 数量模式的组合都可能实现。
[0036] 结合矩阵单元100用来提供多个编码矩阵,用以将一编码矩阵内元素或一编码矩 阵内元素连同另一编码矩阵中的共同子表达式,与一具有P位的输入数据,进行乘法运算。 它也可以进一步在一第一频率中,输出前述结果为一计算数据。编码矩阵以一侧对齐方式 形成一结合矩阵于该结合矩阵单元100中。结合矩阵单元100依照对应的BCH码,进行乘 法运算。结合矩阵储存于一结合矩阵部110中。为了对结合矩阵部110有较明确的理解, 请参阅图3。
[0037] 图3显示使用于一实施例中,结合矩阵部110的结构。应注意的是该结合矩阵部 110可以为任何的电子元件,比如只读存储器(ROM)阵列,以记忆该编码矩阵的元素(0或 1)。在图3中,3个方块用来各自表示3个编码矩阵。结合矩阵部110在结合矩阵单元100 的全部面积以Rlx(Rl+R2+R3)来表示。每一子面积Fl (具有边长Rl的编码矩阵1)、F2(具 有边长R2的编码矩阵2)及F3 (具有边长R3的编码矩阵3)用来描述编码矩阵在结合矩阵 部110的相对位置。每一编码矩阵的元素布置在相对应的子面积中。
[0038] 如图3所示,结合矩阵中未被编码矩阵元素所占之处以0补足。较理想的情况是 编码矩阵依序排列于该结合矩阵的一侧,最好是由大至小依序排列。当然,其他序列,诸如 由小至大或插入最小的于两大者间,也是可行的方式。在结合矩阵的上方侧,编码矩阵RU R2与R3由左排列至右。有一点应注意的是,结合矩阵的另一侧长度应该与最大编码矩阵 Rl的边长相同。这是维持结合矩阵面积最小化(节省面积成本)及减少空间浪费的方法。 [0039] 依照本发明,每一编码矩阵能被用来
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1