KR20170061066A - 오류 정정 부호기, 오류 정정 복호기 및 오류 정정 부호기 및 복호기를 포함하는 광 통신 장치 - Google Patents

오류 정정 부호기, 오류 정정 복호기 및 오류 정정 부호기 및 복호기를 포함하는 광 통신 장치 Download PDF

Info

Publication number
KR20170061066A
KR20170061066A KR1020160143563A KR20160143563A KR20170061066A KR 20170061066 A KR20170061066 A KR 20170061066A KR 1020160143563 A KR1020160143563 A KR 1020160143563A KR 20160143563 A KR20160143563 A KR 20160143563A KR 20170061066 A KR20170061066 A KR 20170061066A
Authority
KR
South Korea
Prior art keywords
error correction
output
input
decoders
perform
Prior art date
Application number
KR1020160143563A
Other languages
English (en)
Other versions
KR102141160B1 (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 한국전자통신연구원
Priority to US15/360,925 priority Critical patent/US10361727B2/en
Publication of KR20170061066A publication Critical patent/KR20170061066A/ko
Application granted granted Critical
Publication of KR102141160B1 publication Critical patent/KR102141160B1/ko

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/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/11Error 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 using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] 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/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/11Error 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 using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • H03M13/114Shuffled, staggered, layered or turbo decoding schedules

Landscapes

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

Abstract

본 발명의 오류 정정 부호기는, 입력어들을 수신하는 입력 노드들, 입력어들에 대해 각각 제1 오류 정정 부호화를 수행하여 제1 패리티들을 생성하는 제1 부호기들, 입력어들에 대해 인터리빙을 수행하여 인터리브어들을 생성하는 인터리버, 인터리브어들에 대해 각각 제2 오류 정정 부호화를 수행하여 복수의 제2 패리티들을 생성하는 제2 부호기들, 입력어들을 각각 출력하는 출력 노드들, 제1 패리티들을 각각 출력하는 제1 패리티 출력 노드들, 그리고 제2 패리티들을 각각 출력하는 제2 패리티 출력 노드들로 구성된다.

Description

