KR20010018890A - 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법 - Google Patents

병렬 펑쳐링 알고리즘의 파라미터 최적화 방법 Download PDF

Info

Publication number
KR20010018890A
KR20010018890A KR1019990035023A KR19990035023A KR20010018890A KR 20010018890 A KR20010018890 A KR 20010018890A KR 1019990035023 A KR1019990035023 A KR 1019990035023A KR 19990035023 A KR19990035023 A KR 19990035023A KR 20010018890 A KR20010018890 A KR 20010018890A
Authority
KR
South Korea
Prior art keywords
puncturing
bit string
bit
punctured
code
Prior art date
Application number
KR1019990035023A
Other languages
English (en)
Other versions
KR100504463B1 (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 KR10-1999-0035023A priority Critical patent/KR100504463B1/ko
Priority to DE10030407A priority patent/DE10030407B4/de
Priority to US09/615,603 priority patent/US6622281B1/en
Publication of KR20010018890A publication Critical patent/KR20010018890A/ko
Priority to US10/622,781 priority patent/US7089480B2/en
Application granted granted Critical
Publication of KR100504463B1 publication Critical patent/KR100504463B1/ko
Priority to US11/404,175 priority patent/US7523383B2/en
Priority to US12/399,892 priority patent/US7827466B2/en
Priority to US12/399,886 priority patent/US7814391B2/en
Priority to US12/399,882 priority patent/US7814390B2/en

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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • H03M13/6368Error control coding in combination with rate matching by puncturing using rate compatible puncturing or complementary puncturing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard

Abstract

본 발명은 차세대 통신 시스템에 관한 것으로, 특히 광대역 코드 분할 다중 접속(이하, W-CDMA 라 약칭함) 방식을 이용하는 이동 통신 시스템에서 채널 심볼 레이트를 최적의 수준으로 조정하는 채널화 코드 레이트 매칭 절차 중 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법에 관한 것이다.
이를 위해 본 발명에서는 상향 링크 채널화 코드에 대한 레이트 매칭시 펑쳐링되는 코드 비트량에 관계없이 균일 펑쳐링을 만족하도록 병렬 펑쳐링 알고리즘에 사용되는 파라미터를 최적화하는 방법을 제공하며, 또한 레이트 매칭을 위한 펑쳐링 알고리즘에서 채널 심볼 레이트를 최적의 수준으로 조정하는데 적당한 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법을 제공한다.

Description

병렬 펑쳐링 알고리즘의 파라미터 최적화 방법{Parameter Optimization method of Parallel Puncturing Algorithm}
본 발명은 차세대 통신 시스템에 관한 것으로, 특히 W-CDMA 방식을 이용하는 이동 통신 시스템에서 채널 심볼 레이트를 최적의 수준으로 조정하는 채널화 코드 레이트 매칭 절차 중 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법에 관한 것이다.
최근 일본의 ARIB, 유럽의 ETSI, 미국의 T1, 한국의 TTA 및 일본의 TTC는 음성, 영상 및 데이터와 같은 멀티미디어를 서비스하는 기존 이동 통신 세계화 시스템(GSM : Global system for mobile communications)의 코어 네트워크와 무선 접속 기술을 기본으로 한 보다 진화된 차세대 이동 통신 시스템을 구상하였다.
진화된 차세대 이동 통신 시스템에 대한 기술적인 명세를 제시하기 위하여 이들은 공동 연구에 동의하였으며, 이를 위한 프로젝트를 3세대 공동 프로젝트(Third Generation Partnership Project ; 이하, 3GPP 라 약칭함)라 하였다.
3GPP는 크게 다음의 세 가지 기술 연구 영역을 포함한다.
첫 째, 3GPP 시스템 및 서비스 부문이다, 이는 3GPP 명세를 근거로 한 시스템의 구조 및 서비스 능력에 대한 연구를 하는 부문이다.
둘 째, 범지구 무선 접속 네트워크(UTRAN : Universal Terrestrial Radio Access Network)에 대한 연구 부문이다, 여기서 범지구 무선 접속 네트워크(UTRAN)는 주파수 분할 듀플렉스(FDD : Frequency Division Duplex) 모드에 따르는 W-CDMA와 시간 분할 듀플렉스(TDD : Time Division Duplex) 모드에 따르는 TD-CDMA를 적용한 무선 접속 네트워크(RAN : Radio Access Network)이다.
세 째, 2세대의 이동 통신 세계화 시스템(GSM)에서 진화되어 이동성 관리 및 전세계적 로밍(Global roaming)과 같은 3세대 네트워킹 능력을 갖는 코어 네트워크(Core network)에 대한 연구 부문이다.
상기한 3GPP의 기술 연구 부문들 중에서 범지구 무선 접속 네트워크(UTRAN)에 대한 연구 부문에서는 전송 채널(transport channel)과 물리 채널(physical channel)에 대한 정의 및 이에 대한 설명을 기술하고 있으며, 특히 S1 시리즈 중 S1.12에는 주파수 분할 듀플렉스(FDD) 모드에 따르는 다중화(Multiplexing), 채널 코딩(channel coding) 및 인터리빙(interleaving)에 대한 정의와 이에 대한 설명을 기술하고 있다.
여기서 3GPP 무선 접속 네트워크(RAN) 규격에 따른 상향 링크 및 하향 링크에서의 다중화 및 채널 코딩에 대해 간단히 설명한다.
상향 링크에서는 먼저 동일한 서비스 품질(Quality of Service ; 이하, QoS 라 약칭함)의 전송 채널들이 다중화되며, 다중화된 동일한 QoS의 전송 채널들은 채널 코딩(Channel coding), 인터리빙(interleaving) 및 레이트 매칭(rate matching) 과정을 거치게 된다.
하향 링크에서도 다중화된 동일한 QoS의 전송 채널들은 먼저 채널 코딩(Channel coding)을 거친다. 그러나 상향 링크에서와 달리 레이트 매칭(rate matching) 이후 비연속 전송 표시 비트 삽입(insert of discontinuous transmission indication bits) 및 인터리빙(interleaving) 과정을 거치게 된다.
이 때 상기한 상향 링크 또는 하향 링크에서의 채널 코딩으로는 컨벌루션 코딩(Convolutional coding) 또는 터보 코딩(Turbo coding) 중 어느 하나를 사용하며, 그밖에도 서비스에 따라 특정 코딩이 사용되기도 한다.
상기한 3GPP 무선 접속 네트워크(RAN) 규격에 따른 상향 링크 또는 하향 링크에서의 코딩 및 다중화 절차 중 주목할 것은 레이트 매칭(Rate matching)이다.
이 레이트 매칭은 서로 다른 전송 채널에 대해 반복(repetition)과 펑쳐링(puncturing)을 적용하여 최적 수준의 채널 심볼 레이트로 조정하는 과정이다.
도 1은 3GPP 무선 접속 네트워크(RAN) 규격에 따른 하향 링크에서의 펑쳐링 알고리즘을 설명하기 위한 블록구성도이다.
도 1을 참조하면, 채널 코딩부(channel coding)(1)의 출력 비트열들은 멀티플렉싱부(2)에서 다중화되어 각 레이트 매칭 블록(RMB : Rate Matching Block)(3,4,5)으로 입력된다.
여기서 채널 코딩부(1)에서는 컨벌루션 코딩(Convolutional coding) 또는 터보 코딩(Turbo coding) 중 어느 하나를 사용하며, 채널 코딩된 비트열은 시스티메틱 비트열(x), 제1 패리티 비트열(y), 제2 패리티 비트열(z)로 분기된다.
이들 비트열들은 전송 채널에 대한 채널 코딩 결과 출력되는 것들로써, 패리티 비트열들은 각 RSC 코더(Recursive systematic convolutional coder)의 출력들이다.
이렇게 시스티메틱 비트열(x)과, 제1 패리티 비트열(y), 제2 패리티 비트열(z)로 분기된 각각 비트열들에 대하여 레이트 매칭 블록(RMB)(3,4,5)은 레이트 매칭을 위한 펑쳐링을 수행한다.
이 때 각 레이트 매칭 블록(RMB)(3,4,5)은 몇 가지 파라미터들에 의하여 조절되는데, 사용되는 파라미터로는 각 레이트 매칭 블록(RMB)(3,4,5)의 입력 비트열의 크기를 나타내는 "Nc"와, 각 레이트 매칭 블록(RMB)(3,4,5)에서 펑쳐링되는 코드 비트량을 나타내는 "P"가 있으며, 펑쳐링되는 코드 비트의 위치를 조정하는데 사용되는 파라미터로 "(a,b)"가 있다.
만약 각 레이트 매칭 블록(RMB)(3,4,5)에서 터보 코드(Turbo code)에 대한 펑쳐링이 수행된다면, 이 때는 시스티메틱 비트열들(x)에 대한 펑쳐링이 배재되어야 하기 때문에 도 1의 제1 레이트 매칭 블록(RMB1)(3)에서 "P"값은 "0"이 된다.
그런데 각각의 제2 레이트 매칭 블록(RMB2)(4)과 제3 레이트 매칭 블록(RMB3)(5)에서는 전체 펑쳐링되는 코드 비트량이 "P"일 때 각각 절반씩 균일하게 펑쳐링 되어야 하므로 "P/2"값이 된다. 이를 위해 현재 규격에서는 제2 레이트 매칭 블록(RMB2)(4)에서는 펑쳐링되는 코드 비트의 위치를 조정하는 파라미터 "(a.b)"값을 "(2,1)"로 하고, 제3 레이트 매칭 블록(RMB3)(5)에서는 파라미터 "(a,b)"값을 "(3,1)"로 하고 있다.
그러나, 지금까지 설명된 하향 링크에서와 달리 상향 링크에서는 레이트 매칭(rate matching) 이전에 인터리빙(interleaving)을 거치게 된다.
따라서 하향 링크에서의 레이트 매칭에 사용되던 파라미터들을 그대로 사용할 수 없고, 인터리빙을 고려하여 코드 비트 단위의 균일 펑쳐링이 만족되도록 또다른 파라미터 값들을 사용해야 한다.
다시 말하자면, 각 인터리빙된 종렬 비트열별로 균등한 양의 펑쳐링이 적용될 경우, 인터리빙 되기 이전의 비트열에 대하여도 균일하게 펑쳐링 되도록 해야 한다는 것이다. 결국 상향 링크 레이트 매칭에서는 코드 비트 단위의 균일 펑쳐링 조건을 만족할 수 있도록 각 인터리빙된 종렬 비트열별로 쉬프팅 파라미터 "S"를 구하여, 이를 실제 펑쳐링 알고리즘에 적용한다.
다음은 현재 3GPP 무선 접속 네트워크(RAN) 규격에 따른 펑쳐링 알고리즘에 대해 설명한다.
도 2는 제1 실시 예에 따른 종래 하향 링크에서의 펑쳐링 패턴을 나타낸 도면이다.
도 2는 정보 비트 부분(information bit part)의 크기가 10인 경우, 1/3 터보 코드에서 6비트가 펑쳐링되는 경우의 예를 든 것이다.
터보 코드에 대한 레이트 매칭에서는 시스티메틱 비트열(x)에 대한 펑쳐링을 배제해야 하므로, 제1 패리티 비트열(y)과 제2 패리티 비트열(z)에서 각각 3비트씩 펑쳐링된다.
결국 도 1의 제2 레이트 매칭 블록(RMB2)(4)에서 펑쳐링되는 코드 비트의 위치를 조정하는 파라미터 "(a.b)"값을 "(2,1)"로 하고, 제3 레이트 매칭 블록(RMB3)(5)에서 파라미터 "(a,b)"값을 "(3,1)"로 했을 때, 도 2와 같은 펑쳐링 패턴을 얻게 된다.
도 2에서는 테일 비트 부분(Tail bit part)도 펑쳐링되는 패턴을 나타낸 것이다.
도 3은 제2 실시 예에 따른 종래 하향 링크에서의 펑쳐링 패턴을 나타낸 도면이다.
도 3도 또한 정보 비트 부분(information bit part)의 크기가 10인 경우, 1/3 터보 코드에서 6비트가 펑쳐링되는 경우의 예를 든 것이며, 이 때도 시스티메틱 비트열(x)에 대한 펑쳐링을 배제해야 하므로, 제1 패리티 비트열(y)과 제2 패리티 비트열(z)에서 각각 3비트씩 펑쳐링된다.
결국 도 1의 제2 레이트 매칭 블록(RMB2)(4)에서 펑쳐링되는 코드 비트의 위치를 조정하는 파라미터 "(a.b)"값을 "(2,1)"로 하고, 제3 레이트 매칭 블록(RMB3)(5)에서 파라미터 "(a,b)"값을 "(2,1)"로 했을 때, 도 3과 같은 펑쳐링 패턴을 얻게 된다.
도 3에서도 테일 비트 부분(Tail bit part)이 펑쳐링되는 패턴을 나타낸 것이다.
이와 같이 터보 코드에 대한 레이트 매칭에서는 인터리빙을 고려하여 제1 패리티 비트열(y)과 제2 패리티 비트열(z)에서의 펑쳐링 위치를 독립적으로 적용할 수 있다. 따라서 코드 비트 단위의 균일 펑쳐링이 만족되도록 제1 패리티 비트열(y)에 대해 균일 펑쳐링을 적용하고, 제2 패리티 비트열(z)에 대해 균일 펑쳐링을 적용하더라도 성능상의 차이는 별로 없다.
도 2 및 도 3에 보인 바와 같이, 현재 3GPP 규격에 따른 하향 링크에서의 터보 코드에 대한 펑쳐링 알고리즘에서는 도 1의 각 레이트 매칭 블록(RMB)들의 파라미터 "(a,b)"값을 조정함으로써 다양한 펑쳐링 패턴을 얻을 수 있다.
도 4는 제1 실시 예에 따른 종래 1/2 터보 코드의 펑쳐링 패턴을 나타낸 도면이며, 도 5는 제2 실시 예에 따른 종래 1/2 터보 코드의 펑쳐링 패턴을 나타낸 도면이다.
도 4 및 도 5에 나타낸 펑쳐링 패턴은 하향 링크 터보 코드에 대한 펑쳐링 알고리즘을 통해 1/3 터보 코드에서 1/2 터보 코드를 만들어 낸 것이다.
도 4에 나타낸 펑쳐링 패턴은 현재 3GPP 규격에 따른 1/2 터보 코드에 대한 펑쳐링 패턴과 동일한 형식이다. 즉 테일 비트 부분(Tail bit part)은 펑쳐링을 배제하고, 정보 비트 부분에서 제1 패리티 비트열(y)과 제2 패리티 비트열(z)을 순차적으로 번갈아 가며 펑쳐링한다.
그러나 도 5에 나타낸 펑쳐링 패턴은 병렬 펑쳐링 알고리즘을 사용하여 1/2 터보 코드를 만들어낸 것이다.
도 5의 펑쳐링 패턴은 도 1의 제2 레이트 매칭 블록(RMB2)(4)에서 펑쳐링되는 코드 비트의 위치를 조정하는 파라미터 "(a.b)"값을 "(2,1)"로 하고, 제3 레이트 매칭 블록(RMB3)(5)에서 파라미터 "(a,b)"값을 "(3,1)"로 했을 때 얻게 된다.
다시 말하자면 제1 패리티 비트열(y)에 대해서는 (2,1) 파라미터를 사용하여 펑쳐링되는 코드 비트 위치를 조정하고, 제2 패리티 비트열(z)에 대해서는 (3,1) 파라미터를 사용하여 펑쳐링되는 코드 비트 위치를 조정한다. 또한 도 5의 펑쳐링 패턴은 각 레이트 매칭 블록(RMB)(3,4,5)의 입력 비트열에서 정보 비트 부분(information bit part)의 크기가 10인 경우이며, 각 패리티 비트열에서 5비트씩 펑쳐링되는 경우이다.
지금까지 제시된 펑쳐링 패턴은 펑쳐링되는 코드 비트량(P)이 짝수개인 경우를 나타내었다.
반면에 현재 하향 링크 펑쳐링 알고리즘에서는 펑쳐링되는 코드 비트량(P)이 홀수개인 경우에는 제1 패리티 비트열(y)에서 펑쳐링되는 코드 비트수와 제2 패리티 비트열(z)에서 펑쳐링되는 코드 비트수가 "1"만큼 차이가 생기기 때문에, 제1 패리티 비트열(y)에 대해서는 ""개만큼 펑쳐링하고, 제2 패리티 비트열(z)에 대해서는 ""개만큼 펑쳐링한다. 여기서를 넘지 않는 최대 정수값이며,보다 큰 최소 정수값이다.
다음 상향 링크 펑쳐링 알고리즘에서는, 채널 코딩 후 인터리빙된 각 종렬 비트열에 대해 제1 패리티 비트열(y)과 제2 패리티 비트열(z)을 분리한 후 펑쳐링을 수행한다.
이 때 만약 각 인터리빙된 종렬 비트열에 대해 펑쳐링되는 코드 비트량(P)이 짝수개인 경우에 각 인터리빙된 종렬 비트열별로 균등한 양의 펑쳐링이 적용되었다면 인터리빙 되기 이전의 비트열에 대하여도 균일하게 펑쳐링이 적용된다.
그런데 만약 각 인터리빙된 종렬 비트열에 대해 펑쳐링되는 코드 비트량(P)이 홀수개인 경우에는 각 인터리빙된 종렬 비트열별로 균등한 양의 펑쳐링이 적용되었다 하더라도 인터리빙 되기 이전의 비트열에 대하여도 균일하게 펑쳐링이 적용되었다고 볼 수 없다. 즉 이 때는 인터리빙된 종렬 비트열별로 펑쳐링되는 코드 비트수와 인터리빙 되지 이전의 비트열에 대해 펑쳐링되는 코드 비트수가 서로 달라진다는 것이다.
결국 이를 위해 제시된 현재 방안은, 먼저 각 인터리빙된 종렬 비트열에서 제1 패리티 비트열(y)과 제2 패리티 비트열(z)에 대해서는개만큼 펑쳐링하고, 이후 인터리빙된 짝수 번째 종렬 비트열에서는 제1 패리티 비트열(y)에 대한 마지막 펑쳐링을 배제하고, 홀수 번째 종렬 비트열에서는 제2 패리티 비트열(z)에 대한 마지막 펑쳐링을 배제하는 것이다. 물론 여기서 마지막 펑쳐링을 배제하지 않고 각 비트열별로 일정 패턴에 따라 1비트씩의 펑쳐링을 배제할 수도 있다.
그러나, 현재로써는 이러한 펑쳐링 배제를 위한 로직(logic)이 필요하다는 단점이 있다.
또한 앞에서도 언급했듯이 각 하향 링크 및 상향 링크의 레이트 매칭을 위한 펑쳐링 알고리즘에 적용되는 파라미터들이 서로 다르다는 문제가 있다.
본 발명의 목적은 상기한 점을 감안하여 안출한 것으로, W-CDMA 방식을 이용하는 이동 통신 시스템에서 상향 링크 채널화 코드에 대한 레이트 매칭시 펑쳐링되는 코드 비트량에 관계없이 균일 펑쳐링을 만족하도록 병렬 펑쳐링 알고리즘에 사용되는 파라미터를 최적화하는 방법을 제공한다.
본 발명의 또다른 목적은 레이트 매칭을 위한 펑쳐링 알고리즘에서 채널 심볼 레이트를 최적의 수준으로 조정하는데 적당한 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법을 제공한다.
상기한 목적을 달성하기 위한 본 발명에 따른 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법의 특징은, 채널 코딩된 비트열이 제1 비트열(x), 제2 비트열(y), 제3 비트열(z)로 분기됨에 따른 각 비트열에 대한 레이트 매칭에 있어서, 각 비트열에 대해 병렬 펑쳐링이 수행될 때, 상기 제1 비트열(x)에 대해서는 펑쳐링을 배제하고, 상기 제2 비트열(y)과 제3 비트열(z)에 대해서는 순차적으로 번갈아 가며 펑쳐링되도록, 펑쳐링되는 코드 비트의 위치를 조정하는 파라미터가 사용된다.
바람직하게는, 상기 펑쳐링되는 코드 비트의 위치를 조정하는 파라미터가, 터보 코딩에 의해 시스티메틱 비트열, 제1 패리티 비트열, 제2 패리티 비트열로 분기될 경우, 상기 시스티메틱 비트열에 대해서는 펑쳐링을 배제하고, 상기 제1 패리티 비트열과 제2 패리티 비트열에 대해서는 순차적으로 번갈아 가며 펑쳐링되도록 병렬 펑쳐링에 적용된다.
또한, 상기 펑쳐링되는 코드 비트의 위치를 조정하는 파라미터는 상기 비트열들에 대한 초기 오차값을 일정 값씩 감분하여 상기 초기 오차값이 '0'이하가 될 때 펑쳐링이 발생하도록 그 값이 정해지며, 특정 비트열에 대해서는 펑쳐링 이후 초기 오차값에 일정 누적값이 더해진다.
그 밖에도 상기 비트열들에 대해 펑쳐링되는 코드 비트수가 P개 일 경우, 제2 비트열(y)에 대해서는 P/2를 넘지 않는 최대 정수개만큼 펑쳐링하고, 제3 비트열(z)에 대해서는 P/2보다 큰 최소 정수개만큼 펑쳐링하도록 파라미터가 결정되거나, 제2 비트열(y)에 대해서는 P/2보다 큰 최소 정수개만큼 펑쳐링하고, 제3 비트열(z)에 대해서는 P/2를 넘지 않는 최대 정수개만큼 펑쳐링하도록 파라미터가 결정된다.
도 1은 3GPP 무선 접속 네트워크(RAN) 규격에 따른 하향 링크에서의 펑쳐링 알고리즘을 설명하기 위한 블록구성도.
도 2는 제1 실시 예에 따른 종래 하향 링크에서의 펑쳐링 패턴을 나타낸 도면.
도 3은 제2 실시 예에 따른 종래 하향 링크에서의 펑쳐링 패턴을 나타낸 도면.
도 4는 제1 실시 예에 따른 종래 1/2 터보 코드의 펑쳐링 패턴을 나타낸 도면.
도 5는 제2 실시 예에 따른 종래 1/2 터보 코드의 펑쳐링 패턴을 나타낸 도면.
도 6은 기존의 터보 코드에 대한 병렬 펑쳐링 알고리즘의 펑쳐링 패턴과 본 발명에서 파라미터 최적화에 의한 펑쳐링 패턴을 비교한 도면.
도 7은 본 발명에 따른 병렬 펑쳐링 알고리즘에 의한 1/2 터보 코드의 펑쳐링 패턴을 나타낸 도면.
*도면의 주요부분에 대한 부호 설명*
1 : 채널 코딩부 2 : 멀티플랙싱부
3 : 제1 레이트 매칭 블록(RMB1) 4 : 제2 레이트 매칭 블록(RMB2)
5 : 제3 레이트 매칭 블록(RMB3)
이하, 본 발명에 따른 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법에 대한 바람직한 일 실시 예를 첨부된 도면을 참조하여 설명한다.
본 발명에서는 기존의 레이트 매칭 블록(RMB)에서 펑쳐링되는 코드 비트의 위치를 조정하는데 사용되던 파라미터 "(a,b)"를 조정하여 최적화시킨다.
또한 본 발명에서는 상향 링크 채널화 코드에 대한 레이트 매칭시 펑쳐링되는 코드 비트량(P)이 홀수개인 경우에도 균일 펑쳐링이 만족되도록 사용되는 파라미터를 조정한다.
먼저 터보 코드에 대한 병렬 펑쳐링 알고리즘에 대해 살펴 보면, 터보 코드에 대한 병렬 펑쳐링 알고리즘에서는 제1 패리티 비트열(y)과 제2 패리티 비트열(z) 각각에 대해 균일 펑쳐링만 보장되도록 하였다.
따라서 현재 터보 코드에 대한 펑쳐링 알고리즘을 컨벌루션 코드에 대하여 적용할 경우에는 전체 비트열에 대해 균일 펑쳐링을 보장할 수 없다.
결국 컨벌루션 코드와 터보 코드에 대해 동일한 펑쳐링 알고리즘을 적용하기가 어려우며, 또한 테일 비트 부분(Tail bit part)은 펑쳐링을 배제하고 정보 비트 부분에서 제1 패리티 비트열(y)과 제2 패리티 비트열(z)을 순차적으로 번갈아 가며 펑쳐링하는 1/2 터보 코드에 대한 펑쳐링 패턴을 얻을 수 없다.
본 발명에서는 이에 대한 방안을 제시하며, 다음 본 발명에 대한 설명에서는 터보 코드와 컨벌루션 코드로 각각 나누어 설명한다.
기존에는 채널 코딩된 비트열이 시스티메틱 비트열(x), 제1 패리티 비트열(y), 제2 패리티 비트열(z)로 분기된 후 다중화된다.
이 다중화된 비트열 중 패리티 비트열들은 각 레이트 매칭을 위한 독립적인 균일 펑쳐링 알고리즘에 의해 펑쳐링된다.
이 때 제1 패리티 비트열(y)과 제2 패리티 비트열(z)에 동일한 형식으로 적용되는 병렬 펑쳐링 알고리즘을 다음에 나타내었다.
"=비트들의 집합
; 각 열별 펑쳐링 개수
; 펑쳐링된 후의 코드 심볼 개수
; 현재 펑쳐링 비율과 원하는 펑쳐링 비율간의 초기 오차, 하향 링크에서
; 현재 코드 심볼에 대한 인덱스
; 오차(e) 갱신
; 인덱스인 코드 심볼에 대해 펑쳐링 발생 여부 검사
; 오차(e) 갱신
; 다음 코드 심볼에 대한 인덱스
"
다음은 상기한 알고리즘의 터보 코드에 대한 적용 예를 설명한다.
먼저 본 발명에서는 제1 패리티 비트열(y)에 대해 펑쳐링되는 코드 비트의 위치를 조정하는데 사용되는 파라미터 "(a,b)"가 상기한 펑쳐링 알고리즘에 "(1,1)"이 적용된다.
기존의 균일 펑쳐링 알고리즘에서는 파라미터 "(a,b)"로 "(2,1)"이 적용되었다. 즉 초기 오차값로부터만큼씩 계속 감산해 가다가 그 결과값이 0보다 작거나 같아지는 순간의 비트 부분에서 펑쳐링이 이루어지고, 다시 오차값에만큼 더해준 후 펑쳐링 알고리즘을 계속 동작시켰다.
본 발명에서와 같이 파라미터 "(a,b)"값으로 "(1,1)"을 적용하면, "(2,1)"이 적용되던 경우에 비해 첫 번째 펑쳐링되는 코드 비트의 위치가 약 2배만큼 증가하게 된다. 만약 전체적인 펑쳐링 거리가 정수로 표현되는 경우에는 정확히 2배만큼 증가하게 된다.
또한 본 발명에서는 제2 패리티 비트열(z)에 대해 펑쳐링되는 코드 비트의 위치를 조정하는데 사용되는 파라미터 "(a,b)"가 상기 펑쳐링 알고리즘에 "(2,1)"이 적용된다. 이는 기존의 균일 펑쳐링 알고리즘에서와 동일하게 적용된 것이다.
이렇게 되면, 제2 패리티 비트열(z)에 대해 첫 번째 펑쳐링되는 코드 비트의 위치가 제1 패리티 비트열(y)에 대해 첫 번째 펑쳐링되는 코드 비트의 위치에 비해 2배 이전의 위치가 된다.
이와 같이 제1 패리티 비트열(y)에 대해 펑쳐링되는 코드 비트의 위치를 조정하는데 사용되는 파라미터 "(a,b)"가 "(1,1)"이 적용되고, 제2 패리티 비트열(z)에 대해 펑쳐링되는 코드 비트의 위치를 조정하는데 사용되는 파라미터 "(a,b)"가 "(2,1)"이 적용되면, 각 제1 패리티 비트열(y) 및 제2 패리티 비트열(z)에 대해 균일 펑쳐링이 보장된다. 또한 전체 패리티 비트열(y,z)에 대해서도 균일 펑쳐링을 만족시킨다.
도 6은 기존의 터보 코드에 대한 병렬 펑쳐링 알고리즘의 펑쳐링 패턴과 본 발명에서 파라미터 최적화에 의한 펑쳐링 패턴을 비교한 도면이다.
도 6a는 기존의 균일 펑쳐링 알고리즘에서 파라미터 "(a,b)"가 제1 패리티 비트열에 대해 "(2,1)", 제2 패리티 비트열에 대해 "(2,1)"이 적용될 때의 펑쳐링 패턴이며, 정보 비트 부분(information bit part)의 크기가 8인 경우 6비트가 펑쳐링되는 경우의 예를 든 것이다.
도 6b는 본 발명에 따른 파라미터 최적화에 의해 균일 펑쳐링 알고리즘에서 파라미터 "(a,b)"가 제1 패리티 비트열에 대해 "(1,1)", 제2 패리티 비트열에 대해 "(2,1)"이 적용될 때의 펑쳐링 패턴이다.
도 6b에서 알 수 있듯이, 본 발명에서 제안된 최적의 파라미터 "(a,b)"값을 사용한 펑쳐링 패턴은 제1 패리티 비트열(y)에 대해 균일 펑쳐링을 만족하고, 제2 패리티 비트열(z)에 대해 균일 펑쳐링을 만족한다. 물론 전체 패리티 비트열(y,z)에 대해서도 균일 펑쳐링을 만족한다.
물론 터보 코드에 대해서는 전체 패리티 비트열(y,z)에 대한 균일 펑쳐링이 별로 큰 의미를 갖지는 않는다. 그러나 1/2 터보 코드의 펑쳐링 패턴이나 컨벌루션 코드에 대한 펑쳐링 패턴을 고려해 볼 때 전체 패리티 비트열(y,z)에 대한 균일 펑쳐링을 간과해서는 안된다.
도 7은 본 발명에 따른 병렬 펑쳐링 알고리즘에 의한 1/2 터보 코드의 펑쳐링 패턴을 나타낸 도면이다.
도 7의 펑쳐링 패턴은 본 발명에서 제안한 파라미터 최적화를 통해 얻을 수 있는 것으로, 테일 비트 부분(Tail bit part)은 펑쳐링을 배제하고 정보 비트 부분에서 제1 패리티 비트열(y)과 제2 패리티 비트열(z)을 순차적으로 번갈아 가며 펑쳐링하는 1/2 터보 코드에 대한 펑쳐링 패턴을 만족시킨다.
본 발명에서는 이 같은 펑쳐링 패턴을 만족시키는데 필요한 파라미터를 최적화하여 다음 표 1에 나타내었다. 표 1의 파라미터 값들은 도 1에 도시된 각 레이트 매칭 블록(RMB)에서 펑쳐링 알고리즘에 사용된다.
제1 RMB('x') 제2 RMB('y') 제3 RMB('z')
(a,b) (2,1) (1,1) (2,1)
각 RMB의 펑쳐링 코드 비트량 0
입력 비트열 크기
다음은 앞에서 이미 제시한 병렬 펑쳐링 알고리즘의 컨벌루션 코드에 대한 적용 예를 설명한다.
현재 3GPP 규격에서 사용하고 있는 1/3 컨벌루션 코드는 8진수 표현 형태로 각각 "5578=1011011112", "6638=1101100112", "7118=1110010012"의 생성 다항식을 통해 얻어진다.
이 때 "5578=1011011112"의 생성 다항식에 얻어지는 비트열을 'x'라 하고, "6638=1101100112"의 생성 다항식에 의해 얻어지는 비트열을 'y'라 하고, "7118=1110010012"의 생성 다항식에 의해 얻어지는 비트열을 'z'라 표현한다.
이 때 일반적으로 컨벌루션 코드에 대한 펑쳐링 알고리즘은 전체 비트열에 대해 균일 펑쳐링이 만족되도록 동작된다. 이는 터보 코드에서 시스티메틱 비트열이 다른 패리티 비트열에 비해 높은 중요도를 갖는 것과는 달리 컨벌루션 코드에서는 전체 비트열이 모두 동일한 중요도를 갖는다는 조건일 때 성립한다.
그러나 실제 컨벌루션 코드에서도 각 비트열이 전체 비트열에 대한 해밍 거리에 미치는 영향이 서로 다르며, 결국 컨벌루션 코드에서도 특정 비트열에 대한 펑쳐링을 배제하는 것이 보다 나은 성능을 발휘하는데 필요하다.
현재로서는 컨벌루션 코드에 있어 "7118=1110010012"의 생성 다항식에 의해 얻어지는 비트열 'z'에 대해 펑쳐링을 배제하는 것이 바람직하다고 알려져 있다.
따라서 본 발명에서는 다음 표 2의 최적화된 파라미터를 사용하여 "5578=1011011112"의 생성 다항식에 얻어지는 비트열 'x'에 대해서만 펑쳐링하며, 다음 표 3의 최적화된 파라미터를 사용하여 "5578=1011011112"의 생성 다항식에 얻어지는 비트열 'x'와 "6638=1101100112"의 생성 다항식에 의해 얻어지는 비트열 'y'를 교대로 번갈아가며 펑쳐링한다.
제1 RMB('x') 제2 RMB('y') 제3 RMB('z')
(a,b) (2,1) (1,1) (2,1)
각 RMB의 펑쳐링 코드 비트량 P 0 0
입력 비트열 크기
제1 RMB('x') 제2 RMB('y') 제3 RMB('z')
(a,b) (2,1) (1,1) (2,1)
각 RMB의 펑쳐링 코드 비트량 0
입력 비트열 크기
지금까지 나타낸 표 1, 표 2 및 표 3을 통하여 알 수 있듯이, 컨벌루션 코드와 터보 코드에 대해 각 레이트 매칭 블록(RMB)에서 사용되는 파라미터는 각 레이트 매칭 블록(RMB)에서 펑쳐링되는 코드 비트량을 제외하고는 동일한 값이 사용된다.
결국 본 발명에서 제안한 파라미터 "(a,b)"값을 사용하게 되면, 상향 링크 및 하향 링크에서의 터보 코드와 컨벌루션 코드에 대한 통합된 펑쳐링 알고리즘을 사용할 수 있다.
다음은 상향 링크 채널화 코드에 대한 레이트 매칭시 펑쳐링되는 코드 비트량(P)이 홀수개인 경우에 대해 설명한다.
현재 고려되고 있는 인터리버의 행은 최대 8행이다. 따라서 기존의 하향 링크 펑쳐링 알고리즘에서와 같이 제1 패리티 비트열(y)에 대해서는 ""개만큼 펑쳐링하고, 제2 패리티 비트열(z)에 대해서는 ""개만큼 펑쳐링할 때, 각 인터리빙된 종렬 비트열에 대해 펑쳐링되는 코드 비트량(P)이 홀수개인 경우에는 전체적으로 제1 패리티 비트열(y)과 제2 패리티 비트열(z)에서 펑쳐링되는 비트수가 8비트 만큼 차이가 나게 된다.
그러나 터보 코드에 있어서는 두 개의 복호기가 인터리버를 통해 연결되고, 또한 반복 복호를 적용하므로, 본 발명에서는 제1 패리티 비트열(y)에 대해서는 ""개만큼 펑쳐링하고, 제2 패리티 비트열(z)에 대해서는 ""개만큼 펑쳐링하는 첫 번째 방법과, 반대로 제1 패리티 비트열(y)에 대해서는 ""개만큼 펑쳐링하고, 제2 패리티 비트열(z)에 대해서는 ""개만큼 펑쳐링하는 두 번째 방법을 사용한다.
이같은 방법을 사용함으로 인해 결국 하향 링크 레이트 매칭에 사용되는 파라미터와 상향 링크 레이트 매칭에 사용되는 파라미터를 동일하게 구현할 수 있으며, 펑쳐링 배제를 위한 별도의 로직(logic)이 필요치 않다.
이상에서 설명한 바와 같이 본 발명에 따른 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법에서는, 상향 링크 채널화 코드에 대한 레이트 매칭시 펑쳐링되는 코드 비트량에 관계없이 균일 펑쳐링을 만족하므로 상향 링크 및 하향 링크의 병렬 펑쳐링 알고리즘에서 동일한 파라미터를 적용하여 사용할 수 있다.
또한 최적화된 파라미터를 사용함으로써 터보 코드 및 컨벌루션 코드에 대해 동일한 펑쳐링 알고리즘을 적용할 수 있으며, 결과적으로 채널 심볼 레이트를 최적의 수준으로 조정하는데 보다 효과적이다.
또한 병렬 펑쳐링 알고리즘의 파라미터를 최적화함으로써, 테일 비트 부분(Tail bit part)은 펑쳐링을 배제하고 정보 비트 부분에서 제1 패리티 비트열(y)과 제2 패리티 비트열(z)을 순차적으로 번갈아 가며 펑쳐링하는 1/2 터보 코드에 대한 펑쳐링 패턴을 얻을 수 있다.

Claims (5)

  1. 채널 코딩된 비트열이 제1 비트열(x), 제2 비트열(y), 제3 비트열(z)로 분기됨에 따른 각 비트열에 대한 레이트 매칭에 있어서,
    각 비트열에 대해 병렬 펑쳐링이 수행될 때, 상기 제1 비트열(x)에 대해서는 펑쳐링을 배제하고, 상기 제2 비트열(y)과 제3 비트열(z)에 대해서는 순차적으로 번갈아 가며 펑쳐링되도록, 펑쳐링되는 코드 비트의 위치를 조정하는 파라미터가 사용되는 것을 특징으로 하는 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법.
  2. 제 1 항에 있어서, 상기 펑쳐링되는 코드 비트의 위치를 조정하는 파라미터는, 터보 코딩에 의해 시스티메틱 비트열, 제1 패리티 비트열, 제2 패리티 비트열로 분기될 경우, 상기 시스티메틱 비트열에 대해서는 펑쳐링을 배제하고, 상기 제1 패리티 비트열과 제2 패리티 비트열에 대해서는 순차적으로 번갈아 가며 펑쳐링되도록 병렬 펑쳐링에 적용되는 것을 특징으로 하는 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법.
  3. 제 1 항에 있어서, 상기 펑쳐링되는 코드 비트의 위치를 조정하는 파라미터는, 상기 비트열들에 대한 초기 오차값을 일정 값씩 감분하여 상기 초기 오차값이 '0'이하가 될 때 펑쳐링이 발생하도록 그 값이 정해지며, 특정 비트열에 대해서는 펑쳐링 이후 초기 오차값에 일정 누적값이 더해지는 것을 특징으로 하는 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법.
  4. 제 1 항에 있어서, 상기 비트열들에 대해 펑쳐링되는 코드 비트수가 P개 일 경우, 제2 비트열(y)에 대해서는 P/2를 넘지 않는 최대 정수개만큼 펑쳐링하고, 제3 비트열(z)에 대해서는 P/2보다 큰 최소 정수개만큼 펑쳐링하도록 파라미터가 결정되는 것을 특징으로 하는 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법.
  5. 제 1 항에 있어서, 상기 비트열들에 대해 펑쳐링되는 코드 비트수가 P개일 경우, 제2 비트열(y)에 대해서는 P/2보다 큰 최소 정수개만큼 펑쳐링하고, 제3 비트열(z)에 대해서는 P/2를 넘지 않는 최대 정수개만큼 펑쳐링하도록 파라미터가 결정되는 것을 특징으로 하는 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법.
KR10-1999-0035023A 1999-07-14 1999-08-23 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법 KR100504463B1 (ko)

Priority Applications (8)

Application Number Priority Date Filing Date Title
KR10-1999-0035023A KR100504463B1 (ko) 1999-08-23 1999-08-23 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법
DE10030407A DE10030407B4 (de) 1999-07-14 2000-06-21 Verfahren zur optimalen Ratenanpassung in einem Mobilkommunikationssystem
US09/615,603 US6622281B1 (en) 1999-07-14 2000-07-13 Rate matching method in mobile communication system
US10/622,781 US7089480B2 (en) 1999-07-14 2003-07-21 Rate matching method in mobile communication system
US11/404,175 US7523383B2 (en) 1999-07-14 2006-04-13 Rate matching method in mobile communication system
US12/399,892 US7827466B2 (en) 1999-07-14 2009-03-06 Rate matching method in mobile communication system
US12/399,886 US7814391B2 (en) 1999-07-14 2009-03-06 Rate matching method in mobile communication system
US12/399,882 US7814390B2 (en) 1999-07-14 2009-03-06 Rate matching method in mobile communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-1999-0035023A KR100504463B1 (ko) 1999-08-23 1999-08-23 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법

Publications (2)

Publication Number Publication Date
KR20010018890A true KR20010018890A (ko) 2001-03-15
KR100504463B1 KR100504463B1 (ko) 2005-08-01

Family

ID=19608359

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-0035023A KR100504463B1 (ko) 1999-07-14 1999-08-23 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법

Country Status (1)

Country Link
KR (1) KR100504463B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100421853B1 (ko) * 1999-11-01 2004-03-10 엘지전자 주식회사 상향 링크에서의 레이트 매칭 방법
KR100444830B1 (ko) * 2001-12-28 2004-08-21 한국전자통신연구원 데이터 통신 시스템의 전송률 정합 장치 및 그 방법
KR100617770B1 (ko) * 2003-12-24 2006-08-28 삼성전자주식회사 채널 부호화 장치 및 방법
KR100736476B1 (ko) * 2001-06-02 2007-07-06 엘지전자 주식회사 이동통신 시스템에서의 전송율 지시채널의 지시코드발생장치 및 방법
KR100827995B1 (ko) * 2006-07-19 2008-05-07 성균관대학교산학협력단 적응형 비터비 복호기 및 그 방법
US7792022B2 (en) 2006-12-01 2010-09-07 Electronics And Telecommunications Research Institute Method and apparatus for de-rate matching in communication system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100421853B1 (ko) * 1999-11-01 2004-03-10 엘지전자 주식회사 상향 링크에서의 레이트 매칭 방법
KR100736476B1 (ko) * 2001-06-02 2007-07-06 엘지전자 주식회사 이동통신 시스템에서의 전송율 지시채널의 지시코드발생장치 및 방법
KR100444830B1 (ko) * 2001-12-28 2004-08-21 한국전자통신연구원 데이터 통신 시스템의 전송률 정합 장치 및 그 방법
KR100617770B1 (ko) * 2003-12-24 2006-08-28 삼성전자주식회사 채널 부호화 장치 및 방법
KR100827995B1 (ko) * 2006-07-19 2008-05-07 성균관대학교산학협력단 적응형 비터비 복호기 및 그 방법
US7792022B2 (en) 2006-12-01 2010-09-07 Electronics And Telecommunications Research Institute Method and apparatus for de-rate matching in communication system

Also Published As

Publication number Publication date
KR100504463B1 (ko) 2005-08-01

Similar Documents

Publication Publication Date Title
USRE41498E1 (en) Device and methods for channel coding and rate matching in a communication system
EP1806864B1 (en) Rate matching device and method for a data communication system
KR20030032781A (ko) 부호분할다중접속 이동통신시스템에서 부호화 및 레이트매칭장치 및 방법
US6209116B1 (en) Adaptable overlays for forward error correction schemes based on trellis codes
US7187699B1 (en) Method and apparatus for data rate matching
US7346646B1 (en) Method and apparatus for transmitting data frames, and a method and apparatus for data rate matching
AU2001252744B2 (en) Flexible data rate matching apparatus and method in a data communication system
KR100504463B1 (ko) 병렬 펑쳐링 알고리즘의 파라미터 최적화 방법
US8009550B2 (en) Method and communications device for adapting the data transfer rate in a communications device
AU2001252744A1 (en) Flexible data rate matching apparatus and method in a data communication system
KR100404181B1 (ko) 상향 링크에서의 레이트 매칭 방법 및 장치
EP1538770A2 (en) Rate matching method and apparatus for multiplexing channels having different transmission time intervals in a mobile communication system
KR100387058B1 (ko) 데이터 통신시스템에서 심볼 삽입에 의한 가변데이터전송율 정합 방법 및 장치
KR100344873B1 (ko) 상향 링크 레이트 매칭을 위한 파라미터 결정 방법
KR100434264B1 (ko) 하향 링크 레이트 매칭을 위한 파라미터 결정 방법
KR20010009158A (ko) 상향 링크에서의 채널화 코드 레이트 매칭 방법
KR100404183B1 (ko) 채널화 코드에 대한 레이트 매칭 방법
KR20010019028A (ko) 이동 통신 시스템의 레이트 매칭 방법

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130624

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140624

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20150624

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20160624

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20170614

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20180614

Year of fee payment: 14

EXPY Expiration of term