CN102811066B - 伴随式计算装置及解码器 - Google Patents

伴随式计算装置及解码器 Download PDF

Info

Publication number
CN102811066B
CN102811066B CN201210246708.6A CN201210246708A CN102811066B CN 102811066 B CN102811066 B CN 102811066B CN 201210246708 A CN201210246708 A CN 201210246708A CN 102811066 B CN102811066 B CN 102811066B
Authority
CN
China
Prior art keywords
syndrome
complementation
minimal polynomial
unit
calculation element
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.)
Active
Application number
CN201210246708.6A
Other languages
English (en)
Other versions
CN102811066A (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.)
Ramaxel Technology Shenzhen Co Ltd
Original Assignee
Ramaxel Technology Shenzhen 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 Ramaxel Technology Shenzhen Co Ltd filed Critical Ramaxel Technology Shenzhen Co Ltd
Priority to CN201210246708.6A priority Critical patent/CN102811066B/zh
Publication of CN102811066A publication Critical patent/CN102811066A/zh
Application granted granted Critical
Publication of CN102811066B publication Critical patent/CN102811066B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Error Detection And Correction (AREA)

Abstract

本发明适用于电子技术领域,提供了一种伴随式计算装置,应用于BCH解码器,所述伴随式计算装置包括:最小多项式求余单元,包括p(p为正整数)路求余子单元,每路求余子单元用于根据输入的码字,计算输出码字的最小多项式余式;多路控制单元,用于暂存所述最小多项式求余单元所产生的中间数据,并将所述最小多项式余式交由所述伴随式运算单元处理;伴随式运算单元,用于根据所述最小多项式余式计算获取伴随式。本发明还相应的提供一种包括上述装置的解码器。借此,本发明的装置延时较短,可实现电路的多路复用,在整体上节约了面积。

Description