오류 정정 부호기, 오류 정정 복호기 및 오류 정정 부호기 및 복호기를 포함하는 광 통신 장치{ERROR CORRECTION ENCODER, ERROR CORRECTION DECODER AND OPTICAL COMMUNICATION DEVICE INCUDING ERROR CORRECTION ENCODER AND DECODER}
본 발명은 통신 장치에 관한 것으로, 더 상세하게는 오류 정정 부호기, 오류 정정 복호기 및 오류 정정 부호기 및 복호기를 포함하는 광 통신 장치 에 관한 것이다.
통신 장치들은 유선 또는 무선 채널을 통해 신호를 송신하고, 유선 또는 무선 채널을 통해 신호를 수신한다. 신호가 유선 또는 무선 채널을 통해 전달되는 동안, 다양한 원인들로 인해 잡음이 신호에 영향을 준다. 잡음으로 인해, 수신된 신호가 송신된 신호로 복원되지 않는 오류 가 발생할 수 있다.
이와 같은 오류 를 처리, 보상 또는 정정하기 위하여, 통신 장치들에 오류 정정 부호기 및 복호기가 적용되고 있다. 오류 정정 부호기는 송신될 신호에 기반하여 오류 정정을 위한 추가 정보, 예를 들어 패리티를 생성한다. 통신 장치는 유선 또는 무선 채널을 통해 원본 신호 및 패리티를 포함하는 신호를 송신할 수 있다. 또한, 통신 장치의 오류 정정 복호기는 유선 또는 무선 채널을 통해 수신되는 신호로부터 원본 신호 부분 및 패리티 부분을 검출하고, 패리티 부분을 이용하여 원본 신호 부분 또는 원본 신호 부분 및 패리티 부분의 오류 를 처리, 보상 또는 정정할 수 있다.
광 통신 장치에도 오류 정정 부호기 및 복호기가 적용되고 있다. 광 통신은 다른 통신 방식들과 비교하여 상대적으로 높은 전송률을 특징으로 하며, 연관 기술의 발전에 따라 통신 전송률이 지속적으로 상승하고 있다. 광 통신 장치에 적용되는 오류 정정 부호기 및 복호기는 광 통신의 전송률에 대응하는 높은 처리 속도를 가져야 한다. 또한, 광 통신의 신뢰성을 높이기 위하여, 광 통신 장치에 적용되는 오류 정정 부호기 및 복호기는 높은 오류 정정 기능을 가져야 한다. 즉, 광 통신 장치에 적용되기 위한 높은 처리 속도 및 높은 오류 정정 기능을 구비한 오류 정정 부호기 및 복호기가 요구되고 있다.
본 발명의 목적은 높은 처리 속도 및 높은 오류 처리 기능을 구비한 오류 정정 부호기, 오류 정정 복호기 및 오류 정정 부호기 및 복호기를 포함하는 광 통신 장치 를 제공하는 데에 있다.
본 발명의 실시 예들에 따른 오류 정정 부호기(encoder)는, 복수의 입력어들(input words)을 수신하도록 구성되는 복수의 입력 노드들, 상기 복수의 입력 노드들을 통해 수신되는 상기 복수의 입력어들에 대해 각각 제1 오류 정정 부호화를 수행하여 복수의 제1 패리티들을 생성하도록 구성되는 복수의 제1 부호기들, 상기 복수의 입력 노드들로부터 수신되는 상기 복수의 입력어들에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(interleaved words)을 생성하도록 구성되는 인터리버, 상기 인터리버로부터 수신되는 상기 복수의 인터리브어들에 대해 각각 제2 오류 정정 부호화를 수행하여 복수의 제2 패리티들을 생성하도록 구성되는 복수의 제2 부호기들, 상기 복수의 입력 노드들을 통해 수신되는 상기 복수의 입력어들을 각각 출력하도록 구성되는 복수의 출력 노드들, 상기 복수의 제1 부호기들로부터 수신되는 상기 복수의 제1 패리티들을 각각 출력하도록 구성되는 복수의 제1 패리티 출력 노드들, 그리고 상기 복수의 제2 부호기들로부터 수신되는 상기 복수의 제2 패리티들을 각각 출력하도록 구성되는 복수의 제2 패리티 출력 노드들을 포함한다.
실시 예로서, 상기 제1 오류 정정 부호화 및 상기 제2 오류 정정 부호화 각각은 저밀도 패리티 체크(LDPC, Low Density Parity Check) 부호화 포함한다.
실시 예로서, 각 인터리브어는 상기 복수의 입력어들 각각의 일부분을 포함한다.
실시 예로서, 상기 오류 정정 부호기는 상기 복수의 제1 부호기들 중 활성 제1 부호기들의 개수, 상기 복수의 제2 부호기들 중 활성 제2 부호기들의 개수, 그리고 상기 인터리버의 활성 입력들의 개수 및 활성 출력들의 개수를 조절하도록 구성되는 제어 회로를 더 포함한다.
본 발명의 실시 예들에 따른 오류 정정 복호기(decoder)는, 복수의 입력어들(input words)을 수신하도록 구성되는 복수의 입력 노드들, 복수의 제1 패리티 입력 노드들을 통해 수신되는 복수의 제1 패리티들을 이용하여 상기 복수의 입력 노드들을 통해 수신되는 상기 복수의 입력어들에 대해 각각 제1 오류 정정 복호화를 수행하도록 구성되는 복수의 제1 오류 정정 복호기들, 상기 복수의 제1 오류 정정 복호기들의 출력들에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(interleaved words)을 생성하도록 구성되는 인터리버, 그리고 복수의 제2 패리티 입력 노드들을 통해 수신되는 복수의 제2 패리티들을 이용하여 상기 인터리버로부터 수신되는 상기 복수의 인터리브어들에 대해 각각 제2 오류 정정 복호화를 수행하도록 구성되는 복수의 제2 오류 정정 복호기들을 포함한다.
실시 예로서, 상기 오류 정정 복호기는 상기 복수의 제2 오류 정정 부호기들의 출력들에 대해 디인터리빙을 수행하여 복수의 디인터리브어들(deinterleaved words)을 생성하도록 구성되는 디인터리버, 그리고 상기 복수의 입력 노드들을 통해 수신되는 상기 복수의 입력어들 및 상기 디인터리버로부터 수신되는 상기 디인터리브어들을 각각 합하여 상기 복수의 제1 오류 정정 복호기들로 각각 전달하도록 구성되는 복수의 덧셈기들을 더 포함한다.
실시 예로서, 각 디인터리브어는 상기 복수의 제2 오류 정정 복호기들의 출력들 각각의 일부분을 포함한다.
실시 예로서, 상기 복수의 제1 오류 정정 복호기들은 상기 복수의 덧셈기들의 출력들에 대해 상기 제1 오류 정정 복호화를 수행하도록 구성되고, 상기 디인터리버가 유효한 값을 출력하지 않을 때, 상기 복수의 덧셈기들은 상기 복수의 입력어들을 상기 복수의 제1 오류 정정 복호기로 각각 전달하도록 구성된다.
실시 예로서, 상기 오류 정정 복호기는 상기 복수의 제1 오류 정정 복호기의 출력들로부터 상기 디인터리버의 출력들을 각각 감한 값들을 상기 인터리버에 전달하도록 구성되는 복수의 덧셈기들을 더 포함한다.
실시 예로서, 상기 인터리버는 상기 복수의 덧셈기들의 출력들에 대해 인터리빙을 수행하도록 구성되고, 상기 디인터리버가 유효한 값을 출력하지 않을 때, 상기 복수의 덧셈기들은 상기 복수의 제1 오류 정정 복호기들의 출력들을 상기 인터리버로 전달하도록 구성된다.
실시 예로서, 상기 오류 정정 복호기는 상기 복수의 제2 오류 정정 복호기들의 출력들로부터 상기 인터리버의 출력들을 각각 감한 값들을 상기 디인터리버에 전달하도록 구성되는 복수의 덧셈기들을 더 포함하고, 상기 디인터리버는 상기 복수의 덧셈기들의 출력들에 대해 디인터리빙을 수행하도록 구성된다.
실시 예로서, 상기 오류 정정 복호기는 상기 복수의 제2 오류 정정 복호기들이 상기 디인터리버에 출력들을 전달하는 회수가 기준값에 도달하면, 상기 복수의 제2 오류 정정 복호기들의 출력들을 외부로 각각 출력하도록 구성되는 복수의 출력 노드들을 더 포함한다.
실시 예로서, 상기 오류 정정 복호기는 상기 복수의 제1 오류 정정 복호기들 중 활성 제1 오류 정정 복호기들의 개수, 상기 인터리버의 활성 입력들 및 활성 출력들의 개수, 그리고 상기 복수의 제2 오류 정정 복호기들 중 활성 제2 오류 정정 복호기들의 개수, 그리고 상기 디인터리버의 활성 입력들 및 활성 출력들의 개수를 조절하도록 구성되는 제어 회로를 더 포함한다.
실시 예로서,상기 제1 오류 정정 복호화 및 상기 제2 오류 정정 복호화 각각은 오류 정정을 복수회 수행하는 반복 복호화를 포함한다.
실시 예로서,상기 제1 오류 정정 복호화 및 상기 제2 오류 정정 복호화 각각은 저밀도 패리티 체크(LDPC, Low Density Parity Check) 복호화를 포함한다.
본 발명의 실시 예들에 따른 광 통신 장치는, 제1 입력어에 대해 스크램블을 수행하도록 구성되는 스크램블러, 상기 스크램블러의 출력을 병렬화하여 복수의 제2 입력어들을 출력하도록 구성되는 병렬화기, 상기 복수의 제2 입력어들에 대해 오류 정정 부호화를 수행하도록 구성되는 오류 정정 부호기, 그리고 상기 오류 정정 부호기의 출력을 광 신호로 출력하도록 구성되는 광 송신기를 포함한다. 상기 오류 정정 부호기는, 상기 복수의 제2 입력어들에 대해 각각 제1 오류 정정 부호화를 수행하여 복수의 제1 패리티들을 생성하도록 구성되는 복수의 제1 부호기들, 상기 복수의 제2 입력어들에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(interleaved words)을 생성하도록 구성되는 인터리버, 그리고 상기 인터리버로부터 수신되는 상기 복수의 인터리브어들에 대해 각각 제2 오류 정정 부호화를 수행하여 복수의 제2 패리티들을 생성하도록 구성되는 복수의 제2 부호기들을 포함한다. 상기 오류 정정 부호기는 상기 복수의 제2 입력어들, 상기 복수의 제1 패리티들 및 상기 복수의 제2 패리티들을 출력하도록 구성된다.
실시 예로서, 상기 광 통신 장치는 상기 오류 정정 부호기의 출력들의 수를 상기 광 송신기의 입력들의 수에 맞게 감소시켜 상기 광 송신기로 전달하도록 구성되는 직렬화기를 더 포함한다.
실시 예로서, 상기 오류 정정 부호기는, 각 제2 입력어 및 각 제2 입력어에 대응하는 제1 패리티 및 제2 패리티를 각 출력어(output word)로 출력하도록 구성된다.
실시 예로서, 상기 광 통신 장치는 제2 광 신호를 수신하도록 구성되는 광 수신기, 상기 광 수신기의 출력을 복수의 제3 입력어들로 병렬화하도록 구성되는 제2 병렬화기, 상기 복수의 제3 입력어들에 대해 오류 정정 복호화를 수행하도록 구성되는 오류 정정 복호기, 상기 제2 오류 정정 복호기의 출력들을 제4 입력어로 직렬화하도록 구성되는 직렬화기, 그리고 상기 직렬화기의 출력에 대해 디스크램블을 수행하여 출력하도록 구성되는 디스크램블러를 더 포함한다. 상기 오류 정정 복호기는, 상기 복수의 제1 패리티들을 이용하여 상기 복수의 제3 입력어들에 대해 각각 제1 오류 정정 복호화를 수행하도록 구성되는 복수의 제1 오류 정정 복호기들, 상기 복수의 제1 오류 정정 복호기들의 출력들에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(interleaved words)을 생성하도록 구성되는 인터리버, 그리고 상기 복수의 제2 패리티들을 이용하여 상기 인터리버로부터 수신되는 상기 복수의 인터리브어들에 대해 각각 제2 오류 정정 복호화를 수행하도록 구성되는 복수의 제2 오류 정정 복호기들을 포함한다.
실시 예로서, 상기 광 통신 장치는 제2 광 신호들을 수신하도록 구성되는 광 수신기, 상기 광 수신기의 출력들을 복수의 제3 입력어들로 병렬화하도록 구성되는 제2 병렬화기, 상기 복수의 제3 입력어들에 대해 오류 정정 복호화를 수행하도록 구성되는 오류 정정 복호기, 상기 오류 정정 복호기의 출력들을 제4 입력어로 직렬화하도록 구성되는 직렬화기, 그리고 상기 직렬화기의 출력에 대해 디스크램블을 수행하여 출력하도록 구성되는 디스크램블러를 더 포함한다. 상기 오류 정정 복호기는, 상기 복수의 제1 패리티들을 이용하여 상기 복수의 제3 입력어들에 대해 각각 제1 오류 정정 복호화를 수행하도록 구성되는 복수의 제1 오류 정정 복호기들, 상기 복수의 제1 오류 정정 복호기들의 출력들에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(interleaved words)을 생성하도록 구성되는 인터리버, 그리고 상기 복수의 제2 패리티들을 이용하여 상기 인터리버로부터 수신되는 상기 복수의 인터리브어들에 대해 각각 제2 오류 정정 복호화를 수행하도록 구성되는 복수의 제2 오류 정정 복호기들을 포함한다.
본 발명의 실시 예들에 따르면, 오류 정정 부호기 및 복호기가 복수의 입력어들을 병렬 처리한다. 따라서, 향상된 처리 속도를 갖는 오류 정정 부호기, 오류 정정 복호기 및 광 통신 장치 가 제공된다. 또한, 본 발명의 실시 예들에 따르면, 오류 정정 부호기 및 복호기가 복수의 입력어들을 인터리빙하고, 그리고 2단계의 반복 오류 정정을 수행한다. 따라서, 향상된 오류 정정 기능을 구비한 오류 정정 부호기, 오류 정정 복호기 및 광 통신 장치 가 제공된다.
도 1은 본 발명의 실시 예에 따른 오류 정정 부호기를 보여주는 블록도이다.
도 2는 도 1의 오류 정정 부호기가 오류 정정 부호화를 수행하는 방법을 보여주는 순서도이다.
도 3은 본 발명의 실시 예들에 따른 오류 정정 복호기를 보여주는 블록도이다.
도 4는 도 3의 오류 정정 복호기가 오류 정정 복호화오류 정정 복호화를 수행하는 방법을 보여주는 순서도이다.
도 5는 본 발명의 실시 예들에 따른 광 통신 장치를 보여주는 블록도이다.
도 6은 본 발명의 응용 예에 따른 광 통신 장치를 보여주는 블록도이다.
도 7은 본 발명의 응용 예에 따른 광 통신 장치를 보여주는 블록도이다.
도 8은 도 1의 오류 정정 부호기의 응용 예를 보여준다.
도 9는 도 3의 오류 정정 복호기의 응용 예를 보여준다.
이하에서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 실시 예를 첨부된 도면을 참조하여 설명하기로 한다.
도 1은 본 발명의 실시 예에 따른 오류 정정 부호기(100)를 보여주는 블록도이다. 예시적으로, 오류 정정 과정에서 오류 정정 부호화를 수행하는 오류 정정 부호기(100)가 도 1에 도시된다.
도 1을 참조하면, 오류 정정 부호기(100)는 입력부(110), 제1 부호화부(120), 인터리버(130), 제2 부호화부(140), 출력부(150), 제1 패리티 출력부(160), 그리고 제2 패리티 출력부(170)를 포함한다.
입력부(110)는 복수의 입력 노드들(I1~I4)을 포함한다. 복수의 입력 노드들(I1~I4) 각각은 외부 장치로부터 입력어(input word)를 수신하도록 구성된다. 즉, 복수의 입력 노드들(I1~I4)은 복수의 입력어들(IW1~IW4)을 각각 동시에 수신할 수 있다. 예를 들어, 복수의 입력어들(IW1~IW4)은 유선 또는 무선 채널을 통해 송신할 데이터를 생성하는 데이터 소스부터 복수의 입력 노드들(I1~I4)로 전달될 수 있다. 복수의 입력 노드들(I1~I4)을 통해 수신되는 복수의 입력어들(IW1~IW4)은 제1 부호화부(120), 인터리버(130), 그리고 출력부(150)로 전달된다.
제1 부호화부(120)는 복수의 입력 노드들(I1~I4)에 각각 대응하는 복수의 제1 부호기들(121~124)을 포함한다. 예시적으로, 복수의 입력 노드들(I1~I4) 및 복수의 제1 부호기들(121~124)은 1:1의 대응 관계를 가질 수 있다. 복수의 제1 부호기들(121~124)은 복수의 입력 노드들(I1~I4)을 통해 수신되는 복수의 입력어들(IW1~IW4)에 대해 각각 제1 오류 정정 부호화를 수행할 수 있다. 예를 들어, 제1 부호기들(121~124) 각각은 저밀도 패리티 체크(LDPC, Low Density Parity Check) 부호화를 수행할 수 있다. 복수의 제1 부호기들(121~124)은 복수의 입력어들(IW1~IW4)로부터 제1 패리티들(P11~P14)을 각각 생성할 수 있다. 제1 패리티들(P11~P14)은 오류 정정을 위해 복수의 입력어들(IW1~IW4)로부터 생성되는 추가 정보들일 수 있다. 제1 패리티들(P11~P14)은 제1 패리티 출력부(160)로 전달된다.
인터리버(130)는 복수의 입력 노드들(I1~I4)을 통해 수신되는 복수의 입력어들(IW1~IW4)에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(IV1~IV4, interleaved words)을 생성할 수 있다. 예를 들어, 인터리버(130)는 복수의 입력어들(IW1~IW4) 각각으로부터 일부분을 추출하여 하나의 인터리브어를 생성할 수 있다. 하나의 인터리브어는 복수의 입력어들(IW1~IW4) 각각의 부분들을 포함할 수 있다. 예시적으로, 인터리버(130)에 입력되는 입력어들(IW1~IW4)의 개수 및 인터리버(130)로부터 출력되는 인터리브어들(IV1~IV4)의 개수는 동일할 수 있다. 즉, 인터리버(130)의 입력 노드들의 개수 및 출력 노드들의 개수는 동일할 수 있다. 인터리버(130)로부터 출력되는 복수의 인터리브어들(IV1~IV4)은 제2 부호화부(140)로 전달된다.
제2 부호화부(140)는 복수의 인터리브어들(IV1~IV4)에 각각 대응하는 복수의 제2 부호기들(141~144)을 포함한다. 예시적으로, 복수의 인터리브어들(IV1~IV4) 및 복수의 제2 부호기들(141~144)은 1:1의 대응 관계를 가질 수 있다. 복수의 제2 부호기들(141~144)은 복수의 인터리브어들(IV1~IV4)에 대해 각각 제2 오류 정정 부호화를 수행할 수 있다. 예를 들어, 제2 부호기들(141~144) 각각은 저밀도 패리티 체크(LDPC, Low Density Parity Check) 부호화를 수행할 수 있다. 복수의 제2 부호기들(141~144)은 복수의 인터리브어들(IV1~IV4)로부터 제2 패리티들(P21~P24)을 각각 생성할 수 있다. 제2 패리티들(P21~P24)은 오류 정정을 위해 복수의 인터리브어들(IV1~IV4)로부터 생성되는 추가 정보들일 수 있다. 제2 패리티들(P21~P24)은 제2 패리티 출력부(170)로 전달된다.
출력부(150)는 복수의 입력 노드들(I1~I4)에 각각 대응하는 복수의 출력 노드들(O1~O4)을 포함한다. 복수의 출력 노드들(O1~O4)은 복수의 입력 노드들(I1~I4)로부터 전달되는 복수의 입력어들(IW1~IW4)을 출력할 수 있다.
제1 패리티 출력부(160)는 복수의 제1 부호기들(121~124)에 각각 대응하는 복수의 제1 패리티 출력 노드들(161~164)을 포함한다. 복수의 제1 패리티 출력 노드들(161~164)은 각각 복수의 제1 부호기들(121~124)로부터 전달되는 제1 패리티들(P11~P14)을 출력할 수 있다.
제2 패리티 출력부(170)는 복수의 제2 부호기들(141~144)에 각각 대응하는 복수의 제2 패리티 출력 노드들(171~174)을 포함한다. 복수의 제2 패리티 출력 노드들(171~174)은 각각 복수의 제2 부호기들(141~144)로부터 전달되는 제2 패리티들(P21~P24)을 출력할 수 있다.
예시적으로, 출력 노드들(O1~O4)을 통해 출력되는 복수의 입력어들(IW1~IW4), 제1 패리티 출력 노드들(161~164)을 통해 출력되는 복수의 제1 패리티들(P11~P14), 그리고 제2 패리티 출력 노드들(171~174)을 통해 출력되는 복수의 제2 패리티들(P21~P24)은 각각 복수의 출력어들(OW1~O4)을 형성할 수 있다. 예를 들어, 각 입력어는 대응하는 제1 패리티 및 대응하는 제2 패리티와 함께 하나의 출력어를 형성할 수 있다. 복수의 출력어들(OW1~OW4)은 유선 또는 무선 채널을 통해 송신될 수 있다.
상술된 바와 같이, 본 발명의 실시 예에 따른 오류 정정 부호기(100)는 복수의 입력어들에 대해 병렬적으로 오류 정정 부호화를 수행하도록 구성된다. 도 1에서, 4개의 입력어들(IW1~IW4)에 대해 오류 정정 부호화가 수행되는 것으로 도시되어 있으나, 동시에 부호화되는 입력어들의 수는 한정되지 않는다. 예를 들어, 오류 정정 부호기(100)가 k (k는 양의 정수) 개의 입력어들을 동시에 부호화하도록 구성될 때, 오류 정정 부호기(100)에 k 개의 입력 노드들, k 개의 제1 부호기들, k 개의 제2 부호기들, k 개의 출력 노드들, k 개의 제1 패리티 출력 노드들, 그리고 k 개의 제2 패리티 출력 노드들이 제공될 수 있다. 또한, 인터리버(130)는 k 개의 입력 노드들 및 k 개의 출력 노드들을 포함할 수 있다. 예를 들어, 인터리버(130)는 k 개의 입력어들을 k 개의 인터리브어들로 변환하도록 응용될 수 있다.
도 2는 도 1의 오류 정정 부호기(100)가 오류 정정 부호화를 수행하는 방법을 보여주는 순서도이다. 도 1 및 도 2를 참조하면, S110 단계에서, 오류 정정 부호기(100)는 복수의 입력 노드들(I1~I4)에서 복수의 입력어들(IW1~IW4)을 수신할 수 있다.
복수의 입력어들(IW1~IW4)이 수신된 후에, S120 단계, S130 단계, 그리고 SS140 단계 및 S150 단계가 병렬적으로 수행된다.
S120 단계에서, 오류 정정 부호기(100)는 복수의 입력어들(IW1~IW4)을 복수의 출력 노드들(O1~O4)에서 출력할 수 있다.
S130 단계에서, 오류 정정 부호기(100)는 복수의 입력어들(IW1~IW4)에 대해 복수의 제1 부호기들(121~124)에서 각각 제1 오류 정정 부호화를 수행하여, 복수의 제1 패리티들(P11~P14)을 생성할 수 있다. 복수의 제1 패리티들(P11~P14)은 복수의 제1 패리티 출력 노드들(161~164)에서 출력될 수 있다.
S140 단계에서, 오류 정정 부호기(100)는 복수의 입력어들(IW1~IW4)에 대해 인터리버(130)에서 인터리빙을 수행하여 복수의 인터리브어들(IV1~IV4)을 생성할 수 있다. S150 단계에서, 오류 정정 부호기(100)는 복수의 인터리브어들(IV1~IV4)에 대해 복수의 제2 부호기들(141~144)에서 각각 제2 오류 정정 부호화를 수행하여 복수의 제2 패리티들(P21~P24)을 생성할 수 있다. 복수의 제2 패리티들(P21~P24)은 복수의 제2 패리티 출력 노드들(171~174)에서 출력될 수 있다.
복수의 입력어들(IW1~IW4), 복수의 제1 패리티들(P11~P14), 그리고 복수의 제2 패리티들(P21~P24)은 복수의 출력어들(OW1~OW4)을 형성하고, 유선 또는 무선 채널을 통해 송신될 수 있다.
도 3은 본 발명의 실시 예들에 따른 오류 정정 복호기(200)를 보여주는 블록도이다. 예시적으로, 오류 정정 과정에서 오류 정정 복호화를 수행하는 오류 정정 복호기(200)가 도 3에 도시된다. 도 3을 참조하면, 오류 정정 복호기(200)는 입력부(210), 제1 덧셈부(220), 제1 복호화부(230), 제2 덧셈부(240), 인터리버(250), 제2 복호화부(260), 제3 덧셈부(270), 디인터리버(280), 출력부(290), 제1 패리티 입력부(PI1), 그리고 제2 패리티 입력부(PI2)를 포함한다.
입력부(210)는 복수의 입력 노드들(I1~I4)을 포함한다. 복수의 입력 노드들(I1~I4)에서, 복수의 입력어들(IW1~IW4)이 수신된다. 복수의 입력어들(IW1~IW4)은 유선 또는 무선 채널을 통해 수신된 신호 중에서 데이터 소스가 생성된 원본 데이터, 예를 들어 오류 정정 부호화를 수행하는 오류 정정 부호기(100, 도 1 참조)로 입력되는 입력어들에 해당하는 부분일 수 있다. 복수의 입력어들(IW1~IW4)은 제1 덧셈부(220)로 전달될 수 있다.
제1 덧셈부(220)는 복수의 입력어들(IW1~IW4)에 각각 대응하는 복수의 제1 덧셈기들(221~224)을 포함한다. 복수의 제1 덧셈기들(221~224)은 복수의 제1 입력어들(IW1~IW4) 및 디인터리버(280)로부터 출력되는 디인터리브어들(DV1~DV4)을 각각 합한 결과들을 복수의 제1 합 신호들(A1~A4)로 출력할 수 있다. 예시적으로, 디인터리버(280)가 유효한 디인터리브어들(DV1~DV4)을 출력하지 않을 때에, 복수의 제1 덧셈기들(221~224)은 복수의 제1 입력어들(IW1~IW4)을 각각 복수의 제1 합 신호들(A1~A4)로 출력할 수 있다. 복수의 제1 합 신호들(A1~A4)은 제1 복호화부(230)로 전달된다.
제1 패리티 입력부(PI1)는 복수의 제1 패리티 입력 노드들(PI11~PI14)을 포함한다. 복수의 제1 패리티 입력 노드들(PI11~PI14)에서, 복수의 제1 패리티들(P11~P14)이 수신된다. 복수의 제1 패리티들(P11~P14)은 유선 또는 무선 채널을 통해 수신된 신호 중에서 입력어들이 부호화된 제1 패리티들, 예를 들어 제1 오류 정정 부호기들(121~124, 도 1 참조)에서 출력되는 제1 패리티들에 해당하는 부분일 수 있다. 복수의 제1 패리티들(P11~P14)은 제1 복호화부(230)로 전달될 수 있다.
제1 복호화부(230)는 복수의 제1 합 신호들(A1~A4)에 각각 대응하는 복수의 제1 복호기들(231~234)을 포함한다. 예시적으로, 복수의 제1 복호기들(231~234)은 복수의 제1 패리티들(P11~P14)을 이용하여 복수의 합 신호들(A1~A4)에 대해 각각 제1 오류 정정 복호화를 수행할 수 있다. 예를 들어, 복수의 제1 패리티들(P11~P14)은 복수의 합 신호들(A1~A4)과 1:1의 대응관계를 가질 수 있다. 복수의 제1 복호기들(231~234)은 1:1의 대응 관계에 따라, 연관된 제1 패리티를 이용하여 연관된 제1 합 신호에 대해 오류 정정 복호화를 수행할 수 있다. 예를 들어, 제1 복호기들(231~234) 각각은 반복적(iterative) 오류 정정 복호화를 수행할 수 있다. 예를 들어, 제1 복호기들(231~234) 각각은 저밀도 패리티 체크(LDPC, Low Density Parity Check) 복호화를 수행할 수 있다. 제1 복호기들(231~234) 각각은 복호화 회수가 미리 정해진 기준값에 도달할 때까지, 복호화를 반복적으로 수행할 수 있다. 제1 복호기들(231~234)의 복호화의 결과들은 제1 중간 신호들(B1~B4)로서 제2 덧셈부(240)로 전달될 수 있다.
제2 덧셈부(240)는 복수의 제1 복호기들(231~234)에 각각 대응하는 복수의 제2 덧셈기들(241~244)을 포함한다. 복수의 제2 덧셈기들(241~244)은 복수의 제1 중간 신호들(B1~B4)로부터 디인터리버(280)로부터 출력되는 디인터리브어들(DV1~DV4)의 출력들을 각각 감한 결과들을 복수의 제2 합 신호들(C1~C4)로 출력할 수 있다. 예시적으로, 디인터리버(280)가 유효한 디인터리브어들(DV1~DV4)을 출력하지 않을 때에, 복수의 제2 덧셈기들(241~244)은 복수의 제1 중간 신호들(B1~B4)을 각각 복수의 제2 합 신호들(C1~C4)로 출력할 수 있다. 복수의 제2 합 신호들(C1~C4)은 인터리버(250)로 전달된다.
인터리버(250)는 복수의 제2 합 신호들(C1~C4)에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(IV1~IV4, interleaved words)을 생성할 수 있다. 예를 들어, 인터리버(250)는 복수의 제2 합 신호들(C1~C4) 각각으로부터 일부분을 추출하여 하나의 인터리브어를 생성할 수 있다. 하나의 인터리브어는 복수의 제2 합 신호들(C1~C4) 각각의 부분들을 포함할 수 있다. 예시적으로, 인터리버(250)에 입력되는 제2 합 신호들(C1~C4)의 개수 및 인터리버(250)로부터 출력되는 인터리브어들(IV1~IV4)의 개수는 동일할 수 있다. 즉, 인터리버(250)의 입력 노드들의 개수 및 출력 노드들의 개수는 동일할 수 있다. 인터리버(250)로부터 출력되는 복수의 인터리브어들(IV1~IV4)은 제2 복호화부(260) 및 제3 덧셈부(270)로 전달된다.
제2 패리티 입력부(PI2)는 복수의 제2 패리티 입력 노드들(PI21~PI24)을 포함한다. 복수의 제2 패리티 입력 노드들(PI21~PI24)에서, 복수의 제2 패리티들(P21~P24)이 수신된다. 복수의 제2 패리티들(P21~P24)은 유선 또는 무선 채널을 통해 수신된 신호 중에서 인터리브어들이 부호화된 제2 패리티들, 예를 들어 제2 오류 정정 부호기들(141~144, 도 1 참조)에서 출력되는 제2 패리티들에 해당하는 부분일 수 있다. 복수의 제2 패리티들(P21~P24)은 제2 복호화부(260)로 전달될 수 있다.
제2 복호화부(260)는 복수의 인터리브어들(IV1~IV4)에 각각 대응하는 복수의 제2 복호기들(261~264)을 포함한다. 예시적으로, 복수의 제2 복호기들(261~264)은 복수의 제2 패리티들(P21~P24)을 이용하여 복수의 인터리브어들(IV1~IV4)에 대해 각각 제2 오류 정정 복호화를 수행할 수 있다. 예를 들어, 복수의 제2 패리티들(P21~P24)은 복수의 인터리브어들(IV1~IV4)과 1:1의 대응관계를 가질 수 있다. 복수의 제2 복호기들(261~264)은 1:1의 대응 관계에 따라, 연관된 제2 패리티를 이용하여 연관된 인터리브어에 대해 오류 정정 복호화를 수행할 수 있다. 예를 들어, 제2 복호기들(261~264) 각각은 반복적(iterative) 오류 정정 복호화를 수행할 수 있다. 예를 들어, 제2 복호기들(261~264) 각각은 저밀도 패리티 체크(LDPC, Low Density Parity Check) 복호화를 수행할 수 있다. 제2 복호기들(261~264) 각각은 복호화 회수가 미리 정해진 기준값에 도달할 때까지, 복호화를 반복적으로 수행할 수 있다. 제2 복호기들(261~264)의 복호화의 결과들은 제2 중간 신호들(D1~D4)로서 제3 덧셈부(270) 및 출력부(290)로 전달될 수 있다.
제3 덧셈부(270)는 복수의 제2 복호기들(261~264)에 각각 대응하는 복수의 제3 덧셈기들(271~274)을 포함한다. 복수의 제3 덧셈기들(271~274)은 복수의 제2 중간 신호들(D1~D4)로부터 인터리버(250)로부터 출력되는 인터리브어들(IV1~IV4)의 출력들을 각각 감한 결과들을 복수의 제3 합신호들(E1~E4)로 출력할 수 있다. 복수의 제3 합 신호들(E1~E4)은 디인터리버(280)로 전달된다.
디인터리버(280)는 복수의 제3 합 신호들(E1~E4)에 대해 디인터리빙(deinterleaving)을 수행하여 복수의 디인터리브어들(DV1~DV4, deinterleaved words)을 생성할 수 있다. 예를 들어, 디인터리버(280)는 복수의 제3 합 신호들(E1~E4) 각각으로부터 일부분을 추출하여 하나의 디인터리브어를 생성할 수 있다. 하나의 디인터리브어는 복수의 제3 합 신호들(E1~E4) 각각의 부분들을 포함할 수 있다. 예시적으로, 디인터리버(280)에 입력되는 제3 합 신호들(E1~E4)의 개수 및 디인터리버(280)로부터 출력되는 디인터리브어들(DV1~DV4)의 개수는 동일할 수 있다. 즉, 디인터리버(280)의 입력 노드들의 개수 및 출력 노드들의 개수는 동일할 수 있다. 디인터리버(280)로부터 출력되는 복수의 디인터리브어들(DV1~DV4)은 제1 덧셈부(220) 및 제2 덧셈부(240)로 전달된다.
예시적으로, 인터리버(250) 및 디인터리버(280)는 대칭적인 구조를 가질 수 있다. 예를 들어, 제1 신호들을 인터리버(250)에 입력하고, 인터리버(250)의 출력들을 디인터리버(280)에 입력하면, 디인터리버(280)로부터 제1 신호들이 출력될 수 있다. 마찬가지로, 제2 신호들을 디인터리버(280)에 입력하고, 디인터리버(280)의 출력들을 인터리버(250)에 입력하면, 인터리버(250)로부터 제2 신호들이 출력될 수 있다.
출력부(290)는 복수의 제2 중간 신호들(D1~D4)에 각각 대응하는 복수의 출력 노드들(O1~O4)을 포함한다. 복수의 제2 복호기들(261~264)이 제2 중간 신호들(D1~D4)을 출력하는 회수, 또는 제2 중간 신호들(D1~D4)이 제3 덧셈기들(271~274)로 전달되는 회수가 기준값에 도달하면, 복수의 출력 노드들(O1~O4)은 제2 중간 신호들(D1~D4)을 각각 최종 출력 신호들로 출력할 수 있다. 최종 출력 신호들은 데이터를 수신하고자 하는 데이터 싱크로 전달될 수 있다.
상술된 바와 같이, 본 발명의 실시 예에 따른 오류 정정 복호기(200)는 복수의 입력어들에 대해 병렬적으로 오류 정정 복호화를 수행하도록 구성된다. 도 3에서, 4개의 입력어들(IW1~IW4)에 대해 오류 정정 복호화가 수행되는 것으로 도시되어 있으나, 동시에 복호화되는 입력어들의 수는 한정되지 않는다. 예를 들어, 오류 정정 복호기(200)가 k (k는 양의 정수) 개의 입력어들을 동시에 복호화하도록 구성될 때, 오류 정정 복호기(200)에 k 개의 입력 노드들, k 개의 제1 패리티 입력 노드들, k 개의 제2 패리티 입력 노드들, k 개의 제1 덧셈기들, k 개의 제1 복호기들, k 개의 제2 덧셈기들, k 개의 제2 복호기들, k 개의 제3 덧셈기들, 그리고 k 개의 출력 노드들이 제공될 수 있다. 또한, 인터리버(250)는 k 개의 입력 노드들 및 k 개의 출력 노드들을 포함할 수 있다. 예를 들어, 인터리버(250)는 k 개의 제2 합 신호들을 k 개의 인터리브어들로 변환하도록 응용될 수 있다. 또한, 디인터리버(850)는 k 개의 입력 노드들 및 k 개의 출력 노드들을 포함할 수 있다. 예를 들어, 디인터리버(280)는 k 개의 제3 합 신호들을 k 개의 디인터리브어들로 변환하도록 응용될 수 있다.
도 4는 도 3의 오류 정정 복호기(200)가 오류 정정 복호화를 수행하는 방법을 보여주는 순서도이다. 도 3 및 도 4를 참조하면, S210 단계에서, 오류 정정 복호기(200)는 복수의 입력 노드들(I1~I4)에서 복수의 입력어들(IW1~IW4)이 수신되고, 복수의 제1 패리티 입력 노드들(PI11~PI14)에서 복수의 제1 패리티들(P11~P14)이 수신되고, 그리고 복수의 제2 패리티 입력 노드들(PI21~PI22)에서 복수의 제2 패리티들(P21~P24)이 수신된다.
디인터리버(280)에 제3 합 신호들(E1)이 제공되기 전에, 디인터리버(280)는 유효한 디인터리브어들(DV1~DV4)을 출력하지 않는다. 따라서, 제1 덧셈기들(221~224)은 복수의 입력어들(IW1~IW4)을 제1 합 신호들(A1~A4)로 출력할 수 있다.
S220 단계에서, 제1 복호기들(231~234)은 복수의 제1 패리티들(P11~P14)을 이용하여 복수의 입력어들(IW1~IW4)에 대해 각각 제1 오류 정정 복호화를 수행할 수 있다. 예를 들어, 제1 오류 정정 복호화는 복호화를 반복적으로 수행하는 LDPC 복호화일 수 있다. 제1 오류 정정 복호화의 결과는 제1 중간 신호들(B1~B4)로 출력될 수 있다.
디인터리버(280)에 제3 합 신호들(E1)이 제공되기 전에, 디인터리버(280)는 유효한 디인터리브어들(DV1~DV4)을 출력하지 않는다. 따라서, 제2 덧셈기들(241~244)은 복수의 제1 중간 신호들(B1~B4)을 제2 합 신호들(C1~C4)로 출력할 수 있다.
S230 단계에서, 인터리버(250)는 제1 복호기들(231~234)로부터 제2 덧셈기들(241~244)을 통해 출력되는 제1 오류 정정 복호화의 결과들에 대해 인터리빙을 수행할 수 있다. 인터리브어들(IV1~IV4)은 제2 복호기들(261~264) 및 제3 덧셈기들(271~274)로 전달된다.
S240 단계에서, 제2 복호기들(261~264)은 복수의 제2 패리티들(P21~P24)을 이용하여 복수의 인터리브어들(IV1~IV4)에 대해 각각 제2 오류 정정 복호화를 수행할 수 있다. 예를 들어, 제2 오류 정정 복호화는 복호화를 반복적으로 수행하는 LDPC 복호화일 수 있다. 제2 오류 정정 복호화의 결과는 제2 중간 신호들(D1~D4)로 출력될 수 있다. 제2 중간 신호들(D1~D4)은 제3 덧셈기들(271~274) 및 출력 노드들(O1~O4)로 전달된다.
예시적으로, 제1 복호기들(231~234) 및 제2 복호기들(261~264)에 의해 한 번씩 오류 정정 복호화가 수행되는 것은 하나의 오류 정정 루프를 형성할 수 있다.
S250 단계에서, 반복 회수가 기준값에 도달했는지 판별된다. 예를 들어, 제2 복호기들(261~264)이 제2 중간 신호들(D1~D4)을 출력한 회수가 기준값에 도달했는지 판별될 수 있다. 반복 회수가 기준값에 도달하지 않았으면, 제3 덧셈기들(270)은 제2 복호기들(261~264)로부터 출력되는 제2 중간 신호들(D1~D4)로부터 제2 복호기들(261~264)에 입력되는 인터리브어들(IV1~IV4)을 감한 값들을 계산할 수 있다. 예를 들어, 제3 덧셈기들(271~274)은 제2 복호기들(261~264)에 의해 인터리브어들(IV1~IV4) 및 제2 중간 신호들(D1~D4) 사이에서 오류 또는 오차가 감소(또는 개선된) 정도를 계산하여 제3 합 신호들(E1~E4)로 출력할 수 있다.
S260 단계에서, 디인터리버(280)는 제2 복호기들(261~264)로부터 제3 덧셈기들(271~274)을 통해 전달되는 제3 합 신호들(E1~E4), 즉 제2 오류 정정 복호화의 결과들에 대해 디인터리빙을 수행할 수 있다. 디인터리버(280)는 디인터리빙의 결과를 디인터리브어들(DV1~DV4)로 출력할 수 있다.
제1 덧셈기들(221~224)은 입력어들(IW1~IW4)을 각각 디인터리브어들(DV1~DV4)과 합할 수 있다. 즉, 제1 덧셈기들(221~224)은 입력어들(IW1~IW4)의 오류 또는 오차가 제1 복호기들(231~234) 및 제2 복호기들(261~264)에 의해 감소 또는 개선된 결과를 입력어들(IW1~IW4)과 합할 수 있다. 즉, 제1 덧셈기들(221~224)로부터 출력되는 제1 합 신호들(A1~A4)은 입력어들(IW1~IW4)에서 오류 또는 오차가 감소 또는 개선된 값들일 수 있다. 예를 들어, 오류 또는 오차가 감소 또는 개선된 값들은 정정 값들일 수 있다.
S270 단계에서, 제1 복호기들(231~234)은 제1 패리티들(P11~P14)을 이용하여 복수의 제1 합 신호들(A1~A4)에 대해 제1 오류 정정 복호화를 수행할 수 있다.
제2 덧셈기들(241~244)은 제1 복호기들(231~234)로부터 출력되는 제1 중간 신호들(B1~B4)로부터 인터리브어들(DV1~DV4)을 감한 값들을 제2 합 신호들(C1~C4)로 출력할 수 있다. 예를 들어, 제1 복호기들(231~234)의 입력들은 입력어들(IW1~IW4) 및 첫 번째 오류 정정 루프에서 계산된 정정 값들을 포함할 수 있다. 제1 복호기들(231~234)의 출력들은 입력어들(IW1, IW4), 첫 번째 오류 정정 루프의 정정 값들, 그리고 두 번째 오류 정정 루프의 제1 복호기들(231~234)의 정정 값들을 포함한다. 두 번째 오류 정정 루프의 제1 복호기들(231~234)의 정정 값들은 입력어들(IW1~IW4) 및 첫 번째 오류 정정 루프의 정정 값들에 기반하므로, 입력어들(IW1~IW4)에만 기반한 첫 번째 오류 정정 루프의 정정 값들보다 향상된 값들이다.
제2 덧셈기들(241~244)이 제1 중간 신호들(B1~B4)로부터 디인터리브어들(DV1~DV4)을 감하면, 제2 합 신호들(C1~C4)은 입력어들 및 두 번째 오류 정정 루프에서 제1 복호기들(231~234)에 의해 계산된 정정 값들을 포함한다. 즉, 제2 합 신호들(241~244)은 첫 번째 오류 정정 루프의 정정 값들에 기반하여, 두 번째 오류 정정 루프에서 제1 복호기들(231~234)에 의해 개선된 정정 값들이 입력어들(IW1~IW4)에 적용된 값들을 포함한다.
S230 단계에서, 인터리버(250)는 제2 합 신호들(C1~C4)에 대해 인터리빙을 수행한다.
S240 단계에서, 제2 복호기들(261~264)은 인터리브어들(IV1~IV4)에 대해 제2 오류 정정 복호화를 수행한다.
S250 단계에서, 반복 회수가 기준값에 도달하지 않았으면, 제3 덧셈기들(271~274)에 의해 두 번째 오류 정정 루프의 정정 값들이 계산된다. 두 번째 오류 정정 루프의 정정 값들은 제1 덧셈기들(221~224)에 의해 입력어들(IW1~IW4)에 반영될 수 있다. 반복 회수가 기준값에 도달하면, S280 단계에서, 제2 중간 신호들(D1~D4)은 출력 노드들(O1~O4)을 통해 최종 출력들로 출력된다.
도 1 내지 도 4를 참조하여 설명된 바와 같이, 오류 정정 부호기(100)는 복수의 입력어들에 대해 병렬적으로 동시에 오류 정정 부호화를 수행하도록 구성된다. 따라서, 오류 정정 부호기(100)의 부호화 속도가 향상된다. 또한, 오류 정정 복호기(200)는 복수의 입력어들에 대해 병렬적으로 동시에 오류 정정 복호화를 수행하도록 구성된다. 따라서, 오류 정정 부호기(100)의 복호화 속도가 향상된다.
또한, 오류 정정 부호기(100)는 오류 정정 복호기(200)에서 오류 정정 루프들이 반복될 수 있도록, 그리고 각 오류 정정 루프에서 제1 오류 정정 복호화 및 제2 오류 정정 복호화가 반복 복호화를 통해 수행되될 수 있도록 오류 정정 부호화를 수행한다. 또한, 오류 정정 복호기(200)는 오류 정정 루프들을 반복적으로 수행하여 오류 정정 복호화의 오류 정정 능력을 증가시킨다. 또한, 오류 정정 복호기(200)는 각 오류 정정 루프의 제1 오류 정정 복호화 및 제2 오류 정정 복호화 각각을 반복적인 복호화를 통해 수행한다. 따라서, 오류 정정 복호화의 오류 정정 능력이 더 향상된다. 뿐만 아니라, 반복적인 복호화를 통해 오류를 정정하는 오류 정정 부호화 및 복호화 스킴들은 오류 마루(error floor)를 갖는 것으로 알려져 있다. 도 1 내지 도 4를 참조하여 설명된 바와 같이 반복적인 복호화 통해 오류를 정정하는 오류 정정 부호화 및 복호화 스킴들이 계층적으로 구성되면, 기존의 단일 오류 정정 채널 부호기 및 복호기 보다 오류 정정 부호기(100) 및 오류 정정 복호기(200)의 오류 마루가 더 낮아질 수 있다.
오류 정정 부호기(100)는 오류 정정 부호화 과정에서 서로 다른 입력어들을 섞는 인터리빙을 수행한다. 또한, 오류 정정 복호기(200)는 오류 정정 부호화 과정에서 서로 다른 입력어들을 섞는 인터리빙 및 디인터리빙을 수행한다. 서로 다른 입력어들이 서로 참조하여 오류 정정에 이용되므로, 오류 정정 능력이 더 향상된다.
도 5는 본 발명의 실시 예들에 따른 광 통신 장치(300)를 보여주는 블록도이다. 도 5를 참조하면, 광 통신 장치(300)는 프로세서(310), 송신기(320) 및 수신기(330)를 포함한다.
프로세서(310)는 송신기(320)를 통해 데이터를 송신하는 데이터 소스 또는 수신기(330)를 통해 데이터를 수신하는 데이터 싱크일 수 있다.
송신기(320)는 프로세서(310)로부터 출력되는 송신 신호를 광 신호로 변환하여 전송하도록 구성된다. 송신기(320)는 스크램블러(SCR), 병렬화기(PAR), 오류 정정 부호기(ENC), 직렬화기(SER), 그리고 송신 모듈(TX)을 포함한다.
스크램블러(SCR)는 프로세서(310)로부터 출력되는 송신 신호에 대해 스크램블을 수행할 수 있다. 예를 들어, 스크램블은 신호에 포함된 논리 비트 '1'의 개수와 논리 비트 '0'의 개수가 유사해지도록 신호를 변환하는 동작일 수 있다.
병렬화기(PAR)는 스크램블된 신호를 복수의 신호들로 분할할 수 있다. 예를 들어, 병렬화기(PAR)는 스크램블된 직렬 신호를 수신하고, 직렬 신호의 제1 부분을 제1 신호로, 제2 부분을 제2 신호로, 그리고 제k 부분을 제k 신호로 병렬로(또는 동시에) 출력할 수 있다.
오류 정정 부호기(ENC)는 병렬 신호들에 대해 오류 정정 부호화를 수행하도록 구성된다. 예시적으로, 오류 정정 부호기(ENC)는 도 1을 참조하여 설명된 오류 정정 부호기(100)를 포함할 수 있다.
직렬화기(SER)는 오류 정정 부호화된 신호들을 직렬 신호로 변환할 수 있다. 예를 들어, 직렬화기(SER)는 제1 오류 정정 부호화된 신호를 출력하고, 이후에 제2 오류 정정 부호화된 신호를 출력하고, 이후에 제k 오류 정정 부호화된 신호를 출력할 수 있다. 직렬화기(SER)는 직렬 신호를 송신 모듈(TX)로 전달할 수 있다.
송신 모듈(TX)은 인터리버(INT), 수평 직교 진폭 변조기(Horizontal Quadrature Amplitude Modulator, QAM_H), 수직 직교 진폭 변조기(Vertical Quadrature Amplitude Modulator, QAM_V), 수평 역 고속 푸리에 변환기(Horizontal Inverse Fast Fourier Transformer, IFFT_H), 수직 역 고속 푸리에 변환기(Vertical Inverse Fast Fourier Transformer, IFFT_H), 사이클릭 프리픽스 삽입기들(Cyclic Prefix Inserters, CP_I), 저대역 필터들(LPF), 디지털-아날로그 변환기들(DAC), 그리고 변조기(MOD)를 포함한다.
인터리버(INT)는 입력 신호를 수평 성분(Horizontal 또는 in-phase) 및 수직 성분(Vertical 또는 Quadrature phase)으로 분할할 수 있다. QAM_H는 수평 성분에 대해 QAM을 수행하고, QAM_V는 수직 성분에 대해 QAM을 수행할 수 있다. IFFT_H는 수평 성분에 대해 IFFT를 수행하고, IFFT_V는 수직 성분에 대해 IFFT를 수행할 수 있다. CP_I는 수직 성분 및 수평 성분에 CP를 삽입할 수 있다. LPF는 수직 성분 및 수평 성분에 대해 필터링을 수행할 수 있다. DAC는 수직 성분 및 수평 성분에 대해 아날로그 변환을 수행할 수 있다. 변조기(MOD)는 수직 성분 및 성분을 이용하여 광 신호를 변조할 수 있다. 변조된 광 신호는 광선로로 전송될 수 있다.
수신기(330)는 유선 또는 무선 채널로부터 수신되는 광 신호를 전기 신호로 변환하여 프로세서(310)로 전달하도록 구성된다. 수신기(330)는 디스크램블러(DSCR), 직렬화기(SER), 오류 정정 복호기(DEC), 병렬화기(PAR), 그리고 수신 모듈(RX)을 포함한다.
수신 모듈(RX)은 디인터리버(DINT), 수평 직교 진폭 복조기(Horizontal Quadrature Amplitude Demodulator, DQAM_H), 수직 직교 진폭 복조기(Vertical Quadrature Amplitude Demodulator, DQAM_V), 수평 고속 푸리에 변환기(Horizontal Fast Fourier Transformer, FFT_H), 수직 고속 푸리에 변환기(Vertical Fast Fourier Transformer, FFT_H), 사이클릭 프리픽스 제거기들(Cyclic Prefix Removers, CP_R), 저대역 필터들(LPF), 아날로그-디지털 변환기들(ADC), 그리고 복조기(DMOD)를 포함한다.
복조기(DMOD)는 유선 또는 무선 채널을 통해 수신되는 광 신호를 복조하여 전기 신호를 획득할 수 있다. 전기 신호는 수직 성분 및 수평 성분으로 분할되고, 병렬로 출력될 수 있다. ADC는 수직 성분 및 수평 성분에 대해 아날로그 변환을 수행할 수 있다. LPF는 수직 성분 및 수평 성분에 대해 필터링을 수행할 수 있다. CP_R은 수직 성분 및 수평 성분에 CP를 제거할 수 있다. FFT_H는 수평 성분에 대해 FFT를 수행하고, FFT_V는 수직 성분에 대해 FFT를 수행할 수 있다. DQAM_H는 수평 성분에 대해 DQAM을 수행하고, DQAM_V는 수직 성분에 대해 DQAM을 수행할 수 있다. 디인터리버(DINT)는 수평 성분 및 수직 성분을 결합하여 직렬 신호로 출력할 수 있다.
병렬화기(PAR)는 직렬 신호를 복수의 신호들로 분할할 수 있다. 예를 들어, 병렬화기(PAR)는 스크램블된 직렬 신호를 수신하고, 직렬 신호의 제1 부분을 제1 신호로, 제2 부분을 제2 신호로, 그리고 제k 부분을 제k 신호로 병렬로(또는 동시에) 출력할 수 있다.
오류 정정 복호기(DEC)는 병렬 신호들에 대해 오류 정정 복호화를 수행하도록 구성된다. 예시적으로, 오류 정정 복호기(DEC)는 도 3을 참조하여 설명된 오류 정정 복호기(200)를 포함할 수 있다.
직렬화기(SER)는 오류 정정 복호화된 신호들을 직렬 신호로 변환할 수 있다. 예를 들어, 직렬화기(SER)는 제1 오류 정정 복호화된 신호를 출력하고, 이후에 제2 오류 정정 복호화된 신호를 출력하고, 이후에 제k 오류 정정 복호화된 신호를 출력할 수 있다. 직렬화기(SER)는 직렬 신호를 송신 모듈(TX)로 전달할 수 있다.
디스크램블러(DSCR)는 스크램블러(SCR)에 의해 수행되는 스크램블의 역동작인 디스크램블을 수행할 수 있다.
도 6은 본 발명의 응용 예에 따른 광 통신 장치(400)를 보여주는 블록도이다. 도 6을 참조하면, 광 통신 장치(400)는 프로세서(410), 송신기(420) 및 수신기(430)를 포함한다.
도 5의 광 통신 장치(300)와 비교하면, 광 통신 장치(400)의 송신기(420)는 두 개의 송신 모듈들(TX)을 포함한다. 또한, 광 통신 장치(400)의 수신기(430)는 두 개의 수신 모듈들(RX)을 포함한다. 송신 모듈들(TX) 각각은 도 5의 송신 모듈(TX)과 동일한 구조를 갖고, 수신 모듈들(RX) 각각은 도 5의 수신 모듈(RX)과 동일한 구조를 가질 수 있다.
송신기(420)의 직렬화기(SER)는 복수의 병렬 신호들을 2개의 신호들로 변환할 수 있다. 예를 들어, 도 1을 참조하여 설명된 바와 같이 오류 정정 부호기(ENC)가 4개의 출력어들(OW1~OW4)을 출력하는 경우, 직렬화기(SER)는 두 개의 출력어들을 하나의 직렬 신호로 변환하고, 나머지 두 개의 출력어들을 다른 하나의 직렬 신호로 변환할 수 있다. 두 개의 직렬 신호들은 서로 병렬적일 수 있다. 각 직렬 신호는 대응하는 송신 모듈(TX)을 통해 유선 또는 무선 채널로 전송될 수 있다. 즉, 직렬화기(SER)는 4개의 병렬 신호들을 2개의 병렬 신호들로 변환하는 것으로도 해석될 수 있다.
수신기(430)의 병렬화기(PAR)는 복수의 수신 모듈들(RX)로부터 각각 직렬 신호들을 수신한다. 병렬화기(PAR)는 각 수신 모듈(RX)로부터 수신되는 직렬 신호를 둘 이상의 병렬 신호들로 변환할 수 있다. 예를 들어, 도 3을 참조하여 설명된 바와 같이 오류 정정 복호기(DEC)가 4개의 입력어들(IW1~IW4)에 기반하여 오류 정정 복호화를 수행하는 경우, 병렬화기(PAR)는 각 수신 모듈(RX)로부터 수신되는 직렬 신호를 두 개의 병렬 신호들로 변환할 수 있다. 수신 모듈(RX) 각각으로부터 수신되는 직렬 신호들은 서로 병렬적일 수 있다. 즉, 병렬화기(PAR)는 2개의 병렬 신호들을 4개의 병렬 신호들로 변환하는 것으로도 해석될 수 있다.
도 7은 본 발명의 응용 예에 따른 광 통신 장치(500)를 보여주는 블록도이다. 도 7을 참조하면, 광 통신 장치(500)는 프로세서(510), 송신기(520) 및 수신기(530)를 포함한다.
도 5의 광 통신 장치(300)와 비교하면, 광 통신 장치(500)의 송신기(520)는 네 개의 송신 모듈들(TX)을 포함한다. 또한, 광 통신 장치(500)의 수신기(530)는 네 개의 수신 모듈들(RX)을 포함한다. 송신 모듈들(TX) 각각은 도 5의 송신 모듈(TX)과 동일한 구조를 갖고, 수신 모듈들(RX) 각각은 도 5의 수신 모듈(RX)과 동일한 구조를 가질 수 있다.
도 5의 광 통신 장치(300)와 비교하면, 광 통신 장치(500)의 송신기(520)에 직렬화기가 제공되지 않는다. 예시적으로, 오류 정정 부호기(ENC)의 출력어들(OW1~OW4)의 수와 송신 모듈들(TX)의 수가 동일한 경우, 송신기(520)에 직렬화기가 제공되지 않을 수 있다.
도 5의 광 통신 장치(300)와 비교하면, 광 통신 장치(500)의 수신기(530)에 병렬화기가 제공되지 않는다. 예시적으로, 오류 정정 복호기(DEC)의 입력어들(IW1~IW4)의 수와 수신 모듈들(RX)의 수가 동일한 경우, 수신기(530)에 병렬화기가 제공되지 않을 수 있다.
도 8은 도 1의 오류 정정 부호기(100)의 응용 예를 보여준다. 예시적으로, 도면이 복잡해지는 것을 회피하기 위하여, 도 1에 도시된 참조 기호들 중 일부는 도 8에서 생략되어 있다.
도 1의 오류 정정 부호기(100)와 비교하면, 도 8의 오류 정정 부호기(100a)에 제어 회로(CTN)가 더 제공된다. 제어 회로(CTN)는 외부 장치로부터 수신되는 제1 제어 신호(CTRL1)에 응답하여, 제2 제어 신호(CTRL2)를 출력할 수 있다. 제2 제어 신호(CTRL2)는 입력부(110), 제1 부호화부(120), 인터리버(130), 제2 부호화부(140), 출력부(150), 제1 패리티 출력부(160), 그리고 제2 패리티 출력부(170)에 또는 이들 중 일부에 전달될 수 있다. 제어 회로(CTN)는 제2 제어 신호(CTRL2)를 이용하여, 오류 정정 부호기(100a)가 병렬적으로 오류 정정 부호화하는 입력어들(IW1~IW4)의 개수를 조절할 수 있다.
예를 들어, 제어 회로(CTN)는 제2 제어 신호(CTRL2)를 이용하여, 입력 노드들(I1~I4) 중 활성 입력 노드들의 개수, 제1 부호기들(121~124) 중 활성 제1 부호기들의 개수, 인터리버(130)의 입력 노드들 및 출력 노드들 중 활성 입력 노드들과 활성 출력 노드들의 개수, 제2 부호기들(141~144) 중 활성 제2 부호기들의 개수, 출력 노드들(O1~O4) 중 활성 출력 노드들의 개수, 제1 패리티 출력 노드들(161~164) 중 활성 제1 패리티 출력 노드들의 개수, 그리고 제2 패리티 출력 노드들(171~174) 중 활성 제2 패리티 출력 노드들의 개수 전부 또는 이들 중 일부를 조절 또는 결정할 수 있다.
오류 정정 부호기(100a)가 병렬적으로 오류 정정 부호화하는 입력어들의 수가 조절되면, 오류 정정 부호기(100a)의 유연선(flexibility)이 향상되며, 새로운 오류 정정 부호기를 제조하는 비용이 절약될 수 있다.
도 9는 도 3의 오류 정정 복호기(200)의 응용 예를 보여준다. 예시적으로, 도면이 복잡해지는 것을 회피하기 위하여, 도 3에 도시된 참조 기호들 중 일부는 도 9에서 생략되어 있다.
도 3의 오류 정정 복호기(200)와 비교하면, 도 9의 오류 정정 복호기(200a)에 제어 회로(CTN)가 더 제공된다. 제어 회로(CTN)는 외부 장치로부터 수신되는 제1 제어 신호(CTRL1)에 응답하여, 제2 제어 신호(CTRL2)를 출력할 수 있다. 제2 제어 신호(CTRL2)는 입력부(110), 제1 패리티 입력부(PI1), 제2 패리티 입력부(PI2), 제1 덧셈부(220), 제1 복호화부(230), 제2 덧셈부(240), 인터리버(250), 제2 복호화부(260), 제3 덧셈부(270), 디인터리버(280), 그리고 출력부(290)로 전달될 수 있다. 제어 회로(CTN)는 제2 제어 신호(CTRL2)를 이용하여, 오류 정정 복호기(200a)가 병렬적으로 오류 정정 복호화하는 입력어들(IW1~IW4)의 개수를 조절할 수 있다.
예를 들어, 제어 회로(CTN)는 제2 제어 신호(CTRL2)를 이용하여, 입력 노드들(I1~I4) 중 활성 입력 노드들의 개수, 제1 패리티 입력 노드들(PI11~PI14) 중 활성 제1 패리티 입력 노드들의 개수, 제2 패리티 입력 노드들(PI21~PI24) 중 활성 패리티 입력 노드들의 개수, 제1 덧셈기들(221~224) 중 활성 제1 덧셈기들의 개수, 제1 복호기들(231~234) 중 활성 제1 복호기들의 개수, 제2 덧셈기들(241~244) 중 활성 제2 덧셈기들의 개수, 인터리버(250)의 입력 노드들 및 출력 노드들 중 활성 입력 노드들과 활성 출력 노드들의 개수, 제2 복호기들(261~264) 중 활성 제2 복호기들의 개수, 제3 덧셈기들(271~274) 중 활성 제2 덧셈기들의 개수, 디인터리버(280)의 입력 노드들 및 출력 노드들 중 활성 입력 노드들과 활성 출력 노드들의 개수, 그리고 출력 노드들(O1~O4) 중 활성 출력 노드들의 개수 전부 또는 이들 중 일부를 조절 또는 결정할 수 있다.
오류 정정 복호기(200a)가 병렬적으로 오류 정정 복호화하는 입력어들의 수가 조절되면, 오류 정정 복호기(200a)의 유연선(flexibility)이 향상되며, 새로운 오류 정정 부호기 및 복호기 제조하는 비용이 절약될 수 있다.
본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위와 기술적 사상에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능하다. 그러므로 본 발명의 범위는 상술한 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100, 100a; 오류 정정 부호기
110; 입력부
I1~I4; 입력 노드들
120; 제1 부호화부
121~124; 제1 부호기들
130; 인터리버
140; 제2 호화부
141~144; 제2 부호기들
150; 출력부
O1~O4; 출력 노드들
160; 제1 패리티 출력부
161~164; 제1 패리티 출력 노드들
170; 제2 패리티 출력부
171~174; 제2 패리티 출력 노드들
CNT; 제어 회로
200, 200a; 오류 정정 복호기
210; 입력부
I1~I4; 입력 노드들
220; 제1 덧셈부
221~224; 제1 덧셈기들
230; 제1 복호화부
231~234; 제1 복호기들
240; 제2 덧셈부
241~244; 제2 덧셈기들
250; 인터리버
260; 제2 복호화부
261~264; 제2 복호기들
270; 제3 덧셈부
271~274; 제3 덧셈기들
280; 디인터리버
290; 출력부
O1~O4; 출력 노드들
PI1; 제1 패리티 입력부
PI11~PI14; 제1 패리티 입력 노드들
PI2; 제2 패리티 입력부
PI21~PI24; 제2 패리티 입력 노드들

Claims (20)

  1. 복수의 입력어들(input words)을 수신하도록 구성되는 복수의 입력 노드들;
    상기 복수의 입력 노드들을 통해 수신되는 상기 복수의 입력어들에 대해 각각 제1 오류 정정 부호화를 수행하여 복수의 제1 패리티들을 생성하도록 구성되는 복수의 제1 부호기들;
    상기 복수의 입력 노드들로부터 수신되는 상기 복수의 입력어들에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(interleaved words)을 생성하도록 구성되는 인터리버;
    상기 인터리버로부터 수신되는 상기 복수의 인터리브어들에 대해 각각 제2 오류 정정 부호화를 수행하여 복수의 제2 패리티들을 생성하도록 구성되는 복수의 제2 부호기들;
    상기 복수의 입력 노드들을 통해 수신되는 상기 복수의 입력어들을 각각 출력하도록 구성되는 복수의 출력 노드들;
    상기 복수의 제1 부호기들로부터 수신되는 상기 복수의 제1 패리티들을 각각 출력하도록 구성되는 복수의 제1 패리티 출력 노드들; 그리고
    상기 복수의 제2 부호기들로부터 수신되는 상기 복수의 제2 패리티들을 각각 출력하도록 구성되는 복수의 제2 패리티 출력 노드들을 포함하는 오류 정정 부호기.
  2. 제1 항에 있어서,
    상기 제1 오류 정정 부호화 및 상기 제2 오류 정정 부호화 각각은 저밀도 패리티 체크(LDPC, Low Density Parity Check) 부호화 포함하는 오류 정정 부호기.
  3. 제1 항에 있어서,
    각 인터리브어는 상기 복수의 입력어들 각각의 일부분을 포함하는 오류 정정 부호기.
  4. 제1 항에 있어서,
    상기 복수의 제1 부호기들 중 활성 제1 부호기들의 개수, 상기 복수의 제2 부호기들 중 활성 제2 부호기들의 개수, 그리고 상기 인터리버의 활성 입력들의 개수 및 활성 출력들의 개수를 조절하도록 구성되는 제어 회로를 더 포함하는 오류 정정 부호기.
  5. 복수의 입력어들(input words)을 수신하도록 구성되는 복수의 입력 노드들;
    복수의 제1 패리티 입력 노드들을 통해 수신되는 복수의 제1 패리티들을 이용하여 상기 복수의 입력 노드들을 통해 수신되는 상기 복수의 입력어들에 대해 각각 제1 오류 정정 복호화를 수행하도록 구성되는 복수의 제1 오류 정정 복호기들;
    상기 복수의 제1 오류 정정 복호기들의 출력들에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(interleaved words)을 생성하도록 구성되는 인터리버; 그리고
    복수의 제2 패리티 입력 노드들을 통해 수신되는 복수의 제2 패리티들을 이용하여 상기 인터리버로부터 수신되는 상기 복수의 인터리브어들에 대해 각각 제2 오류 정정 복호화를 수행하도록 구성되는 복수의 제2 오류 정정 복호기들을 포함하는 오류 정정 복호기.
  6. 제5 항에 있어서,
    상기 복수의 제2 오류 정정 복호기들의 출력들에 대해 디인터리빙을 수행하여 복수의 디인터리브어들(deinterleaved words)을 생성하도록 구성되는 디인터리버; 그리고
    상기 복수의 입력 노드들을 통해 수신되는 상기 복수의 입력어들 및 상기 디인터리버로부터 수신되는 상기 디인터리브어들을 각각 합하여 상기 복수의 제1 오류 정정 복호기들로 각각 전달하도록 구성되는 복수의 덧셈기들을 더 포함하는 오류 정정 복호기.
  7. 제6 항에 있어서,
    각 디인터리브어는 상기 복수의 제2 오류 정정 복호기들의 출력들 각각의 일부분을 포함하는 오류 정정 복호기.
  8. 제6 항에 있어서,
    상기 복수의 제1 오류 정정 복호기들은 상기 복수의 덧셈기들의 출력들에 대해 상기 제1 오류 정정 복호화를 수행하도록 구성되고,
    상기 디인터리버가 유효한 값을 출력하지 않을 때, 상기 복수의 덧셈기들은 상기 복수의 입력어들을 상기 복수의 제1 오류 정정 복호기로 각각 전달하도록 구성되는 오류 정정 복호기.
  9. 제6 항에 있어서,
    상기 복수의 제1 오류 정정 복호기의 출력들로부터 상기 디인터리버의 출력들을 각각 감한 값들을 상기 인터리버에 전달하도록 구성되는 복수의 덧셈기들을 더 포함하는 오류 정정 복호기.
  10. 제9 항에 있어서,
    상기 인터리버는 상기 복수의 덧셈기들의 출력들에 대해 인터리빙을 수행하도록 구성되고,
    상기 디인터리버가 유효한 값을 출력하지 않을 때, 상기 복수의 덧셈기들은 상기 복수의 제1 오류 정정 복호기들의 출력들을 상기 인터리버로 전달하도록 구성되는 오류 정정 복호기.
  11. 제6 항에 있어서,
    상기 복수의 제2 오류 정정 복호기들의 출력들로부터 상기 인터리버의 출력들을 각각 감한 값들을 상기 디인터리버에 전달하도록 구성되는 복수의 덧셈기들을 더 포함하고,
    상기 디인터리버는 상기 복수의 덧셈기들의 출력들에 대해 디인터리빙을 수행하도록 구성되는 오류 정정 복호기.
  12. 제9 항에 있어서,
    상기 복수의 제2 오류 정정 복호기들이 상기 디인터리버에 출력들을 전달하는 회수가 기준값에 도달하면, 상기 복수의 제2 오류 정정 복호기들의 출력들을 외부로 각각 출력하도록 구성되는 복수의 출력 노드들을 더 포함하는 오류 정정 복호기.
  13. 제9 항에 있어서,
    상기 복수의 제1 오류 정정 복호기들 중 활성 제1 오류 정정 복호기들의 개수, 상기 인터리버의 활성 입력들 및 활성 출력들의 개수, 그리고 상기 복수의 제2 오류 정정 복호기들 중 활성 제2 오류 정정 복호기들의 개수, 그리고 상기 디인터리버의 활성 입력들 및 활성 출력들의 개수를 조절하도록 구성되는 제어 회로를 더 포함하는 오류 정정 복호기.
  14. 제5 항에 있어서,
    상기 제1 오류 정정 복호화 및 상기 제2 오류 정정 복호화 각각은 오류 정정을 복수회 수행하는 반복 복호화를 포함하는 오류 정정 복호기.
  15. 제5 항에 있어서,
    상기 제1 오류 정정 복호화 및 상기 제2 오류 정정 복호화 각각은 저밀도 패리티 체크(LDPC, Low Density Parity Check) 복호화를 포함하는 오류 정정 복호기.
  16. 제1 입력어에 대해 스크램블을 수행하도록 구성되는 스크램블러;
    상기 스크램블러의 출력을 병렬화하여 복수의 제2 입력어들을 출력하도록 구성되는 병렬화기;
    상기 복수의 제2 입력어들에 대해 오류 정정 부호화를 수행하도록 구성되는 오류 정정 부호기; 그리고
    상기 오류 정정 부호기의 출력을 광 신호로 출력하도록 구성되는 광 송신기를 포함하고,
    상기 오류 정정 부호기는,
    상기 복수의 제2 입력어들에 대해 각각 제1 오류 정정 부호화를 수행하여 복수의 제1 패리티들을 생성하도록 구성되는 복수의 제1 부호기들;
    상기 복수의 제2 입력어들에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(interleaved words)을 생성하도록 구성되는 인터리버; 그리고
    상기 인터리버로부터 수신되는 상기 복수의 인터리브어들에 대해 각각 제2 오류 정정 부호화를 수행하여 복수의 제2 패리티들을 생성하도록 구성되는 복수의 제2 부호기들을 포함하고,
    상기 오류 정정 부호기는 상기 복수의 제2 입력어들, 상기 복수의 제1 패리티들 및 상기 복수의 제2 패리티들을 출력하도록 구성되는 광 통신 장치.
  17. 제16 항에 있어서,
    상기 오류 정정 부호기의 출력들의 수를 상기 광 송신기의 입력들의 수에 맞게 감소시켜 상기 광 송신기로 전달하도록 구성되는 직렬화기를 더 포함하는 광 통신 장치.
  18. 제16 항에 있어서,
    상기 오류 정정 부호기는, 각 제2 입력어 및 각 제2 입력어에 대응하는 제1 패리티 및 제2 패리티를 각 출력어(output word)로 출력하도록 구성되는 광 통신 장치.
  19. 제16 항에 있어서,
    제2 광 신호를 수신하도록 구성되는 광 수신기;
    상기 광 수신기의 출력을 복수의 제3 입력어들로 병렬화하도록 구성되는 제2 병렬화기;
    상기 복수의 제3 입력어들에 대해 오류 정정 복호화를 수행하도록 구성되는 오류 정정 복호기;
    상기 제2 오류 정정 복호기의 출력들을 제4 입력어로 직렬화하도록 구성되는 직렬화기; 그리고
    상기 직렬화기의 출력에 대해 디스크램블을 수행하여 출력하도록 구성되는 디스크램블러를 더 포함하고,
    상기 오류 정정 복호기는,
    상기 복수의 제1 패리티들을 이용하여 상기 복수의 제3 입력어들에 대해 각각 제1 오류 정정 복호화를 수행하도록 구성되는 복수의 제1 오류 정정 복호기들;
    상기 복수의 제1 오류 정정 복호기들의 출력들에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(interleaved words)을 생성하도록 구성되는 인터리버; 그리고
    상기 복수의 제2 패리티들을 이용하여 상기 인터리버로부터 수신되는 상기 복수의 인터리브어들에 대해 각각 제2 오류 정정 복호화를 수행하도록 구성되는 복수의 제2 오류 정정 복호기들을 포함하는 광 통신 장치.
  20. 제16 항에 있어서,
    제2 광 신호들을 수신하도록 구성되는 광 수신기;
    상기 광 수신기의 출력들을 복수의 제3 입력어들로 병렬화하도록 구성되는 제2 병렬화기;
    상기 복수의 제3 입력어들에 대해 오류 정정 복호화를 수행하도록 구성되는 오류 정정 복호기;
    상기 오류 정정 복호기의 출력들을 제4 입력어로 직렬화하도록 구성되는 직렬화기; 그리고
    상기 직렬화기의 출력에 대해 디스크램블을 수행하여 출력하도록 구성되는 디스크램블러를 더 포함하고,
    상기 오류 정정 복호기는,
    상기 복수의 제1 패리티들을 이용하여 상기 복수의 제3 입력어들에 대해 각각 제1 오류 정정 복호화를 수행하도록 구성되는 복수의 제1 오류 정정 복호기들;
    상기 복수의 제1 오류 정정 복호기들의 출력들에 대해 인터리빙(interleaving)을 수행하여 복수의 인터리브어들(interleaved words)을 생성하도록 구성되는 인터리버; 그리고
    상기 복수의 제2 패리티들을 이용하여 상기 인터리버로부터 수신되는 상기 복수의 인터리브어들에 대해 각각 제2 오류 정정 복호화를 수행하도록 구성되는 복수의 제2 오류 정정 복호기들을 포함하는 광 통신 장치.
