Apparatus and method for encoding and decoding a channel in a communication or broadcasting system

By using the basemap design of LDPC codes and the segmented transmission block method, the link performance problems caused by noise, fading and inter-symbol interference in communication systems are solved, achieving high data throughput and reliable communication, suitable for coding requirements of various input lengths and rates.

CN116896426BActive Publication Date: 2026-06-05SAMSUNG ELECTRONICS CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SAMSUNG ELECTRONICS CO LTD
Filing Date
2018-07-23
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

In communication/broadcasting systems, link performance is significantly reduced due to channel noise, fading, and inter-symbol interference (ISI), resulting in insufficient reliability of high-speed digital communication. Existing technologies are unable to meet the requirements of high data throughput and reliability.

Method used

It employs a basemap design based on low-density parity-check (LDPC) codes and a segmented transmission block method, supporting variable-length and variable-rate coding by segmenting uplink control information into multiple polar code blocks for channel coding.

Benefits of technology

It enables efficient data channel transmission under various input lengths and coding rates, improves the reliability and data throughput of the communication system, and adapts to different service requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116896426B_ABST
    Figure CN116896426B_ABST
Patent Text Reader

Abstract

The disclosure relates to a communication method and system for fusing a fifth generation (5G) communication system to support a higher data rate beyond a fourth generation (4G) system using Internet of Things (IoT) technology. The disclosure can be applied to intelligent services based on 5G communication technology and IoT-related technology, such as smart homes, smart buildings, smart cities, smart cars, connected cars, healthcare, digital education, smart retail, security, and safety services. A method for a terminal and a base station in a wireless communication system and a terminal and a base station in a wireless communication system are provided. The method for the terminal includes receiving, from the base station, downlink control information including modulation and coding scheme (MCS) information, identifying a first transport block size based on the downlink control information, and identifying a second transport block size based on the first transport block size and a transport block size candidate set, wherein the transport block size candidate set includes elements having an interval of a multiple of 8.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the invention patent application filed on July 23, 2018, with application number 201880049117.5. Technical Field

[0002] This disclosure relates to apparatus and methods for encoding and decoding channels in a communication or broadcasting system. Background Technology

[0003] To meet the increased demand for wireless data services since the deployment of 4G communication systems, efforts have been made to develop improved 5G or near-5G communication systems. Therefore, 5G or near-5G communication systems are also referred to as "super 4G networks" or "post-LTE systems." 5G communication systems are considered to be implemented in higher frequency millimeter-wave (mmWave) bands (e.g., the 60GHz band) to achieve higher data rates. To reduce radio wave propagation loss and increase transmission distance, beamforming, massive MIMO, full-dimensional MIMO (FD-MIMO), array antennas, analog beamforming, and large antenna technologies have all been discussed in 5G communication systems. Furthermore, in 5G communication systems, system network improvements are being developed based on advanced small cells, cloud radio access networks (RANs), ultra-dense networks, device-to-device (D2D) communication, wireless backhaul, mobile networks, cooperative communication, cooperative multipoint (CoMP), and receiver interference cancellation. In 5G systems, hybrid frequency shift keying (FSK), Feher's quadrature amplitude modulation (FQAM) and sliding window superposition coding (SWSC) have been developed as advanced coding modulation (ACM), while filter bank multicarrier (FBMC), non-orthogonal multiple access (NOMA) and sparse code multiple access (SCMA) have been developed as advanced access technologies.

[0004] The internet, a human-centric network for generating and consuming information, is now evolving into the Internet of Things (IoT), where distributed entities, such as objects, exchange and process information without human intervention. The Internet of Everything (IoE), combining IoT technology with big data processing through cloud servers, has emerged. With technological elements such as sensing technology, wired / wireless communication and network infrastructure, service interface technology, and security technology being required for IoT implementation, recent research has focused on sensor networks, machine-to-machine (M2M) communication, and machine-type communication (MTC). Such an IoT environment can provide intelligent internet technology services that create new value for human life by collecting and analyzing data generated between connected objects. Through the convergence and integration of existing information technology (IT) with various industry applications, IoT can be applied to a wide range of fields, including smart homes, smart buildings, smart cities, smart or connected cars, smart grids, healthcare, smart appliances, and advanced medical services.

[0005] Accordingly, various attempts have been made to apply 5G communication systems to IoT networks. For example, technologies such as sensor networks, MTC, and M2M communication can be implemented through beamforming, MIMO, and array antennas. Cloud RAN, as an application of the aforementioned big data processing technologies, can also be considered an example of the integration between 5G and IoT technologies.

[0006] In communication / broadcasting systems, link performance can be significantly degraded due to various channel noises, fading phenomena, and inter-symbol interference (ISI). Therefore, to realize high-speed digital communication / broadcasting systems requiring high data throughput and reliability, such as next-generation mobile communications, digital broadcasting, and portable internet, it is necessary to develop techniques to overcome noise, fading, and ISI. As part of research into overcoming noise and other factors, error-correcting codes have recently been actively studied as a method to improve communication reliability by effectively recovering information distortion. Summary of the Invention

[0007] Technical issues

[0008] One aspect of this disclosure provides a method and apparatus for transmitting coded bits, which can support various input lengths and coding rates.

[0009] Another aspect of this disclosure provides a method for configuring a base graph of a low-density parity-check (LDPC) code for data channel transmission, as well as a method and apparatus for segmenting transmission blocks (TBs) using LDPC codes.

[0010] Another aspect of this disclosure provides a method and apparatus for segmenting uplink control information (UCI) into multiple polar code blocks and transmitting the UCI.

[0011] Technical solution

[0012] According to embodiments of this disclosure, a method for a terminal in a wireless communication system is provided. The method includes: receiving downlink control information including MCS information from a base station; identifying a first transport block size based on the downlink control information; and identifying a second transport block size based on the first transport block size and a candidate set of transport block sizes, wherein the candidate set of transport block sizes includes elements with intervals that are multiples of 8.

[0013] According to another embodiment of this disclosure, a method for a base station in a wireless communication system is provided. The method includes: sending downlink control information including MCS information to a terminal; identifying a first transport block size based on the downlink control information; identifying a second transport block size based on the first transport block size and a transport block size candidate set; and sending data based on the second transport block size, wherein the transport block size candidate set includes elements with intervals that are multiples of 8.

[0014] According to another embodiment of this disclosure, a terminal in a wireless communication system is provided. The terminal includes: a transceiver; and a controller configured to receive downlink control information including MCS information from a base station, identify a first transport block size based on the downlink control information, and identify a second transport block size based on the first transport block size and a transport block size candidate set, wherein the transport block size candidate set includes elements with intervals that are multiples of 8.

[0015] According to another embodiment of this disclosure, a base station in a wireless communication system is provided. The base station includes: a transceiver; and a controller configured to send downlink control information containing MCS information to a terminal, identify a first transport block size based on the downlink control information, identify a second transport block size based on the first transport block size and a transport block size candidate set, and send data based on the second transport block size, wherein the transport block size candidate set includes elements with intervals that are multiples of 8.

[0016] Beneficial effects of the present invention

[0017] One aspect of this disclosure is to meet the various service requirements of next-generation mobile communication systems by using LDPC codes that can be applied to variable lengths and variable rates.

[0018] Another aspect of this disclosure is supporting efficient operation of LDPC coding as a data channel coding method.

[0019] Another aspect of this disclosure is a method for supporting channel coding after segmenting uplink control information into one or more code blocks. Attached Figure Description

[0020] The above and other aspects, features and advantages of this disclosure will become more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which:

[0021] Figure 1 This is a schematic diagram illustrating the downlink time-frequency domain transmission structure of an LTE or LTE-A system;

[0022] Figure 2 This is a schematic diagram illustrating the uplink time-frequency domain transmission structure of LTE and LTE-A systems;

[0023] Figure 3 This is a schematic diagram illustrating the basic structure of the mother matrix (or base map) of an LDPC code according to an embodiment;

[0024] Figure 4 This is a flowchart of the control information and data receiving process of the terminal according to an embodiment;

[0025] Figure 5 This is a schematic diagram illustrating a method for segmenting a TB into code blocks according to an embodiment;

[0026] Figure 6 This is a schematic diagram illustrating a method for segmenting a TB into code blocks according to an embodiment;

[0027] Figure 7 This is a flowchart of a method for segmenting a TB according to an embodiment;

[0028] Figure 8 This is a flowchart of a method for segmenting a TB according to an embodiment;

[0029] Figure 9 This is a block diagram of the structure of a terminal according to an embodiment; and

[0030] Figure 10 This is a block diagram of the structure of a base station according to an embodiment. Detailed Implementation

[0031] The embodiments are described in detail below with reference to the accompanying drawings.

[0032] In describing the embodiments, descriptions of technical content well-known in the art to which this disclosure pertains and not directly related to this disclosure have been omitted. This is to describe this disclosure more clearly by omitting unnecessary descriptions.

[0033] For the same reason, some components are shown in detail, omitted, or schematically in the accompanying drawings. Furthermore, the size of each component may not perfectly reflect its actual size. In each drawing, the same or corresponding components are indicated by the same reference numerals.

[0034] Various advantages and features of this disclosure, as well as methods of achieving such advantages and features, will become apparent from the following detailed description of embodiments with reference to the accompanying drawings. However, this disclosure is not intended to be limited to the embodiments disclosed herein, but may be implemented in various forms different from each other. The provision of the description of embodiments of this disclosure enables those skilled in the art to readily understand this disclosure. However, this disclosure is not intended to be limited to the embodiments, but is defined by the appended claims and their equivalents. The same reference numerals throughout this disclosure denote the same elements.

[0035] In this context, it can be understood that each block of the flowchart and combinations of flowcharts can be executed by computer program instructions. Since the computer program instructions can be mounted in a processor for a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, these instructions, executed by the processor for the computer or other programmable data processing apparatus, create means for performing the functions described in the blocks of the flowchart. Since the computer program instructions can also be stored in a computer-usable or computer-readable storage medium that can instruct the computer or other programmable data processing apparatus to implement functions in a particular manner, the computer program instructions stored in the computer-usable or computer-readable storage medium can also produce articles of manufacture, including instruction means for performing the functions described in the blocks of the flowchart. Since the computer program instructions can also be mounted on a computer or other programmable data processing apparatus, the instructions perform a series of operational steps on the computer or other programmable data processing apparatus to create a process executed by the computer, thereby performing the functions described in the blocks of the flowchart.

[0036] Additionally, each block may refer to some of a module, segment, or code containing one or more executable instructions for performing a specific logical function. Furthermore, it should be noted that in some alternative embodiments, the function mentioned in a block occurs regardless of the sequence. For example, based on the corresponding function, two blocks shown as consecutive may be executed simultaneously or in reverse order.

[0037] Here, the term "unit" as used in this disclosure refers to a software or hardware component, such as a field-programmable array of logic (FPGA) and an application-specific integrated circuit (ASIC), and the unit performs any role. However, the term "unit" is not intended to be limited to software or hardware. The term "unit" can refer to an entity configured to be addressed in a storage medium and can also be configured to reproduce one or more processors. Thus, for example, the term "unit" includes components such as software components, object-oriented software components, class components, task components and processors, functions, attributes, procedures, subroutines, program code segments, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functionality provided in components and units can be combined with fewer components and units, or can be further divided into additional components and units. Additionally, components and units can also be implemented as one or more central processing units (CPUs) within a reproduction device or secure multimedia card. Furthermore, in one embodiment, the term "unit" can include one or more processors.

[0038] A wireless communication system has been developed from early-stage broadband wireless communication systems providing voice center services, offering high-speed, high-quality packet data services such as High-Speed ​​Packet Access (HSPA), LTE or Evolved Universal Terrestrial Radio Access (E-UTRA), LTE-A of the 3rd Generation Partnership Project (3GPP), High-Speed ​​Packet Data (HRPD) and Ultra Mobile Broadband (UMB) of 3GPP2, and IEEE Standard 802.16e. Additionally, 5G or new radio / next-generation radio (NR) communication standards are being developed as 5G wireless communication systems.

[0039] In wireless communication systems including 5G, at least one of enhanced mobile broadband (eMBB), massive machine-type communication (mMTC), and ultra-reliable and low-latency communication (URLLC) services can be provided to terminals. Services can be provided to the same terminal within the same time period. In the following embodiments, eMBB is high-speed transmission of high-capacity data, mMTC is terminal power minimization and connection of multiple terminals, and URLLC can be a service designed for high reliability and low latency, but these services are not limited to these. Since LTE, these three services have been a major scenario in LTE systems or in systems such as 5G / NR. In this embodiment, methods for the coexistence of eMBB and URLLC, methods for the coexistence of mMTC and URLLC, and apparatus using these methods are described.

[0040] When a base station schedules data corresponding to eMBB services to any terminal within a specific transmission time interval (TTI), if a situation arises where URLLC data must be transmitted within the TTI, some eMBB data will not be transmitted on the frequency bands where eMBB data has already been scheduled and transmitted, nor on the frequency bands where URLLC data has already been transmitted. The terminal receiving the scheduled eMBB and the terminal receiving the scheduled URLLC can be the same terminal or different terminals. In this case, since some of the pre-scheduled and transmitted eMBB data is not transmitted, the eMBB data is likely to be corrupted. Therefore, in the above situation, it is necessary to determine a method for processing signals received from a terminal receiving eMBB scheduling or a terminal receiving URLLC scheduling, and a signal receiving method. Therefore, according to one embodiment, when scheduling information based on eMBB and URLLC by sharing some or all frequency bands, simultaneously scheduling information based on mMTC and URLLC, simultaneously scheduling information based on mMTC and eMBB, or simultaneously scheduling information based on eMBB, URLLC, and mMTC, a method for coexistence between heterogeneous services that can transmit information for each service is described.

