KR101165638B1 - 연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙방법 및 이에 의한 터보 인코더 - Google Patents

연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙방법 및 이에 의한 터보 인코더 Download PDF

Info

Publication number
KR101165638B1
KR101165638B1 KR1020060103483A KR20060103483A KR101165638B1 KR 101165638 B1 KR101165638 B1 KR 101165638B1 KR 1020060103483 A KR1020060103483 A KR 1020060103483A KR 20060103483 A KR20060103483 A KR 20060103483A KR 101165638 B1 KR101165638 B1 KR 101165638B1
Authority
KR
South Korea
Prior art keywords
length
interleaver
sequence
index
basic
Prior art date
Application number
KR1020060103483A
Other languages
English (en)
Other versions
KR20080036789A (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 KR1020060103483A priority Critical patent/KR101165638B1/ko
Priority to PCT/KR2007/005251 priority patent/WO2008051019A2/en
Priority to EP07833560A priority patent/EP2089975A4/en
Priority to US12/446,792 priority patent/US8533542B2/en
Publication of KR20080036789A publication Critical patent/KR20080036789A/ko
Application granted granted Critical
Publication of KR101165638B1 publication Critical patent/KR101165638B1/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/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
    • 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/2771Internal interleaver for turbo 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/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/2703Coding, 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 the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • 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/275Interleaver wherein the permutation pattern is obtained using a congruential operation of the type y=ax+b modulo c
    • H03M13/2753Almost regular permutation [ARP] interleaver
    • 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/2789Interleaver providing variable interleaving, e.g. variable block sizes
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • H03M13/2993Implementing the return to a predetermined state, i.e. trellis termination
    • 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/6356Error control coding in combination with rate matching by repetition or insertion of dummy data, i.e. rate reduction
    • 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
    • H03M13/6544IEEE 802.16 (WIMAX and broadband wireless access)

Landscapes

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

Abstract

본 발명은 연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙 방법 및 이에 의한 터보 인코더에 대한 것이다. 본 발명에 따르면 ARP 변동 벡터 주기의 배수 길이를 가지도록 미리 설정된 기본 인터리버 세트 중 적절한 길이의 기본 인터리버를 선택하고, 이 기본 인터리버 길이를 요구되는 길이를 가지도록 더미 삽입 및 가지치기 등을 수행하여 조절함으로써 연속적인 길이를 가지는 ARP 인터리버를 제공할 수 있다.
터보 코드, 인터리버, ARP

Description

연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙 방법 및 이에 의한 터보 인코더{Method For Providing Interleaver, Method For Interleaving, Both With Continuous Length, And Turbo Encoder Using The Same}
도 1은 터보 인코더(Turbo Encoder)의 기본적인 구조를 도시한 도면.
도 2는 RP(Regular Permutation)를 행하는 방법의 구체적 일례를 도시한 도면.
도 3a 내지 도 3c는 가중치 2, 가중치 3, 그리고 가중치 6 및 9인 RTZ(Return-To-Zero) 시퀀스의 경우의 예를 도시한 도면.
도 4는 변동 벡터(fluctuation vector)를 이용한 ARP(Almost Regular Permutation)를 행하는 개념을 설명하기 위한 도면.
도 5는 도 4에 도시된 ARP를 행하는 구체적 일례를 도시한 도면.
도 6은 본 발명의 일 실시형태에 따라 기본 인터리버(Basic Interleaver) 개념을 이용하여 연속적인 길이를 가지는 인터리버를 제공하는 방법을 설명하기 위한 순서도.
도 7은 본 발명의 일 실시형태에 따른 인터리빙 방법을 설명하기 위한 순서도.
도 8은 본 발명의 다른 일 실시형태에 따른 인터리빙 방법을 설명하기 위한 순서도.
도 9는 본 발명의 일 실시형태에 따른 인터리버를 포함하는 터보 인코더의 특징 구성을 도시한 도면.
본 발명은 무선 통신 기술에 대한 것으로서, 특히 연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙 방법 및 이에 의한 터보 인코더에 관한 것이다.
도 1은 터보 인코더(Turbo Encoder)의 기본적인 구조를 도시한 도면이다.
터보 코드(Turbo Code; 이하 "TC"라 함)는 2 개의 회귀 대칭 길쌈(Recursive Symetric Convolutional; 이하 "RSC"라 함) 코드를 인터리버(Interleaver)를 이용하여 병렬 연접한 부호이다. 이러한 TC는 도 1에 도시된 바와 같은 터보 인코더의 입력 데이터(X)를 제 1 구성 인코더(ENC1; 101)에 의해 인코딩된 패리티 비트(Y1), 및 입력 데이터를 인터리버(102)에 의해 인터리빙한 후, 제 2 구성 인코더(ENC2; 103)에 의해 인코딩된 패리티 비트(Y2)와의 조합을 통해 생성될 수 있다.
TC의 성능은 최소 해밍 거리(Minimum Hamming Distance: 이하 "MHD"라 함)가 클수록 좋은 성능을 보인다. 이러한 MHD는 각 시퀀스간에 대응하는 이웃 위치(neighbor position)에 서로 다른 정보를 가지는 비트 수로 나타낼 수 있으며, 일반적으로 000.. 으로 구성된 시퀀스를 기준 시퀀스로 할 경우, 이 기준 시퀀스와 차이를 가지는 비트 수로 나타낼 수 있어, 결국 각 시퀀스에 포함된 가중치(즉, "1")의 개수에 의해 나타낼 수 있다. 따라서, 이와 같은 MHD는 제 RSC 1 구성 인코더(101)와 제 RSC 2 구성 인코더(103)에 입력되는 시퀀스의 이웃 위치들간에 동일한 정보가 위치하는 것을 방지하는 것에 의해 영향을 받으며, 이와 같은 성능은 인터리버(102)에 의해 좌우될 수 있다. 도 1에서는 이와 같은 인터리버로서 길이 k 인 시퀀스를 적절한 순열을 취하여 M*N 비트의 사각 행렬의 행 방향으로 기록하고, 이를 열 방향으로 읽어 출력하는 정규 사각 순열(Regular Rectangular Permutation)을 이용한 인터리버를 예로서 도시하고 있으며, 그 구체적인 동작에 대해서는 도 2와 관련하여 이하에서 상세히 설명하도록 한다.
도 2는 RP(Regular Permutation)를 행하는 방법의 구체적 일례를 도시한 도면이다.
도 2는 상술한 정규 사각 순열에 따라 행 방향으로 시퀀스를 입력하고, 이를 열 방향으로 판독하여 출력하는 것을 도시하고 있으며, 설명의 편의를 위하여 도 2의 행렬상에 표기된 수는 입력 시퀀스의 인덱스(i)와 동일한 것으로 나타내었다.
일반적으로, RP에서의 입력 시퀀스의 인덱스와 출력 시퀀스의 인덱스(j)사이에는 다음과 같은 관계에 의해 맵핑될 수 있다.
Figure 112006076869657-pat00001
여기서, K는 인터리버의 크기이며, P는 K와 서로 소인 임의의 정수로서 도 2 의 행렬에서 열의 수에 해당하는 수이다. 도 2는 이와 같은 인덱스간의 맵핑에 따라 K=32, P=7인 경우,
Figure 112006076869657-pat00002
에 의해 인덱스 맵핑이 이루어지는 경우를 도시하고 있다. 이와 같이 길이 32 비트의 입력 시퀀스 I는 상술한 인덱스 맵핑관계에 따라 행 방향으로 기록된 후, 열 방향으로 판독되어 출력 시퀀스 I'으로 출력된다.
한편, RSC에는 부호어의 가중치를 작게 만드는 RTZ(Return-To-Zero) 시퀀스가 존재한다. 이러한 RTZ 시퀀스는 구성 인코더의 출력을 0이 반복되는 시퀀스가 되도록 하여 출력 시퀀스의 가중치를 감소시킨다.
구체적으로 도 1의 예에서, 제 1 RSC 구성 부호기(101)의 입력 시퀀스를 시퀀스 I라 할 때, 만일 시퀀스 I에 소정 RTZ 시퀀스가 존재한다면 제 1 RSC 구성 부호기(101)가 생성하는 패리티 비트(Y1)의 가중치(예를 들어, "1"의 개수)가 작아진다. 또한, 제 2 RSC 구성 부호기(103)에는 시퀀스 I가 인터리버(102)에 의해 인터리빙된 시퀀스가 입력되며 이를 시퀀스 I'라 할 경우, 만일 인터리빙된 시퀀스 I'에도 RTZ가 존재한다면 제 2 RSC 구성 인코더(103)가 생성하는 패리티 비트(Y2)의 가중치도 작아지며 전체 부호어의 MHD가 작아진다. 따라서, 인터리버(102)는 제 2 RSC 구성 인코더(103)에 입력되는 시퀀스인 시퀀스 I'에 RTZ 시퀀스가 발생하지 않도록 설계되어야 한다.
도 3a 내지 도 3c는 가중치 2, 가중치 3, 그리고 가중치 6 및 9인 RTZ(Return-To-Zero) 시퀀스의 경우의 예를 도시한 도면이다.
구체적으로, 도 3a는 가중치가 2인 RTZ 시퀀스의 예로서, 입력 시퀀스 I에 '1'과 '1'사이가 7 비트만큼 떨어진 위치에 있는 RTZ 시퀀스를 포함하는 예를 도시하고 있다. 또한, 도 3a는 상술한 바와 같이 입력 시퀀스 I는 행 방향으로 기록된 후, 이를 열 방향으로 판독하여 출력하는 상술한 정규 사각 순열에 의한 인터리빙을 도시하고 있다. 도 3a에 도시된 바와 같이 가중치가 2 인 RTZ 시퀀스의 경우 MHD(dmin)는 대략 입력 시퀀스 I에서 '1'과 '1'사이의 거리인 7 비트에 M*N 행렬의 행의 수인 M을 곱한 7M을 각 시퀀스에서 동일한 최종 비트인 '1'의 수인 2로 나눈 값에 가까움을 알 수 있으며, 이는 다음과 같이 나타낼 수 있다.
Figure 112006076869657-pat00003
또한, 도 3b의 경우 가중치가 3인 RTZ 시퀀스의 예로서, 입력 시퀀스 I에 3개의 '1'이 ..1101..과 같이 배열된 RTZ 시퀀스를 포함하는 예를 도시하고 있다. 이 경우, MHD(dmin)는 최종 '1'사이의 거리에 해당하는 3 비트에 행렬의 행의 수인 M을 곱한 3M을 각 시퀀스에서 동일한 최종 비트인 '1'의 수인 2로 나눈 값에 가까움을 알 수 있으며, 이는 또한 다음과 같이 나타낼 수 있다.
Figure 112006076869657-pat00004
이와 같이 도 3a 및 도 3b의 경우에는 RTZ 시퀀스에 대해서 정규 순 열(Regular Permutation: 이하 "RP"라 함)을 사용하면, dmin값은 전체 시퀀스의 길이인 K가 증가할수록 커짐을 알 수 있으며, 출력 시퀀스 I'에 RTZ 시퀀스가 포함되는 것을 방지할 수 있다.
한편, 도 3c는 가중치가 6 및 9인 RTZ 시퀀스의 예를 도시하고 있다. 이와 같이 가중치가 6 및 9와 같이 다수의 가중치를 포함하는 시퀀스의 경우 MHD는 일반적으로 규정될 수 없고, 해당 시퀀스의 특정 패턴에 따라 달라질 수밖에 없다. 또한, 도 3c에 도시된 입력 시퀀스 I의 경우, 그 시퀀스 I의 패턴상 행방향의 입력 시퀀스에서 ..1101.. 과 같은 RTZ 시퀀스를 포함하고, 열 방향의 출력 시퀀스에서 ..1000001.. 과 같은 RTZ 시퀀스를 포함하는 것을 도시하고 있어, 이와 같은 가중치 6 및 9인 시퀀스의 경우 상술한 RP를 이용한 인터리빙을 통해서는 입력 시퀀스 I에 RTZ 시퀀스가 포함된 경우, 출력 시퀀스 I'에 RTZ 시퀀스가 포함되지 않도록 하는 성능이 저하될 수 있음을 알 수 있다.
따라서, 상술한 바와 같이 도 3a 및 도 3b와 같은 RTZ 시퀀스에 대해서는 좋은 성능을 보이는 RP의 특성을 유지하면서 도 3c와 같은 RTZ 시퀀스를 회피하기 위해서 인터리버 메모리 행렬에서 열의 방향으로 판독할 때, 왜곡(disorder)을 주는 ARP(Almost Regular Permutation)이 현재 널리 이용되고 있다.
ARP는 인터리빙 과정에서 상술한 RP가 회피할 수 없는 가중치가 6 또는 9인 RTZ 시퀀스를 회피하기 위해 RP에 왜곡을 주기 위해 변동 벡터(fluctuation vector)들을 추가한 것으로서, 현재 DVB-RCS, DVB-RCT, 및 IEEE 802.16의 터보 코 드 인터리버로서 이용되고 있으며, 이와 같은 ARP의 응용에 대해서는 본 명세서에 참조로서 포함된 "ETSI EN 301 790 v1.2.2(2000-12)" 및 "Draft IEEE standard Local and Metropolitan area networks, Part 16"에 상세히 개시되어 있다.
도 4는 변동 벡터(fluctuation vector)를 이용한 ARP(Almost Regular Permutation)를 행하는 개념을 설명하기 위한 도면이다.
ARP는 도 2와 관련하여 상술한 바와 같은 RP에 변동 벡터를 추가하여 기록 및 판독 과정에서 왜곡을 주는 방식으로 다음과 같은 인덱스 맵핑 관계에 의해 나타낼 수 있다.
Figure 112006076869657-pat00005
여기서, Q(j)는 변동 벡터를 나타내며, 구체적으로 다음과 같이 나타낼 수 있다.
Figure 112006076869657-pat00006
여기서, C는 왜곡 주기를 나타내며, A(j) 및 B(j)는 C를 주기로 가지는 주기함수로서 P 및 K/P의 20% 이하이다. 또한, Q(0) = 0으로 선택할 수 있으며, 이러한 ARP는 A(j) 및 B(j)를 규정하는 2(C-1) 개의 정수들 및 P에 의해 규정될 수 있다.
도 4는 이와 같은 변동 벡터에 의해 시퀀스의 기록 및 판독에서 발생하는 과정을 도시하고 있으며, 구체적인 사항은 본 명세서에 참조로서 포함된 C. Berrou, Y. Saouter 등의 "Designing good permutations for turbo codes: towards a single model"에 상세히 개시되어 있다.
이와 같은 ARP를 규정하기 위한 인터리버 파라미터의 수를 감소시키기 위해서는 다음과 같이 ARP를 규정할 수 있다.
1) A(j)에 대해 오직 1 개의 0이 아닌 값만을 이용하고, 2) C의 배수인 A(j)' 및 B(j)'이 존재하도록 하며, 3) α(j) 및 β(j)는 0 내지 8 사이의 정수이며, C의 배수로 설정한다. 이와 같은 ARP를 적용하는 구체적인 일례는 다음과 같다.
도 5는 도 4에 도시된 ARP를 행하는 구체적 일례를 도시한 도면이다.
구체적으로, 도 5의 좌측은 도 2와 동일하게 P=7, K=32를 만족하는 RP에 의한 인덱스 맵핑 관계를 도시하고 있으며, 도 5의 우측은 이와 같은 RP에 의한 맵핑 관계가 변동 벡터(Q(j))에 의해 다음과 같이 나타내어지는 경우를 도시하고 있다.
Figure 112006076869657-pat00007
여기서, Q(j)의 일례를 다음과 같이 나타낼 수 있다.
Figure 112006076869657-pat00008
즉, 도 5의 좌측에 도시된 RP 인덱스 맵핑 관계에서 첫 번째 열방향 맵핑에서의 왜곡을 살펴보면, j= 0은 그대로 i=0에, j=1은 i=7이 아니라 4가 더해진 i=11에, j=2는 i=14가 아닌 i=22에, 그리고 j=3은 i=21이 아닌 i=1에 맵핑되는 것을 도 5의 우측에서 도시하고 있다.
그러나, 이와 같은 변동 벡터(Q(j))는 주기가 C인 함수이며, 이에 따라 인터리버 크기 K(즉, 인터리빙 정보의 길이 K)는 C의 배수이어야 하는 제약이 있다. 즉, 주기 C가 4 인 상술한 예에서 4의 배수 길이를 가지는 인터리버만을 제공할 수 있는바, ARP를 이용하면서도 연속적인 길이를 가지는 인터리버를 제공하기 위한 기술이 요구되고 있다.
상술한 바와 같은 문제점을 해결하기 위한 본 발명의 목적은 ARP를 이용하면서도 변동 벡터의 주기 C의 배수가 아닌 길이를 가지는 인터리버를 제공하는 방법을 제공하는 것이다.
또한, 이와 같은 인터리버를 제공하기 위하여 기본 인터리버(Basic Interleaver) 개념과 가지치기(pruning) 개념을 이용한 인터리빙 방법 및 이를 수행하는 인터리버를 포함하는 터보 인코더를 제공하고자 한다.
상기 목적을 달성하기 위한 본 발명의 일 실시형태에 따른 인터리버 제공 방법은 ARP(Almost Regular Permutation)의 변동 벡터(fluctuation vector) 주기의 배수 길이를 가지도록 미리 설정된 기본 인터리버(Basic Interleaver) 세트 중 제 1 길이를 가지는 기본 인터리버를 선택하는 단계; 및 요구되는 인터리버 길이인 제 2 길이가 상기 제 1 길이보다 작은 경우, 상기 선택된 기본 인터리버를 상기 제 2 길이로 조절하는 단계를 포함한다.
이 경우, 상기 인터리버는 ARP 인터리버이며, 상기 제 1 길이는 상기 변동 벡터 주기의 배수 중 상기 제 2 길이 이상의 최소 배수일 수 있다.
또한, 상기 길이를 조절하는 단계에서 상기 가지치기는 상기 제 1 길이를 가지는 기본 인터리버에 입력되는 데이터의 인덱스들 중 상기 제 2 길이에 해당하는 수의 인덱스들만 수용함으로써 수행될 수 있다.
본 발명의 다른 일 실시형태에 따른 인터리빙 방법은 원본 시퀀스의 길이와 ARP의 변동 벡터 주기의 배수 길이를 가지도록 미리 설정된 기본 인터리버 세트 중 선택된 기본 인터리버의 길이의 차이에 해당하는 길이의 원본 시퀀스 인덱스에 더미(dummy) 정보 삽입 단계; 상기 더미 정보가 삽입된 상기 선택된 기본 인터리버 길이의 시퀀스를 ARP 인터리빙하는 단계; 및 상기 인터리빙된 시퀀스 인덱스 중 상기 더미 정보가 삽입되지 않은 인덱스를 출력하는 단계를 포함한다.
이 경우, 상기 선택된 기본 인터리버는 상기 변동 벡터 주기의 배수 중 상기 원본 시퀀스의 길이 이상의 최소 배수 길이를 가지는 것이 바람직하다.
또한, 상기 더미 정보 삽입 단계에서, 상기 더미 정보는 상기 원본 시퀀스의 인덱스 중 상기 선택된 기본 인터리버의 길이 이상의 인덱스에 삽입되며, 상기 인덱스 출력 단계에서, 출력되는 상기 인터리된 시퀀스 인덱스는 상기 선택된 기본 인터리버의 길이 이상의 원본 시퀀스 인덱스에 대응하는 인덱스를 제외한 인덱스일 수 있으며, 이와 달리 상기 더미 정보 삽입 단계에서, 상기 더미 정보는 상기 원본 시퀀스의 인덱스 중 상기 원본 시퀀스의 길이와 상기 선택된 기본 인터리버의 길이의 차이에 해당하는 길이만큼 임의로 선택된 인덱스에 삽입되며, 상기 인덱스 출력 단계에서, 출력되는 상기 인터리된 시퀀스 인덱스는 상기 더미 정보 삽입 단계에서 선택된 상기 원본 시퀀스 인덱스에 대응하는 인덱스를 제외한 인덱스이며, 상기 인덱스 출력 단계 이후, 상기 출력된 시퀀스의 인덱스를 상기 더미 정보 삽입 전 원본 시퀀스의 인덱스에 따라 맵핑하는 단계를 더 포함할 수도 있다.
한편, 본 발명의 또 다른 일 실시형태에 따른 터보 인코더는 입력 시퀀스에 소정의 인코딩을 수행하여 출력하는 제 1 인코더; 상기 입력 시퀀스를 인터리빙하는 인터리버; 및 상기 인터리버에 의해 인터리빙된 시퀀스를 입력받아 인코딩을 수행하여 출력하는 제 2 인코더를 포함하는 터보 인코더로서, 상기 인터리버는, ARP의 변동 벡터 주기의 배수 길이를 가지도록 미리 설정된 기본 인터리버 세트 중 제 1 길이를 가지는 기본 인터리버를 선택하는 기본 인터리버 선택 모듈; 및 상기 입력 시퀀스의 길이인 제 2 길이가 상기 제 1 길이보다 작은 경우, 상기 선택된 기본 인터리버를 상기 제 2 길이로 조절하는 길이 조절 모듈을 포함하는 것을 특징으로 한다.
이하, 본 발명에 따른 바람직한 실시 형태를 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다. 이하의 상세한 설명은 본 발명의 완전한 이해 를 제공하기 위해서 구체적 세부사항을 포함한다. 그러나, 당업자는 본 발명이 이러한 구체적 세부사항 없이도 실시될 수 있음을 안다. 몇몇 경우, 본 발명의 개념이 모호해지는 것을 피하기 위하여 공지의 구조 및 장치는 생략되거나, 각 구조 및 장치의 핵심기능을 중심으로 한 블록도 형식으로 도시된다. 또한, 본 명세서 전체에서 동일한 구성요소에 대해서는 동일한 도면 부호를 사용하여 설명한다.
본 발명은 상술한 바와 같이 기존의 ARP가 특정한 주기를 가지므로 연속적인 길이를 가지는 인터리버를 제공할 수 없는 문제를 해결하기 위하여 "기본 인터리버(Basic Interleaver)" 개념을 이용한다. 기본 인터리버는 요구되는 길이를 가지는 인터리버를 구현하기 위해 미리 설정된 길이를 가지는 인터리버로서, 일반적으로 필요에 따라 다양한 길이의 기본 인터리버 세트가 미리 설정되어 있는 것이 바람직하다.
도 6은 본 발명의 일 실시형태에 따라 기본 인터리버(Basic Interleaver) 개념을 이용하여 연속적인 길이를 가지는 인터리버를 제공하는 방법을 설명하기 위한 순서도이다.
도 6에 도시된 본 발명의 일 실시형태에서는 K 길이를 가지는 인터리버를 제공하기 위하여 상술한 바와 같이 미리 설정된 기본 인터리버 세트 중 K' 길이를 가지는 인터리버를 선택한다(단계 S601). 여기서, K'은 도 5와 관련하여 상술한 바와 같이 ARP를 구현하기 위한 변동 벡터의 주기인 C의 배수이며, 또한 K≤K'인 최소 K' 길이를 가지는 기본 인터리버를 선택하는 것이 이후의 가지치기(pruning) 등의 과정을 더 용이하게 할 수 있다.
그 후, K≤K'인 경우, 단계 S601에서 선택된 K' 길이의 기본 인터리버는 K의 길이를 가지는 인터리버로 조절될 수 있다. 이러한 인터리버 길이 조절을 인터리빙 단계별로 구체적으로 설명하면 다음과 같다.
단계 S602에서 인터리버의 입력 시퀀스에 K'-K 개의 더미(dummy) 정보를 삽입한다. 즉, 입력 시퀀스를 B=(b0, b1, ..., bk -1)이라 할 때, K'-K 개의 더미 비트를 삽입하여 B'=(b'0, b'1, ..., bk -1, bk, bk +1, ..., bk' -1)과 같이 형성한다. 본 발명의 일 실시형태에서는 상술한 바와 같이 입력 시퀀스에 더미 정보를 삽입하는 위치를 인덱스가 K 이상인 부분으로 하였으나, 본 발명의 다른 실시형태에서는 이와 달리 규정될 수 있으며, 이에 대해서는 후술하기로 한다. 이와 같이 입력 시퀀스에 삽입된 더미 정보는 입력 시퀀스의 길이를 K' 길이로 조절하여 이후 K' 길이를 가지는 기본 인터리버에 의한 ARP 인터리빙이 가능하게 한다(단계 S603).
단계 S603을 거쳐 ARP 인터리빙이 완료된 출력 시퀀스를 "O"라 할 경우, 이는 O=(o0, o1, ..., ok' -1)과 같이 나타낼 수 있다. 그 후, 단계 S604에서 더미 정보가 입력 시퀀스의 인덱스에 대응하는 출력 시퀀스의 인덱스를 제외한 인덱스(Non Dummy Index)를 출력한다. 구체적으로, 단계 S603에서 입력 시퀀스의 인덱스 i와 출력 시퀀스의 인덱스 j 사이에 i=Π(j)관계에 있는 경우, 상술한 예에서 i= k, k+1, ..., k'-1 에 대응하는 출력 인덱스 j를 제외한 인덱스를 출력하는 것을 의미한다. 따라서, 결과적으로 출력 시퀀스 O'은 이와 같이 인덱스가 제거된 위치의 정보만이 남게 된다. 아울러, 상술한 설명은 더미 정보가 삽입된 인덱스 자체를 제외 하고 출력하는 방식을 중심으로 설명하였으나, oj = bi =Π(j) 관계에 착안하여 출력 시퀀스 중 해당 인덱스의 정보 자체를 제거하고 출력하는 방식 역시 동일한 결과를 얻을 수 있다.
상술한 바와 같은 본 발명의 일 실시형태에 따른 인터리빙 방법을 보다 구체적인 예를 들어 설명하면 다음과 같다.
도 7은 본 발명의 일 실시형태에 따른 인터리빙 방법을 설명하기 위한 순서도이다.
먼저, 도 7은 본 발명의 일 실시형태에 따라 더미 정보 삽입 시 입력 시퀀스의 말단부에 삽입하여, 인터리빙을 거쳐 출력된 시퀀스에서 더미 비트가 삽입된 위치의 인덱스를 제외한 인덱스를 출력하는 방법을 도시한다. 먼저, 단계 S701에서 입력 시퀀스의 인덱스 i를 0으로 초기화한다. 그 후, 단계 S702에서 i가 K 이상인지를 판정하고, i가 K보다 작은 경우 단계 S703으로 진행하여 입력 시퀀스 B의 각 정보를 더미 비트가 삽입되는 시퀀스 B'의 각 정보에 대응시킨다. 그러나, 만일 i가 K 이상으로 판정되는 경우 단계 S704로 진행되어 시퀀스 B'의 말단부 위치에 더미 비트를 삽입한다. 한편, 단계 S705에서는 입력 시퀀스의 인덱스 i를 순차적으로 증가시키고, 단계 S706에서 i가 K' 보다 작은 경우 단계 S702로 복귀하여 상술한 단계들을 반복한다. 구체적으로 예로서 K'=16, K=14 인 경우, i=14, 15인 b14, b15에는 더미 값이 입력된다.
한편, 단계 S706의 판정 결과 i가 K' 이상인 것으로 판정되는 경우, 단계 S707로 진행하여 ARP 인터리빙이 수행된다. 상술한 예에서와 같이 K'=16, K=14인 경우 ARP 인터리빙에 있어 인덱스 맵핑 관계식과 변동 벡터(Q(j))는 다음과 같이 나타낼 수 있다.
Figure 112006076869657-pat00009
여기서 변동 벡터 Q(j)는,
Figure 112006076869657-pat00010
와 같이 표현된다.
따라서, 상기 수학식 8 및 수학식 9와 같은 ARP 인터리빙에 의해 출력되는 시퀀스는 Πk'={0, 7, 6, 5, 12, 3, 2, 1, 8, 15, 14, 13, 4, 11, 10, 9}와 같이 표현될 수 있다. 여기서 출력 시퀀스를 구성하는 각 수는 편의를 위해 입력 시퀀스 상에서의 인덱스를 나타내는 것으로 한다. 그 후, 단계 S708에서 Π(j)=i의 관계를 이용하여 i>K-1인 인덱스와 매칭된 인덱스 j를 제외한 인덱스를 출력한다. 즉, 상술한 예에서 단계 S708의 결과 길이 K의 Πk={0, 7, 6, 5, 12, 3, 2, 1, 8, 13, 4, 11, 10, 9}으로 나타내어 질 수 있으며, 이는 i=14, 15에 대응하는 j 인덱스가 제외된 인덱스를 출력한 것을 나타낸다.
상술한 실시형태에서는 입력 시퀀스의 말단부에 더미 정보를 삽입하는 예를 설명하였으나, 더미 정보가 삽입되는 위치는 반드시 입력 시퀀스의 말단부에 한정될 필요는 없다. 따라서, 본 발명의 다른 일 실시형태에 따른 인터리빙 방법은 입력 시퀀스의 임의의 위치의 K'-K 개의 인덱스에 더미 정보를 삽입하여 ARP 인터리빙을 수행하는 방법을 제안한다.
상기 본 발명의 실시형태에 따르면 상술한 도 6의 단계 S602에서 0과 K'-1 사이의 입력 시퀀스 인덱스 i 중 소정의 K'-K 개의 인덱스를 선택하여 더미 정보를 삽입하고, 단계 S604에서는 동일하게 i=Π(j)의 관계를 이용하여 입력 시퀀스에 더미 정보가 삽입된 인덱스에 대응하는 출력 시퀀스 인덱스를 제거한 인덱스를 출력한다. 이에 따라 출력 시퀀스를 입력 시퀀스의 인덱스 제거에 따라 원래 K 길이의 인덱스에 맞도록 인덱스를 맵핑하는 단계를 더 포함할 수 있다.
이를 도 8과 관련하여 구체적으로 설명하면 다음과 같다.
도 8은 본 발명의 다른 일 실시형태에 따른 인터리빙 방법을 설명하기 위한 순서도이다.
먼저, 단계 S801에서 0과 K'-1 사이의 입력 시퀀스 인덱스 i 중 K'-K 개의 인덱스를 선택하고, 단계 S802에서 해당 인덱스에 더미 정보를 삽입한다. 구체적으로, 상술한 바와 같이 K'=16, K=14인 예로서 설명하면, 0≤i≤15인 i 중 i=4, 10을 더미 정보 삽입 인덱스로 선택한다. 그 후, 단계 S803에서 상기 수학식 8 및 수학식 9에 따른 ARP 인터리빙이 수행되고, 이에 따라 상술한 예에서 출력되는 K' 길이 의 시퀀스는 Πk'={0, 7, 6, 5, 12, 3, 2, 1, 8, 15, 14, 13, 11, 9}와 같이 나타낼 수 있다.
이와 같은 K' 길이를 가지는 시퀀스 중 단계 S804에서는 더미 정보가 삽입된 입력 시퀀스의 인덱스를 제외한 인덱스를 출력한다. 예를 들어, o12=i4, 및 o14=i10 이 더미 정보인 경우, 출력 시퀀스의 인덱스 j 중 해당 인덱스를 제외한 인덱스만을 출력한다. 이에 따라 상술한 길이 K'의 출력 시퀀스는 길이 K인 Πpre - mapping k={0, 7, 6, 5, 12, 3, 2, 1, 8, 15, 14, 13, 11, 9}로 나타내어진다. 다만, 이러한 시퀀스는 길이 K인 입력 시퀀스와의 관계에 있어서 상호간에 인덱스 조정이 필요하며(예를 들어 길이 K의 입력 시퀀스에 존재하지 않는 인덱스 14, 15를 포함한다), 따라서, 단계 S805에서 원래의 입력 시퀀스의 인덱스에 맞도록 인덱스를 맵핑하는 단계를 더 포함한다. 구체적으로 상술한 예에서 입력 시퀀스의 인덱스 5는 4로, 6은 5로, 8은 7로, 9는 8로, 11은 9로, 12는 10으로, 13은 11로, 14는 12로, 15는 13으로 맵핑됨을 쉽게 알 수 있다. 이에 따라 최종적인 길이 K의 출력 시퀀스는 Πk={0, 6, 5, 4, 12, 3, 2, 1, 7, 13, 12, 11, 9, 8}와 같이 나타낼 수 있다.
이하에서는 이와 같이 연속적인 길이를 제공하는 인터리빙을 수행하는 인터리버를 포함한 터보 인코더의 장치적 특성에 대해 설명한다.
도 9는 본 발명의 일 실시형태에 따른 인터리버를 포함하는 터보 인코더의 특징 구성을 도시한 도면이다.
도 9에 도시된 본 발명의 일 실시형태에 따른 터보 인코더는 도 1과 같이 제 1 구성 인코더(901), 제 2 구성 인코더(902), 및 인터리버(903)를 포함한다. 다만, 인터리버(903)는 APR 인터리버(906)뿐만 아니라 도 1의 경우와 달리 미리 설정된 시본 인터리버 세트 중 적절한 길이를 가지는 기본 인터리버를 선택하는 기본 인터리버 선택 모듈(904), 더미 정보를 삽입할 인덱스를 선택하고, 더미 정보를 삽입하는 더미 삽입 모듈(905), 및 더미 정보가 삽입된 인덱스를 제외한고 출력하고 필요에 따라 인덱스 맵핑을 수행하는 모듈(907)을 포함한다. 이를 통해 인터리버(903)에서의 ARP 인터리빙에 있어 변동 벡터의 주기가 아닌 길이의 시퀀스를 더미 삽입과 더미가 삽입된 인덱스 제거를 통해 ARP 인터리빙하는 것이 가능하다.
이와 같이 기본 인터리버 선택 모듈(904), 더미 삽입 모듈(905) 및 인덱스 제거 모듈(907) 등의 길이 조절 모듈을 인터리버(903) 내부에 포함하는 경우, 제 1 인코더(901) 및 제 2 인코더(902)에 입력되는 시퀀스의 길이는 더미 정보 등을 포함하지 않는 완성된 시퀀스 길이를 가지도록 하여, 제 1 인코더(901) 및 제 2 인코더(902)에 의해 더미 정보까지 인코딩됨으로써 패리티 비트를 생성하여 추가적 오버헤드가 발생하는 것을 방지할 수 있다.
상술한 바와 같이 개시된 본 발명의 바람직한 실시형태에 대한 상세한 설명은 당업자가 본 발명을 구현하고 실시할 수 있도록 제공되었다. 상기에서는 본 발명의 바람직한 실시 형태를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명은 여기에 나타난 실시형태들에 제한되려는 것이 아니라, 여기서 개시된 원리들 및 신규한 특징들과 일치하는 최광의 범위를 부여하려는 것이다.
상기와 같은 본 발명의 일 실시형태에 따르면 ARP 변동 벡터의 주기의 배수 길이를 가지는 미리 설정된 기본 인터리버에 가지치기를 수행함으로써 상술한 변동 벡터 주기의 배수길이가 아니더라도 요구되는 연속적인 길이를 가지는 ARP 인터리버를 제공하는 것이 가능하다.
또한, 이와 같은 인터리버를 제공하기 위하여 기본 인터리버(Basic Interleaver) 개념과 가지치기(pruning) 개념을 이용한 인터리빙 방법 및 이를 수행하는 인터리버를 포함하는 터보 인코더를 제공함으로써 추가적 오버헤드 발생 없이 연속적인 길이의 ARP 수행이 가능하다.

Claims (8)

  1. ARP(Almost Regular Permutation)의 변동 벡터(fluctuation vector) 주기의 배수 길이를 가지도록 미리 설정된 기본 인터리버(Basic Interleaver) 세트 중 제 1 길이를 가지는 기본 인터리버를 선택하는 단계; 및
    요구되는 인터리버 길이인 제 2 길이가 상기 제 1 길이보다 작은 경우, 상기 선택된 기본 인터리버를 상기 제 2 길이로 조절하는 단계를 포함하는, 인터리버 제공 방법.
  2. 제 1 항에 있어서,
    상기 인터리버는 ARP 인터리버이며,
    상기 제 1 길이는 상기 변동 벡터 주기의 배수 중 상기 제 2 길이 이상의 최소 배수인, 인터리버 제공 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 조절하는 단계는 상기 제 1 길이를 가지는 기본 인터리버에 입력되는 데이터의 인덱스들 중 상기 제 2 길이에 해당하는 수의 인덱스들만 수용함으로써 수행되는, 인터리버 제공 방법.
  4. 원본 시퀀스의 길이와 ARP의 변동 벡터 주기의 배수 길이를 가지도록 미리 설정된 기본 인터리버 세트 중 선택된 기본 인터리버의 길이의 차이에 해당하는 길이의 원본 시퀀스 인덱스에 더미(dummy) 정보 삽입 단계;
    상기 더미 정보가 삽입된 상기 선택된 기본 인터리버 길이의 시퀀스를 ARP 인터리빙하는 단계; 및
    상기 인터리빙된 시퀀스 인덱스 중 상기 더미 정보가 삽입되지 않은 인덱스를 출력하는 단계를 포함하는, 인터리빙 방법.
  5. 제 4 항에 있어서,
    상기 선택된 기본 인터리버는 상기 변동 벡터 주기의 배수 중 상기 원본 시퀀스의 길이 이상의 최소 배수 길이를 가지는, 인터리빙 방법.
  6. 제 4 항 또는 제 5 항에 있어서,
    상기 더미 정보 삽입 단계에서, 상기 더미 정보는 상기 원본 시퀀스의 인덱스 중 상기 선택된 기본 인터리버의 길이 이상의 인덱스에 삽입되며,
    상기 인덱스 출력 단계에서, 출력되는 상기 인터리된 시퀀스 인덱스는 상기 선택된 기본 인터리버의 길이 이상의 원본 시퀀스 인덱스에 대응하는 인덱스를 제외한 인덱스인, 인터리빙 방법.
  7. 제 4 항 또는 제 5 항에 있어서,
    상기 더미 정보 삽입 단계에서, 상기 더미 정보는 상기 원본 시퀀스의 인덱 스 중 상기 원본 시퀀스의 길이와 상기 선택된 기본 인터리버의 길이의 차이에 해당하는 길이만큼 임의로 선택된 인덱스에 삽입되며,
    상기 인덱스 출력 단계에서, 출력되는 상기 인터리된 시퀀스 인덱스는 상기 더미 정보 삽입 단계에서 선택된 상기 원본 시퀀스 인덱스에 대응하는 인덱스를 제외한 인덱스이며,
    상기 인덱스 출력 단계 이후, 상기 출력된 시퀀스의 인덱스를 상기 더미 정보 삽입 전 원본 시퀀스의 인데스에 따라 맵핑하는 단계를 더 포함하는, 인터리빙 방법.
  8. 입력 시퀀스에 소정의 인코딩을 수행하여 출력하는 제 1 인코더;
    상기 입력 시퀀스를 인터리빙하는 인터리버; 및
    상기 인터리버에 의해 인터리빙된 시퀀스를 입력받아 인코딩을 수행하여 출력하는 제 2 인코더를 포함하는 터보 인코더에 있어서,
    상기 인터리버는,
    ARP의 변동 벡터 주기의 배수 길이를 가지도록 미리 설정된 기본 인터리버 세트 중 제 1 길이를 가지는 기본 인터리버를 선택하는 기본 인터리버 선택 모듈; 및
    상기 입력 시퀀스의 길이인 제 2 길이가 상기 제 1 길이보다 작은 경우, 상기 선택된 기본 인터리버를 상기 제 2 길이로 조절하는 길이 조절 모듈을 포함하는 것을 특징으로 하는, 터보 인코더.
KR1020060103483A 2006-10-24 2006-10-24 연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙방법 및 이에 의한 터보 인코더 KR101165638B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020060103483A KR101165638B1 (ko) 2006-10-24 2006-10-24 연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙방법 및 이에 의한 터보 인코더
PCT/KR2007/005251 WO2008051019A2 (en) 2006-10-24 2007-10-24 Method for interleaving continuous length sequence
EP07833560A EP2089975A4 (en) 2006-10-24 2007-10-24 METHOD FOR INTERLEAVING A SEQUENCE OF CONTINUOUS LENGTH
US12/446,792 US8533542B2 (en) 2006-10-24 2007-10-24 Method for interleaving continuous length sequence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060103483A KR101165638B1 (ko) 2006-10-24 2006-10-24 연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙방법 및 이에 의한 터보 인코더

Publications (2)

Publication Number Publication Date
KR20080036789A KR20080036789A (ko) 2008-04-29
KR101165638B1 true KR101165638B1 (ko) 2012-07-17

Family

ID=39325018

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060103483A KR101165638B1 (ko) 2006-10-24 2006-10-24 연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙방법 및 이에 의한 터보 인코더

Country Status (4)

Country Link
US (1) US8533542B2 (ko)
EP (1) EP2089975A4 (ko)
KR (1) KR101165638B1 (ko)
WO (1) WO2008051019A2 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7835318B2 (en) * 2003-04-23 2010-11-16 Telecom Italia S.P.A. Radiotelephony network with multi-carrier packet data transmission
US8032811B2 (en) * 2006-11-09 2011-10-04 Samsung Electronics Co., Ltd. Efficient almost regular permutation (ARP) interleaver and method
ES2562788T3 (es) * 2007-09-25 2016-03-08 Telefonaktiebolaget Lm Ericsson (Publ) Aleatorización de interferencia de elementos de canal de control
US7924763B2 (en) * 2007-12-11 2011-04-12 Motorola Mobility, Inc. Method and appratus for rate matching within a communication system
US20100235721A1 (en) * 2009-03-13 2010-09-16 Lsi Corporation Rate Matching and De-Rate Matching for an LTE Transport Channel
US10365686B2 (en) 2016-10-28 2019-07-30 Lenovo (Singapore) Pte. Ltd. Geared housing assembly
CN116318552B (zh) * 2023-03-15 2023-09-22 归芯科技(深圳)有限公司 Turbo码的交织或解交织方法及其器件、通信芯片和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11191757A (ja) 1997-12-25 1999-07-13 Matsushita Electric Ind Co Ltd デジタル信号伝送方法およびその装置
US6480475B1 (en) 1998-03-06 2002-11-12 Texas Instruments Incorporated Method and system for accomodating a wide range of user data rates in a multicarrier data transmission system
US20060153285A1 (en) 2005-01-12 2006-07-13 Texas Instruments Incorporaated Dynamic interleaver depth change for a general convolutional interleaver

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6334197B1 (en) 1998-08-17 2001-12-25 Hughes Electronics Corporation Turbo code interleaver with near optimal performance
US7770010B2 (en) * 2000-09-18 2010-08-03 Wideband Semiconductors Inc. Dynamically configurable interleaver scheme using at least one dynamically changeable interleaving parameter
US6772377B2 (en) * 2001-09-28 2004-08-03 Texas Instruments Incorporated Convolutional interleaving with interleave depth larger than codeword size
US7003703B2 (en) * 2002-06-21 2006-02-21 Sandbridge Technologies, Inc. Method of interleaving/deinterleaving in a communication system
US7398446B2 (en) * 2003-05-29 2008-07-08 Lucent Technologies Inc. Low power operation of an address interleaver
US7543197B2 (en) * 2004-12-22 2009-06-02 Qualcomm Incorporated Pruned bit-reversal interleaver
US20060282713A1 (en) * 2005-05-31 2006-12-14 Yi Weng Efficient interleaver/de-interleaver desigh for the turbo decoder in a 3g wcdma system
US7827473B2 (en) * 2006-10-10 2010-11-02 Broadcom Corporation Turbo decoder employing ARP (almost regular permutation) interleave and arbitrary number of decoding processors
US8065587B2 (en) * 2006-10-10 2011-11-22 Broadcom Corporation Reduced complexity ARP (almost regular permutation) interleaves providing flexible granularity and parallelism adaptable to any possible turbo code block size

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11191757A (ja) 1997-12-25 1999-07-13 Matsushita Electric Ind Co Ltd デジタル信号伝送方法およびその装置
US6480475B1 (en) 1998-03-06 2002-11-12 Texas Instruments Incorporated Method and system for accomodating a wide range of user data rates in a multicarrier data transmission system
US20060153285A1 (en) 2005-01-12 2006-07-13 Texas Instruments Incorporaated Dynamic interleaver depth change for a general convolutional interleaver

Also Published As

Publication number Publication date
US8533542B2 (en) 2013-09-10
WO2008051019A3 (en) 2009-09-03
KR20080036789A (ko) 2008-04-29
WO2008051019A2 (en) 2008-05-02
US20100023844A1 (en) 2010-01-28
EP2089975A2 (en) 2009-08-19
EP2089975A4 (en) 2012-08-29

Similar Documents

Publication Publication Date Title
KR101165638B1 (ko) 연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙방법 및 이에 의한 터보 인코더
EP2176758B1 (en) Generation of parity-check matrices
CN101904101B (zh) 编码器、解码器、编码方法和解码方法
JP2000156646A (ja) 符号化装置及び方法、復号装置及び方法、信号処理装置、デ―タ伝送装置、無線通信装置、ネットワ―クステ―ション、並びに情報処理装置及び方法
KR20060061261A (ko) 주기적으로 변화하는 심볼 매핑들을 이용하여 데이터에변조 제약들을 적용하기 위한 기술들
CN101636914A (zh) 用于编码和解码数据的方法和装置
EP3232576A1 (en) Feed-forward staircase codes for channel coding in optical communication systems
US6404360B1 (en) Interleaving method for the turbocoding of data
KR102118328B1 (ko) 2의 멱이 아닌 길이로 확장된 폴라 코드의 코딩 및 디코딩
JP5122480B2 (ja) 高速な符号化方法および復号方法ならびに関連する装置
KR20060088060A (ko) 쇼트 블록 인코더를 이용하여 데이터를 변조하는 방법
KR20090044178A (ko) 통신시스템에서 병렬구조 라틴방진 인터리빙 방법 및 장치
US8433986B2 (en) Method and apparatus for low latency turbo code encoding
CN107733441B (zh) 编码方法及装置、译码方法及装置
JP2000353965A (ja) インターリービング方法、インターリービング装置、ターボ符号化方法及びターボ符号化装置
US8136006B2 (en) Turbo decoding apparatus and method
US8054207B1 (en) Enumerative DC-RLL constrained coding
CN101667839B (zh) 交织方法
US8301962B2 (en) Apparatus and method for generating a linear code
CN108476027B (zh) 窗口交织的turbo(wi-turbo)码
KR100297739B1 (ko) 다중테일을갖는터보코드및그의부호화/복호화방법및그를이용한부호기/복호기
KR101276829B1 (ko) 연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙방법 및 이를 이용한 디코딩 방법
US8091012B2 (en) System and method for decreasing decoder complexity
KR100510643B1 (ko) 이동통신 시스템에서의 인터리빙 방법
KR20040037624A (ko) 인터리빙된 데이터 열의 디인터리빙 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150624

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee