CN101051842A - 错误更正码的解码系统 - Google Patents
错误更正码的解码系统 Download PDFInfo
- Publication number
- CN101051842A CN101051842A CN 200610072063 CN200610072063A CN101051842A CN 101051842 A CN101051842 A CN 101051842A CN 200610072063 CN200610072063 CN 200610072063 CN 200610072063 A CN200610072063 A CN 200610072063A CN 101051842 A CN101051842 A CN 101051842A
- Authority
- CN
- China
- Prior art keywords
- sign
- error
- decode system
- erasure
- code
- 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.)
- Granted
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
本发明是涉及错误更正码的解码系统,用以更正一接收的编码信号。一征兆计算及错误值计算装置接受该编码信号的一字元码,以进行征兆值计算并输出一征兆多项式,且接受一擦除及错误求值多项式及一错误位置,以进行错误值估算并输出一错误值,用以更正该编码信号。一键方程式解答装置接收该征兆多项式以产生一擦除及错误位置多项式及该擦除及错误求值多项式。一搜寻错误位置装置接收该擦除及错误位置多项式,进行搜寻并输出该错误位置。由于错误及擦除值的计算以及征兆值的计算不会同时发生,因此可达到硬件共享,大幅度降低了硬件的成本。
Description
技术领域
本发明涉及一种错误更正码的解码系统,特别涉及一种可大量节省硬件成本的错误更正码的解码系统。
背景技术
图1是已知的并行处理擦除(erasure)及错误(errata)更正解码器100的方框图,其包含一征兆计算装置110(syndrome calculation)、一征兆修正装置120(syndrome modification)、一键方程式解答装置130(key equation solving)、一钱氏搜寻装置(Chein Search)140及一错误值计算装置150(errataevaluation)。
征兆计算装置110接收编码信号的一字元码R(x),进行征兆值计算以输出一征兆多项式S(x)。图2是一已知征兆计算装置110的方框图,其主要由多个模2(module 2)加法器210、暂存器220及有限场(finite fields)的常数乘法器230所组成,其中r0,r1,…,rn-2,rn-1为字元码R(x),αi为错误位置(errataposition)。征兆修正装置120(syndrome modification)修正该征兆多项式S(x),以让键方程式解答装置130(key equation solving)有效地产生一擦除及错误位置多项式σ(x)及一擦除及错误求值多项式ω(x)。图3是一已知错误值计算装置150的方框图,其主要由模2加法器310、暂存器320及有限场的常数乘法器330所组成。
如图1所示,由于为了提高更正解码器的解码速度,通常将更正解码器分成三个以上的排程(pipeline)。而征兆值计算通常不会和其他运算并在同一个排程。由于计算征兆值时必须不停的从存储器内读取数据,而解码完成之后,需要被更正的数据又必须被写回存储器,因此增加了控制存储器存取的复杂度。此外,由于征兆值计算会与其他排程同时进行,因此需要一套专用的电路做征兆值的计算,硬件成本也会跟着增加。由此可知,已知的并行处理擦除(erasure)及错误(errata)更正解码器在实用性上仍有改善的空间。
发明内容
本发明的目的是在提供一种错误更正码的解码系统,用以通过硬件共享而减少设计解码系统时所需的门数(gate count),以大幅降低硬件的成本。
为了达到上述目的,本发明提出一种错误更正码的解码系统,其由一数据通道(data channel)接收一经由通道编码(channel coding)的编码信号,通过编码信号中的冗余信息(redundancy information)以更正所接收的编码信号,该解码系统包括一征兆计算及错误值计算装置、一键方程式解答装置及一搜寻错误位置装置。该征兆计算及错误值计算装置接收该编码信号的一字元码,以进行征兆值计算并输出一征兆多项式,且接收一擦除及错误求值多项式及一错误位置,以进行错误值估算并输出一错误值,用以更正该编码信号的字元码。该键方程式解答装置接收该征兆多项式以产生一擦除及错误位置多项式及该擦除及错误求值多项式。该搜寻错误位置装置接收该擦除及错误位置多项式,使用试错法进行搜寻并输出该错误位置。
采用本发明系统,由于错误及擦除值的计算以及征兆值的计算不会同时发生,因此可以实现硬件共享,从而大幅降低硬件成本。
附图说明
图1是已知的并行处理擦除及错误更正解码器的方框图;
图2是已知征兆计算装置的方框图;
图3是已知错误值计算装置的方框图;
图4是本发明的错误更正码解码系统的方框图;
图5是本发明的征兆计算及错误值计算装置的方框图;
图6是本发明的乘法累加器的方框图;
图7是本发明错误更正码解码系统应用于一光盘播放系统的示意图;
图8是一已知的光盘播放系统执行解码的示意图;
图9是一使用本发明的错误更正码解码系统的光盘播放系统执行解码的示意图;
图10是本发明的错误更正码解码系统应用于一数字多功能光盘播放系统的示意图;
图11是DVD的播放系统中一个错误更正码的数据区块;
图12是一已知的DVD播放系统执行解码的示意图;
图13是一使用本发明错误更正码解码系统的DVD播放系统执行解码的示意图。
具体实施方式
本发明的错误更正码的解码系统是由一数据通道(data channel)接收一经由通道编码(channel coding)的编码信号,通过编码信号中的冗余信息(redundancy information)以更正所接收的编码信号。该数据通道可为一无线通道(wireless channel),例如IEEE802.11a、IEEE802.11b或是IEEE802.16中所定义的射频通道。该数据通道也可为一有线通道(wire channel)。例如将本发明的错误更正码解码系统使用于光盘(compact disk,CD)、数字录音带(digital audio tape,DAT)、迷你唱盘(mini disc,MD)、或数字多功能光盘(Digital Versatile Disc,DVD)之中。
图4是本发明的错误更正码的解码系统400的方框图。该解码系统包括一征兆计算(syndrome calculation)及错误值计算(errata evaluation)装置410、一征兆修正装置420(syndrome modification)、一键方程式解答装置430(keyequation solving)及一搜寻错误位置装置440。
该征兆计算及错误值计算装置410接收该编码信号的一字元码R(x),用于进行征兆值(syndrome)计算以输出一征兆多项式S(x)。并接收该键方程式解答装置430所产生的一擦除及错误求值多项式(erasure and errata evaluatorpolynomial)ω(x)及该搜寻错误位置装置440所输出的一错误位置αi,以进行错误值估算,并输出一错误值,用以更正该编码信号的字元码。
该征兆修正装置420耦合至该征兆计算及错误值计算装置410,用于修正该征兆多项式S(x),以让键方程式解答装置430有效地产生一擦除及错误位置多项式(erasure and errata locator polynomial)σ(x)及该擦除及错误求值多项式ω(x)。该搜寻错误位置装置440接收该擦除及错误位置多项式σ(x),使用试错法(trial-and-error)进行搜寻并输出该错误位置σ′(α-i),其中,该试错法最好为一Chein搜寻(Chein search)方法。
本发明的错误更正码的解码系统400为一个只有两个排程的解码器结构。在第一个排程中,该搜寻错误位置装置440搜寻错误及擦除位置,该征兆计算及错误值计算装置410计算错误及擦除值以及计算征兆值。而在第二个排程中,该征兆修正装置420及键方程式解答装置430(key equation solving)则修改征兆值以及解方程式。由于在第一个排程中,错误及擦除值计算以及征兆值计算不会同时发生,因此执行这些运算所需的暂存器、乘法器以及加法器可以共用,从而大幅降低硬件的成本。
假设GF(2m)为一个有2m元素的有限场(finite fields),α为GF(2m)内的一个原始元素(primitive element),C为一个在GF(2m)上的(n,k)循环码(cycliccode)。该循环码最好为一理德·所罗门码(Reed-Solomon,RS)或BCH(Bose-Chaudhuri-Hocquenghem)码,其最小距离(minimum distance)为d=n-k+1。R(x)为收到的编码信号的字元码,则第i个征兆值(syndrome)Si的定义为:
根据Forney规则,第i个征兆值Si可以改写为:
由公式(1),可用一简单的结构来进行征兆值的计算。就图2所示已知征兆计算装置110而言,其主要由多个模2加法器210、暂存器220及有限场的常数乘法器230所组成,其中r0,r1,…,rn-2,rn-1为字元码R(x),αi为错误位置(errata position)。如图2所示,在此结构中,总共需要(n-k)个m位的暂存器220、(n-k-1)个有限场的常数乘法器230以及(n-k)个有限场加法器220。
当擦除及错误位置多项式σ(x)以及擦除及错误求值多项式ω(x)在键方程式解答装置130已经求得,则擦除及错误值可由下列的Forney方程式求得:
从Forney方程式可知,为了求得擦除及错误值,必须先算出ω(
Xi -1)的值。以图3所示已知用以计算ω(
Xi -1)的错误值计算装置150而言,其主要由多个模2加法器310、暂存器320及有限场的常数乘法器330所组成。如图3所示,在此结构中,总共需要(n-k-1)个m位的暂存器320、(n-k-1)个有限场的常数乘法器330以及(n-k-1)个有限场加法器310。在已知结构中,因为错误及擦除值计算以及征兆值会同时执行,由图2及图3可知总共需要(2n-2k-1)个m位的暂存器、(2n-2k-2)个有限场的常数乘法器以及(2n-2k-1)个有限场加法器。
在本发明中,由于错误及擦除值计算以及征兆值计算不会同时发生,因此图2与图3中的暂存器、乘法器以及加法器可以共用。本发明的征兆计算及错误值计算装置410是综合图2与图3,提出一个共用的结构,用以计算错误及擦除值以及征兆值。图5是本发明征兆计算及错误值计算装置410的方框图。由图5可知,为了计算错误及擦除值以及征兆值,总共只需要(n-k)个m位的暂存器、(n-k)个有限场的常数乘法器,本发明这方面的硬件结构只有已知结构的1/2。
图5是本发明征兆计算及错误值计算装置410的方框图。其主要由n-k个由模2加法器510、暂存器520及乘法累加器(multiplier-accumulator,MAC)530所组成单元构成, 图6是本发明乘法累加器(MAC)530的方框图,其主要由有限场的常数乘法器610、模2加法器620及多路转换器630所组成。
当要计算征兆值时,一控制信号Ctrl为高电位“1”,多路转换器630选择ri,其中ri为该编码信号的字元码R(x)=[r0,r1,…,rn-2,rn-1]的第i个系数。当要计算擦除及错误值(erasure and errata value)时,该控制信号Ctrl为低电位“0”,如此可达到硬件共享的目的。
为了能有效率的配合外部存储器的存取,本发明的错误更正码的解码系统400分成二个排程(pipes)。该征兆计算及错误值计算装置410及该搜寻错误位置装置440是在第一个排程中计算征兆值及搜寻错误及擦除位置、计算错误及擦除值。该征兆修正装置420及该键方程式解答装置430是在第二个排程中修改征兆值以及解一键方程式(key equation),用以获得擦除及错误位置多项式σ(x)及擦除及错误求值多项式ω(x)。
图7是本发明错误更正码的解码系统400应用于一光盘(compact disk,CD)播放系统的示意图。如图7所示,错误更正码的解码系统400执行交错编排理德·所罗门码(cross-interleaving Reed-Solomon code,CIRC)的数据交织(interleaving)时,会用一个存储器710来储存数据。因此本发明的错误更正码的解码系统400在第一个排程中搜寻错误及擦除位置以及计算错误及擦除值的同时,可对存储器710执行写入的动作,而计算征兆值时可对存储器710执行读出的动作。
图8是一已知的光盘播放系统(CD)执行解码的示意图。如图8所示,在第一个排程P1中,错误更正码解码系统100执行c1(n)的征兆值计算。在第二个排程P2中,执行c2(n-1)的键方程式解答(key equation solving)。在第三个排程P3中,执行c1(n-1)的Chein搜寻。
图9是一使用本发明错误更正码解码系统400的光盘播放系统(CD)执行解码的示意图。如图9所示,在第一个排程P1前段中,该搜寻错误位置装置440执行c1(n-1)的Chein搜寻,以搜寻错误及擦除位置σ′(α-i)。同时,该征兆计算及错误值计算装置410则计算c1(n-1)的错误及擦除值,并将相关结果写入存储器710中。由于本发明的错误更正码解码系统400硬件共享,在第一个排程P1后段中,该征兆计算及错误值计算装置410则计算c1(n)的征兆值,计算c1(n)征兆值时则对存储器710执行读出的动作。在第二个排程P2中,征兆修正装置420及键方程式解答装置430执行c2(n-1)的键方程式解答(key equation solving)。也就是说,本发明的错误更正码解码系统400在第一个排程P1中搜寻错误及擦除位置以及计算错误及擦除值时,对存储器710执行写入的动作,而计算征兆值时对存储器710执行读出的动作。
图10是本发明错误更正码的解码系统400应用于一数字多功能光盘(DVD)播放系统的示意图。在DVD的播放系统中是使用理德·所罗门乘积码(Reed-Solomon product Code,RSPC)作为错误更正码。图11显示DVD的播放系统中一个错误更正码(error correction code,ECC)的数据区块1110。如图11所示,总共有208行与182列,其中,每一行为一个(182,172)的理德·所罗门码,而每一列为一个(208,192)的理德·所罗门码。由于该ECC数据区块1110的数据量很大,故在DVD播放系统中会使用两个存储器。如图10所示,第一存储器1010通常为动态随机存取存储器(DRAM),以存放大量ECC数据区块1110的数据,而第二存储器1020通常为静态随机存取存储器(SRAM)暂存必须被解码的行或列。利用此种配置,以达到最佳效能/价格比(performance/price)。
图12是一已知的DVD播放系统执行解码的示意图。如图12所示,在第一个排程P1中,错误更正码解码系统100执行(n)的征兆值计算。在第二个排程P2中,执行(n-1)的键方程式解答(key equation solving)。在第三个排程P3中,执行(n-2)的Chein搜寻。
图13是一使用本发明错误更正码解码系统400的DVD播放系统执行解码的示意图。如图13所示,在第一个排程P1前段中,该搜寻错误位置装置440从第一存储器1010中读取该擦除及错误位置多项式σ(x)的相关数据,以执行(n-2)的Chein搜寻,用以搜寻错误及擦除位置σ′(α-i)。该征兆计算及错误值计算装置410从第一存储器1010中读取该擦除及错误求值多项式ω(x)的相关数据,计算(n-2)的错误及擦除值,并将相关结果写入第二存储器1020中。
由于本发明的错误更正码解码系统400硬件共享,在第一个排程P1后段中,该征兆计算及错误值计算装置410则计算(n)的征兆值,计算(n)征兆值时则对第二存储器1020执行读出的动作,并将(n)的征兆多项式S(x)写入该第一存储器1010中。在第二个排程P2中,征兆修正装置420由该第一存储器1010中读出该征兆多项式S(x),修正该征兆多项式S(x),键方程式解答装置430依据该修正后的征兆多项式S(x)执行(n-1)的键方程式解答(keyequation solving)。也就是说,本发明的错误更正码解码系统400在第一个排程P1中,搜寻错误及擦除位置以及计算错误及擦除值时,对第一存储器1010执行读取的动作,再对第二存储器1020执行写入的动作。而在第一个排程P1中,计算征兆值时,对第二存储器1020执行读取的动作,再对第一存储器1010执行写入的动作。
由以上的说明可知,本发明的该征兆计算及错误值计算装置410综合已知的征兆计算装置110及错误值计算装置150,提出一个共用的结构,用以计算该错误及擦除值以及该征兆值。由于第一个排程中,该错误及擦除值的计算以及该征兆值的计算不会同时发生,因此执行这些运算所需的暂存器、乘法器以及加法器可以共用,而达到硬件共享的目的,大幅降低了硬件的成本。由图5可知,本发明的征兆计算及错误值计算装置410总共只需要(n-k)个m位的暂存器、(n-k)个有限场的常数乘法器,本发明这方面的硬件结构成本只有已知结构成本的1/2。
上述实施例仅是为了方便说明而举例而已,本发明所要求的权利范围应以权利要求所述为准,而非仅限于上述实施例。
Claims (9)
1、一种错误更正码的解码系统,其由一数据通道接收一经由通道编码的编码信号,根据编码信号中的冗余信息以更正所接收的编码信号,该解码系统包括:
一征兆计算及错误值计算装置,接收该编码信号的一字元码,以进行征兆值计算并输出一征兆多项式,且接收一擦除及错误求值多项式及一错误位置,以进行错误值估算并输出一错误值,用于更正该编码信号的字元码;
一键方程式解答装置,接收该征兆多项式以产生一擦除及错误位置多项式及该擦除及错误求值多项式;以及
一搜寻错误位置装置,接收该擦除及错误位置多项式,使用试错法进行搜寻并输出该错误位置。
2、如权利要求1所述的解码系统,其中,还包含一征兆修正装置,耦合至该征兆计算及错误值计算装置,用于修正该征兆多项式,用以让该键方程式解答装置有效地产生一擦除及错误位置多项式及一擦除及错误求值多项式。
3、如权利要求2所述的解码系统,其中,该解码系统是一个具有两个排程的解码系统结构。
4、如权利要求3所述的解码系统,其中,该征兆计算及错误值计算装置及该搜寻错误位置装置是在第一个排程中计算征兆值、搜寻错误及擦除位置、计算错误及擦除值。
5、如权利要求4所述的解码系统,其中,该键方程式解答装置是在第二个排程中修改征兆值以及解一键方程式。
6、如权利要求1所述的解码系统,其中,该搜寻错误位置装置的试错法为钱氏搜寻。
7、如权利要求1所述的解码系统,其中,该数据通道为一无线通道或一有线通道。
8、如权利要求1所述的解码系统,其中,该编码信号为一循环码。
9、如权利要求8所述的解码系统,其中,该编码信号为一BCH码或一理德·所罗门码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006100720633A CN101051842B (zh) | 2006-04-06 | 2006-04-06 | 错误更正码的解码系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006100720633A CN101051842B (zh) | 2006-04-06 | 2006-04-06 | 错误更正码的解码系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101051842A true CN101051842A (zh) | 2007-10-10 |
CN101051842B CN101051842B (zh) | 2011-05-04 |
Family
ID=38783066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006100720633A Expired - Fee Related CN101051842B (zh) | 2006-04-06 | 2006-04-06 | 错误更正码的解码系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101051842B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109450458A (zh) * | 2018-12-26 | 2019-03-08 | 吉林工程技术师范学院 | 基于条件成三错误概率确定线性分组码性能界的方法 |
-
2006
- 2006-04-06 CN CN2006100720633A patent/CN101051842B/zh not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109450458A (zh) * | 2018-12-26 | 2019-03-08 | 吉林工程技术师范学院 | 基于条件成三错误概率确定线性分组码性能界的方法 |
CN109450458B (zh) * | 2018-12-26 | 2022-06-28 | 吉林工程技术师范学院 | 基于条件成三错误概率确定线性分组码性能界的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101051842B (zh) | 2011-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI308321B (zh) | ||
US8255765B1 (en) | Embedded parity coding for data storage | |
KR100370239B1 (ko) | 고속 블럭 파이프라인 구조의 리드-솔로몬 디코더에적용하기 위한 메모리 장치와 메모리 액세스 방법 및 그메모리 장치를 구비한 리드-솔로몬 디코더 | |
US8140939B2 (en) | Flash error correction | |
US20050138533A1 (en) | Encoding/decoding device using a reed-solomon encoder/decoder | |
US7900122B2 (en) | Simplified RS (Reed-Solomon) code decoder that obviates error value polynomial calculation | |
US20120317457A1 (en) | High-performance ecc decoder | |
US9391641B2 (en) | Syndrome tables for decoding turbo-product codes | |
WO2008021045A2 (en) | System and method for correcting errors in non-volatile memory using product codes | |
US7810015B2 (en) | Decoding with a concatenated error correcting code | |
US20070061688A1 (en) | Decoding error correction codes using a modular single recursion implementation | |
CN110908827A (zh) | 用于NAND Flash闪存纠错的并行BCH解码方法 | |
US20180034482A1 (en) | Apparatuses and methods for interleaved bch codes | |
CN101051842A (zh) | 错误更正码的解码系统 | |
US7774676B2 (en) | Methods and apparatuses for generating error correction codes | |
CN107688506B (zh) | 一种流水结构的bch译码系统 | |
US8255777B2 (en) | Systems and methods for locating error bits in encoded data | |
JPH04365139A (ja) | 誤り訂正処理用シンドローム演算回路 | |
CN1688110A (zh) | 基于可寻址存储器的里德·索罗门译码器 | |
CN101777922A (zh) | 用于BCH译码器的高速低延时Berlekamp-Massey迭代译码电路 | |
CN1180424C (zh) | 光盘解码系统及其解码方法 | |
CN1134897C (zh) | 里德-索罗门码的快速译码方法及编译码器 | |
CN100339833C (zh) | 用于编码数据的电路和方法以及数据记录器 | |
CN1324602C (zh) | 盘片的解码系统及其方法 | |
CN1250980A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110504 Termination date: 20170406 |