[0041] Embodiments of this disclosure are described in detail below with reference to the accompanying drawings. Detailed descriptions of known functions or configurations related to this disclosure that might obscure it are omitted. Furthermore, the following terms are defined in consideration of the functions in this disclosure and may be interpreted differently by the intent or practice of users and operators. Therefore, their definitions should be interpreted based on the content throughout this disclosure. In the following, a base station is the entity that performs resource allocation for a terminal and may be at least one of an eNodeB, NodeB, base station (BS), radio access unit, base station controller, and nodes on a network. A UE may include a user equipment (UE), mobile station (MS), terminal, cellular phone, smartphone, computer, or multimedia system performing communication functions. In this disclosure, downlink (DL) indicates the radio transmission path of a signal from the base station to the terminal, while uplink (UL) indicates the radio transmission path through which the terminal transmits a signal to the base station. Furthermore, embodiments are described below as examples of LTE or LTE-A systems; however, these embodiments can be applied to other communication systems with similar technical backgrounds or channel configurations. For example, 5G mobile communication technologies (5G, NR) developed after LTE-A may be included. Furthermore, as will be determined by those skilled in the art, the embodiments may be partially modified or even applied to other communication systems without departing from the scope of this disclosure.

[0042] As an example of a broadband wireless communication system, the LTE system employs an Orthogonal Frequency Division Multiplexing (OFDM) scheme in the DL (Low-Low) and a Single-Carrier Frequency Division Multiple Access (SC-FDMA) scheme in the UL (Low-Low). UL refers to the radio link through which a terminal (e.g., UE) or MS transmits data or control signals to a base station (eNodeB or BS), while DL refers to the radio link through which the base station transmits data or control signals to a terminal. As described above, multiple access schemes typically allocate and operate time-frequency resources for transmitting data or control information to prevent overlap, i.e., to establish orthogonality, thereby dividing the data or control information for each user.

[0043] If decoding fails during the initial transmission, the LTE system employs a Hybrid Automatic Repeat Request (HARQ) scheme that retransmits the corresponding data at the physical layer. If the receiver fails to decode the data accurately, the HARQ scheme enables the receiver to send a notification of decoding failure (e.g., a negative acknowledgment (NACK)) to the transmitter, allowing the transmitter to retransmit the corresponding data at the physical layer. The receiver combines the retransmitted data with the previously undecoded data, thereby improving data reception performance. Furthermore, if the receiver decodes the data accurately, it sends a notification of successful decoding (e.g., an acknowledgment (ACK)) to the transmitter, allowing the transmitter to transmit new data.

[0044] In the following description, higher-level signals are signals such as System Information Blocks (SIBs), Radio Resource Control (RRCs), and Media Access Control Elements (MACCEs) that support terminal-specific control operations in quasi-static and static forms. Physical signals such as L1 signals dynamically support terminal-specific control operations in the form of terminal common downlink control information or terminal-specific downlink control information.

[0045] Figure 1 This is a schematic diagram illustrating the basic structure of the time-frequency domain, which is the radio resource area in an LTE system or similar system to which the downlink transmits data or control channels.

[0046] Reference Figure 1 The horizontal axis represents the time domain, and the vertical axis represents the frequency domain. The smallest transmission unit in the time domain is an OFDM symbol, which is obtained by collecting N... symb OFDM symbols are used to configure a time slot 106, and two time slots are collected to configure a subframe 105. The time slot length is 0.5 ms, and the subframe length is 1.0 ms. Furthermore, radio frame 114 is a time-domain interval consisting of 10 subframes. The smallest transmission unit in the frequency domain is a subcarrier, where the total system transmission bandwidth is determined by a total of N... BW It consists of 104 subcarriers. However, these values ​​can vary.

[0047] The basic unit of resources in the time-frequency domain is the resource element (RE) 112, which can be represented by OFDM symbol index and subcarrier index. The resource block (RB) 108 (or physical resource block (PRB)) consists of N in the time domain. symb Continuous OFDM symbols and N in the frequency domain RB Continuous subcarriers 110 are defined. Therefore, one RB 108 in a time slot can include N. symb x N RB Each RE 112. Typically, the smallest frequency domain allocation unit for data is RB 108; in LTE systems, N is typically... symb =7 and N RB =12, and N BW and N RB The data rate is proportional to the bandwidth of the system transmission band. The data rate increases proportionally to the number of RBs 108 scheduled for the terminal. An LTE system can be operated by defining six transmission bandwidths. In a Frequency Division Duplex (FDD) system that operates by dividing the downlink and uplink based on frequency, the downlink and uplink transmission bandwidths can be different from each other. Channel bandwidth represents the radio frequency (RF) bandwidth corresponding to the system transmission bandwidth. Table 1 below shows the correspondence between system transmission bandwidth and channel bandwidth defined in an LTE system. For example, an LTE system with a 10MHz channel bandwidth consists of a transmission bandwidth comprising 50 RBs.

[0048] [Table 1]

[0049]

[0050]

[0051] Downlink control information can be transmitted within the first N OFDM symbols of a subframe. In one embodiment, typically N = {1, 2, 3}. Therefore, the value of N can be variably applied to each subframe depending on the amount of control information to be transmitted to the current subframe.

[0052] The downlink control information sent may include a control channel transmission interval indicator, which indicates how many OFDM symbols are used to send control information, scheduling information about downlink or uplink data, information about HARQ ACK / NACK, etc.

[0053] In LTE systems, scheduling information for downlink or uplink data is transmitted from the base station to the terminal via downlink control information (DCI). DCI is defined according to various formats. Each format indicates whether the DCI is scheduling information for uplink data (UL license) or downlink data (DL license), whether it is a compact DCI with smaller control information size, whether multiple antennas are used to apply spatial multiplexing, and whether it is a DCI for power control, etc. For example, DCI format 1, as scheduling control information (DL license) for downlink data, may include at least one of the following control information:

[0054] - Resource Allocation Type 0 / 1 Flag: Indicates whether the resource allocation type is Type 0 or Type 1. Type 0 applies a bitmap scheme to allocate resources within a Resource Block Group (RBG) unit. In LTE systems, the basic unit of scheduling is an RB represented by time-frequency domain resources. An RBG consists of multiple RBs and is therefore the basic unit of scheduling in the Type 0 scheme. Type 1 allocates specific RBs within an RBG.

[0055] - Resource Block Allocation: Notifies the Resource Block (RB) allocated for data transmission. The resource represented is determined based on system bandwidth and resource allocation scheme.

[0056] -MCS: Indicates the modulation scheme used for data transmission and the size of the data block to be transmitted.

[0057] -HARQ process number: Indicates the HARQ process number.

[0058] - New data indicator: Indicates whether HARQ is initiating a transmission or retransmission.

[0059] - Redundant version: Indicates a redundant version of HARQ.

[0060] - Transmission Power Control (TPC) Commands for Physical Uplink Control Channel (PUCCH): Indicates the transmission power control commands used for the PUCCH as an uplink control channel.

[0061] The DCI undergoes channel coding and modulation processing, and can then be transmitted on the Physical Downlink Control Channel (PDCCH) (or control information, which are used interchangeably below) or the Enhanced PDCCH (EPDCCH) (or enhanced control information, which are used interchangeably below).

[0062] Typically, each DCI is independently scrambled using a specific Radio Network Temporary Identifier (RNTI) (or Terminal Identifier) ​​for each terminal to which Cyclic Redundancy Check (CRC) is to be added, undergoes channel coding, and is then independently configured and transmitted via the PDCCH. In the time domain, the PDCCH is transmitted concurrently with the mapping during the control channel transmission segment. The mapping position of the PDCCH in the frequency domain can be determined by the identifier (ID) of each terminal and is transmitted across the entire system transmission bandwidth.

[0063] Downlink data can be transmitted on the Physical Downlink Shared Channel (PDSCH), which is a physical channel used for downlink data transmission. The PDSCH can be transmitted after the control channel transmission segment, and scheduling information, modulation schemes, etc., regarding specific mapping positions in the frequency domain can be determined based on the DCI transmitted via the PDCCH.

[0064] By configuring the MCS in the DCI control information, the base station informs the modulation scheme to be applied to the PDSCH to be sent to the terminal and the size of the data to be transmitted (transfer block size (TBS)). In one embodiment, the MCS may consist of 5 bits, more than 5 bits, or less than 5 bits. The TBS corresponds to the size of the data (e.g., TB) to be transmitted by the base station before the channel coding used for error correction is applied.

[0065] The modulation schemes supported in LTE systems are Quadrature Phase Shift Keying (QPSK), 16QAM, and 64QAM, where each modulation order Qm corresponds to 2, 4, and 6, respectively. That is, in QPSK modulation, 2 bits per symbol can be transmitted; in 16QAM modulation, 4 bits per symbol can be transmitted; and in 64QAM modulation, 6 bits per symbol can be transmitted. Furthermore, modulation schemes higher than 256QAM can be used depending on system modifications.

[0066] Figure 2 This is a schematic diagram showing the basic structure of the time-frequency domain, which is the radio resource area in the uplink of an LTE system for transmitting data or control channels.

[0067] Reference Figure 2 The horizontal axis represents the time domain, and the vertical axis represents the frequency domain. The smallest transmission unit in the time domain is an SC-FDMA symbol, and it aggregates N... symb UL SC-FDMA symbols are used to form a time slot 206. Two time slots are combined to form a subframe 205. The smallest transmission unit in the frequency domain is a subcarrier, where the total system transmission bandwidth 204 includes a total of NBW subcarriers. NBW can have a value proportional to the system transmission bandwidth.

[0068] The basic unit of resources in the time-frequency domain is RE 212, and it can be defined by SC-FDMA symbol index and subcarrier index. RB pairs can be defined by N in the time domain. symb UL Continuous SC-FDMA symbols and N in the frequency domain sc RB Defined by consecutive subcarriers. Therefore, an RB 208 is composed of N symb UL x N sc RB The RE is composed of RB units. Typically, the smallest unit of transmission for data or control information is the RB unit. The PUCCH is mapped to the frequency domain corresponding to 1 RB and is transmitted for one subframe.

[0069] In LTE systems, the timing relationship between PUCCH and PUSCH is defined, where PUCCH or PUSCH is the uplink physical channel to which HARQ ACK / NACK is sent, corresponding to PDSCH as a physical channel used for downlink data transmission or PDCCH / EPDDCH including semi-persistent scheduling (SPS) release. For example, in an FDD-operated LTE system, HARQ ACK / NACK corresponding to PDSCH transmitted in the (n-4)th subframe or PDCCH / EPDCCH including SPS release can be sent to PUCCH or PUSCH in the nth subframe.

[0070] In LTE systems, downlink HARQ employs an asynchronous HARQ scheme, where the data retransmission time is not fixed. That is, if the terminal sends a HARQ NACK for the initial transmitted data sent by the base station, the base station freely determines the transmission time of the retransmitted data based on scheduling operations. As a result of decoding the received data used for HARQ operations, the terminal buffers the data determined to be erroneous and then combines it with the next retransmitted data.

[0071] If the terminal receives a PDSCH containing downlink data sent from the base station in subframe n, then in subframe n+k, the terminal sends uplink control information, including HARQ ACK or NACK, to the base station via PUCCH or PUSCH. Then, k is defined differently depending on the FDD or Time Division Duplex (TDD) configuration of the LTE system. For example, in an FDD LTE system, k is fixed at 4. Meanwhile, in a TDD LTE system, k can be changed according to the subframe configuration and subframe number. Furthermore, the value of k can be applied differently depending on the TDD configuration of each carrier when data is transmitted over multiple carriers.

[0072] In LTE systems, unlike downlink HARQ, uplink HARQ employs a synchronous HARQ scheme where data transmission time is fixed. Specifically, the uplink / downlink timing relationship of the PUSCH (Physical USCH), the downlink control channel preceding the PUSCH, and the Physical Hybrid Indicator Channel (PHICH), which is the physical channel to which the PUSCH corresponding to HARQ ACK / NACK is sent, can be transmitted / received according to the following rules.

[0073] If, in subframe n, the terminal receives a PDCCH containing uplink scheduling control information from a base station transmitting downlink HARQ ACK / NACK or a PHICH, then in subframe n+k, the terminal transmits uplink data corresponding to the control information on the PUSCH. Then, k is defined differently depending on whether the LTE system is FDD or TDD and its configuration. For example, in an FDD LTE system, k is fixed at 4. In a TDD LTE system, k can be changed based on the subframe configuration and subframe number. Furthermore, the value of k can be applied differently depending on the TDD configuration of each carrier when data is transmitted over multiple carriers.

[0074] Furthermore, if the terminal receives a PHICH from the base station in subframe i that includes information associated with downlink HARQ ACK / NACK, then the PHICH corresponds to the PUSCH transmitted by the terminal in subframe ik. Then, k is defined differently depending on whether the LTE system is FDD or TDD and its settings. For example, in the case of an FDD LTE system, k is fixed at 4. In the case of a TDD LTE system, k can be changed according to the subframe configuration and subframe number. Additionally, the value of k can be applied differently depending on the TDD configuration of each carrier when data is transmitted over multiple carriers.

[0075] [Table 2]

[0076]

[0077]

[0078] Table 2 above shows the supported DCI format types for each transmission mode under the conditions configured by C-RNTI. The terminal assumes the existence of the corresponding DCI format and performs search and decoding in the control area segment according to the predetermined transmission mode. In other words, when the terminal is instructed to enter transmission mode 8, the terminal searches for DCI format 1A in the common search space and the UE-specific search space, and searches for DCI format 2B only in the UE-specific search space.

[0079] The description of the wireless communication system is based on the LTE system, but this disclosure is not intended to be limited to the LTE system, but can be applied to various wireless communication systems such as NR and 5G. Furthermore, when applying this disclosure to another wireless communication system, a modulation scheme corresponding to FDD can be used to change the k value and apply it to the system.

[0080] In communication / broadcasting systems, link performance can be significantly degraded due to various types of noise, fading phenomena, and inter-symbol interference (ISI) in the channel. Therefore, to realize high-speed digital communication / broadcasting systems requiring high data throughput and reliability, such as next-generation mobile communications, digital broadcasting, and portable internet, it is necessary to develop techniques to overcome noise, fading, and inter-symbol interference. As part of research on overcoming noise, etc., recent studies have actively focused on error-correcting codes, specifically methods to improve communication reliability by effectively recovering distorted information.

