KR101837099B1 - Reconfigurable error correction code device - Google Patents

Reconfigurable error correction code device Download PDF

Info

Publication number
KR101837099B1
KR101837099B1 KR1020120073211A KR20120073211A KR101837099B1 KR 101837099 B1 KR101837099 B1 KR 101837099B1 KR 1020120073211 A KR1020120073211 A KR 1020120073211A KR 20120073211 A KR20120073211 A KR 20120073211A KR 101837099 B1 KR101837099 B1 KR 101837099B1
Authority
KR
South Korea
Prior art keywords
error
control signal
syndrome
position detection
unit
Prior art date
Application number
KR1020120073211A
Other languages
Korean (ko)
Other versions
KR20140006402A (en
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 에스케이하이닉스 주식회사
Priority to KR1020120073211A priority Critical patent/KR101837099B1/en
Publication of KR20140006402A publication Critical patent/KR20140006402A/en
Application granted granted Critical
Publication of KR101837099B1 publication Critical patent/KR101837099B1/en

Links

Images

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/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • H03M13/353Adaptation to the channel
    • 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/63Joint error correction and other techniques
    • H03M13/6337Error control coding in combination with channel estimation
    • 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/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

본 발명의 가변 구조의 에러 정정 부호화기에 따르면, 노이즈 환경에 따라 구동되는 구조를 달리할 수 있고, 노이즈 크기에 따라 구동되는 신드롬 제너레이터의 갯수를 달리할 수 있으며, 노이즈 크기에 따라 구동되는 오류 위치 다항식 생성부의 갯수를 달리할 수 있고, 노이즈 크기에 따라 구동되는 오류 평가 다항식 생성부의 갯수를 달리할 수 있으며, 노이즈 크기에 따라 에러 정정을 위하여 소모되는 전력량을 달리할 수 있다.
본원의 제1 발명에 따른 가변 구조의 에러 정정 부호화기는, 오류 정정 비트 수에 대응하여 선택 제어 신호를 출력하는 주제어부; 상기 선택 제어 신호에 제어되고, 입력되는 데이터 비트에 제너레이터 매트릭스를 승산하여 데이터 비트와 패리티 비트로 이루어진 코드 워드를 출력하는 인코더; 상기 선택 제어 신호에 제어되고, 저장부로부터 수신되는 코드 워드를 입력받아 신드롬값을 출력하는 계산하는 신드롬 발생부; 상기 선택 제어 신호에 제어되고, 상기 신드롬값을 이용하여 오류 위치를 검출하기 위한 오류 위치 검출 계수를 생성하는 키 이퀘이션 솔버; 상기 선택 제어 신호에 제어되고, 상기 오류 위치 검출 계수를 이용하여 오류 위치 검출 신호를 출력하는 오류 위치 검출부; 및 상기 선택 제어 신호에 제어되고, 상기 오류 위치 검출 신호를 이용하여 해당하는 위치의 오류를 정정하는 오류 정정부를 포함한다.
According to the error-correcting encoder of the variable structure of the present invention, the structure driven according to the noise environment can be different, and the number of syndrome generators driven according to the noise size can be varied. In addition, The number of generating units may be different and the number of error evaluating polynomial generating units driven according to the noise size may be different and the amount of power consumed for error correction may be different depending on the noise size.
According to a first aspect of the present invention, there is provided an error-correcting encoder of a variable structure, comprising: a main controller for outputting a selection control signal corresponding to the number of error correction bits; An encoder controlled by the selection control signal and outputting a code word composed of a data bit and a parity bit by multiplying an input data bit by a generator matrix; A syndrome generator which is controlled by the selection control signal and receives a codeword received from the storage unit and outputs a syndrome value; A key assignment solver controlled by the selection control signal and generating an error position detection coefficient for detecting an error position using the syndrome value; An error position detection unit controlled by the selection control signal and outputting an error position detection signal using the error position detection coefficient; And an error correction unit that is controlled by the selection control signal and corrects an error at a corresponding position using the error position detection signal.

Figure R1020120073211
Figure R1020120073211

Description

가변 구조의 에러 정정 부호화기{RECONFIGURABLE ERROR CORRECTION CODE DEVICE}RECONFIGURABLE ERROR CORRECTION CODE DEVICE [0002]

본 발명은 에러 정정 부호화기에 관한 것으로, 더욱 상세하게는 에러 정정 비트수를 선택적으로 달리할 수 있는 에러 정정 부호화기에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an error correction encoder, and more particularly, to an error correction encoder capable of selectively changing the number of error correction bits.

디지털 부호의 전송에는 외부로부터의 영향(전송로상의 잡음, 드롭아웃, 페이딩 등)에 의해 전송 데이터에 오류가 발생할 수 있다. 전송계에서는 오류가 발생한 경우에 데이터의 재전송을 요구할 수 없기 때문에 수신측에서는 수신 정보의 오류검출, 정정이 가능하지 않으면 안된다. 이와 같이, 수신측에서 수신 정보를 정정하는 것을 FEC(Forward Error Correction)방식이라고 한다.In the transmission of digital codes, errors may occur in the transmitted data due to external influences (noise on the transmission path, dropout, fading, etc.). Since the transmission system can not request retransmission of data when an error occurs, the receiving side must be able to detect and correct errors in the received information. In this way, correcting the reception information at the reception side is referred to as FEC (Forward Error Correction).

상기 오류정정을 수행하기 위해 Cyclic 부호, BCH(Both-Chaudhuri- Hocquenghem) 부호, 리드-솔로몬(Reed-Solomon) 부호 등이 사용된다.Cyclic codes, Both-Chaudhuri-Hocquenghem (BCH) codes, and Reed-Solomon codes are used to perform the error correction.

여기서, BCH 부호의 복호 순서는 다음과 같다.Here, the decoding order of the BCH code is as follows.

먼저, 수신된 신호를 이용하여 신드롬값을 구한 뒤, 상기 신드롬값을 이용하여 오류위치 다항식과 오류평가 다항식을 계산한다. 상기 오류위치 다항식에 갈루아체 필드의 원소를 대입하여 오류의 위치를 결정하고, 해당 위치의 오류를 정정한다.First, a syndrome value is obtained using a received signal, and an error location polynomial and an error evaluation polynomial are calculated using the syndrome value. The position of the error is determined by substituting the element of the Galois field into the error location polynomial, and the error of the position is corrected.

그런데, 종래기술에 따른 BCH 부호의 복호화기는 2비트 오류 정정용, 4비트 오류 정정용, 8비트 오류 정정용 등 다양한 크기의 오류 비트를 정정할 수 있는 복호화기가 개별적으로 존재한다. 따라서, 이들 복호화기는 오류가 발생할 가능성이 다른 환경에 놓이더라도 항상 동일한 크기 비트를 복호화하기 때문에 필요한 크기보다 더 크게 설계한 경우에는 불필요하게 많은 전력을 소모하게 된다. 또는, 설계된 수준보다 노이즈가 많은 환경에 놓이게 되면 오류가 발생할 가능성이 높아지게 된다. However, the decoder of the BCH code according to the related art has decoders for correcting error bits of various sizes such as 2-bit error correction, 4-bit error correction, and 8-bit error correction. Therefore, these decoders always decode the same size bits even if they are placed in different environments, so that they are unnecessarily consuming a lot of power when they are designed larger than necessary. Or, if you are in an environment with more noise than the designed level, you are more likely to encounter errors.

본 발명은 노이즈 환경에 따라 구동되는 구조를 달리할 수 있는 가변 구조의 에러 정정 부호화기를 제공한다.The present invention provides a variable-structure error-correcting encoder capable of different structures driven according to a noise environment.

또한, 본 발명은 노이즈 크기에 따라 구동되는 신드롬 제너레이터의 갯수를 달리할 수 있는 가변 구조의 에러 정정 부호화기를 제공한다.Also, the present invention provides a variable-structure error-correcting encoder capable of changing the number of syndrome generators driven according to the noise size.

또한, 본 발명은 노이즈 크기에 따라 구동되는 오류 위치 다항식 생성부의 갯수를 달리할 수 있는 가변 구조의 에러 정정 부호화기를 제공한다.In addition, the present invention provides a variable-structure error-correcting encoder capable of changing the number of error locator polynomial generating units driven according to a noise size.

또한, 본 발명은 노이즈 크기에 따라 구동되는 오류 평가 다항식 생성부의 갯수를 달리할 수 있는 가변 구조의 에러 정정 부호화기를 제공한다.Also, the present invention provides a variable-structure error-correcting encoder capable of changing the number of error evaluation polynomial generation units driven according to a noise size.

또한, 본 발명은 노이즈 크기에 따라 에러 정정을 위하여 소모되는 전력량을 달리할 수 있는 가변 구조의 에러 정정 부호화기를 제공한다.Also, the present invention provides a variable-structure error-correcting encoder capable of varying the amount of power consumed for error correction according to the noise size.

본원의 제1 발명에 따른 가변 구조의 에러 정정 부호화기는, 오류 정정 비트 수에 대응하여 선택 제어 신호를 출력하는 주제어부; 상기 선택 제어 신호에 제어되고, 입력되는 데이터 비트에 제너레이터 매트릭스를 승산하여 데이터 비트와 패리티 비트로 이루어진 코드 워드를 출력하는 인코더; 상기 선택 제어 신호에 제어되고, 저장부로부터 수신되는 코드 워드를 입력받아 신드롬값을 출력하는 계산하는 신드롬 발생부; 상기 선택 제어 신호에 제어되고, 상기 신드롬값을 이용하여 오류 위치를 검출하기 위한 오류 위치 검출 계수를 생성하는 키 이퀘이션 솔버; 상기 선택 제어 신호에 제어되고, 상기 오류 위치 검출 계수를 이용하여 오류 위치 검출 신호를 출력하는 오류 위치 검출부; 및 상기 선택 제어 신호에 제어되고, 상기 오류 위치 검출 신호를 이용하여 해당하는 위치의 오류를 정정하는 오류 정정부를 포함한다.According to a first aspect of the present invention, there is provided an error-correcting encoder of a variable structure, comprising: a main controller for outputting a selection control signal corresponding to the number of error correction bits; An encoder controlled by the selection control signal and outputting a code word composed of a data bit and a parity bit by multiplying an input data bit by a generator matrix; A syndrome generator which is controlled by the selection control signal and receives a codeword received from the storage unit and outputs a syndrome value; A key assignment solver controlled by the selection control signal and generating an error position detection coefficient for detecting an error position using the syndrome value; An error position detection unit controlled by the selection control signal and outputting an error position detection signal using the error position detection coefficient; And an error correction unit that is controlled by the selection control signal and corrects an error at a corresponding position using the error position detection signal.

또한, 상기 인코더는, 서류 다른 오류 비트를 정정할 수 있는 복수의 오류 정정용 인코더를 포함하고, 상기 복수의 오류 정정용 인코더는 동일한 크기의 데이터 비트를 입력받아 서로 다른 크기의 패리티 비트를 포함하는 코드 워드를 출력할 수 다.The encoder includes a plurality of error correction encoders capable of correcting other error bits of the document, and the plurality of error correction encoders receive data bits of the same size and receive codewords having parity bits of different sizes .

또한, 상기 신드롬 발생부는 복수의 신드롬 제너레이터를 포함하고, 상기 오류 정정 비트 수에 따라 상기 복수의 신드롬 제너레이터 중 일부 또는 전부가 상기 선택 제어 신호에 제어된다.The syndrome generation unit may include a plurality of syndrome generators, and some or all of the plurality of syndrome generators may be controlled by the selection control signal according to the number of error correction bits.

또한, 상기 키 이퀘이션 솔버는, 순차로 입력되는 상기 신드롬값을 임시 저장 및 출력하는 임시 저장부; 상기 선택제어신호에 제어되어 오류 추정 위치 값과 오류 위치 검출 계수를 출력하는 처리식 모듈부; 상기 임시 저장부로부터 출력되는 상기 신드롬값과 상기 오류 추정 위치 값을 승산하여 복수의 승산 결과값을 출력하는 승산부; 상기 승산부로부터 출력되는 상기 복수의 승산 결과값을 가산하여 출력하는 가산부; 및 상기 가산부로부터 출력되는 가산 결과값을 이용하여 상기 처리식 모듈부를 제어하기 위한 제어신호를 출력하는 제어부를 포함한다.The key acquisition solver may further include: a temporary storage unit for temporarily storing and outputting the syndrome values sequentially input; A processing module unit controlled by the selection control signal to output an error estimation position value and an error position detection coefficient; A multiplier for multiplying the syndrome value output from the temporary storage unit by the error estimation position value and outputting a plurality of multiplication result values; An adding unit operable to add and output the multiplication result values output from the multiplier; And a control unit for outputting a control signal for controlling the processing module unit by using an addition result value output from the addition unit.

또한, 본원의 제2 발명에 따른 가변 구조의 에러 정정 부호화기는, 오류 정정 비트 수에 대응하여 선택 제어 신호를 출력하는 주제어부; 입력되는 데이터 비트에 제너레이터 매트릭스를 승산하여 데이터 비트와 패리티 비트로 이루어진 코드 워드를 출력하는 인코더; 저장부로부터 수신되는 코드 워드를 입력받아 신드롬값을 출력하는 계산하는 신드롬 발생부; 상기 신드롬값을 이용하여 오류 위치를 검출하기 위한 오류 위치 검출 계수를 생성하는 키 이퀘이션 솔버; 상기 오류 위치 검출 계수를 이용하여 오류 위치 검출 신호를 출력하는 오류 위치 검출부; 및 상기 오류 위치 검출 신호를 이용하여 해당하는 위치의 오류를 정정하는 오류 정정부를 포함하고, 상기 오류 정정 비트 수에 따라 상기 신드롬 발생부, 상기 키 이퀘이션 솔버, 및 상기 오류 위치 검출부 각각의 일부 또는 전부가 상기 선택 제어 신호에 동일 비율로 제어된다.According to a second aspect of the present invention, there is provided an error-correcting encoder of a variable structure, comprising: a main controller for outputting a selection control signal corresponding to the number of error correction bits; An encoder for multiplying an input data bit by a generator matrix and outputting a code word composed of a data bit and a parity bit; A syndrome generation unit for receiving a codeword received from the storage unit and outputting a syndrome value; A key assignment solver for generating an error position detection coefficient for detecting an error position using the syndrome value; An error position detection unit for outputting an error position detection signal using the error position detection coefficient; And an error correcting unit for correcting an error of a corresponding position using the error position detecting signal, wherein the error correcting unit corrects the syndrome generating unit, the key assignment solver, and a part of each of the error position detecting units Or all of them are controlled to the same ratio to the selection control signal.

본 발명의 가변 구조의 에러 정정 부호화기에 따르면, 노이즈 환경에 따라 구동되는 구조를 달리할 수 있고, 노이즈 크기에 따라 구동되는 신드롬 제너레이터의 갯수를 달리할 수 있으며, 노이즈 크기에 따라 구동되는 오류 위치 다항식 생성부의 갯수를 달리할 수 있고, 노이즈 크기에 따라 구동되는 오류 평가 다항식 생성부의 갯수를 달리할 수 있으며, 노이즈 크기에 따라 에러 정정을 위하여 소모되는 전력량을 달리할 수 있다.According to the error-correcting encoder of the variable structure of the present invention, the structure driven according to the noise environment can be different, and the number of syndrome generators driven according to the noise size can be varied. In addition, The number of generating units may be different and the number of error evaluating polynomial generating units driven according to the noise size may be different and the amount of power consumed for error correction may be different depending on the noise size.

도 1은 본 발명의 일실시예에 따른 가변 구조의 에러 정정 부호화기 전체 블록도,
도 2는 본 발명의 일실시예에 따른 가변 구조의 에러 정정 부호화기 내 인코더의 세부 구성도,
도 3은 본 발명의 일실시예에 따른 가변 구조의 에러 정정 부호화기 내 신드롬 제너레이터의 세부 구성도,
도 4는 본 발명의 일실시예에 따른 가변 구조의 에러 정정 부호화기 내 오류 위치 다항식 생성부의 세부 구성도, 및
도 5는 본 발명의 일실시예에 따른 가변 구조의 에러 정정 부호화기 내 오류 평가 다항식 생성부의 세부 구성도이다.
1 is an overall block diagram of a variable-structure error-correcting encoder according to an embodiment of the present invention,
2 is a detailed configuration diagram of an encoder in an error-correcting encoder of a variable structure according to an embodiment of the present invention,
3 is a detailed configuration diagram of a syndrome generator in a variable-structure error-correcting encoder according to an embodiment of the present invention,
FIG. 4 is a detailed block diagram of an error location polynomial generation unit in a variable-structure error correction encoder according to an embodiment of the present invention, and FIG.
5 is a detailed configuration diagram of an error evaluating polynomial generating unit in a error-correcting encoder of a variable structure according to an embodiment of the present invention.

본 발명의 구체적인 특징 및 이점들은 첨부도면에 의거한 다음의 상세한 설명으로 더욱 명백해질 것이다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 발명자가 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 할 것이다. 또한, 본 발명에 관련된 공지 기능 및 그 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는, 그 구체적인 설명을 생략하였음에 유의해야 할 것이다.
Specific features and advantages of the present invention will become more apparent from the following detailed description based on the accompanying drawings. Prior to this, terms and words used in the present specification and claims are to be interpreted in accordance with the technical idea of the present invention based on the principle that the inventor can properly define the concept of the term in order to explain his invention in the best way. It should be interpreted in terms of meaning and concept. It is to be noted that the detailed description of known functions and constructions related to the present invention is omitted when it is determined that the gist of the present invention may be unnecessarily blurred.

도 1은 본 발명의 일실시예에 따른 가변 구조의 에러 정정 부호화기 전체 블록도이다.1 is a block diagram of an error-correcting encoder of a variable structure according to an embodiment of the present invention.

본 발명의 일실시예에 따른 가변 구조의 에러 정정 부호화기는, 인코더(210)와 디코더(220)를 포함하고, 디코더(220)는 신드롬 발생부(221), 키 이퀘이션 솔버(222), 오류 위치 검출부(223), 오류 정정부(224), 및 선입선출부(225)를 포함한다.The error-correcting encoder of a variable structure according to an embodiment of the present invention includes an encoder 210 and a decoder 220. The decoder 220 includes a syndrome generating unit 221, a key allocation solver 222, A position detection unit 223, an error correction unit 224, and a first-in-first-out unit 225.

주제어부(100)는 인코더(210), 신드롬 발생부(221), 키 이퀘이션 솔버(222), 오류 위치 검출부(223)의 동작 갯수를 제어하는 제어신호를 발생한다.The main control unit 100 generates a control signal for controlling the number of operations of the encoder 210, the syndrome generating unit 221, the keying solver 222, and the error position detecting unit 223.

인코더(210)는 주제어부(100)의 선택제어신호(Ssel)에 의해 제어되고, 프로세서(300)로부터 입력되는 데이터비트에 제너레이터 매트릭스를 곱하여 데이터비트와 패리티비트로 이루어진 코드워드(codeword)를 출력한다.The encoder 210 is controlled by the selection control signal Ssel of the main control unit 100 and outputs a codeword including a data bit and a parity bit by multiplying a data bit input from the processor 300 by a generator matrix .

신드롬 발생부(221)는 주제어부(100)의 선택제어신호(Ssel)에 의해 제어되고, 저장부, 예컨대, 플래시 메모리(400)로부터 수신되는 코드워드를 입력받아 신드롬값을 계산한다.The syndrome generation unit 221 is controlled by a selection control signal Ssel of the main control unit 100 and receives a codeword received from a storage unit such as the flash memory 400 to calculate a syndrome value.

키 이퀘이션 솔버(222)는 주제어부(100)의 선택제어신호(Ssel)에 의해 제어되고, 신드롬 발생부(221)로부터 출력되는 신드롬값을 이용하여 오류 위치를 검출하기 위한 오류 위치 검출 계수를 생성한다.The key selection solver 222 is controlled by the selection control signal Ssel of the main control unit 100 and generates an error position detection coefficient for detecting the error position using the syndrome value output from the syndrome generation unit 221 .

오류 위치 검출부(223)는 주제어부(100)의 선택제어신호(Ssel)에 의해 제어되고, 키 이퀘이션 솔버(222)로부터 출력되는 오류 위치 검출 계수를 이용하여 오류의 위치를 검출하는 오류 위치 검출 신호를 출력한다.The error position detection unit 223 is controlled by the selection control signal Ssel of the main control unit 100 and detects an error position using an error position detection coefficient outputted from the key assignment solver 222 And outputs a signal.

오류 정정부(224)는 주제어부(100)의 선택제어신호(Ssel)에 제어되고, 오류 위치 검출부(223)로부터 출력되는 오류 위치 검출 신호와 데이터 비트를 배타적 논리합으로 연산하여 오류를 정정한다.The error correction unit 224 is controlled by the selection control signal Ssel of the main control unit 100 and corrects the error by calculating the error position detection signal output from the error position detection unit 223 and the data bits using the exclusive OR.

선입선출부(225)는 신드롬 발생부(221), 키 이퀘이션 솔버(222), 및 오류 위치 검출부(223)를 통과하면서 소요되는 시간지연을 보상하도록 플래시 메모리(400)로부터 수신되는 코드 워드를 소정시간 지연시켜 순서대로 출력한다.The first-in-first-out unit 225 receives a codeword received from the flash memory 400 to compensate for a time delay while passing through the syndrome generating unit 221, the keying solver 222, and the error position detecting unit 223 And outputs them sequentially in a predetermined time delay.

도 2는 본 발명의 일실시예에 따른 가변 구조의 에러 정정 부호화기 내 인코더의 세부 구성도이다.2 is a detailed configuration diagram of an encoder in an error-correcting encoder of a variable structure according to an embodiment of the present invention.

본 발명의 일실시예에 따른 가변 구조의 에러 정정 부호화기 내 인코더(210)는 선택제어신호(Ssel)에 의해 제어되어 입력되는 데이터비트를 복수의 출력터미널 중 어느 하나로 출력하는 셀렉터(211), 셀렉터(211)의 출력터미널에 각각 병렬로 연결되는 복수의 오류 비트 정정용 인코더(212, 213, 214)를 포함한다. The encoder 210 in the error-correcting encoder of the variable structure according to an embodiment of the present invention includes a selector 211 for outputting a data bit controlled by the selection control signal Ssel and input to one of a plurality of output terminals, And a plurality of error bit correcting encoders 212, 213, and 214 connected in parallel to the output terminals of the error correcting unit 211, respectively.

여기서, 복수의 오류 비트 정정용 인코더(212, 213, 214)는 서로 다른 오류 비트를 정정하는 데에 사용되며, 입력되는 데이터비트는 동일하나(예컨대, 128비트), 정정하는 오류비트 수가 다르기 때문에 출력하는 코드워드는 상이하다. 예컨대, 2 비트 오류 정정용 인코더(212)가 출력하는 코드워드의 패리티 비트는 16비트이고, 4 비트 오류 정정용 인코더(213)가 출력하는 코드워드의 패리티 비트는 32비트이며, 8 비트 오류 정정용 인코더(214)가 출력하는 코드워드의 패리티 비트는 64비트를 포함한다.Here, the plurality of error bit correcting encoders 212, 213, and 214 are used to correct different error bits. Since the number of error bits to be corrected is the same (for example, 128 bits) Are different. For example, the parity bit of the code word output by the 2-bit error correction encoder 212 is 16 bits, the parity bit of the code word output by the 4-bit error correction encoder 213 is 32 bits, and the 8-bit error correction encoder The parity bit of the code word output by the parity checker 214 includes 64 bits.

한편, 인코더의 세부 구조는 부호화와 관련하여 통상의 지식을 가진 자에게 자명한 사항이고, 다양한 방식으로 설계될 수 있다는 것 또한 자명한 사항에 불과하므로 생략하기로 한다.
It should be noted that the detailed structure of the encoder is obvious to those skilled in the art with respect to encoding, and that it can be designed in various ways.

도 3a는 본 발명의 일실시예에 따른 8비트 오류 정정 모드시 신드롬 제너레이터 사용 상태도이고, 도 3b는 본 발명의 일실시예에 따른 4비트 오류 정정 모드시 신드롬 제너레이터 사용 상태도이며, 도 3c는 본 발명의 일실시예에 따른 2비트 오류 정정 모드시 신드롬 제너레이터 사용 상태도이다.FIG. 3A is a state diagram showing the use of a syndrome generator in an 8-bit error correction mode according to an embodiment of the present invention, FIG. 3B is a state diagram illustrating a syndrome generator in a 4-bit error correction mode according to an embodiment of the present invention, FIG. 4 is a state diagram showing the use of a syndrome generator in a 2-bit error correction mode according to an embodiment of the present invention. FIG.

본 발명의 일실시예에 따른 가변 구조의 에러 정정 부호화기 내 신드롬 발생부(221)는 정정가능한 최대 오류비트가 8비트이면 병렬연결된 16개의 신드롬 제너레이터(S1, S2, ... , S16)를 포함하고, 개별 신드롬 제너레이터(S1, S2, ... , S16)는 수학식1을 만족하도록 구현될 수 있다.The syndrome generator 221 in the error-correcting encoder of the variable structure according to the embodiment of the present invention includes 16 syndrome generators (S1, S2, ..., S16) connected in parallel if the maximum error bit that can be corrected is 8 bits , And the individual syndrome generators (S1, S2, ..., S16) may be implemented to satisfy Equation (1).

Figure 112018019095412-pat00069
Figure 112018019095412-pat00069

여기서, t는 정정가능 오류비트수, n은 코드 워드 길이, r은 오류가 포함된 데이터이고,

Figure 112018019095412-pat00002
는 갈로아 필드의 원소이다.Where t is the number of correctable error bits, n is the codeword length and r is the data containing the error,
Figure 112018019095412-pat00002
Is the element of Galois field.

각각의 신드롬 제너레이터용 다항식은 예컨대, 다음의 수학식과 같다.The polynomial for each syndrome generator is, for example, the following equation.

Figure 112018019095412-pat00070
Figure 112018019095412-pat00070

Figure 112018019095412-pat00071
Figure 112018019095412-pat00071

......

Figure 112018019095412-pat00072
Figure 112018019095412-pat00072

본 발명의 일실시예에 따르면, 8비트 오류 정정 모드시에는 도 3a에 도시된 바와 같이, 16개의 신드롬 제너레이터(S1, S2, ... , S16)가 모두 사용되고, 4비트 오류 정정 모드시에는, 주제어부(100)의 선택제어신호(Ssel)에 의해 제어되어, 도 3b에 도시된 바와 같이, 8개의 신드롬 제너레이터(S1, S2, ... , S8)가 사용되며, 2비트 오류 정정 모드시에는, 주제어부(100)의 선택제어신호(Ssel)에 의해 제어되어, 도 3c에 도시된 바와 같이, 4개의 신드롬 제너레이터(S1, S2, S3, S4)가 사용된다. 이때, 개별 신드롬 제너레이터의 입력단에 인에이블용 소자(미도시)가 배치되고, 선택제어신호(Ssel)에 의해 제어되어 인에이블될 수 있다.According to an embodiment of the present invention, in the 8-bit error correcting mode, all the syndrome generators S1, S2, ..., S16 are used as shown in FIG. 3A, 8 control signals Ssel of the main control section 100 to use eight syndrome generators S1, S2, ..., S8 as shown in Fig. 3B, and a 2-bit error correction mode The four syndrome generators S1, S2, S3, and S4 are used, as shown in Fig. 3C, by being controlled by the selection control signal Ssel of the main control section 100. [ At this time, an enable element (not shown) is disposed at the input terminal of the individual syndrome generator and can be controlled and enabled by the selection control signal Ssel.

한편, 도시되지는 않았으나, 선택제어신호(Ssel)를 이용하여 데이터(r)를 "0"으로 처리함으로써 복수의 신드롬 제너레이터 중 일부 또는 전부의 구동을 제어할 수 있다. 예컨대, 4개의 신드롬 제너레이터(S1, S2, S3, S4)가 사용되는 경우, 나머지 신드롬 제너레이터의 입력으로 "0"값의 선택제어신호(Ssel)와 데이터(r)를 논리곱 연산한 값을 사용함으로써 나머지 신드롬 제너레이터의 출력을 제어할 수 있다.
Although not shown, the driving of some or all of the plurality of syndrome generators can be controlled by processing the data r to "0 " by using the selection control signal Ssel. For example, when four syndrome generators (S1, S2, S3, S4) are used, a value obtained by performing a logical product of the data control signal Ssel and the data r is used as the input of the remaining syndrome generator The output of the remaining syndrome generator can be controlled.

도 4a는 본 발명의 일실시예에 따른 신드롬 제너레이터(S1)의 구체 구성도로서, 수학식2를 완전 병렬 구조로 구현한 것이다.4A is a specific configuration diagram of a syndrome generator S1 according to an embodiment of the present invention, and Equation 2 is implemented in a fully parallel structure.

즉, 수학식2의 우측항을 1사이클에 승산 및 가산 처리함으로써 연산을 신속하게 처리할 수 있다는 장점이 있으나, 대면적을 필요로 하는 문제가 있다.That is, although there is an advantage that the operation can be processed quickly by multiplying and adding the right term of the expression (2) in one cycle, there is a problem that a large area is required.

한편, 본 발명의 상세한 설명 및 도면 전반에 걸쳐 언급되는 가산 또는 승산이라 함은 갈로아 필드 내에서의 산술적 가산 또는 승산을 의미한다. In the meantime, the addition or multiplication referred to throughout the description of the present invention and throughout the drawings refers to an arithmetic addition or multiplication in a Galois Field.

도 4b는 본 발명의 다른 실시예에 따른 신드롬 제너레이터(S1)의 구체 구성도로서, 수학식2를 준 병렬 구조로 구현한 것이다. FIG. 4B is a specific configuration diagram of a syndrome generator S1 according to another embodiment of the present invention, and Equation 2 is implemented in a quasi-parallel structure.

즉, 수학식2 중 15개를 병렬로, 1개를 직렬로, 각각 구현하고, 12사이클 동안에 승산 및 가산 처리함으로써 연산처리 속도가 완전 병렬 구조에 비해 늦어지는 반면, 구현하는 면적을 대략 1/12 정도로 줄일 수 있다.That is, 15 of the equations (2) are implemented in parallel and one is implemented in series, and the multiplication and addition processes are performed for 12 cycles, thereby slowing the processing speed compared to the fully parallel structure. On the other hand, 12.

한편, 신드롬 제너레이터 내부 구조에서 승산 및 가산 처리에서 직병렬의 갯수를 조절하여 구현하는 면적을 더욱 줄일 수 있음은 당업자에게 자명하다.
It is apparent to those skilled in the art that the number of serial and parallel lines in the multiplication and addition processes in the internal structure of the syndrome generator can be adjusted to further reduce the area for implementation.

도 5는 본 발명의 일실시예에 따른 가변 구조의 에러 정정 부호화기 내 키이퀘이션 솔버(222)의 세부 구성도이다.5 is a detailed configuration diagram of a keying solver 222 in a variable-structure error-correcting encoder according to an embodiment of the present invention.

키 이퀘이션 솔버(222)는 주제어부(100)의 선택제어신호(Ssel)에 제어되고, 신드롬 발생부(221)로부터 출력되는 신드롬값(Syn)을 이용하여 오류 위치 검출 계수를 생성한다.
The key assignment solver 222 is controlled by the selection control signal Ssel of the main control unit 100 and generates an error position detection coefficient using the syndrome value Syn output from the syndrome generation unit 221. [

키 이퀘이션 솔버(222)는 순차로 입력되는 신드롬값(Syn)을 임시 저장하였다가 순차 출력하는 임시 저장부(510), 주제어부(100)의 선택제어신호(Ssel)에 의해 제어되고, 제어유닛(550)으로부터 출력되는 제어신호(cont.)에 동기 제어되어 오류 추정 위치값(

Figure 112018019095412-pat00006
)과 오류 위치 검출 계수(
Figure 112018019095412-pat00007
)를 출력하는 처리식 모듈부(520), 임시 저장부(510)로부터 출력되는 신드롬값(S)과 처리식 모듈부(520)로부터 출력되는 오류 추정 위치값(
Figure 112018019095412-pat00008
)을 승산하여 결과값을 출력하는 승산부(530), 승산부(530)로부터 출력되는 복수의 승산 결과값을 가산하여 결과값을 출력하는 가산부(540), 가산부(540)로부터 출력되는 결과값을 이용하여 복수의 처리식 모듈부(520)를 제어하는 제어신호(cont.)를 출력하는 제어부(550)를 포함한다.The key assignment solver 222 is controlled by a temporary storage unit 510 for temporarily storing and sequentially outputting the sequentially inputted syndrome value Syn and a selection control signal Ssel of the main control unit 100, (Cont.) Output from the unit 550 and outputs an error estimated position value
Figure 112018019095412-pat00006
) And error position detection coefficient (
Figure 112018019095412-pat00007
A syndrome value S output from the temporary storage unit 510 and an error estimation position value S (S) output from the processing module 520
Figure 112018019095412-pat00008
An adder 540 for adding a plurality of multiplication result values output from the multiplier 530 and outputting a result of the multiplication, an adder 540 for outputting the result of multiplication, And a control unit 550 for outputting a control signal cont. For controlling the plurality of processing module units 520 using the result values.

본 발명의 일실시예에 따르면, 임시 저장부(510)는 직렬연결된 복수의 레지스터(Reg0(511), Reg1(512), ..., Reg15(51f))로 구현될 수 있다. According to an embodiment of the present invention, the temporary storage unit 510 may be implemented with a plurality of registers (Reg0 511, Reg1 512, ..., Reg15 51f) connected in series.

본 발명의 일실시예에 따르면, 처리식 모듈부(520)는 주제어부(100)의 선택제어신호(Ssel)에 의해 제어되고 제어유닛(550)으로부터 출력되는 제어신호(cont.)에 동기적으로 제어되어 오류 추정 위치값(

Figure 112018019095412-pat00009
0,
Figure 112018019095412-pat00010
1,
Figure 112018019095412-pat00011
2, ...,
Figure 112018019095412-pat00012
15 )과 오류 위치 검출 계수(
Figure 112018019095412-pat00013
)를 출력하는 복수의 처리식 모듈(PE0(521), PE1(522), ... , PE15(52f))로 구현될 수 있다.According to one embodiment of the present invention, the processing module unit 520 is connected to the control signal cont., Which is controlled by the selection control signal Ssel of the main control unit 100 and is output from the control unit 550, And the error estimated position value (
Figure 112018019095412-pat00009
0,
Figure 112018019095412-pat00010
One,
Figure 112018019095412-pat00011
2, ...,
Figure 112018019095412-pat00012
15) and error position detection coefficient (
Figure 112018019095412-pat00013
(PE0 521, PE1 522, ..., PE15 52f) for outputting a plurality of process modules (PE0 521, PE1 522, ..., PE15 52f).

본 발명의 일실시예에 따르면, 승산부(530)는 복수의 레지스터(Reg0(511), Reg1(512), ..., Reg15(51f)) 각각으로부터 출력되는 개별 신드롬값(S16, S15, ..., S1)과 복수의 처리식 모듈(PE0(521), PE1(522), ..., PE15(52f)) 각각으로부터 출력되는 개별 오류 추정 위치값(

Figure 112018019095412-pat00014
0,
Figure 112018019095412-pat00015
1,
Figure 112018019095412-pat00016
2, ...,
Figure 112018019095412-pat00017
15 )을 승산하여 결과값(Q0, Q1, Q2, ..., Q15)을 병렬적으로 출력하는 복수의 승산 유닛(531, 532, ..., 53f)으로 구현될 수 있다.The multiplier 530 multiplies the individual syndromes S16, S15, and S155 output from each of the plurality of registers (Reg0 511, Reg1 512, ..., Reg15 51f) ..., S1) output from each of the processing modules (PE0 521, PE1 522, ..., PE15 52f)
Figure 112018019095412-pat00014
0,
Figure 112018019095412-pat00015
One,
Figure 112018019095412-pat00016
2, ...,
Figure 112018019095412-pat00017
..., and 53f that multiply the result values (Q0, Q1, Q2, ..., Q15) in parallel by multiplying the output values Q0,

한편, 본 발명의 일실시예에 따르면, 2비트 오류 정정 모드시, 임시 저장부(510)는 신드롬 제너레이터(221)와 인접한 4개의 레지스터(Reg0(511), Reg1(512), Reg2(513), Reg3(514))가, 이에 대응되어 처리식 모듈부(520)는 4개의 처리식 모듈(PE0(521), PE1(522), PE2(523), PE3(524))이, 승산부(530)는 4개의 승산 유닛(531, 532, 533, 534)이 각각 사용되고, 4개의 승산 결과값(Q0, Q1, Q2, Q3)이 가산 유닛(540)에 입력된다.In the 2-bit error correction mode, the temporary storage unit 510 stores four registers (Reg0 511, Reg1 512, and Reg2 513) adjacent to the syndrome generator 221, And Reg3 514 correspond to the processing module 520. The processing module 520 includes four processing modules (PE0 521, PE1 522, PE2 523 and PE3 524) 530 are used for the four multiplication units 531, 532, 533 and 534 respectively and four multiplication result values Q0, Q1, Q2 and Q3 are inputted to the addition unit 540.

본 발명의 다른 실시예에 따르면, 4비트 오류 정정 모드시, 임시 저장부(510)는 신드롬 제너레이터(221)와 인접한 8개의 레지스터(Reg0(511), Reg1(512), ... , Reg7(518))가, 이에 대응되어 처리식 모듈부(520)는 8개의 처리식 모듈(PE0(521), PE1(522), ..., PE7(528))이, 승산부(530)는 8개의 승산 유닛(531, 532, ..., 538)이 각각 사용되고, 8개의 승산 결과값(Q0, Q1, Q2, ..., Q7)이 가산부(540)에 입력된다.According to another embodiment of the present invention, in the 4-bit error correction mode, the temporary storage unit 510 stores eight registers (Reg0 511, Reg1 512, ..., Reg7 (PE0 521, PE1 522, ..., PE7 528) and the multiplication section 530 corresponds to 8 And the multiplication result values Q0, Q1, Q2, ..., Q7 are input to the adder 540. The adder 540 multiplies the output values Q0, Q1, Q2, ..., Q7 by the multiplication units 531, 532,

본 발명의 또 다른 실시예에 따르면, 8비트 오류 정정 모드시, 임시 저장부(510)는 16개의 레지스터(Reg0(511), Reg1(512), ..., Reg15(51f))가, 처리식 모듈부(520)는 16개의 처리식 모듈(PE0(521), PE1(522), ..., PE15(52f))이, 승산부(530)는 16개의 승산 유닛(531, 532, ..., 53f)이 각각 사용된다.
According to another embodiment of the present invention, in the 8-bit error correction mode, the temporary storage unit 510 stores 16 registers (Reg0 511, Reg1 512, ..., Reg15 51f) The expression module 520 includes 16 processing modules (PE0 521, PE1 522, ..., PE15 52f), and the multiplier 530 multiplies 16 multiplication units 531, 532,. ..., and 53f, respectively.

도 6a는 본 발명의 일실시예에 따른 완전 병렬 방식의 오류 위치 검출부의 세부 구성도이다.6A is a detailed configuration diagram of a fully parallel method error position detector according to an embodiment of the present invention.

오류 위치 검출부(223)는 처리식 모듈부(520)로부터 출력되는 오류 위치 검출 계수 (

Figure 112018019095412-pat00018
,
Figure 112018019095412-pat00019
, ...,
Figure 112018019095412-pat00020
)와 신드롬 제너레이터(221)에서 사용되는 갈로아 필드의 원소(
Figure 112018019095412-pat00021
,
Figure 112018019095412-pat00022
, ... ,
Figure 112018019095412-pat00023
)를 승산 및 가산하여 복수의 오류 위치 검출 신호(
Figure 112018019095412-pat00024
,
Figure 112018019095412-pat00025
, ... ,
Figure 112018019095412-pat00026
)를 출력한다.The error position detection unit 223 receives the error position detection coefficient (
Figure 112018019095412-pat00018
,
Figure 112018019095412-pat00019
, ...,
Figure 112018019095412-pat00020
) And the element of the Galois field used in the syndrome generator 221
Figure 112018019095412-pat00021
,
Figure 112018019095412-pat00022
, ...,
Figure 112018019095412-pat00023
) To multiply and add a plurality of error position detection signals (
Figure 112018019095412-pat00024
,
Figure 112018019095412-pat00025
, ...,
Figure 112018019095412-pat00026
).

예컨대, 본 발명의 일실시예에 따른 2비트 오류 정정 모드시, 2개의 오류 위치 검출 계수(

Figure 112018019095412-pat00027
,
Figure 112018019095412-pat00028
)를 이용하는 제1 모듈부(611)를 통해 오류 위치 검출 신호(
Figure 112018019095412-pat00029
,
Figure 112018019095412-pat00030
, ... ,
Figure 112018019095412-pat00031
)를 출력할 수 있다. 본 발명의 다른 실시예에 따른 4비트 오류 정정 모드시, 4개의 오류 위치 검출 계수(
Figure 112018019095412-pat00032
,
Figure 112018019095412-pat00033
,
Figure 112018019095412-pat00034
,
Figure 112018019095412-pat00035
)를 이용하는 제2 모듈부(612)를 통해 오류 위치 검출 신호(
Figure 112018019095412-pat00036
,
Figure 112018019095412-pat00037
, ... ,
Figure 112018019095412-pat00038
)를 출력할 수 있다. 본 발명의 또 다른 실시예에 따른 8비트 오류 정정 모드시, 8개의 오류 위치 검출 계수(
Figure 112018019095412-pat00039
,
Figure 112018019095412-pat00040
, ...,
Figure 112018019095412-pat00041
)를 이용하는 제3 모듈부(613)를 통해 오류 위치 검출 신호(
Figure 112018019095412-pat00042
,
Figure 112018019095412-pat00043
, ... ,
Figure 112018019095412-pat00044
)를 출력할 수 있다. For example, in the 2-bit error correction mode according to an embodiment of the present invention, two error position detection coefficients
Figure 112018019095412-pat00027
,
Figure 112018019095412-pat00028
Through the first module unit 611 using the error position detection signal
Figure 112018019095412-pat00029
,
Figure 112018019095412-pat00030
, ...,
Figure 112018019095412-pat00031
Can be output. In the 4-bit error correction mode according to another embodiment of the present invention, four error position detection coefficients (
Figure 112018019095412-pat00032
,
Figure 112018019095412-pat00033
,
Figure 112018019095412-pat00034
,
Figure 112018019095412-pat00035
Through the second module unit 612 using the error position detection signal
Figure 112018019095412-pat00036
,
Figure 112018019095412-pat00037
, ...,
Figure 112018019095412-pat00038
Can be output. In the 8-bit error correction mode according to another embodiment of the present invention, eight error position detection coefficients (
Figure 112018019095412-pat00039
,
Figure 112018019095412-pat00040
, ...,
Figure 112018019095412-pat00041
Through the third module unit 613 using the error position detection signal
Figure 112018019095412-pat00042
,
Figure 112018019095412-pat00043
, ...,
Figure 112018019095412-pat00044
Can be output.

한편, 도시되지는 않았으나, 오류 위치 검출부(223) 내 제1 내지 제3 모듈부(611, 612, 163) 중 어느 것을 사용할 지의 여부는 선택제어신호(Ssel)를 이용하여 결정할 수 있다. 예컨대, 2비트 정정 모드시, 제1 모듈부(611)를 사용하기 위하여 복수의 오류 위치 검출 계수(

Figure 112018019095412-pat00045
,
Figure 112018019095412-pat00046
, ...,
Figure 112018019095412-pat00047
) 중
Figure 112018019095412-pat00048
...,
Figure 112018019095412-pat00049
를 "0"으로 처리한다. 이를 위하여, 오류 위치 검출 계수(
Figure 112018019095412-pat00050
...,
Figure 112018019095412-pat00051
)와 "0"값의 선택제어신호(Ssel)를 논리곱 연산한 결과값을 오류 위치 검출부(223)의 입력으로 사용한다.Although not shown, whether or not to use the first to third module units 611, 612, and 163 in the error position detection unit 223 can be determined using the selection control signal Ssel. For example, in order to use the first module unit 611 in the 2-bit correction mode, a plurality of error position detection coefficients (
Figure 112018019095412-pat00045
,
Figure 112018019095412-pat00046
, ...,
Figure 112018019095412-pat00047
) Of
Figure 112018019095412-pat00048
...,
Figure 112018019095412-pat00049
Quot; 0 ". To this end, the error position detection coefficient (
Figure 112018019095412-pat00050
...,
Figure 112018019095412-pat00051
) And a selection control signal Ssel of a value of "0 " is used as an input to the error position detection unit 223.

도 6b는 본 발명의 다른 실시예에 따른 준 병렬 방식의 오류 위치 검출부의 세부 구성도로서, 멀티플렉서와 D F/F를 사용하여 준 병렬 방식으로 구현함으로써, 연산처리 속도가 완전 병렬 구조에 비해 늦어지는 반면, 구현하는 면적을 대략 1/12 정도로 줄일 수 있다.FIG. 6B is a detailed configuration diagram of a quasi-parallel error location detector according to another embodiment of the present invention. In the quasi-parallel method using a multiplexer and a DF / F, On the other hand, the area to be implemented can be reduced to about 1/12.

한편, 오류 위치 검출부(223) 내부 구조에서 승산 및 가산 처리에서 직병렬의 갯수를 조절하여 구현하는 면적을 더욱 줄일 수 있음은 당업자에게 자명하다.
It is apparent to those skilled in the art that the number of serial and parallel lines in the multiplication and addition processes in the internal structure of the error location detection unit 223 can be adjusted to further reduce the area to be implemented.

본 발명의 일실시예에 따른 오류 정정부(224)는 오류 위치 검출 신호(

Figure 112018019095412-pat00052
,
Figure 112018019095412-pat00053
, ... ,
Figure 112018019095412-pat00054
) 의 결과값이 "0"으로 나타난 위치를 오류가 발생된 위치로 판단하고, 선입선출부(225)를 통해 입력되는 데이터 중 오류 발생 위치와 데이터 비트를 배타적 논리합으로 연산하여 오류를 정정한다.The error correction unit 224 according to an embodiment of the present invention includes an error position detection signal
Figure 112018019095412-pat00052
,
Figure 112018019095412-pat00053
, ...,
Figure 112018019095412-pat00054
) Is determined to be the position where the error is generated, and the error is corrected by calculating the error occurrence position and the data bit among the data input through the first-in-first selection unit 225 as an exclusive OR.

본 발명에 따른 가변 구조의 에러 정정 부호화기는 데이터 전송 기술에 널리 적용 가능한바, 예컨대, SSD(Solid State Drive), 광통신 시스템, DVB(Digital Video Broadcasting), MP3, USB Stick 등에 적용 가능하다.
The error-correcting encoder of the variable structure according to the present invention can be widely applied to a data transmission technology. For example, the error-correcting encoder of the present invention can be applied to an SSD (Solid State Drive), an optical communication system, a DVB (Digital Video Broadcasting)

이상으로 본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 기술적 사상에 의해 정해져야 할 것이다.While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. Therefore, the true technical protection scope of the present invention should be determined by technical thought.

100: 주제어부 200: 에러 정정 부호화기
210: 인코더 220: 디코더
221: 신드롬 발생부 222: 키 이퀘이션 솔버
223: 오류 위치 검출부 224: 오류 정정부
225: 선입선출부 300: 프로세서
400: 플래시 메모리
100: main control unit 200: error correction coder
210: Encoder 220: Decoder
221: syndrome generator 222: keying solver
223: error position detection section 224: error correction section
225: first-in first-out portion 300: processor
400: flash memory

Claims (11)

오류 정정 비트 수에 대응하여 선택 제어 신호를 출력하는 주제어부;
상기 선택 제어 신호에 의해 제어되고, 입력되는 데이터 비트에 제너레이터 매트릭스를 승산하여 데이터 비트와 패리티 비트로 이루어진 코드 워드를 출력하는 인코더;
상기 선택 제어 신호에 의해 제어되고, 저장부로부터 수신되는 코드 워드를 입력받아 신드롬값을 출력하는 신드롬 발생부;
상기 선택 제어 신호에 의해 제어되고, 상기 신드롬값을 이용하여 오류 위치를 검출하기 위한 오류 위치 검출 계수를 생성하는 키 이퀘이션 솔버;
상기 선택 제어 신호에 의해 제어되고, 상기 오류 위치 검출 계수를 이용하여 오류 위치 검출 신호를 출력하는 오류 위치 검출부; 및
상기 선택 제어 신호에 의해 제어되고, 상기 오류 위치 검출 신호를 이용하여 해당하는 위치의 오류를 정정하는 오류 정정부를 포함하고,
상기 키 이퀘이션 솔버는,
순차로 입력되는 상기 신드롬값을 임시 저장 및 출력하는 임시 저장부;
상기 선택 제어 신호에 의해 제어되어 오류 추정 위치 값과 상기 오류 위치 검출 계수를 출력하는 처리식 모듈부;
상기 임시 저장부로부터 출력되는 상기 신드롬값과 상기 오류 추정 위치 값을 승산하여 복수의 승산 결과값을 출력하는 승산부;
상기 승산부로부터 출력되는 상기 복수의 승산 결과값을 가산하여 출력하는 가산부; 및
상기 가산부로부터 출력되는 가산 결과값을 이용하여 상기 처리식 모듈부를 제어하기 위한 제어신호를 출력하는 제어부
를 포함하는 가변 구조의 에러 정정 부호화기.
A main control unit for outputting a selection control signal corresponding to the number of error correction bits;
An encoder controlled by the selection control signal and outputting a code word composed of a data bit and a parity bit by multiplying an input data bit by a generator matrix;
A syndrome generator which is controlled by the selection control signal and receives a codeword received from the storage unit and outputs a syndrome value;
A key assignment solver controlled by the selection control signal to generate an error position detection coefficient for detecting an error position using the syndrome value;
An error position detector which is controlled by the selection control signal and outputs an error position detection signal using the error position detection coefficient; And
And an error correction unit that is controlled by the selection control signal and corrects an error at a corresponding position using the error position detection signal,
Wherein the key assignment solver comprises:
A temporary storage unit for temporarily storing and outputting the syndrome values sequentially input;
A processing module controlled by the selection control signal to output an error estimation position value and the error position detection coefficient;
A multiplier for multiplying the syndrome value output from the temporary storage unit by the error estimation position value and outputting a plurality of multiplication result values;
An adding unit operable to add and output the multiplication result values output from the multiplier; And
And a control unit for outputting a control signal for controlling the process module unit using the addition result value output from the addition unit
And a variable-length error-correcting encoder.
제1항에 있어서,
상기 인코더는, 서로 다른 오류 비트를 정정할 수 있는 복수의 오류 정정용 인코더를 포함하고, 상기 복수의 오류 정정용 인코더는 동일한 크기의 데이터 비트를 입력받아 서로 다른 크기의 패리티 비트를 포함하는 코드 워드를 출력할 수 있는 가변 구조의 에러 정정 부호화기.
The method according to claim 1,
The encoder includes a plurality of error correction encoders capable of correcting different error bits. The plurality of error correction encoders receive a data bit of the same size and output a code word including parity bits of different sizes A variable-structure error-correcting encoder.
제1항에 있어서,
상기 신드롬 발생부는 복수의 신드롬 제너레이터를 포함하고, 상기 오류 정정 비트 수에 따라 상기 복수의 신드롬 제너레이터 중 일부 또는 전부가 상기 선택 제어 신호에 의해 제어되는 가변 구조의 에러 정정 부호화기.
The method according to claim 1,
Wherein the syndrome generation unit includes a plurality of syndrome generators, and a part or all of the plurality of syndrome generators is controlled by the selection control signal according to the number of error correction bits.
제3항에 있어서,
상기 복수의 신드롬 제너레이터 중 하나는 다음의 수학식을 완전 병렬 방식으로 구현하는 것을 특징으로 하는 가변 구조의 에러 정정 부호화기.
Figure 112018019095412-pat00073

여기서, t는 정정가능 오류비트수, n은 코드 워드 길이, r은 오류가 포함된 데이터이고,
Figure 112018019095412-pat00056
는 갈로아 필드의 원소임.
The method of claim 3,
Wherein one of the plurality of syndrome generators implements the following equation in a fully parallel manner.
Figure 112018019095412-pat00073

Where t is the number of correctable error bits, n is the codeword length and r is the data containing the error,
Figure 112018019095412-pat00056
Is the origin of Galoa Field.
제3항에 있어서,
상기 복수의 신드롬 제너레이터 중 하나는 다음의 수학식을 준 병렬 방식으로 구현하는 것을 특징으로 하는 가변 구조의 에러 정정 부호화기.
Figure 112018019095412-pat00074

여기서, t는 정정가능 오류비트수, n은 코드 워드 길이, r은 오류가 포함된 데이터이고,
Figure 112018019095412-pat00058
는 갈로아 필드의 원소임.
The method of claim 3,
Wherein one of the plurality of syndrome generators implements the following equation in a quasi-parallel manner.
Figure 112018019095412-pat00074

Where t is the number of correctable error bits, n is the codeword length and r is the data containing the error,
Figure 112018019095412-pat00058
Is the origin of Galoa Field.
삭제delete 제1항에 있어서,
상기 처리식 모듈부는 복수의 처리식 모듈을 포함하고, 상기 제어부는 상기 복수의 처리식 모듈을 동기적으로 제어하는 가변 구조의 에러 정정 부호화기.
The method according to claim 1,
Wherein the processing module unit includes a plurality of processing modules, and the control unit controls the plurality of processing modules synchronously.
제7항에 있어서,
상기 오류 정정 비트 수에 따라 상기 복수의 처리식 모듈 중 일부 또는 전부가 상기 선택 제어 신호에 의해 제어되는 가변 구조의 에러 정정 부호화기.
8. The method of claim 7,
And a part or all of the plurality of processing modules are controlled by the selection control signal according to the number of error correction bits.
삭제delete 제1항에 있어서,
상기 오류 위치 검출부는, 상기 키 이퀘이션 솔버로부터 출력되는 오류 위치 검출 계수와 상기 신드롬 발생부에서 사용되는 갈로아 필드의 원소를 승산 및 가산하여 복수의 오류 위치 검출 신호를 출력하는 가변 구조의 에러 정정 부호화기.
The method according to claim 1,
Wherein the error position detection unit includes a variable structure error correction unit that multiplies and adds an error position detection coefficient output from the key assignment solver and an element of a Galois field used in the syndrome generation unit to output a plurality of error position detection signals, Encoder.
오류 정정 비트 수에 대응하여 선택 제어 신호를 출력하는 주제어부;
입력되는 데이터 비트에 제너레이터 매트릭스를 승산하여 데이터 비트와 패리티 비트로 이루어진 코드 워드를 출력하는 인코더;
저장부로부터 수신되는 코드 워드를 입력받아 신드롬값을 출력하는 신드롬 발생부;
상기 신드롬값을 이용하여 오류 위치를 검출하기 위한 오류 위치 검출 계수를 생성하는 키 이퀘이션 솔버;
상기 오류 위치 검출 계수를 이용하여 오류 위치 검출 신호를 출력하는 오류 위치 검출부; 및
상기 오류 위치 검출 신호를 이용하여 해당하는 위치의 오류를 정정하는 오류 정정부를 포함하고,
상기 키 이퀘이션 솔버는,
순차로 입력되는 상기 신드롬값을 임시 저장 및 출력하는 임시 저장부;
상기 선택 제어 신호에 의해 제어되어 오류 추정 위치 값과 상기 오류 위치 검출 계수를 출력하는 처리식 모듈부;
상기 임시 저장부로부터 출력되는 상기 신드롬값과 상기 오류 추정 위치 값을 승산하여 복수의 승산 결과값을 출력하는 승산부;
상기 승산부로부터 출력되는 상기 복수의 승산 결과값을 가산하여 출력하는 가산부; 및
상기 가산부로부터 출력되는 가산 결과값을 이용하여 상기 처리식 모듈부를 제어하기 위한 제어신호를 출력하는 제어부를 포함하고,
상기 처리식 모듈부는 복수의 처리식 모듈을 포함하고,
상기 오류 정정 비트 수에 따라 상기 복수의 처리식 모듈 중 일부 또는 전부가 상기 선택 제어 신호에 의해 제어되는
가변 구조의 에러 정정 부호화기.
A main control unit for outputting a selection control signal corresponding to the number of error correction bits;
An encoder for multiplying an input data bit by a generator matrix and outputting a code word composed of a data bit and a parity bit;
A syndrome generator for receiving a codeword received from a storage unit and outputting a syndrome value;
A key assignment solver for generating an error position detection coefficient for detecting an error position using the syndrome value;
An error position detection unit for outputting an error position detection signal using the error position detection coefficient; And
And an error correcting unit correcting an error of the corresponding position by using the error position detecting signal,
Wherein the key assignment solver comprises:
A temporary storage unit for temporarily storing and outputting the syndrome values sequentially input;
A processing module controlled by the selection control signal to output an error estimation position value and the error position detection coefficient;
A multiplier for multiplying the syndrome value output from the temporary storage unit by the error estimation position value and outputting a plurality of multiplication result values;
An adding unit operable to add and output the multiplication result values output from the multiplier; And
And a control unit for outputting a control signal for controlling the processing module unit by using an addition result value output from the addition unit,
Wherein the processing module portion comprises a plurality of processing modules,
Wherein a part or all of the plurality of processing modules are controlled by the selection control signal according to the number of error correction bits
Variable Structure Error Correction Coder.
KR1020120073211A 2012-07-05 2012-07-05 Reconfigurable error correction code device KR101837099B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120073211A KR101837099B1 (en) 2012-07-05 2012-07-05 Reconfigurable error correction code device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120073211A KR101837099B1 (en) 2012-07-05 2012-07-05 Reconfigurable error correction code device

Publications (2)

Publication Number Publication Date
KR20140006402A KR20140006402A (en) 2014-01-16
KR101837099B1 true KR101837099B1 (en) 2018-03-09

Family

ID=50141333

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120073211A KR101837099B1 (en) 2012-07-05 2012-07-05 Reconfigurable error correction code device

Country Status (1)

Country Link
KR (1) KR101837099B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2537876A (en) * 2015-04-29 2016-11-02 Advanced Risc Mach Ltd Error protection key generation method and system
JP6693187B2 (en) * 2016-03-11 2020-05-13 富士ゼロックス株式会社 Decoding device, program, and information transmission system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040101743A (en) * 2003-05-26 2004-12-03 삼성전자주식회사 Apparatus and method for decoding of ldpc in a communication system
KR20070103734A (en) * 2005-03-04 2007-10-24 도오쿄 인스티튜드 오브 테크놀로지 Method and device for correcting/detecting in-byte multiple spotty byte errors with limited number of erroneous bytes
KR20080043679A (en) * 2006-11-14 2008-05-19 삼성전자주식회사 Method for correcting error and apparatus adapted to the same
KR20120029154A (en) * 2010-09-16 2012-03-26 삼성전자주식회사 Decoder, method of operating the same, and apparatuses having the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040101743A (en) * 2003-05-26 2004-12-03 삼성전자주식회사 Apparatus and method for decoding of ldpc in a communication system
KR20070103734A (en) * 2005-03-04 2007-10-24 도오쿄 인스티튜드 오브 테크놀로지 Method and device for correcting/detecting in-byte multiple spotty byte errors with limited number of erroneous bytes
KR20080043679A (en) * 2006-11-14 2008-05-19 삼성전자주식회사 Method for correcting error and apparatus adapted to the same
KR20120029154A (en) * 2010-09-16 2012-03-26 삼성전자주식회사 Decoder, method of operating the same, and apparatuses having the same

Also Published As

Publication number Publication date
KR20140006402A (en) 2014-01-16

Similar Documents

Publication Publication Date Title
US8479085B2 (en) Memory system with error correction decoder architecture having reduced latency and increased throughput
US20040078411A1 (en) Galois field arithmetic unit for use within a processor
US20150222292A1 (en) Multi-bit error correction method and apparatus based on a bch code and memory system
US8612842B2 (en) Apparatus for generating a checksum
US20040078410A1 (en) Galois field multiplier array for use within a finite field arithmetic unit
KR101837099B1 (en) Reconfigurable error correction code device
CN105337619B (en) A kind of BCH code coding/decoding method and device
CN108886369B (en) Method and apparatus for performing Reed-Solomon coding
RU2314639C1 (en) Device for decoding reed-solomon codes
EP3737013B1 (en) Encoding method, decoding method and device
US8745476B1 (en) Systems and methods for cyclic redundancy check implementation
KR101619049B1 (en) Parallel BCH decoder
US20180006664A1 (en) Methods and apparatus for performing reed-solomon encoding by lagrangian polynomial fitting
CN110741562B (en) Pipelined forward error correction for vector signaling code channels
KR20080052039A (en) Method for checking correcting errors correcting by cyclic redundancy checking and apparatus thereof
US9032277B1 (en) Parallel low and asymmetric rate Reed Solomon coding
US10623018B2 (en) Method of arrangement of an algorithm in cyclic redundancy check
KR20220151742A (en) Apparatus and method for parallel reed-solomon encoding
KR101236883B1 (en) Encoding and decoding method and apparatus for error correction
KR100900329B1 (en) Method and Apparatus for Reed Solomon decoding
Hu et al. 10Gb/s RS-BCH concatenated codec with parallel strategies for fiber communications
KR102118605B1 (en) Low complexity high order syndrome calculator for block codes and calculating method of high order syndrome
KR100212830B1 (en) Syndrome calculation apparatus of reed solomon decoder
KR100212825B1 (en) Syndrome calculating apparatus of reed solomon decoder
RU2152130C1 (en) Noise-immune decoder computer

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant