KR100247075B1 - High speed serial errata situation polyno mial caiculation circuit in reed-soldmon - Google Patents
High speed serial errata situation polyno mial caiculation circuit in reed-soldmon Download PDFInfo
- Publication number
- KR100247075B1 KR100247075B1 KR1019970038582A KR19970038582A KR100247075B1 KR 100247075 B1 KR100247075 B1 KR 100247075B1 KR 1019970038582 A KR1019970038582 A KR 1019970038582A KR 19970038582 A KR19970038582 A KR 19970038582A KR 100247075 B1 KR100247075 B1 KR 100247075B1
- Authority
- KR
- South Korea
- Prior art keywords
- error
- polynomial
- output
- shift register
- rudder
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic 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/1515—Reed-Solomon codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
본 발명은 리드 솔로몬(Reed solomon)부호를 사용하는 에러정정시스템에 있어서, 특히 에러타 위치 다항식을 계산하는데 있어 신드롬 다항식, 이레이져 위치 다항식, 이레이져 개수, 이레이져 오버 플로워신호를 입력하여 에러타 위치 다항식을 계산하고 이것과 상기 입력된 신드롬을 다시 출력하여 에러타 위치를 계산하는 리드 솔로몬 디코더에 있어서 에러 정정 시스템 및 방법에 관한것이다.The present invention relates to error correction system using Reed solomon code, particularly in calculating error polynomial position polynomial, error polynomial, erasure position polynomial, number of erasers, erasure overflow signal An error correction system and method in a Reed Solomon decoder for calculating a position polynomial and outputting this and the input syndrome again to calculate an error position.
Description
본 발명은 리드 솔로몬(Reed solomon)부호를 사용하는 에러정정시스템에 있관한 것으로, 특히 에러타 위치 다항식을 계산하는데 있어 신드롬 다항식, 이레이져 위치 다항식, 이레이져 개수, 이레이져 오버 플로워신호를 입력하여 에러타 위치 다항식을 계산하고 이것과 기입력된 신드롬을 다시 출력하여 에러타 위치를 계산하는 리드 솔로몬 디코더에 있어서 에러 정정 회로에 관한것이다.The present invention relates to an error correction system using a Reed solomon code. In particular, in calculating an error position position polynomial, a syndrome polynomial, an eraser position polynomial, an eraser number, and an eraser overflow signal are inputted. The present invention relates to an error correction circuit in a Reed Solomon decoder that calculates an error rudder position polynomial and re-outputs this and a pre-populated syndrome to calculate the error rudder position.
일반적으로 디지털 통신 및 스토리지 시스템에 있어서 에러 제어를 위해 리드 솔로몬(Reed-Solomon "이하 RS 라칭함)부호가 널리 사용되고 있다. 상기 에러 제어를 위한 RS 부호란 부호화된 데이터에 대해 데이터 전송 또는 재생 중에 발생하는 에러를 검출 및 정정하기 위해 사용되며, 이는 수신된 데이터만으로 일련의 과정을 통해 에러의 위치 및 값을 찾아내는 심볼 단위의 에러를 제어하기 위한 부호이다. 상기 에러중에는 그 위치를 알 수 있는 에러를 이레이져(erasure)라고 하고, 상기 에러와 이레이져는 함께 에러타(errata)라고 한다. 상기 에러의 위치는 입력되는 타이밍에 따라 전송되는 심볼의 신뢰도를 표시할 수 있으므로 일반적으로 한 비트로 표현한다. 상기 이레이져 플래그를 포함하는 에러 정정 과정은 에러타의 위치를 근으로 갖는 에러타 위치 다항식에 대한 계산이 요구된다. 이와 관련되어 R.E. Blahut "Theory and Practice of Error Control Code" ,Addison-Wesley,1983와J.L.Massey,"Shift Register Synthesis and BCH Decoding",IEEE Transation Information Theory,Vol.It-15,PP122-127,Jan,1969에 개시하고 있다. 여기서 에러위치를 계산하는 회로로 Berlekamp-Massey 알고리즘(이하"BMA"라 칭함)을 이용한 회로는 1965년에 "Massey"가 발표한 LERS(Leaner Feednack Shift Register)을 이용한 회로가 있다.이는 신드롬과 계산할 에러위치 다항식으로 부터 부합도(discrepancy)를 계산하여 부합도가 영(0)이면 에러위치 다항식을 이전 것으로 그대로 두고,상기 영(0)이 아니면 에러위치 다항식을 새로 계산한다. 상기 새로 에러위치 다항식을 계산하기 위해 수정 다항식을 두어 부합도의 값이 영(0)이 아닐 때 이를 새롭게 계산하여 상기 다항식과 부합도를 이용하여 새로운 에러위치 다항식을 계산토록 한다. 그러나 상기와 같은 방법의 회로는 병렬구조로 되어 있어 에러 위치 다항식을 계산하기 위한 곱셈기가 많이 요구되어 그 회로의 규모가 크지게 되는 단점이 있으며, 이에 의해 부합도(discrepancy)를 계산하기 위한 회로와 이값을 사용하여 에러 위치 다항식을 계산하는 회로의 지연 시간이 커서 고속화를 추구하는 디지털 통신시스템이나 고용량의 저장기능을 가지면서 고속의 억세스를 요하는 스트로지(Storge)시스템에서는 이와 같은 방법을 이용하기 어려운 문제점이 있으며,이레이져를 포함하는 에러 위치 다항식 계산회로에서 사용할수 없게 되는 문제점이 있다.In general, Reed-Solomon (hereinafter referred to as RS) code is widely used for error control in digital communication and storage systems, and RS code for error control is generated during data transmission or reproduction of encoded data. It is used to detect and correct an error, which is a symbol for controlling an error of a symbol unit that finds the position and value of an error through a series of processes using only the received data. The error and erasure are together called an error, and the position of the error is generally represented by one bit because the position of the error can indicate the reliability of the transmitted symbol according to the input timing. The error correcting process including the erasure flag includes an error rudder position having the position of the error rudder as a root. Calculations for polynomials are required, in this regard RE Blahut "Theory and Practice of Error Control Code", Addison-Wesley, 1983 and JLMassey, "Shift Register Synthesis and BCH Decoding", IEEE Transation Information Theory, Vol. 15, PP122-127, Jan, 1969. The circuit using the Berlekamp-Massey algorithm (hereinafter referred to as "BMA") as the circuit for calculating the error position is LERS (Leaner) published by Massey in 1965. There is a circuit using Feednack Shift Register, which calculates the discrepancy from the syndrome and the error location polynomial to be calculated, and if the match is zero, the error location polynomial is left as it is, and the zero is zero. Otherwise, the error position polynomial is newly calculated, and the modified polynomial is placed to calculate the new error position polynomial, and when the value of the degree of conformance is not zero, the new value is calculated. The ever calculating the polynomial. However, the circuit of the above method has a disadvantage in that the multiplier for calculating the error position polynomial is large because the circuit of the above method becomes large, thereby increasing the size of the circuit. This method can be used in digital communication systems that seek high speed due to the large delay time of calculating error position polynomials, or in storage systems that require high-speed access with high capacity storage. There is a difficult problem, and there is a problem that can not be used in the error position polynomial calculation circuit including an eraser.
따라서 본 발명의 목적은 회로 규모가 작고 그 계산 지연 시간이 작아 고속 계산에 사용될 수 있는 이레이져를 포함하는 에러타 위치 다항식 계산회로를 제공함에 있다.Accordingly, an object of the present invention is to provide an error rudder position polynomial calculation circuit including an eraser that can be used for high-speed calculation because the circuit size is small and the calculation delay time is small.
본 발명의 다른 목적은 에러타 위치 다항식 계산회로로 Berlekamp-Massey 반복 알고리즘을 사용하며 구조는 시리얼 계산 구조로 되어 있어 빠른 클럭으로 동작시킬 수 있는 회로를 제공함에 있다.Another object of the present invention is to use a Berlekamp-Massey iterative algorithm as an error position position polynomial calculation circuit, and the structure is a serial calculation structure to provide a circuit capable of operating at a fast clock.
상기 목적을 수행하기 위한 본 발명은 RS부호를 사용하는 에러정정 시스템에 있어서 에러타 위치 다항식을 계산하기 위해 신드롬 다항식과 이레이져 위치 다항식과 이레이져 개수 와 이레이져 오버플로우 신호를 입력으로 하여 에러타 위치다항식을 계산하여 이것과 입력된 신드 롬을 다시 출력토록 구성되어있다.According to the present invention for performing the above object, in order to calculate the error polynomial position polynomial in the error correction system using the RS code, the error polynomial, the erasure position polynomial, the number of erasers and the error overflow signal are inputted. Compute the positional polynomial and output it again and the input syndrome.
도 1는 본 발명의 실시예에 따른 에러타 정정 시스템도1 is an error correction system diagram according to an embodiment of the present invention
도 2는 도 1의 에러타 위치 다항식 계산부(105)의 내부 블럭도2 is an internal block diagram of the error rudder
도 3은 도 2의 에러타 위치 다항식 계산회로(201)의 구체회로도3 is a detailed circuit diagram of the error rudder position polynomial calculation circuit 201 of FIG. 2.
도 4A,4B는 본 발명의 실시예에 따른 도 3의 제어 및 상태 흐름도4A and 4B are control and state flow diagrams of FIG. 3 in accordance with an embodiment of the present invention.
도 5는 본 발명의 실시예에 따른 도 4의 (4r)과정의 구체 흐름도5 is a detailed flowchart of process (4r) of FIG. 4 according to an embodiment of the present invention.
이하 본 발명의 바람직한 실시예의 상세한 설명이 첨부된 도면들을 참조하여 설명될 것이다.하기에서 각 도면의 구성요소들에 참조부호를 부가함에 있어, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한 본 발명을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의내려진 용어들로서 이는 사용자 또는 칩설계자의 의도 또는 관례 등에 따라 달라질 수 있으며, 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT A detailed description of a preferred embodiment of the present invention will now be described with reference to the accompanying drawings. In the following, reference numerals are given to components of each drawing, even though the same components are shown in different drawings. Note that they have the same sign. In describing the present invention, when it is determined that a detailed description of related known functions or configurations may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. Terms to be described later are defined in consideration of functions in the present invention, which may vary according to the intention or custom of a user or a chip designer, and the definitions should be made based on the contents throughout the present specification.
도 1은 본 발명의 실시예에 사용되는 RS 부호를 사용하는 에러정정 시스템도이고,1 is an error correction system diagram using an RS code used in an embodiment of the present invention.
도 2는 도 1에서 에러타 위치 다항식 계산부(105)의 주변 결합 관계를 명확히 한 구체화 회로도로서, 도 1,2도를 참조하여 각블럭의 기능 및 구성관계를 살펴보면,FIG. 2 is a detailed circuit diagram clarifying the peripheral coupling relationship of the error rudder position
수신어(IDATA)의 정정할 코드를 입력하여 신드롬을 계산하여 신드롬 다항식출력(SYNDPOLYO)을 출력하기 위한 신드롬 다항식 계산부(103)와,A syndrome
이레이져 플래그(ERAFLG)를 입력하여 이레이져 위치 다항식을 계산하여 계산된 이레이져 위치 다항식(ERTLPOLY)과 이레이져 갯수(NUM-ERA)와 이레이져 오버 플로우 플래그(OFL-ERA)를 발생하는 이레이져 위치 다항식 계산회로(101)와,Eraser generating the eraser position polynomial (ERTLPOLY), the number of erasers (NUM-ERA) and the eraser overflow flag (OFL-ERA) calculated by entering the eraser flag (ERAFLG). A position
상기 신드롬 다항식 계산부(103)와 이레이져 위치 다항식 계산회로(101)의 출력을 받아 에러타 위치 다항식을 계산하는 에러타 위치 다항식 계산부(105)와,An error rudder position
상기 에러타 위치 다항식 계산부(105)의 출력으로 부터 에러타 위치를 검색하고 상기 검색된 에러타 위치에 대한 에러타 크기값을 계산하는 에러타 위치 검색 및 에러 타 값 계산부(107)와,An error rudder position retrieval and error
상기 에러 타 위치 검색 및 에러 타 값 계산부(107)의 검색된 에러 타 위치심볼에 대해 에러타 크기를 더하여 에러 타를 정정하는 에러타 정정부(109)로 구성된다.The error rudder position search and error rudder
상기 상기 신드롬 다항식 계산부(103)와 이레이져 위치 다항식 계산회로(101) 및 에러타 위치 다항식 계산부(105)의 관계는 도 1,2의 도시와 같이 상기 신드롬 다항식 계산부(103)의 에러타 다항식 계산 시작신호(INIT-ELC)와 신드롬 다항식출력(SYNDPOLYO)와 이레이져 위치 다항식 계산회로(101)의 이레이져 갯수(NUM-ERA)와 이레이져 오버 플로우 플래그(OFL-ERA)의 신호를 입력처리하여 이에 의해 에러터 위치 다항식(ERTLPOLOY)의 로딩제어신호(LOAD-B,C), 업데이트 계산제어신호(UPD-BPOLY), 부합도 래치신호(UPD-DISCREP), 다음 부합도 계산부 초기화신호(INI-NXTDISC)를 발생하는 계산제어회로(110)와,The relationship between the syndrome
상기 계산제어회로(110)의 출력에 의해 신드롬 다항식 출력(SYNDPOLYO) 및 이레이져 위치 다항식(ERTLPOLY)을 계산하여 상기 다시 계산된 신드롬 다항식출력(SYNDPOLYO) 및 이레이져 위치 다항식(ERTLPOLY)을 출력하는 에러타 위치 다항식계산회로(105)로 구성된다.An error of calculating the syndrome polynomial output SYNDPOLYO and the eraser position polynomial ERTLPOLY by the output of the
도 3은 도 2의 에러타 위치 다항식 계산부(105)의 구체회로도로서3 is a detailed circuit diagram of the error rudder position
에러타 위치 다항식(ERALPOLY) 및 수정 다항식[B(x)]을 저장하는 제1쉬프트 레지스터(301)와,A
에러타 위치 다항식(ERALPOLY) 및 에러 위치 다항식[V(x)]을 저장하는 제2쉬프트레지스터(302)와,A
신드롬 다항식[S(x)]을 저장하는 제3쉬프트레지스터(303)와,A
상기 제1쉬프트레지스터(301)의 출력 수정 다항식 또는 에러타 위치 다항식의 심볼바이트를 소정시간 저장하므로 지연하는 지연회로(310)와,A
상기 제2쉬프트레지스터(203)의 에러 위치 다항식 또는 에러타 위치다항식의 출력심볼 및 상기 제3쉬프트 레지스터(303)의 신드롬 다항식 출력심볼을 곱하고 다음 부합도를 더하여 갈로이스 필드[GF(2m)]를 산출하기 위한 제1연산셀(311)과,The output symbol of the error position polynomial or the error position position polynomial of the second shift register 203 and the syndrome polynomial output symbol of the
상기 제1연산셀(311)의 출력과 상기 제3쉬프트레지스터(303)의 출력을 중간값 저장용 선택단(316)의 신호에 따라 선택하는 제2멀티플렉셔(305)와,A
상기 제2멀티플렉셔(305)의 출력으로부터 다음계산에 사용될 부합도를 계산하기 위해 그 중간값을 저장하는 다음 부합도 저장부(308)와,A next
상기 제1연산셀(311)의 출력과 신도롬 계수단(S0)의 신호중 현재부합도입력선택단(317)의 신호에 따라 선택하는 제3멀티플렉셔(306)와,A third multiplexer 306 that selects the output of the
상기 제3멀티플렉셔(306)의 출력으로 현재 부합도를 저장하는 현재 부합도 저장부(309)와,A current
상기 제2쉬프트레지스터(203)에 저장되는 에러타 위치 다항식(ERALPOLY) 및 에러 위치 다항식[V(x)]의 데이터중 계수신호를 저장하는 계수신호저장부(307)와,A coefficient
상기 제1쉬프트레지스터(301)의 출력과 상기 현재 부합도 저장부(309)의 출력을 곱하여 상기 제2쉬프트레지스터(302)의 출력과 더하여 갈로이스 필드[GF(2m)]의 산출하기 위한 제2연산셀(312)과,A multiplier for calculating a gallois field GF (2m) by multiplying the output of the
상기 현재 부합도 저장부(309)의 출력을 반전하여 상기 계수신호저장부(307)의 출력과 곱하여 결국 나누셈 연산으로 갈로이스 필드[GF(2m)]에서 연산을 위한 제3연산셀(313)과,Inverting the output of the current match
상기 제3연산셀(313)의 출력과 상기 지연회로(310)의 출력을 조건 선택단(315)의 신호에 따라 선택하여 상기 제1쉬프트레지스터(301)에 인가하는 제1멀티플렉셔(304)로 구성된다.A
도 4는 본 발명의 실시예에 참조되는 에러타 위치 다항식을 위한 제어 및 동작흐름도이고,4 is a control and operation flowchart for an error rudder position polynomial referred to an embodiment of the present invention;
도 5는 도 4의 (4r)과정의 내부 루프에서 다항식 계산을 위한 구체흐름도이다.FIG. 5 is a detailed flowchart of the polynomial calculation in the inner loop of the process (4r) of FIG.
따라서 본 발명의 구체적 일 실시예를 도 1-도 5를 참조하여 상세히 설명하면,Therefore, a specific embodiment of the present invention will be described in detail with reference to FIGS. 1 to 5.
RS(N,K,d)는 부호어 길이가 N, 정보어 길이가 K, 최소 해밍거리가 d인 리드 솔로몬(Reed Solomon)부호를 말한다. 상기 RS부호의 특징 중의 하나는 d가 d=N-K+1이라는 점이며,N-K는 패러티의 수로서, 이를 R이라고 하면 R=d-1의 관계가 있다. 상기 RS부호가 정정할 수 있는 심볼의 수를 t라고 하면의 관계에 있다.RS (N, K, d) refers to a Reed Solomon code having a codeword length of N, an information word length of K, and a minimum hamming distance of d. One of the characteristics of the RS code is that d is d = N-K + 1, and NK is the number of parities, and R is R = d-1. If the number of symbols that can be corrected by the RS code is t Is in a relationship.
e개의 이레이져를 포함하는 부호어에 대해서는 하기 수학식 1과 같다.A codeword including e erasures is represented by
상기 식을 만족하는 t개의 에러와 e개의 이레이져를 정정할 수가 있다.상기 에러타를 정정하는 RS디코더는 도 1와 같이 구성되며, 다음과 같은 과정으로 정정을 행한다.T errors and e erasures satisfying the above expression can be corrected. The RS decoder for correcting the error is configured as shown in FIG. 1 and is corrected by the following procedure.
이레이져 위치 다항식 계산부(101)는 수신되는 이레이져 플래그로부터 이레이져 위치 다항식을 계산하고, 신드롬 다항식 계산부(103)은 수신어로부터 신드롬을 계산한다.상기 이레이져 위치 다항식 계산부(101)와 신드롬 다항식 계산부(103)에서 계산된 이레이져 위치 다항식과 신드롬 다항식으로 부터 출력된 심볼에 의해 에러타 위치 다항식 계산부(105)는 에러타 위치 다항식을 계산한다. 상기 에러타 위치 검색 및 에러타 값 계산부(107)은 상기 계산된 에러타 위치 다항식으로 부터 에러타 위치를 검색하고 상기 검색된 에러타 위치에 대한 에러타 크기(값)을 계산한다. 그리고 에러타 정정부(109)는 상기 검색된 에러타 위치 심볼에 에러타 크기를 더하여 에러타를 정정한다. 상기 에러정정을 위해 신드롬 다항식을 S(X), 에러타 위치 다항식을 ∧(X), 이레이져 위치 다항식을 Γ(X)라고 하면, 하기 수학식2,3,4으로 나타 낼수있다.The erasure position
로 쓸 수 있다.Can be written as
상기 에러타 위치 다항식을 계산하기 위한 Berlekamp-Massey 알고리듬(이하 "BMA"라 칭함)은 하기와 같다.The Berlekamp-Massey algorithm (hereinafter referred to as "BMA") for calculating the error point position polynomial is as follows.
[BMA;Berlekamp-Massey algorithm][BMA; Berlekamp-Massey algorithm]
num_era : 이레이져의 수num_era: number of erasers
ofl_era : 이레이져의 수가 오버 플로우임을 표시하는 플래그ofl_era: Flag indicating that the number of erasers is overflowing
deg_b : B(x)의 차수, deg_c : ∧(x)의 차수deg_b: order of B (x), deg_c: order of ∧ (x)
0)(χ)=1,(χ)=1,0) (χ) = 1, (χ) = 1,
deg_c=0, deg_b=0,deg_c = 0, deg_b = 0,
zload_eral=1, r=0,zload_eral = 1, r = 0,
1) if num_era≠0 and r=num_era - 1 and ofl_era = then1) if num_era ≠ 0 and r = num_era-1 and ofl_era = then
zload_eral=0((χ) =Γ(χ),(χ)= Γ(χ)).zload_eral = 0 ( (χ) = Γ (χ), (χ) = Γ (χ)).
elseelse
zload_eral=1,zload_eral = 1,
2) if r≥2t then stop else2) if r≥2t then stop else
= . = .
3)(χ) =(χ)+χ(χ).3) (χ) = (χ) + χ (χ).
4) if≠0and deg_b≥deg_c then4) if ≠ 0and deg_b≥deg_c then
(χ)= (χ), (χ) = (χ),
deg_b = deg_c,deg_b = deg_c,
deg_c = deg_b+1,deg_c = deg_b + 1,
goto 6).goto 6).
5) if=0 or deg_b<deg_c then5) if = 0 or deg_b <deg_c then
(χ)= χ(χ), (χ) = χ (χ),
deg_b=deg_b+1,deg_b = deg_b + 1,
6) r=r+1, goto 1)6) r = r + 1, goto 1)
본 발명은 도 3의 도시와 같이 도 4에서 처럼 2(d-1)반복 계산을 하되, 상기 BMA의 0에서 부터 6개의 단계중의 단계 2의 부합도의 계산(dr)과 단계 3,4,5에서의 다항식 각 계수의 계산을 순차적으로 계산하도록 하여 결국, 연산에 필요한 덧셈과 곱셈기를 줄임으로써 회로 크기를 크게 줄임을 특징으로 한다. 그리고 에러타 위치 다항식 계산회로(201)는 도 2에서와 같이 신드롬 다항식 다항식 계산부(103)의 신드롬 다항식(SYNDPOLY)과 이레이져 위치 다항식 계산부(101)의 이레이져 다항식(ERALPOLY)을 입력으로 받아 에러타 위치 다항식을 계산한다. 도 2에 나타나 있는 에러타 위치 계산 회로(201)는 도 3에 보인 회로에 해당한다. 도 3의 본 발명의 회로의 동작과 도 4,5의 제어 순서도에서 도 4는 상기 BMA의 2(d-1)반복 계산 알고리즘의 순서도를 나타내며, 도 5는 도 4에 있는 내부 루프를 보인 것으로 부합도와 다항식의 계수를 순차적으로 계산하는 과정을 (d-1)회 반복한다. 결국 전체 계산에 필요한 클럭 수는이 된다.In the present invention, as shown in FIG. 3, the 2 (d-1) iterations are repeated as in FIG. 4, but the calculation of the degree of conformance (dr) and the steps 3 and 4 of the
상기 BMA와 도 1-도 5를 참조하여 본 발명을 설명하면,Referring to the BMA and Figures 1 to 5 illustrating the present invention,
도 3에서 제1-3쉬프트 레지스터(301-303)는 수정 다항식 B(X), 에러위치 다항식 ∧(X), 신드롬 다항식 S(X)를 각각 저장하기 위한 (d-1) 바이트 쉬프트 레지스터이다. 지연회로(310), 다음, 현재 부합도 저장부(308,309)는 심볼(보통 바이트)을 저장할 수 있는 플립플롭들로서 제1쉬프트 레지스터(301)의 지연, 다음, 현재 부합도 저장부(308,309)에서 다음 부합도, 현재의 부합도를 저장하기 위한 것이다.제1-3연산셀(311-313)은 GF()에서의 연산을 위한 셀로서 제1,2연산셀(311,312)은 같은 내부구성의 셀이며, 이는 두 수를 곱하고 그 결과를 제 삼의 값과 더하도록 구성되어있다. 제3연상 셀(313)은 나눗셈을(예를 들면, 곱셈에 대한 역원을 다른 수에 곱하여 나눗셈을 행할수 있음)행하는 셀이다. 신호 S(X)는 입력되는 신드롬 다항식이며, ∧(X)는 출력되는 에러타 위치 다항식으로서 제2쉬프트 레지스터에 연결되어 있다. 제3연산셀(313)의 출력단(321)의 신호는 계수 신호 저장부(307)의 계수신호(331)를 부합도 저장부(309)의 출력으로 나눈 신호이며, 제2연산셀(312)의 출력신호(336)는 현재 부합도 저장부(309)의 출력과 제1쉬프트 레지스터(301)의 출력 계수신호를 곱하여 제2쉬프트 레지스터(302)의 계수신호에 더한 신호이다.제1멀티 플렉셔(304)는 선택단(315)는 상기 BMA의 3항 조건에 맞을 경우에 신호 321의 값을 선택하고 그렇지 않을 경우 제1쉬프트 레지스터(301)의 계수로서 지연회로(310)에서 지연된 신호을 선택하는 신호이다.제2멀티플렉셔(305)의 선택단(316)은 다음 계산에 사용될 부합도를 계산하기 위해 그 중간값을 저장하기 위한 다음 부합도 저장부(333)의 입력을 선택하기 위한 신호로서 부 반복 주기의 처음에는 제3쉬프트 레지수터(303)의 출력 신호를, 그렇지 않을 경우에는 제1연산셀(311)의 출력을 선택한다. 제3멀티플렉셔(306)의 선택단(317)은 현재 사용되는 부합도의 입력을 선택하기 위한 신호로서 반복 주기의 처음에는 입력되는 신드롬의 계수 S(0)를 선택하고 이후에는 항상 제1연산셀(311)의 출력신호를 선택한다.상기 제2멀티 플렉셔(305)의 선택단(316)은 다음 부합도 계산을 위해 매 부 반복 주기마다 처음에는 제3쉬프트레지스터(303)의 출력을 선택하고, 두 번째 이후에는 제1연산셀(311)의 출력를 선택하도록 되어있다.In FIG. 3, the 1-3 shift registers 301-303 are (d-1) byte shift registers for storing the modified polynomial B (X), the error position polynomial X (X), and the syndrome polynomial S (X), respectively. .
한편, 본 발명의 에러타 위치 다항식 계산회로(201)의 동작은 도 4의 예시 흐름도와 같이 (4a)초기과정에서 계산 제어 회로(203)는 에러타 다항식 계산 시작 신호(INIT-XLC)와 이레이져 개수(NUM-ERA)와 이레이져 오버 플로우 플래그(OFL-ERA)신호를 받아 지연회로(310)의 출력을 "0"로 세팅하고, 제1쉬프트 레지스터(301)의 출력단(Bo)은 "1"로 하고,입력단(Bd-1)은 "0"로 하며, 제3쉬프트 레지스터(303)의 신드롬 계수 인덱스[s(i)]는 신드롬 패리티 개수(PN)에서 상기 신드롬 계수 인덱스[s(i)]를 뺀만큼 두고 [S(i)=SYND(PN-i)],신드롬 다항식[s(0)]에 대해 심볼[SYDN(0)]은 "0"로 하고[s(0)=SYDN(0)], 제2쉬프트 레지스터(302)의 계수신호(C0)저장부(307)의 출력은 "1"로 한다. 그리고 상기 이레이져 개수가 1개일때의 제1조건(COND=1)이고, 그외는 0(else 0)으로서, 이레이져 개수(NUM-ERA)는 "1"이고,이레이져 오버 플로우 플래그(OFL-ERA)는 "1"이 아닐때)일때 상기 제2쉬프트 레지스터(302)의 1에서 d-1까지[c(d-1:1)]를 이레이져 위치 다항식 1에서 d-1까지 설정하며[c(d-1:1)]=[ERALPOLY(d-1:1)], COND=1 이고, 그외는 신드롬 심볼[synd(0)]일 때 제3 멀티 플렉셔(306)의 선택에 의해 현재 부합도 저장부(309)에 "0"을 기록한다. 한편, 상기 제1조건(COND=1)이고, 그외는 [(else 0)]"0"일 때 제2쉬프트 레지스터(302)에 "1"를 로딩한다. 전체 인덱스(r)와 계수 인덱스(i)는 "0"로 하며,제1,2쉬프트 레지스터(301,302)의 수정 및 에러 다항식의 차수(deg-b,c)를 "0"로 한다.그리고 (4b)과정에서 전체 인덱스(r)가 제2 쉬프트레지스터(302)의 최종 바이트(d-1)를 지정하는 값보다 큰지를 비교한다. 상기 (4b)과정에서 전체 인덱스(r)값이 크면 처리를 종료하고, 작으면 (4c)과정에서 제2 쉬프트 레지스터(302)에 "1"이 로딩되었냐를 체킹한다. 상기 제2쉬프트 레지스터(302)에 "1"이 로딩 되지 않았으면 제1쉬프트 레지스터(301)에 "1"를 로딩하고, 그러나 로딩되었으면 제1쉬프트 레지스터(301)에 "0"을 로딩한다. 상기 계산 제어 회로(203)는 에러타 다항식 계산 시작 신호(INIT-XLC)와 이레이져 개수(NUM-ERA)와 이레이져 오버 플로우 플래그(OFL-ERA)를 받아 상기 이레이져 오버 플로우 플래그(OFL-ERA)가 "1"이 아니고,상기 이레이져 개수(NUM-ERA)가 "0"이 아니며, 상기 이레이져 개수(NUM-ERA)가 "1"아니며, 상기 이레이져 개수[(NUM-ERA)-2]가 전체 인덱스(r)일 때 해당하는 제2조건(COND2)에 해당하는지(COND=1)를 (4g)과정에서 체킹한다.상기 (4g)과정에서 상기 제2조건에 해당하지 않으면 제2쉬프트 레지스터(302)에 "0"을 로딩하고,상기 제2조건에 해당하면 "1"을 로딩한다.다음으로는 현재 부합도 저장부(309)의 출력(DISCRIP)이 "0"이고,제1쉬프트 레지스터(301)의 다항식의 차수(DEG-B)와 제2쉬프트 레지스터(302)의 다항식의 차수(DEG-C)가 같은지를 체킹한다.현재 부합도(discrip)가 "0"이 아니거나 상호 차수가 같지 않을시 제1멀티 플렉셔(304)에 의해 지연회로(310)의 출력을 선택하여 제1쉬프트 레지스터(301)의 다항식을 업데이트하며, 같을시 제3연산셀(313)의 출력을 선택하여 업데이트 한다. 다음 (4m)과정에서 제1쉬프트 레지스터(301)에 "1"이 로딩 되었냐를 체킹하여 로딩이 않되었으면 (4n)과정에서 상기 제3연산셀(313)의 출력을 선택하였냐를 확인한다. 상기 (4m)과정에서 "1"이 로딩되었을 때 제1,2쉬프트 레지스터(301,302)의 차수(DEG-B,C)를 이레이져 다항식 차수(ERA-CNT)로 하고,상기 (4n)과정에서 제1쉬프트 레지스터(301)의 업데이트로 "1"일 때 (40)과정에서 제1,2쉬프트 레지스터(301,302)의 차수(DEG-B,C)를 일치시키고, 상기 제1쉬프트 레지스터(301)의 업데이트로 "1"이 아닐때 (4q)과정에서 제1쉬프트 레지스터(301)의 차수를 증가시킨다(DEG-B=DEG+1).(4r)과정에서 다항식 계산을 위해 내부 루핑을 실행한후 (4s)과정에서 전체 인덱스(r)를 증가시킨다. 도 5는 도 4의 (4r)과정의 구체 흐름도로서, (5a)과정에서 계수 인덱스(i)가 최종단(d-1)에 도달 되었으면 처리를 끝내고, 그전이면 (5b)과정에서 계수 인덱스(i)가 0인가를 체킹한다. 상기 (5b)과정에서 0일 때 (5d)과정에서 다음 부합도를 로딩하기위해 선택단(316)의 신호에 의해 제3쉬프트 레지스터(303)의 출력을 제2멀티플렉셔(305)에서 선택하여 다음부합도(308)의 값으로 저장한다.그러나 (5b)과정에서 0 이 아니면 다음 부합도를 계산하기위해 (5c)과정에서 제1연산셀(311)에서 제2쉬프트 레지스터(302)의 출력과 제3쉬프트 레지스터(303)의 출력을 곱셈기(M2)에서 승산하여 가산기(A2)에서 상기 곱셈기(M2)의 출력과 다음 부합도 저장부(308)의 출력을 합하여 제2멀티플렉셔(305)에 선택되어 다음 부합도 저장부(308)에 기록된다.이어서 (5e)과정에서 계수 인덱스(i)가 최종치(d-2)에 도달 했는지를 체킹하여 이에 도달되지 않았으면 제 3쉬프트 레지스터(303)에서 쉬프팅을 한다[s(d-2)=s(0),s(k-1)=s(k) FOR 1<=K<=d-2] (5g)과정에서 제2쉬프트레지스터(302)의 에러다항식의 계산을 위해 제1쉬프트레지스터(301)의 출력(Bo)과 현재 부합도 저장부(309)의 출력을 제2연산셀(312)의 곱셈기(M3)에서 곱하여 제2쉬프트 레지스터(302)의 출력과 가산기(A1)에서 더한다. (5h)과정에서 제1쉬프터 레지스터(301)에서 업데이트가 "1"이 아닐 때 (5i)과정에서 상기 제1쉬프터 레지스터(301)의 출력을 지연회로(310)에 지연하며,"1"일 때 (5j)과정에서 상기 제3연산셀(313)의 현재 부합도 저장부(309)의 출력을 인버터(N1)에서 반전하여 상기 계수 신호 저장부(307)의 출력과 곱셈한 값을 선택하여 상기 제1쉬프트 레지스터(301)에 입력한다.그리고 (5k)과정에서 제1,2쉬프트 레지스터(301,302)를 1에서 d-2까지 쉬프트하고, (5l)과정에서 계수 인덱스를 증가시킨다(i=i+1). 그러나 상기 (5e)과정에서 계수 인덱스가 d-2일 때 (5m)과정에서 제1연산셀(311)의 출력을 제3멀티 플렉셔(306)에서 선택하여 현재 부합도 저장부(309)에 로딩하며, (5n)과정에서 지연회로(310)를 "0"으로 하고,계수 신호 저장부(307)를 "1"로 하고, 제2쉬프트레지스터(302)에 "1"이 로딩 되었냐를 (5o)과정에서 체킹한다. 상기 (5o)과정에서 로딩이 않되었으면 상기 (5g)과정을 실행하고, 상기 로딩이 되었으면 (5p)과정에서 제2쉬프트레지스터(302)의 로딩을 위해 현재 부합도 저장부(309)의 츨력은 "0"로 하고, 계수 신호 저장부(307)의 출력은 "1"로 하며, 이레이져 위치 다항식을 저장한다. (5q)과정에서 제1쉬프트레지스터(301)에 "1"이 로딩되었냐를 체크하여 상기 로딩이 "1"이 되지 않았으면 (5g)과정을 실행하고, "1"이 로딩되었으면 (5r)과정에서 제1쉬프트레지스터(301)로 로딩을 위해 B0는 "1"로 하며, 이레이져 위치 다항식을 저장하고 (5l)과정에서 계수 인덱스를 증가시킨다. 이상의 설명을 토대로 최대 4개의 에러타를 정정할 수 있는 RS부호의 에러타 위치 다항식을 계산해 보면, 신드롬은 모두 4개로 각각 S(3),S(2),S(1),S(0)라고 하고,이레이져 플래그가 1개, 에러가 1개 발생했다고 가정하면,신드롬 다항식 계산부(103)에서 에러타 다항식 계산 시작신호(INIT_ELC)가 발생하면 제2쉬프트레지스터(302)에는 이레이져 위치 다항식이, 현재 부합도 저장부(309)는 0심볼로, 제3쉬프트레지스터(303)에는 신드롬 다항식이 s_poly(3:0)=(S(1), S(2), S(3), S(0))로 로드되어 첫 번째 주 반복주기가 시작된다. 상기 반복 주기에서는 계산된 이레이져 다항식과 신드롬과의 관계가 적절한지를 판별할 수 있는 부합도를 순차적으로 계산한다. 두 번째 주 반복주기가 되면 계산된 부합도는 현재 부합도 저장부(309)에 저장되고, 제1쉬프트 레지스터(301)에는 이레이져 위치 다항식이,지연회로(310)에는 0심볼이 로드된다. 만약, 부합도가 "0"이 아니라면 제1쉬프트레지스터(301)는 부합도로 제2쉬프트레지스터(302)를 나눈 값을 갖게 되고, 제2쉬프트레지스터(302)는 부합도를 제1쉬프트레지스터(301)에 곱하고, 자신의 값에 더한 값을 갖게 된다(c_poly(1)이 계산부에 입력되게 함으로써 x를 곱해주는 효과를 봄). 이 후의 계산 과정은 부합도를 계산하는 과정만이 다르고, 상기 BMA의 상기 3항 조건인가 4항 조건인가에 따라 선택단(315)의 신호에 따라 제1쉬프트 레지스터(301)의 입력을 제1멀티 플렉셔(304)에서 선택되어 지며, 제1쉬프트레지스터(301)의 계산 과정은 상기와 같이 정해지고, 제2쉬프트레지스터(302)는 항상 같은 식으로 계산된다. 두 번째 주 주기에서 제3쉬프트레지스터(303)의 신호 신드롬 심볼(si)는 S(2)가 선택되고,새롭게 계산되어 지는 제2쉬프트레지스터(302)의 계수와 곱하고 다음 부합도 저장부(308)와 더하여져 다음에 사용될 부합도를 계산한다.이 주기의 처음에 현재 부합도 저장부(309)는 첫 번째 주 주기에서 계산된 부합도 C(0)S(1)+C(1)S(0)를 래치하여 새로운 에러 위치 다항식을 계산하는데 사용된다.On the other hand, the operation of the error rudder position polynomial calculation circuit 201 of the present invention, as shown in the example flow chart of Figure 4 (4a) in the initial process, the calculation control circuit 203 is the error rudder polynomial calculation start signal (INIT-XLC) The output of the
상기 주 주기에서 계산되는 다음부합도는C(0)S(2)+C(1)S(1)+C(2)S(0)이다. 세 번째 주 주기에서 계산되는 다음 부합도는 C(0)S(3)+C(1)S(2)+C(2)S(1)이고, 현재 부합도는 두 번째 주 주기에서 계산한 부합도이다.네 번째 주 주기에서는 마지막 반복 과정이므로 다음 부합도는 관심의 대상이 아니며, 현재 부합도는 세 번째 주 주기에서 계산된 부합도로 에러타 위치 다항식을 계산한다. 총 4*4=16개의 클럭(4주 반복주기, 4부 반복주기)후에 에러위치 다항식이 계산되며, 이때의 에러위치 다항식 회로는 다음단계를 위해 사용될 수 있다. 제 3쉬프트 레지스터(303)의 쉬프팅 동작은 매 부 주기의 마지막 단계에서만 저지되고 항상 행해지도록 제어된다. 초기에 제3쉬프트레지스터(303)인 S_POLY = (S(1),S(2),S(3),S(0))이었으므로 첫 번째 부주기 동작이 완료되면 (S(2),S(3),S(0),S(1)), 두 번째에서는 (S(2),S(3),S(0),S(1)), 세 번째에서는 (S(3),S(2),S(1),S(0)), 네 번째에는 (S(1),S(2),S(3),S(0))로 되어 신드롬다항식출력(SYNDPOLYO)으로(S_POLY(1),S_POLY(2),S_POLY(3),S_POLY(0))=(S(3),S(2),S(1),S(0))를 출력하여 다음 단계에서 필요한 신드롬 다항식을 출력해 주는 것이 가능하여 지연 기능까지 수행하게 된다.만약, 상기 이레이져가 하나도 발생하지 않은 경우에는 에러만을 정정하게 되고,다음 설명과 같이 동작되어 에러 위치 다항식계산회로로 사용이 가능해진다.초기에 B_POLY=1, C_POLY=1, S_POLY=SYNDPOLY,CNT_D=S(0)로 초기화 된다.부합도 계산시 초기 부합도는 항상 S(0)가 되기 때문에 현재 부합도 저장부(309)은 S(0)로 로드하여도 연속 동작에 문제가 생기지 않는 특징을 발견 적용하는 것이다. 이제 첫 번째 주 반복주기에서는 다음에 사용될 부합도를 상기 설명한 바와 같이(이레이져를 포함하건 하지 않건 간에 일단 초기화 또는 로딩 동작이 수행된 후에는 같은 연산 동작을 수행함)계산하며, 현재의 부합도에 따라 에러타 위치 다항식과 수정 다항식을 도 4 와 도 5에 나타낸 것처럼 반복 진행한다. 다만, 이 때의 에러 위치 다항식 계산에 소요되는 단계 수는 에러 위치 다항식만을 계산할 수 있는 회로를 사용하는 것보다 2배 더 소요될 뿐이다. 이러한 단점을 보완하기 위해 제1,2쉬프트 레지스터(301,302)의 쉬프트 동작이 (d-1)/2가 되도록 멀티플렉셔를 추가하여 제어 해주는 것도 가능하겠으나 그 계산 단계수가 문제가 되지 않을 경우에는 문제가 되지 않는다.그리고 리드 솔로몬(RS)의 부호는 대부분 적 부호(product code)형태로 사용되어, 이러한 경우에 한 부호군에 대하여는 에러만을 정정하고,다른 부호군에 대하여는 에러타 정정을 행하는 것이 일반적인 바, 본 발명은 그대로 에러만이나 에러타를 모두 정정할 수 있도록 구성되어 있어 특히 유용하다.The next degree of sum calculated in the main period is C (0) S (2) + C (1) S (1) + C (2) S (0). The next fit calculated at the third main cycle is C (0) S (3) + C (1) S (2) + C (2) S (1), and the current fit is calculated at the second main cycle. Since the fourth main cycle is the last iteration process, the next fit is not of interest, and the current fit computes the errorta position polynomial with the calculated one in the third main cycle. After a total of 4 * 4 = 16 clocks (4 week repetition period, 4 part repetition period), the error position polynomial is calculated, and the error position polynomial circuit can be used for the next step. The shifting operation of the
본 발명의 다른 실시예로서 도 3에서는 신드롬 다항식을 초기에 패러랠로 로드하고 ,에러위치 다항식을 패러랠로 출력하는데, 모두 시리얼로 로드 및 출력 되도록 제어하는 회로도 타이밍이 부족하지 않은 응용에 대하여 쉽게 변형되어 사용될 수 있어 본 발명의 범주에 속한다.In another embodiment of the present invention in Figure 3, the syndrome polynomial is initially loaded in parallel and the error position polynomial is output in parallel, and the circuits for controlling the load and output in serial are all easily modified for applications that do not lack timing. It can be used and belongs to the scope of the present invention.
상술한 바와같이 본 발명은 부합도를 계산하고 이를 이용하여 에러타 위치 다항식을 계산하는 회로에 있어서 그 회로 규모가 크고 계산 시간이 오래 걸리는 단점을 없애고, 그 크기가 작고 빠른 클럭으로 동작 시킬 수 있는(클럭소요)이점이 있다.As described above, the present invention eliminates the shortcomings of a large circuit and a long calculation time in a circuit that calculates a degree of conformance and calculates an error position polynomial using the same, and can operate with a small and fast clock. ( Clock is required).
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970038582A KR100247075B1 (en) | 1997-08-13 | 1997-08-13 | High speed serial errata situation polyno mial caiculation circuit in reed-soldmon |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970038582A KR100247075B1 (en) | 1997-08-13 | 1997-08-13 | High speed serial errata situation polyno mial caiculation circuit in reed-soldmon |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990016132A KR19990016132A (en) | 1999-03-05 |
KR100247075B1 true KR100247075B1 (en) | 2000-03-15 |
Family
ID=19517390
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970038582A KR100247075B1 (en) | 1997-08-13 | 1997-08-13 | High speed serial errata situation polyno mial caiculation circuit in reed-soldmon |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100247075B1 (en) |
-
1997
- 1997-08-13 KR KR1019970038582A patent/KR100247075B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19990016132A (en) | 1999-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4873688A (en) | High-speed real-time Reed-Solomon decoder | |
US6347389B1 (en) | Pipelined high speed reed-solomon error/erasure decoder | |
EP0114938B1 (en) | On-the-fly multibyte error correction | |
EP1131893B1 (en) | Forward error corrector | |
US7028247B2 (en) | Error correction code circuit with reduced hardware complexity | |
US4845713A (en) | Method and apparatus for determining the coefficients of a locator polynomial | |
US5440570A (en) | Real-time binary BCH decoder | |
KR100260415B1 (en) | High speed serial error position polynomual calculation circuit | |
US5805617A (en) | Apparatus for computing error correction syndromes | |
US5535225A (en) | Time domain algebraic encoder/decoder | |
JPH0936755A (en) | Decoder and its method | |
US5905740A (en) | Apparatus and method for error correction | |
US20230412196A1 (en) | Low-power block code forward error correction decoder | |
US5365529A (en) | Circuitry for detecting and correcting errors in data words occurring in Reed-Solomon coded blocks and determining when errors are uncorrectable by syndrome analysis, Euclid's algorithm and a Chien search | |
US5818854A (en) | Reed-solomon decoder | |
US7051267B1 (en) | Efficient high-speed Reed-Solomon decoder | |
KR100970223B1 (en) | A method of soft-decision decoding of reed-solomon codes, and reed-solomon codeword decoder and computer program product | |
US7823050B2 (en) | Low area architecture in BCH decoder | |
KR100258951B1 (en) | Rs decoder having serial expansion architecture and method therefor | |
US6263471B1 (en) | Method and apparatus for decoding an error correction code | |
US7100103B2 (en) | Efficient method for fast decoding of BCH binary codes | |
KR100747487B1 (en) | Reed-Solomon decoder and circuits of the modified Euclid's algorithm | |
KR100247075B1 (en) | High speed serial errata situation polyno mial caiculation circuit in reed-soldmon | |
JP2000020333A (en) | Decoding device, arithmetic unit and their methods | |
US20050050131A1 (en) | Data processing system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20071129 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |