[go: up one dir, main page]

KR0175111B1 - 에러정정장치 및 방법 - Google Patents

에러정정장치 및 방법 Download PDF

Info

Publication number
KR0175111B1
KR0175111B1 KR1019950015995A KR19950015995A KR0175111B1 KR 0175111 B1 KR0175111 B1 KR 0175111B1 KR 1019950015995 A KR1019950015995 A KR 1019950015995A KR 19950015995 A KR19950015995 A KR 19950015995A KR 0175111 B1 KR0175111 B1 KR 0175111B1
Authority
KR
South Korea
Prior art keywords
error
syndrome
polynomial
bit
error correction
Prior art date
Application number
KR1019950015995A
Other languages
English (en)
Other versions
KR960003123A (ko
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 KR960003123A publication Critical patent/KR960003123A/ko
Application granted granted Critical
Publication of KR0175111B1 publication Critical patent/KR0175111B1/ko

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
    • 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
    • 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/47Error detection, forward error correction or error protection, not provided for in groups H03M13/01 - H03M13/37

Landscapes

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

Abstract

통신내용을 나타내는 정보비트를 복수의 생성행렬에 의해 다중으로 부호화한 통신데이터를 수신하는 수신수단과, 상기 수신수단에 의해 수신된 통신데이터를 상기 복수의 생성행렬 중의 소정의 생성행렬과 직교하는 검사행렬에 의거하여 복호하여, 상기 정보비트에 생긴 에러위치를 검출하는 에러위치 검출수단과, 상기 에러위치 검출수단이 사용한 생성행렬 이외의 생성행렬과 각각 직교하는 복수의 검사행렬과, 상기 에러위치 검출수단에 의해 검출된 에러위치에 의거해서 상기 정보비트에 생긴 에러를 나타내는 복수의 의사신드롬을 생성하는 의사신드롬 생성수단과, 상기 수신수단에 의해 수신된 통신데이터와 상기 복수의 검사행렬과의 곱을 취하여, 상기 정보비트에 생긴 에러의 증후를 나타내는 복수의 신드롬을 생성하는 신드롬생성수단과, 상기 의사신드롬 생성수단이 생성한 복수의 의사신드롬과 상기 신드롬 생성수단이 생성한 복수의 신드롬이 서로 일치할 경우에만 상기 정보비트에 생긴 에러를 정정하는 에러정정 수단을 구비한 에러정정 장치.

Description

에러정정장치 및 방법
제1도는 본 발명에 관한 실시예 1의 에러정정 시스템의 구성을 나타낸 블록도.
제2도는 가변길이의 정보비트에 대해 에러검출 부호화 및 에러정정 부호화를 행한 경우의 통신데이터의 데이터구조를 나타낸 도면.
제3도는 제1도에 나타낸 에러정정 제어부의 처리절차를 나타낸 플로우차트.
제4도는 에러정정 부호화 후에 에러검출 부호화를 행한 경우의 통신데이터의 데이터구조를 나타낸 도면.
제5도는 고정 길이의 정보비트에 대해 에러검출 부호화 및 에러정정 부호화를 행한 경우의 통신데이터의 데이터구조를 나타낸 도면.
제6도는 제5도에 나타낸 데이터구조를 사용한 경우의 에러정정용 제어부의 처리절차를 나타낸 플로우차트.
제7도는 에러검출 부호화 및 에러정정 부호화를 3중이상으로 조합한 경우의 데이터구조의 일례를 나타낸 도면.
제8도는 본 발명을 적용한 무선통신장치 및 유선통신장치의 구성을 나타낸 블럭도.
제9도는 에러정정 부호와 에러검출 부호를 병용하는 종래 기술의 처리절차를 나타낸 플로우차트.
본 발명은 에러정정 장치 및 방법에 관한 것이며, 특히 통신내용에 대해 복수의 에러정정 부호화를 행하여 에러정정을 저감하는 에러정정 장치 및 방법에 관한 것이다.
종래로부터 통신내용의 전송시에 생기는 에러를 정정하기 위하여 송신국은 송신하여야 할 통신내용(이하 정보비트라 한다)를 용장부호화(redundant coding)하여 송신하고, 수신국에서는 용장부호에 의거해서 에러를 정정하는 에러정정기술이 알려져 있다.
이 에러정정기술은 정보비트의 길이 및 부여하는 에러정정 능력에 따라 사용하는 부호화방식과 생성다항식을 특정하고, 이 부호화방식 및 생성다항식으로부터 생성행렬을 작성하여 부호화를 행함과 동시에 이 생성행렬과 직교하는 검사행렬을 사용하여 부호화가 행하여진다.
구체적으로는 송신국에서는 정보비트열과 생성행렬 G와의 내적(inner product)을 취하여 정보열을 작성하고, 이 정보열을 포함한 통신데이터를 수신국에 송신하고, 수신국에서는 이 생성행렬 G와 직교하는 검사행렬 H(G · H=0)과 수신정보와의 내적을 취하여 에러의 신드롬을 산정한다.
여기서 신드롬(Syndrome)이라 함은 수신정보열내에 에러가 존재하는가의 여부를 나타내는 데이터이며, 이 신드롬을 확인함으로써 에러검출을 할 수가 있다. 단 이 신드롬은 에러위치를 직접 나타내는 것이 아니므로 에러위치를 특정하기 위해서는 이 신드롬에 의거해서 인수분해 등을 할 필요가 있다.
구체적으로는 이 신드롬이 '0'이면 수신정보열에 에러가 존재하지 않다는 것이 되나, 이 신드롬이 '0'이 아닌 경우에는 무엇인가 에러가 존재하는 것을 의미한다.
이와 같이 신드롬을 사용한 에러정정을 함으로써 비트에러 및 버스트에러를 자동으로 정정할 수가 있다.
그런데 이 에러정정 기술을 사용한 경우라도 모든 에러를 추적(follow)할 수 있는 것은 아니며, 에러를 보아넘기거나 에러정정을 수반하는 경우가 있다.
이때문에 높은 통신품질이 요구되는 시스템에서는 단순히 에러정정만을 사용하는 것이 아니고, 에러정정과 에러검출을 조합하여 에러정정의 신뢰 성을 높이는 기술이 사용된다.
예를 들면 송신국은 정보비트열에 생성행렬 G1을 곱하고, 에러검출 부호화한 정보열에 다시 생성행렬 G2를 곱해서 에러검출 부호화한 데이터를 수신국에 송신하고, 수신국에서는 이 데이터를 생성행렬 G2와 직교하는 검사행렬 H2를 사용하여 에러정정을 한 후에 이 데이터를 생성행렬 G1과 직교하는 검사행렬 H1을 사용하여 에러의 유무를 확인한다.
이하, 에러정정기술과 에러검출기술을 조합한 상기 종래 기술의 처리 절차에 대해 설명한다.
제9도는 에러정정기술과 에러검출기술을 조합시킨 경우의 수신국에서의 처리절차를 나타낸 플로우차트이다.
제9도에 나타낸 바와 같이 송신국으로부터 송신된 정보열을 수신국이 수신하면(스텝 901), 수신국에서는 우선 최초로 정보열내의 에러유무를 확인한다.
즉 수신국은 수신정보열에 검사행렬 H2를 곱해서 에러정정용 신드롬을 산정하고(스텝 902), 이 신드롬에 의거해서 정보열내에 에러가 발생하고 있는가의 여부를 확인한다(스텝 903).
그리고 정보열내에 에러가 존재할 경우에는 이 에러정정용 신드롬에 의거해서 에러위치를 특정하여(스텝 904), 에러장소를 정정한다(스텝 905).
여기서 스텝 904의 에러위치의 특정 요령은 부호화방식에 따라 상이하나, 예를 들어 2중 에러정정 BCH부호인 경우에는 신드롬의 값을 계수로 하여 갖는 다항식의 인수분해를 하든가, 인수분해의 결과를 갖는 테이블을 검색함으로써 특정할 수 있다.
다음에 상기 스텝 903∼905의 에러정정 처리의 시비를 검증하기 위하여, 검사행렬 H1에 의거해서 에러검출용 신드롬을 산정하고(스텝 906), 에러정정이 행하여진 정보열내에 에러가 잔류되어 있는가의 여부를 조사한다(스텝 907).
그리고 에러정정이 행해진 정보열내에 에러가 존재하지 않을 경우에는 에러의 보아넘기기 및 에러정정이 없다고 판단하여 정상 종료하고(스텝 908), 에러가 존재할 경우에는 에러의 보아넘기기 또는 에러정정이 행하여 졌다고 인식하여 재송신요구를 한다(스텝 909).
이와같이 에러정정기술과 에러검출기술을 조합한 종래기술을 사용함으로써 에러의 보아넘기기 또는 에러정정의 유무를 확인하여 통신정보의 신뢰성을 향상시킬 수가 있다.
그러나 이 종래기술에 의하면 정보열에 생긴 에러를 정정한 후에 정정의 시비를 판단하기 때문에 정정처리를 종료할 때까지 에러검출처리를 할 수가 없다.
이 때문에 에러정정 처리만을 할 경우와 비교하면 에러검출기술을 사용하여 에러정정의 시비를 판단하는 시간(신드롬발생 처리시간+입출력 소요시간)만큼 정정처리가 지연하게된다.
이와 같이 처리시간의 지연을 초래하는 것은 에러정정기술 분야에서는 치명적인 결함이 된다.
즉 에러정정기능은 본래 데이터통신기능의 부가기능이기 때문에 사용자측에서 보면 시간이 걸리는 에러정정처리는 사용하기에 적합치 않은 기술이며, 재송신요구에 의해 에러를 확인하게 된다.
이와 같이 에러정정기술과 에러검출기술을 조합시키는 종래기술은 처리시간을 희생시켜 신뢰성을 높이는 결과가 되기 때문에 현실적인 사용에는 적합치가 않다.
따라서 에러정정기술과 에러검출기술을 조합시키지 않고, 에러정정기술을 2중으로 사용함으로써 에러정정처리를 병렬화하는 기술이 있다.
즉 이 기술은 2중으로한 에러정정기술에 의해 각각의 에러위치를 검출하고, 양자의 에러위치를 비교하여 에러위치가 일치하면 에러정정을 하도록 구성한 것이다.
또한 이 경우에는 2번째의 에러정정 부호화처리에 사용되는 생성행렬 G2를 규약표준형으로 하여 송신하는 정보열을 G1으로 부호화한 데이터와 검사비트의 결합데이터의 형식으로 하고, 생성행렬 G1에 대응하는 검사행렬 H1에 의한 복호화처리와 생성행렬 G2에 대응하는 검사행렬 H2에 의한 복호화처리를 병렬적으로 행할 수 있도록 구성할 필요가 있다.
그러나 이 기술을 사용할 경우에는 최종적으로 양자의 에러위치를 조회하여 에러의 정당성을 확인하는 관계로, 검사행렬 H1 및 검사행렬 H2에 의한 복호화처리는 신드롬의 산정만으로는 충분치 않고, 어느 것이나 에러위치의 검출을 하여야 한다.
이 에러위치의 검출을 2중으로 하게 되면 부가하여야 할 검사비트수가 증가할 뿐 아니라 에러정정처리에서 가장 복잡한 에러위치를 구하는 처리를 두번에 걸쳐 하여야 하므로 효율적이 아니다.
상술한 바와 같이 에러정정부호와 에러검출부호를 조합시키는 종래 기술을 사용한 경우에는 처리를 연속적(sequential)으로 하여야 하기 때문에 처리지연을 가져오는 문제가 있으며, 에러정정 부호화를 2중으로 하는 종래 기술에서는 부호 길이가 증가함과 동시에 복잡한 에러 위치의 특정을 두번에 걸쳐서 하여야 하는 문제가 있었다.
따라서 본 발명에서는 상기 문제를 해결하기 위하여, 정보비트를 중첩으로 에러정정 부호화하여 통신정보의 신뢰성 향상을 도모할 때, 효율적으로 정정의 시비를 판단해서 처리지연을 저감할 수 있는 에러정정장치 및 방법을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위해 본 발명은 에러정정기술과 에러검출기술을 포함시킬 경우에 정보비트를 에러정정한 후에 에러검출을 하는 것이 아니라 신드롬 레벨로 에러의 시비를 판정하도록 구성하고 있다.
즉 에러정정기술에 의해 에러위치를 검출한 경우에, 에러검출기술이 동일한 에러를 검출할 경우에 생성할 수 있는 신드롬을 의사신드롬으로 하여 검출한 에러위치로부터 역산하고, 실제로 에러검출기술로 생성한 신드롬과 의사신드롬과를 비교하여 신드롬 레벨로 에러의 시비를 확인한다.
또한 종래 기술을 사용한 경우라도 송신되는 선두비트를 에러의 기준위치로 하고, 또 동일의 부호화방법(예를 들어 BCH부호)을 사용하면 신드롬 레벨로 에러의 시비를 확인할 수가 있다.
그러나 가변길이 데이터를 사용하여 에러의 기준위치를 최종비트로 할 경우이거나, 신드롬의 형식이 상이한 부호화방법(예를 들어 해밍부호(hamming code)와 BCH부호)를 사용할 경우에는 신드롬 레벨에서의 에러의 시비를 확인할 수는 없다.
본 발명은 이와 같이 가변길이 데이터를 사용하여 에러의 기준위치를 최종비트로 한 경우이거나, 신드롬의 형식이 상이한 부호화방법을 사용한 경우라도 신드롬 레벨로 에러의 시비를 확인할 수가 있다.
또 에러정정처리와 에러검출처리를 병렬하여 할 수가 있기 때문에 효율적으로 에러정정처리를 행 할 수가 있다.
또한 에러위치로부터 역산한 의사신드롬과 수신 데이터로부터 구한 신드롬이 일치하지 않을 경우에는 정정처리를 하지 않기 때문에 에러정정 처리 소요시간을 단축시킬 수가 있다.
이하, 본 발명의 실시예 1에 대하여 도면을 참조하여 설명한다. 또한 이 실시예 1에서는 64비트∼512비트의 가변길이의 통신내용(정보비트)에 대해 에러검출 부호화를 행한 후에 에러정정 부호화를 행하는 경우에 대해 설명한다.
제1도는 본 발명에 관한 실시예 1의 에러정정 시스템의 구성을 나타낸 블록도이다.
제1도에 나타낸 바와 같이 이 에러정정 시스템은 사용자로부터 받은 통신내용에 에러검출 부호화 및 에러 정정 부호화를 행한 정보열을 포함한 통신데이터를 통신로(3)에 출력하는 부호화장치(1)와, 이 통신로(3)로부터 수신한 통신데이터를 복호화한 통신정보를 출력하는 복호화장치(2)로 구성된다.
우선 부호화장치(1)는 부호화처리부(10)와, 부호화처리부(11)와, 데 이터기록부(12)와, 부호화제어부(13)와, 데이터출력부(14)로 구성된다.
부호화처리부(10)는 부호화제어부(13)의 제어 아래 입력데이터를 콘트롤 버스(15)를 거쳐서 받아들여, 이 입력데이터에 에러검출 부호화를 행하는 처리부이다.
구체적으로는 이 부호화처리부(10)에서는 입력데이터와 생성행렬 G1과의 내적을 취함으로써 에러검출 부호화를 한다. 또한 본 실시예에서는 이 생성행렬 G1을 규약표준형으로 하여, 부호화 데이터의 데이터형식이 입력데이터에 검사비트를 부가한 데이터 형식이 되도록 한다.
부호화처리부(11)는 부호화처리부(10)와 마찬가지로 부호화제어부(13)의 제어를 받아서 규약표준형의 생성행렬 G2를 사용한 에러정정 부호화를 행한다.
또한 부호화처리부(11)가 하는 에러정정 부호화도 입력데이터와 생성 행렬의 내적을 취하는 점에서는 부호화처리부(10)가 하는 에러검출 부호화처리와 다를 바가 없으나, 부호화처리부(10)가 사용하는 생성행렬 G1이 반드시 규약표준형일 필요가 없는데 비해, 부호화처리부(11)가 사용하는 생성행렬 G2는 반드시 규약표준형으로 할 필요가 있는 점이 다르다.
그 이유는 부호화처리부(11)가 사용하는 생성행렬 G2를 규약표준형으로 하지 않으면 정보열이 입력데이터에 검사비트를 부가한 데이터 형식이 되지 않아, 후술하는 복호화장치(2)에서 병열처리가 되지 않기 때문이다.
데이터기억부(12)는 부호화장치(1)에 입력된 입력데이터를 일시적으로 기억하는 버퍼이다. 이 데이터기억부(12)에 기억된 입력데이터가 순차 부호화된다.
부호화제어부(13)는 데이터기억부(12)에 기억된 데이터를 순차 부호화 제어하는 제어부이며, 구체적으로는 우선 최초에 데이터 기억부(12)에 기 억된 데이터를 부호화처리부(10)에 출력하고, 정보비트에 대해 에러검출처리를 한 후에, 이 데이터를 다시 부호화처리부(11)에 출력하여 에러정정 부호화하여 데이터출력부(14)에 출력하도록 제어한다.
즉 부호화처리부(10)의 부호화 대상은 입력된 통신정보 그 자체가 되고, 부호화처리부(11)의 부호화 대상은 부호화처리부(10)가 출력한 부호데이터가 된다. 또한 부호화처리부(10, 11)는 다 같이 규약표준형의 생성행렬을 사용하기 때문에 통신데이터의 데이터구조는 통신정보를 나타내는 정보비트에 에러검출용 검사비트(FCS1)와 에러정정용 검사비트(FCS2)를 부가한 형식이 된다.
데이터출력부(14)는 부호화제어부(13)으로부터 받은 정보열에 통신 플랙 등을 부가하여 통신로(3)에 출력하는 처리부이다.
상기 구성을 갖는 부호화장치(1)를 사용함으로써 부호화장치(1)에 입력된 통신정보를 2중으로 부호화한 통신데이터를 통신로(3)에 출력할 수가 있다.
다음에 상기 부호화장치(1)로부터 출력된 통신데이터의 데이터구조에 대해 설명한다.
제2도는 제1도에 나타낸 통신로(3)에서의 통신데이터의 데이터구조를 나타낸 도면이다.
제2도에 나타낸 바와 같이 통신데이터는 64비트∼512비트로 된 가변길이의 정보비트(I), 16비트로 된 에러검출용 검사비트(FCS1) 및 16비트로 된 에러정정용 검사비트(FCS2)에 통신용의 플랙(FLG) 및 제어신호(CONT) 등이 부가된 구성이 된다.
즉 FCS1는 부호화장치(1)의 부호화처리부(10)에 의해 부가된 에러검출용 검사비트이며, FCS2는 부호화장치(1)의 부호화처리부(11)에 의해 부가된 에러정정용 검사비트이다.
또한 본 실시예에서는 정보비트를 가변길이로 하여 취급하는 것으로 하고 있기 때문에 후술하는 복호화장치(2)에서 에러위치를 특정할 때, 에러위치를 FLG측으로부터 세는 것이 아니라 FCS1또는 FCS2의 측으로부터 세도록 하고 있다.
따라서 FCS2를 사용한 복호를 할 경우에는 FCS2의 최종 비트를 기준으로 하여 에러위치가 표시되고, FCS1를 사용한 복호를 할 경우에는 FCS1의 최종 비트를 기준으로 하여 에러위치가 표시된다.
예를 들어 FCS2를 사용하여 복호한 경우에 제2도에 나타낸 비트 A 및 비트 B에 에러가 검출되었다고 하면 비트 A 및 비트 B의 에러위치는
비트 A; xi = 16 +16 + i
비트 B; xj = 16 +16 + j
로 표현된다.
또 FCS1을 사용하여 복호한 경우에 비트 A 및 비트 B에 에러가 검출되었다고 하면 비트 A 및 비트 B의 에러위치는
비트 A; xi = 16 + i
비트 B; xj = 16 + j
로 표현된다.
이와 같이 FCS2를 사용하여 복호한 경우의 에러위치와 FCS1를 사용하여 복호한 경우의 에러위치 사이에는 FCS1의 비트수(16비트)의 어긋남이 생긴다.
다음에 상기 통신로(3)로부터 통신데이터를 수신하여 복호처리를 하는 복호화장치(2)의 구성에 대해 설명한다.
복호화장치(2)는 데이터 입력부(20)와, 에러정정용 신드롬발생부(21)와, 에러검출용 신드롬발생부(22)와, 에러정정제어부(23)와, 수신데이터기억부(24)와, 에러위치검출부(25)로 구성된다.
데이터입력부(20)는 통신로(3)로부터 수신한 수신데이터를 에러정정용 신드롬발생부(21), 에러검출용 신드롬 발생부(22) 및 수신데이터기억부(24)에 출력하는 처리부이다.
에러정정용 신드롬발생부(21)는 통신데이터의 정보열(정보비트+FCS1+FCS2)에 검사행렬 H2를 곱하여 에러정정용 신드롬 S2를 산출하는 처리부이며, 부호화처리부(11)에 대응한다.
이에 비해서 에러검출용 신드롬발생부(22)는 통신데이터의 정보열로부터 FCS2를 제외한 데이터(정보비트+FCS1)에 검사행렬 H1을 곱하여 에러검출용 신드롬 S1을 산출하는 처리부이며, 부호화처리부(10)에 대응한다.
즉 에러정정용 신드롬발생부(21)가 사용하는 검사행렬 H2는 부호화처리부(11)가 사용하는 생성행렬 G2와 직교하고(G2·H2=0), 에러검출용 신드롬발생부(22)가 사용하는 검사행렬 H1은 부호화처리부(10)가 사용하는 생성행렬 G1과 직교한다(G1·H1=0). 또한 에러정정 및 신드롬발생부(21)가 발생하는 에러정정용 신드롬 S2는 FCS2의 최종 비트를 에러위치의 기준점으로 한 정보비트, FCS1 및 FCS2에 생긴 에러의 증후를 나타내고 있다.
한편 에러검출용 신드롬발생부(22)가 발생하는 에러검출용 신드롬 S1은 FCS1의 최종 비트를 에러위치의 기준점으로 한 정보비트 및 FCS1에 생긴 에러의 증후를 나타내고 있다.
이와 같이 에러정정용 신드롬발생부(21)는 FCS2의 최종 비트를 기준점으로 한 신드롬을 산출하고, 또 에러검출용 신드롬발생부(22)는 FCS1의 최종 비트를 기준점으로 한 신드롬을 산출하기 때문에 예를들어 양자가 같은 검사행렬을 사용하였다 하더라도 각각의 신드롬의 값은 다르다.
에러정정제어부(23)는 에러정정용 신드롬발생부(21) 및 에러검출용 신드롬발생부(22)로부터 받은 신드롬 S1 및 S2에 의거해서 에러정정제어를 행하는 제어부이며, 위치검출의뢰부(23a)와, 의사신드롬연산부(23b)와, 신드롬조회부(23c)와, 에러정정처리부(236)를 갖는다.
위치검출의뢰부(23a)는 에러정정용 신드롬발생부(21)로부터 콘트롤 버스(26)를 거쳐서 받은 신드롬을 에러위치검출부(25)에 출력하여 에러위치검출부(25)에 에러위치검출을 의뢰하고, 이 신드롬에 대응하는 에러위치를 에러위치검출부(25)로부터 받는다.
의사신드롬연산부(23b)는 위치검출의뢰부(23a)로부터 받은 에러위치가 올바르다고 가정할 경우에는 에러검출용 신드롬발생부(22)가 발생하게 될 신드롬을 역산하여, 이 신드롬을 의사신드롬으로서 연산하는 처리부이다.
신드롬조회부(23c)는 의사신드롬연산부(23b)가 연산한 의사신드롬과 에러검출용 신드롬발생부(22)로부터 콘트롤버스(26)를 거쳐서 받은 신드롬을 조회하는 처리부이다.
에러정정처리부(236)는 신드롬조회부(23b)의 조회 결과에 의거해서 에러정정을 하는 처리부이며, 구체적으로는 의사신드롬연산부(23b)가 연산한 의사신드롬과 에러검출용 신드롬발생부(22)로부터 받은 신드롬이 일치할 때에만 에러위치 검출부(25)가 검출한 에러위치를 정정하고, 양 신드롬이 일치하지 않을 경우에는 부호화장치(1)에 재송신요구를 한다.
이와 같이 이 에러정정제어부(23)는 복호화장치(2)의 전체제어를 관장함과 동시에 에러정정의 시비를 신드롬레벨로 검증한다.
수신데이터 기억부(24)는 복호화장치(2)가 수신한 수신데이터를 일시적으로 기억하는 버퍼이며, 에러정정용 신드롬발생부(21) 또는 에러검출용 신드롬발생부(22)가 가동중인 경우에는 입력통신데이터는 이 수신데이터기억부(24)에 일시적으로 기억된다. 그리고 이 수신데이터기억부(24)에는 에러정정제어부(23)의 처리에 필요한 중간데이터가 일시적으로 기억된다.
에러위치검출부(25)는 에러정정제어부(23)의 제어 아래 에러정정용 신드롬발생부(21)가 발생한 에러정정용 신드롬 S2에 의거해서 에러위치를 검출하여 에러위치를 에러정정제어부(23)에 출력하는 처리부이다.
또한 이미 설명한 바와 같이 에러정정용 신드롬발생부(21)가 발생하는 에러정정용 신드롬 S2는 FCS2의 최종 비트를 에러위치의 기준점으로 하고 있기 때문에, 이 에러위치 검출부(25)가 검출하는 에러위치에 대해서도 FCS2의 최종 비트를 에러위치의 기준점으로 한다.
그리고 의사신드롬연산부(23b)는 에러검출용 신드롬발생부(22)의 입장에 서서 의사신드롬을 발생하기 때문에 이 의사신드롬연산부(23b)에서는 에러위치검출부(25)가 검출한 에러위치로부터 FCS2의 비트수(16비트)를 감한 FCS1의 최종 비트를 기준점으로 하여 의사신드롬을 연산한다.
이와 같이 복호화장치(2)는 종래 기술과 같이 2중으로 검출한 에러위치를 각각 조회하여 에러위치의 타당성을 검증하는 것이 아니라, 신드롬레벨로 에러위치의 타당성을 검증하도록 구성하고 있다. 그 이유는 신드롬으로부터 에러위치를 구하는 것보다 에러위치로부터 신드롬을 역산하는 편이 용이하기 때문이다.
다음에 상기 에러정정제어부(23)의 처리절차에 대하여 상세히 설명한다.
제3도는 제1도에 나타낸 에러정정제어부(23)의 처리절차를 나타낸 플로우차트이다.
제3도에 나타낸 바와 같이 우선 최초로 에러정정제어부(23)는 에러정정용 신드롬발생부(21)가 발생한 에러정정용 신드롬 S2를 콘트롤 버스로부터 받아들이고(스텝 301), 이 신드롬 S2가 0인가의 여부를 판단하여(스텝 302) 에러의 유무를 확인한다.
즉 신드롬은 에러가 존재하지 않을 경우에는 0이 되고, 에러가 존재할 경우에는 이 에러의 증후를 나타내기 때문에, 이 성질을 이용하여 수신데이터의 체크를 한다.
그리고 이 신드롬 S2가 0일 경우에는 에러검출용 신드롬발생부(22)가 발생한 에러검출용 신드롬 S1을 콘트롤 버스로부터 받아들여(스텝 303), 이 에러검출용 신드롬 S1이 0인가의 여부를 판단한다(스텝304).
그리고 이 에러검출용 신드롬 S1이 0일 경우에는 에러가 없는 것으로 하여(스텝 305)처리를 종료하고, 에러검출용 신드롬 S1이 0이 아니면 부호화장치(1)에 대해 재송신요구를 한(스텝 306) 후에 처리를 종료한다.
즉 에러정정용 신드롬 S2 및 에러검출용 신드롬 S1이 다 같이 0일 경우에만 에러가 없는 것으로 판단하고, 에러정정용 신드롬 S2와 에러검출용 신드롬 S1이 모순될 경우에는 에러를 보아넘긴 것으로 판단한다.
다음에 스텝 302에서 에러정정용 신드롬 S2가 0이 아닌 경우에 대해 설명한다.
이 경우에는 에러정정제어부(23)는 에러위치검출부(25)에 대해 정정용 신드롬을 출력하여 에러비트 i, j를 특정시킨다(스텝 307). 또 이미 설명한 바와 같이 이 에러비트의 위치는 FCS2의 최종 비트를 기준으로 하여 산출한다.
그리고 에러위치검출부(25)로부터 에러비트의 위치 I, j를 받아들였으면
i = i - 16
j = j - 16
과 같은 감산처리(스텝 308)를 행한 후에 i 및 j가 정(正)인가의 여부를 확인한다(스텝 309).
여기서 스텝 308의 감산처리를 하는 이유는 FCS2의 최종 비트를 기준으로 한 에러비트의 위치를 FCS1의 최종 비트를 기준으로 한 에러비트의 위치로 좌표변환하기 위한 것이며, 본 실시예에서 나타낸 바와 같이 16비트의 FCS2를 사용하는 경우에는 이 비트수를 감할 필요가 있기때문이다.
또 스텝 309의 판정을 하는 이유는 i 및 j가 다 같이 정이 아닐 경우에는 정보비트(I) 및 FCS1에 에러가 생기고 있지 않기 때문이다.
그리고 i 및 j가 다 같이 정이 아닐 경우에는, 즉 정보비트(I) 및 FCS1에 에러가 생기고 있지 않을 경우에는
yi = 0
yj = 0
로 하고(스텝 310), i또는 j중 어느 한쪽이 정일 경우, 즉 FCS2에 하나의 에러가 생겼다고 판단되는 경우에는, 예를들어 i가 정이 아니고, j가 정이라고 가정하면
yi = 0
yj = f(j)
와 같이
yk = 0(k≤0)
yk = f(k)(k0)
로 하고(스텝 311).
i 및 j가 다같이 정일 경우, 즉 정보비트(I)및 FCS1에만 에러가 생겼다고 판단되는 경우에는
yi = f(i)
yj = f(j)
로 하여(스텝 311),
y = yi +yj
로 한다(스텝 312).
여기서 이 yi 및 yj는 에러비트의 위치 i, j를 생성다항식이 있는 근(원시근)의 누승으로 표현한 것이며, f는 부호화처리부(10)가 부호화를 행할 때 사용한 부호화방법에 의해 결정된다.
또 y는 에러검출용 신드롬발생부(22)가 생성하여야 할 신드롬을 에러위치를 사용하여 의사적으로 역산한 신드롬이다.
즉 스텝 310∼스텝 312의 처리에서는 에러검출용 신드롬발생부(22)가 검사행렬 H1을 사용하여 발생하는 신드롬 S1을 에러정정용 신드롬으로부터 역산하여 구하고 있다.
따라서 이 의사신드롬 y와 신드롬 S1이 일치하면 에러위치 검출부(25)가 검출한 에러위치가 정당한 것이라고 판단할 수 있고, 일치하지 않으면 에러위치검출부(25)가 검출한 에러비트의 위치가 정당한 것이 아니라고 판단할 수 있다.
이 때문에 다음에 에러검출용 신드롬발생부(22)가 발생한 에러검출용 신드롬 S1을 콘트롤 버스(26)로부터 꺼내어(스텝 313), 이 에러검출용 신드롬 S1이 의사신드롬 y와 일치하는가의 여부를 조사한다(스텝 314).
그리고 양자가 일치하지 않으면 재송신요구를 함과 동시에(스텝 306), 양자가 일치할 경우에는 에러위치검출부(25)가 검출한 위치에 존재하는 에러비트를 정정한다.
상기 일련의 처리를 행함으로써 종래 기술과 같이 에러정정을 한 후에 그 정부를 판단하는 것이 아니라, 에러정정을 하기 전에 정정의 정부를 판단할 수가 있다.
환언하면 데이터입력부(20)가 정보열을 수신하면 에러정정용 신드롬발생부(21)와 에러검출용 신드롬발생부(22)는 병렬적으로 처리를 개시할 수 있기 때문에 처리시간이 단축된다.
상술한 바와 같이 실시예 1에서는 복호화장치(2)에서 에러위치검출부(25)가 검출한 에러위치로부터 에러검출용 신드롬발생부(22)가 발생하는 에러검출용 신드롬 S1에 대응하는 의사신드롬을 역산하고, 이 의사신드롬과 에러검출용 신드롬 S1을 비교하여 정정의 시비를 판단하도록 구성하였으므로, 에러정정용 신드롬발생부(21)의 처리와 에러검출용 신드롬발생부(22)의 처리를 병렬하여 실시할 수가 있다.
또 에러정정의 시비를 신드롬 레벨로 판단하여 에러위치의 검출처리를 간략화할 수가 있다.
또 본 실시예에서는 설명의 편의상, 송신국측이 부호화장치(1)만을 가지며, 수신국측이 복호화장치(2)만을 갖는 경우에 대해 설명하였으나, 송신국 및 수신국이 각각 부호화장치(1)와 복호화장치(2)를 갖는 것도 가능하다.
그런데 상기 실시예에서는 통신내용에 에러검출부호화를 한 후에 에러정정 부호화를 하도록 구성하고 있기때문에 통신데이터에 포함되는 정보열은 정보비트(I), 에러검출용 검사비트(FCS1) 및 에러정정용 검사비트(FCS2)에 의해 구성되어 있었다.
그러나 본 발명은 상기 실시예 1의 구성에 한정되는 것이 아니고, 통신내용에 에러정정 부호화를 한 후에 다시 에러검출 부호화한 경우에 대해서도 적용할 수가 있다.
즉 이 경우의 통신데이터의 데이터구조는 제4도에 나타낸 바와 같이 제2도에 나타낸 통신데이터와 비교해서 에러검출용 검사비트 FCS1의 위치와, 에러정정용 검사비트 FCS2의 위치가 역전한다.
이 때문에 에러검출부(25)에서는 제4도에 나타낸 FCS2의 최종 비트를 기준위치로 하여 에러위치를 구하게 된다.
또 이 경우에는 의사신드롬연산부(23b)가 의사신드롬을 연산할 때, 제3도의 스텝 308에 나타낸 바와 같이 에러위치 i, j의 좌표를 16비트 감산하는 것이 아니라, 반대로 16비트 가산하게 된다.
또한 이와 같은 정정을 할 때에 FCS1에 생긴 에러에 대응할 수가 없기 때문에 FCS1의 비트길이에 비해 정보비트길이가 대단히 큰 경우에 유효하게 된다.
이상에서 가변길이의 정보비트를 사용하기 위하여 FCS1또는 FCS2의 최종 비트를 에러의 기준위치로 한 실시예 1에 대하여 설명하였다.
다음에 고정길이의 정보비트를 사용함과 동시에 정보비트의 선두비트를 에러의 기준위치로 하는 실시예 2에 대하여 설명한다. 그리고 이 경우에도 제1도에 나타낸 부호화장치(1)와 복호화장치(2)를 마찬가지로 구성할 수가 있다.
제5도는 고정길이의 정보비트에 대해 에러검출부호화 및 에러정정부호화를 한 경우의 통신데이터의 데이터구조를 나타낸 도면이다.
제5도에 나타낸 바와 같이 이 경우의 데이터구조는 제2도에 나타낸 데이터구조와 마찬가지의 것이 되고, 정보비트(I)가 512비트의 고정길이로 되는 점만이 다르다.
이와 같이 정보비트(I)를 고정길이로 한 경우에는 에러위치를 FCS1 또는 FCS2의 최종 비트를 기준위치로 할 필요가 없기 때문에, 정보비트(I)의 최초의 비트를 에러의 기준위치로 할 수가 있다.
다음에 에러의 기준위치를 정보비트(I)의 최초의 비트로 할 경우에 상기 실시예 1과 다른 점에 대하여 설명한다.
본 실시예에서는 고정길이의 정보비트(I)를 사용하고 있기 때문에 제1도에 나타낸 에러정정용 신드롬 및 에러검출용 신드롬은 어느 것이나 정보비트(I)의 최초의 비트를 에러위치의 기준점으로 할 수가 있다.
이 때문에 실시예 1의 제3도의 스텝 308에서 행하는 감산처리가 불필요하게 되고, 또 에러검출용 신드롬발생부(22)가 사용하는 검사행렬 H1을 에러정정용 신드롬발생부(21)가 사용하는 검사행렬 H2와 동일하든가 또는 그 펑처드 부호(punctured code)로 하면 의사신드롬을 사용하지 않아도 에러정정용 신드롬 S2와 에러검출용 신드롬 S1은 일치한다.
그러나 예를 들어 에러정정을 하는 생성행렬 G2 및 검사행렬 H2가 2중의 에러정정을 기도할 경우에는, 생성행렬 G1 및 검사행렬 H1은 1번의 에러정정과 2번의 에러검출이 가능하면 충분하고, 일부러 동일 검사행렬을 사용하여 부호길이의 증대를 초래하는 것은 현실적이 아니다.
또 펑처드 부호를 사용할 경우에는 어떤 검사비트를 제외하는가에 따라 얻어진 부호의 에러검출능력이 변화하므로 현실적으로 사용할 때는 충분한 검토가 필요하다.
이상으로부터 비록 에러의 기준위 치를 정보비트(I)의 선두 비트로 할 경우라도 역시 에러정정의 시비를 신드롬 레벨로 판단하는 것은 어렵다.
이 때문에 이 경우에도 실시예 1과 마찬가지로 의사신드롬을 역산하여 신드롬 레벨로 정정의 시비를 검증하는 본 발명을 적용할 수가 있다.
제6도는 이와 같은 경우의 에러정정제어부(23)의 처리절차를 나타낸 플로우차트이다.
제3도에 나타낸 경우와 마찬가지로 에러정정제어부(23)는 에러정정용 신드롬 S2를 콘트롤 버스로부터 받아들이고(스텝 601), 이 신드롬 S2가 0인가의 여부를 판단하여(스텝 602) 에러의 유무를 확인한다.
그리고 이 신드롬 S2가 0인 경우에는 에러검출용 신드롬 S1을 판독하여(스텝 603), 이 에러검출용 신드롬 S1이 0인가의 여부를 판단한다(스텝 604).
그리고 이 에러검출용 신드롬 S1이 0인 경우에는 에러가 없는 것으로 하여(스텝 605) 처리를 종료하고, 에러검출용 신드롬 S1이 0이 아니면 부호화장치(1)에 대해 재송신요구를 한(스텝 606) 후에 처리를 종료한다.
한편 스텝 602에서 에러정정용 신드롬 S2가 0이 아닌 경우에는 에러정정제어부(23)는 에러위치검출부(25)에 에러비트의 위치 i, j를 특정시킨다(스텝 607). 여기서 이 경우의 에러비트의 위치는 제3도의 경우와 달리 정보비트(I)의 최초의 비트를 기준점으로 하여 산출한다.
그리고 에러정정제어부(23)가 에러위치검출부(25)로부터 에러비트의 위치 i, j를 받아들이면
yi = f(i)
yj = f(j)
를 계산하고(스텝 608),
y = yi + yj
와 같이 yi 및 yj 를 가산하여 y를 구한다(스텝 609).
다음에 에러검출용 신드롬 S1을 판독하고(스텝 610), 이 에러 검출용 신드롬 S1이 의사신드롬 y와 일치하는가의 여부를 조사하여(스텝 611), 양자가 일치하지 않으면 재송신요구를 하고(606), 양자가 일치할 경우에는 검출한 위치의 비트에러를 정정한다(스텝 612).
이와 같이 본 발명은 실시예 1에 나타낸 바와 같이 FCS1또는 FCS2의 최종 비트를 에러위치로 하는 경우뿐 아니라, 본 실시예에 나타낸 바와 같이 정보비트(I)의 최초의 비트를 에러기준위치로 하는 경우에도 적용할 수가 있다.
이상으로 정보비트(I)의 최초의 비트를 에러기준위치로 하는 실시예 2에 대해 설명하였다.
그런데 상술한 실시예 1 및 실시예 2에서는 에러검출 부호화 및 에러정정 부호화를 중첩하여 행하는 경우에 대해 설명하였으나, 본 발명은 이것에 한정되는 것은 아니고, 에러검출 부호화 및 에러정정 부호화를 3중 이상으로 조합하는 경우에도 적용할 수가 있다.
예를 들어 제7도에 나타낸 바와 같이 정보비트(I)를 분할한 각 정보비트 I1~I8에 대해서 실시예 1 또는 실시예 2에 나타낸 에러검출 부호화 및 에러정정 부호화를 행하고, 에러검출용 검사비트 FCS11~FCS13 및 에러정정용 검사비트 FCS21~FCS23을 부가할 경우에 블록 1∼3전체를 다시 에러정정 부호화하여 에러정정용 검사비트 FCS3을 부가하는 경우를 생각할 수 있다.
이 경우에는 에러정정용 검사비트 FCS21∼FCS23에 의거해서 블록마다 에러위치를 검출하여 이 에러위치로부터 각 블록마다의 의사신드롬을 계산함과 동시에, 이 계산한 의사신드롬과 에러검출용 검사비트 FCS11∼FCS13에 의거해서 산정한 신드롬을 비교하여 신드롬 레벨로 에러검출의 시비를 검증한다.
또 최후에 부가한 에러정정용 검사비트 FCS3에 의거해서 통신데이터 전체의 에러위치를 구함과 동시에, 이 에러위치로부터 각 블록에 대응하는 의사신드롬을 구하여 신드롬 레벨로 에러검출의 시비를 검증한다.
그리고 이들 검증 결과, 어느것이나 신드롬이 일치한 경우에만 에러검출 정정을 한다.
이와 같이 본 발명은 에러검출 부호화 및 에러정정 부호화를 3중 이상으로 조합시킨 경우에도 적용할 수가 있다. 또한 에러검출 부호화 및 에러정정 부호화를 다중화하면 부가하여야 할 용장비트가 증대하여 통신효율의 저하를 초래하기 때문에 중요한 통신용의 옵션으로서 에러정정용 검사비트 FCS3의 위치결정을 할 수도 있다.
다음에 이 에러정정 시스템을 무선통신장치에 적용하는 경우에 대해설명한다.
제8도(a)는 본 발명을 적용한 무선통신장치의 구성을 나타낸 블록도이다.
제8도(a)에 나타낸 바와 같이 이 무선통신장치(800)는 시분할다중(TDMA)방식으로 데이터통신을 하는 것으로서, 데이터의 송수신을 행하는 컴퓨터(PC)(87)에 접속된다.
이 무선통신장치(800)는 TDMA 디코더 및 TDMA 엔코더로 된 TDMA부(83)와, 복조부 및 변조부로 된 모뎀부(84)와, 수신부, 송신부, 신세사이저, 송수분파 스위치를 갖춘 무선부(85)와, 각 부를 제어하는 제어부(86)에, 에러정정부(88)를 부가한 구성으로 된다.
이 에러정정부(88)는 본 발명에 관한 에러정정을 하는 처리부이며, 제1도에 나타낸 부호화장치(1) 및 복호화장치(2)의 양 기능을 갖는다. 즉 이 에러정정부(88)는 PC(87)로 부터 받은 송신데이터에 대해 에러검출 부호화 및 에러 정정 부호화를 하여 TDMA부(83)에 출력함과 동시에, TDMA부(83)로부터 수신데이터를 받아서, 이 수신데이터에 생긴 에러를 신드롬 레벨로 검증하면서 에러를 정정한다.
또한 이 무선통신장치(800)는 데이터통신을 하는 PC(87)에 접속되도록 구성하는 것으로 하였으나, 무선통신장치(800) 내부에 표시부 및 입력부 등을 설치하여 독자적인 무선데이터 통신장치로 할 수도 있다.
제8도(b)는 본 발명을 무선전화장치에 접속한 경우의 구성을 나타낸 블록도이다.
제8도(b)에 나타낸 바와 같이 이 무선전화장치(810)는 시분할다중(TDMA)방식으로 음성통신 및 데이터통신을 하는 것으로서, 스피커(80a) 및 마이크로폰(80b)이 접속된 PCM 코딕(81)과, ADPCM 코딕(82)과, TDMA 디코더 및 TDMA 엔코더로 된 TDMA부(83)와, 복조부 및 변조부로 된 모뎀부(84)와, 수신부, 송신부, 신세사이저, 송수분파 스위치를 갖춘 무선부(85)와, 각 부를 제어하는 제어부(86)로 되며, 이 무선전화장치(810)에는 에러정정부(88)를 갖는 데이터처리장치(820)를 거쳐서 PC(87)가 접속된다.
또한 이 에러정정부(88)는 상술한 바와 같이 본 발명에 관한 에러정정을 하는 처리부로서, 제1도에 나타낸 부호화장치(1) 및 복호화장치(2)의 양 기능을 갖는다.
이와 같이 신드롬 레벨로 에러정정의 시비를 검증할 수 있는 에러정정부(88)를 갖는 데이터처리장치(820)를 무선전화장치(810)에 접속함으로써 효율적으로 에러정정을 할 수 있는 데이터통신을 행할 수가 있다.
제8도(c)는 본 발명을 적용한 유선통신장치의 구성을 나타낸 블록도이다.
제8도(c)에 나타낸 바와 같이 이 유선통신장치(900)는 모뎀부(90) 및 PC(87) 사이에 에러정정부(88)가 배치되어 있다.
즉 에러정정부(88)는 PC(87)로부터 받은 송신데이터에 대해 에러검출 부호화 및 에러정정 부호화를 하여 모뎀부(90)에 출력함과 동시에, 모뎀부(90)로부터 수신데이터를 받아서, 이 수신데이터에 생긴 에러를 신드롬 레 벨로 검증하면서 에러를 정정한다.
이에 따라 용장부호화한 데이터를 모뎀부(90) 및 NCU(network control unit)(91)를 거쳐서 패킷교환망(PCTN)(92)에 출력함과 동시에, PCTN(92)으로부터 받은 수신데이터에 대해 에러의 검증을 하면서 에러정정을 행할 수가 있다.

Claims (14)

  1. 통신내용을 나타내는 정보비트에 제1의 생성다항식에 의거한 제1의 검사비트와 제2의 생성다항식에 의거한 제2의 검사비트를 부가한 정보열을 수신하여, 상기 제2의 생성다항식에 의거하여 상기 정보열의 에러정정을 행함과 동시에 상기 제1의 생성다항식에 의거하여 상기 에러정정의 시비를 확인하는 에러정정장치에 있어서, 상기 제1의 생성다항식에 의거하여 상기 정보비트 또는 상기 제1의 검사비트에 생기는 에러에 의해 결정되는 제1의 신드롬을 발생하는 수단과; 상기 제2의 생성다항식에 의거하여 상기 정보열에 생긴 에러에 의해 결정되는 제2의 신드롬을 발생하는 수단과; 상기 제2의 신드롬 발생수단에 의해 발생한 제2의 신드롬에 의거하여 상기 정보열에 생긴 에러의 위치를 검출하는 수단과; 상기 에러위치 검출수단에 의해 검출한 에러위치와 상기 제1의 생성다항식에 의거하여 제3의 신드롬을 역산하는 수단과; 상기 제3의 신드롬과 상기 제1의 신드롬이 동일할 때 상기 정보비트에 발생한 에러를 정정하는 수단을 구비하는 것을 특징으로 하는 에러정정 장치.
  2. 제1항에 있어서, 상기 제1의 신드롬 발생수단은 제1의 생성다항식과 직교하는 검사다항식을 미리 준비해 두고, 이 검사다항식과 상기 정보비트 및 상기 제1의 검사비트의 내적을 구함으로써 제1의 신드롬을 발생하는 것을 특징으로 하는 에러정정 장치.
  3. 제1항에 있어서, 상기 제2의 신드롬 발생수단은 제2의 생성다항식과 직교하는 검사다항식을 미리 준비해 두고, 이 검사다항식과 상기 정보열의 내적을 구함으로써 제2의 신드롬을 발생하는 것을 특징으로 하는 에러정정장치.
  4. 제1항에 있어서, 상기 에러정정수단은 상기 에러위치 검출수단에 의해 검출한 에러위치를 상기 정보비트 및 상기 제1의 검사비트의 우단의 비트를 기준위치로 한 에러위치로 보정하고, 이 보정한 에러위치와 상기 제1의 생성다항식에 의거하여 제3의 신드롬을 역산하는 것을 특징으로 하는 에러정정장치.
  5. 제1항에 있어서, 상기 에러정정수단은 상기 에러위치 검출수단에 의해 검출한 에러위치를 상기 정보비트의 좌단의 비트를 기준위치로 한 에러위치로 보정하고, 이 보정한 에러위치와 상기 제1의 생성다항식에 의거하여 제3의 신드롬을 역산하는 것을 특징으로 하는 에러정정장치.
  6. 통신내용을 나타내는 정보비트에 제1의 생성다항식에 의거한 제1의 검사비트 및 제2의 생성다항식에 의거한 제2의 검사비트를 부가한 정보열을 송신하는 송신처리부와, 상기 정보열을 수신하여 상기 제2의 생성다항식에 의거하여 상기 정보열의 에러정정을 행함과 동시에 상기 제1의 생성다항식에 의거하여 상기 에러정정의 시비를 확인하는 수신처리부를 갖는 에러정정 시스템에 있어서, 상기 수신처리부가, 상기 제1의 생성다항식에 의거하여 상기 정보비트 또는 상기 제1의 검사비트에 생긴 에러에 의해 결정되는 제1의 신드롬을 발생하는 수단과; 상기 제2의 생성다항식에 의거하여 상기 정보열에 생긴 에러에 의해 결정되는 제2의 신드롬을 발생하는 수단과; 상기 제2의 신드롬 발생수단에 의해 발생한 제2의 신드롬에 의거하여 상기 정보열에 생긴 에러의 위치를 검출하는 수단과; 상기 에러위치 검출수단에 의해 검출한 에러위치와 상기 제1의 생성다항식에 의거하여 제3의 신드롬을 역산하는 수단과; 상기 제3의 신드롬과 상기 제1의 신드롬이 동일할 때 상기 정보비트에 발생한 에러를 정정하는 수단을 구비하는 것을 특징으로 하는 에러정정 시스템.
  7. 제6항에 있어서, 상기 제1의 신드롬 발생수단은 제1의 생성다항식과 직교하는 검사다항식을 미리 준비해 두고, 이 검사다항식과 상기 정보비트 및 상기 제1의 검사비트의 내적을 구함으로써 제1의 신드롬을 발생하는 것을 특징으로 하는 에러정정 시스템.
  8. 제6항에 있어서, 상기 제2의 신드롬 발생수단은 제2의 생성다항식과 직교하는 검사다항식을 미리 준비해 두고, 이 검사다항식과 상기 정보열의 내적을 구함으로써 제2의 신드롬을 발생하는 것을 특징으로 하는 에러정정 시스템.
  9. 제6항에 있어서, 상기 에러정정수단은 상기 에러위치 검출수단에 의해 검출한 에러위치를 상기 정보비트 및 상기 제1의 검사비트의 우단의 비트를 기준위치로 한 에러위치로 보정하고, 이 보정한 에러위치와 상기 제1의 생성다항식에 의거하여 제3의 신드롬을 역산하는 것을 특징으로 하는 에러정정 시스템.
  10. 제6항에 있어서, 상기 에러정정수단은 상기 에러위치 검출수단에 의해 검출한 에러위치를 상기 정보비트의 좌단의 비트를 기준위치로 한 에러위치로 보정하고, 이 보정한 에러위치와 상기 제1의 생성다항식에 의거하여 제3의 신드롬을 역산하는 것을 특징으로 하는 에러정정 시스템.
  11. 통신내용을 나타내는 정보비트에 제1의 생성다항식에 의거한 제1의 검사비트 및 제2의 생성다항식에 의거한 제2의 검사비트를 부가한 정보열을 수신하고, 상기 제2의 생성다항식에 의거하여 상기 정보열의 에러정정을 행함과 동시에 상기 제1의 생성다항식에 의거하여 상기 에러정정의 시비를 확인하는 에러정정방법에 있어서, 상기 제1의 생성다항식에 의거하여 상기 정보비트 또는 상기 제1의 검사비트에 생긴 에러에 의해 결정되는 제1의 신드롬을 발생함과 동시에, 상기 제2의 생성다항식에 의거하여 상기 정보열에 생긴 에러에 의해 결정되는 제2의 신드롬을 발생하는 제1단계와; 상기 제2의 신드롬에 의거하여 상기 정보열에 생긴 에러의 위치를 검출하는 제2단계와; 상기 검출한 에러위치와 상기 제1의 생성다항식에 의거하여 제3의 신드롬을 역산하고, 상기 제3의 신드롬과 상기 제1의 신드롬이 동일할 때 상기 정보비트에 발생한 에러를 정정하는 제3단계로 이루어진 것을 특징으로 하는 에러정정방법.
  12. 제11항에 있어서, 상기 제1단계는 제1의 생성다항식과 직교하는 검사다항식을 미리 준비해 두고, 이 검사다항식과 상기 정보비트 및 상기 제1의 검사비트의 내적을 구함으로써 제1의 신드롬을 발생함과 동시에, 제2의 생성다항식과 직교하는 검사다항식을 미리 준비해 두고, 이 검사다항식과 상기 정보열의 내적을 구함으로써 제2의 신드롬을 발생하는 것을 특징으로 하는 에러정정방법.
  13. 제11항에 있어서, 상기 제3단계는 상기 제2단계에서 검출한 에러위치를 상기 정보비트 및 상기 제1의 검사비트의 우단의 비트를 기준위치로 한 에러위치로 보정하고, 이 보정한 에러위치와 상기 제1의 생성다항식에 의거하여 제3의 신드롬을 역산하는 것을 특징으로 하는 에러정정방법.
  14. 제11항에 있어서, 상기 제3단계는 상기 제2단계에서 검출한 에러위치를 상기 정보비트의 좌단의 비트를 기준위치로 한 에러위치로 보정하고, 이 보정한 에러위치와 상기 제1의 생성다항식에 의거하여 제3의 신드롬을 역산하는 것을 특징으로 하는 에러정정방법.
KR1019950015995A 1994-06-16 1995-06-16 에러정정장치 및 방법 KR0175111B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP94-134485 1994-06-16
JP6134485A JPH088760A (ja) 1994-06-16 1994-06-16 誤り訂正装置

Publications (2)

Publication Number Publication Date
KR960003123A KR960003123A (ko) 1996-01-26
KR0175111B1 true KR0175111B1 (ko) 1999-04-01

Family

ID=15129437

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950015995A KR0175111B1 (ko) 1994-06-16 1995-06-16 에러정정장치 및 방법

Country Status (4)

Country Link
US (1) US5898708A (ko)
JP (1) JPH088760A (ko)
KR (1) KR0175111B1 (ko)
CN (1) CN1080494C (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7421066B1 (en) * 1996-06-12 2008-09-02 Estech Systems, Inc. Telephone call/voice processing system
US6516435B1 (en) * 1997-06-04 2003-02-04 Kabushiki Kaisha Toshiba Code transmission scheme for communication system using error correcting codes
KR100260415B1 (ko) * 1997-08-13 2000-07-01 윤종용 고속시리얼에러위치다항식계산회로
FR2769776B1 (fr) * 1997-10-09 1999-12-17 Alsthom Cge Alcatel Procede de codage bloc par code produit applicable notamment au codage d'une cellule atm
JP2000215619A (ja) * 1999-01-26 2000-08-04 Matsushita Electric Ind Co Ltd デ―タ誤り訂正装置
US6453440B1 (en) * 1999-08-04 2002-09-17 Sun Microsystems, Inc. System and method for detecting double-bit errors and for correcting errors due to component failures
US6658620B1 (en) * 2000-01-11 2003-12-02 Northrop Grumman Corporation Burst and packet wireless transmission using product codes with iterative decoding
JP3352659B2 (ja) * 2000-03-27 2002-12-03 松下電器産業株式会社 復号装置及び復号方法
EP1161022A1 (en) * 2000-05-25 2001-12-05 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Selective repeat protocol with dynamic timers
CN100421081C (zh) * 2001-06-01 2008-09-24 Nxp股份有限公司 数字系统及其错误检测方法
BR0302831A (pt) * 2002-02-20 2004-04-27 Sony Corp Meio de gravação, método de gravação, aparelhos de gravação e de produção e métodos de reprodução e de identificação para um meio de gravação, é, método de transmissão de dados, e de processamento de recebimento de dados
KR100505210B1 (ko) * 2002-03-12 2005-08-04 엘지전자 주식회사 에러 정정장치 및 방법
US7764716B2 (en) * 2002-06-21 2010-07-27 Disney Enterprises, Inc. System and method for wirelessly transmitting and receiving digital data using acoustical tones
JP2005151299A (ja) 2003-11-18 2005-06-09 Sanyo Electric Co Ltd 無線通信装置、誤り訂正方法、および誤り訂正プログラム
JP4437760B2 (ja) * 2005-03-15 2010-03-24 三菱電機株式会社 光ディスク
JP4387968B2 (ja) * 2005-03-28 2009-12-24 富士通株式会社 障害検出装置および障害検出方法
WO2007094055A1 (ja) * 2006-02-15 2007-08-23 Hitachi Ulsi Systems Co., Ltd. 誤り検出訂正回路及び半導体メモリ
US8001449B2 (en) * 2007-07-27 2011-08-16 Yao-Chung Chang Syndrome-error mapping method for decoding linear and cyclic codes
JP2009010958A (ja) * 2008-07-07 2009-01-15 Sanyo Electric Co Ltd 無線通信装置、誤り訂正方法、および誤り訂正プログラム
TWI387214B (zh) * 2009-02-03 2013-02-21 Silicon Motion Inc 糾錯碼的解碼方法及電路
US9118351B2 (en) 2012-02-15 2015-08-25 Infineon Technologies Ag System and method for signature-based redundancy comparison
CN107845404A (zh) * 2017-10-30 2018-03-27 中北大学 一种新型低冗余二维矩阵码对存储器进行加固方法
DE102021133678A1 (de) * 2021-01-20 2022-07-21 Infineon Technologies Ag Korrektur von bitfehlern

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3688265A (en) * 1971-03-18 1972-08-29 Ibm Error-free decoding for failure-tolerant memories
US4282551A (en) * 1979-04-11 1981-08-04 Hitachi, Ltd. PCM Recording and reproducing apparatus
BE890280A (fr) * 1981-09-09 1982-03-09 Belge Lampes Mat Electr Mble Dispositif de codage et de decodage base sur un code de convolution
NL8200207A (nl) * 1982-01-21 1983-08-16 Philips Nv Werkwijze met foutkorrektie voor het overdragen van blokken databits, een inrichting voor het uitvoeren van een dergelijke werkwijze, een dekodeur voor gebruik bij een dergelijke werkwijze, en een inrichting bevattende een dergelijke dekodeur.
JPS58219852A (ja) * 1982-06-15 1983-12-21 Toshiba Corp エラ−訂正回路
US4527269A (en) * 1983-02-08 1985-07-02 Ampex Corporation Encoder verifier
JPS6026025A (ja) * 1983-07-25 1985-02-08 Daicel Chem Ind Ltd 新規ラクトン変性ジオ−ル
JPH084233B2 (ja) * 1984-06-29 1996-01-17 株式会社日立製作所 誤り訂正符号の復号装置
US4736376A (en) * 1985-10-25 1988-04-05 Sequoia Systems, Inc. Self-checking error correcting encoder/decoder
JPH0760394B2 (ja) * 1986-12-18 1995-06-28 株式会社日立製作所 誤り訂正・検出方式
US4833678A (en) * 1987-07-22 1989-05-23 Cyclotomics, Inc. Hard-wired serial Galois field decoder
JPH0697559B2 (ja) * 1987-09-24 1994-11-30 三菱電機株式会社 半導体記憶装置
US4873688A (en) * 1987-10-05 1989-10-10 Idaho Research Foundation High-speed real-time Reed-Solomon decoder
US5430739A (en) * 1990-03-27 1995-07-04 National Science Council Real-time Reed-Solomon decoder
US5440570A (en) * 1990-03-27 1995-08-08 National Science Council Real-time binary BCH decoder
US5384786A (en) * 1991-04-02 1995-01-24 Cirrus Logic, Inc. Fast and efficient circuit for identifying errors introduced in Reed-Solomon codewords
US5416786A (en) * 1991-06-28 1995-05-16 Industrial Technology Research Institute Error correction circuit for BCH codewords
DE4140018A1 (de) * 1991-12-04 1993-06-09 Bts Broadcast Television Systems Gmbh, 6100 Darmstadt, De Verfahren und schaltungsanordnung zum decodieren von rs-codierten datensignalen
US5357523A (en) * 1991-12-18 1994-10-18 International Business Machines Corporation Memory testing system with algorithmic test data generation
US5422895A (en) * 1992-01-09 1995-06-06 Quantum Corporation Cross-checking for on-the-fly Reed Solomon error correction code
KR940011663B1 (ko) * 1992-07-25 1994-12-23 삼성전자 주식회사 오류정정 시스템
JP2821324B2 (ja) * 1992-11-04 1998-11-05 三菱電機株式会社 誤り訂正回路
US5463642A (en) * 1993-06-29 1995-10-31 Mitsubishi Semiconductor America, Inc. Method and apparatus for determining error location

Also Published As

Publication number Publication date
CN1118540A (zh) 1996-03-13
CN1080494C (zh) 2002-03-06
US5898708A (en) 1999-04-27
JPH088760A (ja) 1996-01-12
KR960003123A (ko) 1996-01-26

Similar Documents

Publication Publication Date Title
KR0175111B1 (ko) 에러정정장치 및 방법
US7003712B2 (en) Apparatus and method for adaptive, multimode decoding
AU646484B2 (en) Bit error ratio detector
US4890286A (en) Method and apparatus for decoding error correcting code
JP4260688B2 (ja) データ送信装置、データ送受信システム、データ送信装置の制御方法およびデータ送受信システムの制御方法
EP1152540A1 (en) Error control device and method using cyclic code
JP2591242B2 (ja) 誤り検出方法
CN113839965B (zh) 基于crc校验码的多协议协处理器及其处理方法
JP3217716B2 (ja) 無線パケット通信装置
JP3237700B2 (ja) 誤り検出方法及び誤り検出システム
US5031181A (en) Error correction processing apparatus
JPH05284044A (ja) ランダムエラーおよびバーストエラー訂正が行われる伝送装置、受信機、デコーダおよびビデオホーン
CN112564858B (zh) 卫星导航用crc纠错方法及系统
TWI399042B (zh) To detect the wrong position of the detection device
JPH0365698B2 (ko)
JP2676860B2 (ja) 信号伝送方式
JPS61154331A (ja) デ−タ変換器
JP3536799B2 (ja) フレーム同期回路および同期方法、ならびにそのプログラムを記録した記録媒体
KR0149298B1 (ko) 리드-솔로몬 디코더
CN117792568B (zh) 一种基于累计值的可靠通信方法及系统
JP2652398B2 (ja) データ伝送方法
JPH06284016A (ja) 誤り制御装置
JP2600581B2 (ja) 符号同期回路
JP2002368723A (ja) 検出装置、誤り訂正装置、及び誤り訂正装置を用いた受信機
JP2721752B2 (ja) 誤り制御方法

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 19950616

PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 19950616

Comment text: Request for Examination of Application

PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 19980218

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 19980826

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 19981107

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 19981107

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20011031

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20021030

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20031030

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20041101

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20051031

Start annual number: 8

End annual number: 8

FPAY Annual fee payment

Payment date: 20061031

Year of fee payment: 9

PR1001 Payment of annual fee

Payment date: 20061031

Start annual number: 9

End annual number: 9

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20081010