WO2010054526A1 - Rs decoding device and key multinomial solving device used by rs decoding device - Google Patents

Rs decoding device and key multinomial solving device used by rs decoding device Download PDF

Info

Publication number
WO2010054526A1
WO2010054526A1 PCT/CN2009/000742 CN2009000742W WO2010054526A1 WO 2010054526 A1 WO2010054526 A1 WO 2010054526A1 CN 2009000742 W CN2009000742 W CN 2009000742W WO 2010054526 A1 WO2010054526 A1 WO 2010054526A1
Authority
WO
WIPO (PCT)
Prior art keywords
module
error
input
difference
polynomial
Prior art date
Application number
PCT/CN2009/000742
Other languages
French (fr)
Chinese (zh)
Inventor
王帅
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2010054526A1 publication Critical patent/WO2010054526A1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1525Determination and particular use of error location polynomials
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes

Definitions

  • the present invention relates to an RS decoding apparatus and a key polynomial solving apparatus therefor. Background technique
  • the RS code is a class of BCH codes with strong error correction capability. It is also a typical algebraic geometry code. It was first constructed in 1960 by Reed and Solomon. RS codes are widely used in communication systems such as deep space communications, wireless systems, and data storage systems. The current high rate of data transmission requirements has facilitated the development of high speed RS decoding devices.
  • the whole process of RS decoding can be divided into three steps (as shown in Figure 1):
  • the first step is to complete the calculation of the companion matrix (101):
  • the second step applies an iterative method to solve the key polynomial (102 ): using the 2t coefficients obtained in the first step through the BM
  • the iterative algorithm respectively obtains the error location polynomial and the coefficient of the error value polynomial, and the highest power of the two polynomials is t;
  • the third step searches for the error position estimation error value (103): Substituting all the values representing the codeword position into the error position Polynomial, if the error position polynomial result is 0, it indicates that the position is the error position, and then the corresponding error value is calculated for the found error position.
  • the key to the above RS decoding process lies in the second step of solving the key polynomial (102).
  • the BM algorithm is simple and easy to implement, but due to the finite field inversion operation in the BM iterative algorithm, the inverse operation consumes a large amount of hardware. The resource is slow in operation. If it is applied to the BM iterative operation, it will cause a large critical path delay. Therefore, the IBM algorithm without inversion is developed. Although this algorithm improves the performance of the decoding system, it is relatively Euclidean. The algorithm still has the disadvantage that the critical path is long and the hardware structure is irregular. Summary of the invention The object of the present invention is to overcome the deficiencies of the prior art, to improve the IBM algorithm architecture of the RS decoding apparatus, and to disclose an RS decoding apparatus and a key polynomial solving apparatus therefor.
  • the present invention discloses an RS decoding apparatus, including an accompanying matrix calculation module 101 for sequentially processing input code words, a key polynomial solving module 102, and an error position search and error value calculation module 103; the key polynomial solving module 102 further
  • the difference calculation module 201 for calculating the error value polynomial coefficient and the error position update module 202 for calculating the error position polynomial;
  • the difference calculation module 201 includes the incremental difference calculation basic unit PEi and the controller 402, i of the 2t order
  • the value range is 0, 1, ... 2t-l; 0, the initial value of the intermediate variable and the incremental difference is input from the (2t-l)-level basic unit, and the control signal ( and the adjoint polynomial coefficient S are input in parallel for each stage).
  • the input of the incremental difference calculation base unit PEi is the intermediate variable W, the incremental difference and ⁇ W , the output is the intermediate variable ? ⁇ ], the incremental difference and ⁇ W ; and both pass the first multiplier
  • the obtained product and the sum of the product of the W and the intermediate variable obtained by the second multiplier are input to the first register 311, thereby obtaining ' i+1 (r) and (r) are also controlled by the selector signal M by a second choice.
  • the W strobe then generates an intermediate variable input second multiplexer through the second register 321.
  • the error value polynomial coefficient output by the difference calculation module 201 is input to the error location update module 202, and the error location update module 202 outputs the updated error location polynomial, and the output of the difference calculation module 201 and the error location update module 202.
  • the error location search and error value calculation module 103 is further input to calculate the error position and the error value.
  • the difference calculation module 201 calculates the incremental difference according to the input adjoint polynomial coefficient S and the error position polynomial coefficient (W), and then the control module 204 Generating a corresponding calculation intermediate amount and control signal to the error location update module 202; the error location update module 202 calculates an updated error location polynomial coefficient ( ⁇ . . . ( W ) feedback to the difference calculation Module 201, the above process is iterated 2t times, and the final error position polynomial coefficient (... ⁇ ) and the corresponding incremental difference ( r ) are obtained.
  • the RS decoding apparatus further includes an error correction module, wherein the input codeword is input to the error correction module through the buffer and the output of the error location search and error value calculation module 103, respectively, to obtain decoding. Output.
  • the invention discloses a key polynomial solving device used by an RS decoding device, comprising a difference calculating module 201 for solving an error value polynomial coefficient and an error position updating module 202 for calculating an error position polynomial coefficient; the difference calculating module 201 comprises a 2t level The incremental difference calculation of the basic unit PEi and the controller 402, the range of values of the i is 0, 1, ...
  • the difference calculation module 201 calculates the incremental difference according to the input adjoint polynomial coefficient S and the error position polynomial coefficient ( ⁇ . ( W ) and then generates a corresponding calculation intermediate amount and control by the control module 204.
  • Signal, sent to the error location update module The error location update module 202 calculates an updated error location polynomial coefficient ( ⁇ . . . ( W ) is fed back to the difference calculation module 201 , and the above process is iterated 2 times to obtain a final error location polynomial coefficient ( . .. ... ⁇ ) and the corresponding incremental difference ( r ).
  • the key polynomial solving device disclosed by the invention realizes the calculation of the polynomial coefficient of the error value in the process of RS decoding by using the IBM algorithm, and the structural rule is adopted by the simple basic
  • the unit (PEi) is extended and flexibly constructed into decoders with different decoding modes.
  • PEi processing units
  • the RS decoding device has high-speed processing performance and has a small critical path delay, which can meet the needs of a higher system operating frequency.
  • Figure 1 is a hardware block diagram of an RS decoding device
  • FIG. 2 is a hardware block diagram of an implementation of an IBM algorithm in the prior art
  • FIG. 3 is a basic block diagram of a difference calculation module of the present invention.
  • FIG. 4 is a block diagram of a difference calculation module of the present invention.
  • Figure 5 is a block diagram of an improved IBM algorithm circuit application in the RS decoder.
  • the present invention will be further described in detail below in conjunction with the drawings and specific embodiments.
  • the conventional RS decoder device is shown in FIG. 1.
  • the key of the entire RS decoding system is to solve the key polynomial solving module 102 of the key equation. Therefore, the implementation of this module becomes the key to affect the performance of the entire RS decoding device.
  • the classical BM iterative algorithm requires complex finite field inversion, and the finite field inversion operation consumes hardware resources and the operation speed is slow, it has a great influence on the critical path delay of the system.
  • the IBM algorithm eliminates the inversion operation, it still has the disadvantages of long critical path and irregular hardware architecture.
  • the present invention therefore provides an improved IBM law architecture.
  • the traditional IBM algorithm structure is shown in Figure 2 (a), which includes a difference calculation module 201 and an error location update module 202.
  • the structure of the difference calculation module 201 is as shown in FIG. 2(b).
  • the difference calculation module 201 according to an initial incremental difference value calculating polynomial coefficients S and the associated error location polynomial coefficients (W — (r)) is input, then generated by the control module 204 and the corresponding ⁇
  • the control signal is sent to the error location update calculation module 202 (the control module 204 is part of the difference calculation module 201), and the error location update module 202 calculates and updates the error location polynomial coefficient (...W) and feeds it back to the difference calculation module 201.
  • a difference calculation module 201 includes a t-stage shift memory group 203 (Reg
  • the adjoint polynomial coefficient S is input from the first stage Reg (0) of the shift register group 203, the error position polynomial coefficient ( ⁇ ) .
  • Each of At ( r ) ) is multiplied by the output of the corresponding register, and the resulting product is input to the addition tree, the addition of the addition tree and the input control module 204, to obtain the corresponding incremental difference ⁇ W, the calculated intermediate amount ⁇ And the control signal M c ⁇ .
  • the conventional IBM algorithm structure has two disadvantages: 1.
  • the number of register groups 203 will vary with the error correction capability of the system.
  • the present invention is improved from the algorithm, as shown in the conventional IBM algorithm shown in Fig. 2, the incremental difference is obtained by multiplying and accumulating the adjoint coefficient S and the error position polynomial coefficient ( ... ()), which results in a longer Multiply and accumulate key paths, and the structure is irregular.
  • the improved algorithm structure uses the same hardware structure to iteratively derive the incremental difference ⁇ and the error location polynomial system.
  • the algorithm improvements are as follows:
  • the error position polynomial coefficient update calculation module 202 in the original algorithm has the following formula:
  • Equation (4) is an improved IBM algorithm that uses an iterative method to find incremental differences.
  • Figure 3 (a) shows the basic unit of the incremental difference calculation of the present invention, which greatly reduces the delay of the critical path due to the elimination of the addition tree.
  • the input of the basic unit of the incremental difference calculation module is +1 ( ), , the output is the product of both &W, ) and ⁇ 3 ⁇ 4( ; versus.
  • the sum of the product of W and the intermediate variable is input to the first register 311, thereby obtaining 'W;
  • S M (r) and ⁇ (r) are also gated by the control signal M c W through the second selector and then passed through the second register 321 Generate the intermediate variable ⁇ W.
  • Figure 3 (b) is a simplified block diagram of the basic unit of the incremental difference calculation module of the present invention, as shown in the figure, the i-th level basic unit PEi, the input amount, and the sum. After W processing, output 'W, ) and . W , and is gated by the control signal M c W , and outputs 'W.
  • FIG. 1 is a simplified block diagram of the basic unit of the incremental difference calculation module of the present invention, as shown in the figure, the i-th level basic unit PEi, the input amount, and the sum.
  • FIG. 4 is a hardware block diagram of a difference calculation module of the improved IBM algorithm according to the present invention, including a basic unit (PE0...PE2t-l) and a controller 402 connected in sequence of 2t levels; 0, and ⁇ from the second (2t) -l) level basic unit input, control signal ( and accompanying polynomial coefficient S are input in parallel to each level of basic unit, feedback generated by level 0 basic unit is returned to controller 402, generating incremental difference ⁇ , calculating intermediate quantity and control signal M c (r)
  • the present invention proposes an improved implementation of the IBM algorithm in the RS decoder, which has the following features:
  • the RS decoding device implemented by this circuit has a small critical path delay and can meet the needs of a higher system operating frequency.
  • the circuit has the characteristics of structural rules. When constructing RS decoders with different error correction capabilities, only a corresponding number of processing units (PEi) can be added.
  • the improved IBM algorithm proposed by the present invention implements an RS decoder device, which can be flexibly constructed by a simple basic unit (PEi) and configured into decoders of different decoding modes. And the decoding device has the performance of high speed processing.
  • PEi simple basic unit
  • FIG. 5 is a block diagram of the improved IBM algorithm circuit application in the RS decoder.
  • the input codeword is used to calculate the adjoint polynomial coefficients, and the input is simultaneously input.
  • the calculation process in the difference calculation module 502 is shown in FIG. 4, and the workflow is as follows: setting the register group (.( r )...
  • the obtained coefficient of the error value polynomial is output to the error position search and error value calculation module 504 to perform the search of the error position and the calculation of the error position corresponding error value, and output to the error position update module 503 to obtain the error position.
  • Polynomial ( W ... A r ) ).
  • the above scheme can be completely used in the design of the RS decoding system, and can be implemented by the FPGA hardware, realizing the real-time processing of the decoding.
  • the detailed description of the embodiments is provided to enable any person skilled in the art to use or utilize the invention.
  • the present invention is applicable not only to the embodiments shown herein, but also to the design of different modes and RS decoding systems that require higher system operating frequencies.
  • the RS decoding apparatus disclosed by the present invention can be flexibly constructed into decoders of different decoding modes by a simple basic unit (PEi), and the decoder has high-speed processing performance and has Smaller critical path delays can meet the needs of higher system operating frequencies.
  • the key polynomial solving device disclosed by the invention realizes the calculation of the error value polynomial coefficient in the process of RS decoding by using the IBM algorithm, and has the characteristics of structural rules. Therefore, the present invention solves the shortcomings of the prior art RS decoding process, such as slow operation speed, large critical path delay, and irregular hardware structure.

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

A RS decoding device and a key multinomial solving device used by the RS decoding device are disclosed. The decoding device comprises an adjoint computing module for processing the input codes sequentially, a key multinomial solving module and a fault location searching and fault value computing module. The key multinomial solving module comprises a difference computing module used to compute the fault value multinomial coefficients and a fault location updating module used to compute the fault location multinomial. The difference computing module comprises 2t stages increment difference computing basic units PEi which is connected sequentially and a controller.

Description

RS译码装置及其使用的关键多项式求解装置  RS decoding device and key polynomial solving device used thereby
技术领域 Technical field
本发明涉及一种 RS译码装置及其使用的关键多项式求解装置。 背景技术  The present invention relates to an RS decoding apparatus and a key polynomial solving apparatus therefor. Background technique
RS码是一类具有很强纠错能力的 BCH码,也是一类典型的代数几何码, 它首先由里德(Reed )和索罗蒙(Solomon )于 1960年构造出来。 RS码被广 泛的应用于通信系统中, 例如深空通信、 无线系统以及数据存储系统。 当前 对数据传输高速率的要求促进了高速 RS译码装置的发展。  The RS code is a class of BCH codes with strong error correction capability. It is also a typical algebraic geometry code. It was first constructed in 1960 by Reed and Solomon. RS codes are widely used in communication systems such as deep space communications, wireless systems, and data storage systems. The current high rate of data transmission requirements has facilitated the development of high speed RS decoding devices.
RS译码的全过程可分为三步进行(如图 1所示): 第一步完成伴随矩阵 的计算( 101 ): RS译码系统在接收到码字之后, 由接收到的码组计算 2t (对 于 RS ( n, k )译码, t= ( n-k ) 12 )个伴随多项式系数; 第二步应用迭代方法 计算求解关键多项式(102 ) : 利用第一步求得的 2t个系数通过 BM迭代算 法分别求得错误位置多项式以及错误值多项式的系数, 两个多项式的最高次 幂都为 t; 第三步搜索错误位置估计错误值(103 ) : 将代表码字位置的所有 值代入错误位置多项式, 如果错误位置多项式结果为 0则表示该位置为误码 位置, 再针对找到的误码位置计算相对应的错误值。 上述 RS译码过程的关键在于第二步求解关键多项式(102 ) , 在这方面 BM算法简单且容易实现, 但由于 BM迭代算法中存在有限域的求逆运算, 且求逆运算消耗大量的硬件资源而运算速度慢, 若将其应用在 BM迭代运算 中会引起较大的关键路径延迟, 故后来发展了无求逆运算的 IBM算法, 这个 算法虽然改善了译码系统的性能,但相对 Euclidean算法仍有关键路径较长硬 件结构不规则的缺点。 发明内容 本发明的目的在于克服现有技术的不足之处, 改进 RS译码装置的 IBM 算法架构, 公开一种 RS译码装置及其使用的关键多项式求解装置。 The whole process of RS decoding can be divided into three steps (as shown in Figure 1): The first step is to complete the calculation of the companion matrix (101): After receiving the codeword, the RS decoding system is calculated by the received code group. 2t (for RS (n, k) decoding, t = ( nk ) 12 ) adjoint polynomial coefficients; the second step applies an iterative method to solve the key polynomial (102 ): using the 2t coefficients obtained in the first step through the BM The iterative algorithm respectively obtains the error location polynomial and the coefficient of the error value polynomial, and the highest power of the two polynomials is t; the third step searches for the error position estimation error value (103): Substituting all the values representing the codeword position into the error position Polynomial, if the error position polynomial result is 0, it indicates that the position is the error position, and then the corresponding error value is calculated for the found error position. The key to the above RS decoding process lies in the second step of solving the key polynomial (102). In this respect, the BM algorithm is simple and easy to implement, but due to the finite field inversion operation in the BM iterative algorithm, the inverse operation consumes a large amount of hardware. The resource is slow in operation. If it is applied to the BM iterative operation, it will cause a large critical path delay. Therefore, the IBM algorithm without inversion is developed. Although this algorithm improves the performance of the decoding system, it is relatively Euclidean. The algorithm still has the disadvantage that the critical path is long and the hardware structure is irregular. Summary of the invention The object of the present invention is to overcome the deficiencies of the prior art, to improve the IBM algorithm architecture of the RS decoding apparatus, and to disclose an RS decoding apparatus and a key polynomial solving apparatus therefor.
本发明公开了一种 RS译码装置, 包括对输入码字做顺序处理的伴随矩 阵计算模块 101、 关键多项式求解模块 102和错误位置搜索及错误值计算模 块 103; 所述关键多项式求解模块 102进一步包括计算错误值多项式系数的 差异计算模块 201和计算错误位置多项式的错误位置更新模块 202; 所述差 异计算模块 201 包括 2t级顺序相连的增量差异计算基本单元 PEi和控制器 402, i的取值范围为 0、 1、 ...2t-l ; 0、 中间变量 和增量差异的初始值 从第 ( 2t-l )级基本单元输入, 控制信号 ( 和伴随多项式系数 S并行输入每 一级基本单元, 第 0级基本单元产生的 反馈回所述控制器 402, 生成增量 差异 ^W、 计算中间量 和控制信号 对于 RS ( n, k )编码, 有 t= ( n-k ) /2, 其中 = 所述增量差异计算基本单元 PEi的输入是中间 变量 W、 增量差异 和^ W , 输出为中间变量?^〕、 增量差异 和^ W ; 其中 和 两者通过第一乘法器获得的乘积与 。W和中间变量 通过第 二乘法器获得的乘积的和输入第一寄存器 311 ,从而得到 ' i+1(r)和 (r)还 通过二选一选择器由控制信号 M。W选通再通过第二寄存器 321 生成中间变 量 输入第二乘法器。 The present invention discloses an RS decoding apparatus, including an accompanying matrix calculation module 101 for sequentially processing input code words, a key polynomial solving module 102, and an error position search and error value calculation module 103; the key polynomial solving module 102 further The difference calculation module 201 for calculating the error value polynomial coefficient and the error position update module 202 for calculating the error position polynomial; the difference calculation module 201 includes the incremental difference calculation basic unit PEi and the controller 402, i of the 2t order The value range is 0, 1, ... 2t-l; 0, the initial value of the intermediate variable and the incremental difference is input from the (2t-l)-level basic unit, and the control signal ( and the adjoint polynomial coefficient S are input in parallel for each stage). The basic unit, the feedback generated by the level 0 basic unit is returned to the controller 402, and the incremental difference ^W, the calculated intermediate quantity, and the control signal are encoded for RS ( n , k), where t = (nk) /2, where = The input of the incremental difference calculation base unit PEi is the intermediate variable W, the incremental difference and ^ W , the output is the intermediate variable ? ^], the incremental difference and ^ W ; and both pass the first multiplier The obtained product and the sum of the product of the W and the intermediate variable obtained by the second multiplier are input to the first register 311, thereby obtaining ' i+1 (r) and (r) are also controlled by the selector signal M by a second choice. The W strobe then generates an intermediate variable input second multiplexer through the second register 321.
进一步地, 所述差异计算模块 201输出的错误值多项式系数输入错误位 置更新模块 202, 所述错误位置更新模块 202输出更新的错误位置多项式, 所述差异计算模块 201和错误位置更新模块 202的输出再输入到所述错误位 置搜索及错误值计算模块 103计算出误码位置和误码值。  Further, the error value polynomial coefficient output by the difference calculation module 201 is input to the error location update module 202, and the error location update module 202 outputs the updated error location polynomial, and the output of the difference calculation module 201 and the error location update module 202. The error location search and error value calculation module 103 is further input to calculate the error position and the error value.
进一步地, 所述差异计算模块 201根据输入的伴随多项式系数 S以及错 误位置多项式系数( ... ... W )计算增量差异 再由控制模块 204 产生相应的计算中间量 和控制信号 , 发送给所述错误位置更新模块 202 ; 所述错误位置更新模块 202 计算得到更新的错误位置多项式系数 ( Λ。( ... W )反馈给所述差异计算模块 201 , 上述过程迭代 2t次, 得到最 终的错误位置多项式系数( ... ... ^ ) 以及相应的增量差异 (r)。 Further, the difference calculation module 201 calculates the incremental difference according to the input adjoint polynomial coefficient S and the error position polynomial coefficient (W), and then the control module 204 Generating a corresponding calculation intermediate amount and control signal to the error location update module 202; the error location update module 202 calculates an updated error location polynomial coefficient ( Λ . . . ( W ) feedback to the difference calculation Module 201, the above process is iterated 2t times, and the final error position polynomial coefficient (...^) and the corresponding incremental difference ( r ) are obtained.
进一步地, 所述 RS译码装置还包括纠错模块, 所述输入码字经过緩存 器再和所述错误位置搜索及错误值计算模块 103的输出分别同时输入所述纠 错模块, 获得译码输出。  Further, the RS decoding apparatus further includes an error correction module, wherein the input codeword is input to the error correction module through the buffer and the output of the error location search and error value calculation module 103, respectively, to obtain decoding. Output.
本发明公开了一种 RS译码装置使用的关键多项式求解装置, 包括求解 错误值多项式系数的差异计算模块 201和计算错误位置多项式系数的错误位 置更新模块 202; 所述差异计算模块 201包括 2t级顺序相连的增量差异计算 基本单元 PEi和控制器 402, i的取值范围为 0、 1、 ...2t-l ; 0、 中间变量 和增量差异的初始值 从第 (2t-l )级基本单元输入, 控制信号^ 和伴随 多项式系数 S并行输入每一级基本单元,第 0级基本单元产生的^〉反馈回所 述控制器 402 , 生成增量差异 ^W、 计算中间量 和控制信号 McW ; 对于 RS ( n, k )编码, 有 t= ( n-k ) 12, 其中 = ; 所述增量差异计算基 本单元 PEi的输入是中间变量^〕、增量差异 ")和^ W,输出为中间变量^〕、 增量差异^〕和^ W; 其中 和 两者通过第一乘法器获得的乘积与 。W和 中间变量 通过第二乘法器获得的乘积的和输入第一寄存器 31 1 ,从而得到 、 i+1 (r)和 (r)还通过二选一选择器由控制信号 McW选通再通过第二寄 存器 321生成中间变量 输入第二乘法器。 The invention discloses a key polynomial solving device used by an RS decoding device, comprising a difference calculating module 201 for solving an error value polynomial coefficient and an error position updating module 202 for calculating an error position polynomial coefficient; the difference calculating module 201 comprises a 2t level The incremental difference calculation of the basic unit PEi and the controller 402, the range of values of the i is 0, 1, ... 2t-l; 0, the initial value of the intermediate variable and the incremental difference from the (2t-l) The basic unit input, the control signal ^ and the accompanying polynomial coefficient S are input in parallel to each level of the basic unit, and the generated by the 0th level basic unit is fed back to the controller 402 to generate an incremental difference ^W, an intermediate quantity, and a control Signal M cW ; for RS ( n, k ) coding, there is t = ( nk ) 12, where = ; the input of the incremental difference calculation basic unit PEi is intermediate variable ^], incremental difference ") and ^ W, The output is an intermediate variable ^], an incremental difference ^] and ^ W; wherein the sum of the product obtained by the first multiplier and the sum of the W and the intermediate variable obtained by the second multiplier is input to the first register 31 1 to obtain, i + 1 (r) (r) through a second election by the selector control signal M cW gate 321 then generates a second intermediate variable input register through a second multiplier.
进一步地, 所述差异计算模块 201根据输入的伴随多项式系数 S以及错 误位置多项式系数( Λ。( ... ... W )计算增量差异 再由控制模块 204 产生相应的计算中间量 和控制信号 , 发送给所述错误位置更新模块 202 ; 所述错误位置更新模块 202 计算得到更新的错误位置多项式系数 ( Λ。( ... W )反馈给所述差异计算模块 201 , 上述过程迭代 2t次, 得到最 终的错误位置多项式系数( ... ... ^ ) 以及相应的增量差异 (r)。 本发明公开的关键多项式求解装置, 实现应用 IBM算法进行 RS译码过 程中错误值多项式系数的计算, 结构规则,通过简单的基本单元(PEi )扩充, 灵活的构造成不同译码模式的译码器。 在构造不同纠错能力的 RS译码器时, 只增加相应数量的处理单元(PEi ) 即可。 用该电路实现的 RS译码装置, 具 有高速处理的性能, 具有较小的关键路径延迟, 可以满足较高的系统运行频 率的需要。 Further, the difference calculation module 201 calculates the incremental difference according to the input adjoint polynomial coefficient S and the error position polynomial coefficient ( Λ . ( W ) and then generates a corresponding calculation intermediate amount and control by the control module 204. Signal, sent to the error location update module The error location update module 202 calculates an updated error location polynomial coefficient ( Λ . . . ( W ) is fed back to the difference calculation module 201 , and the above process is iterated 2 times to obtain a final error location polynomial coefficient ( . .. ... ^ ) and the corresponding incremental difference ( r ). The key polynomial solving device disclosed by the invention realizes the calculation of the polynomial coefficient of the error value in the process of RS decoding by using the IBM algorithm, and the structural rule is adopted by the simple basic The unit (PEi) is extended and flexibly constructed into decoders with different decoding modes. When constructing RS decoders with different error correction capabilities, only a corresponding number of processing units (PEi) can be added. The RS decoding device has high-speed processing performance and has a small critical path delay, which can meet the needs of a higher system operating frequency.
附图概述 BRIEF abstract
图 1是 RS译码装置硬件框图;  Figure 1 is a hardware block diagram of an RS decoding device;
图 2是现有技术中实现 IBM算法的硬件框图;  2 is a hardware block diagram of an implementation of an IBM algorithm in the prior art;
图 3是本发明的差异计算模块的基本单元框图;  3 is a basic block diagram of a difference calculation module of the present invention;
图 4是本发明的差异计算模块框图; 以及  4 is a block diagram of a difference calculation module of the present invention;
图 5是 RS译码器中改进 IBM算法电路应用框图。  Figure 5 is a block diagram of an improved IBM algorithm circuit application in the RS decoder.
本发明的较佳实施方式 Preferred embodiment of the invention
下面结合附图和具体实施方式对本发明做进一步详细说明。 传统的 RS译码器装置如图 1所示,整个 RS译码系统的关键在于求解关 键方程的关键多项式求解模块 102。 所以该模块的实现方案成为影响整个 RS 译码装置性能的关键。由于经典的 BM迭代算法需要复杂的有限域求逆运算, 而且有限域的求逆运算消耗硬件资源且运算速度慢, 对系统的关键路径时延 有很大的影响。 而 IBM算法虽然消除了其中的求逆运算, 但仍然存在关键路 径较长, 硬件架构不规则的缺点。 故本发明提供了一种经过改进的 IBM算法 架构。 传统的 IBM算法结构如图 2 ( a )所示, 它包含差异计算模块 201和错误 位置更新模块 202两部分。 其中的差异计算模块 201的结构如图 2 (b)所示。 The present invention will be further described in detail below in conjunction with the drawings and specific embodiments. The conventional RS decoder device is shown in FIG. 1. The key of the entire RS decoding system is to solve the key polynomial solving module 102 of the key equation. Therefore, the implementation of this module becomes the key to affect the performance of the entire RS decoding device. Because the classical BM iterative algorithm requires complex finite field inversion, and the finite field inversion operation consumes hardware resources and the operation speed is slow, it has a great influence on the critical path delay of the system. Although the IBM algorithm eliminates the inversion operation, it still has the disadvantages of long critical path and irregular hardware architecture. The present invention therefore provides an improved IBM law architecture. The traditional IBM algorithm structure is shown in Figure 2 (a), which includes a difference calculation module 201 and an error location update module 202. The structure of the difference calculation module 201 is as shown in FIG. 2(b).
图 2中, 差异计算模块 201根据输入的伴随多项式系数 S以及错误位置 多项式系数( W ...... (r) )的初始值计算增量差异 , 再由控制模块 204 产生相应的^ 和控制信号 发送给错误位置更新计算模块 202 (控制 模块 204是差异计算模块 201的一部分) , 由错误位置更新模块 202计算更 新得到错误位置多项式系数 ( … W ) , 并反馈给差异计算模块 201, 这个过程迭代 2t (对于 RS (n, k)编码, t= (n-k) /2)次, 得到最终的错误 位置多项式系数 ( A。(r) ...... )及其对应的增量差异 ^^)。 2, the difference calculation module 201 according to an initial incremental difference value calculating polynomial coefficients S and the associated error location polynomial coefficients (W ...... (r)) is input, then generated by the control module 204 and the corresponding ^ The control signal is sent to the error location update calculation module 202 (the control module 204 is part of the difference calculation module 201), and the error location update module 202 calculates and updates the error location polynomial coefficient (...W) and feeds it back to the difference calculation module 201. Process iteration 2t (for RS (n, k) encoding, t = (nk) /2) times, yielding the final error location polynomial coefficients ( A . ( r ) ...... ) and their corresponding incremental differences ^^).
如图 2 ( b )所示是差异计算模块 201 , 包括 t级移位存储器组 203 ( Reg As shown in FIG. 2(b), a difference calculation module 201 includes a t-stage shift memory group 203 (Reg
(0) , Reg ( 1 ) , -Reg (t-1 ) ) , 伴随多项式系数 S从移位寄存器组 203 的第一级 Reg (0)输入, 错误位置多项式系数( ^) ...... At(r) ) 的每一项 分别与对应的寄存器的输出相乘, 所得的乘积输入加法树, 加法树的累加和 输入控制模块 204, 得到相应的增量差异 ^W、 计算中间量^" )和控制信号 Mc^。 由图 2 (b)差异计算模块 201可见, 传统的 IBM算法结构有两个缺点: 一、 其中的寄存器组 203的个数会随着系统的纠错能力的变化而改变, 从而 要求模块 201的硬件设计随着不同 RS译码方式有较大的调整。 二、 图 (b) 所示的关键路径比较长(包含了一个乘法器和加法树) , 这不利于高速 RS 译码装置的实现。 (0) , Reg ( 1 ) , -Reg (t-1 ) ) , the adjoint polynomial coefficient S is input from the first stage Reg (0) of the shift register group 203, the error position polynomial coefficient ( ^) ..... Each of At ( r ) ) is multiplied by the output of the corresponding register, and the resulting product is input to the addition tree, the addition of the addition tree and the input control module 204, to obtain the corresponding incremental difference ^W, the calculated intermediate amount ^ And the control signal M c ^. As can be seen from the difference calculation module 201 of Fig. 2 (b), the conventional IBM algorithm structure has two disadvantages: 1. The number of register groups 203 will vary with the error correction capability of the system. Change and change, thus requiring the hardware design of module 201 to be greatly adjusted with different RS decoding methods. Second, the key path shown in Figure (b) is relatively long (including a multiplier and addition tree), which is not Conducive to the implementation of high-speed RS decoding devices.
本发明从算法上进行了改进, 如图 2所示传统的 IBM算法, 它的增量差 异 是由伴随系数 S以及错误位置多项式系数 ( … () )经过乘累加 获得, 这样产生了较长的乘累加关键路径, 且结构不规则。 改进后的算法结 构是利用相同的硬件结构同时迭代得出增量差异 ^ 以及错误位置多项式系 数( A(r) ...... ) , 这样就消除了传统的 IBM算法中存在的较长的乘累加 关键路径, 同时也获得了一个规则的硬件结构。 其中的算法改进如下: The present invention is improved from the algorithm, as shown in the conventional IBM algorithm shown in Fig. 2, the incremental difference is obtained by multiplying and accumulating the adjoint coefficient S and the error position polynomial coefficient ( ... ()), which results in a longer Multiply and accumulate key paths, and the structure is irregular. The improved algorithm structure uses the same hardware structure to iteratively derive the incremental difference ^ and the error location polynomial system. The number ( A. (r ) ......) eliminates the long multiply-accumulate critical path that exists in the traditional IBM algorithm, and also obtains a regular hardware structure. The algorithm improvements are as follows:
原算法中的错误位置多项式系数更新计算模块 202公式如下:  The error position polynomial coefficient update calculation module 202 in the original algorithm has the following formula:
A(r + 1, ) = (r) * A(r, x)-x* S(r) * B(r, x) ( ) 其中 r = 0,l,....,2t-l  A(r + 1, ) = (r) * A(r, x)-x* S(r) * B(r, x) ( ) where r = 0,l,....,2t-l
其中 )、 是 201 输出的计算中间量, 是辅助计算^ + 1x)的 中间量。 传统 IBM算法 201中^ 的计算也可以由以下的公式得到: Where)) is the calculated intermediate quantity of the output of 201, which is the intermediate quantity of the auxiliary calculation ^ + 1 , x ). The calculation of ^ in the traditional IBM algorithm 201 can also be obtained by the following formula:
λ{τ, X) * S(x) = D{r, x) = S0{r) + Sl{rYx + ....Sr{rYxr +.. ( 2 ) 即多项式 D(rx)的第 r次项系数就是 的值。 由式(2)所示的 D(rx)与 i(r,x)关系可以推得同 (1)相类似的 迭代计算公式: λ{τ, X) * S(x) = D{r, x) = S 0 {r) + S l {rYx + ....S r {rYx r +.. ( 2 ) is the polynomial D ( r The value of the rth term of x , is the value. The relationship between D ( r , x ) and i(r, x) represented by equation (2) can be derived from an iterative calculation formula similar to (1):
D(r + 1, ) = γ(τ) * D(r, x)-x*Sr (r) * θ(τ, x) ( 3 ) 由式(2)可得 是 (,x)的 第 r次系数, 这样在迭代时还需要选择不 同位置的系数进行后续运算, 为了使硬件连接固定做如下处理, 令 (r) = dl+r(r) ^ (r) = ei+r(r) M. δι + 1) = SM+r (r + \) = y(r) * SM+r (r)― Sr (r) * 01+r (r) = y(r) * δΜ (r)― (r) * Θ, (r)D(r + 1, ) = γ(τ) * D(r, x)-x*S r (r) * θ(τ, x) ( 3 ) can be obtained from equation (2) as (, x) The rth coefficient, so in the iteration, you need to select the coefficients of different positions for subsequent operations. In order to make the hardware connection fixed as follows, let (r) = d l+r (r) ^ (r) = e i+r (r) M . δι + 1) = S M+r (r + \) = y(r) * S M+r (r)― S r (r) * 0 1+r (r) = y(r ) * δ Μ (r)― (r) * Θ, (r)
(4) (4)
其中 i=0, 1, 2, .....2t-l。 式(4)即是改进后的 IBM算法, 其利用迭代的方法求得了增量差异  Where i=0, 1, 2, .....2t-l. Equation (4) is an improved IBM algorithm that uses an iterative method to find incremental differences.
(即 ) , 其对应的硬件框架如图 3所示。 (ie), its corresponding hardware framework is shown in Figure 3.
图 3 (a)所示为本发明的增量差异 计算的基本单元, 由于加法树的 消除大大的减少了关键路径的延迟。 图中, 增量差异计算模块的基本单元的 输入是 +1()、
Figure imgf000008_0001
, 输出为 &W、 )和<¾( ; 其中 和 )两者的乘积 与 。W与中间变量 的乘积的和输入第一寄存器 311 ,从而得到 'W; SM (r) 和^ (r)还通过二选一选择器由控制信号 Mc W选通再通过第二寄存器 321 生 成中间变量 ^W。
Figure 3 (a) shows the basic unit of the incremental difference calculation of the present invention, which greatly reduces the delay of the critical path due to the elimination of the addition tree. In the figure, the input of the basic unit of the incremental difference calculation module is +1 ( ),
Figure imgf000008_0001
, the output is the product of both &W, ) and <3⁄4( ; versus. The sum of the product of W and the intermediate variable is input to the first register 311, thereby obtaining 'W; S M (r) and ^ (r) are also gated by the control signal M c W through the second selector and then passed through the second register 321 Generate the intermediate variable ^W.
图 3 ( b )是本发明的增量差异计算模块基本单元的简化框图, 如图所示 是第 i级基本单元 PEi, 输入量 、 )和。 W处理后输出 'W、 )和。 W , 并且由控制信号 Mc W选通, 输出 'W。 如图 4所示为本发明改进后的 IBM算法的差异计算模块硬件框图, 包括 2t级顺序相连的基本单元(PE0...PE2t-l )和控制器 402; 0、 和 ^ 从第 ( 2t-l )级基本单元输入,控制信号 ( 和伴随多项式系数 S并行输入每一级 基本单元, 第 0级基本单元产生的 反馈回控制器 402 , 生成增量差异 ^ 、 计算中间量 和控制信号 Mc (r) Figure 3 (b) is a simplified block diagram of the basic unit of the incremental difference calculation module of the present invention, as shown in the figure, the i-th level basic unit PEi, the input amount, and the sum. After W processing, output 'W, ) and . W , and is gated by the control signal M c W , and outputs 'W. FIG. 4 is a hardware block diagram of a difference calculation module of the improved IBM algorithm according to the present invention, including a basic unit (PE0...PE2t-l) and a controller 402 connected in sequence of 2t levels; 0, and ^ from the second (2t) -l) level basic unit input, control signal ( and accompanying polynomial coefficient S are input in parallel to each level of basic unit, feedback generated by level 0 basic unit is returned to controller 402, generating incremental difference ^, calculating intermediate quantity and control signal M c (r)
本发明提出了一种改进的 RS译码器中 IBM算法的实现电路, 该电路具 有如下的特点:  The present invention proposes an improved implementation of the IBM algorithm in the RS decoder, which has the following features:
( 1 ) 用该电路实现的 RS译码装置, 具有较小的关键路径延迟, 可以满 足较高的系统运行频率的需要。  (1) The RS decoding device implemented by this circuit has a small critical path delay and can meet the needs of a higher system operating frequency.
( 2 ) 该电路具有结构规则的特点,在构造不同纠错能力的 RS译码器时, 只增加相应数量的处理单元(PEi ) 即可。  (2) The circuit has the characteristics of structural rules. When constructing RS decoders with different error correction capabilities, only a corresponding number of processing units (PEi) can be added.
本发明提出的改进的 IBM算法实现 RS译码器的装置, 可以通过简单的 基本单元(PEi )扩充, 灵活的构造成不同译码模式的译码器。 且该译码器具 有高速处理的性能。  The improved IBM algorithm proposed by the present invention implements an RS decoder device, which can be flexibly constructed by a simple basic unit (PEi) and configured into decoders of different decoding modes. And the decoding device has the performance of high speed processing.
如系统进行 RS ( 240 , 224 )译码时, 如图 5所示是 RS译码器中改进的 IBM算法电路应用的框图, 首先由 501利用输入码字进行伴随多项式系数的 计算, 同时将输入码字依次保存到緩冲寄存器 505中, 当计算得到 16 (此时 t= ( 240-224 ) /2=8 )个伴随多项式的系数( )之后, 便将这 16个伴 随多项式系数从 到 -1输入到差异计算模块 502中。 在差异计算模块 502中的计算过程参见图 4,其工作流程如下:设置 PE0 到 PE2t-l基本处理单元中的寄存器组( 。(r)… 2i- )以及( ^。(r)… ) 初始值都为 ( ... -1 ) , 之后如图 4所示进行 16次迭代运算, 每次迭代运 算控制单元 402都会根据计算得到的 (r)值,产生相应的 、 δ{τ)以及 Mc (r) 控制信号输出给错误位置更新计算模块 202 (如图 2 ( a )所示) , 使其进行 一次运算更新系数 (AW— ^W),如此反复经历 16次(算法规定迭代 2t次, 此时 t= ( 240-224 ) /2=8 )迭代运算得到了错误值多项式系数。 在迭代结束之 后将得到的错误值多项式的系数输出给错误位置搜索及误码值计算模块 504 进行错误位置的搜索以及错误位置相应误码值的计算, 和输出给错误位置更 新模块 503得到错误位置多项式( W ... A r) ) 。 当每检测完一个位置是否 有错以及计算完相应的错误值之后, 就由 506对存储在 505中的相应的输入 码字进行纠错, 并输出相应的译码后的码字, 当对所有码字纠错完毕之后, 便完成整个 RS译码操作。 上述的方案完全可以用于 RS译码系统设计中, 且可以以 FPGA硬件实 现, 做到了译码的实时处理。 上述提供了详细的实施例描述, 以使得本领域 的任何技术人员可以使用或利用本发明。 本发明不仅适用于这里所示的实施 例, 而且适用于不同模式以及对系统运行频率要求较高的 RS译码系统的设 计。 If the system performs RS (240, 224) decoding, as shown in Figure 5 is a block diagram of the improved IBM algorithm circuit application in the RS decoder. First, the input codeword is used to calculate the adjoint polynomial coefficients, and the input is simultaneously input. The code words are sequentially saved to the buffer register 505, when the calculation is 16 (at this time) After t=(240-224) /2=8) coefficients of the adjoint polynomial ( ), the 16 adjoint polynomial coefficients are input from -1 to the difference calculation module 502. The calculation process in the difference calculation module 502 is shown in FIG. 4, and the workflow is as follows: setting the register group (.( r )... 2i- ) and (^.( r )...) in the basic processing unit of PE0 to PE2t-1 The values are all (... -1), and then 16 iterations are performed as shown in Fig. 4. Each iteration operation control unit 402 generates corresponding δ{τ) and M according to the calculated ( r ) value. c (r) The control signal is output to the error position update calculation module 202 (as shown in Fig. 2 (a)), so that it performs an operation update coefficient (AW - ^W), and thus repeats 16 times (the algorithm specifies iteration 2t times) At this time, t=(240-224) /2=8) The iterative operation yields an error value polynomial coefficient. After the end of the iteration, the obtained coefficient of the error value polynomial is output to the error position search and error value calculation module 504 to perform the search of the error position and the calculation of the error position corresponding error value, and output to the error position update module 503 to obtain the error position. Polynomial ( W ... A r ) ). After each time a position is detected is detected and the corresponding error value is calculated, the corresponding input code word stored in 505 is error-corrected by 506, and the corresponding decoded code word is output, when After the codeword is corrected, the entire RS decoding operation is completed. The above scheme can be completely used in the design of the RS decoding system, and can be implemented by the FPGA hardware, realizing the real-time processing of the decoding. The detailed description of the embodiments is provided to enable any person skilled in the art to use or utilize the invention. The present invention is applicable not only to the embodiments shown herein, but also to the design of different modes and RS decoding systems that require higher system operating frequencies.
工业实用性 Industrial applicability
本发明公开的 RS译码装置可以通过简单的基本单元(PEi )扩充, 灵活 的构造成不同译码模式的译码器, 所述译码器具有高速处理的性能, 且具有 较小的关键路径延迟, 可以满足较高的系统运行频率的需要。 本发明公开的 关键多项式求解装置, 实现了应用 IBM算法进行 RS译码过程中错误值多项 式系数的计算, 其具有结构规则的特点。 因此, 本发明解决了现有技术的 RS 译码过程中存在的运算速度慢、 关键路径延迟较大, 以及硬件结构不规则的 缺点。 The RS decoding apparatus disclosed by the present invention can be flexibly constructed into decoders of different decoding modes by a simple basic unit (PEi), and the decoder has high-speed processing performance and has Smaller critical path delays can meet the needs of higher system operating frequencies. The key polynomial solving device disclosed by the invention realizes the calculation of the error value polynomial coefficient in the process of RS decoding by using the IBM algorithm, and has the characteristics of structural rules. Therefore, the present invention solves the shortcomings of the prior art RS decoding process, such as slow operation speed, large critical path delay, and irregular hardware structure.

Claims

权 利 要 求 书 Claims
1. 一种 RS译码装置, 包括对输入码字做顺序处理的伴随矩阵计算模块 An RS decoding apparatus, comprising an accompanying matrix calculation module for sequentially processing input code words
( 101 )、关键多项式求解模块( 102 )和错误位置搜索及错误值计算模块( 103 ); 其特征在于: (101), a key polynomial solving module (102), and an error location search and error value calculating module (103); wherein:
所述关键多项式求解模块 ( 102 )进一步包括计算错误值多项式系数的差 异计算模块(201 )和计算错误位置多项式的错误位置更新模块(202 ) ; 所述差异计算模块(201 ) 包括 2t级顺序相连的增量差异计算基本单元 PEi和控制器(402 ) , i的取值范围为 0、 1、 ...2t-l; 0、 中间变量 和增 量差异的初始值 从第 (2t-l )级基本单元输入, 控制信号 和伴随多项 式系数 S并行输入每一级基本单元,第 0级基本单元产生的 反馈回所述控 制器 (402 ) , 生成增量差异 ^")、 计算中间量 )和控制信号 对于 RS (n, k)编码, 有1= (n-k) /2, 其中 (r) = +r(r) ; The key polynomial solving module (102) further includes a difference calculating module (201) for calculating an error value polynomial coefficient and an error position updating module (202) for calculating an error position polynomial; the difference calculating module (201) includes a 2t order connection The incremental difference is calculated by the basic unit PEi and the controller (402), and the value range of i is 0, 1, ... 2t-l; 0, the initial value of the intermediate variable and the incremental difference is from the (2t-l) The level basic unit input, the control signal and the accompanying polynomial coefficient S are input in parallel to each level of the basic unit, the feedback generated by the 0th level basic unit is returned to the controller (402), the incremental difference ^"), the calculated intermediate amount), and The control signal for RS (n, k) coding has 1 = (nk) /2, where (r) = +r (r) ;
所述增量差异计算基本单元 PEi的输入是中间变量 ? 、增量差异 ^ )和 r) , 输出为中间变量 W、 增量差异^和^ W; 其中 和 两者通过第一 乘法器获得的乘积与 。 W和中间变量 通过第二乘法器获得的乘积的和输 入第一寄存器 (311 ) , 从而得到 ' i+1(r)和 (r)还通过二选一选择器由 控制信号 McW选通再通过第二寄存器 (321)生成中间变量 输入第二乘 法器。 The input of the incremental difference calculation basic unit PEi is an intermediate variable ? , an incremental difference ^ ) and r) , and the output is an intermediate variable W, an incremental difference ^ and ^ W; wherein the two are obtained by the first multiplier Product and. The sum of the product of W and the intermediate variable obtained by the second multiplier is input to the first register (311), thereby obtaining ' i+1 (r) and (r) are also gated by the control signal M cW through the second selection selector An intermediate variable is input to the second multiplier by the second register ( 321 ).
2. 根据权利要求 1所述的 RS译码装置, 其特征在于, 所述差异计算模 块(201 )输出的错误值多项式系数输入错误位置更新模块(202 ) , 所述错 误位置更新模块(202 )输出更新的错误位置多项式,所述差异计算模块(201 ) 和错误位置更新模块 ( 202 )的输出再输入到所述错误位置搜索及错误值计算 模块(103 )计算出误码位置和误码值。 The RS decoding device according to claim 1, wherein the error value polynomial coefficient output by the difference calculation module (201) is input to an error location update module (202), and the error location update module (202) Outputting an updated error location polynomial, the output of the difference calculation module (201) and the error location update module (202) being input to the error location search and error value calculation module (103) to calculate the error location and the error value .
3. 根据权利要求 2所述的 RS译码装置, 其特征在于, 所述差异计算模 块 ( 201 )根据输入的伴随多项式系数 S以及错误位置多项式系数 ( W ...... W )计算增量差异 再由控制模块(204 )产生相应的计算中间量 和 控制信号 。(), 发送给所述错误位置更新模块(202 ) ; 所述错误位置更新 模块( 202 )计算得到更新的错误位置多项式系数( W ... W )反馈给所述 差异计算模块(201 ) , 上述过程迭代 2t次, 得到最终的错误位置多项式系 数 ( AW ...... (r) ) 以及相应的增量差异 ^r)。 The RS decoding apparatus according to claim 2, wherein the difference calculation module (201) calculates the increase according to the input adjoint polynomial coefficient S and the error position polynomial coefficient (W...W). The amount difference is then generated by the control module (204) to generate a corresponding calculated intermediate amount and control signal. (), sent to the error location update module (202); the error location update module (202) calculates an updated error location polynomial coefficient (W ... W) feedback to the difference calculation module (201), The above process is iterated 2t times to get the final error location polynomial system. Number ( AW ... ( r ) ) and the corresponding incremental difference ^ r ).
4. 根据权利要求 2所述的 RS译码装置, 其特征在于,还包括纠错模块, 所述输入码字经过緩存器再和所述错误位置搜索及错误值计算模块 ( 103 )的 输出分别同时输入所述纠错模块 , 获得译码输出。 5. 一种 RS译码装置使用的关键多项式求解装置, 包括求解错误值多项 式系数的差异计算模块 ( 201 )和计算错误位置多项式系数的错误位置更新模 块(202) ; 其特征在于: 所述差异计算模块(201) 包括 2t级顺序相连的增量差异计算基本单元 PEi和控制器(402) , i的取值范围为 0、 1、 ...2t-l; 0、 中间变量 和增 量差异的初始值 从第 (2t-l)级基本单元输入, 控制信号 ( 和伴随多项 式系数 S并行输入每一级基本单元,第 0级基本单元产生的 反馈回所述控 制器 (402 ) , 生成增量差异 ^")、 计算中间量 )和控制信号 对于 RS (n, k)编码,
Figure imgf000013_0001
= S1+r(r); 所述增量差异计算基本单元 PEi的输入是中间变量 ? 、增量差异 ^ )和 输出为中间变量?^〕、 增量差异^〕和^ W; 其中 和 两者通过第一 乘法器获得的乘积与 。 w和中间变量 通过第二乘法器获得的乘积的和输 入第一寄存器 (311 ) , 从而得到 ' i+1(r)和 (r)还通过二选一选择器由 控制信号 McW选通再通过第二寄存器 (321)生成中间变量 输入第二乘 法器。 6. 根据权利要求 5所述的 RS译码装置使用的关键多项式求解装置, 其 特征在于, 所述差异计算模块 ( 201 )根据输入的伴随多项式系数 S以及错误 位置多项式系数( Λ。( ...... W )计算增量差异 再由控制模块(204) 产生相应的计算中间量 和控制信号 , 发送给所述错误位置更新模块 (202) ; 所述错误位置更新模块(202)计算得到更新的错误位置多项式系 数( Λ。( ... (r) )反馈给所述差异计算模块( 201 ) , 上述过程迭代 2t次, 得到最终的错误位置多项式系数 ( ...... ^ )以及相应的增量差异 r)。
4. The RS decoding apparatus according to claim 2, further comprising an error correction module, wherein the input codeword passes through the buffer and the output of the error location search and error value calculation module (103) respectively At the same time, the error correction module is input to obtain a decoded output. 5. A key polynomial solving apparatus for use in an RS decoding apparatus, comprising: a difference calculation module (201) for solving an error value polynomial coefficient; and an error position updating module (202) for calculating an error position polynomial coefficient; wherein: the difference The calculation module (201) comprises a 2t-level incremental difference calculation basic unit PEi and a controller (402), wherein the value range of i is 0, 1, ... 2t-l; 0, intermediate variables and incremental differences The initial value is input from the (2t-l)th basic unit, and the control signal ( and the adjoint polynomial coefficient S are input in parallel to each level of the basic unit, and the feedback generated by the 0th basic unit is returned to the controller (402), generating Quantity difference ^"), calculation of the intermediate amount) and control signals for RS (n, k) encoding,
Figure imgf000013_0001
= S 1+r (r); The input of the incremental difference calculation base unit PEi is an intermediate variable ? , an incremental difference ^ ) and an output as an intermediate variable? ^], incremental difference ^〕 and ^ W; where and the product sum of the two obtained by the first multiplier. w and the sum of the products of the intermediate variables obtained by the second multiplier are input to the first register (311), thereby obtaining ' i+1 (r) and (r) are also gated by the control signal M cW through the second selection selector An intermediate variable is input to the second multiplier by the second register ( 321 ). The RS decoding key using the apparatus as claimed in claim 5, wherein the polynomial solving means, wherein, said difference calculation module (201) associated polynomial coefficients according to the error location polynomial coefficients and S (Lambda input. (.. .... W) calculating the incremental difference and then generating a corresponding calculated intermediate amount and control signal by the control module (204), and transmitting the error to the error location update module (202); the error location update module (202) calculates The updated error position polynomial coefficient ( Λ . ( ... ( r ) ) is fed back to the difference calculation module ( 201 ), and the above process is iterated 2t times to obtain the final error position polynomial coefficient ( . . . ) And the corresponding incremental difference r ).
PCT/CN2009/000742 2008-11-11 2009-07-01 Rs decoding device and key multinomial solving device used by rs decoding device WO2010054526A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200810217313A CN101741397A (en) 2008-11-11 2008-11-11 RS (reed-solomon) decoding device and key polynomial solving device used by same
CN200810217313.7 2008-11-11

