KR20050094304A - Interleaver and interleaving method in telecommunication system - Google Patents

Interleaver and interleaving method in telecommunication system Download PDF

Info

Publication number
KR20050094304A
KR20050094304A KR1020040019490A KR20040019490A KR20050094304A KR 20050094304 A KR20050094304 A KR 20050094304A KR 1020040019490 A KR1020040019490 A KR 1020040019490A KR 20040019490 A KR20040019490 A KR 20040019490A KR 20050094304 A KR20050094304 A KR 20050094304A
Authority
KR
South Korea
Prior art keywords
interleaver
value
interleaving
address
power
Prior art date
Application number
KR1020040019490A
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 KR1020040019490A priority Critical patent/KR20050094304A/en
Publication of KR20050094304A publication Critical patent/KR20050094304A/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/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/2707Simple row-column interleaver, i.e. pure block interleaving
    • 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/276Interleaving address generation
    • 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

본 발명은 이동통신 시스템에서 사용되는 블록 인터리버의 구현을 용이하게 하기 위한 것으로, 인터리버 구현시 제수가 되는 파라미터가 2의 거듭제곱 값이 아니기 때문에 발생하는 구현상의 어려움을 해결하기 위해 문제가 되는 파라미터 값을 2의 거듭제곱 값을 사용할 수 있도록 하는 수학식을 제안함으로써 인터리버의 구현을 용이하게 한다.The present invention is to facilitate the implementation of the block interleaver used in the mobile communication system, the parameter value which is a problem to solve the implementation difficulties caused by the divisor of the interleaver implementation is not a power of two. By simplifying the implementation of the interleaver, we propose a mathematical expression that allows the power of 2 to be used.

Description

통신시스템의 인터리버 및 인터리빙 방법{INTERLEAVER AND INTERLEAVING METHOD IN TELECOMMUNICATION SYSTEM}Interleaver and interleaving method of communication system {INTERLEAVER AND INTERLEAVING METHOD IN TELECOMMUNICATION SYSTEM}

본 발명은 이동통신 시스템의 인터리빙에 관한 것으로, 특히 구현이 용이한 블록 인터리버 및 인터리빙 방법에 관한 것이다.The present invention relates to interleaving of a mobile communication system, and more particularly, to a block interleaver and an interleaving method that are easy to implement.

일반적으로, 인터리버는 무선채널에서 발생하는 페이딩에 의한 집중에러(burst error)를 분산시키기 위해 사용된다. 에러가 집중되어 발생하면 에러정정 부호화를 이용한 에러복구 능력을 넘어서기 때문에 에러정정 부호화 기능이 무력화된다. 이와 같은 경우, 인터리빙 기술을 사용하여 집중된 에러를 분산시킴으로써 에러정정 부호화의 효율을 증가시킬 수 있다.In general, the interleaver is used to distribute burst errors due to fading occurring in a radio channel. If the error is concentrated, the error correction coding function is disabled because it exceeds the error recovery capability using the error correction coding. In such a case, the efficiency of error correction coding can be increased by dispersing the concentrated error using an interleaving technique.

인터리버는 크게 블록 인터리버와 콘볼루션 인터리버의 두 가지로 구분할 수 있다. 이들 중 블록 인터리버의 일종인 비트 역상순 인터리버에 대해서 고려해 보자. 비트 역상순 인터리버의 예로 IS-2000 Release C 즉, 1x EV-DV에 사용되는 서브블록 채널 인터리버를 들 수 있다.The interleaver can be classified into two types, a block interleaver and a convolution interleaver. Consider the bit reversed interleaver, which is a kind of block interleaver. An example of a bit reverse interleaver is a subblock channel interleaver used in IS-2000 Release C, that is, 1x EV-DV.

도 1은 서브블록 채널 인터리버로 블록 인터리버를 사용하는 1x EV-DV 시스템의 패킷 데이터 채널(Packet Data CHannel, PDCH)에 대한 송신측 시스템을 도시하는 도면이다.1 is a diagram illustrating a transmitting system for a packet data channel (PDCH) of a 1x EV-DV system using a block interleaver as a subblock channel interleaver.

도 1에 도시된 바와 같이, 1xEV-DV 시스템에서는 PDCH를 송신하기 전에 송신할 패킷(Packet)에 대한 16비트의 CRC(Cyclic Redundancy Check) 비트 부가(102), 6비트의 테일 비트 부가(104), 1/5 레이트의 터보 인코더에 의한 터보 인코딩(106), 채널 인터리버(108)에 의한 인터리빙 등의 과정을 수행한다. 이들 과정 중 CRC 인코딩, 터보 인코딩, 채널 인터리빙 등이 채널 부호화에 해당한다.As shown in FIG. 1, in a 1xEV-DV system, a 16-bit cyclic redundancy check (CRC) bit addition 102 and a 6-bit tail bit addition 104 for a packet to be transmitted before transmitting a PDCH. , Turbo encoding 106 by the 1/5 rate turbo encoder, interleaving by the channel interleaver 108, and the like. Among these processes, CRC encoding, turbo encoding, channel interleaving, and the like correspond to channel encoding.

CRC 인코딩은, 원래의 데이터에 CRC 비트를 부가함으로써 전송 과정 중에 발생할 수 있는 오류에 강하게 하는 과정이다. 도 1에 도시된, 1x EV-DV 시스템의 PDCH에 대한 CRC 인코딩은 원래의 패킷에 16비트의 CRC 비트를 부가함으로써 이루어진다. 즉, CRC 인코딩이 이루어진 패킷은 원래의 패킷 크기에서 16비트가 더해진 크기를 갖게 된다. CRC 비트가 부가된 패킷을 터보 인코딩하기에 앞서 6비트의 터보 인코더 테일 비트가 부가된다. 그 결과 원래의 패킷에 22비트가 더해진 크기의 패킷이 터보 인코더(106)에 입력된다.CRC encoding is the process of strengthening the error that may occur during transmission by adding CRC bits to the original data. The CRC encoding for the PDCH of the 1x EV-DV system, shown in FIG. 1, is achieved by adding 16 bits of CRC bits to the original packet. That is, a packet having CRC encoding has a size in which 16 bits are added to the original packet size. Prior to turbo encoding a packet to which a CRC bit has been added, a six-bit turbo encoder tail bit is added. As a result, a packet having a size of 22 bits added to the original packet is input to the turbo encoder 106.

터보 인코딩 역시 원래의 데이터에 비트를 부가함으로써 전송 과정 중에 발생할 수 있는 오류에 강하게 하는 과정이다. 도 1에 도시된 터보 인코더(106)는 1/5의 레이트를 가지므로, 1비트가 입력되면 5비트가 출력된다. 터보 인코더의 동작은 본 발명과 직접적인 관련이 없으므로, 그에 대한 상세한 설명은 생략하도록 한다.Turbo encoding also adds bits to the original data to make it more robust to errors that may occur during transmission. Since the turbo encoder 106 shown in FIG. 1 has a rate of 1/5, when 1 bit is input, 5 bits are output. Since the operation of the turbo encoder is not directly related to the present invention, a detailed description thereof will be omitted.

인터리빙은, 앞서 기술한 바와 같이, 무선채널에서 발생하는 페이딩에 의한 집중에러(burst error)를 분산시키기 위해 사용된다. 에러가 집중되어 발생하면 에러정정 부호화를 이용한 에러복구 능력을 넘어서기 때문에 에러정정 부호화 기능이 무력화된다. 이와 같은 경우, 인터리빙 기술은 집중된 에러를 분산시킴으로써 에러정정 부호화의 효율을 증가시키게 된다. 일반적으로 인터리빙은 송신신호를 시간 축으로 재배열하여 전송하고 수신측에서 다시 원래의 순서로 재배열하는 것으로, 이를 통해 전송 도중 집중적으로 발생했던 에러가 분산되게 된다.Interleaving is used to distribute burst errors due to fading occurring in the radio channel, as described above. If the error is concentrated, the error correction coding function is disabled because it exceeds the error recovery capability using the error correction coding. In such a case, the interleaving technique increases the efficiency of error correction coding by dispersing the concentrated error. In general, interleaving is to rearrange and transmit a transmission signal on a time axis, and then rearrange the transmission signal back to its original order, thereby distributing intensive errors during transmission.

인터리빙 방법에는 블록 인터리빙(Block Interleaving)과 콘볼루션 인터리빙(Convolution Interleaving) 방법이 있다. 일반적으로 CDMA 시스템에서는 채널 인터리빙 방법으로 블록 인터리빙 방법을 사용한다.Interleaving methods include block interleaving and convolution interleaving. In general, a CDMA system uses a block interleaving method as a channel interleaving method.

블록 인터리빙 방법은 어떤 일정한 데이터 블록을 지정하고 인터리빙 할 때는 데이터 블록에 가로방향으로 데이터를 기록하고 출력은 세로방향으로 한다. 또한 수신측에서는 반대로 세로방향으로 데이터를 기록하고 가로방향으로 출력을 하여 데이터를 원상태로 복구한다.In the block interleaving method, a certain data block is designated and interleaved, data is written in the data block in the horizontal direction, and the output is in the vertical direction. On the contrary, the receiving side records the data in the vertical direction and outputs it in the horizontal direction to restore the data to its original state.

블록 인터리빙 방식에서는 송신측에서 데이터를 기록할 때와 수신측에서 데이터를 출력할 때 인터리버 주소를 만들어내기 위해 소정의 수학식을 사용하게 된다. 그 수학식은 다음과 같다.In the block interleaving method, a predetermined equation is used to generate an interleaver address when writing data at the transmitting side and outputting data at the receiving side. The equation is as follows.

한편, 수학식 1의 k는 수학식 1에 의해 만들어지는 주소가 몇 번째 심볼에 대한 주소인지를 나타내는 변수이고, m 및 J는 인터리버에 입력되는 패킷의 크기에 따라 결정되는 파라미터 값들이다. 종래의 1xEV-DV 시스템에서는 인터리버에 입력되는 패킷의 크기에 따른 파라미터 값들이 표 2와 같이 결정되어 있다.Meanwhile, k in Equation 1 is a variable representing the number of symbols for the address generated by Equation 1, and m and J are parameter values determined according to the size of a packet input to the interleaver. In the conventional 1xEV-DV system, parameter values according to packet sizes input to the interleaver are determined as shown in Table 2.

도 2는 입력되는 패킷의 크기에 따른 종래 서브블록 인터리버의 파라미터들을 표시하는 도면이다.2 is a diagram illustrating parameters of a conventional subblock interleaver according to the size of an input packet.