伴随式计算装置及解码器
技术领域
本发明涉及电子技术领域,尤其涉及一种伴随式计算装置及解码器。
背景技术
BCH码作为一种重要的纠错编码方式,在通信领域和消费电子领域得到了广泛的应用。在数据存储领域中,为了提高读写速度,通常都是采用多路数据读写结构,因此,BCH的多路复用就显得尤为重要。目前有技术方案都是描述如何优化单路的BCH编解码器的面积和时序,而描述如何复用的却很少。单路BCH编解码器与多路BCH的编解码器的优化重点是不相同的,多路复用不仅仅要体现在面积上,更要体现在时序上,也就是说,复用的目的在于在满足时序的前提下尽量减少面积。
一般的BCH解码器包括三个步骤,第一是伴随式计算,第二步是计算错误位置多项式,第三步则是钱搜索找出错误位置并纠正。其中伴随式计算是整个BCH解码器的第一步,由于其主要电路是一个除法器,通常做法是与编码器共用除法电路,以节省面积,见图1和图2。假设码长为n,信息位长度为k,GF(2^M)中纠错强度为t的BCH解码器输入r(x)=c(x)+e(x),c(x)为码多项式,e(x)为加入的错误多项式。那么有
r ( x ) g ( x ) = q ( x ) + g ( x ) g ( x )
式中,q(x)为r(x)除g(x)后的商,s(x)为余式。当e(x)=0时,由于c(x)可以被g(x)整除,因此有r(x)=q(x)*g(x),也就是说余式s(x)=0。当e(x)≠0时,则有r(x)=q(x)*g(x)+s(x),假设x=ai,由于ai是生成多项式g(x)的根,也是r(x)的特征值,所以g(ai)=0,r(ai)=s(ai)=si,j∈[0,2*t-1],这里si就是伴随式。伴随式仅与errorpattern有关,而与真实的数据无关,当它等于0时,说明无错发生,否则,说明有错存在。s(x)实际是r(x)对g(x)的余式,最高幂次为2*t,因此只需要使用除法电路求出这个余式,再将ai再代入即可得到所有2*t个si。但编码器的除法电路生成的余数是一个长度与纠错个数t相等的多项式,当t较大时,生成伴随式的延时也会比较大,不利于实现复用,从面不能减小面积。
综上可知,现有的解码器的复用技术,在实际使用上显然存在不便与缺陷,所以有必要加以改进。
发明内容
针对上述的缺陷,本发明的目的在于提供一种伴随式计算装置及解码器,其电路延时较短,可实现多路复用,在整体上节约面积。
为了实现上述目的,本发明提供一种伴随式计算装置,应用于BCH解码器,所述伴随式计算装置包括:
最小多项式求余单元,包括p(p为正整数)路求余子单元,每路求余子单元用于根据输入的码字,计算输出码字的最小多项式余式;
多路控制单元,用于暂存所述最小多项式求余单元所产生的中间数据,并将所述最小多项式余式交由所述伴随式运算单元处理;
伴随式运算单元,用于根据所述最小多项式余式计算获取伴随式。
根据本发明的伴随式计算装置,所述求余子单元包括t(t为正整数)个线性反馈移位寄存器,每个所述线性反馈移位寄存器包括M(M为正整数)个数据寄存器,所述每个线性反馈移位寄存器的输出为M位的最小多项式余式。
根据本发明的伴随式计算装置,所述多路控制单元包括p个与所述求余子单元对应的t*M位的寄存器组,每个所述寄存器组用于存储所述最小多项式求余单元所产生的中间数据以及每一路的最小多项式余式。
根据本发明的伴随式计算装置,所述每个寄存器组连接一计数器组成一电路单元,用于当所述寄存器组对应的求余子单元完成该路的求余运算时,将该路的最小多项式余式输出给所述伴随式运算单元。
根据本发明的伴随式计算装置,所述多路控制单元包括复用器和解复用器,均与所述最小多项式求余单元连接。
根据本发明的伴随式计算装置,所述伴随式运算单元包括t个运算子单元,每个所述运算子单元用于根据一所述M位的最小多项式余式,计算输出M位的伴随式。
本发明还相应的提供一种包括如上所述伴随式计算装置的解码器。
本发明通过在伴随式计算装置内设置最小多项式求余单元,使其可以根据码字生成多路最小多项式余式,并将多路最小多项式余式传送到多路控制单元进行暂存。多路控制单元收到触发信号后将最小多项式余式交由伴随式运算单元处理,伴随式运算单元分路计算得到对应的伴随式,借此避免了迭代运算带来的延时,可实现装置的多路复用,节省面积。
附图说明
图1是现有技术一实施例的BCH伴随式求余电路的结构示意图;
图2是现有技术一实施例的BCH伴随式代入运算电路的结构示意图;
图3是本发明一实施例的伴随式计算装置的结构示意图;
图4是本发明另一实施例的伴随式计算装置的结构示意图;
图5是本发明一实施例的最小多项式求余单元的结构示意图;
图6是本发明一实施例的求余子单元的结构示意图;
图7是本发明一实施例的运算子单元的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图3和图4,本发明提供一种伴随式计算装置,其应用于BCH解码器,该装置100包括最小多项式求余单元10、多路控制单元20和伴随式运算单元30,其中:
最小多项式求余单元10包括p(p为正整数)路求余子单元11,每路求余子单元用于根据输入的码字,计算输出码字的最小多项式余式。本发明的一实施例中,最小多项式求余单元10的结构如图5所示,具体的,每路求余子单元11的输入为输入端码子的一个最小多项式(mi1~mip),再结合图6所示的求余子单元11,其包括t(t为正整数)个线性反馈移位寄存器111(LFSR),每个线性反馈移位寄存器111包括M(M为正整数)个数据寄存器1111,借此,每个线性反馈移位寄存器111的输出为M位的最小多项式余式,每路求余子单元11可以输出t个M位的最小多项式余式。
多路控制单元20用于暂存所述最小多项式求余单元10所产生的中间数据,并将所述最小多项式余式交由伴随式运算单元30处理。具体的,多路控制单元20包括复用器21、解复用器22及p个与求余子单元11对应的t*M位的寄存器组,复用器21和解复用器22均与最小多项式求余单元10连接,每个寄存器组用于存储最小多项式求余单元10所产生的中间数据以及每一路的最小多项式余式。优选的是,每一路寄存器组连接有一个计数器,且每一路寄存器组和一个计数器组成一电路单元(U0~Up-1),各电路单元连接于复用器21和解复用器22之间,各电路单元还通过一复用器23连接于伴随式运算单元30,用于当所述寄存器组对应的求余子单元11完成该路的求余运算时,就将该路的最小多项式余式输出给伴随式运算单元30进行伴随式的运算操作。需要说明的是,本发明的最小多项式求余单元10在一个码长周期中的不同循环中所处理的数据并不一定是同一路的数据,其可以是各路数据交替进行除法求余操作,而多路控制单元20中的的寄存器组会保存每一路的中间数据。
伴随式运算单元30用于根据最小多项式余式计算获取伴随式。具体的,伴随式运算单元30包括t个运算子单元31对应于每一路的t个M位的最小多项式余式,并根据其中一路输入的M位的最小多项式余式,计算输出M位的伴随式。借此完成伴随式的计算。本发明一实施例中的运算子单元31的结构如图7所示,这t个组合逻辑电路可以在一个循环过程内产生t个M位的伴随多项式,相对于现有的伴随式代入运算而言,避免了迭代运算带来的延时。
下面具体说明本发明的计算过程。从BCH码的定义及现有背景技术内容可知,若码以∝,∝2,...,∝ε×t为根,则码的生成多项式g(x)=LCM(m1(x),m2(x),...,m2t(x)),式中mi(x)是∝i(1<=i<=2*t)的最小多项式,最高幂次为M。本发明中将伴随式计算中的除数由生成多项式换成最小多项式,从而有:r(x)=q(x)*g(x)+s(x)=qi(x)*mi(x)+si(x),
si(x)实际是r(x)对mi(x)的余式,因此只需要求出这个余式,再将其代入即可得到所有的si
r(∝i)=qi(∝i)*mi(∝i)+si(∝i)=si(∝i),1<=i<=2*t,
上式中的si(∝i)就是伴随式,见图7。需要说明的,该处的si(∝i)与前面的s(∝i)不同的是幂次不一样,s(∝i)是n-k次幂,而si(∝i)得幂次则不超过M,幂次的降低会使得代入运算的计算量大大减少,从而大大地减少了运算延时。
本发明一实施例中,假设每一路的数据率为200MB/s,四路并行,则总的数据率为800MB/s。又假设求余电路并行度为16,频率为400MHz,也就是说最小多项式求余单元10总的处理速度为800MB/s,可以同时处理四路数据,本发明的装置100完全满足要求。
本发明还相应的提供一种包括上述伴随式计算装置100的BCH解码器。本发明在多通道BCH解码应用中,使得多个通道可以复用同一个伴随式计算装置100,而无须每个通道都安装一伴随式计算模块,借此大大节省面积。
综上所述,本发明通过在伴随式计算装置内设置最小多项式求余单元,使其可以根据码字生成多路最小多项式余式,并将多路最小多项式余式传送到多路控制单元进行暂存。多路控制单元收到触发信号后将最小多项式余式交由伴随式运算单元处理,伴随式运算单元分路计算得到对应的伴随式,借此避免了迭代运算带来的延时,可实现装置的多路复用,节省面积。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (7)