KR1020160143563A 2015-11-25 2016-10-31 오류 정정 부호기, 오류 정정 복호기 및 오류 정정 부호기 및 복호기를 포함하는 광 통신 장치 KR102141160B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/360,925 US10361727B2 (en) 2015-11-25 2016-11-23 Error correction encoder, error correction decoder, and optical communication device including the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020150165504 2015-11-25
KR20150165504 2015-11-25

Publications (2)

Publication Number Publication Date
KR20170061066A true KR20170061066A (ko) 2017-06-02
KR102141160B1 KR102141160B1 (ko) 2020-08-04

Family

ID=59222507

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160143563A KR102141160B1 (ko) 2015-11-25 2016-10-31 오류 정정 부호기, 오류 정정 복호기 및 오류 정정 부호기 및 복호기를 포함하는 광 통신 장치

Country Status (1)

Country Link
KR (1) KR102141160B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6442211B1 (en) * 1996-09-20 2002-08-27 IAD Gesellschaft für Informatik, Automatisierung und Datenverarbeitung mbH System for digital information transmission with associated methods and devices
KR20050046468A (ko) * 2003-11-14 2005-05-18 삼성전자주식회사 병렬 연접 저밀도 패러티 검사 부호를 사용하는 채널부호화/복호화 장치 및 방법
US20120030544A1 (en) * 2010-07-27 2012-02-02 Fisher-Jeffes Timothy Perrin Accessing Memory for Data Decoding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6442211B1 (en) * 1996-09-20 2002-08-27 IAD Gesellschaft für Informatik, Automatisierung und Datenverarbeitung mbH System for digital information transmission with associated methods and devices
KR20050046468A (ko) * 2003-11-14 2005-05-18 삼성전자주식회사 병렬 연접 저밀도 패러티 검사 부호를 사용하는 채널부호화/복호화 장치 및 방법
US20120030544A1 (en) * 2010-07-27 2012-02-02 Fisher-Jeffes Timothy Perrin Accessing Memory for Data Decoding

Also Published As

Publication number Publication date
KR102141160B1 (ko) 2020-08-04

Similar Documents

Publication Publication Date Title
US10601449B2 (en) Apparatus and method for communicating data over a communication channel
CA3072857C (en) Forward error correction with compression coding
KR100794790B1 (ko) 듀얼 전송 스트림을 인코딩하는 트렐리스 인코딩 장치 및그 방법
KR101975881B1 (ko) Ftn 기반의 송수신 장치 및 방법
CN101888251B (zh) 纠错编码方法及其装置、纠错译码方法及其装置
JP2008295057A5 (ko)
CA2560014A1 (en) Digital television transmitter/receiver and method of processing data in a digital television transmitter/receiver
KR20120041251A (ko) 저밀도 패리티 검사 코딩 및 성상 매핑을 사용한 데이터 송신
KR20120058537A (ko) 저밀도 패리티 체크 부호화 및 성상도 매핑을 이용한 데이터 수신
MXPA06011267A (es) Transmisor y receptor de television digital para usar una codificacion trellis de 16 estados.
CN1245833C (zh) 具有综合纠错编码功能的数字广播系统的发送装置及方法
CN111884764B (zh) 一种能够在多个模式中的一个模式下操作的发送设备
CN110892659B (zh) 对具有编码符号的目标概率分布的消息编码的设备和方法
KR102141160B1 (ko) 오류 정정 부호기, 오류 정정 복호기 및 오류 정정 부호기 및 복호기를 포함하는 광 통신 장치
US10361727B2 (en) Error correction encoder, error correction decoder, and optical communication device including the same
KR20040094384A (ko) 이동 통신 시스템에서 시공간 부호화 방법 및 장치
KR20040034878A (ko) 복합적 오류정정 부호화 기능을 구비한 디지털방송시스템의 전송장치 및 전송방법
MX2007009955A (es) Decodificador mejorado de correccion del erro por anticipado e-8vsb para el sistema de television digital de atsc.
JP2023118105A (ja) インターリーバ、デインターリーバ、送信装置、受信装置、及びこれらのプログラム
KR101992145B1 (ko) 차세대 방송 시스템을 위한 변조 방법
KR20150095571A (ko) 부호율이 4/15인 ldpc 부호어를 위한 비균등 16-심볼 신호성상을 이용한 변조기 및 이를 이용한 변조 방법
JP2021141480A (ja) 変調装置および復調装置
JPH08116341A (ja) ディジタル変調装置及び復調装置
KR20150095572A (ko) 부호율이 2/15인 ldpc 부호어를 위한 비균등 16-심볼 신호성상을 이용한 변조기 및 이를 이용한 변조 방법
KR20150095576A (ko) 부호율이 3/15인 ldpc 부호어를 위한 비균등 16-심볼 신호성상을 이용한 변조기 및 이를 이용한 변조 방법

Legal Events

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