KR100672347B1 - Flexible data rate Matching Method in 3GPP2 - Google Patents

Flexible data rate Matching Method in 3GPP2 Download PDF

Info

Publication number
KR100672347B1
KR100672347B1 KR1020000038387A KR20000038387A KR100672347B1 KR 100672347 B1 KR100672347 B1 KR 100672347B1 KR 1020000038387 A KR1020000038387 A KR 1020000038387A KR 20000038387 A KR20000038387 A KR 20000038387A KR 100672347 B1 KR100672347 B1 KR 100672347B1
Authority
KR
South Korea
Prior art keywords
repetition
bit
code group
rate matching
type
Prior art date
Application number
KR1020000038387A
Other languages
Korean (ko)
Other versions
KR20020004478A (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 KR1020000038387A priority Critical patent/KR100672347B1/en
Publication of KR20020004478A publication Critical patent/KR20020004478A/en
Application granted granted Critical
Publication of KR100672347B1 publication Critical patent/KR100672347B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/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/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

Abstract

본 발명은 차세대 이동 통신에 관한 것으로, 특히 물리 계층상에서 터보 코드를 사용하는 경우 가변 데이터 레이트를 지원하기 위한 가변 데이터 레이트 매칭 방법에 관한 것이다. 이와 같은 본 발명에 따른 가변 데이터 레이트 매칭 방법은 채널 코딩된 부호화열이 물리 계층에 매핑되도록 인터리빙하는 과정에서, The present invention relates to the next generation mobile communication, and more particularly, to a variable data rate matching method for supporting a variable data rate when using a turbo code on a physical layer. In the variable data rate matching method according to the present invention, in the process of interleaving the channel coded coding sequence to be mapped to the physical layer,

상기 터보 코드로 채널 코딩된 다른 비트 레이트의 부호화열이 일정한 심볼 레이트가 되도록, 상기 채널 코딩된 부호화열이 서로 다른 비트 패턴을 갖는 두 가지 타입의 코드 그룹들로 나뉘어, 각 코드 그룹내에서 서로 다른 반복 팩터에 의해 각 비트들이 반복되어 인터리빙된다. 따라서, 에너지의 분포를 두개의 터보 코드 구성 부호화기의 각각에 대하여 균일하게 줄 수 있으며, 이로 인하여 복호 성능을 향상시킬 수 있다The channel coded coding sequence is divided into two types of code groups having different bit patterns such that the coded sequences of different bit rates channel coded with the turbo code have a constant symbol rate, and thus different code groups in each code group. Each bit is repeated and interleaved by the repetition factor. Therefore, the energy distribution can be given uniformly to each of the two turbo code constituent encoders, thereby improving the decoding performance.

터보 코드, 코드 그룹, 오프셋Turbo code, code group, offset

Description

가변 데이터 레이트 매칭 방법{Flexible data rate Matching Method in 3GPP2}Flexible data rate matching method in 3GPP2}

도 1은 일반적인 터보 코드 방식을 위한 부호화기의 블록 구성도.1 is a block diagram of an encoder for a general turbo code method.

도 2는 종래 기술에 따른 가변 데이터 레이트 매칭 방법을 나타낸 도면.2 illustrates a variable data rate matching method according to the prior art.

도 3은 종래 기술에 따른 1/4 레이트 터보 부호를 사용하는 경우 가변 데이터 레이트 매칭의 문제점을 나타낸 도면.3 illustrates a problem of variable data rate matching when using a quarter rate turbo code according to the prior art.

도 4는 코드 그룹을 나누지 않았을 경우의 반복 패턴을 나타낸 도면.4 is a diagram illustrating a repeating pattern when code groups are not divided.

도 5은 본 발명에 따라 코드 그룹을 나누어 주었을 경우에 대한 반복 패턴을 나타낸 도면.5 is a diagram illustrating a repeating pattern for a case where code groups are divided according to the present invention.

본 발명은 차세대 이동 통신에 관한 것으로, 특히 물리 계층상에서 터보 코드를 사용하는 경우 가변 데이터 레이트를 지원하기 위한 가변 데이터 레이트 매칭 방법에 관한 것이다.The present invention relates to the next generation mobile communication, and more particularly, to a variable data rate matching method for supporting a variable data rate when using a turbo code on a physical layer.

차세대 이동 통신(3GPP2)에서 채널 코딩된 데이터들이 물리 계층에 매핑되도록 하기 위해서는 시스템에서 원하는 데이터 레이트로 조정할 필요가 있다. In next generation mobile communication (3GPP2), channel coded data needs to be adjusted to the desired data rate in the system in order to be mapped to the physical layer.                         

이를 위해서 시스템에서는 고정 데이터 레이트 및 가변 데이터 레이트 방식을 지원하는데, 특히 데이터 전송 모드 중에서 가변 데이터 레이트 방식은 차세대 이동 통신(3GPP2)의 각각의 무선 구조상에서 지원하고 있는 표준의 전송율 이외에도 임의의 전송율을 지원할 수 있도록 하는 전송 방법이다.To this end, the system supports a fixed data rate and a variable data rate method. In particular, among the data transmission modes, the variable data rate method may support an arbitrary data rate in addition to the standard data rate supported by each radio structure of the next generation mobile communication (3GPP2). It is the transmission method to make it possible.

특히, 차세대 이동 통신(3GPP2)의 19.2kbps 이상의 전송율에서는 보조 채널(Supplemental Channel)을 통하여 터보 코드를 채널 부호화 방법으로 지원할 수 있도록 규정하고 있다.Particularly, at a bit rate of 19.2kbps or higher of next generation mobile communication (3GPP2), a turbo code can be supported by a channel encoding method through a supplemental channel.

이러한 터보 코드는 도 1에서와 같이 두 개의 중첩 시스터메틱 컨벌루션(Recursive Systematic Convolutional;이하 RSC라 약칭함)(10,11) 부호화기와 랜덤한 특성을 가지는 인터리버(12)를 통하여 상기 두 개의 구성 부호화기를 병렬로 연결시켜 구성된다.This turbo code is provided through two overlapping systematic convolutional (hereinafter referred to as RSC) encoders 10 and 11 and an interleaver 12 having random characteristics. It is configured by connecting in parallel.

현재 차세대 이동 통신(3GPP2)상에서 규정하고 있는 터보 코드의 구성 RSC 부호화기(10,11)는 코딩율이 1/3인 RSC 부호화기이고, 궤환 성분에 대한 폴리노미얼(polynomial)은 8진수로 '13'을 사용하고 패리티를 위한 폴리노미얼은 '15'와,'17'을 사용하고 있다.Configuration of Turbo Codes Currently Defined on Next Generation Mobile Communication (3GPP2) The RSC encoders 10 and 11 are RSC encoders having a coding rate of 1/3, and the polynomial of the feedback component is octal in '13. ', And the polynomial for parity uses' 15' and '17'.

그리고 터보 부호화기의 인터리버(12)로는 선형 합동 시퀀스(Linear Congruential Sequence) 방식을 사용한 인터리버를 사용하고 있다.As the interleaver 12 of the turbo encoder, an interleaver using a linear congruential sequence method is used.

그러므로, 종래 기술에서는 1/3 레이트의 구성 부호화기를 병렬 연결한 구조를 가지므로, 기본적인 터보 부호화기의 출력 레이트는 1/6 레이트를 가진다.Therefore, since the conventional technology has a structure in which the constituent encoders of 1/3 rate are connected in parallel, the output rate of the basic turbo encoder has 1/6 rate.

그러나, 실제로 차세대 통신 시스템(3GPP2)의 각각의 무선 구조상에서 가질 수 있는 부호화기의 코드율은 1/2, 1/3, 1/4이며, 이를 지원할 수 있도록 하는 펑쳐링 패턴이 필요하게 된다.However, in practice, the code rates of encoders that can be provided in each radio structure of the next generation communication system (3GPP2) are 1/2, 1/3, and 1/4, and a puncturing pattern for supporting them is required.

따라서, 종래에는 다음 표 1과 표 2에 의한 펑쳐링 패턴을 가지고, 데이터 또는 테일에 대한 비트 펑쳐링을 수행한다.Therefore, conventionally, the puncturing pattern according to Table 1 and Table 2 is performed, and bit puncturing is performed on data or tail.

레이트 1/2Rate 1/2 레이트 1/3Rate 1/3 레이트 1/4Rate 1/4 Xk X k 11111111 11111111 11111111 Yk Y k 10101010 11111111 11111111 Zk Z k 00000000 00000000 10101010 Xk'X k '' 00000000 00000000 00000000 Yk'Y k '' 01010101 11111111 01010101 Zk'Z k '' 00000000 00000000 11111111

레이트 1/2Rate 1/2 레이트 1/3Rate 1/3 레이트 1/4Rate 1/4 Xk X k 11111111 11111111 11111111 Yk Y k 11111111 11111111 11111111 Zk Z k 00000000 11111111 11111111

