KR20050064486A - Method for block interleaving in cdma mobile communication system - Google Patents

Method for block interleaving in cdma mobile communication system Download PDF

Info

Publication number
KR20050064486A
KR20050064486A KR1020030095907A KR20030095907A KR20050064486A KR 20050064486 A KR20050064486 A KR 20050064486A KR 1020030095907 A KR1020030095907 A KR 1020030095907A KR 20030095907 A KR20030095907 A KR 20030095907A KR 20050064486 A KR20050064486 A KR 20050064486A
Authority
KR
South Korea
Prior art keywords
block
index
interleaver
symbol
data
Prior art date
Application number
KR1020030095907A
Other languages
Korean (ko)
Inventor
박정욱
김종돈
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020030095907A priority Critical patent/KR20050064486A/en
Publication of KR20050064486A publication Critical patent/KR20050064486A/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/2778Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices
    • 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/2782Interleaver implementations, which reduce the amount of required interleaving memory

Landscapes

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

Abstract

본 발명은 인터리버에서 임의의 위치의 모듈레이션 인덱스로부터 인터리빙되기 전의 인덱스를 검출하는 방법에 있어서, 심볼 그룹화 블록의 임의의 위치에 대한 모듈레이션 요청에 따라, 해당 인덱스를 발생하는 제 1 단계와, 상기 각 입력 패킷의 크기로 상기 인덱스를 나누어 그에 따른 몫과 나머지를 산출하는 제 2 단계와, 상기 산출된 몫과 나머지를 이용해서, 상기 인덱스가 포함된 해당 블록을 선택하는 제 3 단계와, 상기 나머지를 사용하여 각 서브 블록 내에서 해당되는 인덱스를 산출하는 제 4 단계로 구성됨을 특징으로 한다. The present invention relates to a method for detecting an index before being interleaved from a modulation index of an arbitrary position in an interleaver, the method comprising: a first step of generating a corresponding index according to a modulation request for an arbitrary position of a symbol grouping block; A second step of dividing the index by the size of a packet and calculating a quotient and a remainder according to the size; and a third step of selecting a corresponding block including the index by using the calculated quotient and a remainder; It is characterized in that it comprises a fourth step of calculating the corresponding index in each sub-block.

Description

코드 분할 다중 접속 이동 통신 시스템에서 블록 인터리빙 방법{Method for Block Interleaving IN CDMA Mobile Communication System} Method for block interleaving in code division multiple access mobile communication system {Method for Block Interleaving IN CDMA Mobile Communication System}

본 발명은 이동 통신 시스템에서의 인터리빙 방법에 관한 것으로, 특히, 패킷 데이터 및 음성 지원 프로토콜인 1xEV(Evolution)-DV(Data Voice)의 통신 시스템에서의 블록 인터리빙 방법에 관한 것이다.The present invention relates to an interleaving method in a mobile communication system, and more particularly, to a block interleaving method in a communication system of 1xEV (Evolution) -DV (Data Voice), which is a packet data and voice support protocol.

통신 시스템에서 전송 중 데이터에 에러가 발생하면 복구가 불가능하게 되어 데이터를 이용하지 못할 경우가 발생하는데 이를 최소화하기 위하여 에러 정정 기술을 사용한다. 터보 코드는 에러가 산재되어 있을 경우에 복구가 가능하나, 에러가 일정 부분에 집중되어 있으면 에러 정정 코드로는 정정이 불가능해지게 된다. 아무리 좋은 에러 정정 코드를 사용한다 해도 특정 부분에 에러가 집중되면 연속적인 데이터를 한꺼번에 잃어버리게 되는 것을 방지할 수 없다. In the communication system, if an error occurs in the data during transmission, recovery is impossible and the data is not available. In order to minimize the error, an error correction technique is used. Turbo codes can be recovered when errors are interspersed. However, if errors are concentrated in a certain part, the turbo codes cannot be corrected by error correction codes. No matter how good an error-correcting code is, you can't prevent the loss of consecutive data all at once if errors are concentrated in a particular area.

그러나, 인터리버를 사용하여 연속적인 데이터를 랜덤하게 분산시키면 연속적인 데이터를 한꺼번에 잃어버리게 되는 것(burst error)를 최소화 할 수는 있다. However, random distribution of continuous data using an interleaver can minimize the burst error.

CDMA2000에서는 이러한 인터리버의 구현을 위하여 블록 인터리버(block interleaver)를 사용하였다. 도 1은 블록 인터리버의 원리를 설명하기 위한 개념도이다. 도 1을 참조하여 블록 인터리버에서 블록 인터리빙하는 원리를 설명해 보자.In CDMA2000, a block interleaver is used to implement such an interleaver. 1 is a conceptual diagram illustrating the principle of a block interleaver. A principle of block interleaving in the block interleaver will be described with reference to FIG. 1.

전송할 데이터가 1, 2, 3, 4...20이라고 할 때 입력은 가로 방향으로 쓰여지고 출력은 세로 방향으로 하게 된다. 이렇게 데이터를 정열하는 것을 인터리빙이라고 한다. 블록 인터리버를 통해 출력되는 데이터는 1, 6, 11, 16 / 2, 7, 12, 17 / 3, 8, 13, 18 / 4, 9, 14, 19 / 5, 10, 15, 20이 되어 암호화의 과정을 거친다. 이렇게 출력된 데이터가 전송중에 첫번째 보낸 1, 6, 11 ,16 모두가 깨어져도 수신시에 *2, 3, 4, 5 / *7, 8, 9, 10 / *12, 13, 14, 15 / *17, 18, 19, 20으로 디인터리빙 되어 에러가 분산되기 때문에 에러 복구가 가능하게 된다. When the data to be transmitted is 1, 2, 3, 4 ... 20, the input is written in the horizontal direction and the output is in the vertical direction. This sorting of data is called interleaving. Data output through the block interleaver is 1, 6, 11, 16/2, 7, 12, 17/3, 8, 13, 18/4, 9, 14, 19/5, 10, 15, 20 and encrypted Go through the process. Even if the 1, 6, 11, 16 sent first during the transmission is broken, * 2, 3, 4, 5 / * 7, 8, 9, 10 / * 12, 13, 14, 15 / Error recovery is possible because the errors are distributed by deinterleaving to 17, 18, 19, and 20.

만약에 인터리빙하지 않고 1, 2, 3, 4, 5 처럼 연속적으로 데이터를 전송하다가 1부터 10까지의 데이터가 손상된다면 아무리 이전의 비트와 연관되었다 해도 이전의 데이터까지 손상되었으므로 리던던시가 있도록 에러 정정 부호화되었어도 데이터를 복구할 수 없다. 이렇게 집중적으로 특정 부분에 에러가 생기는 것을 버스트 에러(Burst Error)라고 하고, 드문 드문 에러가 생기는 것을 랜덤 에러(Random Error)라고 한다. 즉 블록 인터리버는 버스트 에러를 랜덤 에러화시키는 역할을 한다. If data is transmitted consecutively like 1, 2, 3, 4, 5 without interleaving, and data from 1 to 10 is corrupted, error correction encoding is performed so that the previous data is corrupted even if it is related to the previous bit. Can not be recovered. This intensive occurrence of errors in certain parts is called burst error, and infrequent errors are called random errors. That is, the block interleaver serves to randomize the burst error.

즉, 인터리버는 스크램블 과정을 거친 코드 부호에 대하여 메모리 소자를 이용하여 저장한 후 정해진 규칙에 따라 인터리빙을 수행한다. 인터리빙을 거친 코드 부호는 무선 환경에서 발생할 수 있는 연집 오류로부터 일정한 신뢰도를 보장할 수 있게 된다.That is, the interleaver stores the code code that has been scrambled using a memory device and then performs interleaving according to a predetermined rule. The interleaved code codes can guarantee a certain reliability from congestion errors that may occur in a wireless environment.

IS-2000 Release C(1xEV-DV) F/L spec.에 포함되어 있는 서브블럭 채널 인터리버(sub-block channel interleaver)는 이전 IS-2000 Release A/B spec.에 포함되어 있던 기존 채널 인터리버(channel interleaver)와 같이 행 치환(row permutation)을 위해 P-BRO(partial bit reversal order : 부분비트역상순) 오퍼레이션(operation)을 수행하지만, 기능상 독출 어드레스 생성(read address generation) 방식이 조금 달라져야 하며, 인터리버 파라미터(interleaver parameter)의 선택에 있어서 QCTC(Quasi-Complementary Turbo Codes : 준보완터보부호) 심볼선택(symbol selection)에 미치는 영향이 충분히 고려되어야 하는 등의 차이점을 가지고 있다The sub-block channel interleaver included in the IS-2000 Release C (1xEV-DV) F / L spec. Is an existing channel interleaver included in the previous IS-2000 Release A / B spec. P-BRO (partial bit reversal order) operation is performed for row permutation like interleaver, but functional read address generation method should be slightly different. The difference between the selection of the parameters is that the impact on QCTC (Quasi-Complementary Turbo Codes) symbol selection must be fully considered.

도 2는 상술한 1xEV-DV 시스템 패킷 데이터 채널(PDCH)의 인터리버의 구성 블록도이다. 도 2를 참조하여 인터리버를 좀더 자세히 살펴보자.2 is a block diagram illustrating an interleaver of the aforementioned 1xEV-DV system packet data channel (PDCH). Let's look at the interleaver in more detail with reference to FIG.

인터리버는 터보인코더에서 출력되는 비트를 임시 저장할 서브 블록 메모리(30)와, 인터리버 메모리(31), 그리고 심볼 그룹화를 위해 사용하는 임시 메모리(32)를 포함하여 구성된다.The interleaver includes a sub block memory 30 to temporarily store bits output from the turbo encoder, an interleaver memory 31, and a temporary memory 32 used for symbol grouping.

터보인코더에서 출력된 인코딩된 데이터는 우선 심볼 분리되는데, 터보 인코딩된 출력 중 첫번째 심볼은 S 블럭, 두번째 심볼은 P0 블럭, 세번째 심볼은 P1 블럭, 네번째 심볼은 P0' 블럭, 다섯번째 심볼은 P1' 블럭에 순서대로 정렬한다. 그리고, 이를 각 상기 서브블록 메모리(30)에 저장한다.The encoded data output from the turbo encoder is first separated into symbols. The first symbol of the turbo encoded output is an S block, the second symbol is a P0 block, the third symbol is a P1 block, the fourth symbol is a P0 'block, and the fifth symbol is a P1'. Sort blocks in order. Then, it is stored in each of the subblock memories 30.

상기 서브블록 메모리(30)에 순차적으로 저장되어 있는 데이터들에 대하여, 다음과 같은 순서로 서브블록 메모리로부터 인터리빙된 순서대로 데이터를 불러 오게 된다.Data sequentially stored in the subblock memory 30 is loaded in the order of interleaving from the subblock memory in the following order.

인터리빙된 심볼은 아래의 방법으로 계산되는 주소, 즉 Ai(i=0 to N_int-1)에 의해 i번째 심볼이 순차적으로 읽히게 된다.In the interleaved symbol, the i-th symbol is sequentially read by an address calculated by the following method, that is, Ai (i = 0 to N_int-1).

1. 하기의 <표 1>을 참고하여 서브블록 인터리버 파라메타 m, J 를 결정한다.1. Referring to Table 1 below, determine the subblock interleaver parameters m and J.

Encoder PacketEncoder Packet subblock interleaver parametersubblock interleaver parameter N_intN_int mm JJ 408408 408408 77 44 762762 792792 88 44 15601560 15601560 99 44 23282328 23282328 1010 33 30963096 30963096 1010 44 38643864 38643864 1111 22

2. i와 k를 0으로 초기화 한다.        2. Initialize i and k to zero.

3. 하기의 수식1을 이용 하여 출력 주소를 생성해 낸다. 3. Create an output address using Equation 1 below.

4. 만약 생성된 보다 작으면 이고 i, k 를 각각 1씩 증가 시킨다. 그렇지 않으면 를 버리고 k 만 증가 시킨다.4. If created end Less than And increase i and k by 1, respectively. Otherwise Throw away and only increase k.

5. 모든 에 대한 인터리버 출력을 얻을 때 까지 3, 4를 반복한다.5. All Repeat steps 3 and 4 until you get the interleaver output for.

일반적으로 터보 인코더에서 나온 출력은 심볼 분리, 심볼 인터리빙, 심볼 그룹핑의 과정을 통한 후 모듈레이션을 하게 된다. 이때 실제 구현상으로는 공간의 제약으로 인해 각각의 단계에서 메모리를 사용하지 않고 터보 인코더에서 나온 출력을 메모리에 저장한 후 심볼 분리, 심볼 인터리빙, 심볼 그룹핑의 과정을 계산하여 만들어진 메모리의 주소값을 사용하여 일련의 인터리빙 작업을 수행하게 된다. 이때 인터리빙 주소를 계산하는 과정에서 카운터를 0부터 7799까지 증가시키면서 메모리의 주소 값을 하나 하나 만들게 된다면, 인터리버의 특성상 폐기(discard)되는 주소들이 발생하여 최대 2440 클럭(encoder size 2328 기준)이 손실되게 된다는 문제점이 있다. In general, the output from the turbo encoder is modulated after symbol separation, symbol interleaving, and symbol grouping. In practice, due to space constraints, instead of using memory at each step, the output from the turbo encoder is stored in memory, and then the symbol address, symbol interleaving, and symbol grouping process are used to calculate the address. You will perform a series of interleaving tasks. In this case, if the address of the memory is made one by one while increasing the counter from 0 to 7799 in the process of calculating the interleaving address, the discarded addresses are generated due to the characteristics of the interleaver so that a maximum of 2440 clocks (based on encoder size 2328) are lost. There is a problem.

따라서, 상기한 바와 같은 문제점을 해결하기 위한 본 발명의 목적은 변조된 데이터 스트림의 임의의 위치의 데이터를 요구받을 경우, 서브 블록 인터리버 메모리 그리고 심볼 그룹화를 위한 메모리를 사용하지 않고, 상기 임의의 위치의 데이터를 효율적으로 검색하는 방법을 제공함에 있다.Accordingly, an object of the present invention for solving the above problems is to use the sub-block interleaver memory and the memory for symbol grouping when the data of any position of the modulated data stream is requested, and the arbitrary position. The present invention provides a method of efficiently searching for data.

상기와 같은 목적을 달성하기 위한 본 발명은 인터리버에서 임의의 위치의 모듈레이션 인덱스로부터 인터리빙되기 전의 인덱스를 검출하는 방법에 있어서, 심볼 그룹화 블록의 임의의 위치에 대한 모듈레이션 요청에 따라, 해당 인덱스를 발생하는 제 1 단계와, 상기 각 입력 패킷의 크기로 상기 인덱스를 나누어 그에 따른 몫과 나머지를 산출하는 제 2 단계와, 상기 산출된 몫과 나머지를 이용해서, 상기 인덱스가 포함된 해당 블록을 선택하는 제 3 단계와, 상기 나머지를 사용하여 각 서브 블록 내에서 해당되는 인덱스를 산출하는 제 4 단계로 구성됨을 특징으로 한다.In order to achieve the above object, the present invention provides a method for detecting an index before being interleaved from a modulation index of an arbitrary position in an interleaver, wherein the index is generated according to a modulation request for an arbitrary position of a symbol grouping block. A second step of dividing the index by the size of each input packet and calculating a quotient and remainder according to the first step; and using the calculated quotient and remainder, selecting a corresponding block including the index. And a fourth step of calculating a corresponding index in each subblock using the remainder.

이하 첨부된 도면을 참조하여 본 발명의 상세 동작 및 구조에 대하여 상세히 설명한다. 도면들 중 참조번호들 및 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조번호들 및 부호들로 나타내고 있음에 유의해야 한다. 하기에서 본 발명을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.Hereinafter, the detailed operation and structure of the present invention will be described in detail with reference to the accompanying drawings. It should be noted that reference numerals and like elements among the drawings are denoted by the same reference numerals and symbols as much as possible even though they are shown in different drawings. In the following description of the present invention, if 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.

본 발명은 심볼 그룹화된 데이터 스트림중 임의의 위치의 데이터에 대해 심볼이 인터리빙 되기 전인 서브 블록의 인덱스를 찾아가는 방법을 제안한다.The present invention proposes a method for finding an index of a subblock before a symbol is interleaved for data at an arbitrary position in a symbol grouped data stream.

도 3는 본 발명에 따른 인터리버의 구성을 보여준다. 본 발명에 따른 인터리버(100)는 코드율(code rate)에 따라 스크램블러에서 출력되는 비트를 임시 저장할 재배열 레지스터(110)와, 인터리버 메모리(120)와, 엔드어라운드 쉬프트, BRO시키기 위해 사용하는 임시 메모리(130)를 포함하여 구성된다.3 shows a configuration of an interleaver according to the present invention. The interleaver 100 according to the present invention is used to temporarily rearrange the register 110 to store the bit output from the scrambler according to the code rate, the interleaver memory 120, the end around shift, and BRO. It is configured to include a memory (130).

이와 같이 구성된 인터리버(100)에서는 코드율에 따라 먼저 터보 인코딩되고 스크램블링된 출력을 S, P0, P1, P'0, P'1을 S, P0, P'0, P1, P'1 순으로 정렬을 한 다음, 이를 각 인터리버 메모리(120)에 저장한 후, 임시 메모리(130)를 사용하여 각 블록의 인터리빙을 수행하여 모듈레이터(200)로 출력한다.In the interleaver 100 configured as described above, the turbo-encoded and scrambled output is first sorted by S, P0, P1, P'0, and P'1 according to the code rate in the order of S, P0, P'0, P1, and P'1. Then, after storing them in each interleaver memory 120, using the temporary memory 130 to perform interleaving of each block to output to the modulator 200.

인터리버 메모리(12288bit, 11)는 3개의 서브 블록(block_S , block_P0/P'0 , block_P1/P'1)으로 이루어질 수 있으며, 터보 인코더에 의해 코딩되고 스크램블러에 의해 스크램블링된 데이터가 인터리버(100)로 입력되면, 그 데이터를 순차적으로 재배열(symbol reorder)하여 각 블록 별로 해당 위치에 저장을 한다.Interleaver memory (12288bit, 11) may be composed of three sub-blocks (block_S, block_P0 / P'0, block_P1 / P'1), the data coded by the turbo encoder and scrambled by the scrambler to the interleaver 100 If input, the data is sequentially rearranged (symbol reorder) and stored in the corresponding location for each block.

임시 메모리(130)는 인터리버 메모리(120)에 순차적으로 저장되어 있는 데이터들에 대하여, 모듈레이터의 읽기 신호에 상응하여 인터리빙된 순서에 맞도록 읽어 오기 위해, 각 데이터가 저장되어 있는 어드레스를 발생한다. 상기 발생된 어드레스에 따라 모듈레이터(200)는 그 어드레스에 저장된 데이터를 입력받아 모듈레이션을 수행하게 된다. 즉, 인터리버(100)에서는 주소를 생성하여 모듈레이터(200)의 읽기 클럭에 맞추어 발생된 어드레스에 인터리빙된 순서대로 심볼을 읽어 오게 된다.The temporary memory 130 generates an address in which each data is stored in order to read data sequentially stored in the interleaver memory 120 in the interleaved order corresponding to the read signal of the modulator. In accordance with the generated address, the modulator 200 receives data stored at the address and performs modulation. That is, the interleaver 100 generates an address and reads symbols in the order of interleaving with the address generated according to the read clock of the modulator 200.

본 발명은 상술한 바와 같은 모듈레이터(200)의 요청에 따라 임시 메모리에 저장된 심볼의 인터리빙 이전의 인덱스를 산출하는 방법으로, 도 4를 참조하여 그 동작을 상세히 설명하기로 한다.The present invention is a method for calculating an index before interleaving of a symbol stored in a temporary memory according to the request of the modulator 200 as described above, and the operation thereof will be described in detail with reference to FIG. 4.

도 4를 참조하면, 심볼 그룹화 블록의 임의의 위치(이하 임의의 모듈레이션 인덱스)에 대해 모듈레이터(200)의 요청에 따라, 300 단계에서 인터리버(100)은 임의의 위치의 모듈레이션 인덱스를 발생시킨다. 301 단계에서 인터리버(100)는 각 입력 패킷의 크기에 따라 상기 <표 1>에 의해 주어진 N_int를 사용하여 몫과 나머지를 구한다. 즉, 입력되는 패킷의 크기가 그 값에 따라 <표 2>에 따라 해당되는 서브 블록을 선택한다.Referring to FIG. 4, in response to the request of the modulator 200 for an arbitrary position (hereinafter, referred to as an arbitrary modulation index) of the symbol grouping block, the interleaver 100 generates a modulation index of an arbitrary position in step 300. In step 301, the interleaver 100 calculates the quotient and remainder using N_int given by Table 1 according to the size of each input packet. That is, the sub-block corresponding to the size of the input packet according to the <Table 2> is selected.

몫(q)Share (q) 나머지Remainder 선택 블록Selection block 00 SS 1One 홀수odd number P0 upperP0 upper 짝수Even P0' upperP0 'upper 22 홀수odd number P0 lowerP0 lower 짝수Even P0' lowerP0 'lower 33 홀수odd number P1 upperP1 upper 짝수Even P1' upperP1 'upper 44 홀수odd number P1 lowerP1 lower 짝수Even P1' lowerP1 'lower

상기 <표 2>을 참조하면, 상기 몫이 0이면, S 블록을 선택된다. 상기 도 2를 참조하면, 첫 번째 인터리빙된 블록에는 S 블록만이 포함된다. 따라서, 0에서 N_int까지의 인덱스값을 갖는 심볼들은 모두 S 블록에 포함되어 있는 값이다.Referring to Table 2, if the quotient is zero, an S block is selected. Referring to FIG. 2, only the S block is included in the first interleaved block. Therefore, all symbols having index values from 0 to N_int are values included in the S block.

그리고, 몫이'1'일 경우, 그 나머지 값에 따라서, PO upper 또는 PO' upper를 선택되는데, 그 이유는 다음과 같다.When the quotient is' 1 ', PO upper or PO' upper is selected according to the remaining values, for the following reason.

도 2를 참조하면, P0 서브 블록의 값은 인터리빙을 통해 상기 1번 블록에 첫 번째 순서로 배열되고, 그 이후로 P0' 서브 블록의 심볼은 제 1번 블록의 두 번째 순서로 배열된다. 즉, 제 1 번 블록은 PO 서브 블록과 PO' 서브 블록의 심볼이 번갈아 배열된다. 따라서, 상기 제 1 서브 블록에서 나머지가 홀수인 값은 P0 서브 블록의 상위 심볼이 되고, 제 1 서브 블록에서 나머지가 짝수인 값은 PO' 서브 블록의 상위 심볼이 된다.Referring to FIG. 2, the values of the P0 subblock are arranged in the first order in the first block through interleaving, and then the symbols of the P0 'subblock are arranged in the second order of the first block. That is, in the first block, symbols of the PO subblock and the PO 'subblock are alternately arranged. Accordingly, a value having an odd number in the first sub block becomes an upper symbol of a P0 sub block, and a value having an even number in the first sub block becomes an upper symbol of a PO ′ sub block.

몫이 2일 경우, 그 나머지 값에 따라, PO lower 또는 PO' lower를 선택되는데, 상기 제 2 서브 블록에는 P0 하위 블록과 P0' 하위 블록이 번갈아 배열되므로, 홀수 값은 P0의 하위 블록에 포함된 값이 되고, 짝수값은 P0' 하위 블록으로부터 인터리빙된 심볼이기 때문이다.If the quotient is 2, PO lower or PO 'lower is selected according to the remaining value, and since the P0 lower block and P0' lower block are alternately arranged in the second subblock, odd values are included in the lower block of P0. This is because the even value is a symbol interleaved from the P0 'lower block.

몫이 3일 경우, 그 나머지 값에 따라, P1 upper 또는 P1' upper를 선택되는데, 몫이 4일 경우, 그 나머지 값에 따라, P1 lower 또는 P1' lower를 선택하게 되는데, 그 이유는 몫이 1 또는 2일 경우와 같다.If the quotient is 3, P1 upper or P1 'upper is selected according to the remaining values. If the quotient is 4, P1 lower or P1' lower is selected according to the remaining values. Same as 1 or 2.

상기 302 단계에서 인터리버(100)는 상기 301 단계에서 산출된 몫과 나머지를 이용해서, 상술한 바와 같이 상기 <표 2>를 참조하여 상기 인덱스가 포함된 해당 블록을 선택한다. 303 단계에서 인터리버(100)는 나머지를 사용하여 각 서브 블록 내에서 해당되는 인덱스를 찾아낸다. 그런 후, 상기 각 블록 내에서 산출된 인덱스에 이전 블록에 할당된 인덱스를 더하여 인터리빙되기 전의 인덱스를 구할 수 있다.In step 302, the interleaver 100 selects the corresponding block including the index with reference to Table 2 as described above, using the quotient and the remainder calculated in step 301. In step 303, the interleaver 100 finds a corresponding index in each subblock using the remainder. Then, the index before the interleaving can be obtained by adding the index allocated to the previous block to the index calculated in each block.

이상에서 상술한 바와 같이 본 발명은 부가적인 서브블록 인터리버 메모리나 심볼 그룹 메모리 등의 사용이 필요 없고, 또 이 과정들을 순차적으로 수행해야 할 필요가 없게 되므로 시간적인 절약도 된다.As described above, the present invention does not require the use of additional subblock interleaver memory, symbol group memory, or the like, and it is not necessary to perform these processes sequentially, thereby saving time.

도 1은 블록 인터리버의 원리를 설명하기 위한 개념도,1 is a conceptual diagram illustrating the principle of a block interleaver;

도 2는 블록 인터리버의 동작을 설명하기 위한 도면,2 is a view for explaining the operation of the block interleaver;

도 3은 본 발명에 따른 인터리버의 구성도,3 is a block diagram of an interleaver according to the present invention;

도 4는 본 발명에 따른 서브블록내의 인덱스를 구하기 위한 동작 흐름도. 4 is an operational flowchart for obtaining an index in a subblock according to the present invention.

Claims (1)

본 발명은 인터리버에서 임의의 위치의 모듈레이션 인덱스로부터 인터리빙되기 전의 인덱스를 검출하는 방법에 있어서, The present invention relates to a method for detecting an index before being interleaved from a modulation index of an arbitrary position in an interleaver. 심볼 그룹화 블록의 임의의 위치에 대한 모듈레이션 요청에 따라, 해당 인덱스를 발생하는 제 1 단계와, A first step of generating a corresponding index according to a modulation request for an arbitrary position of a symbol grouping block; 상기 각 입력 패킷의 크기로 상기 인덱스를 나누어 그에 따른 몫과 나머지를 산출하는 제 2 단계와, Dividing the index by the size of each input packet and calculating a quotient and a remainder according thereto; 상기 산출된 몫과 나머지를 이용해서, 상기 인덱스가 포함된 해당 블록을 선택하는 제 3 단계와, Using the calculated quotient and the remainder, selecting a corresponding block including the index; 상기 나머지를 사용하여 각 서브 블록 내에서 해당되는 인덱스를 산출하는 제 4 단계로 구성됨을 특징으로 하는 상기 방법.And a fourth step of calculating a corresponding index in each subblock using the remainder.
KR1020030095907A 2003-12-23 2003-12-23 Method for block interleaving in cdma mobile communication system KR20050064486A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030095907A KR20050064486A (en) 2003-12-23 2003-12-23 Method for block interleaving in cdma mobile communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030095907A KR20050064486A (en) 2003-12-23 2003-12-23 Method for block interleaving in cdma mobile communication system

Publications (1)

Publication Number Publication Date
KR20050064486A true KR20050064486A (en) 2005-06-29

Family

ID=37256080

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030095907A KR20050064486A (en) 2003-12-23 2003-12-23 Method for block interleaving in cdma mobile communication system

Country Status (1)

Country Link
KR (1) KR20050064486A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018190915A1 (en) * 2017-04-10 2018-10-18 Intel Corporation Enhanced interleaver for wireless communications

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018190915A1 (en) * 2017-04-10 2018-10-18 Intel Corporation Enhanced interleaver for wireless communications

Similar Documents

Publication Publication Date Title
US6732316B1 (en) Data interleaver and method of interleaving data
ES2673513T3 (en) Procedures that use FEC codes with permanent inactivation of symbols for coding and decoding processes
KR100963718B1 (en) Buffer architecture for a turbo decoder
US6744744B1 (en) Rate matching and channel interleaving for a communications system
JP5791161B2 (en) How to assign a redundancy version to a circular buffer
US7281197B2 (en) Error-correcting encoding apparatus with variable-rate puncturing
JP3549788B2 (en) Multi-stage encoding method, multi-stage decoding method, multi-stage encoding device, multi-stage decoding device, and information transmission system using these
US20040187063A1 (en) Error-correcting code interleaver
KR100699491B1 (en) Interleaving Method and System therof
EP1619802A1 (en) Communications device and wireless communications system
KR101435830B1 (en) Method of performing interleaving
US7970021B2 (en) Derate matching method and apparatus
JP2023508449A (en) Decoding method, device, network device and recording medium
KR20080041488A (en) Parallel interleaving method
KR100784283B1 (en) Method and apparatus for de-rate matching in 3gpp umts downlink receiver
KR20050064486A (en) Method for block interleaving in cdma mobile communication system
KR100475185B1 (en) the interleaver and the method thereof in HDR transmitter
CN109391364B (en) Information processing method and device
JP3896841B2 (en) Interleave processing method and interleave processing apparatus
KR20040037624A (en) Method and apparatus for deinterleaving an interleaved data stream in communication system
JP2003256246A (en) Storage device and storage method
CN110034847B (en) Cascade coding method and device
JP4308226B2 (en) Error correction coding device
KR20120071511A (en) Method and apparatus for data rate matching for mobile communication systems
KR20110051789A (en) Method and apparatus for derate matching and deinterleaving

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination