KR20090059430A - Apparatus and method for processing signal of communication system - Google Patents
Apparatus and method for processing signal of communication system Download PDFInfo
- Publication number
- KR20090059430A KR20090059430A KR1020070126290A KR20070126290A KR20090059430A KR 20090059430 A KR20090059430 A KR 20090059430A KR 1020070126290 A KR1020070126290 A KR 1020070126290A KR 20070126290 A KR20070126290 A KR 20070126290A KR 20090059430 A KR20090059430 A KR 20090059430A
- Authority
- KR
- South Korea
- Prior art keywords
- bits
- bit
- rate matching
- block
- rate
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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/2778—Interleaver 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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/2792—Interleaver wherein interleaving is performed jointly with another technique such as puncturing, multiplexing or routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0009—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
- H04L1/0013—Rate matching, e.g. puncturing or repetition of code symbols
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Description
본 발명은 통신 시스템의 신호 처리 장치 및 방법에 관한 것으로, 특히 통신 시스템의 송신 장치에서의 인코딩과 레이트 매칭 및 인터리빙 방법에 관한 것이다.The present invention relates to a signal processing apparatus and method of a communication system, and more particularly, to an encoding, rate matching and interleaving method in a transmission apparatus of a communication system.
본 발명은 정보통신부 및 정보통신연구진흥원의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2005-S-404-13, 과제명: 3G Evolution 무선전송 기술개발].The present invention is derived from the research conducted as part of the IT growth engine technology development project of the Ministry of Information and Communication and the Ministry of Information and Telecommunications Research and Development. .
이트 매칭은 정보 비트와 제1 및 제2 패리티 비트에 대해 각각 이루어지고, 레이트 매칭 후의 전체 비트 수가 무선 링크를 통해 해당 전송 시간 간격(Transmit Time Interval, TTI) 내에 전송할 수 있는 비트 수와 동일해지도록 정보 비트와 패리티 1 및 2 비트를 조정한다. 이때, 레이트 매칭 후의 전체 비트 수가 해당 전송 시간 간격 내에 전송할 수 있는 비트 수보다 큰 경우에는 천공(Puncturing)이 이루어지며, 반대의 경우에는 반복(Repetition)이 이루어진다.Date matching is made for the information bits and the first and second parity bits, respectively, so that the total number of bits after rate matching is equal to the number of bits that can be transmitted over the wireless link within the corresponding Transmit Time Interval (TTI). Adjust the information bits and the
이와 같은 레이트 매칭 후에는 레이트 매칭된 정보 비트와 제1 및 제2 패리티 비트 스트림이 하나의 비트열로 취합되고, 그 비트열에 대해서 블록 단위의 인 터리빙이 이루어진다. 비트 취합의 한 방법으로, 레이트 매칭된 정보 비트와 제1 및 제2 패리티 비트 스트림의 각 비트가 모두 선택될 때까지 레이트 매칭된 정보 비트와 제1 및 제2 패리티 비트 스트림에 대해서 하나의 비트씩 순서대로 선택하여 하나의 비트열로 취합한다.After such rate matching, the rate matched information bits and the first and second parity bit streams are collected into one bit string, and interleaving in units of blocks is performed on the bit string. As a method of bit aggregation, one bit for the rate matched information bits and the first and second parity bit streams until both the rate matched information bits and each bit of the first and second parity bit streams are selected. Select them in order and combine them into one bit string.
그런데, 레이트 매칭에서 천공이 일어나면, 레이트 매칭 결과 비트가 매 클럭마다 발생하지 않는 경우가 발생하므로, 레이트 매칭이 완료되기 전에는 각 비트 스트림에 대해서 하나의 비트씩 순서대로 선택하여 하나의 비트 스트림으로 취합할 수가 없다.However, when puncturing occurs in rate matching, a bit may not occur every clock as a result of rate matching. Therefore, before rate matching is completed, one bit stream is selected in order for each bit stream and collected into one bit stream. I can't.
이와 같이, 터보 인코딩과 비트 분리, 레이트 매칭, 비트 취합, 그리고 블록 인터리빙이 이루어지기 위해서는 각 단계별 출력을 버퍼에 저장하여 두고 출력이 모두 완료된 후에 그 다음 단계를 처리해야 하므로, 처리 지연 시간이 매우 길어진다. As such, in order to perform turbo encoding, bit separation, rate matching, bit aggregation, and block interleaving, the output of each step must be stored in a buffer, and the next step must be processed after the output is completed. Lose.
본 발명이 해결하고자 하는 기술적 과제는 레이트 매칭과 비트 취합 및 인터리빙에 따른 처리 지연 시간을 줄일 수 있는 통신 시스템의 신호 처리 장치 및 방법을 제공하는 것이다.SUMMARY OF THE INVENTION The present invention has been made in an effort to provide a signal processing apparatus and method of a communication system capable of reducing processing delay time due to rate matching, bit aggregation, and interleaving.
본 발명의 한 실시 예에 따르면, 입력 신호를 처리하는 방법이 제공된다. 이 방법은, 상기 입력 신호를 인코딩하여 정보 비트와 제1 및 제2 패리티 비트로 분리 하는 단계, 상기 정보 비트와 상기 제1 및 제2 패리티 비트를 각각 레이트 매칭하는 단계, 상기 레이트 매칭에 따라 레이트 매칭 결과 비트를 순차적으로 출력하는 단계, 그리고 상기 레이트 매칭이 수행되는 동안 상기 순차적으로 출력되는 레이트 매칭 결과 비트를 비트 스트림으로 취합하는 단계를 포함한다.According to an embodiment of the present invention, a method of processing an input signal is provided. The method includes encoding the input signal and separating the information bits into first and second parity bits, rate matching the information bits and the first and second parity bits, respectively, and rate matching according to the rate matching. Sequentially outputting result bits, and collecting the sequentially output rate matching result bits into a bit stream while the rate matching is performed.
본 발명의 다른 한 실시 예에 따르면, 입력 신호를 처리하는 장치가 제공된다. 이 장치는 인코더, 그리고 레이트 매칭기를 포함한다. 인코더는 상기 입력 신호를 인코딩하여 정보 비트, 제1 및 제2 패리티 비트를 출력한다. 그리고 레이트 매칭기는 상기 정보 비트, 제1 및 제2 패리티 비트를 각각 레이트 매칭하면서 상기 정보 비트, 제1 및 제2 패리티 비트의 레이트 매칭 결과 비트를 비트 스트림으로 취합한다.According to another embodiment of the present invention, an apparatus for processing an input signal is provided. The apparatus includes an encoder and a rate matcher. An encoder encodes the input signal to output information bits, first and second parity bits. The rate matcher collects the rate matching result bits of the information bits, the first and the second parity bits into a bit stream while rate matching the information bits, the first and the second parity bits, respectively.
본 발명의 실시 예에 의하면, 주어진 전송 블록이 다수의 코드 블록으로 구성되는 경우에도 터보 인코더에서 연속적으로 다수의 코드 블록을 인코딩하여 출력할 수가 있다.According to an embodiment of the present invention, even when a given transport block is composed of a plurality of code blocks, the turbo encoder can continuously encode and output a plurality of code blocks.
또한, 본 발명의 실시 예에 의하면, 터보 인코더의 출력과 함께 레이트 매칭과 비트 선택이 동시에 이루어지고, 레이트 매칭에서 천공이 일어나는 경우에도 레이트 매칭과 동시에 비트 취합이 끝나게 되고, 레이트 매칭에서 반복이 일어나는 경우 레이트 매칭과 동시에 비트 취합이 시작되고 비트 취합에서 소정 비트(예를 들면, 블록 인터리버의 크기에 해당하는 비트 수) 이상 모아진 상태에서 블록 인터리빙을 시작할 수 있으므로, 처리 지연 시간을 줄일 수 있다.Further, according to an embodiment of the present invention, rate matching and bit selection are performed simultaneously with the output of the turbo encoder, and even when puncturing occurs in rate matching, bit aggregation ends at the same time as rate matching, and repetition occurs in rate matching. In this case, since the bit aggregation is started at the same time as the rate matching and the predetermined number of bits (for example, the number of bits corresponding to the size of the block interleaver) are collected in the bit aggregation, block interleaving can be started, thereby reducing processing delay time.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and like reference numerals designate like parts throughout the specification.
명세서 및 청구범위 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "모듈", "블록" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Throughout the specification and claims, when a part is said to "include" a certain component, it means that it can further include other components, without excluding other components unless specifically stated otherwise. In addition, the terms “… unit”, “… unit”, “module”, “block”, etc. described in the specification mean a unit that processes at least one function or operation, which is hardware or software or a combination of hardware and software. It can be implemented as.
이제 본 발명의 실시 예에 따른 통신 시스템의 신호 처리 장치 및 방법에 대하여 도면을 참고로 하여 상세하게 설명한다. 이러한 신호 처리 장치는 예컨대, 송신 신호를 출력하는 송신 모듈을 포함하는 기지국 또는 이동국이 될 수 있다.Now, a signal processing apparatus and method of a communication system according to an exemplary embodiment of the present invention will be described in detail with reference to the accompanying drawings. Such a signal processing apparatus may be, for example, a base station or a mobile station including a transmission module for outputting a transmission signal.
도 1은 본 발명의 실시 예에 따른 신호 처리 장치의 개략적인 구성 블록도이고, 도 2는 본 발명의 실시 예에 따른 신호 처리 장치의 동작을 나타낸 흐름도이다.1 is a schematic block diagram illustrating a signal processing apparatus according to an embodiment of the present invention, and FIG. 2 is a flowchart illustrating an operation of the signal processing apparatus according to an embodiment of the present invention.
도 1에 도시한 바와 같이, 신호 처리 장치(100)는 블록 수 계산부(110), 인 터리브 테이블 제어부(120), CRC(Cyclic Redundancy Code) 삽입부(130), 코드 블록 버퍼(140), 터보 인코더(150), 레이트 매칭기(160) 및 블록 인터리버(170)를 포함한다.As illustrated in FIG. 1, the
블록 수 계산부(110)는 인코딩될 데이터에 대한 코드 블록의 개수와 코드 블록의 크기를 계산한다(S210). 이때, 전송 블록의 길이가 6144를 넘는 경우는 필요한 경우 패딩 비트를 추가하면서 동일한 크기, 또는 64 비트의 차이가 나는 두 가지 크기의 다수의 코드 블록으로 분리될 수 있다.The
인터리브 테이블 제어부(120)는 인터리브 테이블(122, 124)을 포함하며, 두 개의 코드 블록의 크기에 대해 QPP(Quadratic Permutation Polynomial) 방식으로 순열 시퀀스를 만들어 인터리브 테이블(122, 124)에 각각 저장하고(S220), 코드 블록 제어부(140)가 데이터를 기록할 때 주소를 제공한다.The interleaved
즉, 인터리브 테이블 제어부(120)는 QPP 방식으로 순열 시퀀스를 만들고, 순열 시퀀스 값을 주소로 하여 데이터를 0부터 차례로 증가시켜 인터리브 테이블(122, 124)에 기록함으로써, 그 인터리브 테이블(122, 124)을 0 번지부터 읽을 때 원래의 순서가 몇 번째로 나가야 할지 나타내도록 하며, 버퍼(142-2, 144-2)에 데이터를 쓸 때는 이 정보, 즉 몇 번째로 나가야 하는지의 정보를 번지로 하여 쓸 수 있도록 인터리브 테이블을 만든다. 이런 방식으로 버퍼(142-2, 144-2)에 저장된 데이터를 0번지부터 차례로 읽어내면 인터리빙된 데이터가 출력된다.That is, the interleaved
CRC 삽입부(130)는 코드 블록 단위로 입력되는 인코딩될 데이터에 대해 순환 중복 코드를 계산하고, 각 코드 블록의 순환 중복 코드를 누적하여 하나의 전송 블 록의 마지막 코드 블록의 CRC 부분에 누적된 순환 중복 코드를 삽입한다(S230).The
코드 블록 제어부(140)는 홀수 코드 블록 버퍼(142)와 짝수 코드 블록 버퍼(144)를 포함하며, 홀수 번째 코드 블록의 데이터와 짝수 번째 코드 블록의 데이터를 홀수 코드 블록 버퍼(142)와 짝수 코드 블록 버퍼(144)에 분리하여 저장한다(S240).The code
이때, 홀수 코드 블록 버퍼(142)와 짝수 코드 블록 버퍼(144)는 각각 입력되는 순서로 데이터가 저장되는 버퍼(142-1, 144-1)와 인터리빙에 의해 변경된 순서로 데이터가 저장되는 버퍼(142-2, 144-2)를 포함한다. 따라서, 코드 블록 제어부(140)는 CRC 삽입부(130)로부터 출력되는 코드 블록의 데이터를 순서대로 해당 버퍼(142-1, 144-1)에 기록하고, 이와 동시에 CRC 삽입부(130)로부터 출력되는 코드 블록의 데이터를 인터리브 테이블 제어부(120)에서 제공하는 주소에 따라 해당 버퍼(142-2, 144-2)에 기록한다. 아래에서는 버퍼(142-1, 144-1)에 기록된 데이터를 원 데이터라 하고, 버퍼(142-2, 144-2)에 기록된 데이터를 인터리빙된 데이터라 한다.At this time, the odd
터보 인코더(150)는 원 데이터와 인터리빙된 데이터를 동시에 터보 인코딩하며(S250), 원 데이터로부터 정보 비트와 제1 패리티 비트를 생성하여 출력하고, 인터리빙된 데이터로부터 제2 패리티 비트를 생성하여 출력한다. 이때, 홀수 코드 블록 버퍼(142)에 하나의 코드 블록에 대한 원 데이터와 인터리빙된 데이터가 저장된 후 터보 인코더(150)에서 그 데이터를 읽고 터보 인코딩하는 동안 코드 블록 제어부(140)는 다음 순서의 코드 블록의 원 데이터와 인터리빙 데이터를 버퍼(144-1, 144-2)에 기록한다. 마찬가지로, 짝수 코드 블록 버퍼(144)에 하나의 코드 블록에 대한 원 데이터와 인터리빙된 데이터가 저장된 후 터보 인코더(150)에서 그 데이터를 읽고 터보 인코딩하는 동안 코드 블록 제어부(140)는 다음 순서의 코드 블록의 원 데이터와 인터리빙된 데이터를 버퍼(142-1, 142-2)에 데이터를 기록한다.The
이렇게 함으로써, 터보 인코더(150)는 홀수 코드 블록 버퍼(142)와 짝수 코드 블록 버퍼(144)에 기록된 데이터를 연속으로 읽을 수 있으며, 이로 인해 코드 블록이 바뀌어도 인코딩된 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)을 연속적으로 출력할 수가 있다.By doing so, the
레이트 매칭기(160)는 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)을 미리 설정된 레이트 매칭 파라미터를 사용하여 일부 비트를 천공하거나 일부 비트를 반복하는 레이트 매칭을 수행한다. 이때, 물리 계층에서 전송할 수 있는 비트 수가 이고, 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)의 비트 수가 각각 , 및 라고 할 때, 레이트 매칭기(160)는 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)의 비트 수를 합한 값()이 보다 크면, 비트 천공을 수행하며, 반대의 경우에는 비트 반복을 수행하여, 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)의 비트 수를 조정한다. 즉, 레이트 매칭기(160)는 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)의 레이트 매칭 결과 비트의 수가 각각 , , 라 하면, 레이트 매칭기(160)는 각 비트 스트림(S, P1, P2)의 레이트 매칭 결과 비트의 합()이 와 같아지도록 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)의 비트 수를 조정한다.The rate matcher 160 performs rate matching to puncture some bits or repeat some bits using the information bit, the first and second parity bit streams S, P1, and P2 using preset rate matching parameters. At this time, the number of bits that can be transmitted in the physical layer And the number of bits of the information bits and the first and second parity bit streams S, P1, and P2, respectively. , And In this case, the rate matcher 160 sums the number of bits of the information bits and the first and second parity bit streams S, P1, and P2 ( )this If larger, bit puncture is performed, otherwise bit repetition is performed to adjust the number of bits of the information bits and the first and second parity bit streams (S, P1, P2). That is, the rate matcher 160 determines the number of information bit and rate matching result bits of the first and second parity bit streams S, P1, and P2, respectively. , , For example, the rate matcher 160 may add the sum of the rate matching result bits of each bit stream (S, P1, P2). )this The number of bits of the information bits and the first and second parity bit streams (S, P1, P2) are adjusted to be equal to.
그리고 레이트 매칭기(160)는 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)의 레이트 매칭 결과 비트를 하나의 최종 비트 스트림으로 취합하여 블록 인터리버(170)로 출력한다.The rate matcher 160 collects the information bits and the rate matching result bits of the first and second parity bit streams S, P1 and P2 into one final bit stream, and outputs the result bits to the
마지막으로, 블록 인터리버(170)는 최종 비트 스트림을 블록 인터리빙하여 변조기로 출력한다. 이때, 본 발명의 실시 예에 따른 블록 인터리버(170)는 최종 비트 스트림으로 비트 취합을 완료하기 전에 블록 인터리빙을 시작한다.Finally, the
도 3은 본 발명의 실시 예에 따른 레이트 매칭기 및 비트 취합부의 세부 구성 블록도이고, 도 4는 레이트 매칭 결과 비트 스트림의 각 비트가 저장되는 메모리를 순차적으로 읽어내어 출력 메모리에 주소를 기록하는 상태도이고, 도 5는 비트 취합부의 출력 메모리를 나타낸 도면이며, 도 6은 도 4에 도시된 출력 메모리에 주소를 기록하는 방법을 나타낸 도면이다.3 is a detailed block diagram of a rate matcher and a bit collector according to an exemplary embodiment of the present invention, and FIG. 4 sequentially reads a memory in which each bit of a bit stream is stored, and writes an address to an output memory. 5 is a diagram illustrating an output memory of a bit collecting unit, and FIG. 6 is a diagram illustrating a method of writing an address in an output memory shown in FIG. 4.
도 3에 도시한 바와 같이, 레이트 매칭기(160)는 입력 버퍼(161), 데이터율 조정부(162), 출력 버퍼(163), 비트 취합부(164) 및 출력 메모리(165)를 포함한다.As shown in FIG. 3, the
입력 버퍼(161)는 제1 내지 제3 버퍼(161-1, 161-2, 161-3)를 포함하며, 제1 내지 제3 버퍼(161-1, 161-2, 161-3)에는 각각 정보 비트 스트림과 제1 및 제2 패리티 비트 스트림(S, P1, P2)이 저장된다. The
데이터율 조정부(162)는 제1 내지 제3 매칭부(162-1, 162-2, 162-3)를 포함 하며, 제1 내지 제3 매핑부(162-1, 162-2, 162-3)는 각각 정보 비트와 제1 및 제2 패리티 비트 스트림(S, P1, P2)에 대해 레이트 매칭을 수행한 후 레이트 매칭 결과 비트 스트림(S', P1', P2')을 각각 대응하는 출력 버퍼(163)의 제1 내지 제3 버퍼(163-1, 163-2, 163-3)에 기록한다. 이때, 제1 내지 제3 매칭부(162-1, 162-2, 162-3)는 각각 레이트 매칭 결과 비트 스트림(S', P1', P2')의 각 비트들이 발생될 때마다 해당 비트를 대응하는 제1 내지 제3 버퍼(163-1, 163-2, 163-3) 중 하나에 기록한다.The data
출력 버퍼(163)는 제1 내지 제3 버퍼(163-1, 163-2, 163-3)를 포함하며, 제1 내지 제3 버퍼(163-1, 163-2, 163-3)에는 각각 정보 비트 스트림과 제1 및 제2 패리티 비트 스트림(S, P1, P2)의 레이트 매칭 결과 비트 스트림(S', P1', P2')이 저장된다.The
비트 취합부(164)는 레이트 매칭 결과 비트 스트림(S', P1', P2')을 하나의 최종 비트 스트림으로 취합하여 출력 메모리(165)에 저장한다. 즉, 도 4에 도시한 바와 같이, 비트 취합부(164)는 해당 버퍼(163-1, 163-2, 163-3)에 데이터가 있으면 선택하여 읽되, 읽어낼 데이터가 있는 경우 쉬지 않고 데이터를 처리한다. 이때, 데이터 선택에 있어서는 순환 우선 순위가 적용된다.이때, 천공과 반복에 따라서 레이트 매칭 결과 비트 스트림(S', P1', P2')의 각 비트가 발생되는 속도가 다르게 된다. 레이트 매칭 시 일부 비트를 반복하는 경우에는 매 클럭마다 1 비트가 발생하지만, 레이트 매칭 시 일부 비트를 천공하는 경우에는 소정 주기마다 한 비트가 발생한다.The
따라서, 레이트 매칭 결과에 따른 레이트 매칭 결과 비트 스트림(S', P1', P2')의 각 비트가 발생될 때마다 비트 취합부(164)는 이를 해당 버퍼(163-1, 163-2, 163-3)에서 읽고, 이를 출력 메모리(165)에 기록한다. 레이트 매칭 결과 비트가 발생하는 상황에 따라 해당 버퍼(163-1, 163-2, 163-3)를 읽을 순서는 바뀔 수 있으나 각 버퍼(163-1, 163-2, 163-3)별 읽기 번지는 각 버퍼에 대해서 순차적으로 증가한다.Therefore, each time a bit of the rate matching result bit streams S ', P1', and P2 'is generated according to the rate matching result, the
도 5에 도시한 바와 같이, 본 발명의 실시 예에 따른 출력 메모리(165)는 레이트 매칭 결과 비트 스트림(S', P1', P2') 각각에 대응하는 메모리(165-1, 165-2, 165-3)를 가지고 있으며, 비트 취합부(164)는 해당 버퍼(163-1, 163-2, 163-3)에서 데이터를 읽을 때마다 메모리(165-1, 165-2, 165-3)에 주소를 기록하면서 그 다음에 쓸 주소를 미리 계산한다. As illustrated in FIG. 5, the
이때, 메모리(165-1, 165-2, 165-3)에 그 다음 쓸 주소를 미리 계산하는 방식은 다음과 같이 이루어질 수 있다. 단, 아래의 설명에서 비트의 순서는 0부터 증가하는 것으로 정의한다.In this case, a method of precomputing the next address to be written into the memories 165-1, 165-2, and 165-3 may be performed as follows. However, in the following description, the order of bits is defined as increasing from zero.
정보 비트의 레이트 매칭 결과 비트 스트림(S')의 경우, 다음에 기록할 비트의 해당 비트 스트림(S')에서의 순서가 제1 패리티 비트의 레이트 매칭 결과 비트 스트림(P1')의 최종 비트 수보다 작거나 같으면 3을 증가시키고, 다음에 기록할 비트의 해당 비트 스트림(S')에서의 순서가 제2 패리티 비트의 레이트 매칭 결과 비트 스트림(P2')의 최종 비트 수보다 작거나 같으면 2를 증가시키고, 그렇지 않으면 1을 증가시킨다.In the case of the rate matching result bit stream S 'of the information bits, the order in the corresponding bit stream S' of the next bit to be written is the number of the last bits of the rate matching result bit stream P1 'of the first parity bit. If it is less than or equal to 3, increase 3, and if the order in the corresponding bit stream S 'of the next bit to be written is less than or equal to the last bit number of the bit stream P2' of the rate matching result of the second parity bit, Increase it, otherwise increase 1.
제1 패리티 비트의 레이트 매칭 결과 비트 스트림(P1')의 경우, 다음에 기록할 비트의 해당 비트 스트림(P1')에서의 순서가 정보 비트의 레이트 매칭 결과 비트(S')의 최종 비트 수보다 작으면 3을 증가시키고, 그렇지 않으면 2를 증가시킨다.In the case of the rate matching result bit stream P1 'of the first parity bit, the order in the corresponding bit stream P1' of the next bit to be written is greater than the last bit number of the rate matching result bit S 'of the information bits. If small, increase 3; otherwise, increase 2.
마지막으로, 제2 패리티 비트의 레이트 매칭 결과 비트(P2)의 경우, 다음에 기록할 비트의 해당 비트 스트림(P2')에서의 순서가 정보 비트의 레이트 매칭 결과 비트(S')의 최종 비트 수보다 작으면 3을 증가시키고, 현재의 비트 순서가 제1 패리티 비트의 레이트 매칭 결과 비트 스트림(P1')의 최종 비트 수보다 작거나 같으면 2를 증가시키며, 그렇지 않으면 1을 증가시킨다.Finally, in the case of the rate matching result bit P2 of the second parity bit, the order in the corresponding bit stream P2 'of the next bit to be written is the last bit number of the rate matching result bit S' of the information bits. If smaller, it is increased by 3. If the current bit order is less than or equal to the last number of bits of the bit stream P1 'as a result of rate matching of the first parity bit, it is increased by two, otherwise it is increased by one.
요약하면, 제1 내지 제3 버퍼(163-1, 163-2, 163-3)에 비트가 모두 있는 구간에서는 주소가 3씩 증가하게 되고, 자신과 다른 하나의 스트림의 비트만 있는 구간에서는 주소가 2씩 증가하게 되며, 자신의 비트만 있는 경우에는 주소가 1씩 증가하게 된다.In summary, the address is increased by 3 in the period in which the first to third buffers 163-1, 163-2, and 163-3 have all the bits, and the address in the period in which only the bits of one stream different from itself are present. Is increased by 2, and if there is only its own bit, the address is increased by 1.
예를 들어, 도 5와 같이 정보 비트의 레이트 매칭 결과 비트 스트림(S'), 제2 패리티 비트의 레이트 매칭 결과 비트 스트림(P2') 및 제1 패리티 비트의 레이트 매칭 결과 비트 스트림(P1') 순으로 비트 취합이 이루어지고, 레이트 매칭 결과 비트 스트림(S', P1', P2')의 비트 수(, , )가 각각 100, 10 및 10 비트라고 가정하면, 메모리(165-1, 165-2, 165-3)에는 도 6과 같이 주소가 기록될 수 있다.For example, as shown in FIG. 5, the rate matching result bit stream S 'of the information bits, the rate matching result bit stream P2' of the second parity bits, and the rate matching result bit stream P1 'of the first parity bits. The bit aggregation is performed in order, and the number of bits of the rate matching result bit streams S ', P1' and P2 '( , , A) are 100, 10, and 10 bits, respectively, and an address may be recorded in the memories 165-1, 165-2, and 165-3 as shown in FIG. 6.
그리고 출력 메모리(165)의 각 메모리(165-1, 165-2, 165-3)에 기록된 주소에 따라 데이터를 읽으면 결과적으로 하나의 최종 비트 스트림이 된다. 한편, 도 5에서는 설명의 편의상 각 레이트 매칭 결과 비트 스트림(S', P1', P2')에 따라서 별도의 메모리(165-1, 165-2, 165-3)가 사용되는 것으로 도시하였지만, 실제는 하나의 메모리이며, 한 번에 한 비트만 쓰고 읽을 수 있는 이중 포트 메모리이다.When data is read according to addresses recorded in the memories 165-1, 165-2, and 165-3 of the
이와 같이, 본 발명의 실시 예에 따른 비트 취합부(164)는 레이트 매칭 결과 비트 스트림(S', P1', P2')별로 출력 메모리(165)에의 쓰기 번지를 별도로 관리하고, 각 레이트 매칭 결과 비트 스트림(S', P1', P2')의 비트가 채워질 위치를 고려하여 미리 계산된 방법으로 각 레이트 매칭 결과 비트 스트림(S', P1', P2')별로 쓰기 주소를 증가시킴으로써, 비트 취합을 수행한다. 이렇게 하면, 레이트 매칭 시 천공을 수행하여도 레이트 매칭과 거의 동시에 비트 취합을 수행할 수 있다.As described above, the
다음으로, 본 발명의 실시 예에 따른 블록 인터리버(170)의 시작 시점을 설정하는 방법에 대해 도 7을 참고로 하여 자세하게 설명한다.Next, a method of setting a start time of the
도 7은 본 발명의 실시 예에 따른 각 레이트 매칭 결과 스트림의 최종 비트 수와 블록 인터리버의 시작 시점과의 관계 나타낸 도면이다. 도 7에서, y 축은 레이트 매칭 결과 발생되는 레이트 매칭 결과 스트림(S', P1', P2')의 비트 수, 또는 블록 인터리빙에 의해 소모되는 레이트 매칭 결과 스트림(S', P1', P2')의 비트 수를 나타내고, x 축은 시간을 나타낸다.7 is a diagram illustrating a relationship between a final number of bits of each rate matching result stream and a start time of a block interleaver according to an embodiment of the present invention. In FIG. 7, the y-axis denotes the number of bits of the rate matching result streams S ', P1' and P2 'that are generated as a result of rate matching, or the rate matching result streams S', P1 'and P2' consumed by block interleaving. Represents the number of bits of x, and the x axis represents time.
도 7에 도시한 바와 같이, 레이트 매칭 결과 스트림(S', P1', P2')의 각 비 트가 발생되는 비율은 대략적으로 기울기()로 표현될 수 있다. As shown in FIG. 7, the rate at which each bit of the rate matching result streams S ', P1', and P2 'is generated is approximately inclined ( Can be expressed as
본 발명의 실시 예에 따른 비트 취합부(164)는 레이트 매칭 결과 스트림(S', P1', P2')의 각 비트가 발생될 때마다 해당 비트를 취합하므로, 취합되는 레이트 매칭 결과 스트림(S', P1', P2')의 각 비트의 양도 근사적으로 기울기()에 따라 증가하게 되며, 레이트 매칭이 끝나는 시점과 비트 취합이 끝나는 시점도 거의 일치한다.Since the
이때, 본 발명의 실시 예에서는 천공이나 반복의 여부와 천공의 경우 전송 할 전체 비트 수와 전송할 최종 레이트 매칭 결과 스트림(P2')의 비트 수에 따라서 블록 인터리버(도 1의 170)의 시작 시점이 결정된다.At this time, according to an embodiment of the present invention, the start time of the block interleaver (170 of FIG. 1) is determined according to whether or not to puncture or iterate and in the case of puncturing, the total number of bits to be transmitted and the number of bits of the final rate matching result stream P2 'to be transmitted. Is determined.
예를 들어, 블록 인터리버(도 1의 170)의 블록 크기가 288로, 최대 27000 비트의 전송 블록의 크기에 비해 매우 작은 값으로 가정하여 각 288비트 블록 내부에서 각 비트들이 순차적으로 읽혀지지 않고 순서가 바뀌는 것을 무시하면, 블록 인터리버(도 1의 170)에서 레이트 매칭 결과 스트림(S', P1', P2')의 각 비트를 소모하는 비율은 1/3로 볼 수 있다. 만약, 블록 인터리버(도 1의 170)가 t1 시점에서 블록 인터리빙을 시작하면, t2 시간이 되었을 때 블록 인터리빙에 필요한 제2 패리티 비트의 레이트 매칭 결과 스트림(P2')의 비트가 부족한 상황이 발생한다. 도 7을 보면, 블록 인터리빙에 필요한 데이터가 소진되는 상황을 회피하면서 블록 인터리빙을 시작할 수 있는 시점은 t3 시점이 되는데, 이 시점은 수학식 1과 같이 표현 된다.For example, assuming that the block size of the block interleaver (170 in FIG. 1) is 288, which is a very small value compared to the size of a transport block of up to 27000 bits, each bit is not sequentially read in each 288-bit block. Neglecting to change, the ratio of consuming each bit of the rate matching result streams S ', P1' and P2 'in the block interleaver (170 in FIG. 1) can be viewed as 1/3. If the block interleaver (170 of FIG. 1) starts block interleaving at time t1, a situation in which a bit of the rate matching result stream P2 'of the second parity bit required for block interleaving occurs at time t2 is insufficient. . Referring to FIG. 7, a time point at which block interleaving can be started while avoiding a situation in which data required for block interleaving is exhausted is time t3, which is represented by
수학식 1에서, 는 정보 비트, 제1 및 제2 패리티 비트의 레이트 매칭 결과 비트 중 가장 작은 비트 수를 의미한다. 이때, 도 7에서는 제1 및 제2 패리티 비트 스트림의 레이트 매칭 결과 비트 수가 서로 동일한 것으로 도시하였으므로, 수학식 1에서 대신 을 사용할 수도 있다. 일반적으로, 는 과 같거나 1만큼 크다. 즉, 레이트 매칭 시 천공을 수행하는 경우, 블록 인터리버(도 1의 170)는 수학식 1의 조건을 만족하면서 메모리(165-1, 165-2, 165-3)에 블록 인터리버(도 1의 170)의 블록 크기에 해당하는 비트의 수(예를 들면, 288 비트)가 모였을 때 블록 인터리빙을 시작한다.In
한편, 레이트 매칭 시 반복을 수행하는 경우에는 t2 시점과 같이 블록 인터리빙에 필요한 비트가 부족한 상황이 발생하지 않으므로, 블록 인터리버(도 1의 170)는 메모리(165-1, 165-2, 165-3)에 블록 인터리버(도 1의 170)의 블록 크기에 해당하는 비트의 수가 모아지면 블록 인터리빙을 시작한다.On the other hand, in the case of repetition during rate matching, a situation in which a bit necessary for block interleaving does not occur as at time t2 occurs, so that the
본 발명의 실시 예는 이상에서 설명한 장치 및/또는 방법을 통해서만 구현되는 것은 아니며, 본 발명의 실시 예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시 예의 기재로부터 본 발명이 속하는 기술 분야의 전문가라면 쉽게 구현할 수 있는 것이다.An embodiment of the present invention is not implemented only through the above-described apparatus and / or method, but may be implemented through a program for realizing a function corresponding to the configuration of the embodiment of the present invention or a recording medium on which the program is recorded. Such an implementation can be easily implemented by those skilled in the art to which the present invention pertains based on the description of the above-described embodiments.
이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리 범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리 범위에 속하는 것이다.Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements of those skilled in the art using the basic concepts of the present invention defined in the following claims are also provided. It belongs to the scope of rights.
도 1은 본 발명의 실시 예에 따른 신호 처리 장치의 개략적인 구성 블록도이고,1 is a schematic structural block diagram of a signal processing apparatus according to an embodiment of the present invention;
도 2는 본 발명의 실시 예에 따른 신호 처리 장치의 동작을 나타낸 흐름도이고,2 is a flowchart illustrating an operation of a signal processing apparatus according to an exemplary embodiment of the present invention.
도 3은 본 발명의 실시 예에 따른 레이트 매칭기 및 비트 취합부의 세부 구성 블록도이고, 3 is a detailed block diagram of a rate matcher and a bit collector according to an exemplary embodiment of the present invention.
도 4는 레이트 매칭 결과 비트 스트림의 각 비트가 저장되는 메모리를 순차적으로 읽어내어 출력 메모리에 주소를 기록하는 상태도이고, 4 is a state diagram of sequentially reading a memory storing each bit of a bit matching result bit stream and writing an address to an output memory;
도 5는 비트 취합부의 출력 메모리를 나타낸 도면이고, 5 is a diagram illustrating an output memory of a bit collecting unit;
도 6은 도 4에 도시된 출력 메모리에 주소를 기록하는 방법을 나타낸 도면이다.FIG. 6 is a diagram illustrating a method of writing an address in an output memory shown in FIG. 4.
도 7은 본 발명의 실시 예에 따른 각 레이트 매칭 결과 스트림의 최종 비트 수와 블록 인터리버의 시작 시점과의 관계 나타낸 도면이다.7 is a diagram illustrating a relationship between a final number of bits of each rate matching result stream and a start time of a block interleaver according to an embodiment of the present invention.
Claims (14)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070126290A KR20090059430A (en) | 2007-12-06 | 2007-12-06 | Apparatus and method for processing signal of communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070126290A KR20090059430A (en) | 2007-12-06 | 2007-12-06 | Apparatus and method for processing signal of communication system |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20090059430A true KR20090059430A (en) | 2009-06-11 |
Family
ID=40989541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070126290A KR20090059430A (en) | 2007-12-06 | 2007-12-06 | Apparatus and method for processing signal of communication system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20090059430A (en) |
-
2007
- 2007-12-06 KR KR1020070126290A patent/KR20090059430A/en not_active IP Right Cessation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1045521B1 (en) | Rate matching and channel interleaving for a communications system | |
JP5499366B2 (en) | Method for assigning a redundancy version to a circular buffer and apparatus comprising a circular buffer | |
CN101836387B (en) | Computationally efficient convolutional coding with rate-matching | |
JP3958745B2 (en) | Communication system interleaving apparatus and method | |
CN101090305B (en) | Radio physical layer channel code chain processing method | |
US20020007474A1 (en) | Turbo-code decoding unit and turbo-code encoding/decoding unit | |
WO2007075106A1 (en) | Fast low-density parity-check code encoder | |
KR101269901B1 (en) | Data derate matcher capable of providing harq and method thereof | |
KR20100071490A (en) | Method and apparatus for de-rata matching | |
US7073012B2 (en) | System and method for interleaving data in a communications device | |
JP2009246474A (en) | Turbo decoder | |
KR20090059430A (en) | Apparatus and method for processing signal of communication system | |
CN110741559A (en) | Polarization encoder, communication unit, integrated circuit and method thereof | |
CN111900999B (en) | High-performance polarization coding method and coder for satellite discontinuous communication | |
WO2008028419A1 (en) | Interleaving/de-interleaving method and system in communication system | |
JPH09261081A (en) | De-punctured circuit | |
KR100725931B1 (en) | Hybrid trace back apparatus and high-speed viterbi decoding system using it | |
WO2011057887A1 (en) | Improved harq | |
CN113726476A (en) | Channel interleaving processing method and processing module | |
US8510609B2 (en) | Apparatus and method for rate dematching in a communication system | |
CN105577196A (en) | Turbo code data interleaving method and interleaver based on broadband OFDM power line communication system | |
CN116346143B (en) | Interleaving or de-interleaving method for Lte convolutional code, device, communication chip and device thereof | |
JP2002271209A (en) | Turbo encoder and turbo decoder | |
CN101373977A (en) | Apparatus and method for removing interleave of parallel maximum posteriori probability decoding interleave | |
JP3854882B2 (en) | Interleaving apparatus and interleaving method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
J201 | Request for trial against refusal decision | ||
AMND | Amendment | ||
B601 | Maintenance of original decision after re-examination before a trial | ||
E801 | Decision on dismissal of amendment | ||
J301 | Trial decision |
Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20091109 Effective date: 20101019 Free format text: TRIAL NUMBER: 2009101010240; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20091109 Effective date: 20101019 |
|
S901 | Examination by remand of revocation | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
S601 | Decision to reject again after remand of revocation |