1.一种伴随式计算装置,应用于BCH解码器,其特征在于,所述伴随式计算装置包括:
最小多项式求余单元,包括p(p为正整数)路求余子单元,每路求余子单元用于根据输入的码字,计算输出码字的最小多项式余式;
多路控制单元,用于暂存所述最小多项式求余单元所产生的中间数据,并将所述最小多项式余式交由伴随式运算单元处理;
伴随式运算单元,用于根据所述最小多项式余式计算获取伴随式。
2.根据权利要求1所述的伴随式计算装置,其特征在于,所述求余子单元包括t(t为正整数)个线性反馈移位寄存器,每个所述线性反馈移位寄存器包括M(M为正整数)个数据寄存器,所述每个线性反馈移位寄存器的输出为M位的最小多项式余式。
3.根据权利要求2所述的伴随式计算装置,其特征在于,所述多路控制单元包括p个与所述求余子单元对应的t*M位的寄存器组,每个所述寄存器组用于存储所述最小多项式求余单元所产生的中间数据以及每一路的最小多项式余式。
4.根据权利要求3所述的伴随式计算装置,其特征在于,所述每个寄存器组连接一计数器组成一电路单元,用于当所述寄存器组对应的求余子单元完成该路的求余运算时,将该路的最小多项式余式输出给所述伴随式运算单元。
5.根据权利要求4所述的伴随式计算装置,其特征在于,所述多路控制单元包括复用器和解复用器,均与所述最小多项式求余单元连接。
6.根据权利要求2所述的伴随式计算装置,其特征在于,所述伴随式运算单元包括t个运算子单元,每个所述运算子单元用于根据一所述M位的最小多项式余式,计算输出M位的伴随式。
7.一种包括如权利要求1~6任一项所述伴随式计算装置的解码器。
CN201210246708.6A 2012-07-17 2012-07-17 伴随式计算装置及解码器 Active CN102811066B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210246708.6A CN102811066B (zh) 2012-07-17 2012-07-17 伴随式计算装置及解码器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210246708.6A CN102811066B (zh) 2012-07-17 2012-07-17 伴随式计算装置及解码器

