LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법 및 그 장치

申请号 KR1020130102453 申请日 2013-08-28 公开(公告)号 KR101476049B1 公开(公告)日 2014-12-23
申请人 세종대학교산학협력단; 发明人 이성주; 박효빈;
摘要 본 발명은 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법 및 그 장치에 관한 것이다. 본 발명에 따르면, 복수의 데이터 비트 및 패러티 비트를 포함하며 일부 패러티 비트가 펑쳐링(Puncturing)된 LDPC(Low Density Parity Check) 부호화 신호를 수신하는 단계와, 상기 LDPC 부호화 신호에 포함된 M개의 비트 노드에 대하여 N개의 검사 노드 중 LLR(Log Likelihood Ratio) 값을 가지는 검사 노드를 매칭시키는 단계와, 상기 N개의 검사 노드 중 상기 펑쳐링된 패러티 비트가 연결된 적어도 하나의 제1 검사 노드를 제외한 나머지 검사 노드를 유효 검사 노드로 선정하고, 상기 각 비트 중에서 상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 조절하는 단계, 및 상기 각 비트 중에서 상기 제1 검사 노드에 연결된 비트들에 대해 상기 조절된 LLR 값을 적용하여, 상기 펑쳐링된 패러티 비트의 LLR 값을 복원하는 단계를 포함하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법을 제공한다.
상기 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법 및 그 장치에 따르면, LDPC 복호 시스템에서 펑쳐링되지 않은 데이터의 신뢰도를 이용하여 펑쳐링된 데이터를 디펑쳐링함에 따라 복호 성능을 높일 수 있는 이점이 있다.
权利要求
  • 복수의 데이터 비트 및 패러티 비트를 포함하며 일부 패러티 비트가 펑쳐링(Puncturing)된 LDPC(Low Density Parity Check) 부호화 신호를 수신하는 단계;
    상기 LDPC 부호화 신호에 포함된 M개의 비트 노드 각각에 대응하는 N개의 검사 노드에서의 LLR(Log Likelihood Ratio) 값의 존재 여부를 바탕으로, 상기 각각의 비트 노드를 그에 대응하는 상기 N개의 검사 노드 중 상기 LLR 값이 존재하는 일부 검사 노드와 매칭시키는 단계;
    상기 N개의 검사 노드 중 상기 펑쳐링된 패러티 비트가 연결된 적어도 하나의 제1 검사 노드를 제외한 나머지 검사 노드를 유효 검사 노드로 선정하고, 상기 각 비트 중에서 상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 조절하는 단계;
    상기 각 비트 중에서 상기 제1 검사 노드에 연결된 비트들에 대해 상기 조절된 LLR 값을 적용하여, 상기 펑쳐링된 패러티 비트의 LLR 값을 복원하는 단계; 및
    상기 복수의 데이터 비트 및 상기 패러티 비트에 대한 최초 획득된 LLR 값과, 상기 펑쳐링된 패러티 비트에 대한 상기 복원된 LLR 값을 결합하여, 상기 LDPC 부호화 신호를 디코딩하는 단계를 포함하며,
    상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 조절하는 단계는,
    상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 1 또는 -1에 가까운 값으로 프리디코딩(Predecoding)하되, 상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값이 양의 값이면 해당 LLR 값과 상기 1 사이의 값으로 프리디코딩하고 음의 값이면 해당 LLR 값과 상기 -1 사이의 값으로 프리디코딩하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법.
  • 삭제
  • 삭제
  • 청구항 1에 있어서,
    상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 조절하는 단계는,
    상기 유효 검사 노드 중에서 검사 노드 번호가 작은 순으로 프리디코딩을 수행하되, 동일한 유효 검사 노드 내에서는 비트 노드 번호가 작은 순으로 수행하며,
    상기 유효 검사 노드 중 첫 번째 유효 검사 노드에 연결된 모든 비트들의 최초 LLR 값에 대한 사인 값 및 크기 값을 획득하는 제1 단계;
    상기 첫 번째 유효 검사 노드에 연결된 모든 비트들 중 제1 비트를 제외한 나머지 비트들의 사인 값을 모두 곱한 제1 값과, 제1 비트를 제외한 나머지 비트들의 크기 값 중 가장 작은 제2 값을 각각 획득하는 제2 단계; 및
    상기 제1 값과 제2 값을 곱한 값을 상기 제1 비트의 최초 LLR 값에 더하여 상기 LLR 값을 조절하는 제3 단계를 포함하며,
    상기 제1 비트 이후의 다음 비트에 대하여 각각 상기 제1 단계 내지 상기 제3 단계를 반복 수행하여 상기 다음 비트에 대한 LLR 값을 각각 조절하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법.
  • 청구항 4에 있어서,
    상기 펑쳐링된 패러티 비트의 LLR 값을 복원하는 단계는,
    상기 펑쳐링된 패러티 비트가 연결된 적어도 하나의 검사 노드 중에서 검사 노드 번호가 큰 순서로 수행하며, 해당 검사 노드 내에서는 상기 펑쳐링된 패러티 비트 중 종단에 가까운 비트 노드에 대해 먼저 복원을 수행하며,
    상기 해당 검사 노드에 연결된 모든 비트들의 LLR 값을 상기 프리디코딩에 따라 조절된 LLR 값으로 대체하는 제4 단계;
    상기 해당 검사 노드에 연결된 비트들 중에서 마지막 펑쳐링된 패러티 비트를 제외한 나머지 비트들의 LLR 값에 대한 사인 값을 모두 곱한 제3 값과, 이 나머지 비트들의 크기 값 중 가장 작은 제4 값을 각각 획득하는 제5 단계; 및
    상기 제3 값과 상기 제4 값을 곱한 값을 상기 마지막 펑쳐링된 패러티 비트의 LLR 값으로 복원하는 제6 단계를 포함하며,
    상기 해당 검사 노드보다 검사 노드 번호가 작은 다음 검사 노드에서의 상기 LLR 값의 복원 과정에서,
    상기 제4 단계 시에, 상기 다음 검사 노드에 연결된 비트 중 상기 해당 검사 노드에서 LLR 값이 복원된 비트와 동일한 펑쳐링된 패러티 비트가 있으면, 해당 펑쳐링된 패러티 비트의 값을 상기 해당 검사 노드에서 기 복원된 LLR 값으로 대체하여 상기 사인 값 및 크기 값을 획득한 다음,
    상기 마지막 펑쳐링된 패러티 비트보다 비트 노드 번호가 작은 다음 펑쳐링 패러티 비트에 대하여 각각 상기 제4 단계 내지 상기 제6 단계를 수행하여 해당 펑쳐링 패러티 비트에 대한 LLR 값을 복원하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법.
  • 청구항 5에 있어서,
    상기 제6 단계 시에 상기 제4 값이 기 설정된 임계값 보다 작은 경우 해당 펑쳐링된 패러티 비트의 LLR 값을 0으로 복원하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법.
  • 삭제
  • 복수의 데이터 비트 및 패러티 비트를 포함하며 일부 패러티 비트가 펑쳐링(Puncturing)된 LDPC(Low Density Parity Check) 부호화 신호를 수신하는 신호 수신부;
    상기 LDPC 부호화 신호에 포함된 M개의 비트 노드 각각에 대응하는 N개의 검사 노드에서의 LLR(Log Likelihood Ratio) 값의 존재 여부를 바탕으로, 상기 각각의 비트 노드를 그에 대응하는 상기 N개의 검사 노드 중 상기 LLR 값이 존재하는 일부 검사 노드와 매칭시키는 LLR 매칭부;
    상기 N개의 검사 노드 중 상기 펑쳐링된 패러티 비트가 연결된 적어도 하나의 제1 검사 노드를 제외한 나머지 검사 노드를 유효 검사 노드로 선정하고, 상기 각 비트 중에서 상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 조절하는 프리디코딩부;
    상기 각 비트 중에서 상기 제1 검사 노드에 연결된 비트들에 대해 상기 조절된 LLR 값을 적용하여, 상기 펑쳐링된 패러티 비트의 LLR 값을 복원하는 LLR 복원부; 및
    상기 복수의 데이터 비트 및 상기 패러티 비트에 대한 최초 획득된 LLR 값과, 상기 펑쳐링된 패러티 비트에 대한 상기 복원된 LLR 값을 결합하여, 상기 LDPC 부호화 신호를 디코딩하는 디코딩부를 포함하며,
    상기 프리디코딩부는,
    상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 1 또는 -1에 가까운 값으로 프리디코딩(Predecoding)하되, 상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값이 양의 값이면 해당 LLR 값과 상기 1 사이의 값으로 프리디코딩하고 음의 값이면 해당 LLR 값과 상기 -1 사이의 값으로 프리디코딩하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 장치.
  • 삭제
  • 삭제
  • 청구항 8에 있어서,
    상기 프리디코딩부는,
    상기 유효 검사 노드 중에서 검사 노드 번호가 작은 순으로 프리디코딩을 수행하되, 동일한 유효 검사 노드 내에서는 비트 노드 번호가 작은 순으로 수행하며,
    상기 유효 검사 노드 중 첫 번째 유효 검사 노드에 연결된 모든 비트들의 최초 LLR 값에 대한 사인 값 및 크기 값을 획득하는 제1 단계,
    상기 첫 번째 유효 검사 노드에 연결된 모든 비트들 중 제1 비트를 제외한 나머지 비트들의 사인 값을 모두 곱한 제1 값과, 제1 비트를 제외한 나머지 비트들의 크기 값 중 가장 작은 제2 값을 각각 획득하는 제2 단계, 및
    상기 제1 값과 제2 값을 곱한 값을 상기 제1 비트의 최초 LLR 값에 더하여 상기 LLR 값을 조절하는 제3 단계를 수행하며,
    상기 제1 비트 이후의 다음 비트에 대하여 각각 상기 제1 단계 내지 상기 제3 단계를 반복 수행하여 상기 다음 비트에 대한 LLR 값을 각각 조절하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 장치.
  • 청구항 11에 있어서,
    상기 LLR 복원부는,
    상기 펑쳐링된 패러티 비트가 연결된 적어도 하나의 검사 노드 중에서 검사 노드 번호가 큰 순서로 수행하며, 해당 검사 노드 내에서는 상기 펑쳐링된 패러티 비트 중 종단에 가까운 비트 노드에 대해 먼저 복원을 수행하며,
    상기 해당 검사 노드에 연결된 모든 비트들의 LLR 값을 상기 프리디코딩에 따라 조절된 LLR 값으로 대체하는 제4 단계;
    상기 해당 검사 노드에 연결된 비트들 중에서 마지막 펑쳐링된 패러티 비트를 제외한 나머지 비트들의 LLR 값에 대한 사인 값을 모두 곱한 제3 값과, 이 나머지 비트들의 크기 값 중 가장 작은 제4 값을 각각 획득하는 제5 단계; 및
    상기 제3 값과 상기 제4 값을 곱한 값을 상기 마지막 펑쳐링된 패러티 비트의 LLR 값으로 복원하는 제6 단계를 수행하며
    상기 해당 검사 노드보다 검사 노드 번호가 작은 다음 검사 노드에서의 상기 LLR 값의 복원 과정에서,
    상기 제4 단계 시에, 상기 다음 검사 노드에 연결된 비트 중 상기 해당 검사 노드에서 LLR 값이 복원된 비트와 동일한 펑쳐링된 패러티 비트가 있으면, 해당 펑쳐링된 패러티 비트의 값을 상기 해당 검사 노드에서 기 복원된 LLR 값으로 대체하여 상기 사인 값 및 크기 값을 획득한 다음,
    상기 마지막 펑쳐링된 패러티 비트보다 비트 노드 번호가 작은 다음 펑쳐링 패러티 비트에 대하여 각각 상기 제4 단계 내지 상기 제6 단계를 수행하여 해당 펑쳐링 패러티 비트에 대한 LLR 값을 복원하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 장치.
  • 청구항 12에 있어서,
    상기 LLR 복원부는,
    상기 제6 단계 시에 상기 제4 값이 기 설정된 임계값 보다 작은 경우 해당 펑쳐링된 패러티 비트의 LLR 값을 0으로 복원하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 장치.
  • 说明书全文

    LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법 및 그 장치{Method for restoring of puncturing date using LDPC Decoding system and apparatus thereof}

    본 발명은 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법 및 그 장치에 관한 것으로서, 보다 상세하게는 LDPC(Low Density Parity Check) 복호 시스템에서 펑쳐링(Puncturing) 되지 않은 데이터의 신뢰도를 이용하여 펑쳐링된 데이터를 복원하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법 및 그 장치에 관한 것이다.

    최근 복호의 성능을 개선한 저밀도 패리티 검사 코드(low density parity check code : 이하 'LDPC 코드'라 칭함)가 새롭게 부각되고 있다. 상기 LDPC는 코드를 정의하는 패리티 검사 행렬(parity check matrix)의 각 행과 열에 '1'의 수가 매우 적은 부호로서, 검사 노드(check node)와 비트 노드(variable node), 그리고 이들을 연결하는 가지(edge)로 구성된 펙터 그래프(factor graph)에 의해 그 구조가 정의될 수 있다.

    일반적으로 IEEE 802.11n의 LDPC 부호기/복호기를 사용할 때에는 부호화된 데이터를 펑쳐링(Puncturing)하는 과정이 수행된다. 이는 LDPC 부호화된 데이터를 OFDM 심볼을 구성하는 필요한 데이터 비트 수로 맞추기 위한 과정이다. 그러나 보통의 경우 802.11n의 LDPC 디펑쳐링 과정은 펑쳐링된 데이터를 0으로 채운 후 LDPC 복호 과정을 거치게 되는데 이는 복호의 성능 저하를 유발한다.

    본 발명의 배경이 되는 기술은 한국공개특허 제2007-0037249호(2007.04.04 공개)에 개시되어 있다.

    본 발명은 복호 성능을 높일 수 있는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법 및 그 장치를 제공하는데 목적이 있다.

    본 발명은, 복수의 데이터 비트 및 패러티 비트를 포함하며 일부 패러티 비트가 펑쳐링(Puncturing)된 LDPC(Low Density Parity Check) 부호화 신호를 수신하는 단계와, 상기 LDPC 부호화 신호에 포함된 M개의 비트 노드에 대하여 N개의 검사 노드 중 LLR(Log Likelihood Ratio) 값을 가지는 검사 노드를 매칭시키는 단계와, 상기 N개의 검사 노드 중 상기 펑쳐링된 패러티 비트가 연결된 적어도 하나의 제1 검사 노드를 제외한 나머지 검사 노드를 유효 검사 노드로 선정하고, 상기 각 비트 중에서 상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 조절하는 단계, 및 상기 각 비트 중에서 상기 제1 검사 노드에 연결된 비트들에 대해 상기 조절된 LLR 값을 적용하여, 상기 펑쳐링된 패러티 비트의 LLR 값을 복원하는 단계를 포함하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법을 제공한다.

    여기서, 상기 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법은, 상기 복수의 데이터 비트 및 상기 패러티 비트에 대한 최초 획득된 LLR 값과, 상기 펑쳐링된 패러티 비트에 대한 상기 복원된 LLR 값을 결합하여, 상기 LDPC 부호화 신호를 디코딩하는 단계를 더 포함할 수 있다.

    또한, 상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 조절하는 단계는, 상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 1 또는 -1에 가까운 값으로 프리디코딩(Predecoding)할 수 있다.

    여기서, 상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 조절하는 단계는, 상기 유효 검사 노드 중에서 검사 노드 번호가 작은 순으로 프리디코딩을 수행하되, 동일한 유효 검사 노드 내에서는 비트 노드 번호가 작은 순으로 수행하며, 상기 유효 검사 노드 중 첫 번째 유효 검사 노드에 연결된 모든 비트들의 최초 LLR 값에 대한 사인 값 및 크기 값을 획득하는 제1 단계와, 상기 첫 번째 유효 검사 노드에 연결된 모든 비트들 중 제1 비트를 제외한 나머지 비트들의 사인 값을 모두 곱한 제1 값과, 제1 비트를 제외한 나머지 비트들의 크기 값 중 가장 작은 제2 값을 각각 획득하는 제2 단계, 및 상기 제1 값과 제2 값을 곱한 값을 상기 제1 비트의 최초 LLR 값에 더하여 상기 LLR 값을 조절하는 제3 단계를 포함하며, 상기 제1 비트 이후의 다음 비트에 대하여 각각 상기 제1 단계 내지 상기 제3 단계를 반복 수행하여 상기 다음 비트에 대한 LLR 값을 각각 조절할 수 있다.

    또한, 상기 펑쳐링된 패러티 비트의 LLR 값을 복원하는 단계는, 상기 펑쳐링된 패러티 비트가 연결된 적어도 하나의 검사 노드 중에서 검사 노드 번호가 큰 순서로 수행하며, 해당 검사 노드 내에서는 상기 펑쳐링된 패러티 비트 중 종단에 가까운 비트 노드에 대해 먼저 복원을 수행하며, 상기 해당 검사 노드에 연결된 모든 비트들의 LLR 값을 상기 프리디코딩에 따라 조절된 LLR 값으로 대체하는 제4 단계, 상기 해당 검사 노드에 연결된 비트들 중에서 마지막 펑쳐링된 패러티 비트를 제외한 나머지 비트들의 사인 값을 모두 곱한 제3 값과, 이 나머지 비트들의 크기 값 중 가장 작은 제4 값을 각각 획득하는 제5 단계, 및 상기 제3 값과 상기 제4 값을 곱한 값을 상기 마지막 펑쳐링된 패러티 비트의 LLR 값으로 복원하는 제6 단계를 포함할 수 있다.

    여기서, 상기 제6 단계 시에 상기 제4 값이 기 설정된 임계값 보다 작은 경우 해당 펑쳐링된 패러티 비트의 LLR 값을 0으로 복원할 수 있다.

    또한, 상기 해당 검사 노드보다 검사 노드 번호가 작은 다음 검사 노드에서의 상기 LLR 값의 복원 과정에서, 상기 제4 단계 시에, 상기 다음 검사 노드에 연결된 비트 중 상기 해당 검사 노드에서 LLR 값이 복원된 비트와 동일한 펑쳐링된 패러티 비트가 있으면, 해당 펑쳐링된 패러티 비트의 값을 상기 해당 검사 노드에서 기 복원된 LLR 값으로 대체하여 상기 사인 값 및 크기 값을 획득한 다음, 상기 마지막 펑쳐링된 패러티 비트보다 비트 노드 번호가 작은 다음 펑쳐링 패러티 비트에 대하여 각각 상기 제4 단계 내지 상기 제6 단계를 수행하여 해당 펑쳐링 패러티 비트에 대한 LLR 값을 복원할 수 있다.

    그리고, 본 발명은 복수의 데이터 비트 및 패러티 비트를 포함하며 일부 패러티 비트가 펑쳐링(Puncturing)된 LDPC(Low Density Parity Check) 부호화 신호를 수신하는 신호 수신부와, 상기 LDPC 부호화 신호에 포함된 M개의 비트 노드에 대하여 N개의 검사 노드 중 LLR(Log Likelihood Ratio) 값을 가지는 검사 노드를 매칭시키는 LLR 매칭부와, 상기 N개의 검사 노드 중 상기 펑쳐링된 패러티 비트가 연결된 적어도 하나의 제1 검사 노드를 제외한 나머지 검사 노드를 유효 검사 노드로 선정하고, 상기 각 비트 중에서 상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 조절하는 프리디코딩부, 및 상기 각 비트 중에서 상기 제1 검사 노드에 연결된 비트들에 대해 상기 조절된 LLR 값을 적용하여, 상기 펑쳐링된 패러티 비트의 LLR 값을 복원하는 LLR 복원부를 포함하는 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 장치를 제공한다.

    여기서, 상기 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 장치는, 상기 복수의 데이터 비트 및 상기 패러티 비트에 대한 최초 획득된 LLR 값과, 상기 펑쳐링된 패러티 비트에 대한 상기 복원된 LLR 값을 결합하여, 상기 LDPC 부호화 신호를 디코딩하는 디코딩부를 더 포함할 수 있다.

    또한, 상기 프리디코딩부는, 상기 유효 검사 노드에 연결된 비트들에 대한 LLR 값을 1 또는 -1에 가까운 값으로 프리디코딩(Predecoding)할 수 있다.

    본 발명에 따른 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법 및 그 장치에 따르면, LDPC 복호 시스템에서 펑쳐링되지 않은 데이터의 신뢰도를 이용하여 펑쳐링된 데이터를 디펑쳐링함에 따라 복호 성능을 높일 수 있는 이점이 있다.

    도 1은 본 발명의 실시예에 따른 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 장치의 구성도이다.
    도 2는 도 1을 이용한 펑쳐링된 데이터의 복원 방법의 흐름도이다.
    도 3은 도 2의 S220 단계를 설명하는 행렬 예를 나타낸다.
    도 4는 본 발명의 실시예에 따른 비트 노드와 체크 노드 간 연결 그래프의 예이다.
    도 5는 도 4를 바탕으로 도 2의 S240 단계를 설명하는 개념도이다.

    그러면 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.

    본 발명은 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 방법 및 그 장치에 관한 것으로, LDPC(Low Density Parity Check) 복호 시스템에서 펑쳐링(Puncturing) 되지 않은 데이터의 신뢰도를 이용하여 펑쳐링된 데이터를 디펑쳐링(De-Puncturing)하는 기법을 개시한다.

    일반적으로, LDPC 부호화 과정에서는 부호화된 데이터를 펑쳐링(Puncturing)하는 과정이 수반된다. 이는 부호화 데이터를 구성하는 비트 수를 OFDM 심볼을 구성하는 데이터의 비트 수와 맞추기 위한 것이다. LDPC 부호화 신호는 복수의 데이터 비트들과 그에 대응하는 패러티(Parity) 비트들로 구성되는데, 펑쳐링 과정은 각 비트들 중에서 일부 패러티 비트를 비워서 처리한다.

    송신단에서는 전송하고자 하는 신호를 LDPC 신호를 부호화하여 전송하며, 수신단에서는 이를 수신하여 복호화(디코딩)한다. 본 발명의 실시예는 수신단에서 상기 LDPC 부호화된 신호를 수신하여 복호화하기 이전에, LDPC 부호화 신호에 포함된 펑쳐링된 데이터를 복원하여 디펑쳐링하는 기술을 제공한다.

    이하에서는 상기의 내용을 바탕으로 본 발명의 실시예를 상세히 설명한다.

    도 1은 본 발명의 실시예에 따른 LDPC 복호 시스템을 이용한 펑쳐링된 데이터의 복원 장치의 구성도이고, 도 2는 도 1을 이용한 펑쳐링된 데이터의 복원 방법의 흐름도이다. 도 1 및 도 2를 참조하면, 본 발명의 실시예에 따른 복원 장치(100)는 신호 수신부(110), LLR 매칭부(120), 프리디코딩부(130), LLR 복원부(140), 디코딩부(150)를 포함한다.

    먼저, 신호 수신부(110)는 LDPC 부호화 신호를 송신단(미도시)으로부터 수신한다(S210). 여기서, LDPC 부호화 신호는 앞서와 같이 복수의 데이터 비트들 및 패러티 비트들을 포함하여 구성되며, 패러티 비트들 중에서 적어도 하나의 일부 패러티 비트는 펑쳐링(Puncturing)된 상태로 존재한다.

    다음, LLR 매칭부(120)는 상기 LDPC 부호화 신호에 포함된 M개의 비트 노드에 대하여, N개의 검사 노드 중 LLR(Log Likelihood Ratio) 값을 가지는 검사 노드를 매칭시킨다(S220).

    이러한 S220 단계는 LDPC가 검사 노드(check node)와 비트 노드(variable node), 그리고 이들을 연결하는 가지(edge)로 구성된 펙터 그래프(factor graph)에 의해 그 구조가 정의되는 것과 관계가 있다.

    도 3은 도 2의 S220 단계를 설명하는 행렬 예를 나타낸다. 도 3은 설명의 편의를 위해 LDPC 부호화 코드가 6개의 데이터 비트들 및 그에 대응하는 6개의 패러티 비트들을 포함하는 12개의 비트로 구성된 예로서, 본 발명이 반드시 이에 한정되는 것은 아니다.

    도 3은 6개의 패러티 비트 중 5번째 및 6번째 패러티 비트가 펑쳐링 처리된 예로서, 그에 대응하는 비트 노드 P5, P6에 대해서는 음영 처리로 표시하고 있다.

    이러한 도 3은 6개의 데이터를 전송하기 위하여 총 12개의 데이터가 사용되므로 데이터 전송율(Data Rate)은 1/2(=6/12)이다. 데이터 전송율은 패러티 비트들의 사용 개수를 결정한다. 일반적으로 데이터 전송율이 낮을수록 패러티 비트들의 사용 개수가 증가하며 시스템의 신뢰도는 향상된다.

    도 3은 M=12, N=6에 해당되는 N×M 행렬 테이블로서, LDPC 코드에 포함된 비트의 개수에 대응하여 총 12개의 비트 노드(B1~B6, P1~P6)가 존재하고, 6개의 데이터 비트에 대응하여 총 6개의 검사 노드(CN1~CN6)(N=6)가 존재한다.

    각각의 비트 노드에 대응하는 검사 노드에서의 LLR 값은 도 3에서 각각의 행렬 요소 칸에 기재되어 있다. 그러나, 모든 칸이 LLR 값을 가지는 것은 아니며, 일부는 LLR 값이 Null(비워진) 상태로 존재한다. 참고로 도 3에서 비트 노드 P1 내지 P6에 대응하는 검사 노드에서의 LLR 값은 생략 도시하였다.

    상기 S220 단계는 M개의 비트 노드에 대하여 LLR 값을 가지는 검사 노드를 매칭시키는 과정이다. 이를 통해, 각각의 검사 노드와 비트 노드를 가지(edge)로 연결하는 그래프를 구성할 수 있다. 도 3의 예에서는 그래프 구성 시에 비트 노드 B1은 체크 노드 CN1, CN2, CN5과 각각 연결될 것이고, 비트 노드 B2는 체크 노드 CN1, CN3, CN6과 각각 연결될 것이다.

    도 4는 본 발명의 실시예에 따른 비트 노드와 체크 노드 간 연결 그래프의 예이다. 이러한 도 4의 그래프의 경우, 전체 12개의 비트 노드 중에서 펑쳐링된 패러티 비트의 위치에 해당하는 비트 노드인 P5, P6은 총 6개의 검사 노드 중에서 CN4, CN5, CN6 중 적어도 하나와 연결된 것을 확인할 수 있다. 이외에도 비트 노드 B1은 모든 검사 노드와 연결되어 있고, B2는 CN2와 연결되어 있다.

    여기서, 도 4의 결과는 앞서 도 3의 행렬로부터 유도된 것은 아니며, 도 3 및 도 4은 별개의 예시에 해당 됨을 이해하여야 한다. 다만, 도 3과 도 4는 LDPC를 구성하는 비트 구성 예는 동일한 것으로서, 사용된 비트 노드와 검사 노드의 개수, 그리고 펑쳐링된 비트의 위치는 모두 동일한 것을 알 수 있다. 이하에서는 도 4의 그래프를 예시로 하여 설명한다.

    이상과 같이 LLR 값을 통해 노드 간 매칭이 이루어진 이후, 프리디코딩부(130)는 상기 수신된 LDPC 부호화 신호에 대한 실질적인 디코딩(복호화) 작업 이전에 프리 디코딩(Predecoding) 작업을 수행한다(S230).

    더 상세하게는, S230 단계 시에 프리디코딩부(130)는 우선 상기 6개(N=6)의 검사 노드 중 상기 펑쳐링된 패러티 비트가 연결된 제1 검사 노드(CN4, CN5, CN6)를 제외한 나머지 검사 노드를 유효 검사 노드(CN1, CN2, CN3)로 선정한다. 이후, 상기 LDPC 부호화 신호에 포함된 12개(M=12)의 각 비트 중 상기 유효 검사 노드(CN1, CN2, CN3)에 연결된 비트들에 대한 LLR 값을 조절한다.

    펑쳐링된 비트 노드와 연결된 검사 노드는 피드백되어 돌아오는 검사 노드의 값들이 적으므로 신뢰도에 영향을 줄 수 있기 때문에, 펑쳐링 되지 않은 비트 노드와 연결된 유효 검사 노드를 이용하여 프리 디코딩을 수행한다.

    그러면, LLR 복원부(140)는 상기 LDPC 부호화 신호에 포함된 12개(M=12)의 각 비트 중에서, 상기 제1 검사 노드(CN4, CN5, CN6)에 연결된 비트들에 대해 상기 조절된 LLR 값을 적용하여, 이를 통해 상기 펑쳐링된 패러티 비트의 LLR 값을 복원(디펑쳐링; De-Puncturing)한다(S240).

    이후, 디코딩부(150)는 상기 복수의 데이터 비트 및 상기 패러티 비트에 대한 최초 획득된 LLR 값과, 상기 펑쳐링된 패러티 비트에 대한 상기 복원된 LLR 값을 결합하여, 상기 LDPC 부호화 신호를 디코딩한다(S250).

    이하에서는 상기 S230 내지 S250 단계에 관하여 보다 상세히 설명한다.

    먼저, 상기 유효 검사 노드(CN1, CN2, CN3)에 연결된 비트들에 대한 LLR 값을 조절하는 S230 단계의 경우, 상기 프리디코딩부(130)는 유효 검사 노드(CN1, CN2, CN3)에 연결된 비트들에 대한 LLR 값을 1 또는 -1에 가까운 값으로 프리 디코딩하도록 한다. 이는 유효 검사 노드에 연결된 비트들에 대한 LLR 값이 최종적으로 이상적인 1 또는 -1의 값에 가깝도록 조절하는 과정이다.

    예를 들어 도 3과 같이 초기에 비트 노드 B1에 대응하는 비트의 최초 LLR 값은 0.1이고 B5에 대응하는 비트의 최초 LLR 값은 -0.5인 경우, 프리 디코딩 과정에서 양의 값인 0.1은 1에 더욱 가까운 값으로, 음의 값인 -0.5는 -1에 더욱 가까운 값으로 튜닝된다. 즉, LLR 값이 작은 값은 더욱 작은 값으로, 큰 값은 더욱 큰 값으로 조절된다. 이러한 프리 디코딩 과정은 비트 노드 B1 내지 P4까지의 신뢰성을 높여주는 역할을 한다.

    S230 단계에 따른 프리 디코딩의 구체적인 실시예는 다음과 같다. 설명의 편의를 위하여 각 노드의 연결 그래프는 도 4의 예를 참조한다.

    프리 디코딩은 유효 검사 노드(CN1, CN2, CN3) 중에서 검사 노드 번호가 작은 순(CN1->CN2->CN3)으로 수행하며, 동일한 유효 검사 노드 내에서는 비트 노드 번호가 작은 순(CN1의 경우 B1->B2-> ... ->B6)으로 수행한다. 이하에서는 가장 먼저 수행하는 CN1을 대상으로 프리 디코딩 과정을 설명한다.

    먼저, 유효 검사 노드(CN1, CN2, CN3) 중 첫 번째 유효 검사 노드(CN1)에 연결된 모든 비트들의 최초 LLR 값에 대한 사인 값 및 크기 값을 획득한다(제1 단계).

    도 4에서 CN1에 연결된 비트 노드는 B1, B5, P1, P2이며, B1, B5, P1, P2에 대응하는 각 비트의 최초 LLR 값은 -0.5, 0.4, 0.2, -0.3인 것으로 가정한다. 이러한 경우 각 비트의 최초 LLR 값에 대한 사인 값 및 크기 값은 표 1과 같이 정리된다.

    B1 B5 P1 P2
    LLR 값 -0.5 0.4 0.2 -0.3
    사인 값 -1 1 1 -1
    크기 값 0.5 0.4 0.2 0.3

    표 1로부터, LLR 값에 대한 사인 값은 LLR 값이 음의 값이면 -1, 양의 값이면 1이 되는 것을 확인할 수 있다. 또한 LLR 값에 대한 크기 값은 그 절대치에 해당됨을 알 수 있다.

    이후, 상기 첫 번째 유효 검사 노드(CN1)에 연결된 모든 비트들 중 가장 노드 번호가 작은 제1 비트(B1 관련)를 제외한 나머지 비트들(B5,P1,P2 관련)의 사인 값을 모두 곱한 제1 값(-1 = 1×1×(-1))과, 상기 나머지 비트들(B5,P1,P2 관련)의 크기 값(0.4,0.2,0.3) 중 가장 작은 제2 값(0.2)을 각각 획득한다(제2 단계).

    그런 다음, 상기 제1 값(-1)과 제2 값(0.2)을 곱한 값(-0.2)을 상기 제1 비트(B1 관련)의 최초 LLR 값(-0.5)에 더하여 제1 비트의 노드에 대한 LLR 값을 -0.7(=(-0.5)+(-0.2))로 조절한다(제3 단계).

    다음, 상기 제1 비트(B1 관련) 이후의 다음 비트(B5, P1, P2 관련)에 대하여 각각 상기 제1 단계 내지 상기 제3 단계와 동일한 원리의 과정을 반복 수행하여, 다음 비트에 대한 LLR 값을 동일한 방식으로 각각 조절한다. 즉, B1 이후에는, B5에 대하여 제1 내지 제3 단계를 수행하여 B5의 LLR 값을 조절하고, 그 이후에는 P1, 그리고 P2에 대해서도 각각 동일한 방법으로 LLR 값을 조절한다.

    상기와 같이 CN1과 관련하여 프리 디코딩을 수행하면 CN1과 연결된 각 비트(B1, B5,P1,P2 관련)에 대한 LLR 값이 모두 조정된다. 다음에는, 이후의 다음 순위의 CN2, 그리고 CN3에 대해서도 동일한 방법으로 프리 디코딩을 순차로 수행한다. 다만, 이전 단계에 사용된 비트와 동일한 비트가 연산에 사용될 경우, 해당 비트의 LLR 값은 이전 단계에서 조절된 LLR 값으로 대체하여 사용한다. 이에 따라, 각 비트에 대하여 보다 최적의 LLR 값으로 프리 디코딩될 수 있다.

    즉, 상기 다음 유효 검사 노드(CN2)에 대한 프리디코딩 과정에서는 다음 유효 검사 노드(CN2)에 연결된 비트 노드의 비트 중 직전 유효 검사 노드(CN1)에서 프리 디코딩된 비트와 동일한 비트 노드 번호(B1,P2)의 비트에 대해서는, 해당 비트의 LLR 값을 상기 직전 유효 검사 노드(CN1)의 프리 디코딩 시에 기 조절된 LLR 값으로 대체(ex, B1의 경우 -0.5이 아닌 -0.7 값으로 대체 사용)하여 상기 사인 값 및 크기 값을 획득하고, 이를 바탕으로 제2 및 제3 단계를 수행하여 LLR 값을 다시 조절한다. 이는 CN3에서도 마찬가지이다.

    이와 같이 CN1 내지 CN3 까지 프리 디코딩을 모두 완료하면, 각 비트 노드에 대응하는 비트 별로, 프리 디코딩에 의해 최종 조절된 LLR 값이 획득된다. 최종 조절된 LLR 값은 이후, 펑쳐링된 패러티 비트에 대한 LLR 값의 복원에 사용된다.

    다음은 펑쳐링된 패러티 비트의 LLR 값을 복원하는 S240 단계를 설명한다. S240 단계는 LDPC 부호화 신호에 포함된 12개(M=12)의 각 비트 중에서, 펑쳐링된 패러티 비트가 연결된 검사 노드(CN4, CN5, CN6)에 연결된 비트들에 대해 상기 조절된 LLR 값을 적용한 다음, 이를 통해 펑쳐링된 패러티 비트의 LLR 값을 복원한다.

    이러한 S240 단계의 경우, S230 단계와는 달리, 상기 펑쳐링된 패러티 비트가 연결된 검사 노드(CN4, CN5, CN6) 중에서 검사 노드 번호가 큰 순서(CN6->CN5->CN4)로 수행하며, 해당 검사 노드(ex, CN6) 내에서는 상기 펑쳐링된 패러티 비트 중 종단에 가까운 비트 노드(P5,P6 중 종단에 가까운 P6)에 대해 먼저 복원을 수행한다.

    이하에서는 가장 먼저 수행하는 CN6을 대상으로 설명한다. 도 5는 도 4를 바탕으로 도 2의 S240 단계를 설명하는 개념도이다. 도 4 및 도 5를 참조하면, 우선 해당 검사 노드(CN6)에 연결된 모든 비트들(B1 B6,P1,P6 관련)의 LLR 값을, 상기 프리 디코딩(S230 단계)에 따라 조절된 LLR 값으로 대체한다(제4 단계).

    설명의 편의를 위하여, 프리 디코딩 과정을 통해 B1, B6, P1의 조절된 LLR 값은 각각 -0.9, 0.8, 0.7인 것으로 가정한다. 이때, 각각의 사인 값은 -1, 1, 1이고, 크기 값은 0.9, 0.8, 0.7이다.

    그런 다음, 상기 해당 검사 노드(CN6)에 연결된 비트들(B1,B6,P1,P6 관련) 중에서 마지막 펑쳐링된 패러티 비트(P6 관련)를 제외한 나머지 비트들(B1,B6,P1 관련)의 사인 값을 모두 곱한 제3 값(-1 = (-1)×1×1)과, 이 나머지 비트들의 크기 값 중 가장 작은 제4 값(0.7)을 각각 획득한다(제5 단계). 이러한 제5 단계의 원리는 앞서 프리 디코딩 시에 사용한 제2 단계의 원리와 동일하므로 상세한 설명은 생략한다.

    그런 다음, 상기 제3 값(-1)과 상기 제4 값(0.7)을 곱한 값(-0.7)을 상기 마지막 펑쳐링된 패러티 비트(P6 관련)의 LLR 값으로 복원한다(제6 단계). 즉, P6의 LLR 값은 제3 값과 제4 값을 곱한 -0.7의 값으로 복원하여 사용한다.

    여기서, 상기 제6 단계 시에, 상기 제4 값의 크기가 기 설정된 임계값(ex, 0.2)보다 작은 경우, 해당 펑쳐링된 패러티 비트의 LLR 값을 0으로 복원한다. 즉, 앞서의 예에서 제4 값이 임계값 미만인 것으로 확인되면, 마지막 펑쳐링된 패러티 비트(P6 관련)의 LLR 값은 0으로 복원한다.

    이와 같이, 검사 노드(CN6)를 이용하여 비트 노드 P6에 대응하는 패러티 비트의 LLR 값을 구한 이후에는, 상기 해당 검사 노드(CN6)보다 검사 노드 번호가 작은 다음 검사 노드(CN5)에서 LLR 값을 복원하는 과정을 상기 제4 단계 내지 제6 단계와 같은 방법으로 거치게 된다.

    이때, 제4 단계 수행 시에, 다음 검사 노드(CN5)에 연결된 비트 중에서 상기 해당 검사 노드(CN6)에서 LLR 값이 복원된 비트(P6 관련)와 동일한 펑쳐링된 패러티 비트가 있으면(도 5 참조; P6이 CN6 이외에도 CN5에 연결되어 있음), 해당 펑쳐링된 패러티 비트(P6 관련)의 LLR 값을 앞서 해당 검사 노드(CN6)에서 기 복원된 LLR 값으로 대체하여 상기 사인 값 및 크기 값을 제4 단계와 같은 방법으로 획득한다. 그리고 다음 펑쳐링 패러티 비트(P5 관련)에 대하여 각각 제5 단계 및 제6 단계를 수행하여 해당 펑쳐링 패러티 비트(P5 관련)에 대한 LLR 값을 복원한다. 이러한 과정은 CN4에 대해서도 수행될 수 있다. 이는 CN4에 P5가 연결되어 있기 때문이며 이때 P5를 대상으로 상기와 같은 과정을 수행하여 P5에 대한 LLR 값이 다시 조절될 수 있다.

    이와 같이, 펑쳐링된 패러티 비트에 대한 LLR 값이 복원된 이후, LDPC 부호화 신호의 디코딩(S250) 시에는 프리 디코딩에 따라 조절된 LLR 값을 사용하지 않으며, 펑쳐링된 패러디 비트를 제외한 모든 비트에 대해서는 최초 획득된 LLR 값을 사용하고, 펑쳐링된 패러디 비트에 대해서는 상기 복원된 LLR 값을 사용하여, 상기 LDPC 부호화 신호를 디코딩한다.

    이상과 같은 본 발명의 실시예에 따르면, LDPC 복호화 전 디펑처링 과정에서 펑처링 되지 않은 신뢰도 높은 데이터를 이용하여 펑처링된 데이터를 0이 아닌 값으로 채워, 복호화 과정인 패리티 체크 과정에서 임의의 값(0의 값)을 채워서 발생하는 오류를 줄일 수 있다. 이러한 본 발명에 따르면, LDPC 복호 시스템에서 펑쳐링되지 않은 데이터의 신뢰도를 이용하여 펑쳐링된 데이터를 디펑쳐링함에 따라 복호 성능을 높일 수 있다.

    본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.

    100: 펑쳐링된 데이터의 복원 장치
    110: 신호 수신부 120: LLR 매칭부
    130: 프리디코딩부 140: LLR 복원부
    150: 디코딩부

    QQ群二维码
    意见反馈