현재 가변 데이터 레이트를 지원하기 위한 펑쳐링 기법은 심볼 반복과 균일 펑쳐링을 결합하여 이루어지는데, 우선적으로 심볼을 일정 팩터만큼 반복하여 우리가 사용하고자 하는 채널 인터리버의 크기보다 큰 수로 만들어준 후 이 중에서 채널 인터리버의 크기보다 큰 부분을 펑쳐링을 통하여 제거하는 방법을 사용하는 것이다.Currently, puncturing techniques to support variable data rates are achieved by combining symbol repetition and uniform puncturing. First of all, the symbol is repeated by a certain factor to make the number larger than the size of the channel interleaver we want to use. Punching removes the part larger than the size of the channel interleaver.

그러나 종래 기술에 따른 심볼 반복과 펑쳐링 기법을 터보 코드에 적용하는 경우에는 문제가 발생할 수 있다. However, a problem may occur when the symbol repetition and puncturing techniques according to the prior art are applied to a turbo code.

즉, 터보 코드에 대한 복호기는 두 개의 최대 사후(Maximum A Posteriori) 복호기를 인터리버와 디인터리버를 통하여 직렬로 연결한 후, 반복 복호 과정을 통 하여 수행하게 되는데, 이때 복호 후의 성능을 가장 좋게 만들기 위해서는 도 1 각각의 구성 부호화기의 부호화 성능을 동일하도록 만들어 주어야 한다.That is, the decoder for the turbo code is performed by connecting two Maximum A Posteriori decoders serially through an interleaver and a deinterleaver, and then performing an iterative decoding process, in order to achieve the best performance after decoding. The encoding performance of each component encoder of FIG. 1 should be made identical.

즉, 수신단의 두 개의 복호기의 성능이 균형이 이루어지기 위해서는 상기 두 개의 복호기로 들어가는 송신단의 각각의 구성 부호화기(10,11)의 출력 패리티 부호화열에 균일한 에너지가 실려 전송됨으로써 가능하다.That is, in order to balance the performance of the two decoders of the receiver, it is possible to carry uniform energy in the output parity coded strings of the component encoders 10 and 11 of the transmitters entering the two decoders.

또한 각각의 복호기의 에너지 분포가 트렐리스 상에서 균일한 분포를 가져야만 복호기의 전체 성능이 최적이 될 것으로 예측할 수 있다.In addition, it can be predicted that the overall performance of the decoder will be optimal only if the energy distribution of each decoder has a uniform distribution on the trellis.

예를 들어, 도 3에 도시된 바와 같이, 모든 펑처링이 두번째 구성(constituent) 부호화기의 마지막 패리티 비트에만 몰려서 발생하고 있으며, 이는 결과적으로 두번째 복호기의 복호성능을 저하시키는 문제점을 가지게 된다. For example, as shown in FIG. 3, all puncturing occurs by gathering only the last parity bit of the second constituent encoder, which results in a problem of degrading the decoding performance of the second decoder.

따라서 전체적인 복호 성능에 있어서 나쁜 영향을 줄 것으로 판단할 수 있다.Therefore, it can be judged that it will adversely affect the overall decoding performance.

따라서, 본 발명의 목적은 이상에서 언급한 종래 기술의 문제점을 감안하여 안출한 것으로서, 터보 코드를 위한 가변 데이터 레이트 매칭 방법을 제공하기 위한 것이다.Accordingly, an object of the present invention is to provide a variable data rate matching method for a turbo code, which is made in view of the above-mentioned problems of the prior art.

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

본 발명은 가변 데이터 레이트에 적용되는 레이트 매칭 방법에 있어서, 입력 비트열에 대하여 소정의 코딩 레이트로 채널 코딩을 수행하는 단계와, 상기 채널 코딩된 비트열에 대하여, 제 1 반복 횟수 및 제 2 반복 횟수의 적용 비율에 따라, 제 1 적용 비율에 상응하는 제 1 타입 코드 그룹과, 제 2 적용 비율에 상응하는 제 2 타입 코드 그룹으로 구분하는 단계와, 상기 제 1 타입 코드 그룹에 대하여, 상기 제 1 적용 비율에 따라, 상기 제 1 반복 횟수 및 상기 제 2 반복 횟수를 적용하여 비트 반복을 수행하는 단계 및 상기 제 2 타입 코드 그룹에 대하여, 상기 제 2 타입 코드 그룹에 적용되는 비율로, 상기 제 1 반복 횟수 및 상기 제 2 반복 횟수를 적용하여 비트 반복을 수행하는 단계를 포함하여 이루어진다.
또한, 본 발명은 가변 데이터 레이트에 적용되는 레이트 매칭 방법에 있어서, 입력 비트열에 대하여 소정의 코딩 레이트로 채널 코딩을 수행하는 단계 및 상기 채널 코딩된 비트열에 대하여, 제 1 타입 비트 그룹 및 제 2 타입의 비트 그룹에 따라, 비트 반복을 수행하되, i 를 0 으로 초기화 하는 단계와, (a)

Figure 112005036388995-pat00014
Figure 112005036388995-pat00015
을 만족하는 ni 번째 비트에 대하여는 제 2 반복 팩터를 적용하여 반복을 수행하고, 만족하지 아니하는 비트에 대하여는 제 1 반복 팩터를 적용하여 비트 반복을 수행하는 단계와, j 를 0 으로 초기화 하는 단계와, (d)
Figure 112005036388995-pat00016
Figure 112005036388995-pat00017
를 만족하거나,
Figure 112005036388995-pat00018
Figure 112005036388995-pat00019
를 만족하는 경우,
Figure 112005036388995-pat00020
번째 비트에 대하여, 제 2 반복 팩터를 적용하여 비트 반복을 수행하고, 그 이외의 경우에는, 제 1 반복 팩터를 적용하여 비트 반복을 수행하는 단계와, (e) 상기 (d) 단계를 반복 수행하되, 상기 j 가 n-1 이 되기까지 반복 수행하는 단계 및 (f) 상기 (a)~(e) 단계를 반복 수행하되, 상기 i 가 I-1 이 되기까지 반복 수행하는 단계를 포함하여 비트 반복을 수행하는 단계를 포함하여 이루어진다. 단, 상기
Figure 112005036388995-pat00021
는 제 2 타입 코드 그룹의 수, 상기
Figure 112005036388995-pat00022
은 상기 제 1 타입의 코드 그룹 내에서, 제 2 반복 횟수를 적용하여 반복을 수행하는 비트 수, 상기 I 는 상기 입력 비트열의 길이, n 은 코딩 레이트의 역수, 상기
Figure 112005036388995-pat00023
는 i 번째 코드 그룹에 상응하는 오프셋을 의미한다.
또한, 본 발명은, 가변 데이터 레이트에 적용되는 레이트 매칭 방법에 있어서, 입력 비트열에 대하여 소정의 코딩 레이트로 채널 코딩을 수행하는 단계 및 상기 채널 코딩된 비트 열은 적어도 하나의 제 1 타입 코드 그룹 및 적어도 하나의 제 2 타입 코드 그룹으로 이루어지고, 상기 제 1 타입 코드 그룹에 속하는 비트에 대하여, a 개의 비트는 제 1 반복 횟수만큼 반복하고, b 개의 비트는 제 2 반복 횟수만큼 반복하고, 상기 제 2 타입 코드 그룹에 속하는 비트에 대하여, c 개의 비트는 제 1 반복 횟수만큼 반복하고, d 개의 비트는 제 2 반복 횟수만큼 반복하는 단계를 포함하여 이루어진다. 단, a+b = c+d = n, n 은 코딩 레이트의 역수이다.
또한, 본 발명은, 가변 데이터 레이트에 적용되는 레이트 매칭 방법에 있어서, 입력 비트열에 대해 채널 코딩을 수행하는 단계와, 상기 채널 코딩된 두가지 타입의 코드 그룹에 대하여, 서로 다른 반복 규칙을 적용하여 비트 반복을 수행하는 단계 및 상기 비트 반복된 비트열에 대해, 인터리빙을 수행하는 단계를 포함하여 이루어진다.
이하 본 발명의 바람직한 일 실시 예에 따른 구성 및 작용을 첨부된 도면을 참조하여 설명한다.According to an aspect of the present invention, there is provided a rate matching method applied to a variable data rate, the method comprising: performing channel coding on an input bit stream at a predetermined coding rate; According to an application rate, dividing into a first type code group corresponding to a first application rate and a second type code group corresponding to a second application rate; and for the first type code group, applying the first application Performing bit repetition by applying the first repetition number and the second repetition number according to a ratio, and for the second type code group, the first repetition at a rate applied to the second type code group And performing bit repetition by applying the number of times and the second number of repetitions.
In addition, the present invention provides a rate matching method applied to a variable data rate, the method comprising: performing channel coding on an input bit string at a predetermined coding rate and on the channel coded bit string, a first type bit group and a second type Performing bit repetition, initializing i to 0 according to the bit group of (a)
Figure 112005036388995-pat00014
And
Figure 112005036388995-pat00015
Performing a repetition by applying a second repetition factor to the ni-th bit that satisfies, and performing a repetition of the bit by applying a first repetition factor to a bit not satisfied, and initializing j to 0; , (d)
Figure 112005036388995-pat00016
And
Figure 112005036388995-pat00017
Or satisfy
Figure 112005036388995-pat00018
And
Figure 112005036388995-pat00019
If you satisfy
Figure 112005036388995-pat00020
Performing bit repetition by applying a second repetition factor to the first bit, otherwise performing bit repetition by applying a first repetition factor, and (e) repeating step (d) However, the step of repeatedly performing the j until the n-1 and (f) repeating the steps (a) to (e), but repeatedly performing the step until the i is I-1 bit Performing an iteration. However, the above
Figure 112005036388995-pat00021
Is the number of second type code groups, said
Figure 112005036388995-pat00022
Is a number of bits for performing repetition by applying a second number of repetitions within the code group of the first type, wherein I is the length of the input bit string, n is the inverse of the coding rate, and
Figure 112005036388995-pat00023
Denotes an offset corresponding to the i th code group.
In addition, the present invention provides a rate matching method applied to a variable data rate, the method comprising: performing channel coding on an input bit string at a predetermined coding rate, wherein the channel coded bit string includes at least one first type code group; For bits belonging to at least one second type code group and belonging to the first type code group, a bit is repeated a first number of times, b bits are repeated a second number of times, and For bits belonging to the two type code group, c bits are repeated by a first number of repetitions and d bits are repeated by a second number of repetitions. However, a + b = c + d = n, n is an inverse of the coding rate.
In addition, the present invention provides a rate matching method applied to a variable data rate, the method comprising performing channel coding on an input bit stream and applying different repetition rules to the two types of coded code groups. Performing an iteration and performing interleaving on the bit repeated bit stream.
Hereinafter, a configuration and an operation according to an exemplary embodiment of the present invention will be described with reference to the accompanying drawings.

본 발명에서는 터보 코드를 이용한 채널 코딩된 부호화열의 가변 데이터 레이트(flexible data rate) 방식을 지원하기 위한 레이트 매칭 과정의 설계에 있어서 우선적으로 심볼 반복과 펑쳐링으로 이루어지는 두 단계의 레이트 매칭 과정을 사용하는 것이 아니라 한 단계의 균일 반복(uniform repetition)을 통하여 레이트 매칭을 수행하여 원하는 인터리버의 길이를 맞추는 방법을 사용한다.In the present invention, in the design of a rate matching process for supporting a variable data rate scheme of a channel coded coding sequence using a turbo code, a two-step rate matching process consisting of symbol repetition and puncturing is used. Rather, rate matching is performed through uniform repetition in one step to adjust the length of the desired interleaver.

그러기 위해서 본 발명에서는 먼저 코드 그룹을 정의한다.To this end, the present invention first defines a code group.

본 발명에서 정의된 코드 그룹은 하나의 정보 비트 입력에 대한 채널 부호화 기의 출력 비트들의 그룹으로 정의한다. The code group defined in the present invention is defined as a group of output bits of the channel encoder for one information bit input.

즉, 1/4 레이트(rate)의 부호화기를 예로 들 경우, 하나의 코드 그룹은 4개의 코드 비트들로 구성된다. In other words, in the case of an encoder having a 1/4 rate, one code group is composed of four code bits.

예를 들어, 하나의 정보 비트 입력에 대한 채널 부호화기의 출력이 표 1의 펑처링 패턴에 의해 1/4 레이트(rate)의 코드 부호화열들이 "x, y, z, z', x, y, y',z'와 같은 형태가 되는 경우, 본 발명에서 정의되는 코드 그룹은 이를 4개씩 묶은 것으로 표현된다.For example, the output of the channel encoder for one information bit input is a code rate of 1/4 rate (x, y, z, z ' , x, y, In the case of a form such as y ' , z ' , the code group defined in the present invention is expressed as a group of four.

결과적으로, 전체의 데이터 부호화열의 길이를 L이라고 정의하면, 코드 그룹의 개수는 (L/n)으로 정의되고, 이 코드 그룹의 개수는 채널 부호화기의 입력 비트열(I)의 길이가 된다.As a result, if the length of the entire data coding string is defined as L, the number of code groups is defined as (L / n), and the number of code groups is the length of the input bit string I of the channel encoder.

그리고, 이러한 코드 그룹을 이용하여 전체의 부호화열의 코드 비트들 가운데에서 하나의 폴리노미얼(polynomial)로부터 출력된 부호화열에만 집중적으로 반복이 들어가는 것을 막아주기 위하여 코드에 대한 그룹 단위로 서로 다른 반복 팩터를 가지고 비트 반복이 이루어지도록 한다. In order to prevent repetitive intensive repetition of only the coded sequence output from one polynomial among the code bits of the entire coded sequence, different repetition factors for each code group are used. Let the bit repeat with.

따라서, 본 발명에서는 다음 수학식 1과 수학식 2와 같이 서로 다른 반복 팩터 M1과 M2를 다음과 같이 정의한다.Therefore, in the present invention, different repetition factors M 1 and M 2 are defined as follows in Equation 1 and Equation 2 as follows.

이하에서 I는 순환 중첩 코드(CRC)와 테일(tail)을 포함하는 채널 부호화기의 입력열의 길이이고, L은 부호화기의 출력열의 길이이다. n은 코딩 레이트의 역수의 값이며, N은 원하는 인터리버 사이즈의 깊이이다. Hereinafter, I is the length of an input string of a channel encoder including a cyclic overlap code (CRC) and a tail, and L is the length of an output string of the encoder. n is the value of the inverse of the coding rate, and N is the depth of the desired interleaver size.                     

본 발명에서는 심볼 반복이 다음 수학식 1과 수학식 2에 의하여 서로 다른 심볼 팩터를 가지고 각 비트의 반복 수행이 이루어진다.In the present invention, symbol repetition is performed by repeating each bit with different symbol factors according to the following equations (1) and (2).

Figure 112005036388995-pat00024
Figure 112005036388995-pat00024

여기에서

Figure 112000014027198-pat00002
는 x를 넘지 않는 최대 정수값이다.From here
Figure 112000014027198-pat00002
Is the maximum integer not exceeding x.

Figure 112005036388995-pat00025
Figure 112005036388995-pat00025

여기에서 LCEIL{ x}RCEIL 는 x보다 크거나 같은 최소 정수값이다.Where LCEIL {x} RCEIL is the smallest integer value greater than or equal to x.

상기 부호화기의 전체 출력열에 대한 서로 다른 비트 패턴으로 출력되는 코드 그룹을 제1 타입과, 제2 타입으로 나누어 상기 제1 타입에 할당된 비트의 전체 개수는 다음 수학식 3에 의해서 산출된다.The total number of bits allocated to the first type by dividing the code group output in different bit patterns for the entire output string of the encoder into a first type and a second type is calculated by the following equation.

Figure 112005036388995-pat00026
Figure 112005036388995-pat00026

그리고, 상기 제2 타입에 할당된 비트의 전체 개수는 다음 수학식 4에 의해서 산출된다.The total number of bits allocated to the second type is calculated by the following equation.

Figure 112005036388995-pat00027
Figure 112005036388995-pat00027

이때, 상기 전체 출력열에 대하여 제1 타입과 제2 타입의 코드 그룹이 균일하게 배치되도록 하기 위하여 먼저 전체의 코드 그룹의 개수 중에서 제2 타입 코드 그룹이 될 개수를 다음 수학식 5에 의하여 산출한다.In this case, in order to uniformly arrange the code group of the first type and the second type with respect to the entire output string, first, a number to be the second type code group among the total number of code groups is calculated by Equation 5 below.

Figure 112005036388995-pat00028
Figure 112005036388995-pat00028

상기 수학식 5에서 전체 코드 그룹중에서 제2 타입 코드 그룹이 될 개수는 인터리버 사이즈 N을 채널 부호화기 입력열의 길이 I로 나눈 나머지를 갖는다.In Equation 5, the number of the second type code groups among the entire code groups has a remainder obtained by dividing the interleaver size N by the length I of the channel encoder input string.

그리고, 본 발명에서는 다음 수학식 6을 이용하여 N개의 비트로 구성된 제1 타입의 코드 그룹내에서 M2의 반복 팩터를 가지는 비트의 개수를 계산하고, 마찬가지로 제2 타입 코드 그룹내에서 M2의 반복 팩터를 가지는 비트의 개수를 다음 수학식 7과 같이 정의한다.In the present invention, the following equation 6 is used to calculate the number of bits having a repetition factor of M 2 in a first type code group consisting of N bits, and likewise repetition of M 2 in a second type code group. The number of bits having a factor is defined as in Equation 7 below.

Figure 112005036388995-pat00029
Figure 112005036388995-pat00029

Figure 112005036388995-pat00030
Figure 112005036388995-pat00030

다음으로 i번째 코드 그룹에서 사용하게 될 오프셋 값을 다음 수학식 8의 식으로 정의한다. Next, the offset value to be used in the i th code group is defined by Equation 8 below.                     

Figure 112000014027198-pat00006
Figure 112000014027198-pat00006

즉, 수학식 8은 i번 코드 그룹에서의 테스트를 수행할 경우에 (i-1)번째 그룹까지의 테스트를 수행한 결과인 M2의 반복 팩터를 가지는 코드 비트들의 개수인 오프셋(offset) 값을 이용하여, 다음과 같은 알고리즘을 통하여 전체 채널 코딩된 부호화열에 대하여 균일한 비트 반복 과정을 수행하게 된다. That is, Equation 8 is an offset value which is the number of code bits having a repetition factor of M 2 , which is a result of performing a test up to the (i-1) th group when performing a test in the code group i. By using the above algorithm, a uniform bit repetition process is performed on the entire channel coded coded sequence through the following algorithm.

for(i=0;i<I;i++){for (i = 0; i <I; i ++) {

Figure 112000014027198-pat00007
Figure 112000014027198-pat00007

if(((i+1)K1,R2)mod I<k1,R2) {if (((i + 1) K 1, R2 ) mod I <k 1, R2 ) {

for(j=0;j<n ;j++){for (j = 0; j <n; j ++) {

if((7j+Oi)mod n<K1,GR2)if ((7j + O i ) mod n <K 1, GR2 )

repeat(n*i+j)th bit with repetition factor M2 else repeat (n*i+j)th bit with repetition factor M1 repeat (n * i + j) th bit with repetition factor M 2 else repeat (n * i + j) th bit with repetition factor M 1

}}

} 제2 타입 코드 그룹의 선택} Selecting the second type code group

else{else {

for(j=0;j<n;j++){ for (j = 0; j <n; j ++) {                     

if((7j+Oi)mod n<K1,GR1)if ((7j + O i ) mod n <K 1, GR1 )

repeat(n*i+j)th bit with repetition factor M2 repeat (n * i + j) th bit with repetition factor M 2

else repeat (n*i+j)th bit with repetition factor M1 else repeat (n * i + j) th bit with repetition factor M 1

} 제 1타입 코드 그룹의 선택} Choosing a Type 1 Code Group

}}

상기 알고리즘에서는 채널 코딩된 부호화열에 대하여 상기 제2 반복 팩터를 가지는 비트들이 균일하게 분포되도록 전체 코드 그룹들에 대하여 상기 제2 타입 코드 그룹 개수마다 테스트를 수행하여, 상기 제2 타입 코드 그룹 개수의 정수배를 상기 채널 코딩 부호화열의 입력 비트열로 나눈 나머지가 상기 제2 코드 그룹 개수보다 작은 경우에 제2 타입 코드 그룹을 선택하여 해당 코드 그룹 위치에서 서로 다른 반폭 팩터로 비트 반복을 수행하도록 한다.In the algorithm, a test is performed for every number of the second type code groups for all code groups so that the bits having the second repetition factor are uniformly distributed with respect to the channel coded coding sequence, and an integer multiple of the number of the second type code groups. If the remainder divided by the input bit string of the channel coding coding sequence is smaller than the number of the second code group, the second type code group is selected to perform bit repetition with different half-width factors at corresponding code group positions.

그리고, 상기 선택된 제2 타입 코드 그룹에 할당된 n개의 비트에서 각 비트의 인덱스가 0부터 n까지 증가하는 인덱스 j에 대해 (7j+오프셋)을 n으로 나눈 나머지가 상기 제2 타입 코드 그룹에서 상기 제2 반복 팩터를 갖는 비트의 개수보다 작은 경우에는 상기 제2 반복 팩터에 의해 해당 비트의 반복을 수행하도록 하고, 상기 (7j+오프셋)을 n으로 나눈 나머지가 상기 제2 타입 코드 그룹에서 상기 제2 반복 팩터를 갖는 비트의 개수보다 크거나 같은 경우에는 상기 제1 반복 팩터에 의해 해당 비트의 반복을 수행하하도록 하는 방식을 사용하였다. In addition, the remainder obtained by dividing (7j + offset) by n for the index j in which the index of each bit increases from 0 to n in n bits allocated to the selected second type code group is determined in the second type code group. If it is smaller than the number of bits having two repetition factors, the repetition of the corresponding bits is performed by the second repetition factor, and the remainder obtained by dividing (7j + offset) by n is the second repetition in the second type code group. When the number is greater than or equal to the number of bits having a factor, a method of performing the repetition of the corresponding bit by the first repetition factor is used.                     

한편, 상기 제2 타입 코드 그룹 개수의 정수배를 상기 채널 코딩 부호화열의 입력 비트열로 나눈 나머지가 상기 제2 코드 그룹 개수보다 크거나 같은 경우에 제1 타입 코드 그룹을 선택하도록 한다.Meanwhile, the first type code group is selected when a remainder obtained by dividing an integer multiple of the number of the second type code groups by an input bit string of the channel coding coding sequence is greater than or equal to the number of the second code group.

그리고, 상기 인덱스 j에 대해 (7j+오프셋)을 n으로 나눈 나머지가 상기 제1 타입 코드 그룹에서 상기 제2 반복 팩터를 갖는 비트의 개수보다 작은 경우에는 상기 제2 반복 팩터에 의해 해당 비트의 반복을 수행하고, 상기 (7j+오프셋)을 n으로 나눈 나머지가 상기 제1 타입 코드 그룹에서 상기 제2 반복 팩터를 갖는 비트의 개수보다 크거나 같은 경우에는 상기 제1 반복 팩터에 의해 해당 비트의 반복이 이루어지도록 하는 방식을 이용하였다.If the remainder of dividing (7j + offset) by n for the index j is smaller than the number of bits having the second repetition factor in the first type code group, repetition of the corresponding bit is performed by the second repetition factor. And if the remainder of dividing (7j + offset) by n is greater than or equal to the number of bits having the second repetition factor in the first type code group, repetition of the corresponding bit is performed by the first repetition factor. I used a way to lose.

예를 들어서 L=20, n=4, I=5인 경우을 생각해 보자. 그리고 이때 원하는 인터리버의 길이가 N=45라고 하자. 그러면 M1= 2, M2=3으로 계산된다.For example, consider the case where L = 20, n = 4, and I = 5. In this case, the length of the desired interleaver is N = 45. Then M 1 = 2 and M 2 = 3.

이때, 코드 그룹을 나누지 않고 균일한 반복 알고리즘을 사용하게 되면 다음의 도 4와 같은 형태의 반복 패턴을 얻을 수 있다.At this time, if a uniform repetition algorithm is used without dividing the code groups, a repetition pattern of the form shown in FIG. 4 can be obtained.

도 4에서 음영으로 칠해져 있는 부분은 M2=3의 반복 팩터를 가지는 비트의 위치를 나타내고, 나머지 부분들은 M1=2의 반복 팩터를 가지는 비트들의 위치를 나타낸다.In FIG. 4, the shaded portions represent positions of bits having a repetition factor of M 2 = 3, and the remaining portions represent positions of bits having a repetition factor of M 1 = 2.

도 4에서 알 수 있듯이 M2=3 반복이 들어가는 비트들의 위치가 y 비트열에 집중되고 있으며, 이러한 반복 패턴은 에너지 분포의 균일함에 있어서 좋지 않은 영향을 끼친다고 생각할 수 있다. As can be seen in FIG. 4, the positions of bits into which M 2 = 3 repetitions are concentrated are concentrated in the y bit string, and this repetition pattern may be considered to have an adverse effect on the uniformity of energy distribution.

이때, 만일 본 발명에서 고안된 코드 그룹 단위의 균일 반복 알고리듬을 사용하게 되면 다음의 도 5와 같은 반복 패턴을 얻을 수 있게 된다.At this time, if the uniform repetition algorithm of the code group unit devised in the present invention is used, the repetition pattern as shown in FIG. 5 can be obtained.

도 5를 통하여 알 수 있는 바와 같이 M2=3의 j에 7을 곱한 이유를 설명하면 다음과 같다. As can be seen from FIG. 5, the reason for multiplying j by 7 of M 2 = 3 is as follows.

현재 무선 구조별로 지원하는 코드 율은 1/2, 1/3, 1/4의 3가지 종류이다. 이때, 1/4레이트의 터보 부호를 생각하면 j=0에서 3까지의 값을 가지게 된다. 이때 만일 7이 곱해지지 않는 상황을 가정하자.Currently, there are three kinds of code rates supported by radio structures: 1/2, 1/3, and 1/4. At this time, if the turbo code of 1/4 rate is considered, it has a value from j = 0 to 3. Assume that if 7 is not multiplied.

그리고, 하나의 그룹당 K1값이 2라고 가정하자. 그러면 각각의 코드 비트 그룹에서 선택되는 비트의 위치는 (0,1), (2,3), (0,1), (2,3)을 반복하게 되며, 이 또한 에너지 분포의 불균형을 초래하는 패턴으로 생각할 수 있다. 따라서 만일 7을 곱하여 주고, 생각하게 되면, (0,3), (1,2), (0,3), (1,2)의 패턴을 반복하게 될 것이며, 이에 따라 보다 균일한 형태의 반복 패턴을 얻는 것이 가능하다는 것을 알 수 있다. And suppose that K 1 value per group is 2. The bit position selected in each code bit group then repeats (0,1), (2,3), (0,1), (2,3), which also causes an unbalanced energy distribution. You can think of it as a pattern. So if we multiply by 7 and think about it, we will repeat the patterns of (0,3), (1,2), (0,3), (1,2), and thus a more uniform form of repetition. It can be seen that it is possible to obtain a pattern.

만일 1/4 코드율의 부호만을 생각한다면, 가장 바람직한 방법은 비트 인덱스 j에 7을 곱하는 것이 아니라 비트 인덱스 j에 대한 비트-리버싱 오퍼레이션(bit-reversing operation)을 정의하는 방법으로 생각할 수 있다. If only the code of the 1/4 code rate is considered, the most preferable method is not to multiply the bit index j by 7, but to define the bit-reversing operation for the bit index j.

즉, 1/4 레이트의 부호일 경우 (0,1,2,3)의 인덱스를 (0,2,3,1)로 바꾸어 테스트를 수행하는 것이 가장 바람직한 방법이다. 그러나 1/3 레이트의 부호에서는 이러한 방법을 적용할 수 없으므로, 5보다 큰 가장 작은 소수인 7을 곱하여 균일성 을 주고자 했다. That is, in the case of a 1/4 rate code, it is most preferable to perform the test by changing the index of (0,1,2,3) to (0,2,3,1). However, this method cannot be applied to codes of 1/3 rate, so we wanted to give uniformity by multiplying 7, the smallest prime number larger than 5.

상기 알고리즘은 각각의 코드 비트들에 대한 중요도를 고려하지 않은 알고리즘으로 생각할 수 있다. The algorithm can be thought of as an algorithm that does not take into account the importance for each code bit.

그러므로, 터보 코드의 성능을 최대로 끌어올리기 위해서는 반복 과정에서, 다른 비트보다 큰 반복 팩터를 가지는 위치를 배분하는데 있어서, 시스터메틱(systematic) 비트 성분에 일종의 우선 순위를 두는 것이 바람직하다. 이를 위해서는 앞에서 설명했던 알고리즘을 다음과 같이 또 다른 방식으로 제안한다.Therefore, in order to maximize the performance of the turbo code, it is desirable to give a kind of priority to the systematic bit component in allocating positions having a repetition factor larger than other bits in the repetition process. To this end, we propose another algorithm as described above.

for(i=0;i<I;i++){for (i = 0; i <I; i ++) {

if({((i+1)×K1,R2)mod I≥K1,R2}&&{K1,GR1=0}) repeat nith bit with factor M1 ; 시스테메틱 비트에 대해 우선적으로 반복 팩터 M2 에 의해 비트 반복 if ({((i + 1 ) × K 1, R2) mod I≥K 1, R2} && {K 1, GR1 = 0}) repeat ni th bit with factor M 1; Bit repetition by repeat factor M 2 preferentially for systematic bits

else nith bit with repetition factor M2 else ni th bit with repetition factor M 2

Figure 112000014027198-pat00008
Figure 112000014027198-pat00008

for(j=0;j<n ;j++){for (j = 0; j <n; j ++) {

if({((i+1)×K1,R2)mod I<K1,R2}&&{(j+|Oi|) mod (n-1)≤K 1,GR1-1})∥if ({((i + 1) × K 1, R2 ) mod I <K 1, R2 } && {(j + | O i |) mod (n-1) ≤K 1, GR1 -1}) ∥

({((i+1)×K1,R2)mod I≥K1,R2}&&{(j+|Oi|) mod (n-1)< K1,GR1-1}) ({((i + 1) × K 1, R2 ) mod I≥K 1, R2 } && {(j + | O i |) mod (n-1) <K 1, GR1 -1})

repeat(n×i+j)th bit with repetition factor M2 otherwise repeat (n×i+j)th bit with repetition factor M1 repeat (n × i + j) th bit with repetition factor M 2 otherwise repeat (n × i + j) th bit with repetition factor M 1

} ; 시스테메틱 비트를 나머지 비트에 대한 반복 팩터 M1 또는 M2에 의한 비트 반복이 균등하게 이루어짐}; Bit repetition is equalized by repeating factor M 1 or M 2 for the remaining bits

} }

위의 알고리즘에서 사용한 방법은 각각의 코드 그룹별로 M2의 반복 팩터를 가져야 하는 위치를 정할 때에 있어서, 우선적으로, 시스테메틱(systematic) 비트 위치에 M2의 반복 팩터를 할당하고, 나머지의 코드 그룹의 비트들에 대하여 균등한 방식으로 반복 팩터를 할당하는 방법이다.The method used in the above algorithm first assigns the repetition factor of M 2 to the systematic bit position in determining the position that should have the repetition factor of M 2 for each code group. It is a method of allocating the repetition factor to the bits of the group in an equal manner.

이와 같은 원리를 적용하기 위해서는 0부터 (채널 코딩 부호화열의 입력 비트열의 길이-1)까지 증가하는 코드 그룹 인덱스 i에 대하여 (i-1)번째 코드 그룹까지 상기 제2 반복 팩터를 가지는 코드 비트들의 개수가 "i*제1 타입 코드 그룹에서 제2 반복 백터를 갖는 비트개수-1"과 "(i*채널 코딩 부호화열에 대한 제2 타입 코드 그룹의 개수)를 채널 코딩 부호화열의 입력 비트열로 나눈 나머지"와의 합으로 산출되는 오프셋을 이용한다.In order to apply this principle, the number of code bits having the second repetition factor from the (i-1) th code group to the code group index i that increases from 0 to (the length of the input bit string of the channel coded coding string-1) Is the number of bits having a second repeated vector in i * first type code group-1 and "(the number of second type code groups for i * channel coded coding string) divided by the input bit string of the channel coding coding string. Use an offset that is calculated as the sum of "

이러한 오프셋을 이용하여 상기 알고리즘에서는 상기 채널 코딩 부호화열에 대하여 테스트를 수행한다. Using this offset, the algorithm performs a test on the channel coded coding sequence.                     

따라서, 상기 채널 코딩 부호화열에 대한 제2 타입 그룹 개수의 정수배값을 상기 채널 코딩 부호화열의 입력 비트열로 나눈 나머지가 상기 채널 코딩 부호화열에 대한 제2 타입 그룹 개수보다 크거나 같고, 상기 제1 타입 코드 그룹내에서 상기 제2 반복 팩터에 의한 비트 반복수가 0인 경우에, 상기 제1 반복 팩터에 의해 해당 비트에서 비트 반복을 수행하도록 한다.Accordingly, a remainder obtained by dividing an integer multiple of the number of second type groups for the channel coding coding sequence by the input bit string of the channel coding coding sequence is greater than or equal to the number of the second type groups for the channel coding coding sequence, and the first type code. When the number of bit repetitions by the second repetition factor in the group is zero, the first repetition factor is used to perform bit repetition on the corresponding bits.

또는 상기 채널 코딩 부호화열에 대한 제2 타입 그룹 개수의 정수배값을 상기 채널 코딩 부호화열의 입력 비트열로 나눈 나머지가 상기 채널 코딩 부호화열에 대한 제2 타입 그룹 개수보다 작거나, 상기 제1 타입 코드 그룹내에서 상기 제2 반복 팩터에 의한 비트 반복수가 0이 아닌 경우에, 상기 제2 반복 팩터에 의해 현 코드 그룹내의 시스테메틱 비트에 대해 비트 반복을 수행하도록 한다.Or the remainder obtained by dividing an integer multiple of the number of second type groups with respect to the channel coding coding sequence by an input bit string of the channel coding coding sequence is smaller than the number of second type groups with respect to the channel coding coding sequence, or within the first type code group. In the case where the number of bit repetitions due to the second repetition factor is not 0, bit repetition is performed on the systematic bits in the current code group by the second repetition factor.

한편, 상기 각 코드 그룹에 할당된 n개의 비트에서 각 비트의 인덱스가 1부터 (n-1)까지 증가하는 인덱스 j에 대하여, 상기 채널 코딩된 부호화열에 대한 제2 타입 그룹 개수의 정수배값을 상기 채널 코딩 부호화열의 입력 비트열로 나눈 나머지가 상기 채널 코딩 부호화열에 대한 제2 타입 코드 그룹의 개수보다 작고, (j+ 오프셋의 절대값)을 (n-1)로 나눈 나머지가 (제1 타입 코드 그룹내에서 제2 반복 팩터를 갖는 비트의 개수-1)보다 작거나 같은 경우 , 또는 상기 채널 코딩된 부호화열에 대한 제2 타입 그룹 개수의 정수배값을 상기 채널 코딩 부호화열의 입력 비트열로 나눈 나머지가 상기 채널 코딩 부호화열에 대한 제2 타입 코드의 그룹 개수보다 크거나 같고, (j+ 오프셋의 절대값)을 (n-1)로 나눈 나머지가 (제1 타입 코드 그룹내에서 제2 반복 팩터를 갖는 비트의 개수-1)보다 작은 경우 현 코드 그룹내의 시스테메틱 비트에 대해 비트 반복을 수행하도록 한다.On the other hand, for an index j in which the index of each bit increases from 1 to (n-1) in n bits allocated to each code group, the integer multiple of the number of the second type groups with respect to the channel coded coding sequence The remainder divided by the input bit string of the channel coding coding sequence is smaller than the number of second type code groups for the channel coding coding sequence, and the remainder obtained by dividing (absolute value of j + offset) by (n-1) is (first type code group). Is less than or equal to the number of bits having a second repetition factor-1) or an integer multiple of the number of the second type group with respect to the channel coded coding sequence is divided by the input bit string of the channel coding coding sequence. Is greater than or equal to the number of groups of the second type code for the channel coding coded sequence, and the remainder obtained by dividing the absolute value of the (j + offset) by (n-1) has a second repetition factor in the first type code group. It is smaller than the number of bit 1) and to perform a systematic bit repeated for the systematic bits in the current code group.