도 2의 는 인터리버에 입력되는 패킷의 크기를 나타내는 값이고, m 및 J는 상기 수학식 1에 사용되는 파라미터 값들이다. 도 2에 표시된 바와 같이, 1xEV-DV 시스템에서는 408, 792, 1560, 2328, 3096 및 3864의 6가지의 패킷 크기가 사용된다. 그런데, 패킷의 크기가 2328인 경우에는 패킷의 크기가 408, 792, 1560, 3096 및 3864인 경우와는 달리 파라미터 값의 하나인 J" 값이 3이라는 값을 가진다. 이는 패킷의 크기가 408, 792, 1560, 3096 및 3864인 경우의 J" 값이 2 또는 4로서 2의 거듭제곱 값을 가지는 것과 비교되는 결과이다.Of FIG. 2 Is a value representing the size of a packet input to the interleaver, m and J are parameter values used in Equation 1 above. As shown in FIG. 2, six packet sizes of 408, 792, 1560, 2328, 3096 and 3864 are used in the 1xEV-DV system. However, when the packet size is 2328, unlike the case where the packet sizes are 408, 792, 1560, 3096, and 3864, the J "value, which is one of the parameter values, has a value of 3. The packet size is 408, It is the result compared with having the power of 2 as J "value in the case of 792, 1560, 3096, and 3864 as 2 or 4.

한편, 인터리버 주소를 만들어 내는 수학식 1을 살펴보면 J 값은 수학식 1에서 항상 제수로 들어가는 것을 알 수 있다. 그런데, 도 2에 도시된 바와 같이, 인코더에 입력되는 패킷 크기가 2328일 경우에는 J는 3이다. 즉, k 값을 3으로 나누게 되는 것이다. 로직에서 2의 거듭제곱 값이 아닌 다른 값으로 어떤 값을 나눈다는 것은 로직의 크기나 타이밍을 맞추는데 있어서 상당한 부담으로 작용하는 것임에 틀림이 없다. 다시 말하면, J가 4일 경우에는 단순히 피제수를 오른쪽으로 2번 비트 쉬프트를 하고, J가 2일 경우에는 피제수를 오른쪽으로 1번 비트 시프트를 함으로써 간단히 연산을 수행할 수 있는데 반해 J가 3일 경우에는 비트 시프트만으로는 이루어지지 않기 때문에 나누기 로직을 부가적으로 써야 하는 것이다. 이러한 점은 이동통신 시스템에서 인터리버를 구현함에 있어서, 회로를 복잡하게 하고 크기를 증가시키는 등의 문제점을 발생시킨다.Meanwhile, looking at Equation 1 for generating the interleaver address, it can be seen that the J value always enters a divisor in Equation 1. However, as shown in FIG. 2, when the packet size input to the encoder is 2328, J is 3. That is, the value of k is divided by three. Dividing a value by a value other than a power of two in the logic must be a significant burden in adjusting the size or timing of the logic. In other words, if J is 4, simply divide the dividend 2 times to the right, and if J is 2, simply perform the bitwise shift 1 bit to the right, whereas J is 3 There is no bit shift alone, so we need to use additional division logic. This causes problems such as complicated circuits and increased size in implementing an interleaver in a mobile communication system.

따라서, 이와 같은 문제점을 해결하기 위한 본 발명의 목적은 비트 쉬프트만으로 구현 가능한 블록 인터리버 및 인터리빙 방법을 제공함에 있다. Accordingly, an object of the present invention to solve such a problem is to provide a block interleaver and an interleaving method that can be implemented only by bit shift.

이를 위하여 본 발명은, 인터리버 주소를 계산함에 있어서 2의 거듭제곱 수가 아닌 파라미터 값 대신에 2의 거듭제곱 값을 사용할 수 있도록 하는, 인터리버의 주소 값을 계산하기 위한 새로운 수학식을 제안함을 특징으로 한다.To this end, the present invention proposes a new equation for calculating an address of an interleaver so that a power of 2 may be used instead of a power of 2 in calculating an interleaver address. do.

본 발명은 CDMA 1xEV-DV(Code Division Multiple Access 1x Evaluation-Data and Voice, 이하 "1xEV-DV"라 칭한다) 시스템의 패킷 데이터 채널(Packet Data CHannel, PDCH)의 블록 인터리빙의 방법에 관한 것으로, 3GPP2 그룹에서 제안하는 1xEV-DV 통신 시스템에서 사용되는 블록 인터리버 대신에 좀더 효율적으로 인터리버의 동작을 구현 할 수 있는 방법을 제안한다.The present invention relates to a method of block interleaving of a packet data channel (PDCH) of a CDMA Code Division Multiple Access 1x Evaluation-Data and Voice (hereinafter, referred to as "1xEV-DV") system. Instead of the block interleaver used in the 1xEV-DV communication system proposed by the group, we propose a method to implement the interleaver operation more efficiently.

이를 위한 본 발명은 인터리버의 주소 값을 계산하기 위해 사용되는 파라미터 중 제수가 되는 J의 값을 2의 거듭제곱 수로 만들어서 인터리버 주소 생성을 하는 새로운 수학식을 사용하는 인터리버 및 그 인터리빙 방법으로 이루어져 있다. 이를 통하여 나누기 로직을 사용하지 않고 인터리빙을 수행할 수 있다.The present invention for this purpose consists of an interleaver and a method of interleaving using a new equation for generating interleaver address by making the value of J which is a divisor among the parameters used to calculate the address of the interleaver to a power of 2. This allows interleaving without the use of division logic.

이와 같은 본 발명이 제안하는 인터리버는, 입력되는 패킷의 크기인 N 값에 의해 결정되는 파라미터 값들인 m 및 J 값을 사용하여 인터리버 주소를 생성하는 블록 인터리버에 있어서, 상기 N 값이 상기 J 값을 2의 거듭제곱 값으로 결정되게 하는 값인 경우 제 1 인터리빙 규칙에 따라 인터리버 주소를 생성하고, 상기 N 값이 상기 J 값을 2의 거듭제곱 값이 아닌 값으로 결정되게 하는 값이 경우 제 2 인터리빙 규칙에 따라 인터리빙 주소를 생성하는 인터리버이다.Such an interleaver proposed by the present invention is a block interleaver for generating an interleaver address using m and J values, which are parameter values determined by an N value that is an input packet size, wherein the N value represents the J value. In case of a value that is determined to be a power of 2, an interleaver address is generated according to the first interleaving rule, and when the value of N is such that the value of J is determined to be a non-power of 2 second interleaving rule. Is an interleaver for generating an interleaving address.

또, 이와 같은 본 발명이 제안하는 인터리빙 방법은, 입력되는 패킷의 크기인 N 값에 의해 결정되는 파라미터 값들인 m 및 J 값을 사용하여 인터리버 주소를 생성하는 블록 인터리버를 사용하는 인터리빙 방법에 있어서, 입력되는 패킷의 크기 N 값이 상기 J 값을 2의 거듭제곱 값으로 하는 값인지, J 값을 2의 거듭제곱 값으로 하지 않는 값인지 판단하는 제 1과정과, 상기 N 값이 상기 J 값을 2의 거듭제곱 값으로 하는 값인 경우 제 1 인터리빙 규칙에 의해 상기 m 및 J 값을 결정하는 제 2과정과, 상기 제 2과정에서 결정된 m 및 J 값을 사용하여 제 1 인터리빙 규칙에 의해 인터리버 주소를 생성하는 제 3과정과, 상기 N 값이 상기 J 값을 2의 거듭제곱 값으로 하는 값이 아닌 경우 제 2 인터리빙 규칙에 의해 상기 m 및 J 값을 결정하는 제 4과정과, 상기 제 4과정에서 결정된 m 및 J 값을 사용하여 제 2 인터리빙 규칙에 의해 인터리버 주소를 생성하는 제 5과정을 포함하는 인터리빙 방법이다.In addition, the interleaving method proposed by the present invention is an interleaving method using a block interleaver for generating an interleaver address using m and J values, which are parameter values determined by an N value that is an input packet size. A first step of determining whether the size N value of the input packet is a value that makes the J value a power of 2 or a value that does not make the J value a power of 2; When the value is a power of 2, the interleaver address is determined by the first interleaving rule using the second process of determining the m and J values by the first interleaving rule and the m and J values determined by the second process. A third step of generating, a fourth step of determining the m and J values by a second interleaving rule when the value of N is not a value of the value of J as a power of 2, and in the fourth stepBy the second interleaving rule, using the m and J values are specified interleaving comprises a fifth step of generating the interleaver address.

여기서 특히 제 2 인터리빙 규칙은 J 값을 2의 거듭제곱 값으로 변환하기 위한 새로운 파라미터 값 결정 규칙과 그에 따라 결정된 파라미터 값을 사용하여 인터리버 주소를 생성하기 위한 새로운 수학식을 사용하는 인터리빙 규칙이다. 본 발명에서 제안하는 인터리버는 입력되는 패킷의 크기에 따라 제 1 인터리빙 규칙 또는 제 2 인터리빙 규칙에 따라 인터리빙을 수행한다. In particular, the second interleaving rule is an interleaving rule using a new parameter value determination rule for converting a J value to a power of 2 and a new equation for generating an interleaver address using the parameter value determined accordingly. The interleaver proposed in the present invention performs interleaving according to a first interleaving rule or a second interleaving rule according to the size of an input packet.

이하 1xEV-DV 시스템에 적용되는 인터리버를 예로 들어 본 발명을 설명한다. 1xEV-DV 시스템에서는 입력되는 패킷 크기가 2328인 경우에 J 값이 3이 된다. 이하 J의 값을 3이 아닌 2의 거듭제곱 값의 하나인 2로 만들어 인터리버 주소 값을 계산하는 수학식을 도출하는 과정을 본 발명의 일 실시예로 들어 본 발명을 상세히 설명하도록 한다. Hereinafter, the present invention will be described using an interleaver applied to a 1xEV-DV system as an example. In the 1xEV-DV system, when the input packet size is 2328, the J value becomes 3. Hereinafter, the present invention will be described in detail with reference to a process of deriving a formula for calculating an interleaver address value by making J a value of 2 rather than 3, which is one of powers of two.

도 3은 서브블록 인터리버의 구성을 도시하는 도면이다.3 is a diagram illustrating a configuration of a subblock interleaver.

도 3에 도시된 서브블록 인터리버는 도 1의 채널 인터리버(108)에 해당한다. 도 3에 도시된 서브블록 인터리버의 각 서브블록에는 도 1의 터보 인코더(106)로부터 출력된 심볼들이 입력된다. 터보 인코더(106)으로부터 출력된 심볼들은 인터리빙 룰에 의하여 인터리빙 되는데, 이 인터리빙 룰은 다음과 같다.The subblock interleaver shown in FIG. 3 corresponds to the channel interleaver 108 of FIG. Symbols output from the turbo encoder 106 of FIG. 1 are input to each subblock of the subblock interleaver shown in FIG. 3. The symbols output from the turbo encoder 106 are interleaved by an interleaving rule. The interleaving rule is as follows.

① 첫 번째 단계는 심볼 분리단계이다.① The first step is symbol separation.

터보 인코딩된 심볼 중 첫 번째 심볼은 도 3의 S 서브블록(300), 두 번째 심볼은 P0 서브블록(302), 세 번째 심볼은 P1 서브블록(304), 네 번째 심볼은 P0' 서브블록(306), 다섯 번째 심볼은 P1' 서브블록(308)에 저장되고, 여섯 번째 심볼은 다시 S 서브블록(300)에 순서대로 저장된다. The first symbol of the turbo encoded symbols is the S subblock 300 of FIG. 3, the second symbol is the P0 subblock 302, the third symbol is the P1 subblock 304, and the fourth symbol is the P0 'subblock ( 306), the fifth symbol is stored in the P1 'subblock 308, and the sixth symbol is again stored in the S subblock 300 in order.

② 두 번째 단계는 서브블록 인터리빙의 단계이다.② The second step is subblock interleaving.

인터리빙된 심볼은 하기의 1 내지 5의 단계에 따른 방법으로 계산되는 주소, 즉 Ai(i=0 내지 -1)에 의해 i번째 심볼이 순차적으로 읽히게 된다.The interleaved symbol is an address calculated by the method according to the following steps 1 to 5, that is, Ai (i = 0 to I) the i th symbol is read sequentially.

각 서브블록(300 내지 308)은 하기의 1내지 5의 단계에 따른 인터리빙 룰에 의해서 인터리빙 된다.Each subblock 300 to 308 is interleaved by an interleaving rule according to steps 1 to 5 below.

1. 도 3을 사용하여 서브블록 인터리버 파라미터 m 및 J를 결정한다. 1. Determine the subblock interleaver parameters m and J using FIG.

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

3. 수학식 1을 사용하여 출력 주소를 생성해 낸다.3. Use Equation 1 to generate the output address.

4. 만약 3단계에서 생성된 보다 작으면 =이고 i, k를 각각 1씩 증가시킨다. 그렇지 않은면 를 버리고 k만 증가시킨다.4. If created in step 3 end Less than = And increase i and k by 1, respectively. Otherwise Discard and increase k only.

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

③ 세 번째 단계는 심볼 그룹 단계이다.③ The third stage is the symbol group stage.

서브블록 인터리버의 출력은, 도 3에 도시된 바와 같이, 인터리빙된 S 서브블록(300) 인터리버의 출력 다음에 P0 서브블록(302)과 P0' 서브블록(304)의 출력을 P0, P0', P0, P0',...,P0, P0' 순서로 복합하여 출력하고 다음 P1과 P1' 서브블록의 출력을 P1, P1',P1, P1',...,P1, P1' 순서로 복합하여 출력한다.As shown in FIG. 3, the output of the subblock interleaver is the output of the P0 subblock 302 and the P0 'subblock 304 following the output of the interleaved S subblock 300 interleaver. P0, P0 ', ..., P0, P0' are combined and output, and the outputs of the next P1 and P1 'subblocks are combined in the order of P1, P1', P1, P1 ', ..., P1, P1'. To print.

이와 같은 서브블록 인터리버에 사용되는 파라미터 값의 하나인 J" 값을 2의 거듭제곱 값인 2로 사용할 수 있도록 하는 수학식을 산출하는 과정에 대해 기술한다.A process of calculating a mathematical equation for enabling the use of J ", which is one of the parameter values used in the subblock interleaver, as a power of 2, 2 will be described.

이해를 돕기 위해 먼저 일반적인 블록 인터리버에 대해 기술한다.To help understand, the general block interleaver is described first.

도 4는 일반적인 블록 인터리버의 심볼 배열을 도시하는 도면이다.4 is a diagram illustrating a symbol arrangement of a general block interleaver.

일반적인 블록 인터리버의 원리에 의하면 m과 J와 와의 관계는 도 4에 도시한 바와 같이 = × J 가 된다. 이와 같은 일반적인 블록 인터리버에서는 도 4에 도시된 바와 같이 심볼들이 순차적으로 입력되고 출력된다.According to the general block interleaver principle, m and J As shown in Fig. 4 = × J becomes. In such a general block interleaver, symbols are sequentially input and output as shown in FIG. 4.

그러나 PDCH의 경우는 인터리버의 입력으로 들어오는 데이터의 수가 보다 작기 때문에 일반적인 인터리버 주소 발생 수식에 "만약 생성된 보다 작으면 =이고 i, k를 각각 1씩 증가시킨다. 그렇지 않으면 버리고 k만 증가시킨다." 라는 항목과 새로운 . 즉, = (× J) - (not filled region) 항목이 추가되었다. 이를 입력되는 패킷의 크기가 2328인 인터리버에 대하여 적용하면 하기의 도 5a 및 도 5b와 같다.However, in the case of PDCH, the number of data coming into the input of the interleaver Because it is less than the common interleaver address generation formula, "if generated end Less than = And increase i and k by 1, respectively. Otherwise Throw away and increase only k. " . In other words, = ( × J)-(not filled region) has been added. If this is applied to the interleaver whose size of the input packet is 2328, it is as shown in Figs. 5a and 5b.

이를 2328 패킷 크기를 예로 들어 설명하면 다음 그림과 같다.The following figure illustrates the 2328 packet size.

도 5a는 파라미터 J 값이 3인 경우에 각 서브블록 인터리버에 입력되는 심볼을 도시하는 도면이다.FIG. 5A is a diagram illustrating a symbol input to each subblock interleaver when the parameter J value is 3. FIG.

도 5a에 도시된 바와 같이, 파라미터 J 값이 3인 경우에는 입력되는 심볼들이 3행으로 기록된다.As shown in FIG. 5A, when the parameter J value is 3, the input symbols are recorded in three rows.

도 5b는 파라미터 J 값이 3인 경우에 인터리버 출력을 도시하는 도면이다.5B is a diagram showing an interleaver output when the parameter J value is three.

도 5b에 도시된 심볼들은 수학식 1에 의해 계산된 주소 값에 따라 출력된다.The symbols shown in FIG. 5B are output according to the address value calculated by Equation 1.

도 5a 및 도 5b에 도시된 바와 같이, 각 심볼들의 입력 및 출력에 있어서는 not fi = 2328에 대하여 파라미터 값 m 및 J를 각각 m = 11, J = 2로 바꾸면 하기의 도 6a 및 도 6b와 같이 동작하게 된다.lled 항목이 존재하며, 인터리빙 룰의 4의 단계에 의하여 not filled 항목을 읽지 않게 된다. 이때 J가 3이기 때문에 [k/J] 항과 k mod J 항의 동작을 수행하기 위하여 로직에서 나누기 로직을 사용하여야 한다. 그러나 J 값을 2의 거듭제곱 값으로 설정을 한다면 나누기 로직을 사용하지 않을 수 있다. 즉, = 2328에 대하여 파라미터 값 m 및 J를 각각 m = 11, J = 2로 바꾸면 하기의 도 6a 및 도 6b와 같이 동작하게 된다.As shown in FIGS. 5A and 5B, in the input and output of each symbol, when the parameter values m and J are changed to m = 11 and J = 2 for not fi = 2328, respectively, as shown in FIGS. 6A and 6B below. There is a lled item and the not filled item is not read by step 4 of the interleaving rule. In this case, since J is 3, the division logic should be used in the logic to perform the operations of [k / J] and k mod J. However, if you set the J value to a power of two, you can disable the division logic. In other words, For parameter 2328, the parameter values m and J are changed to m = 11 and J = 2, respectively, as shown in FIGS. 6A and 6B.

도 6a는 파라미터 J 값이 2인 경우에 각 서브블록 인터리버에 입력되는 심볼을 도시하는 도면이고, 도 6b는 파라미터 J 값이 2인 경우에 인터리버 출력을 도시하는 도면이다.FIG. 6A is a diagram showing a symbol input to each subblock interleaver when the parameter J value is 2, and FIG. 6B is a diagram showing an interleaver output when the parameter J value is 2. FIG.

도 6a 및 도 6b에 도시된 바와 같이, Discard 되는 주소의 수는 많아지는데 반해 결과적인 주소 값은 같아지게 된다. 이에 따른 인터리버 주소를 만들어 내는 수식을 만들기 위해 출력되어야 하는 서브블록의 주소를 분석하면 하기의 도 7과 같다.As shown in Figs. 6A and 6B, the number of addresses to be discarded is increased while the resulting address values are the same. When analyzing the address of the sub-block to be output in order to make the formula for generating the interleaver address according to this as shown in Figure 7 below.

도 7은 출력 인덱스에 따른 서브블록의 행과 열 및 그에 따른 출력 주소를 표시하는 도면이다.7 is a diagram illustrating rows and columns of a subblock according to an output index and an output address thereof.

즉, 서브블록의 행을 만들어 내는 항은 를 사용하고 서브블록의 열을 표현하는 BRO 항은 을 사용하면 만들어지게 된다. 따라서 = 2328, m = 11, J = 3 대신에 = 2328, m = 11, J = 2를 사용하기 위해서는 인터리빙 룰의 2번 단계에서 수학식 1 대신에 하기의 수학식 2를 사용한다.That is, to produce a row of subblocks Term Using the BRO term representing the columns of the subblock To create it. therefore = 2328, m = 11, instead of J = 3 In order to use = 2328, m = 11, and J = 2, Equation 2 below is used instead of Equation 1 in step 2 of the interleaving rule.

즉, 본 발명에서는 다음과 같은 인터리빙 룰에 따른 인터리버 주소 생성 방법을 사용하게 된다. 이때, 패킷 크기에 따른 파라미터 값도 달라지게 된다. That is, the present invention uses the interleaver address generation method according to the following interleaving rules. At this time, the parameter value according to the packet size also changes.

도 8은 본 발명에 따른 서브블록 인터리버 파라미터들을 표시하는 도면이다.8 is a diagram illustrating subblock interleaver parameters according to the present invention.

1. 도 8을 사용하여 서브블록 인터리버 파라미터 m, J를 결정한다. 1. Determine the subblock interleaver parameters m, J using FIG.

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

3. 입력되는 패킷의 크기가 2328일 경우에 하기의 수학식을 이용하여 출력 주소를 생성해 낸다.3. If the size of the input packet is 2328, an output address is generated using the following equation.

4. 생성된 보다 작으면 i 번째 비트의 주소는 =이고 i, k를 각각 1씩 증가시킨다. 그렇지 않으면 를 버리고 k 만 증가시킨다.4. Created end If less than, the address of the i th bit is = And increase i and k by 1, respectively. Otherwise Discard and increase k only.

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

이와 같이, 새로운 수학식 2를 산출하여 사용함으로써 인터리버에 입력되는, 다양한 크기를 가지는 모든 패킷에 대하여 인터리버 주소 값 계산에서 제수로 사용되는 파라미터 J 값을 2의 거듭제곱 값인 2로 바꾸어 사용할 수 있게 된다. 따라서, 별도의 나누기 로직을 사용하지 않고 비트 쉬프트만으로 인터리버를 구현할 수 있게 된다.In this way, by calculating and using the new equation 2, the parameter J value used as a divisor in the interleaver address value calculation for all packets having various sizes input to the interleaver can be used as 2, which is a power of 2. . Therefore, the interleaver can be implemented using only bit shift without using separate division logic.

한편, 이상 본 발명을 기술함에 있어서는 파라미터 J 값을 2로 바꾸어 사용할 수 있도록 하는 수학식 2에 대해서만 설명하였으나, 파라미터 J 값을 2의 다른 거듭제곱 값들로 바꾸어 사용할 수도 있을 것이다. 여기서는 그에 대한 별도의 설명을 생략하도록 한다.Meanwhile, in the above description of the present invention, only Equation 2 for changing the parameter J value to 2 may be used. However, the parameter J value may be replaced with another power of two. Here, a separate description thereof will be omitted.

실제로 시스템을 구현함에 있어서 나누기 로직을 사용한 회로의 크기는 50000 시높시스 게이트 정도가 사용되고 나누기 로직을 사용하지 않는 회로에서는 약 6000 시높시스 게이트 정도가 사용된다. 또한 타이밍 측면에서도 나누기 로직에서는 최대 11 나노초(ns) 정도의 바이얼레이션(violation)이 발생하는 방면 나누기 로직을 사용하지 않는 본 발명에서는 바이얼레이션이 발생하지 않는다. 따라서, 본 발명을 적용함으로서 나누기 로직을 사용하지 않고 비트 쉬프트만으로 블록 인터리버 및 그 인터리버 방법을 구현할 수 있다. 또, 블록 인터리버를 구현함에 있어서 그 크기를 축소시킬 수 있다.In practice, the size of the circuit using divide logic is about 50,000 synopsis gates in the implementation of the system, and about 6000 synopsis gates are used in the circuit without division logic. In addition, in terms of timing, the division logic does not occur in the present invention which does not use the division logic in which division of up to 11 nanoseconds of vibration occurs. Therefore, by applying the present invention, it is possible to implement a block interleaver and its interleaver method using only bit shifts without using division logic. In addition, the size of the block interleaver may be reduced.

도 1a 및 도 1b는 서브블록 채널 인터리버를 사용하는 1x EV-DV 시스템을 도시하는 도면.1A and 1B illustrate a 1x EV-DV system using a subblock channel interleaver.

도 2는 입력되는 패킷의 크기에 따른 종래 서브블록 인터리버의 파라미터들을 표시하는 도면.2 is a diagram showing parameters of a conventional subblock interleaver according to the size of an input packet.

도 3은 서브블록 인터리버의 구성을 도시하는 도면.3 is a diagram illustrating a configuration of a subblock interleaver.

도 4는 일반적인 블록 인터리버의 심볼 배열을 도시하는 도면.4 is a diagram illustrating a symbol arrangement of a general block interleaver.

도 5a는 파라미터 J 값이 3인 경우에 각 서브블록 인터리버에 입력되는 심볼을 도시하는 도면.FIG. 5A is a diagram showing a symbol input to each subblock interleaver when the parameter J value is 3. FIG.

도 5b는 파라미터 J 값이 3인 경우에 인터리버 출력을 도시하는 도면.Fig. 5B shows the interleaver output when the parameter J value is three.

도 6a는 파라미터 J 값이 3인 경우에 각 서브블록 인터리버에 입력되는 심볼을 도시하는 도면.FIG. 6A is a diagram showing a symbol input to each subblock interleaver when the parameter J value is 3. FIG.

도 6b는 파라미터 J 값이 3인 경우에 인터리버 출력을 도시하는 도면.6B is a diagram showing an interleaver output when the parameter J value is three.

도 7은 출력 인덱스에 따른 서브블록의 행과 열 및 그에 따른 출력 주소를 표시하는 도면.7 shows the rows and columns of a subblock according to the output index and the corresponding output address.

도 8은 본 발명에 따른 도면으로, 입력되는 패킷의 크기에 따른 서브블록 인터리버의 파라미터들을 표시하는 도면.8 is a diagram according to the present invention, showing parameters of a subblock interleaver according to the size of an input packet.

Claims (7)

입력되는 패킷의 크기인 N 값에 의해 결정되는 파라미터 값들인 m 및 J 값을 사용하여 인터리버 주소를 생성하는 블록 인터리버에 있어서,A block interleaver for generating an interleaver address using m and J values, which are parameter values determined by an N value of an input packet, 상기 N 값이 상기 J 값을 2의 거듭제곱 값으로 결정되게 하는 값인 경우 제 1 인터리빙 규칙에 따라 인터리버 주소를 생성하고, 상기 N 값이 상기 J 값을 2의 거듭제곱 값이 아닌 값으로 결정되게 하는 값이 경우 제 2 인터리빙 규칙에 따라 인터리빙 주소를 생성하는 인터리버.When the N value is a value for determining the J value as a power of 2, an interleaver address is generated according to a first interleaving rule, and the N value is determined to be a value other than a power of 2 Interleaver to generate an interleaving address according to a second interleaving rule. 제 1항에 있어서, 상기 제 2 인터리빙 규칙은 상기 J 값을 2의 거듭제곱 값으로 변환하는 인터리버.The interleaver of claim 1, wherein the second interleaving rule converts the J value to a power of two. 제 2항에 있어서,The method of claim 2, 상기 제 1 인터리빙 규칙은 하기의 수학식 3을 사용하여 인터리버 주소를 생성하는 규칙이고, 상기 제 2 인터리빙 규칙은 하기의 수학식 4를 사용하여 인터리버 주소를 생성하는 규칙인 인터리버.The first interleaving rule is a rule for generating an interleaver address using Equation 3 below, and the second interleaving rule is a rule for generating an interleaver address using Equation 4 below. 제 3항에 있어서, 상기 제 1 인터리빙 규칙이 적용되는 N 값은 408, 792, 1560, 3096 및 3864이고, 상기 제 2 인터리빙 규칙이 적용되는 N 값은 2328인 인터리버.4. The interleaver of claim 3, wherein N values to which the first interleaving rule is applied are 408, 792, 1560, 3096, and 3864, and N values to which the second interleaving rule is applied are 2328. 입력되는 패킷의 크기인 N 값에 의해 결정되는 파라미터 값들인 m 및 J 값을 사용하여 인터리버 주소를 생성하는 블록 인터리버를 사용하는 인터리빙 방법에 있어서,An interleaving method using a block interleaver for generating an interleaver address using m and J values, which are parameter values determined by an N value, the size of an input packet, 입력되는 패킷의 크기 N 값이 상기 J 값을 2의 거듭제곱 값으로 하는 값인지, J 값을 2의 거듭제곱 값으로 하지 않는 값인지 판단하는 제 1과정과,A first step of judging whether the size N value of the input packet is a value that makes the J value a power of 2 or a value that does not make the J value a power of 2; 상기 N 값이 상기 J 값을 2의 거듭제곱 값으로 하는 값인 경우 제 1 인터리빙 규칙에 의해 상기 m 및 J 값을 결정하는 제 2과정과,A second step of determining the m and J values by a first interleaving rule when the value of N is a value of the value of J as a power of 2; 상기 제 2과정에서 결정된 m 및 J 값을 사용하여 제 1 인터리빙 규칙에 의해 인터리버 주소를 생성하는 제 3과정과,A third process of generating an interleaver address by a first interleaving rule using m and J values determined in the second process; 상기 N 값이 상기 J 값을 2의 거듭제곱 값으로 하는 값이 아닌 경우 제 2 인터리빙 규칙에 의해 상기 m 및 J 값을 결정하는 제 4과정과,A fourth step of determining the m and J values by a second interleaving rule when the N value is not a value that makes the J value a power of 2; 상기 제 4과정에서 결정된 m 및 J 값을 사용하여 제 2 인터리빙 규칙에 의해 인터리버 주소를 생성하는 제 5과정을 포함하는 인터리빙 방법.And a fifth process of generating an interleaver address by a second interleaving rule using m and J values determined in the fourth process. 제 5항에 있어서, 상기 제 2인터리빙 규칙은 상기 J 값을 2의 거듭제곱 값으로 변환하는 인터리빙 규칙인 인터리빙 방법.6. The method of claim 5 wherein the second interleaving rule is an interleaving rule that converts the J value to a power of two. 제 5항에 있어서,The method of claim 5, 상기 제 3과정에서는 하기의 수학식 5를 사용하여 인터리버 주소를 생성하고, 상기 제 5과정에서는 하기의 수학식 6을 사용하여 인터리버 주소를 생성하는 인터리빙 방법.In the third process, the interleaver address is generated using Equation 5 below, and in the fifth process, the interleaver address is generated using Equation 6 below.
KR1020040019490A 2004-03-22 2004-03-22 Interleaver and interleaving method in telecommunication system KR20050094304A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040019490A KR20050094304A (en) 2004-03-22 2004-03-22 Interleaver and interleaving method in telecommunication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040019490A KR20050094304A (en) 2004-03-22 2004-03-22 Interleaver and interleaving method in telecommunication system

Publications (1)

Publication Number Publication Date
KR20050094304A true KR20050094304A (en) 2005-09-27

Family

ID=37275155

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040019490A KR20050094304A (en) 2004-03-22 2004-03-22 Interleaver and interleaving method in telecommunication system

Country Status (1)

Country Link
KR (1) KR20050094304A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100762134B1 (en) * 2004-10-07 2007-10-02 엘지전자 주식회사 Method of generating read address for block interleaving
US11804926B2 (en) 2021-02-09 2023-10-31 Samsung Electronics Co., Ltd. Method and apparatus for performing block interleaving for data transmission

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100762134B1 (en) * 2004-10-07 2007-10-02 엘지전자 주식회사 Method of generating read address for block interleaving
US11804926B2 (en) 2021-02-09 2023-10-31 Samsung Electronics Co., Ltd. Method and apparatus for performing block interleaving for data transmission

Similar Documents

Publication Publication Date Title
RU2274950C2 (en) Interleaving device and method for communication system
JP3415693B2 (en) Interleaving process
KR960043552A (en) Error Correction Coded Decoding Method and Circuit Using the Method
EP1060580A4 (en) Puncturing device and method for turbo encoder in mobile communication system
US7702970B2 (en) Method and apparatus for deinterleaving interleaved data stream in a communication system
KR100295760B1 (en) Apparatus and method for convolutional decoding in digital system
US4293951A (en) Method and apparatus for encoding/decoding a convolutional code to a periodic convolutional code block
US6182260B1 (en) Channel encoding apparatus using single concatenated encoder
EP1537673A2 (en) Method of interleaving/deinterleaving in a communication system
KR100499467B1 (en) Block interleaving method, and apparatus for the same
KR20050094304A (en) Interleaver and interleaving method in telecommunication system
KR20060121312A (en) Convolutional turbo code interleaver
US6925592B2 (en) Turbo decoder, turbo encoder and radio base station with turbo decoder and turbo encoder
WO2008028419A1 (en) Interleaving/de-interleaving method and system in communication system
US7949062B2 (en) Encoding system using a non-binary turbo code and an encoding method thereof
KR100487366B1 (en) Block interleaving method, and apparatus for the same
KR100346183B1 (en) Output address generator for turbo interleaving and method therefor
KR20040037624A (en) Method and apparatus for deinterleaving an interleaved data stream in communication system
KR100561631B1 (en) Apparatus of calculating the output address in Turbo Interleaver
KR100686013B1 (en) Method of multiplexing transport channels in mobile communications system
US20240045758A1 (en) Method and Chip for Cyclic Code Encoding, Circuit Component, and Electronic Device
KR101365372B1 (en) Method for interleaving packet data of PDCH in mobile communication system
KR100510643B1 (en) Method for interleaving in Mobile Communication System
KR100493094B1 (en) Symbol puncturing method for channel coder/decoder of mobile communication system
RU29816U1 (en) Error-correcting code encoder

Legal Events

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