Publications (2)

Publication Number Publication Date
CN102811066A CN102811066A (zh) 2012-12-05
CN102811066B true CN102811066B (zh) 2015-06-10

Family

ID=47234663

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210246708.6A Active CN102811066B (zh) 2012-07-17 2012-07-17 伴随式计算装置及解码器

Country Status (1)

Country Link
CN (1) CN102811066B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6693187B2 (ja) * 2016-03-11 2020-05-13 富士ゼロックス株式会社 復号化装置、プログラム、及び情報伝送システム
CN106603085B (zh) * 2016-11-21 2020-04-14 建荣半导体(深圳)有限公司 生成多项式的生成方法、生成装置、编码器、控制器及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6141787A (en) * 1997-05-19 2000-10-31 Sanyo Electric Co., Ltd. Digital modulation and demodulation
CN1344439A (zh) * 1999-11-24 2002-04-10 皇家菲利浦电子有限公司 加速的Reed-Solomon纠错

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6141787A (en) * 1997-05-19 2000-10-31 Sanyo Electric Co., Ltd. Digital modulation and demodulation
CN1344439A (zh) * 1999-11-24 2002-04-10 皇家菲利浦电子有限公司 加速的Reed-Solomon纠错

Also Published As

Publication number Publication date
CN102811066A (zh) 2012-12-05

Similar Documents

Publication Publication Date Title
US20090113275A1 (en) Bch code with 256 information bytes and up to 8 bytes of parity check elements
CN101277119B (zh) 里德所罗门码解码器硬件复用方法及其低硬件复杂度解码装置
CN101882467B (zh) Ecc参数可配置的存储器控制装置
US9645886B2 (en) Digital error correction
CN101902228B (zh) 快速循环冗余校验编码方法及装置
KR20080040706A (ko) 데이터 스트림에 주기적 덧붙임 검사(crc)를 수행하기위한 crc 생성 회로를 구성하는 방법 및 장치
Lee et al. A high-speed low-complexity concatenated BCH decoder architecture for 100 Gb/s optical communications
CN102231631B (zh) Rs编码器的编码方法及rs编码器
CN102820892B (zh) 一种用于并行bch编码的电路、编码器及方法
CN102811066B (zh) 伴随式计算装置及解码器
CN102761340B (zh) 一种bch并行编码电路
CN102201882A (zh) 一种线性分组码编码参数的盲识别方法
CN101425875B (zh) 一种解码器
CN100546206C (zh) 一种实现解码的电路和方法
CN106201433B (zh) 一种基于rs码的有限域乘法器
US20080140740A1 (en) Systems and methods for processing data sets in parallel
CN103401566A (zh) 参数化的bch纠错码的并行编码方法及装置
CN100517214C (zh) 一种实现二进制多项式运算的硬件配置方法及硬件系统
CN100459438C (zh) 里德所罗门解码器的关键方程与错误值求解优化电路
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
CN101931415B (zh) 编码装置及方法、译码装置及方法和纠错系统
CN107688506A (zh) 一种流水结构的bch译码系统
US10623018B2 (en) Method of arrangement of an algorithm in cyclic redundancy check
CN102568604B (zh) Bch编码器和解码器
US8245103B2 (en) Arithmetic circuit for concatenated codes and address control method

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