또는 상기 각 코드 그룹에 할당된 n개의 비트에서 각 비트의 인덱스가 1부터 (n-1)까지 증가하는 인덱스 j에 대하여, 상기 채널 코딩된 부호화열에 대한 제2 타입 그룹 개수의 정수배값을 상기 채널 코딩 부호화열의 입력 비트열로 나눈 나머지가 상기 채널 코딩 부호화열에 대한 제2 타입 코드 그룹의 개수보다 크거나 같고 또는 (j+ 오프셋의 절대값)을 (n-1)로 나눈 나머지가 (제1 타입 코드 그룹내에서 제2 반복 팩터를 갖는 비트의 개수-1)보다 큰 경우 , 그리고 상기 채널 코딩된 부호화열에 대한 제2 타입 그룹 개수의 정수배값을 상기 채널 코딩 부호화열의 입력 비트열로 나눈 나머지가 상기 채널 코딩 부호화열에 대한 제2 타입 코드의 그룹 개수보다 작거나 (j+ 오프셋의 절대값)을 (n-1)로 나눈 나머지가 (제1 타입 코드 그룹내에서 제2 반복 팩터를 갖는 비트의 개수-1)보다 크거나 같은 경우 해당 비트에서 제1 반복 팩터로 비트 반복을 수행하도록 한다.Or an integer multiple of the number of second type groups with respect to the channel-coded coded sequence with respect to the index j in which the index of each bit increases from 1 to (n-1) in the n bits allocated to each code group. The remainder divided by the input bit string of the coding coding sequence is greater than or equal to the number of second type code groups for the channel coding coding sequence, or the remainder obtained by dividing (absolute value of j + offset) by (n-1) is (first type code). Greater than the number of bits having a second repetition factor in the group-1), and an integer multiple of the number of the second type group with respect to the channel coded coding sequence divided by the input bit string of the channel coding coding sequence is the channel. The ratio less than the number of groups of the second type code for the coding coded sequence or dividing (absolute value of j + offset) by (n-1) is a ratio having a second repetition factor in the first type code group. If greater than the number of -1), or as is to carry out the bit repetition by 1 in the bit repetition factor.

