KR101286019B1 - 터보 인코더 장치 - Google Patents

터보 인코더 장치 Download PDF

Info

Publication number
KR101286019B1
KR101286019B1 KR1020120006617A KR20120006617A KR101286019B1 KR 101286019 B1 KR101286019 B1 KR 101286019B1 KR 1020120006617 A KR1020120006617 A KR 1020120006617A KR 20120006617 A KR20120006617 A KR 20120006617A KR 101286019 B1 KR101286019 B1 KR 101286019B1
Authority
KR
South Korea
Prior art keywords
bit string
encoder
bit
bits
input
Prior art date
Application number
KR1020120006617A
Other languages
English (en)
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 KR1020120006617A priority Critical patent/KR101286019B1/ko
Priority to US14/370,565 priority patent/US9000959B2/en
Priority to EP12865919.0A priority patent/EP2826150B8/en
Priority to PCT/KR2012/001439 priority patent/WO2013108952A1/en
Application granted granted Critical
Publication of KR101286019B1 publication Critical patent/KR101286019B1/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/47Error detection, forward error correction or error protection, not provided for in groups H03M13/01 - H03M13/37
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
    • H03M13/235Encoding of convolutional codes, e.g. methods or arrangements for parallel or block-wise encoding
    • 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
    • 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/2903Methods and arrangements specifically for encoding, e.g. parallel encoding of a plurality of constituent 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/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
    • 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/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/65253GPP LTE including E-UTRA
    • 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/6575Implementations based on combinatorial logic, e.g. Boolean circuits

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

본 발명은 터보 인코더 장치에 관한 것으로, 보다 상세하게는 채널코딩 기술에 사용되는 터보 인코더의 속도향상을 위하여 개선한 신호처리 장치에 관한 것으로, 매 클럭 사이클마다 복수의 비트 단위로 인코딩이 가능하도록 함으로써 인코딩 수행시간을 줄일 수 있고 인코더 출력 비트열이 인코딩 다음 신호처리 단계에서의 입력 형태를 맞추어 전체 신호처리 프로세서에 최적화된 구조로 터보 인코딩을 수행하는 효과가 있다.

Description

터보 인코더 장치{Turbo encoder Apparatus}
본 발명은 터보 인코더 장치에 관한 것으로, 보다 상세하게는 채널코딩 기술에 사용되는 터보 인코더의 속도향상을 위하여 개선한 신호처리 방법을 이용하는 터보 인코더 장치에 관한 것이다.
통신시스템 등에서 데이터의 전송 효율을 증가시키기 위하여 터보 코딩과 같은 채널 코딩이 사용되고 있다.
도 1은 종래의 터보 인코더의 구성을 나타내는 블록도이다. 도1을 참조하면, 종래의 터보 인코더(100)는 내부 인터리버(110)와 2개의 8-상태(state) 요소 인코더(120, 130)를 포함하도록 구성된다.
종래의 터보 인코더(100)는 병렬 연접 콘볼루션 부호기(Parallel Concatenated Convolutional Code, PCCC)를 사용하여 채널 코딩을 수행한다.
8-상태 요소 인코더(120, 130)의 전달함수는 아래와 같다.
Figure 112012005516790-pat00001
, g0(D)=1+D2+D3, g1(D)=1+D+D3
8-상태 요소 인코더(120, 130)에 사용되는 시프트 레지스터(shift register)들의 초기값은 모두 0이다. 종래의 터보 인코더(100)의 출력은 다음과 같다.
Figure 112012005516790-pat00002
,
Figure 112012005516790-pat00003
,
Figure 112012005516790-pat00004
, k=0,1,2,…,(K-1)
인코딩을 해야하는 코드블럭이 0번째 코드블럭인 경우, 채워 넣어야 하는 필러비트(filler bit)의 수가 0보다 클 때(즉, F > 0), 종래의 터보 인코더(100)의 입력은 ck=0, k=0,…,(F-1)로 해야 하며, 그 출력은
Figure 112012005516790-pat00005
,k=0,…,(F-1),
Figure 112012005516790-pat00006
, k=0,…,(F-1) 이 되어야 한다.
종래의 터보 인코더(100)의 입력 비트열은
Figure 112012005516790-pat00007
으로 표시되며 첫 번째 및 두 번째 8-상태 요소 인코더(120, 130)의 출력 비트열은 각각
Figure 112012005516790-pat00008
Figure 112012005516790-pat00009
로 표시된다. 터보 인코더의 내부 인터리버(internal interleaver)(110)의 출력은
Figure 112012005516790-pat00010
로 표시되며 이는 두 번째 8-state 요소 인코더(130)의 입력이 된다.
종래의 터보 인코더(100)의 내부 인터리버(110)의 입력을
Figure 112012005516790-pat00011
,출력을
Figure 112012005516790-pat00012
라고 할 때, 입출력 관계는 아래와 같다.
Figure 112012005516790-pat00013
,i = 0,1,…, (K-1)
여기서, 입력열의 인덱스와 출력열의 인덱스는 다음 수식에서 계산된다.
Figure 112012005516790-pat00014

격자종료 (trellis termination)는 모든 입력 비트열이 인코딩 된 후에 상태(state)를 나타내는 3개의 시프트 레지스터의 값을 최종 입력비트로 취함으로써 이루어진다. 최종 입력비트는 입력 비트열이 모두 인코딩 된 이후 출력 비트열의 뒷부분에 추가된다.
첫 3개의 최종 비트들은 두 번째 8-상태 요소 인코더(130)의 동작이 정지해있는 상태에서 첫 번째 8-상태 요소 인코더(120)를 종료할 때 사용되어야 한다. 즉, 첫 번째 8-상태 요소 인코더(120)에 포함된 스위치가 아래쪽으로 연결된다.
마지막 3개의 최종 비트들은 첫 번째 8-상태 요소 인코더(120)의 동작이 정지해 있는 상태에서 두 번째 8-상태 요소 인코더(130)를 종료할 때 사용되어야 한다. 즉, 두 번째 8-상태 요소 인코더(130)에 포함된 스위차가 아래쪽으로 연결된다.
출력에 추가되는 격자종료 비트열은 아래와 같다.
Figure 112012005516790-pat00015
,
Figure 112012005516790-pat00016
,
Figure 112012005516790-pat00017
,
Figure 112012005516790-pat00018
Figure 112012005516790-pat00019
,
Figure 112012005516790-pat00020
,
Figure 112012005516790-pat00021
,
Figure 112012005516790-pat00022
Figure 112012005516790-pat00023
,
Figure 112012005516790-pat00024
,
Figure 112012005516790-pat00025
,
Figure 112012005516790-pat00026
한번에 인코딩 할 수 있는 입력 비트열의 크기(K)의 개수는 총 188가지이며, K는 아래 표에 나타나 있는 값을 가질 수 있다.
i K i i K i i K i i K i
1 40 48 416 95 1120 142 3200
2 48 49 424 96 1152 143 3264
3 56 50 432 97 1184 144 3328
4 64 51 440 98 1216 145 3392
5 72 52 448 99 1248 146 3456
6 80 53 456 100 1280 147 3520
7 88 54 464 101 1312 148 3584
8 96 55 472 102 1344 149 3648
9 104 56 480 103 1376 150 3712
10 112 57 488 104 1408 151 3776
11 120 58 496 105 1440 152 3840
12 128 59 504 106 1472 153 3904
13 136 60 512 107 1504 154 3968
14 144 61 528 108 1536 155 4032
15 152 62 544 109 1568 156 4096
16 160 63 560 110 1600 157 4160
17 168 64 576 111 1632 158 4224
18 176 65 592 112 1664 159 4288
19 184 66 608 113 1696 160 4352
20 192 67 624 114 1728 161 4416
21 200 68 640 115 1760 162 4480
22 208 69 656 116 1792 163 4544
23 216 70 672 117 1824 164 4608
24 224 71 688 118 1856 165 4672
25 232 72 704 119 1888 166 4736
26 240 73 720 120 1920 167 4800
27 248 74 736 121 1952 168 4864
28 256 75 752 122 1984 169 4928
29 264 76 768 123 2016 170 4992
30 272 77 784 124 2048 171 5056
31 280 78 800 125 2112 172 5120
32 288 79 816 126 2176 173 5184
33 296 80 832 127 2240 174 5248
34 304 81 848 128 2304 175 5312
35 312 82 864 129 2368 176 5376
36 320 83 880 130 2432 177 5440
37 328 84 896 131 2496 178 5504
38 336 85 912 132 2560 179 5568
39 344 86 928 133 2624 180 5632
40 352 87 944 134 2688 181 5696
41 360 88 960 135 2752 182 5760
42 368 89 976 136 2816 183 5824
43 376 90 992 137 2880 184 5888
44 384 91 1008 138 2944 185 5952
45 392 92 1024 139 3008 186 6016
46 400 93 1056 140 3072 187 6080
47 408 94 1088 141 3136 188 6144
코드블록의 최대크기 (K)는 6144 비트인바, 이 경우 입력 비트열을 인코딩하여 출력 비트열을 생성하는데 소요되는 시간은 하드웨어로 구현 시 6144+3+3 클럭사이클이 소요된다. 상기 시간은 LTE 또는 LTE-Advanced 기본 샘플링 주파수(30.72 MHz)를 기준으로 환산하면 약 200.2 us 의 시간이 필요하며, 이는 1개의 서브프레임(sub-frame)의 약 20% 에 해당하는 시간이 된다.
또한, 종래의 터보 인코더(100)의 출력인 세 개의 코드블록은 다음 신호처리 단계인 레이트 매칭으로 가기 전 32비트 단위의 구조체로 변환되어야 하며, 모자라는 비트들은 널(Null)로 채워지게 된다.
그러나, 이러한 종래의 터보 인코더(100)는 비트 단위로 수행되기 때문에 인코딩의 소요시간이 큰 문제점이 있다.
본 발명의 목적은 인코딩을 복수의 비트 단위로 수행하도록 구현하고 코드블록 크기 및 격자종료 방식을 만족하도록 입력 비트열과 출력 비트열의 형태를 재구성하는 터보 인코더 장치를 제공하는 것이다.
상기의 목적을 달성하기 위한 데이터를 입력받아 부호화 비트열을 출력하는 터보 인코더 장치에 있어서, 지정된 코드블록의 크기를 가지며 패딩이 이루어진 상기 데이터의 비트열을 복수의 비트 단위로 입력받아 인코딩을 하여 복수의 비트 단위의 제1 출력 비트열을 생성하는 제1 요소 인코더; 상기 데이터의 비트열로부터 섞임 입력 비트열을 생성하는 내부 인터리버; 상기 섞임 입력 비트열을 복수의 비트 단위로 입력받아 인코딩을 하여 복수의 비트 단위의 제2 출력 비트열을 생성하는 제2 요소 인코더; 상기 제1 요소 인코더와 상기 제2 요소 인코더의 격자종료를 위한 비트를 생성하는 격자종료 인코더; 상기 제1 출력 비트열, 상기 제2 출력 비트열 및 상기 격자종료를 위한 비트를 받아 레이트 매칭의 입력 비트열을 생성하는 비트열 조합장치;를 포함하는 것을 특징으로 하는 터보 인코더 장치가 제공된다.
바람직하게는, 상기 제1 요소 인코더 및 상시 제2 요소 인코더는 8 비트 단위로 구성된 상기 데이터의 비트열을 입력받으며, 상기 복수의 비트는 8 비트인 것을 특징으로 한다.
바람직하게는, 상기 제1 요소 인코더는 상기 데이터의 비트열과 상기 제1 요소 인코더의 내부 상태를 이용하여 상기 제1 출력 비트열을 생성하고, 상기 제2 요소 인코더는 상기 섞임 입력 비트열과 상기 제2 요소 인코더의 내부 상태를 이용하여 상기 제2 출력 비트열을 생성하는 것을 특징으로 한다.
바람직하게는, 상기 제1 요소 인코더 또는 상기 제2 요소 인코더는 상기 제1 출력 비트열 또는 상기 제2 출력 비트열에 상기 데이터의 비트열에 존재하는 필러 비트의 개수만큼 존재하는 널(NULL) 비트를 0 비트로 표현하는 것을 특징으로 한다.
바람직하게는, 상기 격자종료 인코더는 상기 제1 요소 인코더 또는 상기 제2 요소 인코더에 상기 데이터에 대한 마지막 입력 비트열이 입력된 때의 내부 상태를 이용하여 상기 격자종료를 위한 비트를 생성하는 것을 특징으로 한다.
바람직하게는, 상기 비트열 조합장치는 상기 레이트 매칭의 입력 비트열을 상기 레이트 매칭이 병렬적으로 수행될 수 있도록 재배치하는 것을 특징으로 한다.
바람직하게는, 상기 비트열 조합장치는 상기 레이트 매칭의 입력 비트열에 상기 코드블록의 크기에 따라 결정되는 숫자만큼 널(NULL) 비트를 삽입하고 상기 격자종료를 위한 비트를 상기 제1 출력 비트열 또는 제2 출력 비트열에 덧붙이되, 상기 널(NULL) 비트의 삽입은, 상기 제1 출력 비트열 또는 제2 출력 비트열의 8 비트 단위에서 상위 4 비트와 하위 4 비트의 위치를 바꾸고 상기 하위 4 비트를 1 사이클 지연시킨 뒤 추가해야 하는 상기 널(NULL) 비트의 숫자에 따라 사이클 지연회로를 통과시킴으로써 수행되는 것을 특징으로 한다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명은 매 클럭 사이클마다 복수의 비트 단위로 인코딩이 가능하도록 함으로써 인코딩 수행시간을 줄이는 효과가 있다.
또한, 본 발명은 비트열 조합장치를 통하여 인코더 출력 비트열이 인코딩 다음 신호처리 단계에서의 입력 형태를 맞추어 전체 신호처리 프로세서에 최적화된 구조로 터보 인코딩을 수행하는 효과가 있다.
그리고, 본 발명은 격자종료를 위한 비트를 한 클록에 생성할 수 있도록 한 효과가 있다.
도 1은 종래의 터보 인코더의 구성을 나타내는 블록도.
도 2는 본 발명의 일 실시예에 따른 터보 인코더의 구성을 나타내는 블록도.
도 3은 본 발명의 일 실시예에 따른 입력 비트열의 구조를 나타내는 블록도.
도 4는 본 발명의 일 실시예에 따른 비트열 조합장치에 입력되는 비트열의 구조를 나타내는 블록도.
도 5는 본 발명의 일 실시예에 따른 비트열 조합장치의 출력 비트열의 구조를 나타내는 블록도.
도 6은 본 발명의 일 실시예에 따른 요소 인코더 회로의 구성을 나타내는 블록도.
도 7은 본 발명의 일 실시예에 따른 격자종료 인코더 회로의 구성을 나타내는 블록도.
도 8은 본 발명의 일 실시예에 따른 비트열 조합장치의 구성을 나타내는 블록도.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다.
도 2는 본 발명의 일 실시예에 따른 터보 인코더의 구성을 나타내는 블록도이다. 도 2를 참조하면, 본 발명의 일 실시예에 따른 터보 인코더(200)는 제1 요소 인코더(210), 내부 인터리버(220), 제2 요소 인코더(230), 격자종료 인코더(240) 및 비트열 조합장치(250)를 포함하도록 구성되며, 데이터를 입력받아 입력받은 데이터에 대한 부호화 비트열을 생성하여 출력한다.
제1 요소 인코더(210)는 지정된 코드블록의 크기를 가지며 패딩이 이루어진 입력 데이터의 비트열을 복수의 비트 단위로 입력받아 인코딩을 하여 복수의 비트 단위의 제1 출력 비트열을 생성한다.
제1 출력 비트열은 입력 데이터의 비트열을 C(0,…,n)이라 할 때, X(0,…,n) 비트열과 Z(0,…,n) 비트열이 된다.
바람직하게는, 제1 요소 인코더(210)는 내부 레지스터를 포함하도록 구성되며, 초기 레지스터의 상태는 “000”이다.
바람직하게는, 제1 요소 인코더(210)는 입력 데이터의 비트열을 복수의 비트 단위로 받을 수 있다. 예를 들면, 입력 데이터는 제1 요소 인코더(210)에 입력되기 전에 복수의 비트 단위로 입력 데이터의 비트열을 생성하는 수단에 의해 복수의 비트 단위로 구분되어 제1 요소 인코더(210)에 입력될 수 있다.
도 3은 본 발명의 일 실시예에 따른 입력 비트열의 구조를 나타내는 블록도이다. 도 3을 참조하면, 제1 요소 인코더(210)는, 터보 인코더(200)에 입력되는 데이터의 크기를 C라 할 때, C가 8로 나누었을 때 나머지가 없도록 하는 F의 숫자만큼 입력 데이터 앞쪽에 필러비트(Filler bit)가 존재하는 입력 비트열을 입력받는다. 이때, 필러비트(Filler bit)는 ‘0’일 수 있다.
즉, 제1 요소 인코더(210)에 입력되는 데이터의 비트열 크기는 터보 인코더(200)에 입력되는 데이터의 크기(C)와 상기 데이터의 앞쪽에 존재하는 필러비트의 수(F)의 합과 같고, 또한 입력 비트열의 수(M8)에 8을 곱한 것과 같다. 또한, 상기 데이터의 비트열 크기는 최대 6144이며, 표 1에 정의된 Ki 값만을 가질 수 있다.
다시 도 2를 참조하면, 본 발명의 바람직한 다른 실시예에 따르면, 제1 요소 인코더(210)는 입력되는 데이터의 비트열과 내부 상태를 이용하여 제1 출력 비트열을 생성한다.
제1 요소 인코더(210)의 내부 상태는 제1 요소 인코더(210)에 포함된 내부 레지스터의 상태를 의미한다.
제1 요소 인코더(210)는 입력되는 데이터의 비트열을 인코딩하면서, 내부 레지스터의 상태도 함께 연산한다.
바람직하게는 제1 요소 인코더(210)는 입력되는 데이터의 비트열을 C(n), C(n+1), C(n+2), C(n+3), C(n+4), C(n+5), C(n+6), C(n+7)이라 하고, 제1 요소 인코더(210)의 내부 상태를 D0(n), D1(n), D2(n)이라 할 때, 아래의 수식에 따라 Z(n), Z(n+1), Z(n+2), Z(n+3), Z(n+4), Z(n+5), Z(n+6), Z(n+7)인 제1 출력 비트열 또는 X(n), X(n+1), X(n+2), X(n+3), X(n+4), X(n+5), X(n+6), X(n+7)인 제1 출력 비트열을 생성할 수 있다. 제1 요소 인코더(210)는 도 1에 나타난 인코딩 방식을 이용한다.
X(n) = C(n)
Z(n) = C(n)+D0(n)+D1(n)
X(n+1) = C(n+1)
Z(n+1) = C(n+1)+D0(n+1)+D1(n+1)
= C(n+1)+C(n)+D1(n)+D2(n)+D1(n+1)
= C(n+1)+C(n)+D1(n)+D2(n)+D0(n)
X(n+2) = C(n+2)
Z(n+2) = C(n+2)+D0(n+2)+D1 (n+2)
= C(n+2)+C(n+1)+D1(n+1)+D2(n+1)+D1(n+2)
= C(n+2)+C(n+1)+D0(n)+D1(n)+D0(n+1)
= C(n+2)+C(n+1)+D0(n)+D1(n)+C(n)+D1(n)+D2(n)
= C(n+2)+C(n+1)+C(n)+D0(n)+D2(n)
X(n+3) = C(n+3)
Z(n+3) = C(n+3)+D0(n+3)+D1(n+3)
= C(n+3)+C(n+2)+D1(n+2)+D2(n+2)+D1(n+3)
= C(n+3)+C(n+2)+D0(n+1)+D0(n)+D0(n+2)
= C(n+3)+C(n+2)+C(n)+D1(n)+D2(n)+D0(n)+C(n+1)
+D1(n+1)+D2(n+1)
= C(n+3)+C(n+2)+C(n+1)+C(n)+D1(n)+D2(n)+D0(n)
+D0(n)+D1(n)
= C(n+3)+C(n+2)+C(n+1)+C(n)+D2(n)
X(n+4) = C(n+4)
Z(n+4) = C(n+4)+D0(n+4)+D1(n+4)
= C(n+4)+C(n+3)+D1(n+3)+D2(n+3)+D1(n+4)
= C(n+4)+C(n+3)+D0(n+2)+D0(n+1)+D0(n+3)
= C(n+4)+C(n+3)+C(n+1)+D1(n+1)+D2(n+1)+C(n)
+D1(n)+D2(n)+C(n+2)+D1(n+2)+D2(n+2)
= C(n+4)+C(n+3)+C(n+2)+C(n+1)+C(n)+D0(n)+D1(n)
+D1(n)+D2(n)+D0(n+1)+D0(n)
= C(n+4)+C(n+3)+C(n+2)+C(n+1)+C(n)+D2(n)+D0(n+1)
= C(n+4)+C(n+3)+C(n+2)+C(n+1)+C(n)+D2(n)+C(n)
+D1(n)+D2(n)
= C(n+4)+C(n+3)+C(n+2)+C(n+1)+D1(n)
X(n+5) = C(n+5)
Z(n+5) = C(n+5)+D0(n+5)+D1(n+5)
= C(n+5)+C(n+4)+D1(n+4)+D2(n+4)+D1(n+5)
= C(n+5)+C(n+4)+D0(n+3)+D0(n+2)+D0(n+4)
= C(n+5)+C(n+4)+C(n+2)+D1(n+2)+D2(n+2)+C(n+1)
+D1(n+1)+D2(n+1)+C(n+3)+D1(n+3)+D2(n+3)
= C(n+5)+C(n+4)+C(n+3)+C(n+2)+C(n+1)+D0(n+1)
+D0(n)+D0(n)+D1(n)+D0(n+2)+D0(n+1)
= C(n+5)+C(n+4)+C(n+3)+C(n+2)+C(n+1)+D1(n)
+D0(n+2)
= C(n+5)+C(n+4)+C(n+3)+C(n+2)+C(n+1)+D1(n)
+C(n+1)+D1(n+1)+D2(n+1)
= C(n+5)+C(n+4)+C(n+3)+C(n+2)+D1(n)+D0(n)+D1(n)
= C(n+5)+C(n+4)+C(n+3)+C(n+2)+D0(n)
X(n+6) = C(n+6)
Z(n+6) = C(n+6)+D0(n+6)+D1(n+6)
= C(n+6)+C(n+5)+D1(n+5)+D2(n+5)+D0(n+5)
= C(n+6)+C(n+5)+D0(n+4)+D0(n+3)+D0(n+5)
= C(n+6)+C(n+5)+C(n+3)+D1(n+3)+D2(n+3)+C(n+2)
+D1(n+2)+D2(n+2)+C(n+4)+D1(n+4)+D2(n+4)
= C(n+6)+C(n+5)+C(n+4)+C(n+3)+C(n+2)+D0(n+2)
+D0(n+1)+D0(n+1)+D0(n) +D0(n+3)+D0(n+2)
= C(n+6)+C(n+5)+C(n+4)+C(n+3)+C(n+2)+D0(n)
+D0(n+3)
= C(n+6)+C(n+5)+C(n+4)+C(n+3)+C(n+2)+D0(n)
+C(n+2)+D1(n+2)+D2(n+2)
= C(n+6)+C(n+5)+C(n+4)+C(n+3)+D0(n)+D0(n+1)
+D0(n)
= C(n+6)+C(n+5)+C(n+4)+C(n+3)+D0(n+1)
= C(n+6)+C(n+5)+C(n+4)+C(n+3)+C(n)+D1(n)+D2(n)
X(n+7) = C(n+7)
Z(n+7) = C(n+7)+D0(n+7)+D1(n+7)
= C(n+7)+C(n+6)+D1(n+6)+D2(n+6)+D1(n+7)
= C(n+7)+C(n+6)+D0(n+5)+D0(n+4)+D0(n+6)
= C(n+7)+C(n+6)+C(n+4)+D1(n+4)+D2(n+4)+C(n+3)
+D1(n+3)+D2(n+3)+C(n+5)+D1(n+5)+D2(n+5)
= C(n+7)+C(n+6)+C(n+5)+C(n+4)+C(n+3)+D0(n+3)
+D0(n+2)+D0(n+2)+D0(n+1)+D0(n+4)+D0(n+3)
= C(n+7)+C(n+6)+C(n+5)+C(n+4)+C(n+3)+D0(n+1)
+D0(n+4)
= C(n+7)+C(n+6)+C(n+5)+C(n+4)+C(n+3)+C(n)+D1(n)
+D2(n)+C(n+3)+D1(n+3)+D2(n+3)
= C(n+7)+C(n+6)+C(n+5)+C(n+4)+C(n)+D1(n)+D2(n)
+D1(n+3)+D2(n+3)
= C(n+7)+C(n+6)+C(n+5)+C(n+4)+C(n)+D1(n)+D2(n)
+D0(n+2)+D0(n+1)
= C(n+7)+C(n+6)+C(n+5)+C(n+4)+C(n)+D1(n)+D2(n)
+C(n+1)+D1(n+1)+D2(n+1)+C(n)+D1(n)+D2(n)
= C(n+7)+C(n+6)+C(n+5)+C(n+4)+C(n+1)+D1(n+1)
+D2(n+1)
= C(n+7)+C(n+6)+C(n+5)+C(n+4)+C(n+1)+D0(n)+D1(n)
또한, 바람직하게는, 제1 요소 인코더(210)는 n+8인 경우의 내부 상태인 D0(n+8), D1(n+8), D2(n+8)을 아래의 수식에 따라 도출할 수 있다.
D0(n+8) = C(n+7)+D1(n+7)+D2(n+7)
= C(n+7)+D0(n+6)+D0(n+5)
= C(n+7)+C(n+5)+D1(n+5)+D2(n+5)+C(n+4)
+D1(n+4)+D2(n+4)
= C(n+7)+C(n+5)+C(n+4)+D1(n+5)+D2(n+5)
+D1(n+4)+D2(n+4)
= C(n+7)+C(n+5)+C(n+4)+D0(n+4)+D1(n+4)
+D1(n+4)+D0(n+2)
= C(n+7)+C(n+5)+C(n+4)+D0(n+4)+D0(n+2)
= C(n+7)+C(n+5)+C(n+4)+C(n+3)+D1(n+3)
+D2(n+3)+C(n+1)+D1(n+1)+D2(n+1)
= C(n+7)+C(n+5)+C(n+4)+C(n+3)+C(n+1)
+D0(n+2)+D0(n+1)+D0(n)+D1(n)
= C(n+7)+C(n+5)+C(n+4)+C(n+3)+C(n+1)+D0(n)
+D1(n)+C(n+1)+D1(n+1)+D2(n+1)+C(n)+D1(n)+D2(n)
= C(n+7)+C(n+5)+C(n+4)+C(n+3)+C(n)+D0(n)
+D1(n)+D0(n)+D1(n)+D1(n) +D2(n)
= C(n+7)+C(n+5)+C(n+4)+C(n+3)+C(n)+D1(n)+D2(n)
D1(n+8) = D0(n+7)
= C(n+6)+D1(n+6)+D2(n+6)
= C(n+6)+D0(n+5)+D0(n+4)
= C(n+6)+C(n+4)+D1(n+4)+D2(n+4)+C(n+3)
+D1(n+3)+D2(n+3)
= C(n+6)+C(n+4)+C(n+3)+D0(n+3)+D1(n+3)
+D1(n+3)+D0(n+1)
= C(n+6)+C(n+4)+C(n+3)+D0(n+3)+D0(n+1)
= C(n+6)+C(n+4)+C(n+3)+C(n+2)+D1(n+2)+D2(n+2)
+C(n)+D1(n)+D2(n)
= C(n+6)+C(n+4)+C(n+3)+C(n+2)+C(n)+D0(n+1)
+D0(n)+D1(n)+D2(n)
= C(n+6)+C(n+4)+C(n+3)+C(n+2)+C(n)+C(n)+D1(n)
+D2(n)+D0(n)+D1(n)+D2(n)
= C(n+6)+C(n+4)+C(n+3)+C(n+2)+D1(n)+D2(n)
+D0(n)+D1(n)+D2(n)
= C(n+6)+C(n+4)+C(n+3)+C(n+2)+D0(n)
D2(n+8) = D0(n+6)
= C(n+5)+D1(n+5)+D2(n+5)
= C(n+5)+D0(n+4)+D0(n+3)
= C(n+5)+C(n+3)+D1(n+3)+D2(n+3)+C(n+2)
+D1(n+2)+D2(n+2)
= C(n+5)+C(n+3)+C(n+2)+D0(n+2)+D0(n+1)
+D0(n+1)+D0(n)
= C(n+5)+C(n+3)+C(n+2)+D0(n+2)+D0(n)
= C(n+5)+C(n+3)+C(n+2)+C(n+1)+D1(n+1)
+D2(n+1)+D0(n)
= C(n+5)+C(n+3)+C(n+2)+C(n+1)+D0(n)+D1(n)
+D0(n)
= C(n+5)+C(n+3)+C(n+2)+C(n+1)+D1(n)
상기 수식 관계를 정리하면, 아래의 표와 같이 나타낼 수 있다. 표에 나타난 'V'는 배타적 논리합(Exclusive-OR) 연산을 의미한다.
C(n+7) C(n+6) C(n+5) C(n+4) C(n+3) C(n+2) C(n+1) C(n) D2(n) D1(n) D0(n)
Z(n) V V V
Z(n+1) V V V V V
Z(n+2) V V V V V
Z(n+3) V V V V V V
Z(n+4) V V V V V
Z(n+5) V V V V V
Z(n+6) V V V V V V V
Z(n+7) V V V V V V V
D0(n+8) V V V V V V V
D1(n+8) V V V V V
D2(n+8) V V V V V
도 6은 본 발명의 일 실시예에 따른 요소 인코더 회로의 구성을 나타내는 블록도이다. 도 6에 나타난 요소 인코더 회로는 상기 설명한 입력 C(n), C(n+1), C(n+2), C(n+3), C(n+4), C(n+5), C(n+6), C(n+7)과 내부 상태 D0(n), D1(n), D2(n)를 이용하여 출력 비트열 Z(n), Z(n+1), Z(n+2), Z(n+3), Z(n+4), Z(n+5), Z(n+6), Z(n+7)과 다음 내부 상태 D0(n+8), D1(n+8), D2(n+8)을 도출하는 회로의 일 예를 나타낸다.
다시, 도 2를 참조하면, 제1 요소 인코더(210)는 도 3에서 도시한 형태의 입력 비트열을 입력받아 입력 비트열에 존재하는 필러 비트의 개수만큼 널(NULL) 비트가 존재하는 출력 비트열을 생성한다.
본 발명의 바람직한 일 실시예에 따르면, 제1 요소 인코더(210)는 상기 널 비트를 ‘0’으로 표현한다.
널(NULL) 비트를 표현하는 방법이 여러 가지 있으나, 터보 인코더의 다음 단계 신호처리를 용이하게 하기 위하여 0으로 표현한다. 이후, 널(NULL) 비트와 0 비트를 구분하는 방법으로 입력 비트열에 삽입되는 0의 개수를 이용한다.
다시 도 2를 참조하면, 내부 인터리버(220)는 터보 인코더(200)에 입력되는 데이터를 받아 섞임(interleaved) 입력 비트열을 생성한다.
바람직하게는, 내부 인터리버(220)는 복수의 비트 단위의 섞임 입력 비트열을 생성하도록 구성될 수 있다.
제2 요소 인코더(230)는 내부 인터리버(220)를 통해 생성된 섞임 입력 비트열을 입력을 복수의 비트 단위로 입력받아 섞임 입력 비트열을 인코딩하여 복수의 비트 단위의 제2 출력 비트열을 생성한다.
제2 요소 인코더(230)는 입력받는 데이터의 비트열이 상이한 것과 비트열 조합장치(250) 전달하는 출력 비트열이 상이한 것 외에 제1 요소 인코더(210)에 대해 설명한 바와 같다.
상기 출력 비트열이 상이한 것은 제1 요소 인코더(210)가 비트열 조합장치(250)에 전달하는 출력 비트열은 연산된 X(n)과 Z(n) 모두이지만, 제2 요소 인코더(230)가 전달하는 출력 비트열은 연산된 X'(n)과 Z'(n) 중 X'(n)만인 것을 의미한다.
격자종료 인코더(240)는 제1 요소 인코더(210)와 제2 요소 인코더(230)의 격자종료를 위한 비트를 생성한다.
본 발명의 바람직한 일 실시예에 따르면, 격자종료 인코더(240)는 제1 요소 인코더(210) 또는 제2 요소 인코더(230)에 입력 데이터에 대한 마지막 입력 비트열이 입력된 때의 제1 요소 인코더(210) 또는 제2 요소 인코더(230)의 내부 상태를 이용하여 격자종료를 위한 비트를 생성한다.
예를 들면, 격자종료 인코더(240)는 제1 요소 인코더(210) 또는 제2 요소 인코더(230)에 입력 데이터에 대한 마지막 입력 비트열이 입력된 때의 제1 요소 인코더(210) 또는 제2 요소 인코더(230)의 내부 상태를 D0(n), D1(n), D2(n)이라 할 때, 출력되는 Z(n), Z(n+1), Z(n+2), X(n), X(n+1), X(n+2)는 아래의 수식에 따라 생성된다. 제1 요소 인코더(210) 또는 제2 요소 인코더(230)에 입력되는 첫 번째 값은 0이므로, D0(n+1) = D1(n+2) = 0 이 된다.
X(n) = D1(n) + D2(n)
Z(n) = D0(n) + D2(n)
X(n+1) = D1(n+1) + D2(n+1)
= D0(n) + D1(n)
Z(n+1) = D0(n+1) + D2(n+1)
= 0 + D1(n)
= D1(n)
X(n+2) = D1(n+2) + D2(n+2)
= D0(n+1) + D0(n)
= D0(n)
Z(n+2) = D0(n+2) + D2(n+2)
= 0 + D0(n)
= D0(n)
바람직하게는, 격자종료를 위한 비트는 12 비트이며, 격자종료 인코더(240)는 한 클럭 사이클 동안 격자종료를 위한 비트를 생성할 수 있다.
비트열 조합장치(250)는 제1 요소 인코더(210)로부터 제1 출력 비트열을, 제2 요소 인코더(230)로부터 제2 출력 비트열을, 격자종료 인코더(240)로부터 격자종료를 위한 비트를 받아 레이트 매칭에 활용되는 입력 비트열을 생성한다.
바람직하게는, 비트열 조합장치(250)가 생성하는 레이트 매칭에 활용되는 입력 비트열은 바이트 단위의 3개의 비트열이다.
도 4는 본 발명의 일 실시예에 따른 비트열 조합장치에 입력되는 비트열의 구조를 나타내는 블록도이다. 도 4를 참조하면, 비트열 조합장치(250)는 제1 요소 인코더(210)로부터 제1 출력 비트열(X(n), Z(n))을, 제2 요소 인코더(230)로부터 제2 출력 비트열(X'(n))을, 격자종료 인코더(220)로부터 격자종료를 위한 비트를 입력받는다.
바람직하게는, 비트열 조합장치(250)는 도 4에 도시된 바에 따라 제1 출력 비트열 각각과 제2 출력 비트열에 격자종료를 위한 비트를 4 비트씩 덧붙이는 것을 수행한다.
도 5는 본 발명의 일 실시예에 따른 비트열 조합장치가 출력하는 터보 인코더의 최종 출력구조를 나타내는 블록도이다. 도 5를 참조하면, 비트열 조합장치(250)는 제1 출력 비트열로부터 받은 X(0,…,k-1)과 Z(0,…,k-1) 및 제2 출력 비트열로부터 받은 X'(0,…,k-1)에 격자종료를 위한 비트를 연결하여 최종 출력 구조를 생성한다.
바람직하게는, 비트열 조합장치(250)는 격자종료 인코더(240)가 생성한 12 비트 정보를 3개의 4 비트 정보로 분류한다. 또한, 비트열 조합장치(250)는 분류한 각 4 비트를 3개의 최종 출력 비트열에 연결하되 4 바이트 단위 구조체가 되도록 출력 비트열의 앞쪽에 널 비트를 추가한다.
바람직하게는, 비트열 조합장치(250)는 제1 출력 비트열, 제2 출력 비트열 및 격자종료를 위한 비트를 받아 32 비트 단위 구조체를 만들되, 8비트 단위 처리를 위해 8 비트 단위의 구조체가 되도록 구성할 수 있다.
도 8은 본 발명의 일 실시예에 따른 비트열 조합장치의 구성을 나타내는 블록도이다. 도 8을 참조하면, 비트열 조합장치(250)는 격자종료를 위한 비트 4 비트를 8 비트 단위로 구성할 수 있도록 레지스터를 이용하여 8 비트 단위의 하위 4 비트를 1 사이클 지연시킨다. 또한, 비트열 조합장치(250)는 K값에 따른 널(NULL) 비트 추가분을 K를 이진수로 표현하였을 때의 3번째와 4번째 비트를 검출하여 이를 멀티플렉서 제어비트로 활용하여 4, 12, 20 또는 28 비트의 널(NULL) 비트가 삽입되도록 한다.
즉, 삽입되는 널 비트의 수(Number of Nulls) = 32 -{(K+4) mod 32}에 따른다.
바람직하게는, 비트열 조합장치(250)는 D-플립플롭(D-type flip-flop)으로 구성된 8 비트 단위의 지연 레지스터(delay register)를 이용할 수 있다.
이상에서는 본 발명의 바람직한 실시예 및 응용예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예 및 응용예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안 될 것이다.
200: 터보 인코더 장치 210: 제1 요소 인코더
220: 내부 인터리버 230: 제2 요소 인코더
240: 격자종료 인코더 250: 비트열 조합장치

Claims (7)

  1. 삭제
  2. 데이터를 입력받아 부호화 비트열을 출력하는 터보 인코더 장치에 있어서,
    지정된 코드블록의 크기를 가지며 패딩이 이루어진 상기 데이터의 비트열을 8 비트 단위로 입력받아 인코딩을 하여 8 비트 단위의 제1 출력 비트열을 생성하는 제1 요소 인코더;
    상기 데이터의 비트열로부터 섞임 입력 비트열을 생성하는 내부 인터리버;
    상기 섞임 입력 비트열을 8 비트 단위로 입력받아 인코딩을 하여 8 비트 단위의 제2 출력 비트열을 생성하는 제2 요소 인코더;
    상기 제1 요소 인코더와 상기 제2 요소 인코더의 격자종료를 위한 비트를 생성하는 격자종료 인코더;
    상기 제1 출력 비트열, 상기 제2 출력 비트열 및 상기 격자종료를 위한 비트를 받아 레이트 매칭의 입력 비트열을 생성하는 비트열 조합장치;를 포함하는 것
    을 특징으로 하는 터보 인코더 장치.
  3. 제2항에 있어서,
    상기 제1 요소 인코더는 상기 데이터의 비트열과 상기 제1 요소 인코더의 내부 상태를 이용하여 상기 제1 출력 비트열을 생성하고,
    상기 제2 요소 인코더는 상기 섞임 입력 비트열과 상기 제2 요소 인코더의 내부 상태를 이용하여 상기 제2 출력 비트열을 생성하는 것
    을 특징으로 하는 터보 인코더 장치.
  4. 제2항에 있어서,
    상기 제1 요소 인코더 또는 상기 제2 요소 인코더는 상기 제1 출력 비트열 또는 상기 제2 출력 비트열에 상기 데이터의 비트열에 존재하는 필러 비트의 개수만큼 존재하는 널(NULL) 비트를 0 비트로 표현하는 것
    을 특징으로 하는 터보 인코더 장치.
  5. 제2항에 있어서,
    상기 격자종료 인코더는 상기 제1 요소 인코더 또는 상기 제2 요소 인코더에 상기 데이터에 대한 마지막 입력 비트열이 입력된 때의 내부 상태를 이용하여 상기 격자종료를 위한 비트를 생성하는 것
    을 특징으로 하는 터보 인코더 장치.
  6. 제2항에 있어서,
    상기 비트열 조합장치는 상기 레이트 매칭의 입력 비트열을 상기 레이트 매칭이 병렬적으로 수행될 수 있도록 재배치하는 것
    을 특징으로 하는 터보 인코더 장치.
  7. 제6항에 있어서,
    상기 비트열 조합장치는 상기 레이트 매칭의 입력 비트열에 상기 코드블록의 크기에 따라 결정되는 숫자만큼 널(NULL) 비트를 삽입하고 상기 격자종료를 위한 비트를 상기 제1 출력 비트열 또는 제2 출력 비트열에 덧붙이되,
    상기 널(NULL) 비트의 삽입은, 상기 제1 출력 비트열 또는 제2 출력 비트열의 8 비트 단위에서 상위 4 비트와 하위 4 비트의 위치를 바꾸고 상기 하위 4 비트를 1 사이클 지연시킨 뒤 추가해야 하는 상기 널(NULL) 비트의 숫자에 따라 사이클 지연회로를 통과시킴으로써 수행되는 것
    을 특징으로 하는 터보 인코더 장치.
KR1020120006617A 2012-01-20 2012-01-20 터보 인코더 장치 KR101286019B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020120006617A KR101286019B1 (ko) 2012-01-20 2012-01-20 터보 인코더 장치
US14/370,565 US9000959B2 (en) 2012-01-20 2012-02-24 Turbo encoder apparatus
EP12865919.0A EP2826150B8 (en) 2012-01-20 2012-02-24 Turbo encoder apparatus
PCT/KR2012/001439 WO2013108952A1 (en) 2012-01-20 2012-02-24 Turbo encoder apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120006617A KR101286019B1 (ko) 2012-01-20 2012-01-20 터보 인코더 장치

Publications (1)

Publication Number Publication Date
KR101286019B1 true KR101286019B1 (ko) 2013-07-19

Family

ID=48799365

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120006617A KR101286019B1 (ko) 2012-01-20 2012-01-20 터보 인코더 장치

Country Status (4)

Country Link
US (1) US9000959B2 (ko)
EP (1) EP2826150B8 (ko)
KR (1) KR101286019B1 (ko)
WO (1) WO2013108952A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140130394A (ko) * 2008-01-31 2014-11-10 엘지전자 주식회사 채널 코딩 방법과 채널 코딩 장치
US9225470B2 (en) 2008-01-31 2015-12-29 Lg Electronics Inc. Method for determining transport block size and signal transmission method using the same

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100319919B1 (ko) * 1996-07-06 2002-06-20 윤종용 가변 확률모형을 사용한 개선된 산술 부호화기 및/또는 복호화기
KR100369561B1 (ko) * 2000-11-08 2003-01-29 학교법인 한국정보통신학원 터보 코드용 인코더 및 디코더
KR20070112326A (ko) * 2006-05-20 2007-11-23 삼성전자주식회사 고속 데이터 전송에 적합한 터보 부호화 방법 및 장치
KR20090125080A (ko) * 2007-03-16 2009-12-03 삼성전자주식회사 다중 코드 블록을 가지는 송신의 성능 향상과 빠른 복호를 가능하게 하는 방법 및 장치

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6772391B1 (en) * 1998-10-13 2004-08-03 Interdigital Technology Corporation Hybrid interleaver for turbo codes
EP1085660A1 (en) * 1999-09-15 2001-03-21 TELEFONAKTIEBOLAGET L M ERICSSON (publ) Parallel turbo coder implementation
US6701482B2 (en) * 2001-09-20 2004-03-02 Qualcomm Incorporated Method and apparatus for coding bits of data in parallel
KR100842083B1 (ko) 2005-10-21 2008-06-30 삼성전자주식회사 듀얼 전송 스트림을 인코딩하는 트렐리스 인코더
WO2007132912A1 (ja) 2006-05-17 2007-11-22 Nec Corporation ターボ符号器及びそれに用いるharq処理方法
US8005166B2 (en) * 2006-11-14 2011-08-23 Samsung Electronics Co., Ltd. System for digital television broadcasting using modified 2/3 trellis coding
EP2443751A1 (en) * 2009-06-17 2012-04-25 Coherent Logix Incorporated Parallel execution of trellis-based methods

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100319919B1 (ko) * 1996-07-06 2002-06-20 윤종용 가변 확률모형을 사용한 개선된 산술 부호화기 및/또는 복호화기
KR100369561B1 (ko) * 2000-11-08 2003-01-29 학교법인 한국정보통신학원 터보 코드용 인코더 및 디코더
KR20070112326A (ko) * 2006-05-20 2007-11-23 삼성전자주식회사 고속 데이터 전송에 적합한 터보 부호화 방법 및 장치
KR20090125080A (ko) * 2007-03-16 2009-12-03 삼성전자주식회사 다중 코드 블록을 가지는 송신의 성능 향상과 빠른 복호를 가능하게 하는 방법 및 장치

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140130394A (ko) * 2008-01-31 2014-11-10 엘지전자 주식회사 채널 코딩 방법과 채널 코딩 장치
KR20140130393A (ko) * 2008-01-31 2014-11-10 엘지전자 주식회사 채널 코딩 방법과 채널 코딩 장치
KR101526990B1 (ko) * 2008-01-31 2015-06-11 엘지전자 주식회사 전송 블록 크기 결정 방법 및 이를 이용한 신호 전송 방법
US9225470B2 (en) 2008-01-31 2015-12-29 Lg Electronics Inc. Method for determining transport block size and signal transmission method using the same
KR101606806B1 (ko) 2008-01-31 2016-03-28 엘지전자 주식회사 채널 코딩 방법과 채널 코딩 장치
KR101667590B1 (ko) 2008-01-31 2016-10-19 엘지전자 주식회사 채널 코딩 방법과 채널 코딩 장치
US9807647B2 (en) 2008-01-31 2017-10-31 Lg Electronics Inc. Method for determining transport block size and signal transmission method using the same
US10425858B2 (en) 2008-01-31 2019-09-24 Lg Electronics Inc. Method for determining transport block size and signal transmission method using the same

Also Published As

Publication number Publication date
EP2826150B1 (en) 2021-06-30
EP2826150B8 (en) 2021-08-04
EP2826150A4 (en) 2015-11-18
WO2013108952A1 (en) 2013-07-25
US9000959B2 (en) 2015-04-07
EP2826150A1 (en) 2015-01-21
US20140375485A1 (en) 2014-12-25

Similar Documents

Publication Publication Date Title
JP3546063B2 (ja) 通信システムのチャネル符号化装置及び方法
CN101075857B (zh) 一种turbo码的块交织及HARQ包生成方法
JP5614896B2 (ja) ターボ符号化方法及びターボ符号化方法を具現するための装置
US8898550B2 (en) Encoding of data for transmission
KR102281107B1 (ko) 데이터 부호화 방법, 인코더, 디코더 및 통신 시스템
JP2008219892A (ja) データを符号化および復号化する方法および装置
WO2011026375A1 (zh) 编码方法及装置、解码方法及装置
JP2010539787A5 (ko)
WO2017011946A1 (zh) 基于不等差错保护的数据传输方法、装置和设备
CN101902228A (zh) 快速循环冗余校验编码方法及装置
KR101286019B1 (ko) 터보 인코더 장치
CN114731166A (zh) 空间耦合fec编码方法和使用gel码的分量码的设备
CN108462561A (zh) 超高速通信系统中串并结合的信道编译码方法及装置
US10075186B2 (en) Trellis segment separation for low-complexity viterbi decoding of high-rate convolutional codes
KR20060121312A (ko) 컨볼루션 터보 부호 인터리버
WO2012109872A1 (zh) 通信系统中的循环冗余校验处理方法、装置和lte终端
TWI303931B (en) Method of first interleavering of a two interleaver transmitter
JP2023519407A (ja) データ通信のためのコーディング方法および装置
CN110034846B (zh) 一种编码方法及装置
CN107077402B (zh) 码字生成方法、错误位确定方法及其电路
KR101968590B1 (ko) 순환 구조적 부호화 방법, 이를 이용한 순환 구조적 길쌈 부호화기 및 터보 부호화기
KR101200073B1 (ko) 무선 통신 시스템의 채널 부호기
CN112803955B (zh) 通用Turbo码编码器结构、编码器、方法、装置、设备及介质
CN110336644B (zh) 一种高维调制下的分层编码方法
KR101049947B1 (ko) 컨볼루셔널 터보 코드 부호화 장치 및 컨볼루셔널 터보 코드를 사용하는 부호화 방법

Legal Events

Date Code Title Description
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: 20160609

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170608

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180627

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190625

Year of fee payment: 7