KR20090059430A - Apparatus and method for processing signal of communication system - Google Patents

Apparatus and method for processing signal of communication system Download PDF

Info

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
Application number
KR1020070126290A
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 KR1020070126290A priority Critical patent/KR20090059430A/en
Publication of KR20090059430A publication Critical patent/KR20090059430A/en

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/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/2792Interleaver wherein interleaving is performed jointly with another technique such as puncturing, multiplexing or routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • H04L1/0013Rate 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

An apparatus and a method for processing a signal are provided to consecutively encode a plurality of code blocks by collecting a rate matching result bit of an information bit and a parity bit into a bit stream. An encoder(150) encodes an input signal, and outputs an information bit, a first parity bit, and a second parity bit. A rate matching device(160) collects a rate matching result bit of the information bit, the first parity bit, and the second parity bit into a bit stream while rate-matching the information bit, the first parity bit, and the second parity bit. A block interleaver(170) block-interleaves the bit stream. A collecting period and a block interleaving period are overlapped.

Description

통신 시스템의 신호 처리 장치 및 그의 신호 처리 방법{APPARATUS AND METHOD FOR PROCESSING SIGNAL OF COMMUNICATION SYSTEM}Signal processing apparatus of communication system and signal processing method thereof {APPARATUS AND METHOD FOR PROCESSING SIGNAL OF COMMUNICATION SYSTEM}

본 발명은 통신 시스템의 신호 처리 장치 및 방법에 관한 것으로, 특히 통신 시스템의 송신 장치에서의 인코딩과 레이트 매칭 및 인터리빙 방법에 관한 것이다.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 parity 1 and 2 bits. In this case, puncturing is performed when the total number of bits after rate matching is larger than the number of bits that can be transmitted within the corresponding transmission time interval, and in the opposite case, repetition is performed.

이와 같은 레이트 매칭 후에는 레이트 매칭된 정보 비트와 제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 signal processing apparatus 100 may include a block number calculator 110, an interleaved table controller 120, a cyclic redundancy code (CRC) insertion unit 130, and a code block buffer 140. , Turbo encoder 150, rate matcher 160, and block interleaver 170.

블록 수 계산부(110)는 인코딩될 데이터에 대한 코드 블록의 개수와 코드 블록의 크기를 계산한다(S210). 이때, 전송 블록의 길이가 6144를 넘는 경우는 필요한 경우 패딩 비트를 추가하면서 동일한 크기, 또는 64 비트의 차이가 나는 두 가지 크기의 다수의 코드 블록으로 분리될 수 있다.The block number calculator 110 calculates the number of code blocks and the size of the code blocks for the data to be encoded (S210). In this case, when the length of the transport block exceeds 6144, a padding bit may be added, if necessary, and separated into a plurality of code blocks having two sizes having the same size or a difference of 64 bits.

인터리브 테이블 제어부(120)는 인터리브 테이블(122, 124)을 포함하며, 두 개의 코드 블록의 크기에 대해 QPP(Quadratic Permutation Polynomial) 방식으로 순열 시퀀스를 만들어 인터리브 테이블(122, 124)에 각각 저장하고(S220), 코드 블록 제어부(140)가 데이터를 기록할 때 주소를 제공한다.The interleaved table control unit 120 includes interleaved tables 122 and 124, and generates permutation sequences in a QPP (Quadratic Permutation Polynomial) method for two code blocks, and stores them in the interleaved tables 122 and 124, respectively ( S220, the code block control unit 140 provides an address when writing data.

즉, 인터리브 테이블 제어부(120)는 QPP 방식으로 순열 시퀀스를 만들고, 순열 시퀀스 값을 주소로 하여 데이터를 0부터 차례로 증가시켜 인터리브 테이블(122, 124)에 기록함으로써, 그 인터리브 테이블(122, 124)을 0 번지부터 읽을 때 원래의 순서가 몇 번째로 나가야 할지 나타내도록 하며, 버퍼(142-2, 144-2)에 데이터를 쓸 때는 이 정보, 즉 몇 번째로 나가야 하는지의 정보를 번지로 하여 쓸 수 있도록 인터리브 테이블을 만든다. 이런 방식으로 버퍼(142-2, 144-2)에 저장된 데이터를 0번지부터 차례로 읽어내면 인터리빙된 데이터가 출력된다.That is, the interleaved table control unit 120 creates a permutation sequence by the QPP method, increments data from 0 in order using the permutation sequence value as an address, and writes the interleaved table 122 and 124, thereby recording the interleaved table 122 and 124. When reading from 0, the number of times the original order should go out is indicated.When writing data to the buffers 142-2 and 144-2, write this information, that is, the information of how many times to exit. Create an interleaved table so that In this manner, when data stored in the buffers 142-2 and 144-2 are sequentially read from address 0, interleaved data is output.

CRC 삽입부(130)는 코드 블록 단위로 입력되는 인코딩될 데이터에 대해 순환 중복 코드를 계산하고, 각 코드 블록의 순환 중복 코드를 누적하여 하나의 전송 블 록의 마지막 코드 블록의 CRC 부분에 누적된 순환 중복 코드를 삽입한다(S230).The CRC inserting unit 130 calculates a cyclic redundancy code for the data to be encoded that is input in code block units, accumulates the cyclic redundancy code of each code block, and accumulates the CRC portion of the last code block of one transmission block. A cyclic duplicate code is inserted (S230).

코드 블록 제어부(140)는 홀수 코드 블록 버퍼(142)와 짝수 코드 블록 버퍼(144)를 포함하며, 홀수 번째 코드 블록의 데이터와 짝수 번째 코드 블록의 데이터를 홀수 코드 블록 버퍼(142)와 짝수 코드 블록 버퍼(144)에 분리하여 저장한다(S240).The code block control unit 140 includes an odd code block buffer 142 and an even code block buffer 144, and transmits data of an odd code block and data of an even code block to an odd code block buffer 142 and an even code. The block buffer 144 is stored separately (S240).

이때, 홀수 코드 블록 버퍼(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 code block buffer 142 and the even code block buffer 144 are buffers 142-1 and 144-1 in which data is stored in an input order, respectively, and buffers in which data is stored in an order changed by interleaving ( 142-2, 144-2). Therefore, the code block control unit 140 writes the data of the code block output from the CRC insertion unit 130 in the buffers 142-1 and 144-1 in order, and simultaneously outputs the data from the CRC insertion unit 130. The data of the code block is written to the buffers 142-2 and 144-2 according to the address provided by the interleaved table controller 120. In the following, the data recorded in the buffers 142-1 and 144-1 is referred to as raw data, and the data recorded in the buffers 142-2 and 144-2 is referred to as interleaved data.

터보 인코더(150)는 원 데이터와 인터리빙된 데이터를 동시에 터보 인코딩하며(S250), 원 데이터로부터 정보 비트와 제1 패리티 비트를 생성하여 출력하고, 인터리빙된 데이터로부터 제2 패리티 비트를 생성하여 출력한다. 이때, 홀수 코드 블록 버퍼(142)에 하나의 코드 블록에 대한 원 데이터와 인터리빙된 데이터가 저장된 후 터보 인코더(150)에서 그 데이터를 읽고 터보 인코딩하는 동안 코드 블록 제어부(140)는 다음 순서의 코드 블록의 원 데이터와 인터리빙 데이터를 버퍼(144-1, 144-2)에 기록한다. 마찬가지로, 짝수 코드 블록 버퍼(144)에 하나의 코드 블록에 대한 원 데이터와 인터리빙된 데이터가 저장된 후 터보 인코더(150)에서 그 데이터를 읽고 터보 인코딩하는 동안 코드 블록 제어부(140)는 다음 순서의 코드 블록의 원 데이터와 인터리빙된 데이터를 버퍼(142-1, 142-2)에 데이터를 기록한다.The turbo encoder 150 simultaneously encodes the original data and the interleaved data (S250), generates and outputs an information bit and a first parity bit from the raw data, and generates and outputs a second parity bit from the interleaved data. . At this time, the original block and the interleaved data for one code block are stored in the odd code block buffer 142, and the code block controller 140 reads the data in the turbo encoder 150 and turbo encodes the code in the following order. The original data and the interleaving data of the block are written to the buffers 144-1 and 144-2. Similarly, the code block control unit 140 stores the code in the following order while the original data and the interleaved data for one code block are stored in the even code block buffer 144 and the turbo encoder 150 reads and turbo encodes the data. Data interleaved with the original data of the block is written to the buffers 142-1 and 142-2.

이렇게 함으로써, 터보 인코더(150)는 홀수 코드 블록 버퍼(142)와 짝수 코드 블록 버퍼(144)에 기록된 데이터를 연속으로 읽을 수 있으며, 이로 인해 코드 블록이 바뀌어도 인코딩된 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)을 연속적으로 출력할 수가 있다.By doing so, the turbo encoder 150 can continuously read the data recorded in the odd code block buffer 142 and the even code block buffer 144, which causes the encoded information bits, first and first to be changed even if the code block is changed. Two parity bit streams S, P1, and P2 can be output continuously.

레이트 매칭기(160)는 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)을 미리 설정된 레이트 매칭 파라미터를 사용하여 일부 비트를 천공하거나 일부 비트를 반복하는 레이트 매칭을 수행한다. 이때, 물리 계층에서 전송할 수 있는 비트 수가

Figure 112007087947398-PAT00001
이고, 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)의 비트 수가 각각
Figure 112007087947398-PAT00002
,
Figure 112007087947398-PAT00003
Figure 112007087947398-PAT00004
라고 할 때, 레이트 매칭기(160)는 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)의 비트 수를 합한 값(
Figure 112007087947398-PAT00005
)이
Figure 112007087947398-PAT00006
보다 크면, 비트 천공을 수행하며, 반대의 경우에는 비트 반복을 수행하여, 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)의 비트 수를 조정한다. 즉, 레이트 매칭기(160)는 정보 비트, 제1 및 제2 패리티 비트 스트림(S, P1, P2)의 레이트 매칭 결과 비트의 수가 각각
Figure 112007087947398-PAT00007
,
Figure 112007087947398-PAT00008
,
Figure 112007087947398-PAT00009
라 하면, 레이트 매칭기(160)는 각 비트 스트림(S, P1, P2)의 레이트 매칭 결과 비트의 합(
Figure 112007087947398-PAT00010
)이
Figure 112007087947398-PAT00011
와 같아지도록 정보 비트, 제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
Figure 112007087947398-PAT00001
And the number of bits of the information bits and the first and second parity bit streams S, P1, and P2, respectively.
Figure 112007087947398-PAT00002
,
Figure 112007087947398-PAT00003
And
Figure 112007087947398-PAT00004
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 (
Figure 112007087947398-PAT00005
)this
Figure 112007087947398-PAT00006
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.
Figure 112007087947398-PAT00007
,
Figure 112007087947398-PAT00008
,
Figure 112007087947398-PAT00009
For example, the rate matcher 160 may add the sum of the rate matching result bits of each bit stream (S, P1, P2).
Figure 112007087947398-PAT00010
)this
Figure 112007087947398-PAT00011
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 block interleaver 170.

마지막으로, 블록 인터리버(170)는 최종 비트 스트림을 블록 인터리빙하여 변조기로 출력한다. 이때, 본 발명의 실시 예에 따른 블록 인터리버(170)는 최종 비트 스트림으로 비트 취합을 완료하기 전에 블록 인터리빙을 시작한다.Finally, the block interleaver 170 block interleaves the final bit stream and outputs the result to the modulator. In this case, the block interleaver 170 according to an embodiment of the present invention starts block interleaving before completing bit aggregation into the final bit stream.

도 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 rate matcher 160 includes an input buffer 161, a data rate adjusting unit 162, an output buffer 163, a bit collecting unit 164, and an output memory 165.

입력 버퍼(161)는 제1 내지 제3 버퍼(161-1, 161-2, 161-3)를 포함하며, 제1 내지 제3 버퍼(161-1, 161-2, 161-3)에는 각각 정보 비트 스트림과 제1 및 제2 패리티 비트 스트림(S, P1, P2)이 저장된다. The input buffer 161 includes first to third buffers 161-1, 161-2, and 161-3, and the first to third buffers 161-1, 161-2, and 161-3 respectively. An information bit stream and first and second parity bit streams S, P1, and P2 are stored.

데이터율 조정부(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 rate adjusting unit 162 includes first to third matching units 162-1, 162-2, and 162-3, and first to third mapping units 162-1, 162-2, and 162-3. ) Performs rate matching on the information bits and the first and second parity bit streams S, P1, and P2, respectively, and outputs the rate matching result bit streams S ', P1', and P2 ', respectively. The first to third buffers 163-1, 163-2, and 163-3 of 163 are recorded. In this case, each of the first to third matching units 162-1, 162-2, and 162-3 generates the corresponding bit whenever the bits of the bit streams S ', P1', and P2 'are generated. Write to one of the corresponding first to third buffers 163-1, 163-2, and 163-3.

출력 버퍼(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 output buffer 163 includes first to third buffers 163-1, 163-2, and 163-3, and the first to third buffers 163-1, 163-2, and 163-3 respectively. The rate matching result bit streams S ', P1' and P2 'of the information bit stream and the first and second parity bit streams S, P1 and P2 are stored.

비트 취합부(164)는 레이트 매칭 결과 비트 스트림(S', P1', P2')을 하나의 최종 비트 스트림으로 취합하여 출력 메모리(165)에 저장한다. 즉, 도 4에 도시한 바와 같이, 비트 취합부(164)는 해당 버퍼(163-1, 163-2, 163-3)에 데이터가 있으면 선택하여 읽되, 읽어낼 데이터가 있는 경우 쉬지 않고 데이터를 처리한다. 이때, 데이터 선택에 있어서는 순환 우선 순위가 적용된다.이때, 천공과 반복에 따라서 레이트 매칭 결과 비트 스트림(S', P1', P2')의 각 비트가 발생되는 속도가 다르게 된다. 레이트 매칭 시 일부 비트를 반복하는 경우에는 매 클럭마다 1 비트가 발생하지만, 레이트 매칭 시 일부 비트를 천공하는 경우에는 소정 주기마다 한 비트가 발생한다.The bit collecting unit 164 collects the rate matching result bit streams S ', P1', and P2 'into one final bit stream and stores the resultant bit streams in the output memory 165. That is, as shown in FIG. 4, the bit collecting unit 164 selects and reads data in the corresponding buffers 163-1, 163-2, and 163-3, and continuously reads data when there is data to read. Process. At this time, a cyclic priority is applied to data selection. At this time, the rate at which the bits of the bit streams S ', P1', and P2 'are generated differs according to puncturing and repetition. When some bits are repeated during rate matching, one bit is generated every clock. However, when some bits are punctured during rate matching, one bit is generated every predetermined period.

따라서, 레이트 매칭 결과에 따른 레이트 매칭 결과 비트 스트림(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 bit collecting unit 164 generates the corresponding buffers 163-1, 163-2, and 163. Read from -3), and write it to the output memory 165. The order of reading the corresponding buffers 163-1, 163-2, and 163-3 may be changed according to the situation in which bit matching results occur, but the read addresses of the respective buffers 163-1, 163-2, and 163-3 are different. Increments sequentially for each buffer.

도 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 output memory 165 according to an embodiment of the present invention may include the memories 165-1, 165-2, corresponding to the rate matching result bit streams S ', P1', and P2 ', respectively. 165-3, and the bit collecting unit 164 stores the memory 165-1, 165-2, 165-3 each time data is read from the corresponding buffers 163-1, 163-2, and 163-3. Record the address in, and precompute the next address to use.

이때, 메모리(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')의 비트 수(

Figure 112007087947398-PAT00012
,
Figure 112007087947398-PAT00013
,
Figure 112007087947398-PAT00014
)가 각각 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 '(
Figure 112007087947398-PAT00012
,
Figure 112007087947398-PAT00013
,
Figure 112007087947398-PAT00014
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 output memory 165, the result is one final bit stream. In FIG. 5, for convenience of description, separate memories 165-1, 165-2, and 165-3 are used according to the rate matching result bit streams S ', P1', and P2 '. Is a single memory, dual port memory that can only read and write one bit at a time.

이와 같이, 본 발명의 실시 예에 따른 비트 취합부(164)는 레이트 매칭 결과 비트 스트림(S', P1', P2')별로 출력 메모리(165)에의 쓰기 번지를 별도로 관리하고, 각 레이트 매칭 결과 비트 스트림(S', P1', P2')의 비트가 채워질 위치를 고려하여 미리 계산된 방법으로 각 레이트 매칭 결과 비트 스트림(S', P1', P2')별로 쓰기 주소를 증가시킴으로써, 비트 취합을 수행한다. 이렇게 하면, 레이트 매칭 시 천공을 수행하여도 레이트 매칭과 거의 동시에 비트 취합을 수행할 수 있다.As described above, the bit collecting unit 164 according to the embodiment of the present invention separately manages write addresses to the output memory 165 for each of the rate matching result bit streams S ', P1', and P2 ', and each rate matching result. Bit aggregation by increasing the write address for each bit matching result bit stream (S ', P1', P2 ') in a precomputed manner taking into account the positions where the bits of the bit streams S', P1 ', and P2' are to be filled. Do this. In this way, even when puncturing is performed during rate matching, bit aggregation can be performed almost simultaneously with rate matching.

다음으로, 본 발명의 실시 예에 따른 블록 인터리버(170)의 시작 시점을 설정하는 방법에 대해 도 7을 참고로 하여 자세하게 설명한다.Next, a method of setting a start time of the block interleaver 170 according to an embodiment of the present invention will be described in detail with reference to FIG. 7.

도 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')의 각 비 트가 발생되는 비율은 대략적으로 기울기(

Figure 112007087947398-PAT00015
)로 표현될 수 있다. 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 (
Figure 112007087947398-PAT00015
Can be expressed as

본 발명의 실시 예에 따른 비트 취합부(164)는 레이트 매칭 결과 스트림(S', P1', P2')의 각 비트가 발생될 때마다 해당 비트를 취합하므로, 취합되는 레이트 매칭 결과 스트림(S', P1', P2')의 각 비트의 양도 근사적으로 기울기(

Figure 112007087947398-PAT00016
)에 따라 증가하게 되며, 레이트 매칭이 끝나는 시점과 비트 취합이 끝나는 시점도 거의 일치한다.Since the bit collecting unit 164 according to an embodiment of the present invention collects the corresponding bits whenever each bit of the rate matching result streams S ', P1', and P2 'is generated, the bit matching result stream S is collected. The amount of each bit of ', P1', P2 ') is also approximately sloped (
Figure 112007087947398-PAT00016
), And the point at which rate matching ends and the bit aggregation ends almost coincide.

이때, 본 발명의 실시 예에서는 천공이나 반복의 여부와 천공의 경우 전송 할 전체 비트 수와 전송할 최종 레이트 매칭 결과 스트림(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 Equation 1.

Figure 112007087947398-PAT00017
Figure 112007087947398-PAT00017

수학식 1에서,

Figure 112007087947398-PAT00018
는 정보 비트, 제1 및 제2 패리티 비트의 레이트 매칭 결과 비트 중 가장 작은 비트 수를 의미한다. 이때, 도 7에서는 제1 및 제2 패리티 비트 스트림의 레이트 매칭 결과 비트 수가 서로 동일한 것으로 도시하였으므로, 수학식 1에서
Figure 112007087947398-PAT00019
대신
Figure 112007087947398-PAT00020
을 사용할 수도 있다. 일반적으로,
Figure 112007087947398-PAT00021
Figure 112007087947398-PAT00022
과 같거나 1만큼 크다. 즉, 레이트 매칭 시 천공을 수행하는 경우, 블록 인터리버(도 1의 170)는 수학식 1의 조건을 만족하면서 메모리(165-1, 165-2, 165-3)에 블록 인터리버(도 1의 170)의 블록 크기에 해당하는 비트의 수(예를 들면, 288 비트)가 모였을 때 블록 인터리빙을 시작한다.In Equation 1,
Figure 112007087947398-PAT00018
Denotes the smallest number of bits among information bits and rate matching result bits of the first and second parity bits. In FIG. 7, since the bit matching result bits of the first and second parity bit streams are shown to be the same, Equation 1
Figure 112007087947398-PAT00019
instead
Figure 112007087947398-PAT00020
You can also use Generally,
Figure 112007087947398-PAT00021
Is
Figure 112007087947398-PAT00022
Is equal to or greater than 1. That is, when puncturing is performed during rate matching, the block interleaver 170 of FIG. 1 satisfies the condition of Equation 1, and the block interleaver 170 of FIG. 1 is stored in the memories 165-1, 165-2, and 165-3. Block interleaving is started when the number of bits corresponding to the block size (for example, 288 bits) is collected.

한편, 레이트 매칭 시 반복을 수행하는 경우에는 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 block interleaver 170 of FIG. Block interleaving starts when the number of bits corresponding to the block size of the block interleaver 170 of FIG. 1 is collected.

본 발명의 실시 예는 이상에서 설명한 장치 및/또는 방법을 통해서만 구현되는 것은 아니며, 본 발명의 실시 예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시 예의 기재로부터 본 발명이 속하는 기술 분야의 전문가라면 쉽게 구현할 수 있는 것이다.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)

입력 신호를 처리하는 방법에 있어서,In the method for processing an input signal, 상기 입력 신호를 인코딩하여 정보 비트와 제1 및 제2 패리티 비트로 분리하는 단계,Encoding the input signal and separating the information signal into first and second parity bits; 상기 정보 비트와 상기 제1 및 제2 패리티 비트를 각각 레이트 매칭하는 단계,Rate matching the information bits and the first and second parity bits, respectively, 상기 레이트 매칭에 따라 레이트 매칭 결과 비트를 순차적으로 출력하는 단계, 그리고Sequentially outputting rate matching result bits according to the rate matching, and 상기 레이트 매칭이 수행되는 동안 상기 순차적으로 출력되는 레이트 매칭 결과 비트를 비트 스트림으로 취합하는 단계Aggregating the sequentially output rate matching result bits into a bit stream while the rate matching is performed 를 포함하는 신호 처리 방법.Signal processing method comprising a. 제1항에 있어서,The method of claim 1, 상기 비트 스트림을 블록 인터리빙하는 단계Block interleaving the bit stream 를 더 포함하며,More, 상기 레이트 매칭 결과 비트가 모두 취합되기 전에 상기 블록 인터리빙을 시작하는 신호 처리 방법.And starting the block interleaving before all of the rate matching result bits have been collected. 제2항에 있어서,The method of claim 2, 상기 레이트 매칭 결과 비트는, 상기 정보 비트가 상기 레이트 매칭된 제1 결과 비트, 상기 제1 및 제2 패리티 비트가 각각 상기 레이트 매칭된 제2 및 제3 결과 비트를 포함하며,The rate matching result bit includes a first result bit with the information bit rate-matched, a second and third result bit with the first and second parity bits rate-matched, respectively, 상기 출력하는 단계는, 상기 제1 내지 제3 결과 비트를 각각 한 비트씩 순차적으로 출력하는 단계를 포함하는 신호 처리 방법.The outputting may include sequentially outputting the first to third result bits by one bit. 제3항에 있어서,The method of claim 3, 상기 레이트 매칭하는 단계는, 상기 정보 비트와 상기 제1 및 제2 패리티 비트의 각 비트의 총합에 따라 비트 천공하는 단계를 포함하며,The rate matching includes bit puncturing according to a sum of the bits of the information bits and the respective bits of the first and second parity bits, 상기 블록 인터리빙하는 단계는, 하나의 물리 채널에서 전송할 수 있는 비트 수, 상기 제1 내지 제3 결과 비트의 수 중 가장 적은 비트 수에 기초하여 설정된 시점에서 상기 블록 인터리빙을 시작하는 단계를 포함하는 신호 처리 방법.The block interleaving may include starting the block interleaving at a set time point based on the number of bits that can be transmitted in one physical channel and the least number of bits among the first to third result bits. Treatment method. 제4항에 있어서,The method of claim 4, wherein 상기 비트 스트림에 상기 블록 인터리빙의 크기에 해당하는 비트가 취합된 시점을 추가로 고려하여 상기 블록 인터리빙을 시작하는 신호 처리 방법.And starting the block interleaving by further considering a time point at which bits corresponding to the size of the block interleaving are collected in the bit stream. 제2항 또는 제3항에 있어서,The method according to claim 2 or 3, 상기 레이트 매칭하는 단계는, 상기 정보 비트와 상기 제1 및 제2 패리티 비트의 각 비트의 총 합에 따라 비트 반복하는 단계를 포함하며,The rate matching includes repeating bits according to a sum of the bits of the information bits and the respective bits of the first and second parity bits, 상기 블록 인터리빙하는 단계는, 상기 비트 스트림에 상기 블록 인터리빙의 크기에 해당하는 비트가 취합된 시점에서 상기 블록 인터리빙을 시작하는 단계를 포함하는 신호 처리 방법.The block interleaving comprises: starting the block interleaving at a point in time at which a bit corresponding to the size of the block interleaving is collected in the bit stream. 제1항 내지 제3항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 3, 상기 분리하는 단계는,The separating step, 상기 입력 신호를 복수의 코드 블록으로 나누는 단계,Dividing the input signal into a plurality of code blocks, 상기 복수의 코드 블록의 비트를 순차적으로 제1 및 제2 코드 블록 버퍼에 교대로 저장하는 단계, 그리고Alternately storing bits of the plurality of code blocks in a first and second code block buffer sequentially; 상기 제1 및 제2 코드 블록 버퍼에 저장된 비트를 교대로 인코딩하여 상기 정보 비트, 상기 제1 및 제2 패리티 비트를 출력하는 단계를 포함하며,Alternately encoding bits stored in the first and second code block buffers to output the information bits and the first and second parity bits, 상기 제1 및 제2 코드 블록 버퍼 중 하나의 코드 블록 버퍼에 비트를 인코딩하는 동안 다른 하나의 코드 블록 버퍼에 다음 코드 블록의 비트를 저장하는 신호 처리 방법.And storing the bits of the next code block in the other code block buffer while encoding the bits in one code block buffer of the first and second code block buffers. 제1항 내지 제3항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 3, 상기 레이트 매칭 결과 비트가 모두 출력되는 시점과 상기 레이트 매칭 결과 비트가 모두 취합되는 시점이 동일한 신호 처리 방법.And a time point at which all of the rate matching result bits are output and a time point at which all of the rate matching result bits are collected. 입력 신호를 처리하는 장치에 있어서,An apparatus for processing an input signal, 상기 입력 신호를 인코딩하여 정보 비트, 제1 및 제2 패리티 비트를 출력하는 인코더, 그리고An encoder for encoding the input signal to output information bits, first and second parity bits, and 상기 정보 비트, 제1 및 제2 패리티 비트를 각각 레이트 매칭하면서 상기 정보 비트, 제1 및 제2 패리티 비트의 레이트 매칭 결과 비트를 비트 스트림으로 취합하는 레이트 매칭기A rate matcher for collecting the rate matching result bits of the information bits, the first and the second parity bits into bit streams, while rate matching the information bits, the first and the second parity bits, respectively. 를 포함하는 신호 처리 장치.Signal processing apparatus comprising a. 제9항에 있어서,The method of claim 9, 상기 비트 스트림을 블록 인터리빙하는 블록 인터리버Block interleaver for block interleaving the bit stream 를 더 포함하며,More, 상기 취합하는 기간과 상기 블록 인터리빙하는 기간이 중첩되는 신호 처리 장치.And the period for collecting and the period for block interleaving overlap. 제9항에 있어서,The method of claim 9, 상기 레이트 매칭 결과 비트는, 상기 정보 비트가 상기 레이트 매칭된 제1 결과 비트, 상기 제1 및 제2 패리티 비트가 각각 상기 레이트 매칭된 제2 및 제3 결과 비트를 포함하며,The rate matching result bit includes a first result bit with the information bit rate-matched, a second and third result bit with the first and second parity bits rate-matched, respectively, 상기 레이트 매칭기는,The rate matcher, 상기 제1 내지 제3 결과 비트의 주소를 각각 기록하는 제1 내지 제3 메모리를 포함하며,First to third memories respectively recording addresses of the first to third result bits; 상기 제1 내지 제3 결과 비트가 발생되는 순서에 따라 대응하는 상기 제1 내지 제3 메모리에 기록하는 신호 처리 장치.And a signal processing apparatus for writing to the corresponding first to third memories in the order in which the first to third result bits are generated. 제11항에 있어서,The method of claim 11, 상기 레이트 매칭기는 상기 레이트 매칭으로 비트 반복을 수행하며,The rate matcher performs bit repetition with the rate matching, 상기 블록 인터리버는 상기 비트 스트림에 상기 블록 인터리버의 블록 크기에 해당하는 비트가 모인 시점에서 상기 블록 인터리빙을 시작하는 신호 처리 장치.And the block interleaver starts the block interleaving when a bit corresponding to a block size of the block interleaver is collected in the bit stream. 제11항에 있어서,The method of claim 11, 상기 레이트 매칭기는 상기 레이트 매칭으로 비트 천공을 수행하며,The rate matcher performs bit puncturing with the rate matching, 상기 블록 인터리버는 상기 비트 스트림에 상기 블록 인터리버의 크기에 해당하는 비트가 모이고, 상기 취합된 비트의 양이 소정의 설정 값이 되는 조건을 동시에 만족하는 시점에서 상기 블록 인터리빙을 시작하며,The block interleaver starts the block interleaving at a time when a bit corresponding to the size of the block interleaver is collected in the bit stream, and at the same time satisfies a condition that the amount of the collected bits becomes a predetermined setting value, 상기 설정 값은 하나의 물리 채널에서 전송할 수 있는 비트 수, 상기 제1 내지 제3 결과 비트의 수 중 가장 적은 비트 수에 기초하여 설정된 값인 신호 처리 장치.And the set value is a value set based on the smallest number of bits among the number of bits that can be transmitted in one physical channel and the number of first to third result bits. 제9항 내지 제13항 중 어느 한 항에 있어서,The method according to any one of claims 9 to 13, 홀수 코드 블록 버퍼와 짝수 코드 블록 버퍼를 포함하며, 인코딩될 복수의 코드 블록의 비트를 순차적으로 상기 홀수 코드 블록 버퍼와 상기 짝수 코드 블록 버퍼에 교대로 저장하는 코드 블록 제어부A code block control unit including an odd code block buffer and an even code block buffer, and sequentially storing bits of a plurality of code blocks to be encoded in the odd code block buffer and the even code block buffer sequentially; 를 더 포함하며,More, 상기 인코더에서 상기 홀수 코드 블록 버퍼 및 상기 홀수 코드 블록 버퍼 중 하나의 코드 블록 버퍼에 저장된 비트를 인코딩하는 동안, 상기 코드 블록 제어부는 나머지 코드 블록 버퍼에 상기 비트를 저장하는 신호 처리 장치.And while the encoder encodes a bit stored in one code block buffer of the odd code block buffer and the odd code block buffer, the code block controller stores the bit in the remaining code block buffer.
KR1020070126290A 2007-12-06 2007-12-06 Apparatus and method for processing signal of communication system KR20090059430A (en)

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)

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