이상의 설명에서와 같이 본 발명은 현재의 3GPP2시스템에서 터보 코드를 사용하는 경우, 가변 데이터 레이트(flexible data rate)를 지원하기 위한 반복 알고리즘의 설계시, 코드 그룹 단위의 반복 알고리즘을 설계함으로써 에너지의 분포를 두개의 구성 부호화기의 각각에 대하여 균일하게 줄 수 있으며, 이로 인하여 복호 성능을 향상시킬 수 있다As described above, when the turbo code is used in the current 3GPP2 system, the energy distribution is designed by designing an iteration algorithm in units of code groups when designing an iteration algorithm for supporting a flexible data rate. Can be given uniformly to each of the two component encoders, thereby improving the decoding performance.

이상 설명한 내용을 통해 당업자라면 본 발명의 기술 사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다. Those skilled in the art will appreciate that various changes and modifications can be made without departing from the spirit of the present invention.                     

따라서, 본 발명의 기술적 범위는 실시예에 기재된 내용으로 한정하는 것이 아니라특허 청구 범위에 의해서 정해져야 한다.
Therefore, the technical scope of the present invention should not be limited to the contents described in the examples, but should be defined by the claims.

Claims (22)

가변 데이터 레이트에 적용되는 레이트 매칭 방법에 있어서,In a rate matching method applied to a variable data rate, 입력 비트열에 대하여 소정의 코딩 레이트로 채널 코딩을 수행하는 단계;Performing channel coding on the input bit stream at a predetermined coding rate; 상기 채널 코딩된 비트열에 대하여, 제 1 반복 횟수 및 제 2 반복 횟수의 적용 비율에 따라 제 1 타입 코드 그룹과 제 2 타입 코드 그룹으로 구분하는 단계;Dividing the channel coded bit string into a first type code group and a second type code group according to an application ratio of a first repetition number and a second repetition number; 상기 제 1 타입 코드 그룹 및 상기 제 2 타입 코드 그룹에 대하여, 상기 제 1 반복 횟수 및 상기 제 2 반복 횟수를 상이하게 적용하여 비트 반복을 수행하는 단계Performing bit repetition by applying the first repetition number and the second repetition number differently to the first type code group and the second type code group. 를 포함하여 이루어지는 레이트 매칭 방법.Rate matching method comprising a. 제 1 항에 있어서,The method of claim 1, 상기 제 1 반복 횟수는,
Figure 112005036388995-pat00031
이고, 상기 제 2 반복 횟수는
Figure 112005036388995-pat00032
인 것을 특징으로 하는 레이트 매칭 방법(상기 N 은 인터리버 사이즈, 상기 L 은 상기 채널 코딩된 비트열의 길이).
The first repetition number of times,
Figure 112005036388995-pat00031
Wherein the second repetition number is
Figure 112005036388995-pat00032
Rate matching method, wherein N is the interleaver size, and L is the length of the channel coded bit string.
제 2 항에 있어서,The method of claim 2, 상기 제 1 타입 코드 그룹에 속하는 비트 수는
Figure 112006086027777-pat00033
이고, 상기 제 2 타입 코드 그룹에 속하는 비트 수는
Figure 112006086027777-pat00072
인 것을 특징으로 하는 레이트 매칭 방법(상기 I 는 상기 입력 비트열의 길이).
The number of bits belonging to the first type code group is
Figure 112006086027777-pat00033
And the number of bits belonging to the second type code group
Figure 112006086027777-pat00072
A rate matching method, wherein I is the length of the input bit string.
제 3 항에 있어서,The method of claim 3, wherein 상기 제 2 타입 코드 그룹의 수는,
Figure 112005036388995-pat00035
인 것을 특징으로 하는 레이트 매칭 방법.
The number of the second type code group is
Figure 112005036388995-pat00035
The rate matching method characterized by the above-mentioned.
제 4 항에 있어서,The method of claim 4, wherein 상기 제 1 타입의 코드 그룹 내에서, 제 2 반복 횟수를 적용하여 반복을 수행하는 비트의 수는
Figure 112006086027777-pat00036
이고, 상기 제 2 타입의 코드 그룹 내에서, 제 2 반복 횟수를 적용하여 반복을 수행하는 비트 수는
Figure 112006086027777-pat00037
인 것을 특징으로 하는 레이트 매칭 방법(상기 R1은 상기 제 1 타입 코드 그룹에 속하는 비트 수, 상기 n은 코딩 레이트의 역수).
Within the code group of the first type, the number of bits for performing repetition by applying a second repetition number is
Figure 112006086027777-pat00036
In the code group of the second type, the number of bits to perform the iteration by applying the second iteration number is
Figure 112006086027777-pat00037
Rate matching method, wherein R 1 is the number of bits belonging to the first type code group, and n is the inverse of the coding rate.
제 5 항에 있어서,The method of claim 5, 상기 제 1 타입의 코드 그룹과 상기 제 2 타입의 코드 그룹을 구분하는 단계는,
Figure 112005036388995-pat00038
를 만족하는 경우에는, 상기 제 2 타입의 코드 그룹으로 구분하고, 만족하지 않는 경우에는, 상기 제 1 타입의 코드 그룹으로 구분하는 것을 특징으로 하는 레이트 매칭 방법(상기 i 는 코드 그룹 인덱스, 상기
Figure 112005036388995-pat00039
는 제 2 타입 코드 그룹의 수).
The step of distinguishing the code group of the first type from the code group of the second type,
Figure 112005036388995-pat00038
Is satisfied, the code group is classified into the second type, and if it is not satisfied, the rate matching method is characterized as being classified into the code group of the first type.
Figure 112005036388995-pat00039
Is the number of second type code groups).
제 6 항에 있어서,The method of claim 6, 상기 제 2 타입 코드 그룹에 대하여 비트 반복을 수행하는 단계는, Performing bit repetition on the second type code group may include: (a) j 값을 0 으로 초기화 하는 단계;(a) initializing the j value to 0; (b) 상기 채널 코딩된 비트열의
Figure 112005036388995-pat00040
번째 비트에 대하여,
Figure 112005036388995-pat00041
를 만족하는 경우에는, 상기 제 2 반복 횟수를 적용하여 비트 반복을 수행하고, 만족하지 않는 경우에는, 상기 제 1 반복 횟수를 적용하여 비트 반복을 수행하는 단계; 및
(b) the channel coded bit stream
Figure 112005036388995-pat00040
For the 1st bit,
Figure 112005036388995-pat00041
Performing a bit repetition by applying the second repetition number, and performing a bit repetition by applying the first repetition number when not satisfied; And
(c) 상기 j 값을 1 씩 증가시키면서 상기 (b) 단계를 반복 수행하되, 상기 j 값이 n-1 이 될 때 까지 반복 수행하는 단계(c) repeating step (b) while increasing the value of j by 1, and repeating until the value of j becomes n-1. 를 포함하는 레이트 매칭 방법(상기 n 은 코딩 레이트의 역수, 상기 P 는 상수, 상기
Figure 112005036388995-pat00042
는 i 번째 코드 그룹에 상응하는 오프셋, 상기
Figure 112005036388995-pat00043
는 상기 제 2 타입의 코드 그룹 내에서, 제 2 반복 횟수를 적용하여 반복을 수행하는 비트 수).
A rate matching method, wherein n is an inverse of a coding rate, P is a constant, and
Figure 112005036388995-pat00042
Is an offset corresponding to the i th code group,
Figure 112005036388995-pat00043
Is the number of bits within the code group of the second type to perform the iteration by applying a second iteration number.
제 6 항에 있어서,The method of claim 6, 상기 제 1 타입 코드 그룹에 대하여 비트 반복을 수행하는 단계는, Performing bit repetition on the first type code group may include: (a) j 값을 0 으로 초기화 하는 단계;(a) initializing the j value to 0; (b) 상기 채널 코딩된 비트열의
Figure 112005036388995-pat00044
번째 비트에 대하여,
Figure 112005036388995-pat00045
를 만족하는 경우에는, 상기 제 2 반복 횟수를 적용하여 비트 반복을 수행하고, 만족하지 않는 경우에는, 상기 제 1 반복 횟수를 적용하여 비트 반복을 수행하는 단계; 및
(b) the channel coded bit stream
Figure 112005036388995-pat00044
For the 1st bit,
Figure 112005036388995-pat00045
Performing a bit repetition by applying the second repetition number, and performing a bit repetition by applying the first repetition number when not satisfied; And
(c) 상기 j 값을 1 씩 증가시키면서 상기 (b) 단계를 반복 수행하되, 상기 j 값이 n-1 이 될 때 까지 반복 수행하는 단계(c) repeating step (b) while increasing the value of j by 1, and repeating until the value of j becomes n-1. 를 포함하는 레이트 매칭 방법(상기 n 은 코딩 레이트의 역수, 상기 P 는 상수, 상기
Figure 112005036388995-pat00046
는 i 번째 코드 그룹에 상응하는 오프셋, 상기
Figure 112005036388995-pat00047
은 상기 제 1 타입의 코드 그룹 내에서, 제 2 반복 횟수를 적용하여 반복을 수행하는 비트 수).
A rate matching method, wherein n is an inverse of a coding rate, P is a constant, and
Figure 112005036388995-pat00046
Is an offset corresponding to the i th code group,
Figure 112005036388995-pat00047
Is the number of bits within the code group of the first type to perform the iteration by applying a second iteration number.
제 7 항 또는 제 8 항에 있어서,The method according to claim 7 or 8, 상기 P 는 7 인 것을 특징으로 하는 레이트 매칭 방법.P is 7, the rate matching method. 제 9 항에 있어서,The method of claim 9, 상기
Figure 112005036388995-pat00048
Figure 112005036388995-pat00049
인 것을 특징으로 하는 레이트 매칭 방법.
remind
Figure 112005036388995-pat00048
Is
Figure 112005036388995-pat00049
The rate matching method characterized by the above-mentioned.
제 10 항에 있어서,The method of claim 10, 상기 하나의 코드 그룹을 구성하는 비트의 수는 코딩 레이트의 역수인 것을 특징으로 하는 레이트 매칭 방법.And the number of bits constituting the one code group is an inverse of a coding rate. 가변 데이터 레이트에 적용되는 레이트 매칭 방법에 있어서,In a rate matching method applied to a variable data rate, 입력 비트열에 대하여 소정의 코딩 레이트로 채널 코딩을 수행하는 단계; 및Performing channel coding on the input bit stream at a predetermined coding rate; And 상기 채널 코딩된 비트열에 대하여, 서로 다른 반복 규칙을 적용하는 제 1 타입 코드 그룹 및 제 2 타입의 코드 그룹에 따라, 비트 반복을 수행하되,For the channel coded bit stream, bit repetition is performed according to a first type code group and a second type code group to which different repetition rules are applied. (a) i 를 0 으로 초기화 하는 단계;(a) initializing i to 0; (a)
Figure 112006086027777-pat00050
Figure 112006086027777-pat00051
을 만족하는 ni 번째 비트에 대하여는 제 2 반복 횟수를 적용하여 반복을 수행하고, 만족하지 아니하는 비트에 대하여는 제 1 반복 횟수를 적용하여 비트 반복을 수행하는 단계;
(a)
Figure 112006086027777-pat00050
And
Figure 112006086027777-pat00051
Performing a repetition by applying a second repetition number to the ni-th bit satisfying n, and performing a bit repetition by applying a first repetition number to a bit not satisfied;
(c) j 를 0 으로 초기화 하는 단계;(c) initializing j to 0; (d)
Figure 112006086027777-pat00052
Figure 112006086027777-pat00053
를 만족하거나,
Figure 112006086027777-pat00054
Figure 112006086027777-pat00055
를 만족하는 경우,
Figure 112006086027777-pat00056
번째 비트에 대하여, 상기 제 2 반복 횟수를 적용하여 비트 반복을 수행하고, 그 이외의 경우에는, 상기 제 1 반복 횟수를 적용하여 비트 반복을 수행하는 단계;
(d)
Figure 112006086027777-pat00052
And
Figure 112006086027777-pat00053
Or satisfy
Figure 112006086027777-pat00054
And
Figure 112006086027777-pat00055
If you satisfy
Figure 112006086027777-pat00056
Performing bit repetition by applying the second repetition number to the first bit, and performing bit repetition by applying the first repetition number otherwise;
(e) 상기 (d) 단계를 반복 수행하되, 상기 j 가 n-1 이 되기까지 반복 수행하는 단계; 및(e) repeating step (d) but repeatedly performing j until n-1; And (f) 상기 (a)~(e) 단계를 반복 수행하되, 상기 i 가 I-1 이 되기까지 반복 수행하는 단계(f) repeating steps (a) to (e), but repeatedly performing i until I-1 를 포함하여 비트 반복을 수행하는 단계Performing a bit iteration including 를 포함하여 이루어지는 레이트 매칭 방법(상기
Figure 112006086027777-pat00057
는 상기 제 2 타입 코드 그룹의 수, 상기
Figure 112006086027777-pat00058
은 상기 제 1 타입의 코드 그룹 내에서, 상기 제 2 반복 횟수를 적용하여 반복을 수행하는 비트 수, 상기 I 는 상기 입력 비트열의 길이, n 은 코딩 레이트의 역수, 상기
Figure 112006086027777-pat00059
는 i 번째 코드 그룹에 상응하는 오프셋).
Rate matching method comprising a
Figure 112006086027777-pat00057
Is the number of the second type code group, the
Figure 112006086027777-pat00058
Is the number of bits to perform the iteration by applying the second number of iterations within the first type of code group, wherein I is the length of the input bit stream, n is the inverse of the coding rate, and
Figure 112006086027777-pat00059
Is the offset corresponding to the i th code group).
제 12 항에 있어서,The method of claim 12, 상기
Figure 112005036388995-pat00060
Figure 112005036388995-pat00061
인 것을 특징으로 하는 레이트 매칭 방법.
remind
Figure 112005036388995-pat00060
Is
Figure 112005036388995-pat00061
The rate matching method characterized by the above-mentioned.
제 12 항에 있어서,The method of claim 12, 상기
Figure 112005036388995-pat00062
Figure 112005036388995-pat00063
을 만족하는 ni 번째 비트는 시스터메틱(systematic) 비트인 것을 특징으로 하는 레이트 매칭 방법.
remind
Figure 112005036388995-pat00062
And
Figure 112005036388995-pat00063
The ni-th bit satisfying the value is a systematic bit.
가변 데이터 레이트에 적용되는 레이트 매칭 방법에 있어서,In a rate matching method applied to a variable data rate, 입력 비트열에 대하여 소정의 코딩 레이트로 채널 코딩을 수행하는 단계; 및Performing channel coding on the input bit stream at a predetermined coding rate; And 상기 채널 코딩된 비트 열은 서로 다른 반복 규칙을 적용하는 적어도 하나의 제 1 타입 코드 그룹 및 적어도 하나의 제 2 타입 코드 그룹으로 이루어지고, 상기 제 1 타입 코드 그룹에 속하는 비트에 대하여, a 개의 비트는 제 1 반복 횟수만큼 반복하고, b 개의 비트는 제 2 반복 횟수만큼 반복하고, 상기 제 2 타입 코드 그룹에 속하는 비트에 대하여, c 개의 비트는 상기 제 1 반복 횟수만큼 반복하고, d 개의 비트는 상기 제 2 반복 횟수만큼 반복하는 단계The channel coded bit string is composed of at least one first type code group and at least one second type code group applying different repetition rules, and, for bits belonging to the first type code group, a bit Repeats the first repetition number, b bits repeats the second repetition number, and for bits belonging to the second type code group, c bits repeat the first repetition number and d bits Repeating the second repetition number of times 를 포함하여 이루어지는 레이트 매칭 방법(단, a+b = c+d = n, n 은 코딩 레이트의 역수).A rate matching method comprising a + b = c + d = n, where n is the inverse of the coding rate. 제 15 항에 있어서,The method of claim 15, 상기 제 2 타입 코드 그룹은,
Figure 112005036388995-pat00064
을 만족하고, 상기 제 1 타입 코드 그룹은
Figure 112005036388995-pat00065
을 만족하는 것을 특징으로 하는 레이트 매칭 방법(상기 i 는 코드 그룹 인덱스, 상기
Figure 112005036388995-pat00066
는 제 2 타입 코드 그룹의 수).
The second type code group,
Figure 112005036388995-pat00064
Satisfies the above, and the first type code group
Figure 112005036388995-pat00065
Rate matching method (where i is the code group index, and
Figure 112005036388995-pat00066
Is the number of second type code groups).
제 16 항에 있어서,The method of claim 16, 상기 제 2 타입 코드 그룹의 수는,
Figure 112005036388995-pat00067
인 것을 특징으로 하는 레이트 매칭 방법(N 은 인터리버 사이즈, I 는 상기 입력 비트열의 길이).
The number of the second type code group is
Figure 112005036388995-pat00067
A rate matching method, wherein N is the interleaver size and I is the length of the input bit stream.
제 17 항에 있어서,The method of claim 17, 상기 제 1 반복 횟수는,
Figure 112005036388995-pat00068
이고, 상기 제 2 반복 횟수는
Figure 112005036388995-pat00069
인 것을 특징으로 하는 레이트 매칭 방법(상기 L 은 상기 채널 코딩된 비트열의 길이).
The first repetition number of times,
Figure 112005036388995-pat00068
Wherein the second repetition number is
Figure 112005036388995-pat00069
Rate matching method, wherein L is the length of the channel coded bit string.
가변 데이터 레이트에 적용되는 레이트 매칭 방법에 있어서,In a rate matching method applied to a variable data rate, 입력 비트열에 대해 채널 코딩을 수행하는 단계;Performing channel coding on the input bit stream; 상기 채널 코딩된 서로 다른 반복 규칙을 적용하는 두가지 타입의 코드 그룹에 대하여 비트 반복을 수행하는 단계; 및Performing bit repetition on two types of code groups applying the channel coded different repetition rules; And 상기 비트 반복된 비트열에 대해, 인터리빙을 수행하는 단계Performing interleaving on the bit repeated bit stream 를 포함하여 이루어지는 레이트 매칭 방법.Rate matching method comprising a. 제 19 항에 있어서, The method of claim 19, 상기 반복 규칙은, 특정 비트에 대하여 제 1 반복 횟수 또는 제 2 반복 횟수를 중 어느 하나를 이용하여 비트 반복을 수행할지 여부에 관한 규칙인 것을 특징으로 하는 레이트 매칭 방법.The repetition rule is a rule regarding whether to perform bit repetition using either the first repetition number or the second repetition number for a specific bit. 제 20 항에 있어서,The method of claim 20, 상기 두가지 타입의 코드 그룹은, 상기 제 1 반복 횟수와 상기 제 2 반복 횟수의 적용 비율이 상이한 것을 특징으로 하는 레이트 매칭 방법.The two types of code groups, the rate matching method characterized in that the application rate of the first iteration number and the second iteration number is different. 제 21 항에 있어서,The method of claim 21, 상기 제 1 반복 횟수는,
Figure 112005036388995-pat00070
이고, 상기 제 2 반복 횟수는
Figure 112005036388995-pat00071
인 것을 특징으로 하는 레이트 매칭 방법(상기 N 은 인터리버의 크기, 상기 L 은 상기 채널 코딩된 비트열의 길이).
The first repetition number of times,
Figure 112005036388995-pat00070
Wherein the second repetition number is
Figure 112005036388995-pat00071
The rate matching method, wherein N is the size of the interleaver, and L is the length of the channel coded bit string.
KR1020000038387A 2000-07-05 2000-07-05 Flexible data rate Matching Method in 3GPP2 KR100672347B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000038387A KR100672347B1 (en) 2000-07-05 2000-07-05 Flexible data rate Matching Method in 3GPP2

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000038387A KR100672347B1 (en) 2000-07-05 2000-07-05 Flexible data rate Matching Method in 3GPP2

Publications (2)

Publication Number Publication Date
KR20020004478A KR20020004478A (en) 2002-01-16
KR100672347B1 true KR100672347B1 (en) 2007-01-24

Family

ID=19676436

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000038387A KR100672347B1 (en) 2000-07-05 2000-07-05 Flexible data rate Matching Method in 3GPP2

Country Status (1)

Country Link
KR (1) KR100672347B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100797456B1 (en) * 2000-09-06 2008-01-24 엘지전자 주식회사 Data Rate Matching Method
US7293217B2 (en) 2002-12-16 2007-11-06 Interdigital Technology Corporation Detection, avoidance and/or correction of problematic puncturing patterns in parity bit streams used when implementing turbo codes
KR101008612B1 (en) * 2003-08-16 2011-01-17 엘지전자 주식회사 Data decoding method

Also Published As

Publication number Publication date
KR20020004478A (en) 2002-01-16

Similar Documents

Publication Publication Date Title
US6728927B2 (en) Method and system for high-spread high-distance interleaving for turbo-codes
CA2341744C (en) Rate matching device and method for a data communication system
KR100678175B1 (en) Apparatus and method for coding/decoding block low density parity check code with variable block length
KR100641052B1 (en) LDPC encoder and decoder, and method for LDPC encoding and decoding
KR100678176B1 (en) Apparatus and method for coding/decoding block low density parity check code with variable block length
KR100373965B1 (en) Turbo code interleaver with near optimal performance
RU2313177C2 (en) Turbo-decoder using linear congruent series
KR100526512B1 (en) Interleaving apparatus and method for serially concatenated convolution code in a mobile telecommunication system
US6603412B2 (en) Interleaved coder and method
KR20050118056A (en) Method and apparatus for channel encoding and decoding in mobile communication systems using multi-rate block ldpc codes
KR20070042850A (en) Apparatus and method for coding/decoding block low density parity check code with variable block length
KR100918741B1 (en) Apparatus and method for channel coding in mobile communication system
KR20060016059A (en) Apparatus and method for coding/decoding block low density parity check code with variable block length
KR100638594B1 (en) Low density parity check code encoder using costas array, channel encoder and encoding method in high speed portable internet system comprising same
CN101326728A (en) Turbo code interleaver for low frame error rate
KR100672347B1 (en) Flexible data rate Matching Method in 3GPP2
KR100720566B1 (en) Method of Data Rate Matching and apparatus for data processing
CN101777923B (en) CTC (Convolutional Turbo Code) encoder, internal code interleaver, as well as internal code interleaving method and encoding processing method
KR100734346B1 (en) Method for Data Rate Matching
CN101667839B (en) Interleaving method
CN108476027B (en) Window interleaved TURBO (WI-TURBO) code
KR100357868B1 (en) Rate matching device and method for dada communication system
KR20000067738A (en) Rate matching Method for channel code in mobile communication system
KR101447751B1 (en) Method and apparatus for generating parity check matrix in a communication system using block low density parity check code
KR20060016061A (en) Apparatus and method for coding/decoding block low density parity check code with variable block length

Legal Events

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

Payment date: 20121227

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131224

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141224

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20151224

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee