[go: up one dir, main page]

WO2018143489A1 - Turbo code encoder and encoding method for improving error correction efficiency - Google Patents

Turbo code encoder and encoding method for improving error correction efficiency Download PDF

Info

Publication number
WO2018143489A1
WO2018143489A1 PCT/KR2017/001074 KR2017001074W WO2018143489A1 WO 2018143489 A1 WO2018143489 A1 WO 2018143489A1 KR 2017001074 W KR2017001074 W KR 2017001074W WO 2018143489 A1 WO2018143489 A1 WO 2018143489A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
input signal
encoder
delayer
signal
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/KR2017/001074
Other languages
French (fr)
Korean (ko)
Inventor
노광석
김동규
김명진
이상림
이호재
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LG Electronics Inc
Original Assignee
LG Electronics Inc
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 LG Electronics Inc filed Critical LG Electronics Inc
Priority to PCT/KR2017/001074 priority Critical patent/WO2018143489A1/en
Publication of WO2018143489A1 publication Critical patent/WO2018143489A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

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
    • 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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]

Definitions

  • the present invention relates to a channel coding method in a wireless communication system, and more particularly, to a turbo code encoder and an encoding method having an improved error correction efficiency.
  • Wireless access systems are widely deployed to provide various kinds of communication services such as voice and data.
  • a wireless access system is a multiple access system capable of supporting communication with multiple users by sharing available system resources (bandwidth, transmission power, etc.).
  • multiple access systems include code division multiple access (CDMA) systems, frequency division multiple access (FDMA) systems, time division multiple access (TDMA) systems, orthogonal frequency division multiple access (OFDMA) systems, and single carrier frequency (SC-FDMA). division multiple access) system.
  • CDMA code division multiple access
  • FDMA frequency division multiple access
  • TDMA time division multiple access
  • OFDMA orthogonal frequency division multiple access
  • SC-FDMA single carrier frequency division multiple access
  • channel codes are essentially used in broadcast systems.
  • a transmitter may perform encoding on an input symbol by using an encoder and transmit an encoded symbol.
  • the receiving end may restore the input symbol by receiving the encoded symbol and performing decoding on the received symbol.
  • the size of the input symbol and the size of the encoded symbol may be defined differently according to the communication system.
  • LTE Long Term Evolution
  • 3GPP 3rd Generation Partnership Project
  • an input symbol has a maximum size of 6144 bits and a coded symbol size 18432 (6144 * 3) bits.
  • Turbo coding in an LTE communication system may be referred to by 3GPP Technical Specification 36.212.
  • the LTE turbo code has a slight improvement in performance even if the signal to noise ratio (SNR) increases due to the structure of the code.
  • SNR signal to noise ratio
  • it may be considered to use a code having a lower error rate, but in this case, there is a problem that the complexity increases.
  • the current LTE turbo code has a problem that an error floor occurs when the size of information increases. Accordingly, there is a need for a channel coding method capable of satisfying Ultra Reliable Radio (URR) and Low Latency Radio (LLR).
  • URR Ultra Reliable Radio
  • LLR Low Latency Radio
  • the present invention has been made to solve the above problems, and an object of the present invention is to provide a method for generating a turbo code having a tail duty structure while having backward compatibility with a conventional LTE turbo code. To provide.
  • Another object of the present invention is to provide an apparatus supporting these methods.
  • the turbo code encoding method of the present application for solving the above problems comprises the steps of pre-coding the input signal; Determining an end state based on the precoding; Determining a preset cyclic state based on the determined end state and the length of the input signal; And encoding the input signal into a turbo code having a tail-biting structure based on the determined cyclic state, wherein the encoder includes a forward path from an input terminal to an output terminal and the output terminal.
  • the input terminal of the recursive path may be applied with a value obtained by XORing the input signal, the input signal delayed three times, and the input signal delayed four times.
  • a turbo code encoder for solving the above-described problems may include: a first node, a second node, and a third configured to output an exclusive OR (XOR) of the received signal values, respectively; A node, a fourth node, a fifth node, a sixth node, a seventh node, and an eighth node; A first delayer, a second delayer, a third delayer, and a fourth delayer, each of which is configured to delay and output the received signal once, and is sequentially connected between the first node and the fifth node.
  • XOR exclusive OR
  • a first switching circuit connected between the fourth node and the fifth node; And a second switching circuit connected between the seventh node and the eighth node, wherein the first node receives an input signal and a signal from the eighth node, and supplies the second node and the first delay unit to the second node and the first delay node.
  • Output a signal wherein the second node is configured to receive signals from the first delayer and the first node, and output a signal to the third node, wherein the third node is configured to output the signal to the second node.
  • the sixth node is configured to receive signals from the second delayer and the third delayer and to output a signal to the eighth node, wherein the seventh node is configured to output the signal to the eighth node.
  • the encoder of the present invention may have backward compatibility with a conventional LTE turbo encoder.
  • the encoder of the present invention may perform turbo code encoding having a tail biting structure.
  • the encoder of the present invention may perform turbo code encoding, which may satisfy the URLLC environment.
  • FIG. 1 illustrates an encoding process according to an example.
  • FIG. 2 illustrates an encoding process of a transport block according to an example.
  • FIG 3 illustrates a Recursive Systematic Convolutional (RSC) encoder according to an example.
  • FIG 5 shows an example of a trellis according to an RSC encoder.
  • FIG. 6 shows an example of a trellis structure.
  • FIG. 7 is a block diagram of a turbo code encoder according to an embodiment.
  • FIG. 8 is a flowchart of an encoding method according to an embodiment.
  • FIG. 9 is a configuration diagram of a base station and a terminal according to an embodiment of the present invention.
  • CDMA code division multiple access
  • FDMA frequency division multiple access
  • TDMA time division multiple access
  • OFDMA orthogonal frequency division multiple access
  • SC-FDMA single carrier frequency division multiple access
  • CDMA may be implemented with a radio technology such as Universal Terrestrial Radio Access (UTRA) or CDMA2000.
  • TDMA may be implemented with wireless technologies such as Global System for Mobile communications (GSM) / General Packet Radio Service (GPRS) / Enhanced Data Rates for GSM Evolution (EDGE).
  • GSM Global System for Mobile communications
  • GPRS General Packet Radio Service
  • EDGE Enhanced Data Rates for GSM Evolution
  • OFDMA may be implemented in a wireless technology such as IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802-20, Evolved UTRA (E-UTRA), or the like.
  • UTRA is part of the Universal Mobile Telecommunications System (UMTS).
  • 3rd Generation Partnership Project (3GPP) long term evolution (LTE) employs OFDMA in downlink and SC-FDMA in uplink as part of Evolved UMTS (E-UMTS) using E-UTRA.
  • LTE-A Advanced is an evolution of 3GPP LTE.
  • FIG. 1 illustrates an encoding process according to an example.
  • the encoding process of FIG. 1 may be applied to many channel codes including a turbo code used in an LTE communication system.
  • a turbo code used in an LTE communication system.
  • the encoding process will be described based on terms according to standard documents of the LTE communication system.
  • the transmitting end may generate a transport block (TB) (S101).
  • the transmitting end adds a CRC bit for the transport block to the transport block (S102).
  • the transmitter may generate a code block from the transport block to which the CRC bit is added (S103).
  • the transmitting end may segment the transport block into code blocks based on the input size of the encoder.
  • the transmitter may add a CRC bit to each divided code block (S104). In this case, for example, the size of the code block and the code block CRC bits may consist of 6144 bits.
  • the transmitter may perform encoding and modulation (S105) on each block composed of a code block and CRC bits. For example, as described above, turbo coding may be applied.
  • the decoding process may be performed in the reverse order of the encoding process of FIG. 1.
  • the receiver may decode each code block by using a decoder corresponding to each encoder, and finally configure one transport block to check whether the CRC passes through the transport block.
  • the size of the input symbol may be different from the size of a transport block (TB) from the Media Access Control (MAC) layer. If the size of the transport block is larger than the maximum input symbol size of the turbo code, the transport block may be divided into a plurality of code blocks (CBs). According to the standard of the LTE communication system, the size of the code block may be the same as subtracting the Cyclic Redundancy Check (CRC) bit from 6144 bits.
  • An input symbol of a turbo code may be defined as data comprising a code block and a CRC or data including a transport block (eg, a transport block is less than 6144 bits) and a CRC. The CRC bit is a very small value (e.g.
  • a code block may refer to a code block itself or a CRC bit corresponding to a code block
  • a transport block refers to a transport block itself or a CRC bit corresponding to a transport block. can do.
  • FIG. 2 illustrates an encoding process of a transport block according to an example.
  • FIG. 2 illustrates an encoding process of the transport block 201 corresponding to the encoding process described above with reference to FIG. 1.
  • a transport block CRC 202 is added to the transport block 201.
  • the transport block CRC 202 may be used for identification of the transport block 201 in the decoding process.
  • the transport block 201 and transport block CRC 202 are then divided into three code blocks 203.
  • the code block 203 is divided into three code blocks, but the transport block 201 may be divided into a plurality of code blocks based on an input size of the encoder 205.
  • Code block CRC 204 is added to each code block 203.
  • the code block CRC 204 may be used for identification of the code block 203 at the receiving end.
  • Code block 203 and code block CRC 204 may be encoded via encoder 205 and modulator 206.
  • FIG 3 illustrates a Recursive Systematic Convolutional (RSC) encoder according to an example.
  • the RSC encoder 300 of FIG. 3 may be used for turbo coding.
  • m denotes input data
  • C1 denotes a systematic bit string
  • C2 denotes a coded bit string.
  • the RSC encoder 300 has a 1/2 code rate.
  • RSC encoder 300 may be configured by feeding back the encoded output to the input of a nonrecursive-non-systematic convoluational encoder.
  • the encoder 300 includes two delayers 301 and 302.
  • the values D of the delayers 301 and 302 may be determined according to a coding scheme.
  • Delays 301 and 302 may be configured as memory or shift registers.
  • the coding scheme of the LTE turbo encoder 400 is a parallel concatenation with two eight-state element encoders 410 and 420 and one turbo code internal interleaver 430.
  • Parallel Concatenated Convolutional Code (PCCC) is a parallel concatenation with two eight-state element encoders 410 and 420 and one turbo code internal interleaver 430.
  • Parallel Concatenated Convolutional Code (PCCC) is a parallel concatenation with two eight-state element encoders 410 and 420 and one turbo code internal interleaver 430.
  • PCCC Parallel Concatenated Convolutional Code
  • the turbo encoder 400 is composed of a first constituent encoder 410, a second element encoder 420, and a turbo code internal interleaver 430.
  • the first element encoder 410 and the second element encoder 420 are eight-state element encoders.
  • Each of the first element encoder 410 and the second element encoder 420 has a structure similar to that of the RSC encoder of FIG. 3.
  • the first element encoder 410 and the second element encoder 420 each include three delayers 411, 412, 413, 421, 422, and 423.
  • D is a value determined according to a coding scheme.
  • c k is the input to the turbo encoder 400.
  • the outputs from the first element encoder 410 and the second element encoder 420 are denoted as z k and z ' k , respectively.
  • the value output from the turbo code internal interleaver 430 is denoted by c ' k .
  • the delays 411, 412, 413, 421, 42, and 423 may delay the input value by one clock.
  • the delays 411, 412, 413, 421, 42, 423 may be configured to delay the input value for more than one clock according to the internal setting.
  • the delays 411, 412, 413, 421, 42, and 423 may be configured as shift registers, and may be configured to delay the input bits by a predetermined clock and then output the input bits to the next delays 411, 412, 413, 421, 42, 423. .
  • the turbo code internal interleaver 430 may reduce the effects of burst errors that may occur when transmitting signals over a wireless channel.
  • the turbo code internal interleaver 430 may be a Quadratic Polynomial Permutation (QPP) interleaver.
  • QPP Quadratic Polynomial Permutation
  • Turbo codes are high performance forward error correction (FEC) codes and are used in LTE communication systems.
  • a data block coded by turbo code may consist of three subblocks.
  • One subblock may correspond to m-bit payload data.
  • Another subblock may consist of n / 2 bits of parity bits for the payload, calculated using a recursive systematic convolution (RSC) code.
  • the remaining sub-blocks may be composed of n / 2 bits of parity bits for permutation of payload data, calculated using an RSC code.
  • the above-described permutation may be performed by an interleaver.
  • two subblocks of parity bits different from each other with the payload may be configured as one block. For example, if m is equal to n / 2, one block has a code rate of 1/3.
  • a process of reaching the input bit z k by the input c k may be divided into two paths.
  • the two paths are a first path connected without input feedback from the input to the output and a second path fed back from the input to the input.
  • c k is input, input via a delay unit 411, a rough input c k, and the retarder (411, 412, and 413), c k is applied to the output stage.
  • the relationship between the input end and the output end of the first path may be expressed by a polynomial.
  • the polynomial for the first path is called a forward generator polynomial and may be expressed as g1 of the following equation.
  • a rough input c k is fed back to the input end.
  • the polynomial for the second path is called a recursive generator polynomial and can be expressed as g0 in the following equation.
  • Equations 1 and 2 "+” means exclusive OR (XOR), and 1 means that the input goes through 0 delays.
  • D n means that the input goes through n delays.
  • FIG 5 shows an example of a trellis according to an RSC encoder.
  • FIG. 5 shows the configuration of the trellis of the RSC encoder shown in FIG.
  • S i represents a state of the i th input data.
  • each circle represents each node.
  • the line between each node means a branch.
  • the solid line refers to the branch for input value 1
  • the dotted line refers to the branch for input value 0.
  • the value on the branch is expressed as m / C1C2 (input value / systematic bit, coded bit). It may also have a state that is exponentially proportional to the number of memories of the encoder. For example, if the encoder includes a memory, 2 a states can be included in the trellis.
  • Trellis is a state machine that shows the possible state transitions of an encoder between two states.
  • a convolutional encoder such as an RSC encoder, may perform encoding according to a trellis diagram. Codewords encoded by the RSC encoder may be decoded according to an algorithm based on the trellis structure. For example, Viterbi or BCJR (Bahl, Cocke, Jelinek and Raviv) algorithms can be used.
  • FIG. 6 shows an example of a trellis structure.
  • n represents the length of a codeword.
  • trellis can be terminated by adding additional bits after the input sequence.
  • a sequence consisting of a sequence of zeros is called a tail bit. The tail bit terminates the trellis so that nodes in one state of the trellis have a value of zero.
  • the length of a codeword may be determined in consideration of the length k of input data and the length t of tail bits.
  • the length n of the codeword may have a value of (k + t) / R.
  • the length t of the tail bits can be determined as the length by which all delays (eg, memories) of the encoder can be reset.
  • the RSC encoder of FIG. 3 may use a total of 2 bits of tail bits.
  • the turbo encoder of the LTE communication as shown in FIG. 4 may use 3 bits of tail bits.
  • the tail bit has a relatively short length compared to the length of the input data.
  • code rate loss due to the tail bits may occur when the length of the codeword is limited.
  • trellis termination using tail bits is widely used. This is because the computational complexity is low and the error correction performance is excellent.
  • a puncturing code is a method of puncturing some of codewords.
  • some codewords are not transmitted because some of the codewords are punctured.
  • puncturing codes may be used to reduce code rate loss due to the addition of tail bits.
  • the receiving end may decode by using the trellis corresponding to the sum of the length k of the input data and the length t of the tail bit. That is, the receiver may perform decoding on the assumption that it has received a non-punctured codeword. In this case, the receiving end may assume that there is no input value for the branch from the node corresponding to the punctured bit (ie, the bit not transmitted at the transmitting end). That is, input data is assumed to be 0 or 1 with equal probability for branches of the node.
  • double binary turbo codes have a tail biting structure.
  • the tail biting structure is a method of terminating trellis by making the initial state and the end state of the encoder the same. That is, the trellis is terminated by forming a circulation state in which the start state and the end state are the same, and no tail bit is required.
  • dual binary LTE turbo code requires pre-encoding to determine the recursive state. Therefore, a decrease in the encoding speed may occur due to the addition of the encoding process.
  • precoding can be performed in two steps. First, encoding is performed by setting the initial state to '0', and thereafter, the starting state and the last state are set to be the same according to a predetermined relationship based on the encoded last state.
  • Turbo code can provide error correction performance that is close to Shannon's theoretical limit while having a relatively simple structure. However, if the specific SNR is exceeded, further improvement of the decoding performance is insignificant. That is, the turbo code has an error-floor in which further error rate improvement is insignificant when a certain SNR is exceeded.
  • two methods can be considered. For example, it may be considered to use code that does not generate an error-floor compared to current turbo code. Also, for example, concatenate code may be used by adding overhead to the current turbo code.
  • Reliable communication refers to a new communication service realized through Error Free Transmission or Service Availability for realizing a mission critical service (MCS). Reliability communications may be required in communications with Real-Time requirements, such as Machine-to-Machine (M2M) communications. In addition, with respect to medical reasons or emergencies, reliable communication may be required.
  • MCS mission critical service
  • M2M Machine-to-Machine
  • Ultra Reliable and Low-Latency Communication URLLC
  • an error floor is required to occur at a Block Error Rate (BLER) of 10-5 or less.
  • BLER Block Error Rate
  • the error floor refers to a point where the error rate decreases in spite of an increase in information size.
  • the LTE turbo code consists of three memories (delays).
  • the LTE turbo code is configured to have an error floor at the lowest BLER of polynomials that may consist of three memories. Therefore, the error floor cannot be improved without structural changes of the encoder of the LTE turbo code.
  • FIG. 7 is a block diagram of a turbo code encoder according to an embodiment.
  • the encoder 700 includes a first delayer 711, a second delayer 712, a third delayer 713, and a fourth delayer 714. That is, the encoder 700 may include four memories or shift registers and perform turbo code encoding.
  • the first through eighth nodes 721, 722, 723, 724, 725, 726, 727, and 728 are configured to perform an exclusive-OR (XOR). Inputs and outputs to the nodes 721, 722, 723, 724, 725, 726, 727, and 728 are set in accordance with the direction of the arrow.
  • the fourth node 724 and the eighth node 728 includes a switch.
  • block 750 is completely isolated from the encoder 700. Except for block 750, the encoder 700 is configured to perform the same operations as the encoder of FIG. 3. That is, the encoder 700 of FIG. 7 has a form in which a block 750 including additional memory is added to the RSC encoder used in the LTE turbo encoder. Therefore, for backward compatibility with the conventional LTE turbo encoder, the switch connection of the fourth node 724 and the eighth node 728 may be changed. Operation of the LTE turbo encoder is as described above with reference to FIGS. 4 and 5.
  • the encoder 700 of FIG. 7 includes a first delayer 711, a second delayer 712, and a third delayer 713 sequentially connected between the first node 721 and the fifth node 725. And a fourth retarder 714.
  • the first node 721 receives the input signal and the signal from the eighth node 728, and outputs a signal to the second node 722 and the first delayer 711.
  • the second node 722 receives the signals from the first delayer 711 and the first node 721, and outputs a signal to the third node 723.
  • the third node 723 receives the signals from the second node 722 and the third delayer 713 and outputs the signals to the fourth node 724.
  • the fourth node 724 receives a signal from the third node 723, receives a signal from the fifth node 725 through the first switching circuit, and outputs an output signal.
  • the fifth node receives the signals from the third delayer 713 and the fourth delayer 714 and outputs the signals to the fourth node 724 via the first switching cycle.
  • the sixth node 726 receives the signals from the second delayer 712 and the third delayer 713 and outputs the signals to the eighth node 728.
  • the seventh node receives signals from the second delayer 712 and the fourth delayer 714, and outputs a signal to the eighth node 728 through the second switching circuit.
  • the eighth node 728 receives a signal from the sixth node 726, receives a signal from the seventh node 727 through the second switching circuit, and outputs a signal to the first node 721. .
  • Each of the nodes 721, 722, 723, 724, 725, 726, 727, and 728 is configured to perform an XOR operation on the input signal and output the same.
  • the first and second switching circuits are configured to selectively disconnect the connection. For example, when the first and second switching circuits are turned off, the fourth node 724 cannot receive the signal from the fifth node 725 and the eighth node 728. Cannot receive a signal from the seventh node 7270.
  • Figure 7 recursively (recursive) primitive polynomial (primitive polynomial) g new0 for the path is equal to the mathematical expression.
  • a recursive path is formed by a path of signals applied to the first node 721.
  • the output terminal is supplied with an XOR operation value of the input, the input delayed three times, and the input delayed four times.
  • the primitive polynomial g new1 for the forward (forward) path is equal to the mathematical expression.
  • the forward path is formed by the path of signals applied to the fourth node 724.
  • the encoder 700 in the recursive path from the output end of the encoder 700 to the input end, an XOR operation value of an input, one delayed input, and four delayed inputs is applied to the input terminal. Meanwhile, in FIG. 7, the encoder 700 includes two switching circuits, but two switching circuits may be implemented as one switching circuit.
  • Equations 3 and 4 “+” means exclusive OR (XOR), and 1 means that the input goes through 0 delays. In addition, D n means that the input goes through n delays.
  • the recursive generator polynomial of the encoder 700 of Equation 3 may be converted into a full rank transfer function.
  • a tail biting technique may be applied to the encoder 700.
  • the encoder 700 of FIG. 7 includes four memories (delays 711, 712, 713, and 714). Thus, the encoder 700 has 24 states. As described above, in order to apply the tail biting technique, a pre-coding step may be used.
  • the length of the information bit is assumed to be K.
  • pre-encoding is performed using a K bit sequence.
  • the state may be set with reference to Tables 1 and 2 below.
  • the value of the intersection of the row corresponding to the end state and the column corresponding to the value of K mod 15 indicates the same state as the start and end states.
  • an initial value for precoding may be set to '0'.
  • K is 100
  • K mod 15 is 10.
  • the end state of precoding may be assumed to be 8.
  • a state in which the start state and the end state are the same that is, the cyclic state
  • encoding may be performed based on the determined cyclic state.
  • the coded code has a tail biting structure.
  • Tables 1 and 2 described above do not include the case where the value of K mod 15 is zero.
  • turbo code encoding having a tail biting structure may be performed according to a method described below.
  • the size of the information bit may be K 'and K' mod 15 may be zero.
  • encoding may be performed based on information bits having a size of K '+ 1 bits.
  • one bit of a predetermined value may be added to the information bits of the K ′ bit.
  • the preset value may be transmitted by the transmitting end to the receiving end.
  • Pre-coding may be performed on information bits of K ′ + 1 bits.
  • the cyclic state may be determined in Tables 1 and 2 based on the end state of the pre-coding and the value of (K ′ + 1) mod 15.
  • the encoder adds one preset bit to the end of the K 'bit. That is, a bit sequence of K '+ 1 bits having a predetermined 1 bit as a Least Significant Bit (LSB) may be used.
  • the encoder performs precoding based on a bit sequence of K '+ 1 bits, and determines the cyclic state in Tables 1 and 2 described above.
  • One bit of the preset value is used for precoding, but may not actually be transmitted to the receiving end.
  • a 3-bit tail biting bit can be used.
  • the tail biting technique can be applied only to the added memory (fourth delay 714).
  • the fourth delayer 714 is connected only to the third delayer 713. Therefore, when three tail bitting bits are used, such as LTE turbo coding, it may be assumed that the code input to the fourth delayer 714 has a tail biting structure. In this case, the states of the first delayer 711 and the second delayer 712 may not be considered in determining the tail biting state of the fourth delayer.
  • the encoder 700 may be assumed to be an encoder having two memories. In this case, the encoder 700 is considered to have four states. In this case, the recursive state may be determined according to Table 3 based on the value of K mod 3 and the end state of the pre-encoding. Where K represents the size of the information bit.
  • the size of the information bit may be K 'and K' mod 3 may be zero.
  • encoding may be performed based on information bits having a size of K '+ 1 bits.
  • one bit of a predetermined value may be added to the information bits of the K ′ bit.
  • the preset value may be transmitted by the transmitting end to the receiving end.
  • Pre-coding may be performed on information bits of K ′ + 1 bits.
  • the cyclic state may be determined in Tables 1 and 2 based on the end state of the precoding and the value of (K ′ + 1) mod 3.
  • the transmitting end and the receiving end know the value of the added 1 bit, the previous state can be known by using the added bit.
  • the added 1 bit is used in precoding, but may not actually be transmitted to the receiving end.
  • FIG. 8 is a flowchart of an encoding method according to an embodiment.
  • the encoder may be the encoder 700 of FIG. 7.
  • the first switching circuit and the second switching circuit of the encoder 700 of FIG. 7 are all connected (that is, turned on). With both the first switching circuit and the second switching circuit disconnected (ie, turned off), the encoder can operate in the same manner as the LTE turbo encoder described above with respect to FIGS. 4 and 5. have.
  • the encoder pre-encodes an input signal to be transmitted (S801).
  • the encoder determines an end state based on the result of the precoding (S802).
  • the encoder determines a preset cyclic state based on the length and the end state of the input signal (S803). How to determine the cyclic state can be referred to by the description associated with Tables 1 to 3 described above.
  • the encoder encodes an input signal into a turbo code having a tail biting structure based on the determined cyclic state (S804).
  • the encoder may transmit an encoded codeword.
  • FIG. 9 is a diagram for schematically describing a configuration of devices to which the embodiments of the present invention described with reference to FIGS. 1 to 8 may be applied as an embodiment of the present invention.
  • the base station apparatus 10 may include a receiving module 11, a transmitting module 12, a processor 13, a memory 14, and a plurality of antennas 15. .
  • the transmission module 12 may transmit various signals, data, and information to an external device (eg, a terminal).
  • the reception module 11 may receive various signals, data, and information from an external device (eg, a terminal).
  • the receiving module 11 and the transmitting module 12 may be referred to as transceivers.
  • the processor 13 may control the overall operation of the base station apparatus 10.
  • the plurality of antennas 15 may be configured according to, for example, a two-dimensional antenna arrangement.
  • the processor 13 of the base station apparatus 10 may be configured to receive channel state information according to examples proposed by the present invention.
  • the processor 13 of the base station apparatus 10 performs a function of processing information received by the base station apparatus 10, information to be transmitted to the outside, and the like. And may be replaced by a component such as a buffer (not shown).
  • the terminal device 20 may include a receiving module 21, a transmitting module 22, a processor 23, a memory 24, and a plurality of antennas 25.
  • the plurality of antennas 25 refers to a terminal device that supports MIMO transmission and reception.
  • the transmission module 22 may transmit various signals, data, and information to an external device (eg, a base station).
  • the reception module 21 may receive various signals, data, and information from an external device (eg, a base station).
  • the receiving module 21 and the transmitting module 22 may be referred to as transceivers.
  • the processor 23 may control operations of the entire terminal device 20.
  • the processor 23 of the terminal device 20 may be configured to transmit channel state information according to examples proposed by the present invention.
  • the processor 23 of the terminal device 20 performs a function of processing the information received by the terminal device 20, information to be transmitted to the outside, etc., and the memory 24 stores the calculated information and the like for a predetermined time. And may be replaced by a component such as a buffer (not shown).
  • terminal device 10 may be implemented so that the above-described matters described in various embodiments of the present invention can be applied independently or two or more embodiments are applied at the same time, overlapping description will be described for clarity Omit.
  • a downlink transmission entity or an uplink reception entity is mainly described using a base station
  • a downlink reception entity or uplink transmission entity is mainly described using a terminal as an example.
  • the scope of the present invention is not limited thereto.
  • the description of the base station is a cell, an antenna port, an antenna port group, an RRH, a transmission point, a reception point, an access point, a repeater, or the like as a downlink transmission entity to a terminal or an uplink reception entity from a terminal.
  • the repeater becomes a downlink transmission entity to the terminal or an uplink reception entity from the terminal, or when the repeater becomes an uplink transmission entity to the base station or a downlink reception entity from the base station,
  • the principles of the present invention described through various embodiments may be equally applied.
  • Embodiments of the present invention described above may be implemented through various means.
  • embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.
  • a method according to embodiments of the present invention may include one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), and Programmable Logic Devices (PLDs). It may be implemented by field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, and the like.
  • ASICs Application Specific Integrated Circuits
  • DSPs Digital Signal Processors
  • DSPDs Digital Signal Processing Devices
  • PLDs Programmable Logic Devices
  • FPGAs field programmable gate arrays
  • processors controllers, microcontrollers, microprocessors, and the like.
  • the method according to the embodiments of the present invention may be implemented in the form of a module, a procedure, or a function that performs the functions or operations described above.
  • the software code may be stored in a memory unit and driven by a processor.
  • the memory unit may be located inside or outside the processor, and may exchange data with the processor by various known means.
  • each component or feature is to be considered optional unless stated otherwise.
  • Each component or feature may be embodied in a form that is not combined with other components or features. It is also possible to combine some of the components and / or features to form an embodiment of the invention.
  • the order of the operations described in the embodiments of the present invention may be changed. Some components or features of one embodiment may be included in another embodiment or may be replaced with corresponding components or features of another embodiment. It is obvious that the claims may be combined to form an embodiment by combining claims that do not have an explicit citation relationship in the claims or as new claims by post-application correction.
  • Embodiments of the present invention can be applied to various wireless access systems and broadcast communication systems.
  • various radio access systems include 3rd Generation Partnership Project (3GPP), 3GPP2 and / or IEEE 802.xx (Institute of Electrical and Electronic Engineers 802) systems.
  • Embodiments of the present invention can be applied not only to the various radio access systems, but also to all technical fields to which the various radio access systems are applied.

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

An improved turbo code encoding method and an encoder therefor are disclosed. The encoder in the present disclosure may comprise four delayers. Also, the encoder may determine a circulation state through pre-encoding and, based on the circulation state, generate a turbo code having a tail-biting structure. Furthermore, the encoder may comprise a switching circuit and work just like the conventional LTE turbo code encoders by turning off the switching circuit.

Description

오류 정정 효율 개선을 위한 터보 코드 부호화기 및 부호화 방법Turbo Code Encoder and Encoding Method for Improving Error Correction Efficiency

본 발명은 무선 통신 시스템 상에서의 채널 코딩 방법에 관한 것으로서, 특히, 개선된 오류 정정 효율을 갖는 터보 코드 부호화기(turbo code encoder) 및 부호화 방법에 관한 것이다.The present invention relates to a channel coding method in a wireless communication system, and more particularly, to a turbo code encoder and an encoding method having an improved error correction efficiency.

무선 접속 시스템이 음성이나 데이터 등과 같은 다양한 종류의 통신 서비스를 제공하기 위해 광범위하게 전개되고 있다. 일반적으로 무선 접속 시스템은 가용한 시스템 자원(대역폭, 전송 파워 등)을 공유하여 다중 사용자와의 통신을 지원할 수 있는 다중 접속(multiple access) 시스템이다. 다중 접속 시스템의 예들로는 CDMA(code division multiple access) 시스템, FDMA(frequency division multiple access) 시스템, TDMA(time division multiple access) 시스템, OFDMA(orthogonal frequency division multiple access) 시스템, SC-FDMA(single carrier frequency division multiple access) 시스템 등이 있다.Wireless access systems are widely deployed to provide various kinds of communication services such as voice and data. In general, a wireless access system is a multiple access system capable of supporting communication with multiple users by sharing available system resources (bandwidth, transmission power, etc.). Examples of multiple access systems include code division multiple access (CDMA) systems, frequency division multiple access (FDMA) systems, time division multiple access (TDMA) systems, orthogonal frequency division multiple access (OFDMA) systems, and single carrier frequency (SC-FDMA). division multiple access) system.

상술한 통신 시스템들에서뿐만 아니라, 방송 시스템에 있어서도 채널 코드(channel code)가 필수적으로 이용되고 있다. 채널 코드의 일반적인 구성 방법의 예시로서, 송신단이 부호화기를 이용하여 입력 심볼에 대하여 부호화를 수행하고 부호화된 심볼을 송신할 수 있다. 또한, 예를 들어, 수신단은 부호화된 심볼을 수신하고 수신된 심볼에 대하여 복호를 수행하여 입력 심볼을 복원할 수 있다. 이 경우, 입력 심볼의 크기와 부호화된 심볼의 크기는 통신 시스템에 따라서 달리 정의될 수 있다. 예를 들어, 3GPP (3rd Generation Partnership Project)의 LTE (Long Term Evolution) 통신 시스템에서 사용되는 데이터 정보용 터보(turbo) 코드에서, 입력 심볼의 채되 크기는 최대 6144 비트이고, 부호화된 심볼의 크기는 18432 (6144*3) 비트이다. LTE 통신 시스템에서의 터보 코딩은 3GPP 기술 규격 36.212에 의하여 참조될 수 있다.In addition to the communication systems described above, channel codes are essentially used in broadcast systems. As an example of a general method of configuring a channel code, a transmitter may perform encoding on an input symbol by using an encoder and transmit an encoded symbol. Also, for example, the receiving end may restore the input symbol by receiving the encoded symbol and performing decoding on the received symbol. In this case, the size of the input symbol and the size of the encoded symbol may be defined differently according to the communication system. For example, in a turbo code for data information used in the Long Term Evolution (LTE) communication system of the 3rd Generation Partnership Project (3GPP), an input symbol has a maximum size of 6144 bits and a coded symbol size 18432 (6144 * 3) bits. Turbo coding in an LTE communication system may be referred to by 3GPP Technical Specification 36.212.

그러나, LTE 터보 코드는 코드의 구조상 SNR (Signal to Noise Ratio)이 증가되더라도 일정 영역을 벗어나면 성능 개선이 미미한 특징이 있다. 이와 관련하여, 보다 오류 발생률이 낮은 코드를 이용하는 것이 고려될 수 있으나, 이 경우, 복잡도가 증가하는 문제점이 있다. However, the LTE turbo code has a slight improvement in performance even if the signal to noise ratio (SNR) increases due to the structure of the code. In this regard, it may be considered to use a code having a lower error rate, but in this case, there is a problem that the complexity increases.

통신 시스템에 있어서 높은 오류율은 불필요한 데이터의 재송신과 채널 수신 실패를 초래할 수 있다. 또한, 지나치게 높은 복잡도의 코드는 기지국과 단말의 부하를 증가시킬 뿐만 아니라, 송수신 지연을 초래할 수 있다. 특히, 더 빠른 데이터의 송수신이 요구되는 차세대 통신 시스템에 있어서는, 상술한 문제점들이 해결이 요구된다. 따라서, 오류율을 낮추면서도 낮은 복잡도를 갖는 코딩 방법이 요구된다.High error rates in communication systems can lead to unnecessary data retransmissions and channel reception failures. In addition, the code of too high complexity not only increases the load of the base station and the terminal, but may also cause transmission and reception delays. In particular, in the next generation communication system requiring faster data transmission and reception, the above-mentioned problems are required to be solved. Therefore, there is a need for a coding method having a low complexity while lowering an error rate.

특히, 현재의 LTE 터보 코드는 정보의 크기가 증가하면 오류 플로어(error floor)가 발생하는 문제점이 있다. 따라서, URR (Ultra Reliable Radio) 및 LLR (Low Latency Radio)을 만족할 수 있는 채널 코딩 방법이 요구된다.In particular, the current LTE turbo code has a problem that an error floor occurs when the size of information increases. Accordingly, there is a need for a channel coding method capable of satisfying Ultra Reliable Radio (URR) and Low Latency Radio (LLR).

본 발명은, 상술한 문제점들을 해결하기 위하여 창안된 것으로서, 본 발명의 목적은 종래의 LTE 터보 코드와 역방향 호환성(backward compatibility)을 가지면서도 테일 바이티 구조를 갖는 터보 코드를 생성할 수 있는 방법을 제공하는 것이다.The present invention has been made to solve the above problems, and an object of the present invention is to provide a method for generating a turbo code having a tail duty structure while having backward compatibility with a conventional LTE turbo code. To provide.

본 발명의 또 다른 목적은 이러한 방법들을 지원하는 장치를 제공하는 것이다.Another object of the present invention is to provide an apparatus supporting these methods.

본 발명에서 이루고자 하는 기술적 목적들은 이상에서 언급한 사항들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 이하 설명할 본 발명의 실시예들로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 고려될 수 있다.Technical objects to be achieved in the present invention are not limited to the above-mentioned matters, and other technical problems which are not mentioned are those skilled in the art from the embodiments of the present invention to be described below. Can be considered.

상술한 과제를 해결하기 위한 본원의 터보 코드 부호화 방법은, 입력 신호를 사전 부호화 하는 단계; 상기 사전 부호화에 기초하여 종료 상태를 결정하는 단계; 상기 결정된 종료 상태와 상기 입력 신호의 길이에 기초하여 기설정된 순환 상태를 결정하는 단계; 및 상기 결정된 순환 상태에 기초하여 상기 입력 신호를 테일 바이팅(tail-biting) 구조를 갖는 터보 코드(turbo code)로 부호화하는 단계를 포함하고, 상기 부호화기는 입력단으로부터 출력단으로의 순방향 경로와 상기 출력단으로부터 상기 입력단으로의 재귀적 경로를 포함하고, 상기 순방향 경로의 상기 출력단에는, 상기 입력 신호, 1회 지연된 상기 입력 신호, 및 4회 지연된 상기 입력 신호가 배타적 논리합(exclusive OR, XOR)된 값이 인가되고, 상기 재귀적 경로의 상기 입력단에는, 상기 입력 신호, 3회 지연된 상기 입력 신호, 및 4회 지연된 상기 입력 신호가 XOR된 값이 인가될 수 있다.The turbo code encoding method of the present application for solving the above problems comprises the steps of pre-coding the input signal; Determining an end state based on the precoding; Determining a preset cyclic state based on the determined end state and the length of the input signal; And encoding the input signal into a turbo code having a tail-biting structure based on the determined cyclic state, wherein the encoder includes a forward path from an input terminal to an output terminal and the output terminal. A recursive path from to the input end, wherein the output end of the forward path has an exclusive OR (XOR) value of the input signal, the input signal delayed once, and the input signal delayed four times. The input terminal of the recursive path may be applied with a value obtained by XORing the input signal, the input signal delayed three times, and the input signal delayed four times.

또한, 상술한 과제를 해결하기 위한 터보 코드(turbo code) 부호화기는, 각각이 수신된 신호 값들을 배타적 논리합(exclusive OR, XOR)하여 출력하도록 구성된 제1 노드 (node), 제2 노드, 제3 노드, 제4 노드, 제5 노드, 제6 노드, 제7 노드, 및 제8 노드; 각각이 수신된 신호를 1회 지연하여 출력하도록 구성되고, 상기 제1 노드와 상기 제5 노드 사이에 순차적으로 직렬 연결된 제1 지연기, 제2 지연기, 제3 지연기, 및 제4 지연기; 상기 제4 노드와 상기 제5 노드 사이에 연결된 제1 스위칭 회로; 및 상기 제7 노드와 상기 제8 노드 사이에 연결된 제2 스위칭 회로를 포함하고, 상기 제1 노드는 입력 신호 및 상기 제8 노드로부터의 신호를 수신하고, 상기 제2 노드 및 상기 제1 지연기에 신호를 출력하도록 구성되고, 상기 제2 노드는 상기 제1 지연기 및 상기 제1 노드로부터의 신호를 수신하고, 상기 제3 노드에 신호를 출력하도록 구성되고, 상기 제3 노드는 상기 제2 노드 및 상기 제3 지연기로부터의 신호를 수신하고, 상기 제4 노드로 신호를 출력하도록 구성되고, 상기 제 4 노드는 상기 제3 노드로부터 신호를 수신하고, 상기 제1 스위칭 회로를 통하여 상기 제5 노드로부터의 신호를 수신하며, 출력 신호를 출력하도록 구성되고, 상기 제5 노드는 상기 제3 지연기 및 상기 제4 지연기로부터의 신호를 수신하고, 상기 제1 스위칭 회를 통하여 상기 제 4 노드에 신호를 출력하도록 구성되고, 상기 제 6 노드는 상기 제2 지연기 및 상기 제3 지연기로부터의 신호를 수신하고, 상기 제8 노드로 신호를 출력하도록 구성되고, 상기 제7 노드는 상기 제2 지연기 및 상기 제4 지연기로부터의 신호를 수신하고, 상기 제2 스위칭 회로를 통하여 상기 제8 노드로 신호를 출력하도록 구성되며, 상기 제8 노드는 상기 제6 노드로부터의 신호를 수신하고, 상기 제2 스위칭 회로를 통하여 상기 제7 노드로부터의 신호를 수신하며, 상기 제1 노드로 신호를 출력하도록 구성될 수 있다.In addition, a turbo code encoder for solving the above-described problems may include: a first node, a second node, and a third configured to output an exclusive OR (XOR) of the received signal values, respectively; A node, a fourth node, a fifth node, a sixth node, a seventh node, and an eighth node; A first delayer, a second delayer, a third delayer, and a fourth delayer, each of which is configured to delay and output the received signal once, and is sequentially connected between the first node and the fifth node. ; A first switching circuit connected between the fourth node and the fifth node; And a second switching circuit connected between the seventh node and the eighth node, wherein the first node receives an input signal and a signal from the eighth node, and supplies the second node and the first delay unit to the second node and the first delay node. Output a signal, wherein the second node is configured to receive signals from the first delayer and the first node, and output a signal to the third node, wherein the third node is configured to output the signal to the second node. And receive a signal from the third delayer and output a signal to the fourth node, the fourth node receiving the signal from the third node and passing through the first switching circuit. Receive a signal from a node and output an output signal, wherein the fifth node receives signals from the third delayer and the fourth delayer, and through the first switching circuit, the fourth node The sixth node is configured to receive signals from the second delayer and the third delayer and to output a signal to the eighth node, wherein the seventh node is configured to output the signal to the eighth node. Receive signals from the second delayer and the fourth delayer, and output a signal to the eighth node through the second switching circuit, the eighth node receiving a signal from the sixth node and And receiving a signal from the seventh node through the second switching circuit and outputting a signal to the first node.

상술한 본 발명의 양태들은 본 발명의 바람직한 실시예들 중 일부에 불과하며, 본원 발명의 기술적 특징들이 반영된 다양한 실시예들이 당해 기술분야의 통상적인 지식을 가진 자에 의해 이하 상술할 본 발명의 상세한 설명을 기반으로 도출되고 이해될 수 있다.The above-described aspects of the present invention are merely some of the preferred embodiments of the present invention, and various embodiments reflecting the technical features of the present invention will be described in detail by those skilled in the art. Based on the description, it can be derived and understood.

본 발명의 실시예들에 따르면 다음과 같은 효과가 있다.According to embodiments of the present invention has the following effects.

본 발명의 부호화기는 종래의 LTE 터보 부호화기와 역방향 호환성(backward compatibility)을 가질 수 있다.The encoder of the present invention may have backward compatibility with a conventional LTE turbo encoder.

또한, 본 발명의 부호화기는 테일 바이팅 구조를 갖는 터보 코드 부호화를 수행할 수 있다.In addition, the encoder of the present invention may perform turbo code encoding having a tail biting structure.

또한, 본 발명의 부호화기는 URLLC 환경을 만족할 수 있는 터보 코드 부호화를 수행할 수 있다.In addition, the encoder of the present invention may perform turbo code encoding, which may satisfy the URLLC environment.

본 발명의 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 이하의 본 발명의 실시예들에 대한 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 도출되고 이해될 수 있다. 즉, 본 발명을 실시함에 따른 의도하지 않은 효과들 역시 본 발명의 실시예들로부터 당해 기술분야의 통상의 지식을 가진 자에 의해 도출될 수 있다.Effects obtained in the embodiments of the present invention are not limited to the above-mentioned effects, and other effects not mentioned above are usually described in the technical field to which the present invention pertains from the description of the embodiments of the present invention. Can be clearly derived and understood by those who have That is, unintended effects of practicing the present invention may also be derived from those skilled in the art from the embodiments of the present invention.

본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되고, 첨부된 도면들은 본 발명에 대한 다양한 실시예들을 제공한다. 또한, 첨부된 도면들은 상세한 설명과 함께 본 발명의 실시 형태들을 설명하기 위해 사용된다.It is included as part of the detailed description to assist in understanding the present invention, and the accompanying drawings provide various embodiments of the present invention. In addition, the accompanying drawings are used to describe embodiments of the present invention in conjunction with the detailed description.

도 1은 일 예시에 따른 부호화 과정을 도시한다.1 illustrates an encoding process according to an example.

도 2는 일 예시에 따른 운송 블록의 부호화 과정을 도시한다.2 illustrates an encoding process of a transport block according to an example.

도 3은 일 예시에 따른 RSC (Recursive Systematic Convolutional) 부호화기를 도시한다.3 illustrates a Recursive Systematic Convolutional (RSC) encoder according to an example.

도 4는 LTE 터보 부호화기(encoder)를 도시한다.4 shows an LTE turbo encoder.

도 5는 RSC 부호화기에 따른 트렐리스(Trellis)의 일 예시를 도시한다. 5 shows an example of a trellis according to an RSC encoder.

도 6은 트렐리스 구조의 일 예시를 도시한다.6 shows an example of a trellis structure.

도 7은 일 실시예에 따른 터보 코드 부호화기의 구성도이다.7 is a block diagram of a turbo code encoder according to an embodiment.

도 8은 일 실시예에 따른 부호화 방법의 흐름도이다.8 is a flowchart of an encoding method according to an embodiment.

도 9는 본 발명의 일 실시예에 따른 기지국 및 단말의 구성도이다.9 is a configuration diagram of a base station and a terminal according to an embodiment of the present invention.

이하의 기술은 CDMA(code division multiple access), FDMA(frequency division multiple access), TDMA(time division multiple access), OFDMA(orthogonal frequency division multiple access), SC-FDMA(single carrier frequency division multiple access) 등과 같은 다양한 무선 접속 시스템에 사용될 수 있다. CDMA는 UTRA(Universal Terrestrial Radio Access)나 CDMA2000과 같은 무선 기술(radio technology)로 구현될 수 있다. TDMA는 GSM(Global System for Mobile communications)/GPRS(General Packet Radio Service)/EDGE(Enhanced Data Rates for GSM Evolution)와 같은 무선 기술로 구현될 수 있다. OFDMA는 IEEE 802.11(Wi-Fi), IEEE 802.16(WiMAX), IEEE 802-20, E-UTRA(Evolved UTRA) 등과 같은 무선 기술로 구현될 수 있다. UTRA는 UMTS(Universal Mobile Telecommunications System)의 일부이다. 3GPP(3rd Generation Partnership Project) LTE(long term evolution)는 E-UTRA를 사용하는 E-UMTS(Evolved UMTS)의 일부로서 하향링크에서 OFDMA를 채용하고 상향링크에서 SC-FDMA를 채용한다. LTE-A(Advanced)는 3GPP LTE의 진화된 버전이다.The following techniques include code division multiple access (CDMA), frequency division multiple access (FDMA), time division multiple access (TDMA), orthogonal frequency division multiple access (OFDMA), single carrier frequency division multiple access (SC-FDMA), and the like. It can be used in various radio access systems. CDMA may be implemented with a radio technology such as Universal Terrestrial Radio Access (UTRA) or CDMA2000. TDMA may be implemented with wireless technologies such as Global System for Mobile communications (GSM) / General Packet Radio Service (GPRS) / Enhanced Data Rates for GSM Evolution (EDGE). OFDMA may be implemented in a wireless technology such as IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802-20, Evolved UTRA (E-UTRA), or the like. UTRA is part of the Universal Mobile Telecommunications System (UMTS). 3rd Generation Partnership Project (3GPP) long term evolution (LTE) employs OFDMA in downlink and SC-FDMA in uplink as part of Evolved UMTS (E-UMTS) using E-UTRA. LTE-A (Advanced) is an evolution of 3GPP LTE.

설명을 명확하게 하기 위해, 3GPP LTE/LTE-A를 위주로 기술하지만 본 발명의 기술적 사상이 이에 제한되는 것은 아니다. 또한, 이하의 설명에서 사용되는 특정(特定) 용어들은 본 발명의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 본 발명의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.For clarity, the following description focuses on 3GPP LTE / LTE-A, but the technical spirit of the present invention is not limited thereto. In addition, specific terms used in the following description are provided to help the understanding of the present invention, and the use of such specific terms may be changed to other forms without departing from the technical spirit of the present invention.

도 1은 일 예시에 따른 부호화 과정을 도시한다.1 illustrates an encoding process according to an example.

LTE 통신 시스템에서 이용하는 터보 코드를 포함하는 많은 채널 코드들에 도 1과 같은 부호화 과정이 적용될 수 있다. 이하에서는, 설명의 편의를 위하여 LTE 통신 시스템의 표준 문서에 따른 용어에 기초하여 부호화 과정을 설명한다. The encoding process of FIG. 1 may be applied to many channel codes including a turbo code used in an LTE communication system. Hereinafter, for the convenience of description, the encoding process will be described based on terms according to standard documents of the LTE communication system.

도 1의 예시에서, 송신단은 운송 블록(Transport Block, TB)을 생성(S101)할 수 있다. 또한, 송신단은 운송 블록에 운송 블록에 대한 CRC 비트를 추가(S102)된다. 또한, 송신단은 CRC 비트가 추가된 운송 블록으로부터 코드 블록을 생성(S103)할 수 있다. 예를 들어, 송신단은 인코더의 입력 크기에 기초하여 운송 블록을 코드 블록으로 분할(segmentation)할 수 있다. 또한, 송신단은 분할된 각각의 코드 블록에 대하여 CRC 비트를 추가(S104)할 수 있다. 이 경우, 예를 들어, 코드 블록 및 코드 블록 CRC 비트의 크기는 6144 비트로 구성될 수도 있다. 송신단은 코드 블록과 CRC 비트로 구성된 블록 각각에 대하여 부호화 및 변조(S105)를 수행할 수 있다. 예를 들어, 상술한 바와 같이, 터보 코딩이 적용될 수도 있다.In the example of FIG. 1, the transmitting end may generate a transport block (TB) (S101). In addition, the transmitting end adds a CRC bit for the transport block to the transport block (S102). In addition, the transmitter may generate a code block from the transport block to which the CRC bit is added (S103). For example, the transmitting end may segment the transport block into code blocks based on the input size of the encoder. In addition, the transmitter may add a CRC bit to each divided code block (S104). In this case, for example, the size of the code block and the code block CRC bits may consist of 6144 bits. The transmitter may perform encoding and modulation (S105) on each block composed of a code block and CRC bits. For example, as described above, turbo coding may be applied.

복호화 과정은 도 1의 부호화 과정의 역순으로 수행될 수 있다. 예를 들어, 수신단은 각 부호화기에 대응하는 복호화기(decoder)를 이용하여 각 코드 블록 단위로 복호화를 수행하고, 최종적으로 하나의 운송 블록을 구성하여, 운송 블록의 CRC 통과여부를 확인할 수 있다.The decoding process may be performed in the reverse order of the encoding process of FIG. 1. For example, the receiver may decode each code block by using a decoder corresponding to each encoder, and finally configure one transport block to check whether the CRC passes through the transport block.

예를 들어, 입력 심볼의 크기는 MAC(Media Access Control) 계층으로부터의 운송 블록(transport block, TB)의 크기와는 상이할 수 있다. 운송 블록의 크기가 터보 코드의 최대 입력 심볼 크기보다 큰 경우에는, 운송 블록은 복수의 코드 블록(code block, CB)들로 분할 될 수 있다. LTE 통신 시스템의 표준에 따를 경우, 코드 블록의 크기는 6144 비트에서 CRC (Cyclic Redundancy Check) 비트를 감산한 것과 동일할 수도 있다. 터보 코드의 입력 심볼은 코드 블록과 CRC를 포함하는 데이터 또는 운송 블록 (예를 들어, 운송 블록은 6144 비트 미만) 과 CRC를 포함하는 데이터로 정의될 수도 있다. CRC 비트는 6144 비트에 비하여 매우 작은 값(예를 들어, 최대 24 비트)이다. 따라서, 이하의 설명에 있어서는, 다르게 정의되지 않는 한, 코드 블록은 코드 블록 자체 또는 코드 블록과 대응하는 CRC 비트를 지칭할 수 있으며, 운송 블록은 운송 블록 자체 또는 운송 블록과 대응하는 CRC 비트를 지칭할 수 있다.For example, the size of the input symbol may be different from the size of a transport block (TB) from the Media Access Control (MAC) layer. If the size of the transport block is larger than the maximum input symbol size of the turbo code, the transport block may be divided into a plurality of code blocks (CBs). According to the standard of the LTE communication system, the size of the code block may be the same as subtracting the Cyclic Redundancy Check (CRC) bit from 6144 bits. An input symbol of a turbo code may be defined as data comprising a code block and a CRC or data including a transport block (eg, a transport block is less than 6144 bits) and a CRC. The CRC bit is a very small value (e.g. up to 24 bits) compared to 6144 bits. Thus, in the following description, unless otherwise defined, a code block may refer to a code block itself or a CRC bit corresponding to a code block, and a transport block refers to a transport block itself or a CRC bit corresponding to a transport block. can do.

도 2는 일 예시에 따른 운송 블록의 부호화 과정을 도시한다.2 illustrates an encoding process of a transport block according to an example.

도 2는 도 1과 관련하여 상술한 부호화 과정에 대응하는 운송 블록(201)의 부호화 과정을 도시한다. 먼저, 운송 블록(201)에 운송 블록 CRC(202)가 추가된다. 운송 블록 CRC(202)는 복호 과정에서 운송 블록(201)의 확인을 위하여 이용될 수 있다. 그 후에 운송 블록(201) 및 운송 블록 CRC(202)는 3개의 코드 블록(203)들로 분할 된다. 본 실시예에서는 3 개의 코드 블록(203)들로 분할되었으나, 운송 블록(201)은 부호화기(205)의 입력 크기에 기초하여 복수의 코드블록들로 분할될 수 있다.FIG. 2 illustrates an encoding process of the transport block 201 corresponding to the encoding process described above with reference to FIG. 1. First, a transport block CRC 202 is added to the transport block 201. The transport block CRC 202 may be used for identification of the transport block 201 in the decoding process. The transport block 201 and transport block CRC 202 are then divided into three code blocks 203. In the present exemplary embodiment, the code block 203 is divided into three code blocks, but the transport block 201 may be divided into a plurality of code blocks based on an input size of the encoder 205.

코드 블록(203) 각각에는 코드 블록 CRC(204)가 추가된다. 코드 블록 CRC(204)는 수신단에서 코드 블록(203)의 확인을 위하여 이용될 수 있다. 코드 블록(203)과 코드 블록 CRC(204)은 부호화기(205) 및 변조기(206)를 거쳐 부호화될 수 있다.Code block CRC 204 is added to each code block 203. The code block CRC 204 may be used for identification of the code block 203 at the receiving end. Code block 203 and code block CRC 204 may be encoded via encoder 205 and modulator 206.

도 3은 일 예시에 따른 RSC (Recursive Systematic Convolutional) 부호화기를 도시한다.3 illustrates a Recursive Systematic Convolutional (RSC) encoder according to an example.

도 3의 RSC 부호화기(300)는 터보 코딩에 이용될 수 있다. 도 3에서, m은 입력 데이터를 나타내며, C1은 시스테매틱(systematic) 비트열, C2는 부호화된(coded) 비트열을 나타낸다. 여기서, RSC 부호화기(300)는 1/2 코드율(code rate)을 갖는다. The RSC encoder 300 of FIG. 3 may be used for turbo coding. In FIG. 3, m denotes input data, C1 denotes a systematic bit string, and C2 denotes a coded bit string. Here, the RSC encoder 300 has a 1/2 code rate.

RSC 부호화기(300)는 비재귀적(nonrecursive)-비-시스테매틱(non-systematic) 콘볼루셔널(convoluational) 부호화기의 입력에 부호화된 출력을 피드백함으로써 구성될 수 있다. 도 3의 실시예에서 부호화기(300)는 2개의 지연기(301, 302)들을 포함한다. 지연기(301, 302)의 값 D는 코딩 방식(coding scheme)에 따라서 결정될 수 있다. 지연기(301, 302)는 메모리 또는 쉬프트 레지스터(shift register)로 구성될 수 있다. RSC encoder 300 may be configured by feeding back the encoded output to the input of a nonrecursive-non-systematic convoluational encoder. In the embodiment of FIG. 3, the encoder 300 includes two delayers 301 and 302. The values D of the delayers 301 and 302 may be determined according to a coding scheme. Delays 301 and 302 may be configured as memory or shift registers.

도 4는 LTE 터보 부호화기(encoder)를 도시한다.4 shows an LTE turbo encoder.

LTE 터보 부호화기(400)의 코딩 방식(scheme)은 2개의 8-상태 요소 부호화기(410, 420)들(constituent encoders)과 하나의 터보 코드 내부 인버리버(internal interleaver)(430)를 갖는 병렬 연접 컨벌루션 코드(Parallel Concatenated Convolutional Code, PCCC)이다. The coding scheme of the LTE turbo encoder 400 is a parallel concatenation with two eight-state element encoders 410 and 420 and one turbo code internal interleaver 430. Parallel Concatenated Convolutional Code (PCCC).

도 4에서, 터보 부호화기(400)은 제1 요소 부호화기(constituent encoder)(410), 제2 요소 부호화기(420), 및 터보 코드 내부 인터리버(internal interleaver)(430)로 구성된다. 제1 요소 부호화기(410) 및 제2 요소 부호화기(420)는 8-상태(state) 요소 부호화기들이다. 제1 요소 부호화기(410) 및 제2 요소 부호화기(420)는 각각 도 3의 RSC 부호화기와 유사한 구조로 구성된다. 제1 요소 부호화기(410) 및 제2 요소 부호화기(420)는 각각 3개의 지연기(411, 412, 413, 421, 422, 423)를 포함한다. In FIG. 4, the turbo encoder 400 is composed of a first constituent encoder 410, a second element encoder 420, and a turbo code internal interleaver 430. The first element encoder 410 and the second element encoder 420 are eight-state element encoders. Each of the first element encoder 410 and the second element encoder 420 has a structure similar to that of the RSC encoder of FIG. 3. The first element encoder 410 and the second element encoder 420 each include three delayers 411, 412, 413, 421, 422, and 423.

도 4에서, D는 코딩 방식(coding scheme)에 따라서 결정되는 값이다. ck는 터보 부호화기(400)로의 입력이다. 제1 요소 부호화기(410) 및 제2 요소 부호화기(420)로부터의 출력은 각각 zk와 z'k으로 표시된다(denoted). 터보 코드 내부 인터리버(430)로부터 출력되는 값은 c'k로 표시된다. 일반적으로, 지연기(411,412,413,421,42,423)는 입력된 값을 1 클록씩 지연시킬 수 있다. 그러나, 지연기(411,412,413,421,42,423)는 내부 설정에 따라 1 클록 이상 동안 입력된 값을 지연시키도록 구성될 수 있다. 지연기(411,412,413,421,42,423)는 쉬프트 레지스터(shift register)로 구성될 수 있으며, 기설정된 클록만큼 입력된 비트를 지연시킨 뒤 입력된 비트를 다음 지연기(411,412,413,421,42,423)로 출력하도록 구성될 수 있다.In FIG. 4, D is a value determined according to a coding scheme. c k is the input to the turbo encoder 400. The outputs from the first element encoder 410 and the second element encoder 420 are denoted as z k and z ' k , respectively. The value output from the turbo code internal interleaver 430 is denoted by c ' k . In general, the delays 411, 412, 413, 421, 42, and 423 may delay the input value by one clock. However, the delays 411, 412, 413, 421, 42, 423 may be configured to delay the input value for more than one clock according to the internal setting. The delays 411, 412, 413, 421, 42, and 423 may be configured as shift registers, and may be configured to delay the input bits by a predetermined clock and then output the input bits to the next delays 411, 412, 413, 421, 42, 423. .

터보 코드 내부 인터리버(430)는 무선 채널로의 신호 송신시 발생할 수 있는 버스트 오류(burst error)의 영향을 감소시킬 수 있다. 예를 들어, 터보 코드 내부 인터리버(430)는 QPP(Quadratic Polynomial Permutation) 인터리버일 수도 있다. The turbo code internal interleaver 430 may reduce the effects of burst errors that may occur when transmitting signals over a wireless channel. For example, the turbo code internal interleaver 430 may be a Quadratic Polynomial Permutation (QPP) interleaver.

터보 코드는 고성능 순방향 오류 정정 (forward error correction, FEC) 코드로서, LTE 통신 시스템에서 이용되고 있다. 예를 들어, 터보 코드에 의하여 코딩된 데이터 블록은 3개의 서브블록들로 구성될 수도 있다. 하나의 서브블록은 m 비트의 페이로드(payload) 데이터에 대응할 수 있다. 다른 서브블록은, RSC(recursive systematic convolution) 코드를 이용하여 계산된, 페이로드에 대한 n/2 비트의 패리티(parity) 비트들로 구성될 수 있다. 또한, 나머지 서브 블록은 RSC 코드를 이용하여 계산된, 페이로드 데이터의 퍼뮤테이션(permutation)에 대한 n/2 비트의 패리티 비트들로 구성될 수 있다. 예를 들어, 상술한 퍼뮤테이션은 인터리버(interleaver)에 의하여 수행될 수 있다. 따라서, 페이로드와 함께 서로 상이한 패리티 비트의 2개의 서브블록들이 하나의 블록으로서 구성될 수 있다. 예를 들어, m이 n/2와 동일한 경우, 하나의 블록은 1/3의 부호율(code rate)을 갖는다. Turbo codes are high performance forward error correction (FEC) codes and are used in LTE communication systems. For example, a data block coded by turbo code may consist of three subblocks. One subblock may correspond to m-bit payload data. Another subblock may consist of n / 2 bits of parity bits for the payload, calculated using a recursive systematic convolution (RSC) code. In addition, the remaining sub-blocks may be composed of n / 2 bits of parity bits for permutation of payload data, calculated using an RSC code. For example, the above-described permutation may be performed by an interleaver. Thus, two subblocks of parity bits different from each other with the payload may be configured as one block. For example, if m is equal to n / 2, one block has a code rate of 1/3.

제1 요소 부호화기(410)에서, 입력 ck가 부호화된 비트 zk에 도달하는 과정은 두 개의 경로로 구분될 수 있다. 두 개의 경로는 입력단으로부터 출력단으로 출력 피드백 없이 연결된 제1 경로와 입력단으로부터 다시 입력단으로 피드백되는 제2 경로이다. In the first element encoder 410, a process of reaching the input bit z k by the input c k may be divided into two paths. The two paths are a first path connected without input feedback from the input to the output and a second path fed back from the input to the input.

제1 경로에서, 입력 ck, 지연기(411)을 거친 입력 ck, 및 지연기들(411, 412, 및 413)을 거친 입력 ck가 출력단에 인가된다. 제1 경로에 대한 입력단 출력단 사이의 관계는 다항식으로 표현될 수 있다. 제1 경로에 대한 다항식은 순방향 생성기 다항식(forward generator polynomial)으로 호칭되고, 하기의 수학식의 g1과 같이 표현될 수 있다.In the first path, c k is input, input via a delay unit 411, a rough input c k, and the retarder (411, 412, and 413), c k is applied to the output stage. The relationship between the input end and the output end of the first path may be expressed by a polynomial. The polynomial for the first path is called a forward generator polynomial and may be expressed as g1 of the following equation.

Figure PCTKR2017001074-appb-M000001
Figure PCTKR2017001074-appb-M000001

한편, 제2 경로에서, 입력 ck, 지연기들(411 및 412)을 거친 입력 ck, 및 지연기들(411, 412, 및 413)을 거친 입력 ck가 입력단에 피드백된다. 제2 경로에 대한 다항식은 재귀적 생성기 다항식(recursive generator polynomial)으로 호칭되고, 하기의 수학식의 g0와 같이 표현될 수 있다.On the other hand, in the second path, the input c k, the retarder (411 and 412) the coarse input c k, and the retarder (411, 412, and 413), a rough input c k is fed back to the input end. The polynomial for the second path is called a recursive generator polynomial and can be expressed as g0 in the following equation.

Figure PCTKR2017001074-appb-M000002
Figure PCTKR2017001074-appb-M000002

상기 수학식 1 및 2에서, “+”는 배타적 논리합(exclusive OR, XOR)을 의미하며, 1은 입력이 0번의 지연을 거침을 의미한다. 또한, Dn은 입력이 n번의 지연을 거침을 의미한다.In Equations 1 and 2, "+" means exclusive OR (XOR), and 1 means that the input goes through 0 delays. In addition, D n means that the input goes through n delays.

도 5는 RSC 부호화기에 따른 트렐리스(Trellis)의 일 예시를 도시한다.5 shows an example of a trellis according to an RSC encoder.

도 5는 도 3에 도시된 RSC 부호화기의 트렐리스의 구성을 도시한다. 도 5에서 Si는 i번째 입력 데이터의 상태(state)를 나타낸다. 도 5에서, 각 원은 각 노드를 나타낸다. 아울러, 각 노드들 사이에 이어진 선은 브랜치(branch)를 의미한다. 실선의 브랜치는 입력값 1에 대한 브랜치를, 점선의 브랜치는 입력값 0에 대한 브랜치를 의미한다. 브랜치 상의 값은 m/C1C2 (입력값/시스테매틱 비트, 부호화된 비트)로 표시된다. 또한, 인코더의 메모리의 개수에 지수적으로 비례하는 상태를 가질 수 있다. 예를 들어, 인코더가 a개의 메모리를 포함하는 경우, 2a개의 상태가 트렐리스에 포함될 수 있다.FIG. 5 shows the configuration of the trellis of the RSC encoder shown in FIG. In FIG. 5, S i represents a state of the i th input data. In Fig. 5, each circle represents each node. In addition, the line between each node means a branch. The solid line refers to the branch for input value 1, and the dotted line refers to the branch for input value 0. The value on the branch is expressed as m / C1C2 (input value / systematic bit, coded bit). It may also have a state that is exponentially proportional to the number of memories of the encoder. For example, if the encoder includes a memory, 2 a states can be included in the trellis.

트렐리스는 2개의 상태 사이에서 가능한 부호기의 상태 전이를 도시하는 상태 기계(state machine)이다. RSC 부호화기와 같은 컨볼루션 부호화기는 트렐리스 다이어그램(diagram)에 따라서 부호화를 수행할 수 있다. RSC 부호화기에 의하여 부호화된 코드워드는 트렐리스 구조에 기반한 알고리즘에 따라서 복호화될 수 있다. 예를 들어, 비터비(Viterbi) 또는 BCJR(Bahl, Cocke, Jelinek and Raviv) 알고리즘이 이용될 수 있다. Trellis is a state machine that shows the possible state transitions of an encoder between two states. A convolutional encoder, such as an RSC encoder, may perform encoding according to a trellis diagram. Codewords encoded by the RSC encoder may be decoded according to an algorithm based on the trellis structure. For example, Viterbi or BCJR (Bahl, Cocke, Jelinek and Raviv) algorithms can be used.

도 6은 트렐리스 구조의 일 예시를 도시한다.6 shows an example of a trellis structure.

도 6에서, n은 코드워드(codeword)의 길이를 나타낸다. 통상적으로, 추가적인 비트들을 입력 시퀀스 뒤에 추가함으로써, 트렐리스가 종료(terminated)될 수 있다. 일반적으로 0의 시퀀스로 구성된 시퀀스는 테일 비트(tail bit)로 호칭된다. 테일 비트는 트렐리스의 한 상태의 노드들이 0 값을 가지도록 하여 트렐리스를 종료시킨다. In FIG. 6, n represents the length of a codeword. Typically, trellis can be terminated by adding additional bits after the input sequence. In general, a sequence consisting of a sequence of zeros is called a tail bit. The tail bit terminates the trellis so that nodes in one state of the trellis have a value of zero.

도 6에서, 코드워드의 길이는 입력 데이터의 길이 k 및 테일 비트의 길이 t를 고려하여 결정될 수 있다. 예를 들어, 코드율이 R인 경우, 코드워드의 길이 n은 (k+t)/R의 값을 가질 수 있다. 일반적으로, 테일 비트의 길이 t는 부호화기의 모든 지연기(예를 들어, 메모리)를 리셋할 수 있는 길이로 결정될 수 있다. 예를 들어, 도 3의 RSC 부호화기는 총 2 비트의 테일 비트를 사용할 수 있다. 또한, 도 4와 같은 LTE 통신의 터보 부호화기는 3 비트의 테일 비트를 사용할 수 있다.In FIG. 6, the length of a codeword may be determined in consideration of the length k of input data and the length t of tail bits. For example, when the code rate is R, the length n of the codeword may have a value of (k + t) / R. In general, the length t of the tail bits can be determined as the length by which all delays (eg, memories) of the encoder can be reset. For example, the RSC encoder of FIG. 3 may use a total of 2 bits of tail bits. In addition, the turbo encoder of the LTE communication as shown in FIG. 4 may use 3 bits of tail bits.

테일 비트는 입력 데이터의 길이에 비하여 상대적으로 짧은 길이를 갖는다. 상술한 바와 같이 코드워드의 길이는 테일 비트의 길이와 연관되기 때문에, 코드워드의 길이가 한정된 경우에 테일 비트로 인한 코드율 손실이 발생할 수 있다. 그러나, 테일 비트로 인한 코드율 손실에도 불구하고, 테일 비트를 이용한 트렐리스 종료가 널리 이용되고 있다. 계산의 복잡도가 낮고 오류 정정 성능이 우수하기 때문이다.The tail bit has a relatively short length compared to the length of the input data. As described above, since the length of the codeword is related to the length of the tail bits, code rate loss due to the tail bits may occur when the length of the codeword is limited. However, despite the code rate loss due to tail bits, trellis termination using tail bits is widely used. This is because the computational complexity is low and the error correction performance is excellent.

펑쳐링(puncturing) 코드는 코드워드 중 일부를 펑쳐링하는 방식이다. 펑쳐링 코드에서, 코드워드 중 일부가 펑쳐링됨으로써 일부 코드워드가 송신되지 않는다. 예를 들어, 테일 비트의 추가로 인한 코드율 손실을 감소시키기 위하여 펑쳐링 코드가 이용될 수 있다. 이 경우, 수신단은 입력 데이터의 길이 k와 테일 비트의 길이 t의 합에 대응하는 트렐리스를 이용하여 복호를 수행할 수 있다. 즉, 수신단은 펑쳐링되지 않은 코드워드를 수신한 것으로 가정하고 복호를 수행할 수 있다. 이 경우, 수신단은 펑쳐링된 비트(즉, 송신단에서 송신되지 않은 비트)에 대응하는 노드로부터의 브랜치에 대하여는 입력값이 없는 것으로 간주할 수 있다. 즉, 해당 노드의 브랜치들에 대하여 입력 데이터는 동일한 확률로 0 또는 1로 가정된다.A puncturing code is a method of puncturing some of codewords. In the puncturing code, some codewords are not transmitted because some of the codewords are punctured. For example, puncturing codes may be used to reduce code rate loss due to the addition of tail bits. In this case, the receiving end may decode by using the trellis corresponding to the sum of the length k of the input data and the length t of the tail bit. That is, the receiver may perform decoding on the assumption that it has received a non-punctured codeword. In this case, the receiving end may assume that there is no input value for the branch from the node corresponding to the punctured bit (ie, the bit not transmitted at the transmitting end). That is, input data is assumed to be 0 or 1 with equal probability for branches of the node.

테일 비트를 이용하는 LTE 터보 코드와 달리, 이중 이진(double binary) 터보 코드는 테일 바이팅(tail biting) 구조를 갖는다. 테일 바이팅 구조란, 부호화기의 초기 상태와 종료 상태를 동일하게 함으로써, 트렐리스를 종료시키는 방법이다. 즉, 시작 상태와 종료 상태가 동일한 순환 상태(circulation state)를 형성함으로써 트렐리스가 종료되고, 테일 비트가 필요하지 않다. 그러나, 이중 이진 LTE 터보 코드는 순환 상태를 결정하기 위한 사전 부호화(pre-encoding) 작업을 요한다. 따라서, 부호화 과정의 추가로 인한 부호화 속도의 감소가 발생할 수 있다. 일반적으로 사전 부호화는 두 단계를 거쳐 수행될 수 있다. 먼저, 초기 상태를 ‘0’으로 설정하여 부호화가 수행되고, 그 후에, 부호화된 마지막 상태를 기준으로 기설정된 관계에 따라서 시작 상태와 마지막 상태가 동일하게 되도록 설정된다.Unlike LTE turbo codes that use tail bits, double binary turbo codes have a tail biting structure. The tail biting structure is a method of terminating trellis by making the initial state and the end state of the encoder the same. That is, the trellis is terminated by forming a circulation state in which the start state and the end state are the same, and no tail bit is required. However, dual binary LTE turbo code requires pre-encoding to determine the recursive state. Therefore, a decrease in the encoding speed may occur due to the addition of the encoding process. In general, precoding can be performed in two steps. First, encoding is performed by setting the initial state to '0', and thereafter, the starting state and the last state are set to be the same according to a predetermined relationship based on the encoded last state.

터보 코드는 비교적 간단한 구조를 가지면서도 섀넌(Shannon)의 이론적 한계에 근접하는 오류 정정 성능을 제공할 수 있다. 그러나, 특정한 SNR을 넘어서는 경우, 복호 성능의 추가적인 개선이 미미하다. 즉, 터보 코드는 일정 SNR이 넘어서면 더 이상의 오류율 개선이 미미한 오류-플로어(error-floor)를 갖는다.Turbo code can provide error correction performance that is close to Shannon's theoretical limit while having a relatively simple structure. However, if the specific SNR is exceeded, further improvement of the decoding performance is insignificant. That is, the turbo code has an error-floor in which further error rate improvement is insignificant when a certain SNR is exceeded.

이러한 문제점을 해결하기 위하여, 2가지 방식이 고려될 수 있다. 예를 들어, 현재 터보 코드에 비하여 오류-플로어가 발생하지 않는 코드를 사용하는 것이 고려될 수 있다. 또한, 예를 들어, 현재의 터보 코드에 오버헤드(overhead)를 추가하여 연접(concatenate) 코드가 이용될 수도 있다.In order to solve this problem, two methods can be considered. For example, it may be considered to use code that does not generate an error-floor compared to current turbo code. Also, for example, concatenate code may be used by adding overhead to the current turbo code.

5세대 이동통신 기술과 관련하여, 신뢰성(reliable) 통신이 연구되고 있다. 신뢰성 통신은 MCS(Mission Critical Service)의 실현을 위한, 무 에러 송신(Error Free Transmission) 또는 서비스 가용화(Service Availability)를 통하여 실현되는 새로운 통신 서비스를 의미한다. 신뢰성 통신은 M2M(Machin-to-Machine) 통신과 같은 실시간(Real-Time) 요구조건을 갖는 통신에서 요구될 수 있다. 또한, 의학적인 이유 또는 응급 사항과 관련하여, 신뢰성 통신이 요구될 수 있다. Regarding the fifth generation mobile communication technology, reliable communication is being studied. Reliable communication refers to a new communication service realized through Error Free Transmission or Service Availability for realizing a mission critical service (MCS). Reliability communications may be required in communications with Real-Time requirements, such as Machine-to-Machine (M2M) communications. In addition, with respect to medical reasons or emergencies, reliable communication may be required.

특히, 5 세대 이동통신 기술과 관련하여, URLLC (Ultra Reliable and Low-Latency Communication)가 논의되고 있다. URLLC 시나리오에서, 10-5 이하의 BLER(Block Error Rate)에서 오류 플로어가 발생할 것이 요구된다. 여기서 오류 플로어는 정보 크기의 증가에도 불구하고 오류율의 감소가 미미한 지점을 의미한다. LTE 터보 코드에 있어서는 정보 크기의 증가에 따라, 10-4 이하의 BLER에서 오류 플로어가 발생한다. 도 4와 관련하여 상술한 바와 같이, LTE 터보 코드는 3개의 메모리(지연기)로 구성된다. LTE 터보 코드는 3개의 메모리로 구성될 수 있는 다항식들 중 가장 낮은 BLER에서 오류 플로어를 갖도록 구성되어 있다. 따라서, LTE 터보 코드의 부호화기의 구조적 변경 없이는 오류 플로어를 개선할 수 없다. In particular, with respect to the fifth generation mobile communication technology, Ultra Reliable and Low-Latency Communication (URLLC) is being discussed. In the URLLC scenario, an error floor is required to occur at a Block Error Rate (BLER) of 10-5 or less. In this case, the error floor refers to a point where the error rate decreases in spite of an increase in information size. In the case of the LTE turbo code, as the information size increases, an error floor occurs in a BLER of 10 −4 or less. As described above with respect to FIG. 4, the LTE turbo code consists of three memories (delays). The LTE turbo code is configured to have an error floor at the lowest BLER of polynomials that may consist of three memories. Therefore, the error floor cannot be improved without structural changes of the encoder of the LTE turbo code.

따라서, 이하에서는, LTE 터보 부호화기의 메모리 확장을 통한 오류 플로어 개선 방법을 제안한다.Therefore, hereinafter, a method of improving an error floor through memory expansion of an LTE turbo encoder is proposed.

도 7은 일 실시예에 따른 터보 코드 부호화기의 구성도이다.7 is a block diagram of a turbo code encoder according to an embodiment.

도 7에서, 부호화기(700)는 제1 지연기(711), 제2 지연기(712), 제3 지연기(713), 및 제4 지연기(714)를 포함하고 있다. 즉, 부호화기(700)는 4개의 메모리 또는 쉬프트 레지스터를 포함하고, 터보 코드 부호화를 수행할 수 있다. 제1 내지 제8 노드들(721, 722, 723, 724, 725, 726, 727, 및 728)은 배타적 논리합(exclusive-OR, XOR)을 수행하도록 구성된다. 각 노드들(721, 722, 723, 724, 725, 726, 727, 및 728)에 입출력은 화살표의 방향에 따라서 설정된다. 또한, 제 4 노드(724)와 제 8 노드(728)는 스위치를 포함하고 있다.In FIG. 7, the encoder 700 includes a first delayer 711, a second delayer 712, a third delayer 713, and a fourth delayer 714. That is, the encoder 700 may include four memories or shift registers and perform turbo code encoding. The first through eighth nodes 721, 722, 723, 724, 725, 726, 727, and 728 are configured to perform an exclusive-OR (XOR). Inputs and outputs to the nodes 721, 722, 723, 724, 725, 726, 727, and 728 are set in accordance with the direction of the arrow. In addition, the fourth node 724 and the eighth node 728 includes a switch.

도 7에 도시된 바와 같이, 제 4 노드(724)와 제 8 노드(728)의 스위치 연결을 변경하는 경우, 블록(750)이 부호화기(700)로부터 완전히 고립(isolation)된다. 블록(750)을 제외하면, 부호화기(700)는 도 3의 부호화기와 동일한 동작을 수행하도록 구성된다. 즉, 도 7의 부호화기(700)는 LTE 터보 인코더에 이용되는 RSC 인코더에 추가적인 메모리를 포함하는 블록(750)이 추가된 형태를 갖는다. 따라서, 종래의 LTE 터보 인코더에 대한 역방향 호환성(backward compatibility)을 위하여, 제 4 노드(724)와 제 8 노드(728)의 스위치 연결이 변경될 수 있다. LTE 터보 인코더의 동작에 대하여는 도 4 및 도 5와 관련하여 상술된 바와 같다, As shown in FIG. 7, when changing the switch connection of the fourth node 724 and the eighth node 728, block 750 is completely isolated from the encoder 700. Except for block 750, the encoder 700 is configured to perform the same operations as the encoder of FIG. 3. That is, the encoder 700 of FIG. 7 has a form in which a block 750 including additional memory is added to the RSC encoder used in the LTE turbo encoder. Therefore, for backward compatibility with the conventional LTE turbo encoder, the switch connection of the fourth node 724 and the eighth node 728 may be changed. Operation of the LTE turbo encoder is as described above with reference to FIGS. 4 and 5.

도 7의 부호화기(700)는 제1 노드(721)와 제5 노드(725) 사이에 순차적으로 직렬 연결된 제1 지연기(711), 제2 지연기(712), 제3 지연기(713), 및 제4 지연기(714)를 포함한다. The encoder 700 of FIG. 7 includes a first delayer 711, a second delayer 712, and a third delayer 713 sequentially connected between the first node 721 and the fifth node 725. And a fourth retarder 714.

제1 노드(721)는 입력 신호 및 제8 노드(728)로부터의 신호를 수신하고, 제2 노드(722) 및 제1 지연기(711)에 신호를 출력한다. 제2 노드(722)는 제1 지연기(711) 및 제1 노드(721)로부터의 신호를 수신하고, 제3 노드(723)에 신호를 출력한다. 제3 노드(723)는 제2 노드(722) 및 제3 지연기(713)로부터의 신호를 수신하고, 제4 노드(724)로 신호를 출력한다. 제 4 노드(724)는 제3 노드(723)로부터 신호를 수신하고, 제1 스위칭 회로를 통하여 제5 노드(725)로부터의 신호를 수신하며, 출력 신호를 출력한다. 제5 노드는 제3 지연기(713) 및 제4 지연기(714)로부터의 신호를 수신하고 제1 스위칭 회를 통하여 제 4 노드(724)에 신호를 출력한다. 제 6 노드(726)는 제2 지연기(712) 및 제3 지연기(713)로부터의 신호를 수신하고 제8 노드(728)로 신호를 출력한다. 또한, 제7 노드는 제2 지연기(712) 및 제4 지연기(714)로부터의 신호를 수신하고, 제2 스위칭 회로를 통하여 제8 노드(728)로 신호를 출력한다. 제8 노드(728)는 제6 노드(726)로부터의 신호를 수신하고, 제2 스위칭 회로를 통하여 제7 노드(727)로부터의 신호를 수신하며, 제1 노드(721)로 신호를 출력한다.The first node 721 receives the input signal and the signal from the eighth node 728, and outputs a signal to the second node 722 and the first delayer 711. The second node 722 receives the signals from the first delayer 711 and the first node 721, and outputs a signal to the third node 723. The third node 723 receives the signals from the second node 722 and the third delayer 713 and outputs the signals to the fourth node 724. The fourth node 724 receives a signal from the third node 723, receives a signal from the fifth node 725 through the first switching circuit, and outputs an output signal. The fifth node receives the signals from the third delayer 713 and the fourth delayer 714 and outputs the signals to the fourth node 724 via the first switching cycle. The sixth node 726 receives the signals from the second delayer 712 and the third delayer 713 and outputs the signals to the eighth node 728. In addition, the seventh node receives signals from the second delayer 712 and the fourth delayer 714, and outputs a signal to the eighth node 728 through the second switching circuit. The eighth node 728 receives a signal from the sixth node 726, receives a signal from the seventh node 727 through the second switching circuit, and outputs a signal to the first node 721. .

각각의 노드들(721, 722, 723, 724, 725, 726, 727, 728)은 입력된 신호를 XOR 연산하여 출력하도록 구성된다. 또한, 제1 및 제2 스위칭 회로는 선택적으로 연결을 차단하도록 구성된다. 예를 들어, 제1 및 제2 스위칭 회로가 턴-오프(turn-off)되는 경우, 제4 노드(724)는 제5 노드(725)로부터의 신호를 수신할 수 없으며 제 8 노드(728)는 제7 노드(7270로부터의 신호를 수신할 수 없다. Each of the nodes 721, 722, 723, 724, 725, 726, 727, and 728 is configured to perform an XOR operation on the input signal and output the same. Also, the first and second switching circuits are configured to selectively disconnect the connection. For example, when the first and second switching circuits are turned off, the fourth node 724 cannot receive the signal from the fifth node 725 and the eighth node 728. Cannot receive a signal from the seventh node 7270.

이하에서는, 스위치 연결이 도 7과 같은 경우, 부호화기(700)의 동작에 대하여 설명한다.Hereinafter, when the switch connection is the same as FIG. 7, the operation of the encoder 700 will be described.

도 7에서 재귀적(recursive) 경로에 대한 원시 다항식(primitive polynomial) gnew0은 하기의 수학식과 같다. 도 7에서, 재귀적 경로는 제1 노드(721)에 인가되는 신호들의 경로에 의하여 형성된다.Figure 7 recursively (recursive) primitive polynomial (primitive polynomial) g new0 for the path is equal to the mathematical expression. In FIG. 7, a recursive path is formed by a path of signals applied to the first node 721.

Figure PCTKR2017001074-appb-M000003
Figure PCTKR2017001074-appb-M000003

따라서, 부호화기(700)의 입력단으로부터 출력단으로의 순방향 경로에서, 출력단에는 입력, 3회 지연된 입력, 및 4회 지연된 입력의 XOR 연산 값이 출력단에 인가된다.Accordingly, in the forward path from the input terminal to the output terminal of the encoder 700, the output terminal is supplied with an XOR operation value of the input, the input delayed three times, and the input delayed four times.

또한, 순방향(forward) 경로에 대한 원시 다항식 gnew1은 하기의 수학식과 같다. 도 7에서, 순방향 경로는 제 4 노드(724)에 인가되는 신호들의 경로에 의하여 형성된다. In addition, the primitive polynomial g new1 for the forward (forward) path is equal to the mathematical expression. In FIG. 7, the forward path is formed by the path of signals applied to the fourth node 724.

Figure PCTKR2017001074-appb-M000004
Figure PCTKR2017001074-appb-M000004

도 7에서, 부호화기(700)의 출력단으로부터 입력단으로의 재귀적 경로에서, 입력단에는, 입력, 1회 지연된 입력, 및 4회 지연된 입력의 XOR 연산 값이 입력단에 인가된다. 한편, 도 7에서 부호화기(700)는 2개의 스위칭 회로를 포함하나, 2개의 스위칭 회로는 하나의 스위칭 회로로서 구현될 수 있다.In FIG. 7, in the recursive path from the output end of the encoder 700 to the input end, an XOR operation value of an input, one delayed input, and four delayed inputs is applied to the input terminal. Meanwhile, in FIG. 7, the encoder 700 includes two switching circuits, but two switching circuits may be implemented as one switching circuit.

상기 수학식 3 및 4에서, “+”는 배타적 논리합(exclusive OR, XOR)을 의미하며, 1은 입력이 0번의 지연을 거침을 의미한다. 또한, Dn은 입력이 n번의 지연을 거침을 의미한다.In Equations 3 and 4, “+” means exclusive OR (XOR), and 1 means that the input goes through 0 delays. In addition, D n means that the input goes through n delays.

수학식 3의 부호화기(700)의 재귀 생성기 다항식은 풀 랭크(full rank)의 전달함수로 변환될 수 있다. 따라서, 테일 바이팅(tail biting) 기법이 부호화기(700)에 적용될 수 있다.The recursive generator polynomial of the encoder 700 of Equation 3 may be converted into a full rank transfer function. Thus, a tail biting technique may be applied to the encoder 700.

상술한 바와 같이, 테일 바이팅 기법이 적용되는 경우, 트렐리스의 초기 상태와 마지막 상태가 동일한 상태로 설정될 필요가 있다. 도 7의 부호화기(700)는 4개의 메모리(지연기 711, 712, 713, 및 714)를 포함한다. 따라서, 부호화기(700)는 24개의 상태를 갖는다. 상술한 바와 같이, 테일 바이팅 기법을 적용하기 위하여, 사전 부호화 단계가 이용될 수 있다.As described above, when the tail biting technique is applied, the initial state and the last state of the trellis need to be set to the same state. The encoder 700 of FIG. 7 includes four memories (delays 711, 712, 713, and 714). Thus, the encoder 700 has 24 states. As described above, in order to apply the tail biting technique, a pre-coding step may be used.

먼저, 정보 비트의 길이는 K로 가정된다. 먼저, K 비트 시퀀스를 이용하여 사전 부호화(pre-encoding)가 수행된다. 이 경우, K mod 15의 값에 따라서, 하기의 표 1 및 표 2를 참조하여 상태가 설정될 수 있다. 사전 부호화가 수행된 후 종료 상태에 대응하는 행과 K mod 15의 값에 대응하는 열의 교차점의 값이 시작과 종료 상태가 동일한 상태를 나타낸다. 이 경우, 사전 부호화를 위한 초기 값은 ‘0’으로 설정될 수 있다.First, the length of the information bit is assumed to be K. First, pre-encoding is performed using a K bit sequence. In this case, according to the value of K mod 15, the state may be set with reference to Tables 1 and 2 below. After the pre-coding is performed, the value of the intersection of the row corresponding to the end state and the column corresponding to the value of K mod 15 indicates the same state as the start and end states. In this case, an initial value for precoding may be set to '0'.

종료상태Exit status K mod 15K mod 15 1One 22 33 44 55 66 77 00 00 00 00 00 00 00 00 1One 88 44 22 99 1212 66 1111 22 99 1212 66 1111 55 1010 1313 33 1One 88 44 22 99 1212 66 44 22 99 1212 66 1111 55 1010 55 1010 1313 1414 1515 77 33 1One 66 1111 55 1010 1313 1414 1515 77 77 33 1One 88 44 22 99 1212 88 44 22 99 1212 66 1111 55 99 1212 66 1111 55 1010 1313 1414 1010 1313 1414 1515 77 33 1One 88 1111 55 1010 1313 1414 1515 77 33 1212 66 1111 55 1010 1313 1414 1515 1313 1414 1515 77 33 1One 88 44 1414 1515 77 33 1One 88 44 22 1515 77 33 1One 88 44 22 99

종료상태Exit status K mod 15K mod 15 88 99 1010 1111 1212 1313 1414 00 00 00 00 00 00 00 00 1One 55 1010 1313 1414 1515 77 33 22 1414 1515 77 33 1One 88 44 33 1111 55 1010 1313 1414 1515 77 44 1313 1414 1515 77 33 1One 88 55 88 44 22 99 1212 66 1111 66 33 1One 88 44 22 99 1212 77 66 1111 55 1010 1313 1414 1515 88 1010 1313 1414 1515 77 33 1One 99 1515 77 33 1One 88 44 22 1010 44 22 99 1212 66 1111 55 1111 1One 88 44 22 99 1212 66 1212 77 33 1One 88 44 22 99 1313 22 99 1212 66 1111 55 1010 1414 99 1212 66 1111 55 1010 1313 1515 1212 66 1111 55 1010 1313 1414

예를 들어, K가 100인 경우, K mod 15는 10이다. 또한, 예를 들어, 사전 부호화의 종료 상태는 8으로 가정될 수 있다. 이 경우, 표 2를 참조하여, 시작 상태와 종료 상태가 동일한 상태(즉, 순환 상태)는 14번째 상태로 결정될 수 있다. 또한, 결정된 순환 상태에 기초하여 부호화가 수행될 수 있다. 따라서, 부호화된 코드는 테일 바이팅 구조를 가진다. For example, if K is 100, K mod 15 is 10. Also, for example, the end state of precoding may be assumed to be 8. In this case, referring to Table 2, a state in which the start state and the end state are the same (that is, the cyclic state) may be determined as the 14th state. In addition, encoding may be performed based on the determined cyclic state. Thus, the coded code has a tail biting structure.

상술한 표 1 및 2는 K mod 15의 값이 0인 경우를 포함하고 있지 않다. K mod 15가 0인 경우에는, 후술하는 방법에 따라 테일 바이팅 구조를 갖는 터보 코드 부호화가 수행될 수 있다.Tables 1 and 2 described above do not include the case where the value of K mod 15 is zero. When K mod 15 is 0, turbo code encoding having a tail biting structure may be performed according to a method described below.

예를 들어, 정보 비트의 크기는 K’이고, K’ mod 15는 0일 수 있다. 이 경우, 부호화는 K’+1 비트의 크기를 갖는 정보 비트에 기초하여 부호화가 수행될 수 있다. 예를 들어, K’비트의 정보 비트들에 기설정된 값의 1 비트가 추가될 수 있다. 예를 들어, 기설정된 값은 송신단이 수신단에 송신할 수도 있다. K’+1 비트의 정보 비트에 대하여 사전 부호화가 수행될 수 있다. 사전 부호화의 종료 상태와 (K’+1) mod 15의 값에 기초하여 표 1 및 표 2에서 순환 상태가 결정될 수 있다. For example, the size of the information bit may be K 'and K' mod 15 may be zero. In this case, encoding may be performed based on information bits having a size of K '+ 1 bits. For example, one bit of a predetermined value may be added to the information bits of the K ′ bit. For example, the preset value may be transmitted by the transmitting end to the receiving end. Pre-coding may be performed on information bits of K ′ + 1 bits. The cyclic state may be determined in Tables 1 and 2 based on the end state of the pre-coding and the value of (K ′ + 1) mod 15.

송신단과 수신단은 추가된 1 비트의 값을 알고 있기 때문에, 추가된 비트를 이용하여 이전 상태를 알 수 있다. 예를 들어, 부호화기는 K’ 비트의 마지막에 기설정된 1 비트를 추가한다. 즉, 기설정된 1 비트를 LSB(Least Significant Bit)로 갖는 K’+1 비트의 비트 시퀀스가 이용될 수 있다. 부호화기는 K’+1 비트의 비트 시퀀스에 기초하여 사전 부호화를 수행하고, 상술한 표 1 및 표 2에서의 순환 상태를 결정한다. 기설정된 값의 1 비트는 사전 부호화에 이용되나, 실제로 수신단에 송신되지 않을 수도 있다. Since the transmitting end and the receiving end know the value of the added 1 bit, the previous state can be known by using the added bit. For example, the encoder adds one preset bit to the end of the K 'bit. That is, a bit sequence of K '+ 1 bits having a predetermined 1 bit as a Least Significant Bit (LSB) may be used. The encoder performs precoding based on a bit sequence of K '+ 1 bits, and determines the cyclic state in Tables 1 and 2 described above. One bit of the preset value is used for precoding, but may not actually be transmitted to the receiving end.

상술한 실시예들에 있어서, 테일 바이팅 비트의 추가 없이 테일 바이팅 구조를 갖는 코드를 생성하는 방안이 설명되었다. 그러나, 종래의 LTE 터보 코드와 동일하게 3 비트의 테일 바이팅 비트가 이용될 수 있다. In the above-described embodiments, a method of generating a code having a tail biting structure without adding tail bitting bits has been described. However, 3 bit tail bitting bits may be used as in the conventional LTE turbo code.

예를 들어, 3 비트의 테일 바이팅 비트가 사용될 수 있다. 추가된 메모리(제4 지연기(714))에 대하여만 테일 바이팅 기법이 적용될 수 있다. 도 7에서, 제4 지연기(714)는 제3 지연기(713)에만 연결된다. 따라서, LTE 터보 코딩과 같이 3개의 테일 바이팅 비트가 이용되는 경우, 제4 지연기(714)에 입력되는 코드는 테일 바이팅 구조를 갖는다고 가정될 수 있다. 이 경우, 제1 지연기(711)와 제2 지연기(712)의 상태는 제4 지연기의 테일 바이팅 상태 결정에 고려되지 않을 수도 있다.For example, a 3-bit tail biting bit can be used. The tail biting technique can be applied only to the added memory (fourth delay 714). In FIG. 7, the fourth delayer 714 is connected only to the third delayer 713. Therefore, when three tail bitting bits are used, such as LTE turbo coding, it may be assumed that the code input to the fourth delayer 714 has a tail biting structure. In this case, the states of the first delayer 711 and the second delayer 712 may not be considered in determining the tail biting state of the fourth delayer.

이 경우, 부호화기(700)는 2개의 메모리를 갖는 부호화기로 가정될 수 있다. 이 경우, 부호화기(700)는 4개의 상태를 갖는 것으로 간주된다. 이 경우, K mod 3의 값과 사전 인코딩의 종료 상태에 기초하여, 표 3에 따라서 순환 상태가 결정될 수 있다. 여기서, K는 정보 비트의 크기를 나타낸다.In this case, the encoder 700 may be assumed to be an encoder having two memories. In this case, the encoder 700 is considered to have four states. In this case, the recursive state may be determined according to Table 3 based on the value of K mod 3 and the end state of the pre-encoding. Where K represents the size of the information bit.

종료상태Exit status K mod 3K mod 3 1One 22 00 00 00 1One 22 33 22 33 1One 33 1One 22

또한, 상술한 바와 같이, 정보 비트의 크기는 K’이고, K’ mod 3은 0일 수 있다. 이 경우, 부호화는 K’+1 비트의 크기를 갖는 정보 비트에 기초하여 부호화가 수행될 수 있다. 예를 들어, K’비트의 정보 비트들에 기설정된 값의 1 비트가 추가될 수 있다. 예를 들어, 기설정된 값은 송신단이 수신단에 송신할 수도 있다. K’+1 비트의 정보 비트에 대하여 사전 부호화가 수행될 수 있다. 사전 부호화의 종료 상태와 (K’+1) mod 3의 값에 기초하여 표 1 및 표 2에서 순환 상태가 결정될 수 있다. In addition, as described above, the size of the information bit may be K 'and K' mod 3 may be zero. In this case, encoding may be performed based on information bits having a size of K '+ 1 bits. For example, one bit of a predetermined value may be added to the information bits of the K ′ bit. For example, the preset value may be transmitted by the transmitting end to the receiving end. Pre-coding may be performed on information bits of K ′ + 1 bits. The cyclic state may be determined in Tables 1 and 2 based on the end state of the precoding and the value of (K ′ + 1) mod 3.

송신단과 수신단은 추가된 1 비트의 값을 알고 있기 때문에, 추가된 비트를 이용하여 이전 상태를 알 수 있다. 또한, 상술한 바와 같이, 추가된 1 비트는 사전 부호화에서 이용되나, 실제로 수신단에 송신되지 않을 수도 있다.Since the transmitting end and the receiving end know the value of the added 1 bit, the previous state can be known by using the added bit. In addition, as described above, the added 1 bit is used in precoding, but may not actually be transmitted to the receiving end.

도 8은 일 실시예에 따른 부호화 방법의 흐름도이다. 8 is a flowchart of an encoding method according to an embodiment.

도 8에서, 부호화기는 도 7의 부호화기(700)일 수 있다. 또한, 이하에서는 도 7의 부호화기(700)의 제1 스위칭 회로 및 제2 스위칭 회로가 모두 연결(즉, 턴-온(trun-on))된 상태를 중심으로 설명한다. 제1 스위칭 회로 및 제2 스위칭 회로가 모두 연결해제(즉, 턴-오프(turn-off))된 상태에서, 부호화기는 도 4 및 도 5와 관련하여 상술한 LTE 터보 부호화기와 동일하게 동작할 수 있다.In FIG. 8, the encoder may be the encoder 700 of FIG. 7. In the following description, the first switching circuit and the second switching circuit of the encoder 700 of FIG. 7 are all connected (that is, turned on). With both the first switching circuit and the second switching circuit disconnected (ie, turned off), the encoder can operate in the same manner as the LTE turbo encoder described above with respect to FIGS. 4 and 5. have.

먼저, 부호화기는 송신하고자 하는 입력 신호에 대하여 사전 부호화(S801)한다. 사전 부호화의 결과에 기초하여 부호화기는 종료 상태를 결정(S802)한다. 또한, 부호화기는 입력 신호의 길이 및 종료 상태에 기초하여 기설정된 순환 상태를 결정(S803)한다. 순환 상태의 결정 방법은 상술한 표 1 내지 표 3과 관련된 설명에 의하여 참조될 수 있다. 부호화기는 결정된 순환 상태에 기초하여 입력 신호를 테일 바이팅 구조를 갖는 터보 코드로 부호화(S804)한다. 또한, 도 8에는 미도시되었으나, 부호화기는 부호화된 코드워드를 송신할 수 있다. First, the encoder pre-encodes an input signal to be transmitted (S801). The encoder determines an end state based on the result of the precoding (S802). In addition, the encoder determines a preset cyclic state based on the length and the end state of the input signal (S803). How to determine the cyclic state can be referred to by the description associated with Tables 1 to 3 described above. The encoder encodes an input signal into a turbo code having a tail biting structure based on the determined cyclic state (S804). In addition, although not shown in FIG. 8, the encoder may transmit an encoded codeword.

도 9는 본 발명의 실시예로서 도 1 내지 도 8에서 설명한 본 발명의 실시예들이 적용될 수 있는 기기들의 구성을 개략적으로 설명하기 위한 도면이다.FIG. 9 is a diagram for schematically describing a configuration of devices to which the embodiments of the present invention described with reference to FIGS. 1 to 8 may be applied as an embodiment of the present invention.

도 9를 참조하여, 본 발명에 따른 기지국 장치(10)는, 수신 모듈(11), 송신모듈(12), 프로세서(13), 메모리(14) 및 복수개의 안테나(15)를 포함할 수 있다. 송신 모듈(12)은 외부 장치(예를 들어, 단말)로의 각종 신호, 데이터 및 정보를 전송할 수 있다. 수신 모듈(11)은 외부 장치(예를 들어, 단말)로부터의 각종 신호, 데이터 및 정보를 수신할 수 있다. 수신 모듈(11)과 송신 모듈(12)은 트랜시버(transceiver)로서 호칭될 수 있다. 프로세서(13)는 기지국 장치(10) 전반의 동작을 제어할 수 있다. 복수개의 안테나(15)는 예를 들어 2-차원 안테나 배치에 따라서 구성될 수 있다. Referring to FIG. 9, the base station apparatus 10 according to the present invention may include a receiving module 11, a transmitting module 12, a processor 13, a memory 14, and a plurality of antennas 15. . The transmission module 12 may transmit various signals, data, and information to an external device (eg, a terminal). The reception module 11 may receive various signals, data, and information from an external device (eg, a terminal). The receiving module 11 and the transmitting module 12 may be referred to as transceivers. The processor 13 may control the overall operation of the base station apparatus 10. The plurality of antennas 15 may be configured according to, for example, a two-dimensional antenna arrangement.

본 발명의 일례에 따른 기지국 장치(10)의 프로세서(13)는, 본 발명에서 제안하는 예시들에 따라서 채널상태정보를 수신하도록 구성될 수 있다. 기지국 장치(10)의 프로세서(13)는 그 외에도 기지국 장치(10)가 수신한 정보, 외부로 전송할 정보 등을 연산 처리하는 기능을 수행하며, 메모리(14)는 연산 처리된 정보 등을 소정시간 동안 저장할 수 있으며, 버퍼(미도시) 등의 구성요소로 대체될 수 있다. The processor 13 of the base station apparatus 10 according to an example of the present invention may be configured to receive channel state information according to examples proposed by the present invention. In addition, the processor 13 of the base station apparatus 10 performs a function of processing information received by the base station apparatus 10, information to be transmitted to the outside, and the like. And may be replaced by a component such as a buffer (not shown).

도 9를 참조하여 본 발명에 따른 단말 장치(20)는, 수신 모듈(21), 송신 모듈(22), 프로세서(23), 메모리(24) 및 복수개의 안테나(25)를 포함할 수 있다. 복수개의 안테나(25)는 MIMO 송수신을 지원하는 단말 장치를 의미한다. 송신 모듈(22)은 외부 장치(예를 들어, 기지국)로의 각종 신호, 데이터 및 정보를 전송할 수 있다. 수신 모듈(21)은 외부 장치(예를 들어, 기지국)로부터의 각종 신호, 데이터 및 정보를 수신할 수 있다. 수신 모듈(21)과 송신 모듈(22)은 트랜시버(transceiver)로서 호칭될 수 있다. 프로세서(23)는 단말 장치(20) 전반의 동작을 제어할 수 있다.Referring to FIG. 9, the terminal device 20 according to the present invention may include a receiving module 21, a transmitting module 22, a processor 23, a memory 24, and a plurality of antennas 25. The plurality of antennas 25 refers to a terminal device that supports MIMO transmission and reception. The transmission module 22 may transmit various signals, data, and information to an external device (eg, a base station). The reception module 21 may receive various signals, data, and information from an external device (eg, a base station). The receiving module 21 and the transmitting module 22 may be referred to as transceivers. The processor 23 may control operations of the entire terminal device 20.

본 발명의 일례에 따른 단말 장치(20)의 프로세서(23)는, 본 발명에서 제안하는 예시들에 따라서 채널상태정보를 송신하도록 구성될 수 있다. 단말 장치(20)의 프로세서(23)는 그 외에도 단말 장치(20)가 수신한 정보, 외부로 전송할 정보 등을 연산 처리하는 기능을 수행하며, 메모리(24)는 연산 처리된 정보 등을 소정시간 동안 저장할 수 있으며, 버퍼(미도시) 등의 구성요소로 대체될 수 있다. The processor 23 of the terminal device 20 according to an example of the present invention may be configured to transmit channel state information according to examples proposed by the present invention. In addition, the processor 23 of the terminal device 20 performs a function of processing the information received by the terminal device 20, information to be transmitted to the outside, etc., and the memory 24 stores the calculated information and the like for a predetermined time. And may be replaced by a component such as a buffer (not shown).

위와 같은 단말 장치(10)의 구체적인 구성은, 전술한 본 발명의 다양한 실시예에서 설명한 사항들이 독립적으로 적용되거나 또는 2 이상의 실시예가 동시에 적용되도록 구현될 수 있으며, 중복되는 내용은 명확성을 위하여 설명을 생략한다. Specific configuration of the terminal device 10 as described above, may be implemented so that the above-described matters described in various embodiments of the present invention can be applied independently or two or more embodiments are applied at the same time, overlapping description will be described for clarity Omit.

또한, 본 발명의 다양한 실시예들을 설명함에 있어서, 하향링크 전송 주체(entity) 또는 상향링크 수신 주체는 주로 기지국을 예로 들어 설명하였고, 하향링크 수신 주체 또는 상향링크 전송 주체는 주로 단말을 예로 들어 설명하지만, 본 발명의 범위가 이에 제한되는 것은 아니다. 예를 들어, 상기 기지국에 대한 설명은 셀, 안테나 포트, 안테나 포트 그룹, RRH, 전송 포인트, 수신 포인트, 액세스 포인트, 중계기 등이 단말로의 하향링크 전송 주체가 되거나 단말로부터의 상향링크 수신 주체가 되는 경우에 동일하게 적용될 수 있다. 또한, 중계기가 단말로의 하향링크 전송 주체가 되거나 단말로부터의 상향링크 수신 주체가 되는 경우, 또는 중계기가 기지국으로의 상향링크 전송 주체가 되거나 기지국으로부터의 하향링크 수신 주체가 되는 경우에도 본 발명의 다양한 실시예를 통하여 설명한 본 발명의 원리가 동일하게 적용될 수도 있다.In addition, in describing various embodiments of the present invention, a downlink transmission entity or an uplink reception entity is mainly described using a base station, and a downlink reception entity or uplink transmission entity is mainly described using a terminal as an example. However, the scope of the present invention is not limited thereto. For example, the description of the base station is a cell, an antenna port, an antenna port group, an RRH, a transmission point, a reception point, an access point, a repeater, or the like as a downlink transmission entity to a terminal or an uplink reception entity from a terminal. The same may apply if In addition, when the repeater becomes a downlink transmission entity to the terminal or an uplink reception entity from the terminal, or when the repeater becomes an uplink transmission entity to the base station or a downlink reception entity from the base station, The principles of the present invention described through various embodiments may be equally applied.

상술한 본 발명의 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.Embodiments of the present invention described above may be implemented through various means. For example, embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.

하드웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.For implementation in hardware, a method according to embodiments of the present invention may include one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), and Programmable Logic Devices (PLDs). It may be implemented by field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, and the like.

펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 상기 메모리 유닛은 상기 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 상기 프로세서와 데이터를 주고 받을 수 있다.In the case of an implementation by firmware or software, the method according to the embodiments of the present invention may be implemented in the form of a module, a procedure, or a function that performs the functions or operations described above. The software code may be stored in a memory unit and driven by a processor. The memory unit may be located inside or outside the processor, and may exchange data with the processor by various known means.

이상에서 설명된 실시예들은 본 발명의 구성요소들과 특징들이 소정 형태로 결합된 것들이다. 각 구성요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려되어야 한다. 각 구성요소 또는 특징은 다른 구성요소나 특징과 결합되지 않은 형태로 실시될 수 있다. 또한, 일부 구성요소들 및/또는 특징들을 결합하여 본 발명의 실시예를 구성하는 것도 가능하다. 본 발명의 실시예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다. 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함시킬 수 있음은 자명하다.The embodiments described above are the components and features of the present invention are combined in a predetermined form. Each component or feature is to be considered optional unless stated otherwise. Each component or feature may be embodied in a form that is not combined with other components or features. It is also possible to combine some of the components and / or features to form an embodiment of the invention. The order of the operations described in the embodiments of the present invention may be changed. Some components or features of one embodiment may be included in another embodiment or may be replaced with corresponding components or features of another embodiment. It is obvious that the claims may be combined to form an embodiment by combining claims that do not have an explicit citation relationship in the claims or as new claims by post-application correction.

본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 통상의 기술자에게 자명하다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.It is apparent to those skilled in the art that the present invention can be embodied in other specific forms without departing from the spirit and essential features of the present invention. Accordingly, the above detailed description should not be construed as limiting in all aspects and should be considered as illustrative. The scope of the invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the invention are included in the scope of the invention.

본 발명의 실시예들은 다양한 무선접속 시스템 및 방송 통신 시스템에 적용될 수 있다. 다양한 무선접속 시스템들의 일례로서, 3GPP(3rd Generation Partnership Project), 3GPP2 및/또는 IEEE 802.xx (Institute of Electrical and Electronic Engineers 802) 시스템 등이 있다. 본 발명의 실시예들은 상기 다양한 무선접속 시스템뿐 아니라, 상기 다양한 무선접속 시스템을 응용한 모든 기술 분야에 적용될 수 있다.Embodiments of the present invention can be applied to various wireless access systems and broadcast communication systems. Examples of various radio access systems include 3rd Generation Partnership Project (3GPP), 3GPP2 and / or IEEE 802.xx (Institute of Electrical and Electronic Engineers 802) systems. Embodiments of the present invention can be applied not only to the various radio access systems, but also to all technical fields to which the various radio access systems are applied.

Claims (8)

부호화기의 터보 코드 부호화 방법으로서,As a turbo code encoding method of an encoder, 입력 신호를 사전 부호화 하는 단계;Precoding the input signal; 상기 사전 부호화에 기초하여 종료 상태를 결정하는 단계;Determining an end state based on the precoding; 상기 결정된 종료 상태와 상기 입력 신호의 길이에 기초하여 기설정된 순환 상태를 결정하는 단계; 및Determining a preset cyclic state based on the determined end state and the length of the input signal; And 상기 결정된 순환 상태에 기초하여 상기 입력 신호를 테일 바이팅(tail-biting) 구조를 갖는 터보 코드(turbo code)로 부호화하는 단계를 포함하고,Encoding the input signal into a turbo code having a tail-biting structure based on the determined cyclic state, 상기 부호화기는 입력단으로부터 출력단으로의 순방향 경로와 상기 출력단으로부터 상기 입력단으로의 재귀적 경로를 포함하고,The encoder comprises a forward path from an input to an output and a recursive path from the output to the input, 상기 순방향 경로의 상기 출력단에는, 상기 입력 신호, 1회 지연된 상기 입력 신호, 및 4회 지연된 상기 입력 신호가 배타적 논리합(exclusive OR, XOR)된 값이 인가되고,The output terminal of the forward path is applied with an exclusive OR (XOR) value of the input signal, the input signal delayed once, and the input signal delayed four times. 상기 재귀적 경로의 상기 입력단에는, 상기 입력 신호, 3회 지연된 상기 입력 신호, 및 4회 지연된 상기 입력 신호가 XOR된 값이 인가되는, 터보 코드 부호화 방법.And a value obtained by XORing the input signal, the input signal delayed three times, and the input signal delayed four times is applied to the input terminal of the recursive path. 제 1 항에 있어서,The method of claim 1, 상기 부호화기는 스위칭 회로를 포함하고,The encoder comprises a switching circuit, 상기 스위칭 회로가 턴-오프(trun-off)되는 경우,When the switching circuit is turned off, 상기 순방향 경로의 상기 출력단에는, 상기 입력 신호, 1회 지연된 상기 입력 신호, 및 3회 지연된 상기 입력 신호가 배타적 논리합(exclusive OR, XOR)된 값이 인가되고,The output terminal of the forward path is applied with an exclusive OR (XOR) value of the input signal, the input signal delayed once, and the input signal delayed three times. 상기 재귀적 경로의 상기 입력단에는, 상기 입력 신호, 2회 지연된 상기 입력 신호, 및 3회 지연된 상기 입력 신호가 XOR된 값이 인가되는, 터보 코드 부호화 방법.And a value obtained by XORing the input signal, the input signal delayed twice, and the input signal delayed three times is applied to the input terminal of the recursive path. 제 1 항에 있어서,The method of claim 1, 상기 순환 상태는 하기의 표에 따라서 결정되고,The circulation state is determined according to the table below,
Figure PCTKR2017001074-appb-I000001
Figure PCTKR2017001074-appb-I000001
상기 표에서 K는 상기 입력 신호의 길이인, 터보 코드 부호화 방법.Where K is the length of the input signal.
제 1 항에 있어서, The method of claim 1, 상기 순환 상태는 하기의 표에 따라서 결정되고,The circulation state is determined according to the table below,
Figure PCTKR2017001074-appb-I000002
Figure PCTKR2017001074-appb-I000002
상기 표에서 K는 상기 입력 신호의 길이인, 터보 코드 부호화 방법.Where K is the length of the input signal.
제 1 항에 있어서,The method of claim 1, 1회의 지연은 1 클록(clock)의 지연을 지시하는, 터보 코드 부호화 방법.The turbo code encoding method in which one delay indicates a delay of one clock. 터보 코드(turbo code) 부호화기로서,As a turbo code encoder, 각각이 수신된 신호 값들을 배타적 논리합(exclusive OR, XOR)하여 출력하도록 구성된 제1 노드 (node), 제2 노드, 제3 노드, 제4 노드, 제5 노드, 제6 노드, 제7 노드, 및 제8 노드; A first node, a second node, a third node, a fourth node, a fifth node, a sixth node, a seventh node, each configured to output an exclusive OR of the received signal values; And an eighth node; 각각이 수신된 신호를 1회 지연하여 출력하도록 구성되고, 상기 제1 노드와 상기 제5 노드 사이에 순차적으로 직렬 연결된 제1 지연기, 제2 지연기, 제3 지연기, 및 제4 지연기; A first delayer, a second delayer, a third delayer, and a fourth delayer, each of which is configured to delay and output the received signal once, and is sequentially connected between the first node and the fifth node. ; 상기 제4 노드와 상기 제5 노드 사이에 연결된 제1 스위칭 회로; 및A first switching circuit connected between the fourth node and the fifth node; And 상기 제7 노드와 상기 제8 노드 사이에 연결된 제2 스위칭 회로를 포함하고,A second switching circuit connected between the seventh node and the eighth node, 상기 제1 노드는 입력 신호 및 상기 제8 노드로부터의 신호를 수신하고, 상기 제2 노드 및 상기 제1 지연기에 신호를 출력하도록 구성되고,The first node is configured to receive an input signal and a signal from the eighth node, and output a signal to the second node and the first delayer, 상기 제2 노드는 상기 제1 지연기 및 상기 제1 노드로부터의 신호를 수신하고, 상기 제3 노드에 신호를 출력하도록 구성되고,The second node is configured to receive signals from the first delayer and the first node and output a signal to the third node, 상기 제3 노드는 상기 제2 노드 및 상기 제3 지연기로부터의 신호를 수신하고, 상기 제4 노드로 신호를 출력하도록 구성되고,The third node is configured to receive signals from the second node and the third delayer and output a signal to the fourth node, 상기 제 4 노드는 상기 제3 노드로부터 신호를 수신하고, 상기 제1 스위칭 회로를 통하여 상기 제5 노드로부터의 신호를 수신하며, 출력 신호를 출력하도록 구성되고,The fourth node is configured to receive a signal from the third node, receive a signal from the fifth node through the first switching circuit, and output an output signal, 상기 제5 노드는 상기 제3 지연기 및 상기 제4 지연기로부터의 신호를 수신하고, 상기 제1 스위칭 회를 통하여 상기 제 4 노드에 신호를 출력하도록 구성되고,The fifth node is configured to receive signals from the third delayer and the fourth delayer, and output a signal to the fourth node through the first switching cycle, 상기 제 6 노드는 상기 제2 지연기 및 상기 제3 지연기로부터의 신호를 수신하고, 상기 제8 노드로 신호를 출력하도록 구성되고,The sixth node is configured to receive signals from the second delayer and the third delayer and output a signal to the eighth node, 상기 제7 노드는 상기 제2 지연기 및 상기 제4 지연기로부터의 신호를 수신하고, 상기 제2 스위칭 회로를 통하여 상기 제8 노드로 신호를 출력하도록 구성되며, The seventh node is configured to receive signals from the second delayer and the fourth delayer, and output a signal to the eighth node through the second switching circuit, 상기 제8 노드는 상기 제6 노드로부터의 신호를 수신하고, 상기 제2 스위칭 회로를 통하여 상기 제7 노드로부터의 신호를 수신하며, 상기 제1 노드로 신호를 출력하도록 구성되는, 터보 코드 부호화기.The eighth node is configured to receive a signal from the sixth node, receive a signal from the seventh node through the second switching circuit, and output a signal to the first node. 제 6 항에 있어서,The method of claim 6, 상기 제1 스위칭 회로 및 상기 제2 스위칭 회로가 턴-온(trun-on)되었을 때,When the first switching circuit and the second switching circuit are turned on, 상기 제1 노드로부터 상기 제4 노드로의 순방향 경로에서 상기 제4 노드에는, 상기 입력 신호, 1회 지연된 상기 입력 신호, 및 4회 지연된 상기 입력 신호가 인가되고,The input signal, the input signal delayed once, and the input signal delayed four times are applied to the fourth node in a forward path from the first node to the fourth node, 상기 제4 노드로부터 상기 제1 노드로의 재귀적 경로에서 상기 제1 노드에는, 상기 입력 신호, 3회 지연된 상기 입력 신호, 및 4회 지연된 상기 입력 신호가 인가, 터보 코드 부호화기. And the input signal, the input signal delayed three times, and the input signal delayed four times are applied to the first node in a recursive path from the fourth node to the first node. 제 6 항에 있어서,The method of claim 6, 상기 제1 스위칭 회로 및 상기 제2 스위칭 회로가 턴-오프(turn-off)되었을 때, When the first switching circuit and the second switching circuit are turned off, 상기 제1 노드로부터 상기 제4 노드로의 순방향 경로에서 상기 제4 노드에는, 상기 입력 신호, 1회 지연된 상기 입력 신호, 및 3회 지연된 상기 입력 신호가 인가되고,The input signal, the input signal delayed once, and the input signal delayed three times are applied to the fourth node in a forward path from the first node to the fourth node, 상기 제4 노드로부터 상기 제1 노드로의 재귀적 경로에서 상기 제1 노드에는, 상기 입력 신호, 2회 지연된 상기 입력 신호, 및 3회 지연된 상기 입력 신호가 인가, 터보 코드 부호화기. And said input signal, said input signal delayed twice and said input signal delayed three times are applied to said first node in a recursive path from said fourth node to said first node.
PCT/KR2017/001074 2017-02-01 2017-02-01 Turbo code encoder and encoding method for improving error correction efficiency Ceased WO2018143489A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2017/001074 WO2018143489A1 (en) 2017-02-01 2017-02-01 Turbo code encoder and encoding method for improving error correction efficiency

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2017/001074 WO2018143489A1 (en) 2017-02-01 2017-02-01 Turbo code encoder and encoding method for improving error correction efficiency

Publications (1)

Publication Number Publication Date
WO2018143489A1 true WO2018143489A1 (en) 2018-08-09

Family

ID=63039867

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2017/001074 Ceased WO2018143489A1 (en) 2017-02-01 2017-02-01 Turbo code encoder and encoding method for improving error correction efficiency

Country Status (1)

Country Link
WO (1) WO2018143489A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100031125A1 (en) * 2006-09-28 2010-02-04 Broadcom Corporation Tail-biting turbo coding to accommodate any information and/or interleaver block size
US20120324316A1 (en) * 2011-06-17 2012-12-20 Lsi Corporation Turbo Parallel Concatenated Convolutional Code Implementation on Multiple-Issue Processor Cores
US20130064323A1 (en) * 2002-12-27 2013-03-14 Broadcom Corporation Turbo Coding for Upstream and Downstream Transmission in Cable Systems

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130064323A1 (en) * 2002-12-27 2013-03-14 Broadcom Corporation Turbo Coding for Upstream and Downstream Transmission in Cable Systems
US20100031125A1 (en) * 2006-09-28 2010-02-04 Broadcom Corporation Tail-biting turbo coding to accommodate any information and/or interleaver block size
US20120324316A1 (en) * 2011-06-17 2012-12-20 Lsi Corporation Turbo Parallel Concatenated Convolutional Code Implementation on Multiple-Issue Processor Cores

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ERICSSON: "Further Enhanced Turbo Codes for NR", R1-1611325, 3GPP TSG RAN WG1 MEETING #87, 6 November 2016 (2016-11-06), Reno, USA, XP051190693 *
ORANGE ET AL.: "Enhanced Turbo Codes for NR: Implementation Details", R1-167413, 3GPP TSG-RAN WG1 MEETING #86, 12 August 2016 (2016-08-12), Gothenburg, Sweden, XP051142038 *

Similar Documents

Publication Publication Date Title
KR102131834B1 (en) Rate matching method of QC LDPC code and apparatus therefor
US10903857B2 (en) Data retransmission method for polar code, and device therefor
US20170279464A1 (en) Method of ldpc code encoding for reducing signal overhead and apparatus therefor
WO2017018859A1 (en) Method and apparatus for channel encoding and channel decoding in a wireless communication system
US10116332B2 (en) Method for configuring circular buffer including outer code parity and apparatus therefor
US10075197B1 (en) Method and apparatus for transmitting hamming weight and codeword
US11777525B2 (en) Method for transmitting LDPC code using row-orthogonal and apparatus therefor
EP3567730A2 (en) Method for selecting ldpc base code in multi-lpdc code, and device therefor
WO2018174672A2 (en) Downlink signal reception method and user equipment, and downlink signal transmission method and base station
WO2018079987A1 (en) Method for dividing carrying block of ldpc code and apparatus therefor
WO2018225885A1 (en) Sc-ldpc code encoding method and device therefor
WO2018164297A1 (en) Layered decoding method for ldpc code and device therefor
WO2018151555A1 (en) Information transmission method and transmission device
WO2018143772A1 (en) Transport block transmission method and transmission device
WO2019098689A1 (en) Method and apparatus for performing encoding and decoding in wireless communication system
WO2018084617A1 (en) Method for dividing transport block of ldpc code and apparatus therefor
WO2018226019A1 (en) Lpdc code transmission method using row-orthogonal structure and apparatus therefor
US10312945B2 (en) Channel coding method using concatenated code structure and apparatus therefor
WO2018151545A1 (en) Information transmission method and transmission device
KR100912600B1 (en) Tail-biting turbo code for arbitrary number of information bits
WO2010087682A2 (en) Apparatus and method for transmitting signal using bit grouping in wireless communication system
WO2018143489A1 (en) Turbo code encoder and encoding method for improving error correction efficiency
US8132085B2 (en) Method and apparatus for frame control header decoding using cyclic shifting of bits
WO2017213329A1 (en) Decoding method of error-correcting code based on binary erasure channel having likelihood ratio, and device therefor
Lenkeit et al. Ira code design for iterative detection and decoding: A setpoint-based approach

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17894975

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17894975

Country of ref document: EP

Kind code of ref document: A1