KR100720566B1 - 데이터 레이트 매칭 방법 및 데이터 처리 장치 - Google Patents

데이터 레이트 매칭 방법 및 데이터 처리 장치 Download PDF

Info

Publication number
KR100720566B1
KR100720566B1 KR1020000038388A KR20000038388A KR100720566B1 KR 100720566 B1 KR100720566 B1 KR 100720566B1 KR 1020000038388 A KR1020000038388 A KR 1020000038388A KR 20000038388 A KR20000038388 A KR 20000038388A KR 100720566 B1 KR100720566 B1 KR 100720566B1
Authority
KR
South Korea
Prior art keywords
channel
puncturing
code
rate
group
Prior art date
Application number
KR1020000038388A
Other languages
English (en)
Other versions
KR20020004479A (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 KR1020000038388A priority Critical patent/KR100720566B1/ko
Priority to EP10012474A priority patent/EP2293452B1/en
Priority to AU54178/01A priority patent/AU768016B2/en
Priority to EP01116124A priority patent/EP1176725B1/en
Priority to JP2001204139A priority patent/JP4138274B2/ja
Priority to US09/898,040 priority patent/US7127661B2/en
Priority to CN2008101459461A priority patent/CN101369864B/zh
Priority to BR0105804-5A priority patent/BR0105804A/pt
Priority to CNB011200243A priority patent/CN100464510C/zh
Priority to CN2008101459476A priority patent/CN101369865B/zh
Priority to BRPI0105804-5A priority patent/BRPI0105804B1/pt
Publication of KR20020004479A publication Critical patent/KR20020004479A/ko
Priority to US10/724,767 priority patent/US7266752B2/en
Priority to AU2004200702A priority patent/AU2004200702B2/en
Priority to US11/231,823 priority patent/US7636878B2/en
Priority to US11/476,689 priority patent/US7712012B2/en
Priority to JP2007097882A priority patent/JP4615541B2/ja
Application granted granted Critical
Publication of KR100720566B1 publication Critical patent/KR100720566B1/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/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/27Coding, 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 using interleaving techniques
    • H03M13/2778Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices

Abstract

본 발명은 차세대 이동 통신에 관한 것으로, 특히 물리 계층상에서 보조 채널을 통하여 데이터를 전송할 경우에 다변 데이터 레이트 또는 가변 데이터 레이트 매칭 방법에서 가장 좋은 성능을 줄 수 있는 데이터 레이트 매칭 방법에 관한 것이다. 이와 같은 본 발명에 따른 채널 부호화된 데이터들이 물리 계층에 매핑되도록 인터리빙하는 과정에서,
상기 채널 부호화된 데이터들이 다변 데이터 레이트 모드에서 최대 전송율 이외의 전송율로 전송되는 경우 또는 가변 데이터 레이트 모드에서 각 무선 구조상에서 정의되지 않은 임의 데이터 레이트로 전송되는 경우 사용 가능한 최저 데이터 레이트의 채널 부호로 전송하기 위해서, 상기 채널 부호화된 서로 다른 비트 레이트의 데이터들을 펑처링 또는 심볼 반복을 선택적으로 이용하여 상기 인터리빙 사이즈에 정합시키도록 하는 것을 특징으로 한다. 가변 데이터 레이트나 보조 채널에 대한 다변 데이터 레이트 모드 혹은 두 개 모두가 지원되는 경우, 심볼 반복에 의한 시간 다이버시티 이득 이외에도 실제적인 코드율의 감소로 인한 코딩 이득을 얻을 수 있으며, 이로 인하여 요구되는 전송 전력을 낮출 수 있다.
Figure 112000014027233-pat00001
제1, 제2 타입 코드 그룹, 비트 그룹, 상단/하단 구성 부호화기

Description

데이터 레이트 매칭 방법 및 데이터 처리 장치 {Method of Data Rate Matching and apparatus for data processing}
도 1은 종래 기술에 따른 가변 데이터 레이트와 다변 데이트 레이트를 지원하기 위한 레이트 매칭 과정을 나타낸 도면.
도 2는 일반적인 터보 코드의 구성을 나타낸 도면
도 3은 본 발명에 따른 터보 코드의 다변 데이터 레이트와 가변 데이터 레이트 매칭 방법의 채널의 흐름도를 나타낸 도면.
도 4는 본 발명에 따른 컨벌루션 코드의 다변 데이터 레이트와 가변 데이터 레이트 매칭 방법의 채널의 흐름도를 나타낸 도면.
도 5는 일반적인 터보 코드에 대한 순환 방식의 복호기의 구성을 나타낸 블록 구성도.
본 발명은 차세대 이동 통신에 관한 것으로, 특히 물리 계층상에서 보조 채널을 통하여 데이터를 전송할 경우에 다변 데이터 레이트 또는 가변 데이터 레이트 매칭 방법에서 가장 좋은 성능을 줄 수 있는 데이터 레이트 매칭 방법 및 데이터 처리 장치에 관한 것이다.
일반적으로, 3GPP2의 데이터를 전송하기 위한 채널 중에 보조 채널(Supplemental Channel)이라는 것이 존재한다. 이 채널은 중속 이상의 비교적 고속의 데이터 전송율을 지원하는 채널이다. 이러한 보조 채널(Supplemental Channel)의 동작 모드 가운데에서 다변 데이터 레이트(variable data rate)라는 모드가 존재한다.
즉, 3GPP2 시스템에서는 상기 보조 채널(Supplemental Channel) 중에서도 특히 순방향 보조 채널을 통한 신호 전송에 대해서 기지국이 스케줄링(scheduling)을 하게 되는데, 이 스케줄링 신호를 통하여 기지국은 단말기에 일정 시간동안 고정된 데이터 전송율을 할당하게 된다. 그러나, 그 특정한 시간동안 기지국과 특정 단말기 사이의 채널 상황이 변할 수도 있으며 또한 기지국의 시스템 로드(load)가 변할 수도 있다.
이러한 경우 기지국은 특정 단말기에 현재의 데이터 전송율로 전송하기 위한 충분한 전송 전력을 가지지 못하는 경우가 발생할 수 있다. 이러한 문제점을 해결하기 위해서 기지국은 이 시간동안 보조 채널(Supplemental Channel)로의 전송을 중단시키기도 한다.
하지만, 이러한 해결책은 데이터 전송에 있어서 지연 문제를 유발하며 또한 이미 단말기에게 할당된 유용 가능한 전송 전력과 왈쉬 코드(Walsh Code)에 대해 다른 사용 단말기가 사용할 수 없으므로 비효율적인 자원 관리를 초래한다.
종래 기술에서 또 하나의 해결 방안은 기지국이 약간의 시간이 지난 후 전송 데이터율을 재스케줄링 (re- scheduling)하는 방법을 생각할 수 있다. 하지만 이 또한 시간 지연 문제와 왈쉬 코드(Walsh Code)에 대한 낭비라는 문제를 유발하게 된다.
이러한 상황은 순방향 링크에서만 발생하는 것이 아니다. 동일하게 역방향 링크에서도 단말의 움직임에 따라서 단말과 기지국간의 채널의 상황이 변할 수 있으며, 이에 따라 적정한 품질을 유지하기 위한 전송 전력의 부족이 발생할 수도 있다.
따라서, 이러한 상황을 해결하기 위해서 종래에는 다변 데이터 레이트(variable data rate)라는 모드를 사용하게 된 것이다.
이러한 다변 데이터 레이트 모드는 채널의 상황에 따라서 전송 속도를 프레임 단위로 변화시키는 방법으로써, 채널 상황이 안 좋은 경우로 판단되면 기지국은 보조 채널(Supplemental Channel)의 전송 속도를 낮추게 된다. 그리고 다시 상황이 좋다고 판단되면 다시 이전의 전송 속도로 전송을 하는 방식이다.
구체적으로, 현재 보조 채널(Supplemental Channel)에 대한 다변 데이터 레이트(Variable Data Rate)를 위해서 지원 가능한 최대 전송율로부터 두 단계 밑까지의 전송율 사이에서 보조 채널(Supplemental Channel)의 데이터 전송율을 조정한다.
이때, 만일 순방향 채널을 생각하게 된다면 단말기측에서는 레이트가 변한 상황을 블라인드 레이트 검출(blind rate detection)을 통하여 판정해야 한다. 따라서 데이터 전송율이 가변할 수 있는 범위가 넓어지면 단말의 복잡도를 증가시키는 문제점을 발생시킨다.
그리고, 현재 사용하고 있는 최대의 전송율에 대하여 정해진 인터리버와 왈쉬 코드(Walsh Code)를 그대로 사용하게 해야만 한다.
따라서 데이터의 전송율을 최대 전송율의 1/2로 낮추게 되면, 채널에서 사용할 인터리버의 길이와 채널 부호화기의 출력열의 길이를 맞춰주기 위해서 2배의 심볼 반복을 수행하게 된다. 마찬가지로 만일 데이터의 전송율을 최대 전송율의 1/4로 낮추게 되면, 채널에서 사용할 인터리버의 길이와 채널 부호화기의 출력열의 길이를 맞춰주기 위해서 4배의 심볼 반복을 수행하게 된다.
만일 가변 데이터 레이트(flexible data rate)에 대한 다변 데이터 레이트(variable data rate) 모드가 보조 채널(Supplemental Channel)에서 지원이 되는 경우에는 기존의 가변 데이터 레이트(flexible data rate)에서 사용하는 방법과 마찬가지로 채널 부호화기의 출력 심볼에 대한 반복을 수행하여 최대 전송율에서 사용하는 인터리버의 길이보다 크거나 같도록 만들어 준 후, 이 인터리버 길이를 넘는 비트를 펑처링하는 방법을 사용해야 한다.
도 1은 종래 기술에 따른 가변 데이터 레이트와 다변 데이트 레이트를 지원하기 위한 레이트 매칭 과정을 나타낸 도면이다.
도 1을 참고하면, 상기 보조 채널(Supplemental Channel)에 대한 다변 데이터 레이트(variable data rate) 모드는 요구 전송 전력의 면에 있어서 낭비를 가질 수 있는 방식이다.
예를 들어, 현재 순방향의 제4 무선 구조(Radio Configuration 4;이하 RC4로 약칭함)를 생각해 보자. 이때는 1/2 레이트의 터보 부호나 컨벌루션 부호를 사용하 게 된다. 그리고 다변 데이터 레이트(variable data rate) 모드에서 사용할 수 있는 최대 전송율이 76.8kbps라고 가정하면, 상기 순방향 RC4에서 사용하는 인터리버의 길이는 3072로 고정된다.
이 모드에서의 다변 데이터 레이트(variable data rate) 방법을 이용할 경우에, 종래 기술에서는 사용 가능한 데이터의 전송율이 {19.2kbps, 38.4kbps, 76.8kbps}중에서 적절한 값으로 사용되고, 인터리버의 길이를 3072로 고정하는 것이다.
만일 76.8kbps의 최대 전송율로 전송중인 상태에서 채널의 상황이 안 좋아져서 현재의 전력으로는 요구되는 품질의 서비스(Quality Of Service)를 지속할 수 없는 상황이 되었다고 가정하자.
이때, 데이터 전송율을 1/2로 낮추어서 38.4kbps의 전송율로 데이터를 보내게 된다. 그러면 38.4kbps에서는 20ms 동안 744비트가 내려오게 되고, 여기에 16비트의 순환 중첩 코드(CRC)와 8비트의 테일 부분이 첨가되어 768비트의 프레임이 1/2 레이트의 채널 부호화기에 입력되게 된다. 그러면 채널 부호화기의 출력은 1536 비트가 되며, 이를 3072의 인터리버에 보내주기 위해서 M=2의 심볼 반복을 수행하게 된다.
여기에서 상기 심볼 반복을 통하여 얻을 수 있는 이득은 오직 반복 이득일 뿐이며, 실제적으로 반복은 유효 코드율을 감소시키는 역할을 수행할 수 있지만, 이로 인하여 약간의 시간 다이버시티 (time diversity)의 증가 효과만을 얻을 수 있을 뿐 실제적으로 코딩 이득을 증가시키지는 못한다.
즉, 이때의 문제점은 유효 코드율은 감소하였지만, 이에 따른 코딩 이득은 그리 증가하지 않는다는데 있다.
즉, 1/2 레이트의 채널 부호를 사용하고 여기에 M=2의 심볼 반복을 수행했다고 가정하면, 유효 코드율은 1/4로 낮아진 효과로 판단할 수 있게 된다. 그러나 이로 인한 코딩 이득의 증가는 거의 없다는 것이 종래 기술의 문제점으로 여겨진다.
다변 데이터 레이트(Variable Data Rate) 모드는 왈쉬 코드(Walsh Code)가 모자란 상태에서 사용하는 기술이 아니다. 이 기술은 전송 전력을 효율적으로 조절하여, 시스템에 걸리는 로드(load)를 해결할 수 있는 기술로 생각할 수 있다.
따라서 같은 왈쉬 코드(Walsh Code)를 사용하였을 때의 코딩 이득을 증가시켜 이로 인한 전송 전력상의 이득을 얻을 수 있다면, 이는 전체 시스템의 로드(load)를 조정하는데 보다 효율적인 방법이 될 것으로 판단할 수 있다.
또한 동일하게 이를 역방향 링크의 보조 채널(Supplemental Channel)에 적용한 경우에도 채널 상황에 맞추어 전송 레이트를 자동적으로 조정함으로써, 단말의 전송 전력이 모자란 경우 재스케줄링(re-scheduling) 없이 데이터를 전송할 수 있게 되어 보다 효율적인 방법이 될 것으로 판단된다.
따라서, 본 발명의 목적은 이상에서 언급한 종래 기술의 문제점을 감안하여 안출한 것으로서, 보조 채널(Supplemental Channel)에서의 다변 데이터 레이트(variable data rate)의 동작시 지원되는 최대 데이터 전송율보다 낮은 데이터 전송율을 사용하는 경우 유효 코드율의 감소 효과에 따라 그만큼의 코딩 이득을 얻을 수 있는 데이터 레이트 매칭 방법 및 데이터 처리 장치를 제공하는 것이다.
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
이상과 같은 목적을 달성하기 위한 본 발명의 일 양상으로서, 본 발명에 따른 이동통신 시스템에서의 레이트 매칭 방법은, 특정 데이터 레이트(data rate)를 갖는 입력 데이터를 정해진 코드 레이트(code rate)로 채널 코딩하는 특정 채널에 있어서, 다변 또는 가변 데이터 레이트 모드(variable or flexible data rate mode)에서, 상기 특정 데이터 레이트가 아닌 데이터 레이트를 갖는 입력 데이터를 상기 정해진 코드 레이트를 조정한 코드 레이트로 채널 코딩하는 채널 코딩 단계; 및 상기 채널 코딩 단계에서 채널 코딩된 데이터열(data stream)의 길이를 특정 인터리버 크기(interleaving size)와 매칭시키는 레이트 매칭 단계를 포함하여 구성됨을 특징으로 한다.
본 발명의 다른 양상으로서, 본 발명에 따른 이동통신 시스템에서의 레이트 매칭 방법은, 이동통신 시스템에서 특정 채널을 통한 데이터 전송을 위하여 데이터 레이트를 매칭하는 방법에 있어서, 다변 또는 가변 데이터 레이트 모드(variable or flexible data rate mode)에서, 입력 데이터의 데이터 레이트에 따라 코드 레이트를 가변시켜 채널 코딩을 수행하는 채널 코딩 단계; 상기 채널 코딩된 데이터열의 길이를 특정 인터리버 크기에 정합하도록 레이트 매칭을 수행하는 레이트 매칭 단계; 및 상기 레이트 매칭된 출력 데이터에 대해 인터리빙을 수행하는 인터리빙 단계를 포함하여 구성됨을 특징으로 한다.
본 발명의 또 다른 양상으로서, 본 발명에 따른 이동통신 시스템에서의 데이터 처리 장치는, 이동통신 시스템에서 특정 채널을 통해 데이터를 전송하기 위하여 입력 데이터를 처리하는 장치에 있어서,
다변 또는 가변 데이터 레이트 모드에서, 입력 데이터의 데이터 레이트에 따라 코드 레이트를 가변시켜 채널 코딩을 수행하는 인코더(encoder); 상기 채널 코딩된 데이터열의 길이를 특정 인터리버 크기에 정합하도록 레이트 매칭을 수행하는 레이트 매칭 블록(rate matching block); 및 상기 레이트 매칭된 출력 데이터에 대해 인터리빙을 수행하는 인터리버(interleaver)를 구비함을 특징으로 한다.
바람직하게는, 상기 채널 코딩 단계에서 채널 코딩된 데이터열을 펑처링(puncturing)하거나 심볼 반복(symbol repetition)을 수행함으로써 상기 채널 코딩된 데이터열의 크기를 상기 인터리버 크기에 매칭하는 것을 특징으로 한다.
바람직하게는, 상기 채널 코딩 단계에서 조정된 코드 레이트는 상기 정해진 코드 레이트보다 더 낮은 것을 특징으로 하고, 상기 특정 인터리버 크기는 다변 데이터 레이트 모드에서 지원 가능한 입력 데이터 레이트의 최대 데이터 레이트에 해당하는 인터리버 크기인 것을 특징으로 한다.
바람직하게, 상기 채널 부호화된 데이터들이 컨벌루션 부호일 경우에 1/4 레이트의 코딩 레이트를 이용하고, 터보 부호일 경우에 1/5 레이트의 코딩 레이트를 이용하는 것을 특징으로 한다.
또한, 상기 채널 부호화된 데이터의 출력열의 길이가 원하는 인터리버의 사이즈보다 큰 경우에는 채널 부호화된 데이터의 출력열의 길이에서 인터리버 사이즈만큼을 뺀 펑처링 양을 전체 채널 부호화기의 출력 비트열에서 코드 그룹 단위별로 펑처링하는 것을 특징으로 한다.
바람직하게, 상기 전체 펑처링 양을 상기 전체 코드 그룹의 개수로 나눈 값을 넘지 않는 최대의 정수만큼 펑처링해야 하는 코드 그룹을 제1 타입 코드 그룹으로, 상기 전체 펑처링 양을 상기 전체 코드 그룹의 개수로 나눈 값보다 크거나 같은 최소 정수만큼 펑처링해야 하는 코드 그룹을 제2 타입 코드 그룹으로 나누어 각각이 균일하게 배치되도록 하는 것을 특징으로 한다.
바람직하게, 각 코드 그룹에 할당된 펑처링의 양을 코드 그룹내에서 시스테메틱 비트를 제외한 나머지 비트들의 인덱스에 대한 비트 반전 연산과 그 그룹까지의 전체 펑처링 양의 덧셈을 통하여 각 코드 그룹내에서의 펑처링의 위치를 결정하는 것을 특징으로 한다.
한편, 상기 터보 코드의 코딩 레이트에 상관없이 전체 채널 출력열의 비트열을 시스테메틱 비트 그룹과, 상단 구성 부호화기의 패리티 비트들에 대한 비트 그룹과, 하단 구성 부호화기의 패리티 비트들에 대한 비트 그룹으로 나누어 펑처링을 수행하는 것을 특징으로 한다.
바람직하게, 상기 시스테메틱 코드 비트들에 대한 비트 그룹에서의 펑처링을 배제하고, 상단 구성 부호화기의 패리티 비트들에 대한 비트 그룹과 하단 구성 부호화기의 패리티 비트들에 대한 비트 그룹에 대하여 전체 펑처링 양의 절반씩을 나누어주는 것을 특징으로 한다.
또한, 상기 펑처링을 위하여 채널 부호화열의 코드 비트의 순차적인 인덱스 i로부터 각각의 코드 비트가 어떤 비트 그룹에 속하는지를 판정하기 위하여, 각 비트 그룹내에서의 순차 인덱스 j는, 코딩 레이트 인버스가 n이고 각 구성 부호화기의 코딩 레이트 인버스가 "
Figure 112005036389378-pat00030
"인 경우에, "i-nc
Figure 112005036389378-pat00031
"에 의해 결정되는 것을 특징으로 한다.
바람직하게, 상기 채널 부호화열의 순차적인 비트 인덱스(i)가 상단 구성 부호화기 비트 그룹에 속한 경우에는 상기 순차적인 비트 인덱스를 상단 구성 부호화기 비트 그룹내의 순차 비트 인덱스(j)로 사상시키고, 상기 채널 부호화열의 순차적인 비트 인덱스(i)가 하단 구성 부호화기 비트 그룹에 속한 경우에는 상기 순차적인 비트 인덱스를 하단 구성 부호화기 비트 그룹내의 순차 비트 인덱스(j)로 사상시키는 것을 특징으로 한다.
또한, 상기 각각의 구성 부호화기내에 순차적으로 사상된 비트 인덱스 이후에 각 구성 부호화기내에서의 순차적으로 사상된 비트 인덱스에 대한 검사를 통하여 각 구성 부호화기의 패리티 비트들에 대하여 균일 펑처링을 수행하는 것을 특징으로 한다.
한편, 상기 채널 부호화기의 출력열의 길이가 원하는 인터리버의 길이보다 작은 경우에는 인터리버의 길이에서 채널 부호화기의 출력열의 길이를 뺀 만큼의 양을 균일한 간격으로 반복하는 것을 특징으로 한다.
바람직하게, 상기 터보 코드에 대한 반복 알고리즘은 시스테메틱 코드 비트들에 대한 그룹에서의 반복 과정에 우선 순위를 두는 것을 특징으로 한다.
또한, 상기 터보 코드에 대한 반복 알고리즘은 터보 코드의 코딩 레이트에 관계없이 전체 코드 비트열을 시스테메틱 비트 그룹과 상단 구성 부호화기의 패리티 비트들에 대한 그룹, 그리고 하단 구성 부호화기의 패리티 비트들에 대한 그룹으로 나누어서 수행하는 것을 특징으로 한다.
또한, 상기 반복 알고리즘은 다른 위치에 비하여 하나 큰 반복 팩터를 가져야 하는 비트의 개수와 시스테메틱 비트의 개수를 비교하여, 이 값이 시스테메틱 비트의 개수에 비하여 작거나 같은 경우까지는 이 모든 값들을 시스테메틱 비트 그룹에 할당하는 것을 특징으로 한다.
또한, 상기 반복 알고리즘은 다른 위치에 비하여 하나 큰 반복 팩터를 가져야 하는 비트의 개수와 시스테메틱 비트의 개수를 비교하여, 이 값이 시스테메틱 비트의 개수에 비하여 클 경우에는 그 큰 만큼의 양의 절반씩을 상단 구성 부호화기 그룹과 하단 구성 부호화기 그룹에 대하여 나누어 할당하는 것을 특징으로 한다.
이하 본 발명의 바람직한 일 실시 예에 따른 구성 및 작용을 첨부된 도면을 참조하여 설명한다.
본 발명에서는 다변 데이터 레이트(variable data rate) 모드에서는 최대 전송율을 제외한 나머지 전송율에서, 터보 부호를 사용할 경우에는 항상 1/5 레이트의 터보 부호를 사용하기로 약속한다.
예를 들어, 다변 데이터 레이트 모드에서 최대 전송율이 76.8kbps인 경우에 채널 환경의 악화로 1/2 레이트로 낮추어 전송하면 20ms 동안 744비트가 내려와 여기에 16비트의 순환 중첩 코드(CRC)와 8비트의 테일이 붙어 768 비트의 프레임이 채널 부호기로 입력된다.
이때, 1/5 레이트의 터보 부호기는 768비트의 프레임을 입력으로 받아서 총 3840 비트를 출력으로 내보내게 된다. 이 출력열의 길이는 현재 모드에서 사용하고 있는 인터리버의 길이 3072보다 큰 값이다. 따라서 이 경우에는 터보 부호기의 출 력열에 대하여 768(=3840-3072) 비트만큼의 펑쳐링을 수행해야 한다. 따라서, 유효 펑쳐링 거리는 5(=L/P=3840/768)가 된다.
결국 5비트마다 1비트 만큼의 펑쳐링을 수행하여 레이트 매칭을 처리할 수 있다. 이 경우, 실제적인 코딩율은 1/4 레이트로 생각할 수 있으며, 이로 인하여 시간 다이버시티 이득이 아닌 코딩 이득 자체를 얻는 것이 가능해진다.
또 다른 예로 데이터의 전송율을 1/4 레이트로 낮춘 경우, 상위에서 내려오는 정보는 20ms 동안 360 비트가 된다. 그리고 여기에 16비트의 순환 중첩 코드(CRC)와 8비트의 테일이 더해져, 한 프레임의 길이는 384비트가 된다. 여기서도 마찬가지로 1/5 레이트의 터보 부호를 사용하게 되면, 상위 계층으로부터 384 비트를 입력으로 받아 1920(=5*384) 개의 코드 비트들을 출력시킨다. 이 값을 3072 의 인터리버의 길이에 맞춰주기 위해서는 1152(=3072-1920) 비트만큼을 반복시켜주면 된다.
그리고, 상기 1/5 레이트의 터보 부호를 사용하는 방식은 가변 데이터 레이트(flexible data rate)에도 적용이 가능하다.
이때, 상기 가변 데이터 레이트(Flexible Data Rate) 또는 상기 다변 데이터 레이트(Variable Data Rate)에서는 원하는 인터리버의 길이와 비교하여 채널 부호화기의 출력열의 길이가 큰 경우에는 균일(uniform) 펑처링만을 사용하고, 채널 부호화기의 출력열의 길이가 인터리버의 길이보다 작은 경우에는 작은 양만큼의 균일(uniform) 반복만을 사용한다.
상기 균일 펑처링 또는 균일 반복만을 수행하도록 하는 것이 가능한 것은 1/2 레이트, 1/3 레이트, 1/4 레이트 모두 기본적으로 다음의 도 2와 같은 1/5 레이트의 부호로부터 펑처링을 통하여 얻은 부호이므로, 복호 과정에 있어서 아무런 하드웨어적인 복잡도의 증가없이 블라인드 레이트 검출(blind rate detection)을 수행할 수 있다.
또한, 본 발명에서는 컨벌루션 부호에 대하여 적용하는 경우에는 다변 데이터 레이트(variable data rate) 모드의 경우, 최대 전송율을 제외한 나머지 전송율에서는 항상 RC에 상관없이 1/4 레이트(rate)의 컨벌루션 부호를 사용하는 것으로 약속한다.
그리고, 터보 부호와 마찬가지로 가변 데이터 레이트(flexible data rate)에서도 항상 1/4 레이트의 컨벌루션 부호를 사용하는 것으로 약속한다.
이때에도 터보 부호와 마찬가지로 채널 부호화기의 출력열의 길이와 원하는 인터리버의 길이와의 레이트 매칭(rate matching)을 위해서는 항상 펑처링만을 사용하든지, 심볼 반복(repetition)만을 사용하든지 하는 한 단계의 레이트 매칭(rate matching) 방법을 사용한다.
즉, 도 3과 도 4에서와 같이 본 발명에 따른 레이트 매칭 블록은 펑처링 혹은 반복의 두 가지 과정 중 항상 한 가지만을 수행하게 된다. 상기 펑처링 혹은 반복되는 양은 "|N-L|" 만큼 이루어진다.
구체적으로, N-L값이 양수인 경우에는 블록 인터리버 사이즈가 크게 되므로, 심볼 반복에 의하여 인터리버 사이즈를 정합시키게 되고, N-L 값이 음수인 경우에는 펑처링을 통하여 블록 인터리버 사이즈를 정합시키게 된다.
도 3을 참조하면, 컨벌루션 부호에 대해 1/4 레이트의 채널 부호화가 이루어지면, 이 부호화된 비트열이 L길이로 출력이 된다.(S30)
이러한 부호 비트열인 블록 인터리버 사이즈 N보다 클 경우에는 펑처링이, N보다 작은 경우에는 심볼 반복만이 이루어진다.(S31)
그러므로, 상기 두 단계로 이루어지던 펑처링 과정이 하나의 단계를 통해 이루어져 다음 인터리빙 과정이 수행된다.(S32)
이와 같은 동작은 도 4에서 터보 부호를 이용하는 경우에도 마찬가지로 이루어진다.
단, 도 4가 도 3과 다른 점은 코딩 레이트가 달라지는 점인데, 이는 앞에서도 설명한 바와 같이 일반적으로 이용되는 1/2 레이트, 1/3 레이트, 1/4 레이트를 갖는 데이터들이 보통 1/5 레이트를 갖는 비트열로부터 펑쳐링 또는 심볼 반복되어 생성되기 때문이다.
본 발명에서는 1/5 레이트의 터보 코드를 만들기 위해 먼저 데이터 부분과 테일 부분의 펑처링 패턴을 다음 표 1과 같이 정의한다.
Figure 112000014027233-pat00004
그리고, 일반적으로 터보 코드에 대한 복호는 도 5에서와 같이 두 개의 구성 복호화기(constituent decoder)(50,52)를 이용하여 순환적으로 수행되므로, 이 두 구성 복호화기가 최적의 성능을 나타내기 위해서는 두 개의 구성 복호화기(constituent decoder)(50,52)의 복호 성능을 균형적으로 유지시켜주어야 한다.
이를 위해서 본 발명에서는 전체의 펑처링 양을 두 개의 구성 복호화기(constituent encoder)(50,52)의 패리티 비트들에 균등하게 나누어 줄 수 있는 펑처링 알고리즘을 제안한다.(1)
또한, 본 발명에서는 반복 복호에 있어서 시스테메틱 비트는 패리티 비트에 비하여 중요한 역할을 하기 때문에, 시스테메틱 비트에 대해서는 펑처링을 배제하는 펑처링 알고리즘을 제안한다.(2)
그리고, 각각의 복호기가 최대의 복호 성능으로 동작하도록 각각의 패리티 비트들에 대하여 균일한 간격의 펑처링을 수행하도록 하는 펑처링 알고리즘을 제안한다.(3)
상기 (1)~(3)을 만족하는 펑처링 알고리즘을 제시하기 위해 먼저 1/5 레이트의 코딩율을 가지는 코드 비트열을 5개의 코드 비트로 구성되는 코드 그룹으로 분리한다. 상기 코드 그룹은 서로 다른 비트 패턴을 갖는 두 가지 타입의 코드 그룹으로 나뉘어져 다음 알고리즘에서 이용된다. 상기 분리된 서로 다른 타입의 코드 그룹의 전체 개수는 채널 부호화기의 입력 비트열의 길이가 되며, 이 값을 여기서는 I라고 정의한다.
이하 정의되는 수학식들에서 I는 순환 중첩 코드(CRC)와, 테일을 포함하는 부호화기 입력열의 길이이고, 코딩 레이트의 역수는 5이다.
그리고, 이하 수학식들에서 L은 부호화기의 출력열의 길이로써, "5*I"의 값을 갖는다.
P는 터보 코드 또는 컨벌루션 코드로 부호화된 비트열이 인터리빙되어지기 위해서 필요로 하는 펑처링 양이다.
Figure 112000014027233-pat00005
P1 =
여기에서
Figure 112000014027233-pat00006
는 x를 넘지 않는 최대 정수값이다.
상기 수학식 1은 제1 타입의 코드 그룹에서 펑처링된 비트의 수이다.
Figure 112000014027233-pat00007
P2 =
여기에서 LCEIL{ x}RCEIL 는 x보다 크거나 같은 최소 정수값이다.
상기 수학식 2는 제2 타입의 코드 그룹에서 펑처링된 비트의 수이다.
K1,P2 = P mod I
상기 수학식 3은 전체 코드 그룹에서 상기 제2 타입 코드 그룹이 될 개수이다.
K1,GR1 = P1
상기 수학식 4는 제1 타입 코드 그룹에서 펑처링 양 P1이 발생될 개수이다.
K1,GR2 = K1,GR1 + 1
상기 수학식 5는 제2 타입 코드 그룹에서 펑처링 양 P2가 발생될 개수이다.
Figure 112000014027233-pat00008
상기 수학식 6은 (i-1)번째까지의 상기 펑처링 양 P2가 발생된 개수를 의미하고, i번째 코드 그룹에서 테스트를 수행하고자 할 경우 오프셋값으로 이용된다.
본 발명에서는 상기 수학식 1에서 수학식 6을 이용하여 다음 제1 알고리즘을 제안한다.
이하 알고리즘은 앞에서도 설명한 바와 같이 터보 코드를 이용한 펑처링 알고리즘을 서술한 것이다.
for(i=0;i<I;i++){
Figure 112000014027233-pat00009
if(((i+1)K1,P2)mod I<k1,P2) {
for(j=1;j<5 ;j++){
if((BRO2(j-1)+Oi)mod 4 ≤K1,GR1 ) puncture(5i+j)th bit
else{
for(j=1;j< 5;j++)
if((BRO2(j-1)+Oi)mod 4 < K1,GR1 ) puncture(5i+j)th bit
}
}
즉, 상기 알고리즘은 우선적으로 P1과 P2의 두 가지의 펑처링의 양을 정의하고 이 값들을 각각 코드 그룹들에 할당하게된다.
이때, P2는 전체 펑처링의 양을 코드 그룹의 길이로 나눈값보다 크거나 같은 최소의 정수로 정의한다.
그리고, P1은 전체 펑처링의 양을 코드 그룹의 길이로 나눈 수보다 작거나 같은 최대의 정수로 정의한다.
그리고, 최대의 균일성을 만족시켜주기 위해서 P2개의 펑처링을 할당해야 하는 코드 그룹의 위치를 전체 I개의 코드 그룹의 위치 중에서 균일하게 결정한다.
다음으로 위의 알고리즘을 통하여 테스트를 수행하면서 만일 P2개의 펑처링 을 수행해야 하는 코드 그룹으로 결정되면, 그 코드 그룹내의 비트 인덱스에 대한 비트 리버싱 함수와 현재까지의 펑처링의 개수를 오프셋으로 이용하여 실제적으로 코드 그룹내에서 펑처링이 될 인덱스를 P2개만큼 선택한다.
그리고, 시스테메틱 비트 위치에 대해서는 각각의 코드 그룹내에서의 테스트를 수행하지 않는다. 또한, 각각의 코드 그룹내에서의 펑처링의 위치를 결정하는 경우에는 코드 그룹내의 코드 비트 인덱스들에 대한 비트 리버싱을 통하여 코드 그룹내에서의 펑처링의 위치를 최대한으로 벌려 놓을 수 있게 된다.
상기 제1 펑처링 알고리즘은 코드 그룹 단위로 펑처링 과정을 수행하지만, 앞서 설명한 (1)~(3)의 조건을 만족하기에는 불충분하므로, 또 다른 제2 펑처링 알고리즘을 제시하고자 한다. 그러기 위해서는 먼저 전체의 코드 비트열을 시스테매틱 비트열과 상단 구성 부호화기(RSC)의 패리티 비트열들, 그리고 하단 구성 부호화기(RSC)의 비트열들로 묶어서 정의한다.
예를 들어, 1/5 레이트의 터보 부호의 출력열이 다음 "x0,y0,z0,y'0,z'0,x1,y1 ,z1,y'1,z'1..."의 비트 형태로 쓰는 것이 가능하다고 하자.
그러면, 상기 출력열들은 세 개의 그룹으로 생각할 수 있다. 즉, 시스테메틱 비트 그룹 {x0,x1,x2,x3,....}과, 제1 부호화기의 출력열들의 그룹 {y0,z0,y1,z1,y2,z2,y3,z 3....}과, 그리고 제2 부호화기의 출력열들의 그룹{y'0,z'0,y'1,z'1,y'2,z'2, y'3 ,z'3....}으로 나누어서 생각할 수 있다.
상기 세 종류의 코드 그룹 중 시스테매틱 그룹에는 펑처링을 배제하고, 나머지 두 개의 그룹에 전체의 펑처링의 양을 절반씩 할당하는 방법을 사용하고자 한다.
이러한 방법을 통하여, 시스테매틱 비트에 대한 펑처링의 배제라는 조건 (1)이 만족되며, 두 개의 복호기에 대한 균형 펑처링(balanced puncturing) 조건인 조건 (2)가 만족된다. 마지막 조건 (3)은 각각의 복호기에 대한 균일 펑처링(uniform puncturing) 조건이었다. 따라서 조건 (3)을 만족하기 위하여 각각의 그룹에 대한 균일 펑처링(uniform puncturing) 알고리즘을 적용한다.
이하 수학식에서 I는 테일과 예약 비트를 포함하는 정보 비트열의 길이이다.
P는 L-N만큼의 필요한 펑처링 양이다.
Figure 112000014027233-pat00010
PD1 =
상기 수학식 7은 상단의 구성 복호기에 대한 펑처링의 양이다.
Figure 112000014027233-pat00011
PD2 =
상기 수학식 8은 하단의 복호기에 대한 펑처링의 양이다.
이와 같은 수학식 7과 수학식 8을 이용한 제2 알고리즘은 다음과 같다.
for(i=0;i<L;i++){
j = i - 3
Figure 112000014027233-pat00012
if(0 < (i mod 5) < 3)&((j*PD1) mod 2I < PD1) puncture ith bit
else if(2 < (i mod 5) < 5)&((j*PD2) mod 2I < PD2) puncture ith bit
)
즉, 상기 제2 알고리즘은 각각의 비트 인덱스 i에 대한 조사를 통하여 그 비트 인덱스가 상단 구성 부호화기(RSC)의 그룹에 속하는지 혹은 하단 구성 부호화기(RSC)의 그룹에 속하는지를 알 수 있다.
그리고, 상기 인덱스 j는 상단 구성 부호화기(RSC) 그룹내의 순차적인 번호, 또는 하단 구성 부호화기(RSC) 그룹내의 순차적인 번호를 알려준다.
예를 들어, I가 4인 경우 1/5 레이트 터보 코드의 출력열이 길이는 20이 된다.
그러면, 코드 비트에 대한 인덱스는 0,1,2,3,...,17,18,19가 된다.
이때, 위의 알고리즘 상에서 코드 인덱스 i와 상단 구성 부호화기에 대한 그룹 내에서의 순차 인덱스 j와의 관계와 하단 구성 부호화기에 대한 그룹 내에서의 순차 인덱스 j와의 관계는 다음과 같이 정의된다.
상단 구성 부호화기에 대한 인덱스 사상이 "1,2,6,7,11,12,16,17(i) ------- >1,2,3,4,5,6,8(j)"으로 사상되고, 하단 구성 부호화기에 대한 인덱스 사상이 "3,4,8,9,13,14,18,19(i)------>3,4,5,6,7,8,9,10(j)"으로 사상되는 관계를 갖는다.
이때, 상기 인덱스 j는 "i-3
Figure 112000014027233-pat00013
"에 의하여 구하여진다.
위의 사상 관계를 이용하고, 상단 구성 부호화기(RSC)에 대한 그룹 조사와 j 인덱스에 대한 균일 펑처링 조사를 행하게 되면 결과적인 비트 인덱스 i에 대한 펑처링 테스트가 마쳐지게 된다.
이때, 상기 인덱스 j에 대한 균일 펑처링 조사를 수행하는 경우, 전체 정보 비트의 길이의 두 배인 2I값과의 모듈로 연산을 통하여 수행된다는 점이다.
상기 제2 알고리즘은 일반적인 1/n 터보 부호에 대해서도 적용 가능한 이하 제3 알고리즘으로 변형 가능하다.
이하 제3 알고리즘에서는 제2 알고리즘과 마찬가지로 수학식 7과 수학식 8의 상단, 하단 구성 복호기에 대한 펑처링의 수학식을 이용한다.
이외에도 각 구성 부호화기의 코딩 레이트의 인버스 nc를 "
Figure 112000014027233-pat00014
"와 같이 정의하고, 이 코딩 레이트의 인버스 nc를 이용하여 인덱스 j를 다음 수학식 9와 같이 정의한다.
Figure 112000014027233-pat00015
j = i-nc
그리고, 두 가지의 사건 A,B에 대하여 이하와 같이 정의하고 이 두 사건이 독립적으로 발생되는 해당 비트 위치에서 펑처링을 수행한다.
사건 "A" : (0 < (i mod n) < nc)&((j*PD1) mod ((nc-1)*I) < PD1)
사건 "B" : ((nc-1) < (i mod n) < n)&((j*PD2) mod ((nc -1)*I) < PD2)
즉, 0부터 L까지 증가하는 경우, 상기 사건 "A" 또는 "B"가 발생되는 경우에 i번째 비트를 펑처링하는 알고리즘으로서 모든 코딩 레이트의 터보 코드에 이용 가능하다.
또한 상기 제3 알고리즘은 1/5 레이트 부호에 대한 반복(repetition) 알고리즘의 설계시에도 적용이 가능하다.
이때, 시스테메틱 비트 성분에 대한 반복에 어느 정도의 우선 순위를 주는 것이 전체적인 복호 성능의 향상에 있어서 중요한 역할을 하게 된다. 따라서, 우선적으로 두 개의 반복 팩터 M1과 M2를 정의한다. 그리고, 그 중 M2의 반복 팩터를 가져야 하는 개수를 K1이라고 하고 이하에서 정의하였다.
이하 수학식에서 I는 테일과 예약 비트를 포함하는 정보 비트열의 길이이다.
Figure 112000014027233-pat00016
M1 =
Figure 112000014027233-pat00017
M2 =
K1 = N mod L
상기 수학식 12에서 상기 K1을 시스테메틱 비트 그룹과 상단 구성 부호화기 비트 그룹, 하단 구성 부호화기의 비트 그룹들에 대하여 다음의 수학식 13과 같은 관계로 할당된다.
K1,x = K1 K1 ≤I
I otherwise
상기 수학식 13은 시스테메틱 비트에 대해 상기 반복 팩터 M2를 갖는 비트의 개수이다.
K1,D1 = 0 K1 ≤I
Figure 112000014027233-pat00018
otherwise
상기 수학식 14는 상단 구성 부호화기 비트에 대해 상기 반복 팩터 M2를 갖는 비트의 개수이다.
K1,D2 = 0 K1 ≤I
Figure 112000014027233-pat00019
otherwise
상기 수학식 15는 하단 구성 부호화기 비트에 대해 상기 반복 팩터 M2를 갖는 비트의 개수이다.
상기 수학식 13과, 수학식 14와, 수학식 15를 통하여 상기 전체 코드 비트열에 대하여 100/n 만큼까지의 추가적인 양을 시스테메틱 비트에 대하여 할당하게 됨을 확인할 수 있다.
이러한 수학식 13에서 수학식 15를 이용하여 이하 펑처링 알고리즘과 유사한 방법으로 각각의 시스테메틱 코드 그룹과 상단 구성 부호화기(RSC)의 코드 그룹, 그리고 하단 구성 부호화기(RSC)의 코드 그룹내에서의 균일성을 맞춰주기 위한 다음 제4 알고리즘을 제안한다.
for(i=0;i<L;i++){
j = i - 3
Figure 112000014027233-pat00020
if((i mod 5)=0)&((i*K1,x/5) mod I < K1,x)) ∥
((0 < (i mod 5) < 3)&((j*K1,D1) mod 2I < K1,D1))∥
((2 < (i mod 5) < 5)&((j*K1,D2) mod 2I < K1,D2))
repeat ith bit with repetition factor M2
otherwise repeat ith bit with repetition factor M1
}
위의 알고리즘은 일반적인 1/n 레이트 터보 코드에 대하여 일반적인 형태로 다음 제 4 알고리즘을 구성한다.
즉, 구성 부호화기의 코딩 레이트의 인버스 nc를 "
Figure 112000014027233-pat00021
"와 같이 정의하고, 상기 수학식 10, 수학식 11의 서로 다른 반복 팩터 M1과, M2를 이용하고, 상기 수학식 12의 반복 팩터 M2를 갖는 비트 개수를 이하 알고리즘에서 이용한다.
또한, 상기 수학식 13의 시스테메틱 비트 그룹과, 수학식 14의 상단 구성 부호화기 비트 그룹과, 상기 수학식 15의 하단 구성 부호화기 비트 그룹에서 상기 반복 팩터 M2를 갖는 비트 개수를 이하 알고리즘에서 이용한다.
그리고, 이하 수학식 16에서는 상기 상단 구성 부호화기 그룹내 또는 상기 하단 구성 부호화기 그룹내 순차적인 번호를 알려주는 인덱스 j에 대하여 다음과 같이 정의한다.
Figure 112000014027233-pat00022
j = i-nc
사건 "A" : ((i mod n=0) &((i*K1,x/n) mod I < K1,x))
사건 "B" : ((0 < (i mod n) < nc) & ((j*K1,D1) mod (nc -1)*I < K1,D1))
사건 "C" : ((nc-1 < (i mod n) < n) & ((j*K1,D2) mod (nc -1)*I < K1,D2))
상기 알고리즘에서 0부터 코딩 부호화열의 길이 L까지 증가하는 인덱스 i에 대해 사건 A 또는 B 또는 C가 발생하면 반복 팩터 M2를 갖는 i번째 비트를 반복한다.
그렇지 않은 경우에는 반복 팩터 M1에 의해 i번째 비트를 반복한다.
만일 1/4 레이트의 컨벌루션 부호를 사용한다고 했을 때의 펑처링 알고리즘은 다음과 같은 간단한 과정으로 수행된다.
for(i=0;i<L;i++){
if(((i+1)*P) mod L < P) puncture ith bit
}
상기 L은 채널 부호화기의 출력열의 길이를 나타내며, P(= L-N)는 상기 부호화기 출력열에서 펑처링이 되어야 할 양을 나타낸다. 그리고, i는 비트의 인덱스를 나타내는 값으로 0에서 L-1 사이의 값을 가진다.
이상의 설명에서와 같이 본 발명은 현재의 차세대 통신 시스템(3GPP2)에서 가변 데이터 레이트나 보조 채널에 대한 다변 데이터 레이트 모드 혹은 두 개 모두 가 지원되는 경우, 심볼 반복에 의한 시간 다이버시티 이득 이외에도 실제적인 코드율의 감소로 인한 코딩 이득을 얻을 수 있으며, 이로 인하여 요구되는 전송 전력을 낮출 수 있다.
그리고, 코딩 이득의 증가로 인한 요구 전송 전력의 감소로 인하여 시스템의 로딩(loading)을 보다 효율적으로 관리하는 것이 가능해진다.
이상 설명한 내용을 통해 당업자라면 본 발명의 기술 사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다.
따라서, 본 발명의 기술적 범위는 실시예에 기재된 내용으로 한정하는 것이 아니라 특허 청구 범위에 의해서 정해져야 한다.

Claims (39)

  1. 특정 데이터 레이트(data rate)를 갖는 입력 데이터를 정해진 코드 레이트(code rate)로 채널 코딩하는 특정 채널에 있어서,
    다변 또는 가변 데이터 레이트 모드(variable or flexible data rate mode)에서, 상기 특정 데이터 레이트가 아닌 데이터 레이트를 갖는 입력 데이터를 상기 정해진 코드 레이트를 조정한 코드 레이트로 채널 코딩하는 채널 코딩 단계; 및
    상기 채널 코딩 단계에서 채널 코딩된 데이터열(data stream)의 길이를 특정 인터리버 크기(interleaving size)와 매칭시키는 레이트 매칭 단계를 포함하는 데이터 레이트 매칭 방법.
  2. 제1항에 있어서,
    상기 특정 인터리버 크기에 매칭된 데이터에 대해 인터리빙을 수행하는 단계를 더 포함하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  3. 제1항에 있어서,
    상기 채널 코딩 단계에서 채널 코딩된 데이터열을 펑처링(puncturing)하거나 심볼 반복(symbol repetition)을 수행함으로써 상기 채널 코딩된 데이터열의 크기를 상기 특정 인터리버 크기에 매칭하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  4. 제1항 내지 제3항의 어느 한 항에 있어서,
    상기 채널 코딩은 터보 코딩(turbo coding)인 것을 특징으로 하는 데이터 레이트 매칭 방법.
  5. 제1항 내지 제3항의 어느 한 항에 있어서,
    상기 채널 코딩은 콘볼루션 코딩(convolution coding)인 것을 특징으로 하는 데이터 레이트 매칭 방법.
  6. 제1항 내지 제3항의 어느 한 항에 있어서,
    상기 채널 코딩 단계에서 조정된 코드 레이트는 상기 정해진 코드 레이트보다 더 낮은 것을 특징으로 하는 데이터 레이트 매칭 방법.
  7. 제1항에 있어서,
    상기 특정 인터리버 크기는 다변 데이터 레이트 모드에서 지원 가능한 입력 데이터 레이트의 최대 데이터 레이트에 해당하는 인터리버 크기인 것을 특징으로 하는 데이터 레이트 매칭 방법.
  8. 제4항에 있어서,
    상기 채널 코딩 단계에서 채널 코딩된 데이터열의 길이가 상기 특정 인터리버 크기보다 큰 경우에는 상기 채널 코딩된 데이터열의 길이에서 상기 특정 인터리버 크기를 뺀만큼을 상기 채널 코딩된 데이터열에서 펑처링하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  9. 제8항에 있어서,
    상기 펑처링은 상기 채널 부호화된 데이터열을 각각의 코드 그룹 단위로 나누어 수행되는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  10. 제9항에 있어서,
    각 코드 그룹에 할당된 펑처링의 양을 코드 그룹 내에서 시스테메틱 비트(systematic bits)를 제외한 나머지 비트들의 인덱스에 대한 비트 반전 연산과 해당 그룹까지의 전체 펑처링 양의 덧셈을 통하여 각 코드 그룹 내에서의 펑처링의 위치를 결정하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  11. 제8항에 있어서,
    상기 펑처링은, 상기 채널 코딩 단계에서 채널 코딩된 데이터열의 시스테메틱 비트 그룹과, 상단 구성 부호화기의 패리티 비트들(parity bits)에 대한 비트 그룹과, 하단 구성 부호화기의 패리티 비트들에 대한 비트 그룹으로 나누어 수행되는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  12. 제11항에 있어서,
    상기 전체 펑처링 양을 전체 코드 그룹의 개수로 나눈 값을 넘지 않는 최대의 정수만큼 펑처링해야 하는 코드 그룹을 제1 타입 코드 그룹으로, 상기 전체 펑처링 양을 상기 전체 코드 그룹의 개수로 나눈 값보다 크거나 같은 최소 정수만큼 펑처링해야 하는 코드 그룹을 제2 타입 코드 그룹으로 나누어 각각이 균일하게 배치되도록 하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  13. 제11항에 있어서,
    상기 시스테메틱 비트들에 대한 비트 그룹에서의 펑처링을 배제하고, 상단 구성 부호화기의 패리티 비트들에 대한 비트 그룹과 하단 구성 부호화기의 패리티 비트들에 대한 비트 그룹에 대하여 전체 펑처링 양의 절반씩을 나누어주는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  14. 제11항에 있어서,
    상기 펑처링을 위하여 상기 채널 코딩 단계에서 채널 코딩된 데이터열의 코드 비트의 순차적인 인덱스 i로부터 각각의 코드 비트가 어떤 비트 그룹에 속하는지를 판정하기 위하여, 각 비트 그룹 내에서의 순차 인덱스 j는 "i-nc
    Figure 112006095358628-pat00024
    "(여기서, n은 코딩 레이트 인버스이고, 각 구성 부호화기의 코딩 레이트의 인버스 nc는 "
    Figure 112006095358628-pat00032
    "임)에 의해 결정되는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  15. 제14항에 있어서,
    상기 채널 코딩 단계에서 채널 코딩된 데이터열의 순차적인 비트 인덱스(i)가 상단 구성 부호화기 비트 그룹에 속한 경우에는 상기 순차적인 비트 인덱스를 상단 구성 부호화기 비트 그룹내의 순차 비트 인덱스(j)로 사상시키고, 상기 채널 부호화열의 순차적인 비트 인덱스(i)가 하단 구성 부호화기 비트 그룹에 속한 경우에는 상기 순차적인 비트 인덱스를 하단 구성 부호화기 비트 그룹내의 순차 비트 인덱스(j)로 사상시키는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  16. 제14항에 있어서,
    상기 각각의 구성 부호화기 내에 순차적으로 사상된 비트 인덱스 이후에 각 구성 부호화기 내에서의 순차적으로 사상된 비트 인덱스에 대한 검사를 통하여 각 구성 부호화기의 패리티 비트들에 대하여 균일 펑처링을 수행하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  17. 제4항에 있어서,
    상기 채널 코딩 단계에서 채널 코딩된 데이터열의 길이가 상기 특정 인터리버 크기보다 작은 경우에는 상기 특정 인터리버 크기에서 상기 채널 코딩된 데이터열의 길이 뺀만큼을 반복(repetition)하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  18. 이동통신 시스템에서 특정 채널을 통한 데이터 전송을 위하여 데이터 레이트를 매칭하는 방법에 있어서,
    다변 또는 가변 데이터 레이트 모드(variable or flexible data rate mode)에서, 입력 데이터의 데이터 레이트에 따라 코드 레이트를 가변시켜 채널 코딩을 수행하는 채널 코딩 단계;
    상기 채널 코딩된 데이터열의 길이를 특정 인터리버 크기에 정합하도록 레이트 매칭을 수행하는 레이트 매칭 단계; 및
    상기 레이트 매칭된 출력 데이터에 대해 인터리빙을 수행하는 인터리빙 단계를 포함하는 데이터 레이트 매칭 방법.
  19. 제18항에 있어서,
    상기 레이트 매칭 단계에서 채널 코딩된 데이터열을 펑처링(puncturing)하거나 심볼 반복을 수행함으로써 채널 코딩된 데이터열의 크기를 상기 특정 인터리버 크기에 매칭하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  20. 제18항 또는 제19항에 있어서,
    상기 특정 인터리버 크기는 상기 특정 채널에서 지원 가능한 최대 데이터 레이트에 정합된 것을 특징으로 하는 데이터 레이트 매칭 방법.
  21. 제20항에 있어서,
    상기 채널 코딩은 터보 코딩(turbo coding)인 것을 특징으로 하는 데이터 레이트 매칭 방법.
  22. 제20항에 있어서,
    상기 채널 코딩은 콘볼루션 코딩(convolution coding)인 것을 특징으로 하는 데이터 레이트 매칭 방법.
  23. 제21항에 있어서,
    상기 채널 코딩된 데이터열의 길이가 상기 특정 인터리버 크기보다 큰 경우에는 상기 채널 코딩된 데이터열의 길이에서 상기 특정 인터리버 크기를 뺀만큼을 상기 채널 코딩된 데어터열에서 펑처링하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  24. 제23항에 있어서,
    상기 채널 코딩된 데이터열을 코드 그룹 단위로 나누어 펑처링을 수행하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  25. 제24항에 있어서,
    각 코드 그룹에 할당된 펑처링의 양을 코드 그룹 내에서 시스테메틱 비트(systematic bits)를 제외한 나머지 비트들의 인덱스에 대한 비트 반전 연산과 해다 그룹까지의 전체 펑처링 양의 덧셈을 통하여 각 코드 그룹 내에서의 펑처링의 위치를 결정하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  26. 제25항에 있어서,
    상기 채널 코딩된 데이터열의 시스테메틱 비트 그룹과, 상단 구성 부호화기의 패리티 비트들(parity bits)에 대한 비트 그룹과, 하단 구성 부호화기의 패리티 비트들에 대한 비트 그룹으로 나누어 펑처링을 수행하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  27. 제26항에 있어서,
    상기 전체 펑처링 양을 전체 코드 그룹의 개수로 나눈 값을 넘지 않는 최대의 정수만큼 펑처링해야 하는 코드 그룹을 제1 타입 코드 그룹으로, 상기 전체 펑처링 양을 상기 전체 코드 그룹의 개수로 나눈 값보다 크거나 같은 최소 정수만큼 펑처링해야 하는 코드 그룹을 제2 타입 코드 그룹으로 나누어 각각이 균일하게 배치되도록 하는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  28. 제27항에 있어서,
    상기 시스테메틱 비트들에 대한 비트 그룹에서의 펑처링을 배제하고, 상단 구성 부호화기의 패리티 비트들에 대한 비트 그룹과 하단 구성 부호화기의 패리티 비트들에 대한 비트 그룹에 대하여 전체 펑처링 양의 절반씩을 나누어주는 것을 특징으로 하는 데이터 레이트 매칭 방법.
  29. 이동통신 시스템에서 특정 채널을 통해 데이터를 전송하기 위하여 입력 데이터를 처리하는 장치에 있어서,
    다변 또는 가변 데이터 레이트 모드에서, 입력 데이터의 데이터 레이트에 따라 코드 레이트를 가변시켜 채널 코딩을 수행하는 인코더(encoder);
    상기 채널 코딩된 데이터열의 길이를 특정 인터리버 크기에 정합하도록 레이트 매칭을 수행하는 레이트 매칭 블록(rate matching block); 및
    상기 레이트 매칭된 출력 데이터에 대해 인터리빙을 수행하는 인터리버(interleaver)를 구비한 데이터 처리 장치.
  30. 제29항에 있어서,
    상기 레이트 매칭 블록은 채널 코딩된 데이터열을 펑처링(puncturing)하거나 심볼 반복을 수행함으로써 상기 인코더에 의해 채널 코딩된 데이터열의 크기를 상기 특정 인터리버 크기에 매칭하는 것을 특징으로 하는 데이터 처리 장치.
  31. 제29항 또는 제30항에 있어서,
    상기 특정 인터리버 크기는 상기 특정 채널에서 지원 가능한 최대 데이터 레이트에 정합된 것을 특징으로 하는 데이터 처리 장치.
  32. 제31항에 있어서,
    상기 인코더는 터보 인코더(turbo encoder)인 것을 특징으로 하는 데이터 처리 장치.
  33. 제31항에 있어서,
    상기 인코더는 콘볼루션 인코더(convolution encoder)인 것을 특징으로 하는 데이터 처리 장치.
  34. 제31항에 있어서,
    상기 인코더에 의해 채널 코딩된 데이터열의 길이가 상기 특정 인터리버 크기보다 큰 경우에는 상기 채널 코딩된 데이터열의 길이에서 상기 특정 인터리버 크기를 뺀만큼을 상기 채널 코딩된 데어터열에서 펑처링하는 것을 특징으로 하는 데이터 처리 장치.
  35. 제34항에 있어서,
    상기 채널 코딩된 데이터열을 코드 그룹 단위로 나누어 펑처링을 수행하는 것을 특징으로 하는 데이터 처리 장치.
  36. 제35항에 있어서,
    각 코드 그룹에 할당된 펑처링의 양을 코드 그룹 내에서 시스테메틱 비트(systematic bits)를 제외한 나머지 비트들의 인덱스에 대한 비트 반전 연산과 해당 그룹까지의 전체 펑처링 양의 덧셈을 통하여 각 코드 그룹 내에서의 펑처링의 위치를 결정하는 것을 특징으로 하는 데이터 처리 장치.
  37. 제34항에 있어서,
    상기 채널 코딩된 데이터열의 시스테메틱 비트 그룹과, 상단 구성 부호화기의 패리티 비트들(parity bits)에 대한 비트 그룹과, 하단 구성 부호화기의 패리티 비트들에 대한 비트 그룹으로 나누어 펑처링을 수행하는 것을 특징으로 하는 데이터 처리 장치.
  38. 제37항에 있어서,
    상기 전체 펑처링 양을 전체 코드 그룹의 개수로 나눈 값을 넘지 않는 최대의 정수만큼 펑처링해야 하는 코드 그룹을 제1 타입 코드 그룹으로, 상기 전체 펑처링 양을 상기 전체 코드 그룹의 개수로 나눈 값보다 크거나 같은 최소 정수만큼 펑처링해야 하는 코드 그룹을 제2 타입 코드 그룹으로 나누어 각각이 균일하게 배치되도록 하는 것을 특징으로 하는 데이터 처리 장치.
  39. 제38항에 있어서,
    상기 시스테메틱 비트들에 대한 비트 그룹에서의 펑처링을 배제하고, 상단 구성 부호화기의 패리티 비트들에 대한 비트 그룹과 하단 구성 부호화기의 패리티 비트들에 대한 비트 그룹에 대하여 전체 펑처링 양의 절반씩을 나누어주는 것을 특징으로 하는 데이터 처리 장치.
KR1020000038388A 2000-07-05 2000-07-05 데이터 레이트 매칭 방법 및 데이터 처리 장치 KR100720566B1 (ko)

Priority Applications (16)

Application Number Priority Date Filing Date Title
KR1020000038388A KR100720566B1 (ko) 2000-07-05 2000-07-05 데이터 레이트 매칭 방법 및 데이터 처리 장치
EP10012474A EP2293452B1 (en) 2000-07-05 2001-07-03 Method of puncturing a turbo coded data block
AU54178/01A AU768016B2 (en) 2000-07-05 2001-07-03 Method of configuring transmission in mobile communication system
EP01116124A EP1176725B1 (en) 2000-07-05 2001-07-03 Method of configuring transmission in mobile communication system
JP2001204139A JP4138274B2 (ja) 2000-07-05 2001-07-04 移動通信システムにおける伝送構成方法
CN2008101459461A CN101369864B (zh) 2000-07-05 2001-07-05 在移动通信系统中配置传输的方法
BR0105804-5A BR0105804A (pt) 2000-07-05 2001-07-05 Método para a configuração de um enlace de transmissão em um sistema 3gpp2, dispositivo de enlace de transmissão, codificador turbo, método de emparelhamento e dipositivo de comunicação
CNB011200243A CN100464510C (zh) 2000-07-05 2001-07-05 在移动通信系统中配置传输的方法
US09/898,040 US7127661B2 (en) 2000-07-05 2001-07-05 Method of configuring transmission in mobile communication system
CN2008101459476A CN101369865B (zh) 2000-07-05 2001-07-05 在移动通信系统中配置传输的方法
BRPI0105804-5A BRPI0105804B1 (pt) 2000-07-05 2001-07-05 Method for pairing rate of an output bits current in a transmitter containing a channel encoder and a trainer in a mobile communication system
US10/724,767 US7266752B2 (en) 2000-07-05 2003-12-02 Method of configuring transmission in mobile communication system
AU2004200702A AU2004200702B2 (en) 2000-07-05 2004-02-23 Method of configuring transmission in mobile communication system
US11/231,823 US7636878B2 (en) 2000-07-05 2005-09-22 Method of configuring transmission in mobile communication system
US11/476,689 US7712012B2 (en) 2000-07-05 2006-06-29 Method of configuring transmission in mobile communication system
JP2007097882A JP4615541B2 (ja) 2000-07-05 2007-04-03 移動通信システムにおける伝送構成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000038388A KR100720566B1 (ko) 2000-07-05 2000-07-05 데이터 레이트 매칭 방법 및 데이터 처리 장치

Publications (2)

Publication Number Publication Date
KR20020004479A KR20020004479A (ko) 2002-01-16
KR100720566B1 true KR100720566B1 (ko) 2007-05-22

Family

ID=19676437

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000038388A KR100720566B1 (ko) 2000-07-05 2000-07-05 데이터 레이트 매칭 방법 및 데이터 처리 장치

Country Status (2)

Country Link
KR (1) KR100720566B1 (ko)
CN (2) CN101369864B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10469239B2 (en) 2014-08-29 2019-11-05 Huawei Technologies Co., Ltd. System and method for semi-orthogonal multiple access

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100880630B1 (ko) * 2002-09-11 2009-01-30 엘지전자 주식회사 통신 시스템에서의 전송 체인 및 그를 이용한 물리 채널포맷 전송 방법 및 검출 방법
KR100678580B1 (ko) 2005-10-14 2007-02-02 삼성전자주식회사 통신시스템에서 터보부호의 성능을 향상하기 위한 장치 및방법
KR101233175B1 (ko) * 2006-11-08 2013-02-15 엘지전자 주식회사 연속적인 길이를 가지는 터보 코드 인코딩 및 디코딩 방법
CN102067640B (zh) * 2009-03-20 2014-04-30 富士通株式会社 信道交织方法和信道交织器
CN101860412B (zh) * 2009-04-13 2015-10-21 中兴通讯股份有限公司 子包处理方法、编码调制方法、处理器、调制编码系统
US9178658B2 (en) 2009-05-06 2015-11-03 Futurewei Technologies, Inc. System and method for channel interleaver and layer mapping in a communications system
CN109257139B (zh) * 2017-07-14 2021-10-01 深圳市中兴微电子技术有限公司 一种物理层数据的发送、接收方法及其装置
CN109560820B (zh) * 2018-11-23 2021-07-13 福州大学 一种联合信道编码和物理层网络编码的译码简化方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0918449A (ja) * 1995-06-27 1997-01-17 Sony Corp 符号分割多重化送信装置、符号分割多重化受信装置及び符号分割多重化送受信システム
WO1998019405A1 (en) 1996-10-30 1998-05-07 Qualcomm Incorporated Method and apparatus for performing data rate determination
KR20000005958A (ko) * 1998-06-05 2000-01-25 윤종용 레이트매칭을위한채널부호화장치및방법
KR20000056186A (ko) * 1999-02-13 2000-09-15 윤종용 가변 데이터레이트의 채널 구조를 가지는 부호분할다중접속 통신시스템의 확산부호 할당 방법 및 그에 따른 장치

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3239880B2 (ja) * 1998-11-02 2001-12-17 日本電気株式会社 レートマッチング方法及びデジタル通信システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0918449A (ja) * 1995-06-27 1997-01-17 Sony Corp 符号分割多重化送信装置、符号分割多重化受信装置及び符号分割多重化送受信システム
WO1998019405A1 (en) 1996-10-30 1998-05-07 Qualcomm Incorporated Method and apparatus for performing data rate determination
KR20000005958A (ko) * 1998-06-05 2000-01-25 윤종용 레이트매칭을위한채널부호화장치및방법
KR20000056186A (ko) * 1999-02-13 2000-09-15 윤종용 가변 데이터레이트의 채널 구조를 가지는 부호분할다중접속 통신시스템의 확산부호 할당 방법 및 그에 따른 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
EPO조사보고서

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10469239B2 (en) 2014-08-29 2019-11-05 Huawei Technologies Co., Ltd. System and method for semi-orthogonal multiple access

Also Published As

Publication number Publication date
CN101369865A (zh) 2009-02-18
CN101369864B (zh) 2010-12-01
CN101369864A (zh) 2009-02-18
CN101369865B (zh) 2010-10-13
KR20020004479A (ko) 2002-01-16

Similar Documents

Publication Publication Date Title
JP4138274B2 (ja) 移動通信システムにおける伝送構成方法
KR100299132B1 (ko) 서비스 품질에 따른 프레임 데이터 처리를 위한 터보 부호화/복호화 장치 및 그 방법
US7237179B2 (en) Data rate matching device
JP3825750B2 (ja) 畳み込みエンコード化ビットを変調前にシンボルに割り当てる方法およびシステム
KR100720566B1 (ko) 데이터 레이트 매칭 방법 및 데이터 처리 장치
EP1834411A1 (en) Memory efficient interleaving/de-interleaving utilising the periodicity of the mapping function
KR100248379B1 (ko) 단일 콘케티네이티드 부호기를 이용한 통신 장치 및 이를 이용한 통신 방법
EP1396096A1 (en) System and method for interleaving data in a wireless transmitter
US20050160349A1 (en) Channel coding method and device
JP3450292B2 (ja) トランスポートチャネルの多重化方法
JP3566651B2 (ja) 信号の符号化
KR100387058B1 (ko) 데이터 통신시스템에서 심볼 삽입에 의한 가변데이터전송율 정합 방법 및 장치
KR100781240B1 (ko) 차세대 이동통신 시스템에서의 데이터 레이트 매칭 방법
KR100672347B1 (ko) 가변 데이터 레이트 매칭 방법
KR100797456B1 (ko) 데이터 레이트 매칭 방법
KR100720539B1 (ko) 레이트 매칭 방법
KR100404181B1 (ko) 상향 링크에서의 레이트 매칭 방법 및 장치
KR20020011499A (ko) 가변 데이터 레이트 매칭 방법
KR100813038B1 (ko) 전송 체인에서의 데이터 처리 방법 및 그 장치
KR20080010736A (ko) 광대역 무선접속 통신시스템에서 길쌈 터보 부호의 부호화장치 및 방법
KR20010009158A (ko) 상향 링크에서의 채널화 코드 레이트 매칭 방법
AU2007202113B2 (en) Method of configuring transmission in mobile communication system
KR20030056550A (ko) 데이터 통신 시스템의 전송률 정합 장치 및 그 방법
KR20020000614A (ko) 적응 레이트 펑쳐링 방법
AU2004200702A1 (en) Method of configuring transmission in mobile communication system

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
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: 20130424

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140424

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150424

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160422

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee