KR20020091848A - Turbo interleaving apparatus and method in cdma mobile communication system having turbo code - Google Patents

Turbo interleaving apparatus and method in cdma mobile communication system having turbo code Download PDF

Info

Publication number
KR20020091848A
KR20020091848A KR1020010025305A KR20010025305A KR20020091848A KR 20020091848 A KR20020091848 A KR 20020091848A KR 1020010025305 A KR1020010025305 A KR 1020010025305A KR 20010025305 A KR20010025305 A KR 20010025305A KR 20020091848 A KR20020091848 A KR 20020091848A
Authority
KR
South Korea
Prior art keywords
value
row
output
exchange
interleaver
Prior art date
Application number
KR1020010025305A
Other languages
Korean (ko)
Other versions
KR100800840B1 (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 KR1020010025305A priority Critical patent/KR100800840B1/en
Publication of KR20020091848A publication Critical patent/KR20020091848A/en
Application granted granted Critical
Publication of KR100800840B1 publication Critical patent/KR100800840B1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing

Landscapes

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

Abstract

PURPOSE: An apparatus and a method for turbo interleaving of a CDMA mobile communication system using a turbo code are provided to reduce a hardware process delay by improving a structure of a turbo interleaving apparatus. CONSTITUTION: An intra-row permutation portion(300) is formed with a buffer(301) for updating a row address value, a base sequence portion(303) for exchanging a row address within a row, a reduced q generation portion(305) for outputting a reduction q valve, an adder(307) for adding the reduced q value to the row address of the buffer(301), a comparator(309) for comparing an output value A of the adder(307) with a value of B of p-1, a multiplexer(313) for selecting one of 0 and the value of p-1, and a subtracter(311) for subtracting an output value of the multiplexer(313) from the value of A. An inter-row permutation portion(320) is formed with a multiplexer(321) for outputting one of a base sequence value, 0,1, and the value of p, an adder(323) for adding output values of the multiplexers(321), and a multiplied_PIP generation portion(325) for outputting selectively multiplied_PIP values. A pruning portion(330) is used for comparing a size of interleaver index with a size of interleaver and outputting a smaller value.

Description

터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리빙 장치 및 방법{TURBO INTERLEAVING APPARATUS AND METHOD IN CDMA MOBILE COMMUNICATION SYSTEM HAVING TURBO CODE}Turbo interleaving apparatus and method for code division multiple access mobile communication system using turbo code {TURBO INTERLEAVING APPARATUS AND METHOD IN CDMA MOBILE COMMUNICATION SYSTEM HAVING TURBO CODE}

본 발명은 부호분할다중접속 이동통신시스템의 터보 인터리버 및 인터리빙 방법에 관한 것으로, 특히 프로세싱 지연을 줄일 수 있는 터보 인터리버 및 인터리빙 방법에 관한 것이다.The present invention relates to a turbo interleaver and an interleaving method of a code division multiple access mobile communication system, and more particularly, to a turbo interleaver and an interleaving method capable of reducing processing delay.

통상적으로 디지털 통신시스템에서는 전송 채널에서 발생하는 잡음(Noise)을 효과적으로 제거하기 위해 비터비, 터보 코더 등과 같은 채널 코더를 사용한다. 상기 터보 코더는 두 개의 인코더와 하나의 터보 인터리버로 구성된다. 상기 터보 인터리버는 터보 코딩의 성능을 극대화하기 위해 부가된 구성이며 인터리버의 크기만큼의 인터리버 어드레스를 발생시키는 장치이다. 상기 터보 인터리버로는 프라임 인터리버(Prime Interleaver: PIL)를 사용한다. 상기 PIL은 2차 매트릭스 교환(2-dimensional matrix permutation) 동작을 기본으로 하고 프루닝(Pruning) 동작을 통해 인터리버 인덱스가 터보 인터리버 크기보다 커지게 되면 펑처링(Puncturing)하는 추가 동작이 있게 된다. 즉 터보 인터리버 크기가 K라고 하면 인터리빙 인덱스가 K보다 크면 그 인덱스는 무시하면 된다는 것을 의미한다.In general, a digital communication system uses a channel coder such as Viterbi, a turbo coder, etc. to effectively remove noise generated in a transmission channel. The turbo coder consists of two encoders and one turbo interleaver. The turbo interleaver is a component added to maximize turbo coding performance and generates an interleaver address as large as the size of the interleaver. A prime interleaver (PIL) is used as the turbo interleaver. The PIL is based on a 2-dimensional matrix permutation operation, and when the interleaver index becomes larger than the turbo interleaver size through a pruning operation, there is an additional operation of puncturing. In other words, if the turbo interleaver size is K, the interleaving index is larger than K, which means that the index can be ignored.

상기 2차 매트릭스 교환은 행 내부 교환(Intra-raw permutation)과 행간 교환(Inter-row permutation)으로 구성된다. 상기 행 내부 교환은 하나의 행에서 각각의 값들을 교환하는 것이고 행간 교환은 행 단위로 교환을 수행하는 것이다. 상기 행 내부 교환과 행간 교환을 수행하기 위해서는 다수의 파라미터들이 필요하다. 즉 파라미터를 먼저 정해야 교환을 수행할 수 있다.The secondary matrix exchange consists of intra-raw permutation and inter-row permutation. The inter-row exchange is to exchange respective values in one row, and the inter-row exchange is to perform exchange on a row basis. In order to perform the inter-row and inter-row exchange, a plurality of parameters are required. In other words, the parameter must be set first before the exchange can be performed.

이하 행 내 교환 및 행간 교환을 위한 파라미터를 정의하고 동작 3단계로 나누어 설명한다.Hereinafter, parameters for in-row exchange and inter-line exchange are defined and described in three stages of operation.

첫 번째 단계로 PIL은 2차 매트릭스 구조이므로 터보 인터리버 크기 K에 해당하는 행(Row: 이하 "R"이라 함) 값을 미리 결정된 이하의 표1에 따라 구하며, 교환 패턴을 결정하는 파라미터인 p(소수) 값과 칼럼(Column) 값을 이하의 수학식 1에 의해 구한다.In the first step, since PIL is a secondary matrix structure, the row (Row: "R") value corresponding to the turbo interleaver size K is obtained according to Table 1 below. Decimal value) and column value are obtained by the following equation.

[표 1]TABLE 1

KK RR 40<=K<15940 <= K <159 55 160<=K<200160 <= K <200 1010 201<=K<480201 <= K <480 2020 481<=K<530481 <= K <530 1010 531<=K<5114531 <= K <5114 2020

[수학식 1][Equation 1]

if (481 <=K<530) then p=53 and C=p,if (481 <= K <530) then p = 53 and C = p,

elseelse

find minimum prime p such that (p+1)-K/R >=0,find minimum prime p such that (p + 1) -K / R> = 0,

and determine C such thatand determine C such that

if(p-K/R>=0) thenif (p-K / R> = 0) then

if(p-1-K/R)>=0 thenif (p-1-K / R)> = 0 then

C = P-1C = P-1

elseelse

C=pC = p

end ifend if

elseelse

C=p+1C = p + 1

end ifend if

상기 수학식 1에서 p는 K의 값에 따라 7, 19, 23,...251, 257의 74개 중의 하나의 값을 갖는다.In Equation 1, p has one of 74 values of 7, 19, 23,... 251, and 257 depending on the value of K.

도1은 인터리버의 크기를 나타내는 도면으로 도1a는 칼럼 값 C와 행 값 R에 의해 인터리버의 크기가 결정됨을 나타내고, 도1b는 상기 인터리버에 인터리버 인덱스를 쓸 경우 상위로부터 좌측에서 우측으로 쓰여짐을 나타내는 것이고, 도1c는 인터리버 인덱스를 읽을 경우에는 좌측으로부터 위에서 아래로 읽음을 나타내고 있다. 상기 도1에서 상기 인터리버의 크기는 R * C로 결정됨을 알 수 있다.FIG. 1 is a diagram showing the size of an interleaver. FIG. 1A shows that the size of an interleaver is determined by a column value C and a row value R, and FIG. 1C shows that the interleaver index is read from the left to the top when reading the interleaver index. In FIG. 1, it can be seen that the size of the interleaver is determined as R * C.

상기 표 1과 수학식 1에 의해 R, C 및 p 파라미터가 결정되면 각각의 p값에 해당하는 프리미티브 루트(Primitive root: 이하 "g0"라 함) 값을 3GPP 표준에 제안된 이하의 표2를 이용해 일 대 일로 값을 알 수 있다.When the R, C, and p parameters are determined by Table 1 and Equation 1, the primitive root value corresponding to each p value (hereinafter, referred to as "g0") is given in Table 3 below. You can find out the value one-to-one.

[표 2]TABLE 2

두 번째 단계에서는 상기 첫 번째 단계에서 정해진 g0과 p 값에 의해 행 내 교환을 먼저 수행한다. 상기 행 내 교환을 수행하기 위해 먼저 베이스 시퀀스(base sequence)를 생성해야 한다. 상기 베이스 시퀀스는 0부터 (p-1)의 값을 이하 수학식 2에 의해 교환하는 결과이다.In the second step, in-row exchange is first performed by the g0 and p values defined in the first step. In order to perform the in-row exchange, a base sequence must first be created. The base sequence is a result of exchanging a value from 0 to (p-1) by Equation 2 below.

[수학식 2][Equation 2]

c(0) = 1c (0) = 1

c(i) = [g0 * c(i-1)]mod p (i = 1, 2,..,p-2)c (i) = [g0 * c (i-1)] mod p (i = 1, 2, .., p-2)

이렇게 생성된 베이스 시퀀스는 R개의 행에 대한 교환의 룩업 테이블로 사용된다. 1번째부터 R 번째 행까지의 행 내 교환을 수행하기 위해서는 추가적으로 (p-1)의 값과 각 행에 필요한 q값이 필요하다. 상기 q값은 교환 패턴을 결정하는 값이다. 상기 q값은 {1, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89}의 21개의 엘리먼트를 가진 집합에서 (R-1)개의 수가 중복 없이 선택된다. 선택되는 방법은 이하의 수학식 3에 선택된다.The generated base sequence is used as a lookup table of exchanges for R rows. In order to perform the intra-row exchange from the first to the R-th row, the value of (p-1) and the q value required for each row are additionally required. The q value is a value for determining the exchange pattern. The q value of {1, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89} In a set of 21 elements, (R-1) numbers are selected without duplication. The method selected is selected in equation (3) below.

[수학식 3][Equation 3]

G.C.D{q(j), P-1} = 1, q(j)>6, and q(j)>q(j-1), q(0)=1G.C.D {q (j), P-1} = 1, q (j)> 6, and q (j)> q (j-1), q (0) = 1

상기 G.C.D는 Greatest Common Divisor의 약어로 최대 공약수를 나타낸다.G.C.D stands for Greatest Common Divisor.

상기 q(j)는 {1, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89} 중의 19개 또는 9개 또는 5개의 열에 중복 없이 지정된다. 상기 q(j)의 값은 21개의 값 중 어떤 2개의 값이 제외될지는 어떤 조건[G.C.D{q(j), p-1}=1]을 만족하지 않거나 또는 R-1개가 선택되면 나머지는 제외된다. 상기 q(j) 값은 이하의 표 3과 표 4를 이용해 K의 값에 따라 q(j)값이 교환된다.Q (j) is {1, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89 } 19 or 9 or 5 columns of} are specified without duplication. The value of q (j) does not satisfy any condition [GCD {q (j), p-1} = 1] of which two values of 21 values are to be excluded or excludes the rest when R-1 is selected. do. The q (j) value is replaced by the q (j) value according to the value of K using Tables 3 and 4 below.

[표 3]TABLE 3

[표 4]TABLE 4

각각의 행 내 교환은 이하의 수학식 4에 의해 이루어진다.Each intra-row exchange is made by Equation 4 below.

[수학식 4][Equation 4]

C=p-1일 때,When C = p-1,

At j-th row, (j=0, 1, 2,..,R-1)At j-th row, (j = 0, 1, 2, .., R-1)

Cj(i) = C([i * q(j)]mod (p-1) (i=1, 2,..., p-2)C j (i) = C ([i * q (j)] mod (p-1) (i = 1, 2, ..., p-2)

C=P일 때,When C = P,

At j-th row, (j=0, 1, 2,..., R-1)At j-th row, (j = 0, 1, 2, ..., R-1)

Cj(i)=C([i * q(j))]mod (p-1) (i=1,2,..., p-2), Cj(p-1)=0C j (i) = C ([i * q (j))] mod (p-1) (i = 1,2, ..., p-2), C j (p-1) = 0

C=p+1일 때,When C = p + 1,

At j-th row, (j=0, 1, 2,..., R-1)At j-th row, (j = 0, 1, 2, ..., R-1)

Cj(i)=C([i * q(j))]mod (p-1) (i=1,2,..., p-2), Cj(p-1)=0, Cj(p)=pC j (i) = C ([i * q (j))] mod (p-1) (i = 1,2, ..., p-2), C j (p-1) = 0, C j (p) = p

상기 수학식 4는 C가 p-1, p 또는 p+1 각각의 경우에서 j 번째 행에서의 행 내 교환을 나타내고 있으며, 상기 C가 p-1인 경우는 행 내 교환만을 수행하고, C가 p인 경우는 행 내 교환을 수행한 후 상기 행의 마지막 열에 0을 삽입하고, C가 p+1인 경우에는 행 내 교환을 수행한 후 상기 행의 마지막 두 번째 열에는 0을 삽입하고 마지막 열에는 p값을 삽입함을 나타내고 있다. 상기 0 또는/그리고 p를 삽입하는 것은 C값이 p 또는 p+1일 경우 행 내의 남는 열을 채우기 위한 것이다.Equation 4 represents in-row exchange in the j-th row in the case where C is p-1, p or p + 1, and when C is p-1, only in-row exchange is performed, and C is If p, insert 0 into the last column of the row after performing an in-row exchange; if C is p + 1, insert 0 into the last second column of the row and insert into 0 the last column Indicates that the p value is to be inserted. Inserting 0 or / and p is to fill the remaining columns in the row when the C value is p or p + 1.

도2는 일반적인 터보 인터리버의 동작을 나타낸 흐름도이다. 이하 도2를 참조하여 일반적인 터보 인터리버의 동작을 설명한다.2 is a flowchart illustrating the operation of a general turbo interleaver. Hereinafter, an operation of a general turbo interleaver will be described with reference to FIG. 2.

우선, 200단계에서 터보 인터리버의 크기 K가 결정되어 주어지면 터보 인터리버의 파라미터가 210단계에서 초기화된다. 상기 파라미터의 초기화 과정은 상기 주어진 K에 대한 파라미터들을 찾고 베이스 시퀀스를 생성하는 203단계와 상기 베이스 시퀀스를 생성하는 205단계로 구성된다. 구체적으로, 상기 초기화 단계 203은 상기 주어지는 K와 상기 수학식 1을 이용하여 상기 K값에 대응되는 R, C, p를 찾는다. 이때 추가적으로 찾아야 하는 파라미터가 상기 표 2에 의해 구해지는 g0이다. 상기 파라미터들이 찾아지면 205단계에서 상기 구해진 파라미터들을 상기 수학식 2에 적용하여 베이스 시퀀스를 생성한다.First, if the size K of the turbo interleaver is determined in step 200, the parameters of the turbo interleaver are initialized in step 210. The initialization of the parameter consists of step 203 of finding parameters for the given K and generating a base sequence, and step 205 of generating the base sequence. Specifically, the initialization step 203 finds R, C, and p corresponding to the K value by using the given K and Equation 1. At this time, the additional parameter to be found is g0 obtained by Table 2 above. If the parameters are found, in step 205, the obtained parameters are applied to Equation 2 to generate a base sequence.

상기 205단계에서 베이스 시퀀스가 생성되면 220단계로 진행하여 행 내 교환을 수행한다. 상기 220단계의 행 내 교환은 모듈로 연산을 수행하는 221단계와 상기 모듈로 연산되어 생성되는 베이스 시퀀스를 레지스터에 저장하고, 상기 저장된 베이스 시퀀스를 룩업 테이블로 사용하여 행 내 교환을 수행하는 223단계로 구성된다. 상기 220단계에서 행 내 교환이 이루어지면 230단계에서 행간 교환을 수행하고 240단계로 진행하여 프루닝(Pruning) 동작을 수행한다. 즉, 상기 행간 교환이 이루어진 인터리버 인덱스가 인터리버 사이즈보다 큰지를 판단하고 상기 인터리버 인덱스가 인터리버 사이즈보다 작으면 260단계로 진행하여 상기 터보 인터리버 인덱스를 출력하고, 작다면 상기 220단계로 돌아가 행 내 교환 및 행간 교환을 다시 수행한다. 이 동작은 인터리버 인덱스가 모두 출력될 때까지 반복적으로 수행된다.If the base sequence is generated in step 205, the process proceeds to step 220 to perform in-row exchange. In the step 220 of row exchange, step 221 of performing a modulo operation and a step 223 of storing a base sequence generated by the modulo in a register and performing an in-row exchange using the stored base sequence as a lookup table. It consists of. If the row exchange is performed in step 220, the row exchange is performed in step 230, and the flow proceeds to step 240 to perform a pruning operation. In other words, it is determined whether the interleaver index that has been exchanged between the rows is larger than the interleaver size, and if the interleaver index is smaller than the interleaver size, the controller proceeds to step 260 to output the turbo interleaver index. Perform interline exchange again. This operation is performed repeatedly until all interleaver indexes are output.

상술한 바와 같이 터보 인터리빙을 수행하기 위해서 행 내 교환과 행간 교환을 위한 계산들을 수행하는 하드웨어의 프로세싱 지연이 매우 큰 문제점이 있다. 구체적으로, 지연이 크게 발생하는 원인은 모듈로 연산이다. 상기 수학식 4에서 Cj(i) = C([i*q(j)]mod (p-1))의 [i*q(j)]mod (p-1)을 A(i)라 하면 Cj(i) = C(A(i))가 된다. 그리고 C()는 룩업 테이블이다. 상기 A(i)를 살펴보면 i*q의 값이 0부터 255 * 89의 값의 구간의 수가되고, p-1의 값은 0부터 256구간의 수가된다. 상기 I 값은 터보 인터리버 인덱스 1개를 발생시킬 때마다 1씩 증가한다. 즉 A(i)를 구하기 위해 곱셈이 필요하고 곱셈의 결과가 상대적으로 크므로 문제가 발생한다. 일반적으로 모듈로 연산 (a) mod(b)에서 a 및 b 값이 클수록 하드웨어 프로세싱 지연은 커지게 되기 때문이다.As described above, there is a problem in that a processing delay of hardware that performs calculations for intra-row exchange and inter-row exchange in order to perform turbo interleaving is very large. Specifically, a large delay is caused by modulo operation. In Equation 4, if [i * q (j)] mod (p-1) of C j (i) = C ([i * q (j)] mod (p-1)) is A (i) C j (i) = C (A (i)). And C () is a lookup table. Looking at A (i), the value of i * q is the number of intervals of values from 0 to 255 * 89, and the value of p-1 is the number of intervals from 0 to 256 sections. The I value is increased by one each time one turbo interleaver index is generated. That is, a problem arises because multiplication is necessary to find A (i) and the result of the multiplication is relatively large. In general, the larger the values of a and b in the modulo operation (a) mod (b), the greater the hardware processing delay.

따라서 본 발명의 목적은 터보 인터리버를 사용하는 이동통신시스템에서 하드웨어 프로세싱 지연이 적은 상기 터보 인터리버 및 그 방법을 제공함에 있다.Accordingly, an object of the present invention is to provide a turbo interleaver and a method thereof having low hardware processing delay in a mobile communication system using a turbo interleaver.

본 발명의 목적은 터보 인터리버를 사용하는 이동통신시스템에서 하드웨어 프로세싱 지연을 줄일 수 있는 터보 인터리버의 행간 교환 장치 및 방법을 제공함에 있다.An object of the present invention is to provide an interline exchange apparatus and method of a turbo interleaver that can reduce hardware processing delay in a mobile communication system using a turbo interleaver.

상기한 본 발명의 목적을 달성하기 위해서 본 발명은 부호분할다중접속 이동통신시스템의 터보 인터리버에 있어서, 터보 인터리빙 수행 시 인터리버 인덱스의 행 내 교환을 수행하기 위한 파라미터 큐(q)값을 감소하여 행 내 교환을 수행하는 행 내 교환부와, 상기 행 내 교환된 인터리버 인덱스를 행간 교환하는 행간 교환부와, 상기 행 내 교환과 행간 교환이 수행된 인터리버 인덱스의 크기와 인터리버의 크기를 비교하여 작은 경우만 출력하는 프루닝부로 이루어짐을 특징으로 한다.In order to achieve the above object of the present invention, the present invention provides a turbo interleaver in a code division multiple access mobile communication system in which a parameter queue (q) value for performing intra-row exchange of interleaver indexes during turbo interleaving is reduced. When the inter-row exchanger performing the inter-exchange, the inter-interchange exchanger interchanging the interleaver index exchanged in the row, and the size of the interleaver index and the interleaver size at which the intra-interchange and inter-line exchange are performed are small. It is characterized by consisting of a pruning unit for outputting only.

본 발명의 다른 목적을 달성하기 위해서 본 발명은 부호분할다중접속 이동통신시스템의 터보 인터리빙 방법에 있어서, 터보 인터리빙 수행 시 인터리버 인덱스의 행 내 교환을 수행하기 위한 파라미터 큐(q)값을 감소하여 행 내 교환을 수행하는 행 내 교환 과정과, 상기 행 내 교환된 인터리버 인덱스를 행간 교환하는 행간 교환 과정과, 상기 행 내 교환과 행간 교환이 수행된 인터리버 인덱스의 크기와 인터리버의 크기를 비교하여 작은 경우만 출력하는 프루닝 과정으로 이루어짐을 특징으로 한다.In order to achieve another object of the present invention, the present invention provides a turbo interleaving method for a code division multiple access mobile communication system, in which a parameter queue (q) value for performing intra-row exchange of interleaver indexes during turbo interleaving is reduced. Intra-row exchange process for performing inter-exchange, inter-role exchange process for interchanging the interleaver index exchanged in the row, and interleaver index and interleaver size for performing inter-row exchange and inter-row exchange are small by comparing It is characterized by consisting of a pruning process that only outputs.

도 1a는 일반적인 터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리버의 크기를 나타내는 도면.1A is a diagram showing the size of a turbo interleaver in a code division multiple access mobile communication system using a general turbo code.

도 1b는 일반적인 터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리버에서 기록 방법을 나타내는 도면.1B is a diagram showing a recording method in a turbo interleaver in a code division multiple access mobile communication system using a general turbo code;

도 1c는 일반적인 터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리버에서 읽기 방법을 나타내는 도면.1C is a diagram illustrating a reading method in a turbo interleaver in a code division multiple access mobile communication system using a general turbo code.

도 2는 일반적인 터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리버에서 교환을 수행하는 방법을 나타내는 흐름도.2 is a flowchart illustrating a method of performing an exchange in a turbo interleaver of a code division multiple access mobile communication system using a general turbo code;

도 3은 본 발명의 제1실시 예에 따른 터보코드를 사용하는 부호분할다중접속 이동통신시스템에서 터보 인터리버의 구성을 나타내는 도면.3 is a diagram illustrating a configuration of a turbo interleaver in a code division multiple access mobile communication system using a turbo code according to a first embodiment of the present invention.

도 4는 본 발명의 실시 예에 따른 터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리버의 감소 q 생성부의 구성을 나타내는 도면.4 is a diagram illustrating a configuration of a reduction q generation unit of a turbo interleaver of a code division multiple access mobile communication system using a turbo code according to an embodiment of the present invention.

도 5는 본 발명에 적용되는 터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리버의 베이스 시퀀스 생성부의 구성을 나타내는 도면.FIG. 5 is a diagram showing a configuration of a base sequence generator of a turbo interleaver of a code division multiple access mobile communication system using a turbo code according to the present invention; FIG.

도 6은 본 발명에 적용되는 터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리버의 multiplied_PIP 생성부의 구성을 나타내는 도면.6 is a diagram showing the configuration of a multiplied_PIP generation unit of a turbo interleaver of a code division multiple access mobile communication system using a turbo code according to the present invention;

도 7은 본 발명의 제1 실시 예에 따른 터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리버의 구성을 나타내는 도면.7 is a diagram showing the configuration of a turbo interleaver in a code division multiple access mobile communication system using a turbo code according to the first embodiment of the present invention.

도 8은 본 발명에 적용되는 터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리버의 선택신호 생성기의 구성을 나타내는 도면.Fig. 8 is a diagram showing the configuration of a selection signal generator of a turbo interleaver in a code division multiple access mobile communication system using a turbo code according to the present invention.

도 9는 본 발명에 적용되는 터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리버의 변경모드신호 생성기의 구성을 나타낸 도면.9 is a diagram showing the configuration of a change mode signal generator of a turbo interleaver in a code division multiple access mobile communication system using a turbo code according to the present invention;

도 10은 본 발명의 실시 예에 따른 터보코드를 사용하는 부호분할다중접속 이동통신시스템의 터보 인터리버의 인터리빙 방법을 나타낸 흐름도.10 is a flowchart illustrating an interleaving method of a turbo interleaver in a code division multiple access mobile communication system using a turbo code according to an embodiment of the present invention.

이하 본 발명의 바람직한 실시 예를 첨부된 도면의 참조와 함께 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 동일 부호를 가지도록 하였다. 또한 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다.First, in adding the reference numerals to the components of each drawing, the same components have the same reference numerals as much as possible even if displayed on different drawings. In describing the present invention, when it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.

도3은 본 발명의 제1 실시 예에 따른 인터리버의 구성을 나타낸 도면이다. 이하의 본 발명을 설명함에 있어서, 행 어드레스는 행의 어드레스를 나타내고 칼럼 어드레스는 열의 어드레스를 나타내며, 카운트 어드레스는 어드레스가 하나씩 증가하는 어드레스로서, 일반적인 어드레스 생성 알고리즘에 의해 생성되는 것이므로 그 상세한 설명을 생략한다.3 is a diagram illustrating a configuration of an interleaver according to the first embodiment of the present invention. In the following description of the present invention, a row address indicates a row address, a column address indicates a column address, and a count address is an address whose address is increased by one, and is generated by a general address generation algorithm. do.

도3에서 참조부호 300은 행 내 교환부이고, 320은 행 간 교환부이며, 330은 프루닝부이다. 상기 행 내 교환부(300)는 초기 값으로 '0'들의 값을 갖고 행 어드레스를 입력받아 해당 행 어드레스의 값을 출력하고 소정의 값을 입력받아 상기 행 어드레스의 값을 갱신하는 버퍼(301)와, 상기 파라미터에 의해 결정된 베이스 시퀀스를 구비하며 상기 버퍼링되었던 행 어드레스를 입력시 상기 베이스 시퀀스에 의한 행 내 교환을 수행하여 출력하는 베이스 시퀀스부(303)와, 입력되는 행 어드레스들에 대한 Reduce_q 값들을 갖는 테이블을 구비하고 상기 행 어드레스를 입력받고 상기 행 어드레스에 해당하는 감소 큐(Reduce_q) 값을 출력하는 감소 q 생성부(305)와, 상기 버퍼(301)에서 출력되는 행 어드레스와 상기 감소 q 생성부(305)로부터 출력되는 Reduce_q 값을 입력받아 가산하는 가산기(307)와, 상기 가산기(307)에서 출력되는 A의 값과 p-1의 값을 갖는 B의 값을 입력받아 비교하고 상기 A가 B보다 작거나 같으면 '0'의 값을 출력하고 A가 B보다 크면 '1'의 값을 출력하는 비교기(309)와, p-1의 값과 '0'의 값을 입력받고 상기 비교기에서 출력되는 값을 선택신호로 입력받아 상기 p-1 또는 '0' 중 하나를 선택하는 다중화기(313:M1)와, 상기 가산기(307)에서 입력되는 A의 값을 상기 다중화기(313)에서 출력되는 값으로 감산하여 상기 버퍼(301)로 출력하는 감산기(311)로 구성된다.In FIG. 3, reference numeral 300 is an in-row exchanger, 320 is an inter-row exchanger, and 330 is a pruning unit. The row exchange unit 300 has a value of '0' as an initial value, receives a row address, outputs a value of the row address, receives a predetermined value, and updates a value of the row address. And a base sequence unit 303 having a base sequence determined by the parameter and outputting an intra-row exchange by the base sequence upon inputting the buffered row address, and a Reduce_q value for the input row addresses. A reduction q generating unit 305 having a table having a plurality of rows and receiving the row address and outputting a decrease queue value corresponding to the row address, and a row address and the reduction q output from the buffer 301. An adder 307 that receives and adds the Reduce_q value output from the generation unit 305, and a value B that has a value of A and p-1 output from the adder 307. A comparator 309 that outputs a value of '0' when A is less than or equal to B and a value of '1' when A is greater than B, and a value of p-1 and a value of '0'. A multiplexer 313 (M1) for selecting one of p-1 or '0' and a value of A input from the adder 307; A subtractor 311 subtracts the value output from the firearm 313 and outputs the result to the buffer 301.

상기 q 감소부(305)는 상술한 바와 같이 미리 입력되는 각 어드레스에 대한 Reduce_q 값들을 가지고 있을 수도 있고, 이하의 표5와 같이 q값과 p값들을 정의하는 테이블을 구비하여 이하의 수학식 5에 의해서 직접 계산될 수도 있다. 그러나 본 발명에서는 테이블화 하는 것이 연산량을 줄일 수 있으므로, 테이블화하여 구성한다.The q reduction unit 305 may have Reduce_q values for each address previously input as described above, and includes a table defining q and p values as shown in Table 5 below. It can also be calculated directly by However, in the present invention, since table operation can reduce the amount of calculation, the table is configured.

reduced_q = (q)mod(p-1)reduced_q = (q) mod (p-1)

상기 q는 상기 표 4에서 정의되는 값이며, p는 교환을 수행하기 위한 파라미터이다.Q is a value defined in Table 4 above, and p is a parameter for performing the exchange.

예를 들면, p 값이 17이고 q값이 71이면 reduced_q = (71)mod(17) = 7이다. 상기와 같이 수학식 5에서 q 값을 모듈로 연산을 수행하여 감소시킬 수 있는 이유는 다음과 같다.For example, if the p value is 17 and the q value is 71, then reduced_q = (71) mod (17) = 7. The reason why the q value can be reduced by performing a modulo operation in Equation 5 is as follows.

상기 수학식 4에서 Cj(i) = C([i * q(j)]mod (p-1) = c(A(i,j))이라 하면, 이하의 수학식 6과 같이 유도할 수 있음을 알 수 있다.If C j (i) = C ([i * q (j)] mod (p-1) = c (A (i, j))) in Equation 4, Equation 6 can be derived. It can be seen that.

A(i,j) = (i*q(j))mod(p-1)A (i, j) = (i * q (j)) mod (p-1)

= (q(0) + q(1) +....+q(j))mod(p-1)= (q (0) + q (1) + .... + q (j)) mod (p-1)

=[q(j)mod(p-1) +(q(j))mod(p-1)+...+q(j)mod(p-1)]mod(p-1)= [q (j) mod (p-1) + (q (j)) mod (p-1) + ... + q (j) mod (p-1)] mod (p-1)

= [A(i-1,j)+(q(j))mod(p-1)]mod(p-1)= [A (i-1, j) + (q (j)) mod (p-1)] mod (p-1)

= [A(i-1,j)+reduced_q(j)]mod(p-1)= [A (i-1, j) + reduced_q (j)] mod (p-1)

상기 수학식 6에서 reduced_q는 0 ~(p-2)까지의 값을 갖는다. 그리고 상기 A(i-1, j)는 점화식이므로 0~(p-2)까지의 값을 갖는다. 상기 A(i,j)가 0~(p-2)까지의 값을 갖도록 하려면 상기 수학식 6을 다음과 같이 2가지의 경우로 구분할 수 있다.In Equation 6, reduced_q has a value from 0 to (p-2). Since A (i-1, j) is an ignition type, it has a value from 0 to (p-2). In order to make A (i, j) have a value from 0 to (p-2), Equation 6 may be divided into two cases as follows.

첫 번째는 A(i-1,j)+reduced_q(j)가 (p-1)보다 작은 경우이고, 두 번째는A(i-1,j)+reduced_q(j)가 (p-1)보다 같거나 큰 경우이다.The first is when A (i-1, j) + reduced_q (j) is less than (p-1), and the second is when A (i-1, j) + reduced_q (j) is less than (p-1). Equal or greater.

상기 첫 번째의 경우, 상기 A(i,j)는 모듈로 연산의 특성에 의해 A(i-1,j)+reduced_q(j)가 성립하고, 두 번째 경우도, 상기 A(i,j)는 A(i-1,j)+reduced_q(j)-(p-1)로 하면 상기 수학식 6과 일치한다.In the first case, A (i, j) is A (i-1, j) + reduced_q (j) by the characteristics of the modulo operation, and in the second case, A (i, j) Is A (i-1, j) + reduced_q (j)-(p-1).

이하의 표 6은 선택신호가 0일 경우 어드레스들과 상기 어드레스들에 각각 대응되는 파라미터들, 즉 p값과 g0값을 정의하고, 상기 어드레스들과 상기 어드레스들 각각에 정의된 파라미터들에 대응되는 Reduced_q값들을 나타낸 것이고 선택신호가 1일 경우는 표 7의 R10을 이용한다.Table 6 below defines addresses and parameters corresponding to the addresses, that is, a p value and a g0 value when the selection signal is 0, and corresponds to the parameters defined in the addresses and the addresses, respectively. Reduced_q values are shown. If the selection signal is 1, use R10 in Table 7.

상기 표 6의 테이블은 상기 감소 q 생성부(305)가 가지고 있다. 도 4는 상기 감소 q 생성부(305)의 상세 구성도를 나타낸 도면으로서, 이하 도4를 참조하여 상기 감소 q 생성부(305)의 구체적인 구성 및 동작을 설명한다.The reduction q generating unit 305 has the table shown in Table 6 above. 4 is a diagram illustrating a detailed configuration of the reduction q generation unit 305. Hereinafter, a detailed configuration and operation of the reduction q generation unit 305 will be described with reference to FIG.

addressaddress pp G_0G_0 R10R10 N/AN / A 5353 22 1, 7, 11, 19, 23, 29, 31, 37, 411, 7, 11, 19, 23, 29, 31, 37, 41

상기 감소 q 생성부(305)는 p값 저장부(501)와 비교기(503)와 제1스위치(504)와 제2스위치(506)와 g_0값을 저장부(505)와 Reduced_q 값 저장부(507)와 R10 저장부(509)와 다중화부(511)와 감소 q 레지스터부(513)로 구성된다. 상기 p값 저장부(501)는 어드레스들 각각에 대응하는 p값들을 갖는 테이블을 가지고 있으며, 어드레스를 입력받고 상기 어드레스에 대한 p값을 출력한다. 비교기(503)는 상기 P값 저장부(501)로부터 출력되는 p값과 기준값을 입력받아 비교한다. 상기 p값을 X라 하고, 기준값을 Y라 하면 상기 비교기(503)는 상기 X가 상기 Y와 같거나 큰지를 비교한다. 상기 X가 Y보다 같거나 크다면 상기 제1스위치(504)를 상단으로 연결하여 p값을 출력하고 제2스위치(506)를 하단으로 연결하여 상기 어드레스 카운트값을 g_0 저장부(505)와 reduced_q 저장부(507)로 출력한다, 그러나 상기 X가 Y보다 작다면 어드레스 카운트값을 하나씩 증가한다. 상기 g_0저장부(505)는 어드레스 카운트값들 각각에 대한 g_0값을 갖는 테이블을 가지고 있으며, 상기 제2스위치(506)를 통해 어드레스 카운트가 입력되면 상기 어드레스 카운트값에 해당하는 g_0값을 출력한다. 상기 reduced_q 값 저장부(507)는 어드레스 카운트값들 각각에 대응하는 reduced_q 값을 갖는 테이블을 가지고 있으며, 상기 제2 스위치부(506)를 통해 어드레스 카운트값이 입력되면 상기 어드레스 카운트값에 해당하는 reduced_q 값을 출력한다. 상기 R10 저장부(509)는 고정된 R값을 저장하고 있고 고정된 R값을 출력한다. 상기 R값은 본 발명에서 10을 사용하였고, 인터리버 크기 K가 160<K<200 일 경우이다. 이는 R=10이어도 R10을 사용 못하고 reduced_q 값이 사용되는 K값이 있을 수 있음을 의미한다. 다중화부(511)는 선택신호(select)를 입력받아 상기 reduced_q 저장부(507)와 R10 저장부(509)로부터 reduced_q 값과 R값 중 하나를 선택하여 감소 q 레지스터(513)에 저장한다.The reduction q generator 305 stores the p value storage unit 501, the comparator 503, the first switch 504, the second switch 506, and the g_0 value in the storage unit 505 and the Reduced_q value storage unit ( 507, an R10 storage unit 509, a multiplexer 511, and a reduction q register unit 513. The p value storage unit 501 has a table having p values corresponding to each of the addresses, receives an address, and outputs a p value for the address. The comparator 503 receives and compares the p-value output from the P-value storage unit 501 with a reference value. If the p value is X and the reference value is Y, the comparator 503 compares whether X is equal to or greater than Y. If X is equal to or greater than Y, the first switch 504 is connected to the upper end to output the p value, and the second switch 506 is connected to the lower end to convert the address count value into the g_0 storage unit 505 and reduced_q. Output to storage 507, but if X is less than Y, the address count is incremented by one. The g_0 storage unit 505 has a table having a g_0 value for each of the address count values, and outputs a g_0 value corresponding to the address count value when an address count is input through the second switch 506. . The reduced_q value storage unit 507 has a table having a reduced_q value corresponding to each of the address count values. When the address count value is input through the second switch unit 506, the reduced_q value storage unit 507 corresponds to the address count value. Print the value. The R10 storage unit 509 stores a fixed R value and outputs a fixed R value. The R value is 10 in the present invention, and the interleaver size K is 160 <K <200. This means that even though R = 10, there may be a K value in which R10 is not used and a reduced_q value is used. The multiplexer 511 receives a selection signal and selects one of the reduced_q value and the R value from the reduced_q storage unit 507 and the R10 storage unit 509 and stores the selected value in the reduced q register 513.

도3에서 베이스 시퀀스 생성부(303)는 다중화기(401)와 곱셈기(403), 모듈로 연산부(405)와 베이스 시퀀스 레지스터(407)로 구성된다. 상기 다중화기(401)는 1의 값과 소정의 피드백 값을 입력받고, 리셋(reset)신호에 의해 상기 1 또는 피드백 값을 선택하여 출력한다. 구체적으로, 상기 리셋 신호가 인에이블 신호이면 상기 1의 값을 선택하여 출력하고, 디스에이블 신호이면 피드백 값을 출력한다. 상기 다중화기(401)의 출력은 상기 곱셈기(403)로 입력한다. 상기 곱셈기(403)는 상기 다중화기(401)의 출력과 g_0의 값을 곱하여 모듈로 연산부(405)로 출력한다. 모듈로 연산부(405)는 상기 곱셈기(403)의 출력값과 p값을 입력받고 상기 p값을 인수로 상기 수학식 2에 의한 연산을 수행하고, 상기 연산 결과를 출력한다. 상기 연산 결과 값이 베이스 시퀀스이다. 상기 베이스 시퀀스는 피드백 하여 상기 다중화기(401)로 입력하고 베이스 시퀀스 레지스터(407)로 입력한다. 상기 베이스 시퀀스 레지스터(407)는 상기 베이스 시퀀스를 저장하고, 상기 버퍼(301)로부터 입력되는 값과 상기 카운트 어드레스의 값을 곱하여 출력한다. 상기와 같이 베이스 시퀀스와 상기 카운트값을 곱함으로써 행 내 교환이 이루어진다. 상기 어드레스 카운트값은 상기 도3의 버퍼로부터 입력되는 값으로, 상기 베이스 시퀀스 값이 저장된 후에 하나씩 증가한다. 상기 베이스 시퀀스 레지스터(407), 즉 상기 도3의 베이스 시퀀스 생성부(303)에서 출력되는 베이스 시퀀스는 행간 교환부(320)로 입력한다.In FIG. 3, the base sequence generator 303 includes a multiplexer 401, a multiplier 403, a modulo operator 405, and a base sequence register 407. The multiplexer 401 receives a value of 1 and a predetermined feedback value, selects and outputs the 1 or feedback value by a reset signal. Specifically, if the reset signal is the enable signal, the value of 1 is selected and output, and if the disable signal, the feedback value is output. The output of the multiplexer 401 is input to the multiplier 403. The multiplier 403 multiplies the output of the multiplexer 401 by the value of g_0 and outputs the result to the modulo calculating unit 405. The modulo operation unit 405 receives the output value and the p value of the multiplier 403, performs an operation according to Equation 2 with the p value as an argument, and outputs the operation result. The operation result value is a base sequence. The base sequence is fed back to the multiplexer 401 and input to the base sequence register 407. The base sequence register 407 stores the base sequence and multiplies the value input from the buffer 301 by the value of the count address. In-row exchange is achieved by multiplying the base sequence by the count value as above. The address count value is a value input from the buffer of FIG. 3 and increments by one after the base sequence value is stored. The base sequence register 407, that is, the base sequence output from the base sequence generator 303 of FIG. 3, is input to the interline exchange unit 320.

상기 행간 교환부(320)는 다중화기(321)와 가산기(323)와 multiplied_PIP 생성부(325)로 구성된다. 상기 다중화기(321)는 상기 베이스 시퀀스 생성부(303)에서 출력되는 베이스 시퀀스와 0, 1 및 p 값을 입력받고 2비트의 선택신호를 입력받아 상기 베이스 시퀀스, 0, 1 및 p 값 중 하나를 선택하여 출력한다. 상기 다중화기(321)는 상기 수학식 4의 조건에 따른 선택신호를 입력받아 상기 값들 중 하나를 선택한다. 이는 상기 C 값에 따라 상기 베이스 시퀀스가 각 행을 채우지 못할 경우가 발생하기 때문이다. 상기 수학식 4에서와 같이 C가 p-1의 값을 가질 때는 행의 첫 번째 열에 1을 선택하게 하고, 이후의 열에서는 상기 베이스 시퀀스의 값을 선택하여 출력하고, C가 p일 경우에 상기 C가 p-1일 경우보다 각 행의 마지막 열이 하나씩 남음으로 상기 각 행들의 마지막 열에서 0의 값을 선택하여 출력한다. 그리고 C가 p+1일 경우는 상기 C가 p+1일 경우 보다 각 행의 마지막 열이 남음으로 상기 각 행의 마지막 열을 p값으로 채우기 위해 상기 p값을 선택하여 출력한다.The interline exchange unit 320 includes a multiplexer 321, an adder 323, and a multiplied_PIP generation unit 325. The multiplexer 321 receives a base sequence output from the base sequence generator 303 and 0, 1, and p values, receives a 2-bit selection signal, and receives one of the base sequence, 0, 1, and p values. Select to print. The multiplexer 321 receives a selection signal according to the condition of Equation 4 and selects one of the values. This is because the base sequence may not fill each row according to the C value. As shown in Equation 4, when C has a value of p-1, 1 is selected in the first column of the row, and in the subsequent column, the value of the base sequence is selected and output, and when C is p, Since there is one last column of each row than when C is p-1, a value of 0 is selected and output from the last column of each row. When C is p + 1, since the last column of each row remains than when C is p + 1, the value of p is selected and output to fill the last column of each row with p.

상기 다중화기(321)에서 출력되는 값은 가산기(323)로 입력한다. multiplied_PIP 생성부(325)는 로우 어드레스를 입력받고 상기 표 3의 선택신호들(A, B, C, D; 이하 "0", "1", "2", "3"으로 표현함)에 의해 multiplied_PIP 값 선택하여 출력한다.The value output from the multiplexer 321 is input to the adder 323. The multiplied_PIP generation unit 325 receives a row address and multiplied_PIP by the selection signals A, B, C, and D (hereinafter, expressed as "0", "1", "2", and "3"). Select and print the value.

도 5는 상기 multiplied_PIP 생성부(325)의 구체적인 구성을 나타낸 도면이다. 이하 도5를 참조하여 구체적으로 설명한다.5 is a diagram illustrating a detailed configuration of the multiplied_PIP generation unit 325. Hereinafter, a detailed description will be given with reference to FIG. 5.

상기 multiplied_PIP(325)는 상기 각 선택신호에 대한 PIP값들을 저장하는 PIP 저장부(601)와 곱셈기(603)와 감산기(605)와 multiplied_PIP 레지스터(607)로구성된다.The multiplied_PIP 325 includes a PIP storage unit 601, a multiplier 603, a subtractor 605, and a multiplied_PIP register 607 for storing PIP values for each selection signal.

상기 PIP 저장부(601)는 선택신호와 리드 어드레스 카운터값을 입력받고 상기 선택신호에 대한 PIP값을 상기 리드 어드레스 카운터 위치로부터 읽어 출력한다. 곱셈기(603)는 상기 PIP 저장부(601)의 출력값을 입력받고 C값과 곱하여 출력한다. 가산기(605)는 상기 곱셈기(603)의 출력값과 마이너스 모드 값을 입력받고, 상기 출력값을 모드값으로 감산하여 출력한다. 상기 마이너스 모드값은 상기 C값과 p-1값에 의해 출력되는 값으로 상기 C값과 p-1값이 같을 경우 1을 출력하고 다를 경우에는 0을 출력한다.The PIP storage unit 601 receives a selection signal and a read address counter value and reads a PIP value of the selection signal from the read address counter position. The multiplier 603 receives the output value of the PIP storage unit 601 and multiplies the C value by the output value. The adder 605 receives an output value of the multiplier 603 and a negative mode value, and subtracts the output value to a mode value to output the result. The negative mode value is a value output by the C value and the p-1 value and outputs 1 when the C value and the p-1 value are the same and 0 when the value is different.

상기 감산기(605)의 출력값은 multiplied_PIP 레지스터(607)로 입력하고, 상기 multiplied_PIP(607)은 라이트 어드레스 카운트값과 리드 어드레스 로우 값을 입력받고, 상기 라이트 어드레스 카운트값의 위치에 상기 감산기(605)의 출력값을 저장하고 상기 리드 어드레스 로우 값 입력 시 상기 리드 어드레스 로우 값 위치로부터 PIP 값을 읽어 도3의 가산기(323)로 출력한다.The output value of the subtractor 605 is input to the multiplied_PIP register 607, and the multiplied_PIP 607 receives a write address count value and a read address row value, and the subtractor 605 of the subtractor 605 at the position of the write address count value. When the read value is stored and the read address row value is input, the PIP value is read from the read address row value position and output to the adder 323 of FIG.

도3의 가산기(323)는 도3의 다중화기(321)의 출력값과 상기 multiplied_PIP 값을 가산하여 출력한다. 프루닝부(331)는 상기 가산기(323)의 출력값과 인터리버 크기 K와 비교하여 작으면 상기 가산기의 출력값을 출력하고, 크면 출력하지 않는다.The adder 323 of FIG. 3 adds and outputs the output value of the multiplexer 321 of FIG. 3 and the multiplied_PIP value. The pruning unit 331 outputs the output value of the adder when the output value of the adder 323 is smaller than the interleaver size K, and does not output the output value of the adder 323.

도7은 본 발명의 제2실시 예에 따른 인터리버의 구조를 나타낸 도면으로서, 상술한 도3의 행 내 교환부(300)의 구성만 다르게 구성한다. 제2실시 예에 따른 본 발명은 비교기(703)와 다중화기(705) 그리고 감산기(707)의 위치만을 변경되었다.FIG. 7 is a diagram illustrating a structure of an interleaver according to a second embodiment of the present invention, in which only the configuration of the in-row exchanger 300 of FIG. 3 is configured differently. According to the second exemplary embodiment, only the positions of the comparator 703, the multiplexer 705, and the subtractor 707 are changed.

도8은 상기 도3의 다중화기(321) 및 도7의 다중화기(713)로 입력되는 선택신호를 생성하기 위한 선택신호 생성기를 도시한 도면이다.8 is a diagram illustrating a selection signal generator for generating a selection signal input to the multiplexer 321 of FIG. 3 and the multiplexer 713 of FIG.

도8의 로우(low)와 칼럼(Column)은 2차원 매트릭스의 행과 열의 값이다. 변경모드(exchange_mode)는 상기 수학식 4의 변경을 위해 필요한 신호이다.The row and column of Fig. 8 are the values of the rows and columns of the two-dimensional matrix. The change mode (exchange_mode) is a signal required for changing the equation (4).

비교기(801)는 칼럼과 0이 같은지를 비교하고 같으면 1의 값을, 다르면 0의 값을 출력한다. 비교기(305)는 로우값과 0의 값이 같은지를 비교하여 같으면 1의 값을 출력하고 다르면 0의 값을 출력한다. 비교기(809)는 칼럼 값과 p의 값이 같은지를 비교하고, 같으면 1의 값을, 다르면 0의 값을 출력한다. 비교기(813)는 칼럼 값과 p-1의 값이 같은지를 비교하고 같으면 1의 값을 출력하고 다르면 0의 값을 출력한다. 앤드 게이트(803)는 상기 비교기(801)와 비교기(805)의 출력값과 변경모드 값을 입력받아 앤드 게이팅하여 출력한다. 앤드 게이트(807)는 상기 비교기(805)와 비교기(809)의 출력값과 변경 모드 값을 입력받아 앤드 게이팅하여 출력한다. 앤드 게이트(811)는 상기 앤드 게이트(807)의 출력값과 비교기(809)의 출력값을 앤드 게이팅하여 출력한다. 상기 앤드 게이트(803)의 출력, 상기 앤드 게이트(807)의 출력, 상기 앤드 게이트(811)의 출력 및 비교기(813)의 출력값이 선택신호가 된다. 예를 들면, 칼럼과 로우가 0이고 변경 모드이면, P값을 출력한다. 그리고 칼럼이 p이고 로우가 0이고 변경모드이면 1값을 출력한다. 칼럼이 p이고 변경모드가 아니거나 로우 값이 0이 아니면 p의 값을 출력한다. 그리고 칼럼이 p-1이면 0의 값을 출력한다. 이를 이하의 표 8과 같이 나타낼 수 있다.The comparator 801 compares whether the column is equal to 0 and outputs a value of 1 if it is the same and a value of 0 if it is different. The comparator 305 compares whether the row value is equal to the value of 0 and outputs a value of 1 if it is the same and a value of 0 if it is different. The comparator 809 compares whether the column value and the value of p are equal, and outputs a value of 1 if they are equal and a value of 0 if they are different. The comparator 813 compares whether the column value is equal to the value of p-1, outputs a value of 1 if it is the same, and outputs a value of 0 if it is different. The AND gate 803 receives and outputs the output values and the change mode values of the comparator 801 and the comparator 805, and outputs them. The AND gate 807 receives and outputs the output values and the change mode values of the comparator 805 and the comparator 809 and outputs them. The AND gate 811 AND gates and outputs the output value of the AND gate 807 and the output value of the comparator 809. An output of the AND gate 803, an output of the AND gate 807, an output of the AND gate 811, and an output value of the comparator 813 become selection signals. For example, if the column and row are zero and in change mode, then P is output. If the column is p, the row is 0, and the change mode, the value 1 is output. If the column is p and not in change mode or the row value is nonzero, the value of p is displayed. If the column is p-1, then 0 is printed. This may be shown in Table 8 below.

select(abcd)select (abcd) outputoutput 00000000 베이스 시퀀스Bass sequence 10001000 pp 01000100 1One 00100010 pp 00010001 00

도9는 상기 선택신호 생성기(327)로 입력되는 변경모드값을 생성하기 위한 변경모드 신호 생성기(329)의 구성을 나타낸 것이다.9 shows the configuration of a change mode signal generator 329 for generating a change mode value input to the selection signal generator 327. FIG.

상기 변경 모드 신호 생성기(329)는 상기 R값과 C값을 곱하여 출력하는 곱셈기(901)와, 상기 곱셈기(901)의 출력값과 인터리버 크기 K를 비교하고 같을 경우 1을 출력하고 다른 경우 0을 출력하는 비교기(903)와, 상기 C와 p+1의 값을 입력받아 같은지를 비교하고 같으면 1의 값을, 다르면 0의 값을 출력하는 비교기(905)와 상기 비교기(903)와 비교기(905)의 출력값을 입력받아 앤드 게이팅하여 변경모드 신호를 출력하는 앤드 게이트(907)로 구성된다.The change mode signal generator 329 compares the multiplier 901 for multiplying the R value and the C value, and compares the output value of the multiplier 901 with the interleaver size K, and outputs 1 when it is the same and 0 when it is different. A comparator 903 and a comparator 905 and a comparator 903 and a comparator 905 which input values of C and p + 1 are compared and compare the same and output a value of 1 if they are equal, and a value of 0 if they are different. The AND gate 907 receives and outputs an output value of and outputs a change mode signal.

도10은 본 발명의 제1실시 예 및 제2실시 예에 따른 구성들에 의해 수행되는 인터리빙 방법을 나타내 흐름도이다.10 is a flowchart illustrating an interleaving method performed by the components according to the first and second embodiments of the present invention.

도 10에서 1001, 1003, 1005는 상기 도2의 200단계와 203단계에 해당하는 과정이다. 즉, 본 발명에 따라 적용되는 파라미터를 찾는 과정이다. 상기 1001, 1003 및 1005단계에서 파라미터들이 결정되면 1005단계에서 상기 결정된 C값과 p-1값에 의해 현재 모드가 마이너스 모드인지를 판단한다. 즉 상기 C값이 p-1값과 같을 경우 마이너스 모드로 결정된다. 상기 마이너스 모드인지의 여부가 판단되면 1009단계에서 multiplied_PIP를 생성한다. 상기 multiplied_PIP가 생성되면 1013단계로 진행하여 파라미터 p값과 g_0값에 의해 reduced_q값을 구하고 1015단계에서 베이스시퀀스를 생성한다. 상기 베이스 시퀀스가 생성되면 1017단계로 진행하여 상기 reduced_q값에 의해 행 내 교환을 수행하고, 상기 베이스 시퀀스에 의해 행간 교환을 수행한다. 상기 교환이 수행된 후에 프루닝을 수행하고 종료한다.In FIG. 10, steps 1001, 1003, and 1005 correspond to steps 200 and 203 of FIG. 2. That is, the process of finding a parameter applied according to the present invention. When the parameters are determined in steps 1001, 1003, and 1005, it is determined in step 1005 whether the current mode is a negative mode based on the determined C and p-1 values. That is, when the C value is equal to the p-1 value, it is determined as a minus mode. If it is determined whether the mode is in the negative mode, a multiplied_PIP is generated in step 1009. When the multiplied_PIP is generated, the process proceeds to step 1013 to obtain a reduced_q value by using the parameter p value and g_0 value, and generates a base sequence in step 1015. When the base sequence is generated, the process proceeds to step 1017 to perform in-row exchange by the reduced_q value, and performs inter-line exchange by the base sequence. After the exchange is performed, pruning is performed and ends.

상술한 과정을 다음과 같은 일 예를 들어 설명한다.The above-described process will be described with an example as follows.

첫 번째로, 인터리버 크기 K가 321이고, 상기 수학식 1과 표 1에 의해 R=20, C=17, P=17이 결정된다.First, the interleaver size K is 321, and R = 20, C = 17, and P = 17 are determined by Equation 1 and Table 1 above.

두 번째로, 상기 p가 17임으로 상기 표 2의 테이블로부터 g_0은 3이다. 그러므로 상기 g_0과 p값을 상기 수학식 2에 대입하면 이하의 수학식 7로 나타내어지므로 베이스 시퀀스는 표 9로 나타내어진다.Secondly, since p is 17, g_0 is 3 from the table in Table 2. Therefore, substituting the g_0 and p values into Equation 2 is represented by Equation 7 below, and the base sequence is represented by Table 9.

c(0)= 1c (0) = 1

c(i)=[3*c(i-1)]mod 17c (i) = [3 * c (i-1)] mod 17

ii 00 1One 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414 1515 C(i)C (i) 1One 33 99 1010 1313 55 1515 1111 1616 1414 88 77 44 1212 22 66

그리고 베이스 시퀀스 qj는 상기 수학식 3의 조건에 의해 이하 표10과 같이 결정된다.The base sequence q j is determined as shown in Table 10 below under the condition of Equation 3.

jj 00 1One 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414 1515 1616 1717 1818 1919 q(j)q (j) 1One 77 1111 1313 1717 1919 2323 2929 3131 3737 4141 4343 4747 5353 5959 6161 6767 7171 7373 7979

상기 표 10과 같이 베이스 시퀀스 q(j)를 상기 수학식 5를 사용하여reduced_q를 생성하면, 이하의 표 11과 같이 나타내어진다.When generated base_q is generated using Equation 5 as shown in Table 10, it is represented as shown in Table 11 below.

jj 00 1One 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414 1515 1616 1717 1818 1919 Reduced_q(j)Reduced_q (j) 1One 77 1111 1313 1One 33 77 1313 1515 55 99 1111 1515 55 1111 1313 33 77 99 1515

C=p인 경우 Intra-row permutation을 상기 reduced_q(j)인 base sequence를 상기 수학식 4에 대입하면, 즉 cj(i) = c ([i x q(j)]mod (16) ) (i=1,2, 15), cj(16) = 0이면, 이하의 표12와 같이 행 내 교환을 수행한다.In the case of C = p, if In-row permutation is substituted for the base sequence having the reduced_q (j) into Equation 4, cj (i) = c ([ixq (j)] mod (16)) (i = 1 (2, 15) and cj (16) = 0, in-row exchange is performed as shown in Table 12 below.

세 번째로, K=321이므로 교환 패턴이 A형인 경우 행간 교환(inter-row permutation=row-address offset permutation)을 수행하면 이하의 표13과 같이 interleaver index가 생성된다(생성 된 interleaver의 index값은 각 row에 offset값을 더한 후의 값을 표시하였다. 예를 들면 C=17이므로 첫째 줄의 경우 A의 첫 번째 값이 19이므로 19*17=323값을 위의 값에 더하고, 둘 째줄의 경우 A의 둘째값이 9이므로 9*17=153을 더하면 아래와 같다). 다음 table을column by column 으로 읽으면서 K-1(0부터 index가 생성되므로)보다 큰 숫자가 나오면 무시하고 다음을 읽으면 된다.Third, when K = 321, if the exchange pattern is type A, interleaver index is generated as shown in Table 13 below when inter-row permutation = row-address offset permutation is performed (the generated interleaver index value is The value after adding the offset value to each row is displayed, for example, since C = 17, the first line of A is 19 in the first line, so 19 * 17 = 323 is added to the above value, and in the second line A Since the second value of is 9, 9 * 17 = 153 is added as follows). If you read the next table as a column by column and get a number larger than K-1 (since index is created from 0), ignore it and read the following.

즉 154,239,69,?,164,245,?.,255,187154,239,69,?, 164,245,?., 255,187

A={19,9,14,4,0,2,5,7,12,18,10,8,13,17,3,1,16,6,15,11}A = {19,9,14,4,0,2,5,7,12,18,10,8,13,17,3,1,16,6,15,11}

Case By Case 비교Compare Case By Case

아래는 R,p값이 동일할 때 C=p+1인 경우(Case-A)와 C=P인 경우(Case-B)와 C=P-1인 경우(Case-C)로 나누어서 하는 경우를 비교한 것이다.The following is divided into C = p + 1 (Case-A), C = P (Case-B) and C = P-1 (Case-C) when the R and p values are the same. Is a comparison.

상술한 바와 같이 본 발명은 터버 인터리빙을 수행 시 모듈로 연산 량을 줄일 수 있으므로 써 프로세싱 지연을 줄일 수 있는 이점이 있다.As described above, the present invention has the advantage of reducing the processing delay by reducing the amount of modulo operation when performing the interleaving of the turbine.

Claims (6)

부호분할다중접속 이동통신시스템의 터보 인터리버에 있어서,A turbo interleaver in a code division multiple access mobile communication system, 터보 인터리빙 수행 시 인터리버 인덱스의 행 내 교환을 수행하기 위한 파라미터 큐(q)값을 감소하여 행 내 교환을 수행하는 행 내 교환부와,An intra-row exchanger for performing intra-row exchange by decreasing a parameter queue q for performing intra-row exchange of interleaver indexes when performing turbo interleaving; 상기 행 내 교환된 인터리버 인덱스를 행간 교환하는 행간 교환부와,An interline exchange unit for interchanging the interleaver indexes exchanged in the row with each other; 상기 행 내 교환과 행간 교환이 수행된 인터리버 인덱스의 크기와 인터리버의 크기를 비교하여 작은 경우만 출력하는 프루닝부로 이루어짐을 특징으로 하는 상기 터보 인터리버.And a pruning unit configured to compare the size of the interleaver index on which the intra-row exchange and the inter-row exchange is performed with the size of the interleaver, and to output only a small case. 제1항에 있어서, 상기 행 내 교환부가,According to claim 1, wherein the in-row exchange unit, 초기값을 가지고 있고, 로우 어드레스를 입력받아 상기 로우 어드레스에 해당하는 초기값을 출력하고 소정의 값을 입력받아 상기 초기값을 갱신하는 상기 로우 어드레스에 저장하는 버퍼와,A buffer having an initial value, receiving a row address, outputting an initial value corresponding to the row address, and receiving a predetermined value and storing the initial value at the row address for updating the initial value; 베이스 시퀀스를 생성하며, 상기 버퍼의 출력값을 어드레스로 하는 상기 베이스 시퀀스의 값을 곱하여 행 내 교환된 값을 상기 인터리버 인덱스를 출력하는 베이스 시퀀스 생성부와,A base sequence generator for generating a base sequence, multiplying a value of the base sequence addressed to an output value of the buffer, and outputting the interleaver index to a value exchanged in a row; 소정의 수학식에 의해 큐(q) 값들을 적용하여 상기 감소 큐값들을 생성하며, 상기 로우 어드레스에 입력시 상기 로우 어드레스에 해당하는 감소 큐값을 출력하는 감소 큐 생성부와,A decrement queue generating unit generating the dequeue queue values by applying queue q values according to a predetermined equation, and outputting decrement queue values corresponding to the row addresses when inputted to the row addresses; 상기 감소 큐 생성부에서 출력되는 감소 큐값과 상기 버퍼의 출력값과 가산하여 출력하는 가산기와,An adder for adding and outputting the decrement queue value output from the dequeue queue generator and an output value of the buffer; 상기 가산된 값과 교환을 위해 요구되는 파라미터 p-1을 비교하여 선택신호를 출력하는 비교기와,A comparator for comparing the added value with a parameter p-1 required for exchange and outputting a selection signal; 0과 상기 p-1의 값을 입력받고 상기 선택신호를 입력받아 상기 0값 또는 p-1값을 선택 출력하는 다중화기와,A multiplexer configured to receive a value of 0 and the p-1, receive the selection signal, and selectively output the 0 or p-1 value; 상기 가산된 값을 상기 다중화기의 출력값으로 감산하여 상기 버퍼로 출력하여 상기 로우 어드레스의 값을 갱신시키는 감산기로 이루어짐을 특징으로 하는 상기 장치.And a subtractor for subtracting the added value to an output value of the multiplexer and outputting the row address to the buffer to update the row address value. 제2항에 있어서, 상기 수학식이 이하의 수학식 8임을 특징으로 하는 상기 장치.The apparatus as claimed in claim 2, wherein the equation is the following equation (8). reduced_q = (q)mod(p-1)reduced_q = (q) mod (p-1) 제2항에 있어서, 상기 감소 큐 생성부가,The method of claim 2, wherein the decay queue generating unit, 상기 어드레스별로 P값들을 저장하고 있으며, 상기 로우 어드레스에 대응되는 어드레스의 P값을 출력하는 P값 저장부와,A P value storage unit for storing P values for each of the addresses and outputting P values of addresses corresponding to the row addresses; 상기 P값 저장부로부터 출력된 p값과 기준값을 입력받고, 상기 p값이 상기 기준값보다 그거나 같은지를 비교하는 비교기와,A comparator configured to receive a p value and a reference value output from the P value storage unit and compare whether the p value is equal to or greater than the reference value; 상기 비교기의 출력값에 의해 스위칭되어 상기 p값을 출력하는 제1스위치와,A first switch switched by the output value of the comparator and outputting the p value; 상기 비교기의 출력값에 의해 스위칭되어 상기 로우 어드레스를 스위칭하여 출력하는 제2스위치와,A second switch which is switched by an output value of the comparator to switch and output the row address; 어드레스별로 g_0값들을 저장하고 있으며, 상기 스위칭되어 입력되는 로우 어드레스에 대응되는 g_0값을 출력하는 g_0값 저장부와,A g_0 value storage unit which stores g_0 values for each address, and outputs a g_0 value corresponding to the switched input row address; 어드레스별로 감소 큐들을 저장하고 있으며 상기 로우 어드레스에 대응되는 감소 큐값을 출력하는 감소 큐값 저장부와,A decrement queue value storage unit which stores decrement queues for each address and outputs decrement queue values corresponding to the row addresses; 고정된 R값을 저장하고 있으며 순차적으로 출력하는 R10 저장부와,An R10 storage unit which stores fixed R values and outputs them sequentially; 상기 R10 저장부의 출력값과 감소 큐값 저장부로 출력되는 출력값을 입력받고, 소정의 선택신호를 입력받아 출력하는 다중화기와,A multiplexer configured to receive an output value of the R10 storage unit and an output value output to the decrease queue value storage unit, and receive and output a predetermined selection signal; 상기 다중화기의 출력값을 저장하는 감소 큐 레지스터로 이루어짐을 특징으로 하는 상기 장치.And a decay queue register for storing an output value of the multiplexer. 부호분할다중접속 이동통신시스템의 터보 인터리빙 방법에 있어서,In a turbo interleaving method of a code division multiple access mobile communication system, 터보 인터리빙 수행 시 인터리버 인덱스의 행 내 교환을 수행하기 위한 파라미터 큐(q)값을 감소하여 행 내 교환을 수행하는 행 내 교환 과정과,An intra-row exchange process for performing inter-row exchange by reducing a parameter queue q for performing inter-row exchange of interleaver indexes when performing turbo interleaving; 상기 행 내 교환된 인터리버 인덱스를 행간 교환하는 행간 교환 과정과,An inter-row exchange process of inter-exchanging the interleaved indexes exchanged in the rows; 상기 행 내 교환과 행간 교환이 수행된 인터리버 인덱스의 크기와 인터리버의 크기를 비교하여 작은 경우만 출력하는 프루닝 과정으로 이루어짐을 특징으로 하는 상기 방법.And a pruning process of comparing the size of the interleaver index and the size of the interleaver in which the intra-row exchange and the inter-row exchange are performed, and outputting only a small case. 제5항에 있어서, 상기 행 내 교환 과정이,The method of claim 5, wherein the in-row exchange process, 행 내 교환 시 요구되는 파라미터 p값과 g_0을 찾는 과정과,Finding the parameters p and g_0 required for in-row exchange, 상기 파라미터 p값과 g_0값과 이하의 수학식 9에 의해 감소 큐(Reduced_q)값을 생성하는 과정과,Generating a reduced queue (Reduced_q) value by using the parameter p value, g_0 value, and Equation 9 below; 상기 감소 큐에 의해 베이스 시퀀스를 생성하는 과정과,Generating a base sequence by the decrement queue; 상기 베이스 시퀀스에 의해 행 내 교환을 수행하는 과정으로 이루어짐을 특징으로 하는 방법.And performing in-row exchange by the base sequence. reduced_q = (q)mod(p-1)reduced_q = (q) mod (p-1)
KR1020010025305A 2001-05-09 2001-05-09 Turbo interleaver and turbo interleaving method in cdma mobile communication system having turbo code KR100800840B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020010025305A KR100800840B1 (en) 2001-05-09 2001-05-09 Turbo interleaver and turbo interleaving method in cdma mobile communication system having turbo code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010025305A KR100800840B1 (en) 2001-05-09 2001-05-09 Turbo interleaver and turbo interleaving method in cdma mobile communication system having turbo code

Publications (2)

Publication Number Publication Date
KR20020091848A true KR20020091848A (en) 2002-12-11
KR100800840B1 KR100800840B1 (en) 2008-02-04

Family

ID=27704304

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010025305A KR100800840B1 (en) 2001-05-09 2001-05-09 Turbo interleaver and turbo interleaving method in cdma mobile communication system having turbo code

Country Status (1)

Country Link
KR (1) KR100800840B1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100215566B1 (en) * 1996-09-30 1999-08-16 전주범 Address forming method of static ram
US6543013B1 (en) * 1999-04-14 2003-04-01 Nortel Networks Limited Intra-row permutation for turbo code
JP2000353964A (en) * 1999-06-10 2000-12-19 Matsushita Electric Ind Co Ltd Interleave device and its method
KR100554072B1 (en) * 1999-08-24 2006-02-22 삼성전자주식회사 Methods for index assignmet of VQ codebook, Classified VQ codebook

Also Published As

Publication number Publication date
KR100800840B1 (en) 2008-02-04

Similar Documents

Publication Publication Date Title
JP3636684B2 (en) Method for performing turbo encoder interleaving and interleaving in UMTS
US7210076B2 (en) Interleaving order generator, interleaver, turbo encoder, and turbo decoder
JP4383672B2 (en) Turbo code interleaver for 3rd generation code division multiple access
KR20070093447A (en) Parallel interleaver, parallel deinterleaver, and interleave method
US7590917B2 (en) Parameter generation for interleavers
CA2507620C (en) Addresses generation for interleavers in turbo encoders and decoders
WO1996037050A1 (en) Reconfigurable interleaver/deinterleaver and address generator for data streams interleaved according to one of a plurality of interleaving schemes
EP1203452B1 (en) Address generating device for use in multi-stage channel interleaver/deinterleaver
US7734989B2 (en) Multi-standard turbo interleaver using tables
JP4064894B2 (en) Method and apparatus for generating interleaved addresses
US7051261B1 (en) Turbo encoder with reduced processing delay
US7394412B2 (en) Unified interleaver/de-interleaver
US7552377B1 (en) Method of and circuit for interleaving data in a data coder
KR100800840B1 (en) Turbo interleaver and turbo interleaving method in cdma mobile communication system having turbo code
JP4909498B2 (en) Interleave parameter calculation method / program / program recording medium / device, mobile phone
KR100416569B1 (en) Turbo permutator and Turbo decoder using the same
KR100943612B1 (en) Turbo interleaving apparatus and method in mobile communication system having turbo code
US20090083514A1 (en) Apparatus and method for block interleaving in mobile communication system
KR101614482B1 (en) Apparatus and method for determining interleaved address of turbo interleaver
KR20030022602A (en) Memory address generator
KR20050088182A (en) Addresses generation for interleavers in turbo encoders and decoders
JPH10308677A (en) Convolutional deinterleaver for digital communication equipment
KR20030058177A (en) Output address calculator of turbo interleaver

Legal Events

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

Payment date: 20121228

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20131230

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20141223

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20151229

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20161228

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20171228

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20181227

Year of fee payment: 12