Publications (1)

Publication Number Publication Date
WO2010054526A1 true WO2010054526A1 (en) 2010-05-20

Family

ID=42169600

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2009/000742 WO2010054526A1 (en) 2008-11-11 2009-07-01 Rs decoding device and key multinomial solving device used by rs decoding device

Country Status (2)

Country Link
CN (1) CN101741397A (en)
WO (1) WO2010054526A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103490882A (en) * 2013-09-17 2014-01-01 华南理工大学 System and generating method of multivariate public key cryptography for key exchange
CN114157396A (en) * 2021-12-03 2022-03-08 江西洪都航空工业集团有限责任公司 RS encoder and RS encoding and decoding method

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107004026B (en) * 2014-11-03 2020-09-22 艾玛迪斯简易股份公司 Managing pre-computed search results

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5583499A (en) * 1993-12-29 1996-12-10 Samsung Electronics Co., Ltd. Method and apparatus for computing error locator polynomial for use in a Reed-Solomon decoder
JP2006041745A (en) * 2004-07-23 2006-02-09 Sony Corp Error location detecting method and apparatus

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6487692B1 (en) * 1999-12-21 2002-11-26 Lsi Logic Corporation Reed-Solomon decoder
CN100459438C (en) * 2006-10-20 2009-02-04 东南大学 Reed-solomon decoder key equation and error value solving-optimizing circuit

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5583499A (en) * 1993-12-29 1996-12-10 Samsung Electronics Co., Ltd. Method and apparatus for computing error locator polynomial for use in a Reed-Solomon decoder
JP2006041745A (en) * 2004-07-23 2006-02-09 Sony Corp Error location detecting method and apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103490882A (en) * 2013-09-17 2014-01-01 华南理工大学 System and generating method of multivariate public key cryptography for key exchange
CN114157396A (en) * 2021-12-03 2022-03-08 江西洪都航空工业集团有限责任公司 RS encoder and RS encoding and decoding method

Also Published As

Publication number Publication date
CN101741397A (en) 2010-06-16

Similar Documents

Publication Publication Date Title
Lee High-speed VLSI architecture for parallel Reed-Solomon decoder
KR101211433B1 (en) Appratus and method of high speed quasi-cyclic low density parity check code having low complexity
US8327241B2 (en) Reduced processing in high-speed Reed-Solomon decoding
US8335808B2 (en) Method and apparatus for processing multiple decomposed data for calculating key equation polynomials in decoding error correction code
CN101478314A (en) Reed-solomon coder-decoder and decoding method thereof
Zhang et al. Algebraic soft-decision decoder architectures for long Reed–Solomon codes
Ahmed et al. VLSI architectures for soft-decision decoding of Reed-Solomon codes
CN110971244A (en) Forward error correction decoding decoder based on burst error detection
WO2010054526A1 (en) Rs decoding device and key multinomial solving device used by rs decoding device
Semerenko Iterative hard-decision decoding of combined cyclic codes
KR101094574B1 (en) APPARATUS FOR PERFORMING THE HIGH-SPEED LOW-COMPELEXITY PIPELINED BERLEKAMP-MASSEY ALGORITHM OF BCH decoder AND METHOD THEREOF
Lin et al. Algebraic decoding of the (41, 21, 9) quadratic residue code
US20030131308A1 (en) Method and apparatus for solving key equation polynomials in decoding error correction codes
Liu et al. Area-efficient Reed–Solomon decoder using recursive Berlekamp–Massey architecture for optical communication systems
US20030154436A1 (en) System and method for generating cyclic codes for error control in digital communications
US10218386B1 (en) Methods and apparatus for performing variable and breakout Reed Solomon encoding
Tan et al. Area-efficient pipelined vlsi architecture for polar decoder
Ahmed et al. Systolic interpolation architectures for soft-decoding Reed-Solomon codes
US20180006664A1 (en) Methods and apparatus for performing reed-solomon encoding by lagrangian polynomial fitting
Yan et al. Fast and low-complexity decoding algorithm and architecture for quadruple-error-correcting RS codes
Park et al. An ultra high-speed time-multiplexing Reed-Solomon-based FEC architecture
JPH06140941A (en) Error correction system
Ji et al. 16-channel two-parallel Reed-Solomon based forward error correction architecture for optical communications
CN114157396A (en) RS encoder and RS encoding and decoding method
Zhang et al. Low-power high-efficiency architecture for low-complexity chase soft-decision Reed–Solomon decoding

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09825701

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09825701

Country of ref document: EP

Kind code of ref document: A1