[0081] The purpose of this disclosure is to provide a method and apparatus for encoding / decoding that supports various input lengths and coding rates. Furthermore, this disclosure provides a method for configuring a base map of LDPC codes for data channel transmission, and a method and apparatus for segmenting a TB using LDPC codes.

[0082] Next, we will describe LDPC codes.

[0083] LDPC code is a linear block code that includes the process of determining codewords that satisfy the following equation (1).

[0084] Equation (1):

[0085]

[0086] In equation (1) above,

[0087]

[0088] In equation (1) above, H represents the parity check matrix, c represents the codeword, and c i N represents the i-th codeword bit. ldpc h represents the codeword length. i This represents the i-th column of the parity check matrix H.

[0089] Parity check matrix H is composed of N ldpc Composed of columns, N ldpc It equals the number of bits in the LDPC codeword. Equation (1) above indicates that due to the parity check matrix's i-th column h... i With the i-th codeword bit c i The sum of the products of the i-th column h becomes "0". i With the i-th codeword bit c iHas a relationship.

[0090] In order to easily implement the parity check matrix used in communication and broadcast systems, generally, quasi-cyclic LDPC (QC-LDPC) codes () using a parity check matrix in a quasi-cyclic form are mainly used.

[0091] QC-LDPC codes have a parity check matrix composed of a zero matrix (0 matrix) or a cyclic permutation matrix in the form of a small square matrix.

[0092] The permutation matrix P of size Z×Z = (P ij ) is defined as shown in Equation (2) below. [[ID=1十三]]

[0093] Equation (2):

[0094]

[0095] In Equation (2) above, P ij (0 ≤ i, j < Z) indicates the entry in the i-th row and j-th column of the matrix P. The permutation matrix P as described above is a cyclic permutation matrix of such a form that each entry of the identity matrix of size Z×Z is cyclically shifted i times (0 ≤ i < Z) in the right direction.

[0096] The parity check matrix H of the simplest QC-LDPC code can be represented by the following Equation (3).

[0097] Equation (3):

[0098]

[0099] If P -1 is defined as a 0 matrix of size Z×Z, then each exponent a jj of the cyclic permutation matrix or 0-matrix in Equation (3) above has one of the values {-1, 0, 1, 2,..., Z - 1}. In addition, the parity check matrix H of Equation (3) above has n column blocks and m row blocks, and thus has a size of Z×Z.

[0100] Generally, the binary matrix of size m×n obtained by respectively replacing each cyclic permutation matrix and 0 matrix in the parity check matrix of Equation (3) above with 1 and 0 is called the mother matrix M(H) of the parity check matrix H, and the integer matrix of size m×n obtained by only selecting the exponents of each of the m×n size or 0 matrix through the following Equation (4) is called the exponent matrix E(H) of the parity check matrix H.

[0101] Equation (4):

[0102]

[0103] Furthermore, the performance of LDPC codes can be determined based on the parity check matrix. Therefore, it is necessary to design parity check matrices for LDPC codes with excellent performance. In addition, LDPC encoding and decoding methods that can support various input lengths and code rates are needed.

[0104] To efficiently design QC-LDPC codes, a method called lifting is used. Lifting is a method for efficiently designing very large parity check matrices by setting a Z-value, which is used to determine the size of the cyclic permutation matrix or zero matrix from the small parent matrix, according to specific rules. The characteristics of existing lifting methods and QC-LDPC codes designed using lifting are described below.

[0105] First, the SQC-LDPC codes designed using the lifting method for LDPC code C0 are named C1, C2, ..., C1. k C s (Similarly C) k In the parity check matrix, k is 1≤k≤S), and the QC-LDPC code is C. k Called H k The value corresponding to the size of the row and column blocks of the circular matrix that constitutes the parity check matrix is ​​called Z. k In this case, C0 corresponds to having C1, ..., C s The mother matrix of the code is the smallest LDPC code that serves as the parity check matrix, corresponding to a Z0 value of 1 for both row and column block sizes, and Z... k <Z k+1 , 0≤k≤S-1. Furthermore, each code C k Parity check matrix H k Having an m x n exponential matrix E(H) k ) = a i,j (k) And each index a i,j (k) Choose one of the values ​​{-1, 0, 1, 2, ..., Zk-1}. The lifting process consists of the same steps as C0→C1→...→CS, and has the same characteristics as Zk-1. k+1 =q k+1 Z k Same characteristics (q) k+1 (where k is a positive integer, k = 0, 1, ..., S-1). Furthermore, if only C is stored according to the characteristics of the lifting process... s Parity check matrix H S Then all QC-LDPC codes can be represented as C0, C1, ..., C according to the lifting scheme using the following equation (5) or equation (6). s .

[0106] Equation (5):

[0107]

[0108] Equation (6):

[0109] E(H k )≡E(H s modZ k

[0110] This scheme can be the most general and is expressed as in equation (7) below.

[0111] P i,j =f(V i,j ,Z)

[0112] In equation (7) above, f(x,y) represents any function with x and y as input values. i,j The indicator corresponds to the largest LDPC code (e.g., corresponding to C in the description above). s The elements in the i-th row and j-th column of the exponent matrix of the parity check matrix. ij This represents the LDPC code corresponding to any size (e.g., corresponding to C in the description above). k The elements in the i-th row and j-th column of the exponent matrix of the parity check matrix, Z represents the size of the row blocks and columns of the cyclic matrix that constitutes the parity check matrix corresponding to the LDPC code. Therefore, when V is defined... i,j At that time, a parity check matrix of LDPC code with arbitrary size can be defined.

[0113] In the following description of this disclosure, the above symbols are defined as follows:

[0114] E(H S ): Maximum exponential matrix

[0115] V i,j : The element of the largest exponential matrix (corresponding to E(H) S The (i,j)th element of )

[0116] The parity check matrix of any LDPC code can be expressed using the maximum exponent matrix or its elements as defined above.

[0117] In next-generation mobile communication systems, multiple maximum exponent matrices can be defined to ensure optimal performance for code blocks of various lengths. For example, there may exist M different maximum exponent matrices, which can be expressed as follows:

[0118] Equation (8):

[0119] E(H s )1,E(Hs )2,...,E(H s ) M

[0120] There can exist multiple elements of a maximum exponent matrix, which can be expressed as follows:

[0121] Equation (9):

[0122] (V i,j )1,(V i,j )2,...,(V i,j ) M

[0123] In equation (9) above, the maximum exponential matrix element (V) i,j )m corresponds to the maximum exponential matrix E(H) S The parity check matrix of the LDPC code is described below using the maximum exponent matrix as defined above. This can be applied similarly, as expressed using the elements of the maximum exponent matrix.

[0124] The following describes a method for code block segmentation and CRC appending based on Turbo codes.

[0125] 5.1.2 Code block segmentation and code block CRC appending

[0126] The input bit sequence for code block segmentation is b0, b1, b2, b3, ..., b B-1 This indicates that B > 0. If B is greater than the maximum block size Z, the input bit sequence is segmented, and an additional CRC sequence of L = 24 bits is appended to each block. The maximum block size is:

[0127] -Z = 6144.

[0128] If the number of padding bits F calculated below is not 0, then add padding bits to the beginning of the first block.

[0129] Note that if B < 40, padding bits are added to the beginning of the code block.

[0130] The padding bit should be set at the encoder input. <null>.

[0131] The total number of code blocks C is determined in the following way:

[0132]

[0133]

[0134] For C≠0, the output bits of the code block segment are represented by C. r0 ,c r1 ,c r2 ,c r3 ,...,c r(K,-1) This indicates that r is the code block number, and Kr is the number of bits in the code block number r.

[0135] The number of bits in each code block (only applicable if C≠0):

[0136] In Table 5.1.3-3, the size K of the first segment is... + =minimumK, therefore C·K≥B'

[0137]

[0138] Number of fill bits: F = C + ·K + +C - ·K - -B'

[0139]

[0140]

[0141] This sequence is used based on the generator polynomial g. CRC24B (D) Calculate the CRC parity check bit P according to Section 5.1.1. r0 ,P r1 ,P r2 ,...,P r(L-1) For CRC calculations, it is assumed that the value of the padding bits (if present) is 0.

[0142]

[0143] Unlike LTE, 5G and next-generation communication systems use LDPC codes in the data channel. Furthermore, even when using LDPC codes, a transport block can be segmented into multiple code blocks, and some of these segments can form a code block group. Additionally, the number of code blocks in each code block group can be the same or different. Bit-by-bit interleaving can be applied to a single code block, a code block group, or a transport block.

[0144] Figure 3 This is a schematic diagram illustrating the basic structure of the parent matrix (or base map) of the LDPC code according to an embodiment.

[0145] Reference Figure 3 Essentially, this supports two base map 300 basic structures for LDPC codes that enable data channel coding in next-generation mobile communication systems. The first LDPC code base map structure has a matrix structure with a maximum vertical length of 46320 and a maximum horizontal length of 68318. The second LDPC code base map structure has a matrix structure with a maximum vertical length of 42320 and a maximum horizontal length of 52318. The first LDPC code base map structure can support coding rates from at least 1 / 3 to a maximum of 8 / 9, and the second LDPC code base map structure can support coding rates from at least 1 / 5 to a maximum of 8 / 9.

[0146] The LDPC code consists of six submatrix structures: 302, 304, 306, 308, 310, and 312.

[0147] The first submatrix structure 302 includes systematic bits. The second submatrix structure 304 is a square matrix and includes parity bits. The third submatrix structure 306 is a zero matrix. The fourth submatrix structure 308 and the fifth submatrix structure 310 include parity bits. The sixth submatrix structure 312 is a unitary matrix.

[0148] In the base graph structure of the first LDPC code, the horizontal length 322 of the first submatrix 302 has a value of 22, and the vertical length 314 has a value of 4 or 5. The horizontal length 324 and the vertical length 314 of the second submatrix 304 both have values ​​of 4 or 5. The horizontal length 326 of the third submatrix 306 has a value of 42 or 41, and the vertical length 314 has a value of 4 or 5. The vertical length 316 of the fourth submatrix 308 has a value of 42 or 41, and the horizontal length 322 has a value of 22. The horizontal length 324 of the fifth submatrix 310 has a value of 4 or 5, and the vertical length 316 has a value of 42 or 41. The horizontal length 326 and the vertical length 316 of the sixth submatrix 312 both have values ​​of 42 or 31.

[0149] In the base graph structure of the second LDPC code, the horizontal length 322 of the first submatrix 302 has a value of 10, and the vertical length 314 has a value of 7. The horizontal length 324 and the vertical length 314 of the second submatrix 304 both have a value of 7. The horizontal length 326 of the third submatrix 306 has a value of 35, and the vertical length 314 has a value of 7. The vertical length 316 of the fourth submatrix 308 has a value of 35, and the vertical length 322 has a value of 10. The horizontal length 324 of the fifth submatrix 310 has a value of 7, and the vertical length 316 has a value of 35. The horizontal length 326 and the vertical length 316 of the sixth submatrix 312 both have a value of 35.

[0150] A code block size of 22 × Z (where Z = ax²) can be supported in the basis graph structure of the first LDPC code. j Z is configured as shown in Table 3 below, and can support a maximum block size of 8448 and a minimum block size of 44. For reference, Table 3 below provides additional candidate Z values, which may reflect some or all of 272, 304, 336, and 368.

[0151] [Table 3]

[0152]

[0153]

[0154] The block size that can be supported in the base graph structure of the first LDPC code is as follows:

[0155] 44,66,88,130,132,154,176,198,220,242,264,286,308,330,352,296,440,484,528,572,616,660,704,792,880,968,1056,1144,1232,1320,14 08,1584,1760,1936,2112,2288,2464,2640,2816,3168,3520,3872,4224,4576,4928,5280,5632,6336,7040,7744,8448,(5984,6688,7392,8096)

[0156] In this case, 5984, 6688, 7392, and 8096 can be additionally included.

[0157] In addition, a total of M maximum exponent matrices are defined based on the base graph (BG#1) of the first LDPC code. For example, the value of M can be 8 or a predetermined natural number, and the value of i can be from 1 to M. The terminal uses a matrix. Perform downlink data decoding or uplink data encoding. Matrix It has specific element values ​​shifted from the base graph (BG#1) of the first LDPC code. That is, the matrix They can have different shift values.

[0158] A block size that can be supported in the basemap structure of the second LDPC code is 10 × Z (where Z = ax²j, Z is configured by Table 4 below, with a maximum supported block size of 2560 (or 3840) and a minimum supported block size of 20). For reference, in Table 3 above, some or all of the following Z values ​​can be considered as candidates: 288, 272, 304, 320, 336, 352, 368, and 384.

[0159] [Table 4]

[0160]

[0161]

[0162] The following block size can be supported in the base graph structure of the second LDPC code:

[0163] 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 180, 200, 220, 240, 260, 280, 300, 320, 360, 400, 440, 480, 520, 560, 600, 640, 720, 800, 880, 960, 1040, 1120, 1200, 1280, 1440, 1600, 1760, 1920, 2080, 2240, 2400, 2560 (2880, 3200, 3520, 3840, 2720, 3040, 3360, 3680)

[0164] In this case, 2880, 3200, 3520, 3880, 2720, 3040, 3360 and 3680 can be additionally included.

[0165] In addition, a total of M maximum exponent matrices are defined based on the base graph (BG#2) of the second LDPC code. Typically, the value of M can be 8 or a predetermined natural number, and the value of i can be from 1 to M. The terminal uses a matrix. Perform downlink data decoding or uplink data encoding. Matrix It has specific element values ​​shifted from the base graph (BG#2) of the second LDPC code. That is, the matrix... They can have different shift values.

[0166] As mentioned above, two types of base maps are provided in next-generation mobile communication systems. Therefore, a particular terminal may support only the first base map, only the second base map, or both base maps. This is summarized in Table 5 below.

[0167] [Table 5]

[0168]

[0169] When receiving downlink data information from a base station via downlink control information, a Type 1 supporting terminal determines the base map to be applied to the transport block containing downlink data information, continuously uses the first base map and applies the maximum exponent matrix during data encoding or decoding. When receiving downlink data information from a base station via downlink control information, a Type 2 supporting terminal determines the base map to be applied to the transport block containing downlink data information, continuously employs the second base map and applies the maximum exponent matrix during data encoding or decoding.

[0170] When receiving downlink data information from a base station via downlink control information, Type 3 supported terminals can pre-configure the base map for transport blocks containing downlink data information from the base station via higher-layer signaling such as SIB, RRC, or MAC CE, or configure the base map via downlink control information transmitted to the terminal group common control channel, terminal (cell) common control channel, or terminal-specific control channel. The downlink control information may or may not include transport block scheduling information.

[0171] When receiving downlink data information from the base station via downlink control information, Type 3 supported terminals pre-configure the maximum exponent matrix applied to transport blocks containing downlink data information from the base station via higher-layer signaling such as SIB, RRC, or MAC CE. and Alternatively, the maximum exponent matrix applied to transport blocks containing downlink data information can be configured by transmitting downlink control information to the terminal group common control channel, the terminal (cell) common control channel, or the terminal-specific control channel. and Downlink control information may or may not include transport block scheduling information.

[0172] Figure 4 This is a flowchart of the data receiving process of the terminal according to an embodiment.

[0173] Reference Figure 4 In step 400, the terminal receives downlink control information through the terminal common downlink control channel, the terminal group common downlink control channel, or the terminal specific downlink control channel.

[0174] In step 402, the terminal determines one or more combinations of the following conditions by receiving downlink control information.

[0175] A. RNTI scrambled in the CRC of downlink control information

[0176] B. Size of transport blocks included in downlink control information

[0177] C. Baseline indicator included in downlink control information

[0178] D. Scheduling-related values ​​included in downlink control information

[0179] If the RNTI of the CRC scrambled to the downlink control information is a random access RNTI (RA-RNTI), paging RNTI (P-RNTI), system information RNTI (SI-RNTI), single cell RNTI (SC-RNTI), or group RNTI based on condition A (G-RNTI), the terminal determines this condition as condition 1 and performs operation 1 in step 404.

[0180] If the RNTI of the CRC scrambled to the downlink control information is based on RA-RNTI, P-RNTI, SI-RNTI, SC-RNTI or G-RNTI under condition A, the terminal determines that the condition is condition 2 and performs operation 2 in step 406.

[0181] If the size of the transport block and CRC included in the downlink control information is greater than or equal to a predetermined threshold Δ1 based on condition B, the terminal determines this condition as condition 1 and performs operation 1 in step 404.

[0182] If the size of the transport block and CRC included in the downlink control information is less than or equal to a predetermined threshold Δ2 based on condition B, the terminal determines this condition as condition 2 and performs operation 2 in step 406.

[0183] Threshold Δ1 or threshold Δ2 can be a fixed value of 2560 (or 3840, 960, 1040, 1120, 170, or 640 or any other value). Threshold Δ1 or threshold Δ2 can have the same value or different values.

[0184] Optionally, threshold Δ1 or threshold Δ2 can be a value preset via higher-layer signaling such as SIB, RRC, or MAC CE, or a value preset via downlink control information from the terminal group common control channel, terminal common control channel, or terminal-specific downlink control channel. In this case, a value fixed at 2560 (or 3840, 960, 1040, 1120, 170, or 640, or any other value) can be used as the default threshold Δ before setting threshold Δ. The time preceding threshold Δ1 or threshold Δ2 is determined based on whether the CRC of the terminal's downlink control information is scrambled to RA-RNTI, P-RNTI, SI-RNTI, SC-RNTI, or G-RNTI.

[0185] At the minimum code block length (K min If the first base map is included, the code block length K supported in the first base map and the code block length K supported in the second base map satisfy K>(transmit block size + CRC size). Based on condition B, the size of the transmit block and CRC included in the downlink control information is less than 2560 (or 3840) (optionally, when the size is greater than 160 or 640), the terminal determines the situation as condition 1 and performs operation 1 in step 404.

[0186] When the minimum block length (K) belongs to the second base map, the block length K that can be supported in the first base map and the block length K that can be supported in the second base map satisfy K>(transmit block size + CRC size). Based on condition B, which includes the size of the transmit block and CRC included in the downlink control information being less than 2560 (or 3840) (optionally, when the size is greater than 160 or 640), the terminal determines the situation as condition 2 and performs operation 2 in step 406.

[0187] This can be expressed as follows:

[0188] (TB+CRC)≤K≤V2 where K∈K 1 or K∈K 2 ;

[0189] K* = min(K);

[0190] If K*∈K 1 If condition 1 is met, then operation 1 in step 404 will be executed;

[0191] If K*∈K 2 If condition 2 is met, then operation 2 in step 406 is executed; and

[0192] Where K represents the code block length, K* represents the selected code block length, TB represents the transport block size, CRC represents the CRC size, and K 1 K represents the set of code block lengths that can be supported in the first base graph. 2 This represents the set of code block lengths that can be supported in the second base graph.

[0193] Alternatively, this can be expressed as follows:

[0194] V1≤(TB+CRC)≤K≤V2 where K∈K 1 or K∈K 2 ;

[0195] K* = min(K);

[0196] If K*∈K 1 If condition 1 is met, then operation 1 in step 404 will be executed;

[0197] If K*∈K 2 If condition 2 is met, then operation 2 in step 406 is executed; and

[0198] Where K represents the code block length, K* represents the selected code block length, TB represents the transport block size, CRC represents the CRC size, and K 1 K represents the set of code block lengths that can be supported in the first base graph. 2 This represents the set of code block lengths that can be supported in the second base graph.

[0199] K 1 This indicates that it can be in the first base graph (or the maximum exponential matrix). The set of code block lengths supported in the code block length specification, and the type of the set can be one or two or more combinations. V1 can be 160 or 640 or other values. V2 can be 2560, 3840, 960, 1040 or 1120 or any other value.

[0200] Optionally, when TB+CRC is less than V1, the terminal applies the maximum exponent matrix. One of the operations involves decoding or encoding. When TB+CRC is greater than V2, the terminal applies the maximum exponent matrix. One of them is used to perform decoding or encoding.

[0201] 1. If K is less than or equal to 2560, 44,66,88,132,154,176,198,242,264,286,308,330,352,296,484,528,572,616,660,704,792,968,1056,1144,1232,1320,1408,1584,1936,2112,2288,2464;

[0202] 2. If K is less than or equal to 3840, 44,66,88,132,154,176,198,242,264,286,308,330,352,296,484,528,572,616,660,704,792,968,1056,1144,1232,1320,1408,1584,1936,2112,2288,2464,2640,2816,3168;

[0203] 3. If K is less than or equal to 960, 44, 66, 88, 132, 154, 176, 198, 242, 264, 286, 308, 330, 352, 296, 484, 528, 572, 616, 660, 704, 792;

[0204] 4. If K is less than or equal to 1040, 44,66,88,132,154,176,198,242,264,286,308,330,352,296,484,528,572,616,660,704,792,968; and

[0205] 5. If K is less than or equal to 1120, 44,66,88,132,154,176,198,242,264,286,308,330,352,296,484,528,572,616,660,704,792,968,1056.

[0206] When the value is less than or equal to M, the above values ​​can usually be used even if all or some of them are omitted. The value of M can be 160, 640, or other values.

[0207] K 2 This indicates that it can be in the second base graph (or the maximum exponential matrix). The set of code block lengths supported in ) and the type of the set can be one, two or more of a combination of some.

[0208] 1. If K is less than or equal to 2560, then the values ​​are: 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 180, 200, 220, 240, 260, 280, 300, 320, 360, 400, 440, 480, 520, 560, 600, 640, 720, 800, 880, 960, 1040, 1120, 1200, 1280, 1440, 1600, 1760, 1920, 2080, 2240, 2400, 2560.

[0209] 2. If K is less than or equal to 3840, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 180, 200, 220, 240, 260, 280, 300, 320, 360, 400, 440, 480, 520, 560, 6 00,640,720,800,880,960,1040,1120,1200,1280,1440,1600,1760,1920,2080,2240,2400,2560,(2720,2880,3040,3200,3360,3520,3680,3840);

[0210] 3. If K is less than or equal to 960, then the values ​​are: 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 180, 200, 220, 240, 260, 280, 300, 320, 360, 400, 440, 480, 520, 560, 600, 640, 720, 800, 880, 960.

[0211] 4. If K is less than or equal to 1040, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 180, 200, 220, 240, 260, 280, 300, 320, 360, 400, 440, 480, 520, 560, 600, 640, 720, 800, 880, 960, 1040; and

[0212] 5. If K is less than or equal to 1120, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 180, 200, 220, 240, 260, 280, 300, 320, 360, 400, 440, 480, 520, 560, 600, 640, 720, 800, 880, 960, 1040, 1120.

[0213] When the basemap indicator included in the downlink control information is based on condition C indicator value 0 (or 1), the terminal determines that condition 1 is met and performs operation 1 in step 404.

[0214] When the basemap indicator included in the downlink control information is based on condition C indicator value 1 (or 0), the terminal determines that condition 2 is met and performs operation 2 in step 404.

[0215] When the MCS, RV, NDI or frequency or time resource allocation value included in the scheduling-related values ​​in the downlink control information indicates specific information based on condition D, the terminal determines that condition 1 is met and performs operation 1 in step 404.

[0216] When the MCS, RV, NDI or frequency or time resource allocation value in the scheduling-related values ​​included in the downlink control information indicates specific information based on condition D, the terminal determines that condition 2 is met and performs operation 2 in step 404.

[0217] When the terminal performs operation 1 in step 404, the terminal performs one or more of the following operations in combination:

[0218] 1. The terminal attempts to base its analysis on the first base graph (or the maximum exponential matrix). The code block length supported in the code block is used to decode the transport block indicated by the downlink control information.

[0219] 2. The terminal attempts to decode the transport block indicated by the downlink control information by referring to the next supported code block value:

[0220] 44,66,88,110,132,154,176,198,220,242,264,286,308,330,352,296,440,484,528,572,616,660,704,792,880,968,1056,1144,1232,1320,140 8,1584,1760,1936,2112,2288,2464,2640,2816,3168,3520,3872,4224,4576,4928,5280,5632,6336,7040,7744,8448,(5984,6688,7392,8096).

[0221] 3. One or more of the following possible code block sets are used by the terminal. Encoded or decoded code blocks. At least for a code block, the terminal attempts to base its algorithm on the matrix supported by the first basis graph. To decode the transport blocks indicated by the downlink control information.

[0222] A.44,88,176,352,704,1408,2816,5632;

[0223] B.44,66,110,154,198,242,286,330; and

[0224] C.44,66,154,198,242,286,330.

[0225] 4. One or more of the following possible code block sets are used by the terminal. Encoded or decoded code blocks. At least for a code block, the terminal attempts to base its algorithm on the matrix supported by the first basis graph. To decode the transport blocks indicated by the downlink control information.

[0226] A.66,132,264,528,1056,2112,4224,8448;

[0227] B.88,132,220,308,396,484,572,660; and

[0228] C.88,132,308,396,484,572,660.

[0229] 5. One or more of the following possible sets of code blocks are used by the terminal. Encoded or decoded code blocks. At least for a code block, the terminal attempts to base its algorithm on the matrix supported by the first basis graph. To decode the transport blocks indicated by the downlink control information.

[0230] A.110,220,440,880,1760,3520,7040;

[0231] B.176,264,440,616,792,968,1144,1320;

[0232] C.1760,3520,7040;

[0233] D.3520,7040;

[0234] E.7040; and

[0235] F.176,264,616,792,968,1144,1320.

[0236] 6. One or more of the following possible code block sets are used by the terminal. Encoded or decoded code blocks. At least for a code block, the terminal attempts to base its algorithm on the matrix supported by the first basis graph. To decode the transport blocks indicated by the downlink control information.

[0237] A.154,308,616,1232,2464,4928;

[0238] B.352,528,880,1232,1584,1936,2288,2640; and

[0239] C.352,528,1232,1584,1936,2288,2640.

[0240] 7. One or more of the following possible sets of code blocks are used by the terminal. Encoded or decoded code blocks. At least for a code block, the terminal attempts to base its algorithm on the matrix supported by the first basis graph. To decode the transport blocks indicated by the downlink control information.

[0241] A.198,396,792,1584,3168,6336;

[0242] B.704,1056,1760,2464,3168,3872,4576,5280; and

[0243] C.704,1056,2464,3168,3872,4576,5280.

[0244] 8. One or more of the following possible sets of code blocks are used by the terminal. Encoded or decoded code blocks. At least for a code block, the terminal attempts to base its algorithm on the matrix supported by the first basis graph. To decode the transport blocks indicated by the downlink control information.

[0245] A.242,484,968,1936,3872;

[0246] B.1408,2112,3520,4928,6336,7744; and

[0247] C.1408,2112,4928,6336,7744.

[0248] 9. One or more of the following possible code block sets are used by the terminal. Encoded or decoded code blocks. At least for a code block, the terminal attempts to base its algorithm on the matrix supported by the first basis graph. To decode the transport blocks indicated by the downlink control information.

[0249] A.286,572,1144,2288,4576; and

[0250] B.2816,4224,7040.

[0251] 10. One or more of the following possible sets of code blocks are used by the terminal. Encoded or decoded code blocks. At least for a code block, the terminal attempts to base its algorithm on the matrix supported by the first basis graph. To decode the transport blocks indicated by the downlink control information.

[0252] A.330,660,1320,2640,5280; and

[0253] B.5632,8448.

[0254] When the terminal performs operation 2 in step 406, the terminal performs one or more of the following operations in combination.

[0255] 1. The terminal attempts to decode the transport block indicated by the downlink control information based on the code block length that can be supported in the second base map.

[0256] 2. The terminal attempts to decode the transport block indicated by the downlink control information by referring to the next supported code block value:

[0257] 20,30,40,50,60,70,80,90,100,110,120,130,140,150,160,180,200,220,240,260,280,300,320,360,400,440,480,520,560,600,640,720,800,880,960,1040,1120,1200,1280,1440,1600,1760,1920,2080,2240,2400,2560 (2880,3200,3520,3840,2720,3040,3360,3680).

[0258] 3. One or more of the following possible code block sets are used by the terminal. Encoded or decoded code blocks. At least for code blocks, the terminal attempts to base its algorithm on the matrix supported by the second basis graph. To decode the transport blocks indicated by the downlink control information.

[0259] A.20, 40, 80, 160, 320, 640, 1280; and

[0260] B.20,30,50,70,90,110,130,150.

[0261] 4. One or more of the following possible code block sets are used by the terminal. Encoded or decoded code blocks. At least for code blocks, the terminal attempts to base its algorithm on the matrix supported by the second basis graph. To decode the transport blocks indicated by the downlink control information.

[0262] A.30,60,120,240,480,960,1920,(3840); and

[0263] B.40,60,100,140,180,220,260,300.

[0264] 5. One or more of the following possible sets of code blocks are used by the terminal. Encoded or decoded code blocks. At least for code blocks, the terminal attempts to base its algorithm on the matrix supported by the second basis graph. To decode the transport blocks indicated by the downlink control information.

[0265] A.50,100,200,400,800,1600,(3200); and

[0266] B.80,120,200,280,360,440,520,600.

[0267] 6. One or more of the following possible code block sets are used by the terminal. Encoded or decoded code blocks. At least for code blocks, the terminal attempts to base its algorithm on the matrix supported by the second basis graph. To decode the transport blocks indicated by the downlink control information.

[0268] A.70,140,280,560,1120,2240; and

[0269] B.160,240,400,560,720,880,1040,1200.

[0270] 7. One or more of the following possible sets of code blocks are used by the terminal. Encoded or decoded code blocks. At least for code blocks, the terminal attempts to base its algorithm on the matrix supported by the second basis graph. To decode the transport blocks indicated by the downlink control information.

[0271] A.90,180,360,720,1440,(2880); and

[0272] B.320,480,800,1120,1440,1760,2080,2400.

[0273] 8. One or more of the following possible sets of code blocks are used by the terminal. Encoded or decoded code blocks. At least for code blocks, the terminal attempts to base its algorithm on the matrix supported by the second basis graph. To decode the transport blocks indicated by the downlink control information.

[0274] A.110,220,440,880,1760,(3520); and

[0275] B.640,960,1600,2240,(2880),(3520).

[0276] 9. One or more of the following possible code block sets are used by the terminal. Encoded or decoded code blocks. At least for code blocks, the terminal attempts to base its algorithm on the matrix supported by the second basis graph. To decode the transport blocks indicated by the downlink control information.

[0277] A.130,260,520,1040,2080; and

[0278] B.1280,1920,(3200).

[0279] 10. One or more of the following possible sets of code blocks are used by the terminal. Encoded or decoded code blocks. At least for code blocks, the terminal attempts to base its algorithm on the matrix supported by the second basis graph. To decode the transport blocks indicated by the downlink control information.

[0280] A. 150, 300, 600, 1200, 2400; and

[0281] B.2560,(3840).

[0282] The numbers in brackets in this disclosure may or may not include the corresponding values.

[0283] In this disclosure, the number of information bits can indicate the amount of data to be transmitted from the higher layer of the TB or the TBS. The TBS is typically transmitted over one TTI, but can also be transmitted over several TTIs. In this disclosure, the TBS can be represented by N.

[0284] The first terminal in this disclosure may be configured to use a maximum exponential matrix during data transmission. The terminal performing the decoding can be one that does not use the maximum exponent matrix during data transmission. The terminal that performs the decoding, or a terminal that supports type 1 in Table 5 above.

[0285] The second terminal in this disclosure may be a maximum exponential matrix configured to be used during data transmission. The terminal performing the decoding can be one that does not use the maximum exponent matrix during data transmission. The terminal that performs the decoding, or the terminal that supports type 2 in Table 5 above.

[0286] The third terminal in this disclosure may be configured to use a maximum exponential matrix during data transmission. or The terminal performing the decoding must be a terminal that supports type 3 in Table 5 above. The terminal performs the determination based on one or more of TBS, MCS, and transmission modes to decide which maximum exponent matrix to use.

[0287] The values ​​written in parentheses in the tables described in this disclosure are all or some of the values ​​that may be included in the table or may not be included in the table.

[0288] Figure 5 This is a schematic diagram illustrating a method for segmenting a TB into code blocks according to an embodiment.

[0289] Figure 5 The diagram shows a transport block 510 with an insertion length of N 511 and a CRC 520 with a length of L 502, as well as a transport block (TB-CRC) 530 in which a CRC with a total length of B 501 is inserted.

[0290] The CRC inserted during TB transmission to determine whether TB decoding was successful after the TB in the decoding receiver can have at least two possible values ​​of length L. That is, when the transport block is segmented into two or more code blocks during transmission, a long CRC is used. Conversely, when the transport block is sent as a single code block, a short CRC can be used.

[0291] When LDPC codes are used in mobile communication systems, they possess parity checking functionality as an integral part of the code itself, enabling the determination of decoding success to a certain degree without CRC insertion. In specific mobile communication systems using LDPC codes and achieving a predetermined or higher level of additional decoding success certainty, in addition to the LDPC code's parity checking function, a CRC insertion technique can be used to determine the final decoding success, achieving the desired level of decoding success determination. For example, if the required decoding error rate is 10^-6 and the determination error rate obtainable through LDPC code parity checking is 10^-3, inserting an additional CRC with a determination error rate of 10^-3 achieves a final determination error rate of 10^-6. Generally, the longer the CRC length, the lower the determination error rate for decoding success or failure. When transmitting a transport block segmented into two or more code blocks simultaneously, the TB is concatenated with the LDPC code, eliminating the need for the LDPC code's inherent parity checking function. Conversely, when the transport block is a single code block, the LDPC code's parity checking function can be used. Therefore, in a specific system, CRCs of either long or short lengths can be inserted into the TB, and the inserted CRC is used according to the number of code blocks in the transport block. In embodiments of this disclosure, the long length L is assumed to be based on whether the TB is segmented into two or more code blocks. + Alternatively, a shorter length L can be used as the length L of the CRC inserted into the TB. Additionally, in the case of LTE, L is used... + An example of a possible value is 24, which, as an example of L-, allows for the reclamation of any shorter length, but 16 is used in the LTE control channel. However, this disclosure is not limited to 16, which is merely an example of an L- value.

[0292] Whether a given TB can be segmented into multiple code blocks can be determined based on whether it can be transmitted within a single code block. The segmentation of a specific TB into multiple code blocks can be determined as follows.

[0293] - If the value of N+L- is less than or equal to the maximum possible CB length, then TB is transmitted as a single code block; if (N+L-) <= K max Then use a CB; and

[0294] - If the value of N+L- is greater than the maximum possible CB length, then TB is transmitted while segmenting into multiple code blocks; if (N+L-)>K max Then CB is segmented.

[0295] In this case, K max This represents the largest possible block size.

[0296] In the following description of this disclosure, L is assumed to be the CRC length included in the TB when the TB-CRC is transmitted simultaneously as multiple code blocks segmented into TB-CRC. + In other words, if the base station / terminal determines that TB is segmented, even if whether TB is segmented is determined based on N+L, TB is still based on B=(N+L). + Divide by )

[0297] The transport block decoding process of the downlink data channel of the terminal described in this disclosure can be fully applied to the transport block encoding process of the uplink data channel.

[0298] The encoding / decoding operations of the terminal described in this disclosure can be fully applied to base station encoding / decoding operations.

[0299] In this disclosure, the CRC inserted in the TB transmission for determining whether the decoding of the TB was successful after decoding at the receiver can have at least two possible values. That is, when the transport block is transmitted simultaneously in segments of two or more code blocks, a long (L) CRC is used. + CRC. Conversely, when a block of data is transmitted as a single code block, a short (L-)CRC can be used. L- is a value less than L. + Natural numbers. In embodiments of this disclosure, depending on whether the TB is divided into two or more code blocks, a long length L can be used. + Alternatively, a shorter length L can be used as the length of the CRC inserted into the TB. Additionally, in the case of LTE, L... + An example of a possible value is 24, which, as an example of L-, allows for the reclamation of any shorter length, but 16 is used in the LTE control channel. However, this disclosure is not limited to 16, which is merely an example of an L- value.

[0300] Example 1

[0301] Example 1 provides a method for determining the H matrix and performing channel coding when the number of information bits is less than or equal to a predetermined value. For example, the number of information bits N can be less than or equal to the value of Nx_max, or N+L- can be less than or equal to the value of Nx_max. Nx_max can be any value and the value used to explain the above example.

[0302] If the first terminal is available or configurable to use only the maximum exponent matrix. For a terminal (i = 1, 2, ..., 8), if N + L - is less than or equal to N1_max, then TB can be transmitted using a single code block. In the example above, N1_max can be 8448. In this case, Z used for channel coding and H matrix determination is selected from the Z values ​​shown in Table 3 above, which is the minimum Z value that satisfies Kb × Z ≥ N + L -. In the example above, Kb can be set to 22. In this case, the padding bits of Kb × Z - (N + L -) can be added to the CRC of the information bits and the L bits before the information bits, or between the information bits and the CRC, or at the end. In this disclosure, the padding bits can be set to 0 or 1.

[0303] If the second terminal is available or can be configured to use only the maximum exponent matrix. For a terminal (i = 1, 2, ..., 8), where N+L is less than or equal to N2_max and the coding rate is less than or equal to 2 / 3, 0.67, 0.667, or 0.6667, a TB can be transmitted using a single code block. In the example above, N2_max can be 2560. In this case, Kb can be determined as follows: if N+L->N2_t1, then Kb is 10; if N2_t1 ≥ N+L->N2_t2, then Kb is 9; if N2_t2 ≥ N+L->N2_t3, then Kb is 8; otherwise, Kb is 6. In the example above, N2_t1 can be 640, N2_t2 can be 560, and N2_t3 can be 192. The above example can be expressed by the following pseudocode:

[0304] Pseudocode 1

[0305] [start]

[0306] -If(N+L->640),Kb=10;

[0307] -Else if (N+L->560), Kb = 9;

[0308] -Else if (N+L->192), Kb = 8;

[0309] -Else,Kb=6;

[0310] [Finish]

[0311] Alternatively, Kb can be determined as shown in Table 6 below.

[0312] [Table 6]

[0313]

[0314] In this case, the Z value used for channel coding and for H matrix determination is selected from the Z values ​​shown in Table 4 above, which is the minimum Z value satisfying Kb×Z≥N+L-. Next, the padding bits of Kb×Z–(N+L-) can be added to the CRC of the information bits and the L bits before the information bits, or between the information bits and the CRC, or at the end. In this disclosure, the padding bits can be set to 0 or 1.

[0315] The third terminal is either a terminal capable of performing decoding or configured to use the maximum exponent matrix. and For each BG (Block Group) used by the terminal performing decoding, different transport block lengths and coding rates can be configured. For example, if the transport block length TBS plus the length of the corresponding CRC is less than or equal to a specific value N2_max or 2560, and the coding rate is less than or equal to a specific value 2 / 3, the third terminal can use the second BG (BG#2); otherwise, the third terminal can use the first BG (BG#1). In the example above, BG#1 is optimized for cases where the transport block length is greater than 2560 or the coding rate is 2 / 3 or higher, and BG#2 is optimized for the opposite cases. Using BG#1 in the above description is equivalent to using the maximum exponential matrix. (i = 1, 2, ..., 8) is one of them. Similarly, the use of BG#2 is equivalent to using the maximum exponential matrix. (i = 1, 2, ..., 8) Furthermore, the coding rate can be easily derived from the MCS value indicated by the base station to the terminal. In this disclosure, the coding rate 2 / 3 can be changed to 0.67, 0.667, or 0.6667 and can be applied. In the above description, when N+L- is less than or equal to a specific value N2_max, Kb is determined according to pseudocode 1 above or Table 6 above, and therefore, as the Z value used for channel coding and H matrix determination, the smallest Z value is selected from the Z values ​​shown in Table 4 above that satisfy Kb×Z≥N+L-. Next, the padding bits of Kb×Z–(N+L-) can be added to the CRC of the information bits and the L bits before the information bits, or between the information bits and the CRC, or lastly. In this disclosure, the padding bits can be set to 0 or 1. In the description above, when N+L- is greater than, or greater than or equal to, a specific value N2_max, the Z used for channel coding and the Z used for H matrix determination are selected from the Z values ​​shown in Table 3 above, which is the minimum Z value that satisfies Kb×Z≥N+L-. In the example above, Kb can be set to 22. In this case, the padding bits of Kb×Z–(N+L-) can be added to the CRC of the information bits and the L bits before the information bits, or between the information bits and the CRC, or at the end.

[0316] Example 2

[0317] Example 2 provides a method for determining the code block size, determining the H matrix, and performing channel coding when the number of information bits is less than or equal to a predetermined value. For example, the number of information bits N can be less than or equal to the value of Nx_max, or N+L- can be less than or equal to the value of Nx_max. In the above example, Nx_max can be any value and the value used to explain the above example.

[0318] When the TBS of the data to be sent is N, the terminal can preferentially select the smallest value among the K values ​​that satisfy K≥N+L- from the set of values ​​that can have specified values. For example, the values ​​in the set of special values ​​of K can be defined as shown in Table 7 below.

[0319] [Table 7]

[0320] 40<=K<=512 528<=K<=1024 1056<=K<=2048 2112<=K<=6114 6272<=K<=8448 8 16 32 64 128

[0321] Table 7 above indicates that when 40 <= K <= 512, the interval between possible values ​​of K is 8, so 40, 48, 56, 64, 72, ... When 528 <= K <= 1024 is included in the set of values, the interval between values ​​that can be K is 16, so 528, 544, 560, ..., 1024 are included in the set of specific values ​​that can be K. Therefore, a set of values ​​that can be K is obtained from Table 7 above. The padding bits of K – (N+L-) can be added to the CRC of the information bits and the L bits before the information bits, or between the information bits and the CRC, or at the end. In this disclosure, the padding bits can be set to 0 or 1. In the example above, the K value is determined to be one of the values ​​determined by Table 7 above, but in another example, a method for determining the K value from integers that are multiples of 8 can be applied.

[0322] If K is less than or equal to N1_max in the first terminal, the first terminal can be used or configured to use only the maximum exponent matrix. A terminal (i = 1, 2, ..., 8) can transmit TB using a single code block. In the above, N1_max can be 8448. In this case, Z used for channel coding and for determining the H matrix is ​​chosen from the Z values ​​shown in Table 3 above, which is the minimum Z value satisfying Kb × Z ≥ K. In the example above, Kb can be set to 22. In this case, padding bits of Kb × ZK can be added before or at the end of the obtained K bits. In this disclosure, the padding bits can be set to 0 or 1.

[0323] If in the second terminal K is less than or equal to N2_max and the coding rate is less than or equal to 2 / 3, 0.67, 0.667, or 0.6667, the second terminal can be used or configured to use only the maximum exponential matrix. A terminal (i = 1, 2, ..., 8) can transmit a TB using a single code block. In the example above, N2_max can be 2560. In this case, Kb can be determined as follows: Kb is 10 if K > N2_t1, Kb is 9 if N2_t1 ≥ K > N2_t2, Kb is 8 if N2_t2 ≥ K > N2_t3, and Kb is 6 otherwise. In the example above, N2_t1 can be 640, N2_t2 can be 560, and N2_t3 can be 192. The above example can be represented by the following pseudocode.

[0324] Pseudocode 2

[0325] [start]

[0326] -If (K>640), Kb = 10;

[0327] -Else if (K>560), Kb=9;

[0328] -Else if (K>192), Kb=8;

[0329] -Else,Kb=6;

[0330] [Finish]

[0331] Optionally, Kb can be determined as shown in Table 6 above. In this case, the Z value used for channel coding and for H matrix determination is selected from the Z values ​​shown in Table 4 above, which is the minimum Z value that satisfies Kb×Z≥K. Next, the padding bits of Kb×Z–K can be added to the CRC of the information bits and the L bits before the information bits, or between the information bits and the CRC, or at the end. In this disclosure, the padding bits can be set to 0 or 1.

[0332] The third terminal is either a terminal capable of performing decoding or configured to use the maximum exponent matrix. and For each base map (BG) used by the terminal performing decoding, different transport block lengths and coding rates can be configured. For example, if the transport block length TBS plus the length of the corresponding CRC is less than or equal to a specific value N2_max or 2560, and the coding rate is less than or equal to a specific value 2 / 3, the third terminal can use the second BG (BG#2); otherwise, the third terminal can use the first BG (BG#1). In the example above, BG#1 is optimized for cases where the transport block length is greater than 2560 or the coding rate is 2 / 3 or higher, and BG#2 is optimized for the opposite cases. Using BG#1 in the above description is equivalent to using the maximum exponential matrix. (i = 1, 2, ..., 8) is one of them. Similarly, the use of BG#2 is equivalent to using the maximum exponential matrix. (i = 1, 2, ..., 8) Furthermore, the coding rate can be easily derived from the MCS value indicated by the base station to the terminal. In this disclosure, the coding rate 2 / 3 can be changed to 0.67, 0.667, or 0.6667 and can be applied. In the above description, when K is less than or equal to a specific value N2_max, Kb is determined according to pseudocode 2 above or Table 6 above, and therefore, as the Z value used for channel coding and determining the H matrix, the smallest Z value among the Z values ​​shown in Table 4 above that satisfies Kb×Z≥K is selected. Next, the padding bits of Kb×Z–K can be added to the CRC of the information bits and the L bits before the information bits, or between the information bits and the CRC, or lastly. In this disclosure, the padding bits can be set to 0 or 1. In the above description, when K is greater than, or greater than or equal to, a specific value N2_max, the Z for channel coding and the Z for determining the H matrix are selected from the Z values ​​shown in Table 3 above, which are the smallest Z values ​​among those that satisfy Kb×Z≥K. In the example above, Kb can be set to 22. In this case, the padding bits of Kb×Z–K can be added before or at the end.

[0333] Example 3

[0334] Example 3 provides a method for performing channel coding by dividing the number of information bits into one or more parts and determining an H matrix when the number of information bits is greater than or equal to a predetermined value. In this example, the same H matrix is ​​used to perform channel coding of one or more segmented information bit blocks. That is, this example provides a method for segmenting a transport block into code blocks. For example, the number of information bits N can be greater than the value of Nx_max, or N+L- can be greater than the value of Nx_max. In the above example, Nx_max can be any value and the value used to explain the above example.

[0335] Figure 6 This is a schematic diagram illustrating a method for segmenting a TB into code blocks according to Embodiments 3 and 4 of this disclosure.

[0336] Reference Figure 6 The transport block 610 has a length N 602, and the CRC 620 with a length L 603 is inserted to configure the transport block TB-CRC 630 with a total length B 601 of CRC. Figure 6 An example of a TB-CRC 630 segment with length B is shown, consisting of a total of C CBs (CB#1 606, CB#2 607 to CB#C 608). The segmented code blocks can have a block size K, and each code block can be interpolated with a CRC 620 of length L 605. The length L value of the CRC inserted in the CBs (CB#1 606, CB#2 607 to CB#C 608) can be different from the L value of the CRC inserted in the TB 630. Additionally, the CRC value inserted in the CBs can be different from the CRC value inserted in the TBs. The CRC inserted in the TBs can be represented by L- or L+, where L- is an integer less than L+. For example, L- can be 16, and L+ can be 24. The CRC inserted in the CBs can be represented by L... CB express.

[0337] Figure 7 This is a flowchart of a method for segmenting transport blocks according to an embodiment.

[0338] Reference Figure 7 Example 3 may include the following steps:

[0339] Step 701. Determine the total number of code blocks C;

[0340] Step 702. Determine the expected size B' after code block segmentation;

[0341] Step 703. Determine the size of the code block;

[0342] Step 704. Determine the number of padding bits; and

[0343] Step 705. Insert fill space.

[0344] The above steps are described in more detail below.

[0345] In step 701, the transmitter can determine the total number C of code blocks used to segment a transmission block. First, if N + L - ≤ K max Then C = 1. Here, N is the TBS value. If N + L → K max If B is greater than K, then it is defined as B = N + L +, and the transmitter can calculate the number of code blocks C in the same way as in equation (10) below. In the example above, B is the value obtained by adding CRC bits to TBS according to L +. For example, when the value obtained by adding L- to the size of TBS is greater than a certain value, the transport block is segmented into two or more code blocks, based on adding CRC bits to TBS according to L +. In the above, L- and L+ are different values. Alternatively, when N is greater than K max When -L-, the TBS and L+CRC bits are segmented into two or more code blocks.

[0346] Equation (10):

[0347]

[0348] By performing the operation in equation (10) above, the number of code blocks generated after the segmentation of the transmission block can be minimized. In this case, K max The value can be, for example, 8448.

[0349] In step 702, based on the number of code blocks determined in step 701, the transmitter can determine the total block size B' after the expected code block segmentation. For example, this can be determined based on the following equation (11).

[0350] Equation (11):

[0351] B' = B + C·L CB

[0352] According to equation (11) above, the predicted total block size B' can be obtained by considering the size B and the total CRC size C·L added after the code block is segmented. CB The size B is determined by combining the CRC of the transport block before the code block segmentation and the transport block after the code block segmentation.

[0353] In step 703, the transmitter can determine the code block size. The code block size is determined by Kb×Z and given by Kb=22. As shown in equation (12) below, the Z value used to determine the H matrix to be used for channel coding can be obtained.

[0354] Equation (12);

[0355] Z = minimum Z, such that C × Kb × Z >= B'

[0356] In other words, the smallest Z value that satisfies C×Kb×Z>=B' can be selected from the Z values ​​included in Table 3 above.

[0357] After segmenting by the operation of equation (12) above, the transmitter can choose the code block size that is closest to the whole length B'.

[0358] In step 704, the transmitter can determine the number of padding bits. For example, the following equation (13) can be determined.

[0359] Equation (13):

[0360] F=C×Kb×ZB'

[0361] In step 705, the transmitter may insert the F padding bits determined in step 704 into a specific code block. One method for inserting the padding bits is to insert all padding bits of size F into a specific code block. The specific code block may, for example, correspond to the first code block in a code block generated after code block segmentation.

[0362] As another example of inserting padding bits, padding bits of size F can be distributed and inserted as evenly as possible into all code blocks. More specifically, padding bits of size 1 can be inserted into the first N code blocks of a total of C code blocks, and padding bits of size 2 can be inserted into the remaining M code blocks. For example, N, M, and first padding bit size F. + and the size of the second padding bit F - It can be determined by the following equation (14).

[0363] Equation (14):

[0364]

[0365] Equation (14) is characterized in that the difference between the size of the first fill bit and the size of the second fill bit can be minimized to 1. Therefore, the advantage is that it can guarantee the insertion of the most uniform fill bits.

[0366] As another example of inserting padding bits, padding bits of size F can be distributed and inserted into all code blocks as evenly as possible. More specifically, it is possible to insert padding bits of size F into all code blocks. + The padding bits are inserted into all C blocks of the first code block size. + The first N of the code blocks + Within a code block, and can have a second padding bit size F - The fill position is inserted into the remaining M. + Within a code block. For example, N, M, and the size of the first padding bit F. + and the size of the second padding bit F - It can be determined by the following equation (15).

[0367] Equation (15):

[0368]

[0369] To reiterate the example above, padding bits of size F can be inserted into all code blocks as equally as possible. For example, the transmitter can include padding bits before and after each code block. bit or The padding bits are used to perform channel coding on each code block. In this case... A code block or (F mod C) code block can have The padding bits, and the remaining code block can have bit or Padding bits. In this disclosure The operation is a function corresponding to the largest integer, which is less than or equal to the real number x in the descending order of x.

[0370] As another example of inserting padding bits, padding bits of size F can be distributed and inserted as evenly as possible into all code blocks of the second code block size. More specifically, it is possible to insert padding bits of size F into all code blocks of the first padding bit size. + The padding bits are inserted into all C blocks of the second code block size. - The first N of the code blocks - Within a code block, and can have a second padding bit size F - The fill position is inserted into the remaining M. - In each code block. For example, N - M - First padding size F + and the size of the second padding bit F - It can be determined by the following equation (16).

[0371] Equation (16):

[0372]

[0373] In the example above, the size of the first block and the size of the second block can be determined based on the TBS and the number of blocks.

[0374] This embodiment can also be represented by the following pseudocode 3. In the following text, "a0,a1,a2,...a A-1 "A" can be data corresponding to TB. "A" can be TBS.

[0375] Pseudocode 3

[0376] [Start]

[0377] -If A≤K max –L TB,16

[0378] B = A + L TB,16

[0379] b k =a k Where k = 0, 1, 2, ..., A-1

[0380] b k =p k-A where k=A, A+1,...,A+L TB,16-1

[0381] Number of code blocks: C = 1

[0382] B' = B

[0383] Else

[0384] B = A + L TB,24

[0385] b k =a k Where k = 0, 1, 2, ..., A-1

[0386] b k =p k-A where k=A, A+1,...,A+L TB,24-1

[0387] Number of code blocks:

[0388] B' = B + C·L CB

[0389] -end

[0390] [End]

[0391] In pseudocode 3 above, p k-A It can be from A k Calculated CRC. Additionally, L TB,16 and L TB,24 They can correspond to L- and L+ respectively, L TB,24 and L CB They can be the same value. For example, L TB,16 and L TB,24 They are 16 and 24 respectively, while L CB It can be 24. However, the above embodiments are not limited to the values ​​mentioned above.

[0392] Example 4

[0393] Example 4 provides a method for performing channel coding by dividing the number of information bits into one or more parts, and determining an H matrix when the number of information bits is greater than or equal to a predetermined value. In this example, two types of H matrices are used to perform channel coding of one or more segmented blocks of information bits.

[0394] As mentioned above, Figure 6 This is a schematic diagram illustrating a method for segmenting a transport block (TB) into code blocks according to an embodiment of the present disclosure. As described above, Figure 6 A transport block 610 with a length N 602 is shown, and a CRC 620 with a length L 603 is inserted to configure a transport block TB-CRC 630 with a total length B 601 of CRC. Figure 6 An example is shown where a TB-CRC630 segment of length B is divided into a total of C CBs (CB#1 606, CB#2 607 to CB#C 608). The segmented code blocks can have a block size K, and each code block can be interpolated with a CRC 620 of length L 605. The length L value of the CRC inserted in the CBs (CB#1 606, CB#2 607 to CB#C 608) can be different from the L value of the CRC inserted in the TB 630. Furthermore, the CRC value inserted in the CBs can be different from the CRC value inserted in the TBs. The CRC inserted in the TB can be represented by L- or L+, where L- is an integer less than L+. For example, L- can be 16 and L+ can be 24. The CRC inserted in the CBs can be represented by L... CB express.

[0395] The method for segmenting a transport block according to Embodiment 4 of this disclosure may include the following steps. Optionally, the values ​​of B' and C can be calculated using the pseudocode 3 described above.

[0396] Step 4-1. Determine the total number of code blocks C;

[0397] Step 4-2. Determine the size B' after the expected code block segmentation;

[0398] Step 4-3. Determine the block sizes K+ and K-, and the Z value used to determine the H matrix;

[0399] Step 4-4. Determine the number of padding digits; and

[0400] Steps 4-5. Insert fill space.

[0401] The above steps are described in more detail below.

[0402] Figure 8 This is a flowchart of a method for segmenting transport blocks according to an embodiment.

[0403] Reference Figure 8 Embodiment 4 of this disclosure may include the following steps:

[0404] Step 801. Determine the total number of code blocks C;

[0405] Step 802. Determine the predicted code block size B' after segmentation;

[0406] Step 803. Determine the size K of the first code block. + ;

[0407] Step 804. Determine the size K of the second code block. - ;

[0408] Step 805. Determine the second code block size K. - The number of code blocks C - ;

[0409] Step 806. Determine the first code block size K. + The number of code blocks C + ;

[0410] Step 807. Determine the number of padding bits; and

[0411] Step 808. Insert fill space.

[0412] The above steps are described in more detail below.

[0413] In step 801, the transmitter can determine the total number C of code blocks used to segment a transmission block. First, if N + L - ≤ K max Then C = 1. Here, N is the TBS value. If N + L → K max Then, it is defined as B = N + L +, and the number of code blocks C can be calculated in the same way as in equation (10) above. In the example above, B is the value obtained by adding CRC bits to TBS according to L +. By operating on equation (10) above, the number of code blocks generated by segmenting the transport block can be minimized. In this case, K max The value can be, for example, 8448.

[0414] The above process can be expressed as pseudocode 4 as shown below.

[0415] Pseudocode 4

[0416] [Start]

[0417] If A≤Kcb-L TB,16

[0418] B = A + L TB,16

[0419] b k =a k Where k = 0, 1, 2, ..., A-1

[0420] b k =p k-A where k=A, A+1,...,A+L TB,16-1

[0421] Else

[0422] B = A + L TB,24

[0423] b k =a k Where k = 0, 1, 2, ..., A-1

[0424] b k =p k-A where k=A, A+1,...,A+L TB,24-1

[0425] end if

[0426] (This step involves adding the CRC to the information bits.)

[0427] if A+L TB,16 ≤K cb

[0428] L=0

[0429] Number of code blocks: C = 1

[0430] B' = B

[0431] else

[0432] L = L CB

[0433] Number of code blocks:

[0434] B' = B + C·L

[0435] end if

[0436] (This process involves obtaining the number of code blocks C and the total number of bits B'.)

[0437] [End]

[0438] In the above text, K cb Can indicate K max Or it could be 8448. In the example above, A can be the number of information bits or the amount of data sent from a higher layer. In pseudocode 4 above, p k-A It can be from A k Calculated CRC. Additionally, L TB,16 and L TB,24 They can correspond to L- and L+ respectively, L TB,24 and L CB They can be the same value. For example, L TB,16 and L TB,24 They are 16 and 24 respectively, while L CB It can be 24. However, the above embodiments are not limited to the values ​​mentioned above. In the above text, L indicates L. CB The value is the length of the CRC that can be added to each code block.

[0439] In step 802, based on the number of code blocks C determined in step 801, the transmitter can determine the total block size B' after the expected code block segmentation. For example, this can be determined based on the following equation (11).

[0440] Equation (11)

[0441] B' = B + C·L CB

[0442] According to equation (11) above, the total block size B' can be determined by the size B and the total CRC size C·L added after the code block is segmented. CB The size B is determined by the CRC of the transmission block before and after the code block segmentation.

[0443] In steps 803 and 804, the transmitter can determine the size K+ of the large code block and the size K- of the small code block. In the set of values ​​generated from Table 7 above, K+ and K- are determined to be values ​​that satisfy the following equations (17) and (18), respectively.

[0444] Equation (17):

[0445] K+ = the minimum K such that C×K≥B'

[0446] Equation (18):

[0447] K- = minimum K, such that K <K+

[0448] In steps 805 and 806, as shown below, the transmitter can determine a C with a size of K+. - The number of code blocks and C with size K- - Number of code blocks.

[0449] Equation (19):

[0450]

[0451] Equation (20):

[0452] C + =CC -

[0453] In the above text, Δ K Defined as Δ K =K + -K - .

[0454] Each C+ code block has K+ bits, and each C- code block has K- bits. Each of the K+ and K- bits may include padding bits. The total number of padding bits can be C... + ×K + +C - ×K - -B'. These padding bits can be equally divided into all code blocks, equally divided into C+ code blocks with K+ bits, equally divided into C- code blocks with K- bits, or all included in one code block.

[0455] After step 806, the transmitter can determine the code block size. The code block size is determined by Kb×Z and given by Kb = 22. As shown in equation (21) below, the Z value used to determine the H matrix to be used for channel coding can be obtained.

[0456] Equation (21):

[0457] Z = minimum Z such that KbХZ≥K+

[0458] In other words, the smallest Z value that satisfies KbХZ≥K+ can be selected from the Z values ​​included in Table 3 above.

[0459] The transmitter can select the code block size closest to K+ by operating on the above equation (21).

[0460] In step 807, the transmitter can determine the number of padding bits. For example, the number of padding bits per code block can be determined from equation (22) or equation (23) below.

[0461] Equation (22):

[0462] F+=KbХZ-K+

[0463] Equation (23):

[0464] F-=KbХZ–K-

[0465] In step 808, the transmitter may insert the F+ or F- padding bits determined in step 807 into a specific code block. For example, F+ padding bits may be added to a code block having a code block size K+, and F+ padding bits may be added to a code block having a code block size K-. In the method of inserting padding bits, all padding bits of size F+ or F- may be inserted into a specific code block. The specific code block may, for example, correspond to the first code block in the code blocks generated after code block segmentation.

[0466] Example 4-1

[0467] Example 4-1 provides a method for performing channel coding by segmenting the number of information bits into one or more parts, and determining an H matrix when the number of information bits is greater than or equal to a predetermined value. In this example, two types of H matrices are used to perform channel coding of one or more segmented blocks of information bits.

[0468] Embodiment 4-1 of this disclosure may include the following steps:

[0469] Step 901. Determine the total number of code blocks C;

[0470] Step 902. Determine the size B' after the expected code block segmentation;

[0471] Step 903. Determine the size of the code block;

[0472] Step 904. Determine the number of fill positions from the first step;

[0473] Step 905. Insert the fill space from step one;

[0474] Step 906. Determine Kb and Z to determine the channel code;

[0475] Step 907. Determine the number of fill positions in the second step; and

[0476] Step 908. Insert the second fill space.

[0477] The above steps are described in detail below.

[0478] In step 901, the transmitter can determine the total number C of code blocks used to segment a transmission block. First, if N + L - ≤ K max Then C = 1. Here, N is the TBS value. If N + L → K max Then the transmitter can define B = N + L + and calculate the number of code blocks C in the same way as in equation (10) above. In the above, B is the value obtained by adding CRC bits to TBS according to L +. By operating on equation (10), the number of code blocks generated after segmenting the transmit block can be minimized. In this case, K max The value can be, for example, 8448.

[0479] In step 902, based on the number of code blocks C determined in step 901, the transmitter can determine the total block size B' after the expected code block segmentation. For example, the following equation (24) can be followed. According to equation (24), the total block size B' can be obtained by combining the CRC of the transport blocks before and after code block segmentation, and the size C·L of the total CRC added after code block segmentation. CB To determine.

[0480] In step 903, the code block size K can be determined. K is determined to be a value that satisfies the following equation (24).

[0481] Equation (24):

[0482] K = the minimum K such that C₀K >= B'

[0483] Each of the C code blocks has K data bits, and the K bits may include padding bits. The total sum of the padding bits can be C × K - B'. These padding bits can be divided into all code blocks as equally as possible, or they can all be included in a single code block. The padding bits associated with steps 904 and 905 can be referred to as the first-step padding bits.

[0484] In step 906, the transmitter can determine the size of the code block. The size of the code block is determined by Kb×Z and given by Kb = 22. As shown in equation (25) below, the Z value used to determine the H matrix to be used for channel coding can be obtained.

[0485] Equation (25):

[0486] Z = the minimum Z such that KbХZ>=K.

[0487] In other words, the Z values ​​included in Table 3 above can be selected to satisfy KbХZ>=K. + The minimum Z value.

[0488] The transmitter can select the code block size closest to K by performing the operation of equation (25) above.

[0489] In step 907, the transmitter can determine the number of padding bits. For example, the number of padding bits per code block can be determined from the following equation (26).

[0490] Equation (26):

[0491] F = KbХZ-K

[0492] In step 908, the transmitter may insert the F-padding bits determined in step 1007 into each code block. For example, F-padding bits may be added to a code block having a code block size K. The padding bits associated with steps 907 and 908 may be referred to as second-step padding bits.

[0493] Example 4-2

[0494] In Example 4-2, the method for calculating and determining TBS by the base station and the terminal is described below.

[0495] Base stations can allocate frequency-time resources to terminals for scheduling and calculate how many REs can be used for data transmission. For example, if a base station allocates 10 PRBs (from the first to the tenth PRB) and 7 OFDM symbols for data transmission, the allocated frequency-time resources include a total of 10 × 12 × 7, or 840 REs. Of these 840 REs, aside from those used as demodulation reference signals (DMRS), channel state information reference signals (CSI-RS), and for any control channels that may exist, the remaining REs can be used to map data signals. Therefore, the base station and the terminal can determine how REs will be used for data transmission from the allocation of frequency-time resources. Frequency-time resources can be transmitted to the terminal via physical layer or higher-layer signaling.

[0496] Additionally, the base station can notify the UE of modulation and channel coding information used for scheduling. For example, this may include information about the modulation used to perform data transmissions such as QPSK, 16-QAM, 64-QAM, 256-QAM, and 1024-QAM, as well as information about the coding rate. This can be referred to as the MCS, and its values ​​are defined in a predetermined table. The base station can send a DCI containing only the index used for the MCS to the terminal. Information about the modulation order can also be sent in the modulation information. The modulation orders for QPSK, 16-QAM, 64-QAM, 256-QAM, and 1024-QAM are 2, 4, 6, 8, and 10, respectively.

[0497] The base station calculates the final TBS value using the following steps:

[0498] Step 1. Calculate the temporary TBS for each layer;

[0499] Step 2. Select the final TBS for each layer; and

[0500] Step 3. Calculate the final TBS.

[0501] In step 1, the base station can calculate the temporary TBS for each layer as follows:

[0502] - Temporary TBS value per layer = MCS order x coding rate x number of allocated REs available for data transmission

[0503] Optionally,

[0504] - Temporary TBS value per layer = Value indicated in the MCS table x Number of allocated REs available for data transfer

[0505] The temporary TBS for each layer can be calculated as described above. The values ​​indicated in the MCS table can reflect the coding rate and the MCS order.

[0506] In step 2, the value selected as the final TBS is the maximum value among the TBS values ​​that can be calculated for each layer of temporary TBS, according to Table 8 below.

[0507] [Table 8]

[0508]

[0509]

[0510] [Table 9]

[0511] TBS range TBS(n=0,1,2,...) <![CDATA[TBS≤K max -L TB,16 ]]> <![CDATA[TBS1+8×n]]> <![CDATA[K max -L TB,16 <TBS≤2×(K max -L CB )-L TB,24 ]]> <![CDATA[TBS2+2×8×n]]> <![CDATA[(C-1)×(K max -L CB )-L TB,24 <TBS≤C×(K max -L CB )-L TB,24 For C>2]]> <![CDATA[TBS C +C×8×n]]>

[0512] In Table 9 above, TBS1 can be a small integer, such as 32 or 40. TBS2 can be an integer, such as 8448. C It can be greater than (C-1)×(K) max -L CB )-L TB,24 Multiples of C x 8, or the least common multiple of C and 8. Alternatively, TBS... C It can be ceil(((C-1)×8432+1) / LCM(8,C))×LCM(8,C)-24. As mentioned above, ceil{x} can be the smallest integer greater than or equal to x. LCM(a,b) is the least common multiple of a and b. For example, TBS can be given as shown in Table 10 as follows:

[0513] [Table 10]

[0514] TBS range TBS(n=0,1,2,...) TBS≤8432 32+8×n 8432<TBS≤16840 8448+2×8×n 16840<TBS≤25272 16872+3×8×n 25272<TBS≤33696 25312+4×8×n …… ……

[0515] According to Table 8 above, when the TB segment is divided into C code blocks and each code block contains the same number of bits of information, the number of bits of information contained in each code block can be determined in units of 8. Therefore, the granularity of TBS can be determined as shown in Table 8 above, which can be a TBS value based on a given range of TBS values. Alternatively, the granularity of TBS can be determined as shown in Table 11 below.

[0516] [Table 11]

[0517]

[0518]

[0519] In the above text, LCM(C,8) represents the least common multiple of C and 8. For example, if C is 10, then LCM(C,8), which is the least common multiple of 10 and 8, is 40.

[0520] Alternatively, the value that can be used as TBS can be represented by TBS obtained from pseudocode 5 below.

[0521] Pseudocode 5

[0522] [Start]

[0523] if TBS≤8432

[0524] TBS: 8+8×n, n=0,1,2,...,1053

[0525] else if TBS≤8440

[0526] TBS: 8440+16×n, n=0,1,2,...,525

[0527] else

[0528] TBS: ceil(((C-1)×8432+1) / LCM(8,C))×LCM(8,C)-24+C×8×n, where C=3,4,...... and n=0,1,2,...,floor(8432 / 8 / C)

[0529] End if

[0530] [End]

[0531] In the above text, LCM(a,b) is the least common multiple of a and b. Some values ​​obtained from pseudocode 5 may include those given in Table 12 below. Table 12 below may include TBS candidates obtained from the values ​​given in pseudocode 5 above.

[0532] [Table 12]

[0533]

[0534]

[0535]

[0536]

[0537]

[0538]

[0539]

[0540]

[0541]

[0542] According to pseudocode 5, candidate values ​​for TBS can include TBS+L. TB,24 Some or all of the values ​​in the range are multiples of 8 and multiples of the number of code blocks C. Optionally, according to pseudocode 5, candidate values ​​for TBS may include TBS+L. TB,24 Some or all of the values ​​in the table are multiples of 8*C. Additionally, it is possible to determine the TBS values ​​that include some or all of the TBS candidate values ​​in Table 12 above. The candidate TBS values ​​can be TBS values ​​for each layer or TBS values ​​corresponding to the entire layer.

[0543] Optionally, it is possible to determine the TBS values ​​that include some or all of the TBS candidate values ​​in Table 13 below. The candidate TBS values ​​can be TBS values ​​for each layer or TBS values ​​corresponding to the entire layer.

[0544] [Table 13]

[0545]

[0546]

[0547]

[0548]

[0549]

[0550]

[0551]

[0552]

[0553]

[0554]

[0555]

[0556]

[0557]

[0558]

[0559]

[0560]

[0561]

[0562] The values ​​that can be used as TBS are not limited to those determined in Tables 8, 9, 10, 11, 12, and 13 above, and special TBS values ​​may be added for other purposes. That is, the values ​​that can be used as TBS may include those determined in Tables 8, 9, 10, 11, 12, or 13 above, and the values ​​that can be used as TBS can be used as a reference for the TBS candidate set.

[0563] Additionally, if the provisional TBS value for each layer calculated in step 1 is 2000, 1992 (which is the largest value among those less than 2000), it is selected as the final TBS for each layer. This can be for the purpose of the base station ensuring that the actual coding rate is less than or equal to the target coding rate.

[0564] As another example, step 2 can be omitted.

[0565] In another example, step 2 could be a step that ensures the temporary TBS value for each layer obtained in step 1 is a multiple of a specific integer. For example, the final TBS value could be determined as N×ceil(temporary TBS per layer / N) or N×floor(temporary TBS per layer / N) such that the temporary TBS value for each layer is a multiple of N. In the above, ceil(X) and floor(X) can represent the smallest integer greater than X and the largest integer less than X, respectively. In the above, N can be fixed as an integer such as 8. N can be determined by considering the case where data sent from higher layers such as MAC or RRC is sent in multiples of N.

[0566] In step 3, the final TBS can be obtained by multiplying the final TBS of each layer selected in step 2 by the number of layers.

[0567] As mentioned above, the TBS candidate set can vary in terms of elements and maximum values, depending on the system frequency band, subcarrier spacing, and the number of OFDM symbols per time slot. Furthermore, the TBS candidate set can be pre-agreed upon by the base station and the terminal, or it can be configured as higher-layer signaling for data transmission.

[0568] In the above description, the final TBS is obtained by multiplying the number of TBS calculated for each layer by the number of layers. However, after considering the number of layers in step A when calculating the TBS, such processing can be adopted to approximate the TBS as a value that can be used as the TBS in step B.

[0569] Step A can be calculated as follows:

[0570] - Temporary TBS value = MCS order × coding rate × number of REs available for data transmission allocation × number of layers used for transmission

[0571] Optionally,

[0572] - Temporary TBS value per layer = Value indicated in the MCS table × Number of allocated REs available for data transmission × Number of layers used for transmission

[0573] In other words, the base station can calculate the temporary TBS by taking into account the number of layers in step 1.

[0574] Step B can be similar to step 2, as a process of obtaining the final TBS by considering the TBS candidate set through the TBS value obtained from step A.

[0575] Example 5

[0576] Example 5 provides a method for performing channel coding by segmenting uplink control information into two or more blocks and transmitting channel coding. In this example, the uplink control information (UCI) may include channel measurement information, HARQ-ACK / NACK information, scheduling request bits, etc.

[0577] When there are N bits of UCI, if the UCI is greater than N_max - L, the UCI can be segmented into two or more blocks. In the above, N_max is the unit for performing channel coding such as polar codes, and can be considered as the maximum length of a channel-coded block. That is, N_max can be the maximum value of the information bits that can be included in a code block of a polar code. In the above, L can be the length of the CRC check bits, which are used to check the correctness of information when performing channel code decoding using polar codes, etc. For example, L can be a value of 16, 19, etc. If the number of code blocks used for channel coding of the UCI is C, then C can be obtained as follows:

[0578]

[0579] This operation It is a function corresponding to the smallest integer greater than or equal to the real number x in the rounding operation of x. C+ of the C code blocks all include... The UCI is 1 bit, and all C- code blocks include 1 bit. The UCI of the 1 / 2 bit. In the above text, C+ can be used as... Obtained. Furthermore, C- can be obtained as C-C+.

[0580] For example, assuming the terminal needs to send 1024 bits of UCI, the maximum code block length occupied by the polar code is 512, and the CRC length is 16 bits, C can be determined as follows: In addition, C+ is And C- is 3-1=2. That is, a total of 1024 UCI segments are divided into 3 code blocks, one of which can include the bits in the UCI, and the remaining 2 code blocks can be segmented into 341 bits including each UCI.

[0581] Figure 9 This is a block diagram illustrating the structure of a terminal according to an embodiment.

[0582] Reference Figure 9 According to embodiments of this disclosure, a terminal may include a receiver 900, a transmitter 904, and a processor 902. The receiver 900 and transmitter 904 are collectively referred to as a transceiver. The transceiver can transmit signals to / receive signals from a base station. The signals may include downlink control information and data. For this purpose, the transceiver may include: an RF transmitter that up-converts and amplifies the frequency of the transmitted signal; and an RF receiver that performs low-noise amplification and down-conversion on the frequency of the received signal, etc. Furthermore, the transceiver can receive signals via a radio channel, output the received signals to the processor 902, and transmit signals output from the processor 902 via the radio channel.

[0583] The processor 902 can control serial processing to operate the terminal according to the embodiments of this disclosure as described above.

[0584] Additionally, the processor 902 may be referred to as a controller. In this disclosure, a controller may be defined as a circuit, an application-specific integrated circuit, or at least one processor.

[0585] According to embodiments of this disclosure, the controller can control the overall operation of the terminal. For example, the controller can control the signal flow between each block to perform operations according to the flowchart described above.

[0586] Figure 10 This is a block diagram illustrating the structure of a base station according to an embodiment.

[0587] Reference Figure 10 The base station may include at least one of a receiver 1001, a transmitter 1005, and a processor 1003. In embodiments of this disclosure, the receiver 1001 and the transmitter 1005 are collectively referred to as a transceiver. The transceiver can transmit signals to / receive signals from the terminal. The signals may include downlink control information and data. For this purpose, the transceiver may include: an RF transmitter that up-converts and amplifies the frequency of the transmitted signal; an RF receiver that amplifies the received signal with low noise and down-converts the frequency, etc. Furthermore, the transceiver can receive signals on a radio channel and output the received signals to the processor 1003, and transmit signals output from the processor 1003 on a radio channel.

[0588] The processor 1003 can control serial processing, enabling the base station to be operated according to the embodiments of the present disclosure as described above.

[0589] The processor 1003 may be referred to as a controller. In this disclosure, a controller may be defined as a circuit, an application-specific integrated circuit, or at least one processor.

[0590] According to embodiments of this disclosure, the controller can control the overall operation of the base station. For example, the controller can control the signal flow between each block to perform operations according to the flowchart described above.

[0591] The embodiments and accompanying drawings provided in this disclosure are merely examples to aid in understanding the disclosure and are not intended to limit its scope. That is, it will be apparent to those skilled in the art to which this disclosure pertains that other examples can be made based on this disclosure without departing from its scope. Furthermore, each embodiment can be combined and operated as needed. For example, some of the first to fifth embodiments of this disclosure can be combined to operate a base station and a terminal. Additionally, although the above embodiments are presented based on NR systems, other modifications based on this disclosure can be applied to other systems such as FDD or TDD LTE systems.

[0592] Furthermore, the order described in the accompanying drawings illustrating the methods of this disclosure need not correspond to the order of execution, and post-processing relationships can be changed or performed in parallel.

[0593] Optionally, in the accompanying drawings illustrating the methods of this disclosure, some elements may be omitted, and only some of the elements may be included without prejudice to this disclosure.

[0594] Furthermore, in the methods of this disclosure, some or all of the contents included in each embodiment may be combined and performed without departing from the scope of this disclosure.

[0595] Furthermore, although embodiments of the present disclosure are shown in this disclosure, and drawings and specific terminology are used, they are used in a general sense to aid in understanding the disclosure and not to limit its scope. It will be apparent to those skilled in the art to which this disclosure pertains that various modifications may be made without departing from the scope of the disclosure as defined by the appended claims and their equivalents.< / null>

Claims

1. A method performed by a base station in a wireless communication system, the method comprising: Identify the bit rate and the size of the transport block; Based on the size of the transport block and the code rate, one of the first or second basis matrices is selected as the basis matrix; One or more code blocks corresponding to a transport block are encoded based on a parity check matrix, which is determined based on the selected base matrix and the block size Z. Send the modulation and coding scheme (MCS) index indicating the code rate to the terminal; as well as Send one or more encoded code blocks to the terminal. Specifically, the second base matrix is ​​selected when the code rate is less than or equal to the first threshold of 0.67 and the block size is less than or equal to the second threshold. Specifically, when the code rate is greater than a first threshold and the block size is greater than a second threshold, the first base matrix is ​​selected, and Wherein, when the first base matrix is ​​selected as the base matrix, the block size Z is determined based on the minimum value of Z values ​​in the block size set that satisfy Kb*Z>=B' / C, B' indicates the length of the input bits including the bits corresponding to the transmission block and the cyclic redundancy check (CRC) bits, C indicates the number of code blocks, and Kb indicates 22.

2. The method as described in claim 1, wherein, If the size of the transmitted block exceeds a predetermined value, a 24-bit CRC is used for the transmitted block, and In cases where the size of the transmission block is less than or equal to a predetermined value, a 16-bit CRC is used for the transmission block.

3. The method as described in claim 1, in, The number of code blocks is determined based on the maximum code block size corresponding to the base matrix. The maximum code block size used for the first base matrix is ​​8448, and The maximum code block size used for the second base matrix is ​​3840.

4. A method performed by a terminal in a wireless communication system, the method comprising: Receive the modulation and coding scheme (MCS) index indicating the code rate from the base station; Receive data, including transport blocks, from the base station; Identify the bit rate and the size of the transport block; Based on the size of the transport block and the code rate, one of the first or second basis matrices is selected as the basis matrix; as well as The received data is decoded based on a parity check matrix, which is determined by the chosen basis matrix and the block size Z. Specifically, the second base matrix is ​​selected when the code rate is less than or equal to the first threshold of 0.67 and the block size is less than or equal to the second threshold. Specifically, when the code rate is greater than a first threshold and the block size is greater than a second threshold, the first base matrix is ​​selected, and Wherein, when the first base matrix is ​​selected as the base matrix, the block size Z is determined based on the minimum value of Z values ​​in the block size set that satisfy Kb*Z>=B' / C, B' indicates the length of the input bits including the bits corresponding to the transmission block and the cyclic redundancy check (CRC) bits, C indicates the number of code blocks, and Kb indicates 22.

5. The method of claim 4, wherein, If the size of the transmitted block exceeds a predetermined value, a 24-bit CRC is used for the transmitted block, and In cases where the size of the transmission block is less than or equal to a predetermined value, a 16-bit CRC is used for the transmission block.

6. The method as described in claim 4, in, The number of code blocks is determined based on the maximum code block size corresponding to the base matrix. The maximum code block size used for the first base matrix is ​​8448, and The maximum code block size used for the second base matrix is ​​3840.

7. A base station in a wireless communication system, the base station comprising: transceiver; as well as The controller, coupled to the transceiver, is configured as follows: Identify the bit rate and the size of the transport block; Based on the size of the transport block and the code rate, one of the first or second basis matrices is selected as the basis matrix; One or more code blocks corresponding to a transport block are encoded based on a parity check matrix, which is determined based on the selected base matrix and the block size Z. Send the modulation and coding scheme (MCS) index indicating the code rate to the terminal; as well as Send one or more encoded code blocks to the terminal. Specifically, the second base matrix is ​​selected when the code rate is less than or equal to the first threshold of 0.67 and the block size is less than or equal to the second threshold. Specifically, when the code rate is greater than a first threshold and the block size is greater than a second threshold, the first base matrix is ​​selected, and Wherein, when the first base matrix is ​​selected as the base matrix, the block size Z is determined based on the minimum value of Z values ​​in the block size set that satisfy Kb*Z>=B' / C, B' indicates the length of the input bits including the bits corresponding to the transmission block and the cyclic redundancy check (CRC) bits, C indicates the number of code blocks, and Kb indicates 22.

8. The base station as described in claim 7, wherein, If the size of the transmitted block exceeds a predetermined value, a 24-bit CRC is used for the transmitted block, and In cases where the size of the transmission block is less than or equal to a predetermined value, a 16-bit CRC is used for the transmission block.

9. The base station as described in claim 7, in, The number of code blocks is determined based on the maximum code block size corresponding to the base matrix. The maximum code block size used for the first base matrix is ​​8448, and The maximum code block size used for the second base matrix is ​​3840.

10. A terminal in a wireless communication system, the terminal comprising: transceiver; as well as The controller, coupled to the transceiver, is configured as follows: Receive the modulation and coding scheme (MCS) index indicating the code rate from the base station; Receive data, including transport blocks, from the base station; Identify the bit rate and the size of the transport block; Based on the size of the transport block and the code rate, one of the first or second basis matrices is selected as the basis matrix; as well as The received data is decoded based on a parity check matrix, which is determined by the chosen basis matrix and the block size Z. Specifically, the second base matrix is ​​selected when the code rate is less than or equal to the first threshold of 0.67 and the block size is less than or equal to the second threshold. Specifically, when the code rate is greater than a first threshold and the block size is greater than a second threshold, the first base matrix is ​​selected, and Wherein, when the first base matrix is ​​selected as the base matrix, the block size Z is determined based on the minimum value of Z values ​​in the block size set that satisfy Kb*Z>=B' / C, B' indicates the length of the input bits including the bits corresponding to the transmission block and the cyclic redundancy check (CRC) bits, C indicates the number of code blocks, and Kb indicates 22.

11. The terminal as claimed in claim 10, wherein, If the size of the transmitted block exceeds a predetermined value, a 24-bit CRC is used for the transmitted block, and In cases where the size of the transmission block is less than or equal to a predetermined value, a 16-bit CRC is used for the transmission block.

12. The terminal as described in claim 10, in, The number of code blocks is determined based on the maximum code block size corresponding to the base matrix. The maximum code block size used for the first base matrix is ​​8448, and The maximum code block size used for the second base matrix is ​​3840.