Method, apparatus, and system for hybrid automatic repeat request
Patent Information
- Application Number
- CN202480090155.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-04-02
- Filing Date
- 2024-07-29
- Publication Date
- 2026-10-30
Smart Images

Figure CN123023274A_ABST
Abstract
Description
Cross-reference to related applications
[0001] This application claims priority to U.S. Provisional Patent Application No. 63 / 573,043, filed April 2, 2024, entitled “Method, Apparatus, and System for IR-HARQ for Multiple CodeBlocks”.
[0002] The disclosure of the above application is incorporated herein by reference in its entirety. Technical Field
[0003] The embodiments of this application relate to the field of communications, and more specifically, to a communication method and a communication device. Background Technology
[0004] Hybrid Automatic Repeat Request (HARQ) combines forward error correction (FEC) and automatic repeat request (ARQ) to provide reliable wireless transmission. Future communication systems need to support various scenarios, such as immersive communication, massive MIMO, and ultra-reliable low-latency communication. In these scenarios, key performance indicators (KPIs) related to channel coding include coding gain, reliability, throughput, latency, and their trade-offs. Therefore, to achieve all these KPIs, it is necessary to enhance HARQ in future communication systems to improve coding gain and spectral efficiency.
[0005] Therefore, improving the coding gain and spectral efficiency of HARQ has become an urgent problem to be solved. Summary of the Invention
[0006] Embodiments of this application provide a communication method and a communication device. These technical solutions can combine multiple code sequences corresponding to different code blocks (CBs) to generate cross-CB code sequences for retransmission, thereby improving the coding gain and spectral efficiency of HARQ.
[0007] According to a first aspect, embodiments of this application provide a communication method, which can be executed by an encoding device. The method includes: receiving a first message, wherein the first message indicates that decoding of a code set was unsuccessful, the code set comprising N code blocks, and N being a positive integer greater than 1; obtaining M first code sequences, wherein the M first code sequences correspond one-to-one with M code blocks among the N code blocks, each of the M first code sequences being obtained based on a corresponding code block, and M being a positive integer greater than 1 and less than or equal to N; obtaining a second code sequence based on the M first code sequences, wherein each first code sequence can be obtained based on the second code sequence and the other M-1 first code sequences among the M first code sequences, and each first code sequence and the second code sequence having the same number of bits; and transmitting the second code sequence.
[0008] According to a second aspect, embodiments of this application provide a communication method, which can be executed by a decoding device. The method includes: transmitting a first message, wherein the first message indicates that decoding of a code set has failed, the code set comprising N code blocks, and N being a positive integer greater than 1; receiving a second code sequence; and obtaining M first code sequences based on the second code sequence, wherein the M first code sequences correspond one-to-one with M code blocks out of the N code blocks, each first code sequence can be obtained based on the second code sequence and the other M-1 first code sequences out of the M first code sequences, each first code sequence and the second code sequence having the same number of bits, and M being a positive integer greater than 1 and less than or equal to N.
[0009] In this application, the code set may include bits of initial transmission, and these initially transmitted bits may be divided into multiple code blocks (CBs). Optionally, in some possible implementations, bits in the first code sequence may be selected from corresponding CBs. Optionally, in some other possible implementations, at least one bit in the first code sequence may be generated by encoding bits in the corresponding CB.
[0010] According to the above technical solution, multiple first code sequences corresponding to different CBs are combined to generate a second code sequence of equal length to the first code sequence. Using the second code sequence instead of multiple first code sequences for retransmission improves the spectral efficiency of HARQ. From another perspective, given the same channel resources, the length of the second code sequence can be longer than the traditional code sequence corresponding to a single CB, which can provide greater coding gain. Therefore, the retransmission efficiency of HARQ can be improved.
[0011] Referring to the first aspect, in some embodiments, each first code sequence includes k bits, the second code sequence includes k bits, and the i-th bit of the second code sequence is obtained by reversibly calculating based on the i-th bits of M first code sequences, where k is a positive integer and i is a positive integer less than or equal to k.
[0012] Referring to the second aspect, in some embodiments, each first code sequence includes k bits, the second code sequence includes k bits, k is a positive integer, and obtaining M first code sequences based on the second code sequence includes: obtaining the j-th first code sequence among the M first code sequences based on the second code sequence and the other M-1 first code sequences, wherein the i-th bit of the j-th first code sequence is obtained by reversibly calculating based on the i-th bit of the second code sequence and the i-th bit of the other M-1 first code sequences, i is a positive integer less than or equal to k, and j is a positive integer less than or equal to M.
[0013] Referring to the first or second aspect, in some embodiments, the value of the i-th bit of the second code sequence is equal to the result of an exclusive-OR (XOR) operation on the values of the i-th bits of the M first code sequences.
[0014] Alternatively, in some possible implementations, in addition to XOR, other reversible computations can be used, such as not-exclusive-OR (XNOR) or other table-based mappings.
[0015] According to the above technical solution, the second code sequence is obtained through bitwise XOR or other reversible calculations. Therefore, the complexity of encoding and decoding can be reduced.
[0016] Referring to the first or second aspect, in some embodiments, the M first code sequences include a redundancy version (RV) of the corresponding code block.
[0017] According to the above technical solution, the first code sequence includes incrementally generated bits, making the first code sequence longer than the initially transmitted bits. Therefore, the coding gain can be further improved.
[0018] Referring to the first or second aspect, in some embodiments, the M code blocks have the same spacing in a sequence comprising N code blocks.
[0019] According to the above technical solution, the CBs used to obtain the second code sequence are paired or bundled at predefined intervals, thus supporting both adjacent CB groups and interleaved CB groups simultaneously. Therefore, the simplicity and versatility of the encoding can be improved.
[0020] Referring to the first or second aspect, in some embodiments, the value of M is indicated by a radio resource control (RRC) message and / or downlink control information (DCI).
[0021] According to the above technical solution, the number of CBs used to obtain the second code sequence can be pre-configured in the RRC and / or dynamically indicated in the DCI.
[0022] Referring to the first aspect, in some embodiments, before transmitting the second code sequence, the method further includes: transmitting a second message, wherein the second message includes a first field and the value of the first field indicates a mode of the code set being retransmitted; transmitting the second code sequence includes: transmitting the second code sequence if the value of the first field indicates that the mode is a first mode.
[0023] Referring to the second aspect, in some embodiments, before receiving the second code sequence, the method further includes: receiving a second message, wherein the second message includes a first field and the value of the first field indicates the mode of the code set being retransmitted; receiving the second code sequence includes: receiving the second code sequence if the value of the first field indicates that the mode is a first mode.
[0024] It should be noted that when the value of the first field does not indicate that the mode is the first mode, the second code sequence will not be transmitted or received, and optionally, the code set can be retransmitted through other schemes.
[0025] Based on the above technical solution, the HARQ retransmission mode provided in this application can be adaptively selected. In other words, the HARQ retransmission mode provided in this application can be selected according to a specific scenario.
[0026] Referring to the first aspect, in some embodiments, the method further includes: transmitting M first code sequences when the value of the first field indicates that the mode is a second mode.
[0027] Referring to the second aspect, in some embodiments, the method further includes: receiving M first code sequences when the value of the first field indicates that the mode is a second mode.
[0028] It should be noted that when the value of the first field does not indicate that the mode is the second mode, M first code sequences will not be transmitted or received.
[0029] Based on the above technical solution, in scenarios where the HARQ retransmission mode provided in this application is not suitable, other retransmission modes can be selected.
[0030] Referring to the first or second aspect, in some embodiments, the value of the first field is associated with at least one or more of the following: the number of undecoded code blocks in the code set; the channel difference for retransmitting the code set; whether a channel quality indicator (CQI) is available; and whether there is acknowledgment or negative acknowledgment (ACK / NACK) feedback for the retransmitted code set.
[0031] Based on the above technical solution, the selection of adaptive HARQ retransmission mode can be based on a variety of factors.
[0032] Referring to the first or second aspect, in some embodiments, the second message is an RRC message and / or a DCI message.
[0033] According to the above technical solution, the HARQ retransmission mode can be pre-configured in RRC and / or dynamically indicated in DCI.
[0034] Referring to the first aspect, in some embodiments, transmitting the second code sequence includes transmitting the second code sequence when the number of retransmitted code sets is greater than or equal to a first threshold.
[0035] Referring to the second aspect, in some embodiments, receiving the second code sequence includes: receiving the second code sequence when the number of retransmitted code sets is greater than or equal to a first threshold.
[0036] According to the above technical solution, after a sufficient number of retransmissions, the retransmission mode of the code set can be switched to the HARQ retransmission mode provided in this application. Therefore, the retransmission efficiency of HARQ can be further improved.
[0037] Referring to the first aspect, in some embodiments, before transmitting the second code sequence, the method further includes: receiving a third message, wherein the third message is used to request the retransmission of the code set by transmitting the second code sequence.
[0038] Referring to the second aspect, in some embodiments, before receiving the second code sequence, the method further includes: transmitting a third message, wherein the third message is used to request the retransmission of the code set by transmitting the second code sequence.
[0039] According to the above technical solution, when enough code sets (CBs) have been decoded, the decoding device can request the encoding device to switch the retransmission mode of the code set to the HARQ retransmission mode provided in this application. Therefore, the retransmission efficiency of HARQ can be further improved.
[0040] According to a third aspect, an encoding apparatus is provided. The encoding apparatus includes functions or units for performing a method according to the first aspect or any possible embodiment of the first aspect.
[0041] For example, the decoding device can be a network device or an integrated circuit within a network device. Similarly, the decoding device can be a terminal device or an integrated circuit within a terminal device.
[0042] According to a fourth aspect, a decoding apparatus is provided. The decoding apparatus includes functions or units for performing a method according to a second aspect or any of the possible embodiments of the second aspect.
[0043] For example, the encoding device can be a terminal device or an integrated circuit in a terminal device. Similarly, the encoding device can be a network device or an integrated circuit in a network device.
[0044] According to a fifth aspect, a system is provided. The system includes: an encoding device according to a third aspect and a decoding device according to a fourth aspect.
[0045] According to a sixth aspect, a communication device is provided. The communication device includes at least one processor, and the at least one processor is coupled to at least one memory. The at least one memory is used to store a computer program or one or more instructions. The at least one processor is configured to: invoke the computer program or one or more instructions from the at least one memory and execute the computer program or one or more instructions, causing the communication device to perform a method of the first aspect or any of its possible implementations, or the communication device to perform a method of the second aspect or any of its possible implementations.
[0046] Referring to aspect six, in some implementations of aspect six, the communication device may be a decoding device. For example, the communication device may be a network device or a component (e.g., a chip or integrated circuit) installed in a network device. As another example, the communication device may be a terminal device or a component (e.g., a chip or integrated circuit) installed in a terminal device.
[0047] Referring to aspect six, in some implementations of aspect six, the communication device may be an encoding device. For example, the communication device may be a terminal device or a component (e.g., a chip or integrated circuit) installed in a terminal device. As another example, the communication device may be a network device or a component (e.g., a chip or integrated circuit) installed in a network device.
[0048] According to a seventh aspect, a communication apparatus is provided. The communication apparatus includes a processor and a communication interface. The processor is connected to the communication interface. The processor is configured to execute one or more instructions, and the communication interface is configured to communicate with other network elements under the control of the processor. The processor is capable of performing a method according to the first aspect or any of the possible embodiments of the first aspect, or any of the possible embodiments of the second aspect.
[0049] According to an eighth aspect, a computer storage medium is provided. The computer storage medium stores program code, and the program code is used to execute one or more instructions for performing a method according to the first aspect or any possible embodiment of the first aspect, or any possible embodiment of the second aspect.
[0050] According to a ninth aspect, this application provides a computer program product comprising one or more instructions, wherein, when the computer program product is run on a computer, the computer performs a method according to the first aspect or any of the possible embodiments of the first aspect, or any of the possible embodiments of the second aspect. Attached Figure Description
[0051] Figure 1 This is a schematic diagram illustrating the application scenario of this application; Figure 2 An exemplary communication system 100 is shown; Figure 3 Another example of an ED and a base station is shown; Figure 4 This shows a unit or module in the device or apparatus; Figure 5 An example of a polar code is shown; Figure 6 An example of interlacing is shown; Figure 7 An example of a circular buffer is shown; Figure 8 An example of IF-HARQ is shown; Figures 9 to 11 An example of IR-HARQ is shown; Figure 12 This is a flowchart of a communication method 1200 according to an embodiment of this application; Figure 13 An example across CB IR-HARQ is shown; Figure 14 An example of the process across the encoding side in CB IR-HARQ is shown; Figure 15An example of the process on the decoding side across CB IR-HARQ is shown; Figure 16 An example of CB being divided into subgroups is shown; Figure 17 This shows another example of CB being divided into subgroups; Figure 18 An example of two CB pairs used for cross-CB IR-HARQ is shown; Figure 19 An example of three CB bundles for use across CB IR-HARQ is shown; Figure 20 An example of adaptive HARQ mode selection and indication is shown; Figure 21 Another example of adaptive HARQ mode selection and indication is shown; Figure 22 Another example of progressive HARQ mode switching and indication is shown; Figures 23 to 27 This is a schematic block diagram of a possible device according to an embodiment of this application. Detailed Implementation
[0052] The technical solution of this application will now be described with reference to the accompanying drawings.
[0053] The technical solutions in the embodiments of this application can be applied to various communication systems, such as fifth-generation (5G) wireless communication systems, new radio (NR) wireless communication systems, future communication systems, integrated access and backhaul (IAB) systems, mesh networks, sidelink systems, or other evolved communication systems. The technical solutions in the embodiments of this application can also be applied to communication systems that integrate two or more of the above systems.
[0054] To facilitate understanding of the embodiments of this application, let's first take... Figures 1 to 3 The communication system shown is used as an example to describe in detail the communication system applicable to the embodiments of this application.
[0055] Figure 1 This is a schematic diagram illustrating the application scenario of this application. (Reference) Figure 1As a non-limiting illustrative example, a simplified schematic diagram of a communication system is provided. Communication system 100 (which may be a wireless system) includes a radio access network (RAN) 120. The RAN 120 may be a future-oriented RAN or a conventional RAN (e.g., 5G, fourth-generation (4G), third-generation (3G), or second-generation (2G)). One or more electronic devices (EDs) 110a, 110b, 110c, 110d, 110e, 110f, 110g, 110h, 110i, 110j (collectively referred to as 110) may interconnect with each other or be connected to one or more network nodes (170a, 170b, collectively referred to as 170) within the RAN 120. Core network 130 may be part of the communication system and may depend on or be independent of the radio access technology used in communication system 100. The communication system 100 also includes a public switched telephone network (PSTN) 140, the Internet 150, and other networks 160.
[0056] Figure 2An example of a communication system 100 is shown. Typically, the communication system 100 enables multiple wireless or wired components to transmit data and other content. The communication system 100 can provide content such as voice, data, video, and / or text via broadcast, multicast, ensemble, and unicast. The communication system 100 can also provide a wide range of communication services and applications, such as earth monitoring, remote sensing, passive sensing and positioning, navigation and tracking, autonomous delivery, and mobility. These communication services and / or applications can be mobile broadband (MBB) services, ultra-reliable low-latency communication (URLLC) services, or machine-type communication (MTC) services. The communication system 100 can operate by sharing resources such as carrier spectrum bandwidth among its constituent components. The communication system 100 can include terrestrial communication systems and / or non-terrestrial communication systems. The communication system 100 can provide high availability and robustness through the joint operation of terrestrial and non-terrestrial communication systems. For example, integrating a non-terrestrial communication system (or components thereof) into a terrestrial communication system can form a heterogeneous network that can be considered as comprising multiple layers. Compared to traditional communication networks, heterogeneous networks can achieve better overall performance through efficient multi-link joint operation between terrestrial and non-terrestrial networks, more flexible function sharing, and faster physical layer link switching.
[0057] Terrestrial communication systems and non-terrestrial communication systems can be considered subsystems of a communication system. Figure 2 In the example shown, communication system 100 includes ED 110a, 110b, 110c, and 110d (collectively referred to as ED 110), RAN 120a and 120b, non-terrestrial communication network 120c, core network 130, public switched telephone network (PSTN) 140, Internet 150, and other networks 160. RAN 120a and 120b include corresponding RAN nodes, such as base stations (BS) 170a and 170b, which can be collectively referred to as terrestrial transmit and receive points (T-TRP) 170a and 170b (collectively referred to as T-TRP 170). Non-terrestrial communication network 120c includes RAN nodes, such as access nodes 172, which can be collectively referred to as non-terrestrial transmit and receive points (NT-TRP) 172.
[0058] As can be inferred from the similarity of the reference numerals in the accompanying drawings, the non-terrestrial communication network 120c can be considered a radio access network that shares operational similarities with RANs 120a and 120b. In another implementation, the non-terrestrial communication network 120c may include at least one non-terrestrial network (NTN) device and at least one corresponding terrestrial network device, wherein the at least one NTN device operates as a transport layer device, and the at least one corresponding terrestrial network device operates as a RAN node, which communicates with the ED through the NTN device. Furthermore, an NTN gateway (i.e., referred to as a terrestrial network device) may exist on the ground, which also communicates with the NTN device as a transport layer device, and the RAN node communicates with the ED through both the NTN device and the NTN gateway. In some implementations, the NTN gateway and the RAN node may reside in the same device.
[0059] Alternatively or additionally, any ED 110 can be used to connect, access, or communicate with any T-TRP 170a, 170b, and NT-TRP 172, the Internet 150, the core network 130, the PSTN 140, other networks 160, or any combination thereof. In some examples, ED 110a can communicate with T-TRP 170a via uplink (UL) and / or downlink (DL) transmissions through terrestrial air interface 190a. In some examples, ED 110a, 110b, 110c, and 110d can also communicate directly with each other via one or more sidelink (SL) air interfaces 190b. In some examples, ED 110d can communicate with NT-TRP 172 via non-terrestrial air interface 190c via uplink and / or downlink transmissions.
[0060] Air interfaces 190a and 190b can use similar communication technologies, such as any suitable wireless access technology. For example, communication system 100 can implement one or more channel access methods in air interfaces 190a and 190b, such as code division multiple access (CDMA), space division multiple access (SDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), and single-carrier FDMA (SC-FDMA) (also known as discrete fourier transform spread OFDMA, DFT-s-OFDMA). Air interfaces 190a and 190b can utilize other higher-dimensional signal spaces, which may involve combinations of orthogonal and / or non-orthogonal dimensions.
[0061] The non-terrestrial air interface 190c enables communication between the ED 110d and one or more NT-TRP 172s via a wireless link or simply through a link. For some examples, the link is a dedicated connection for unicast transmission, a connection for broadcast transmission, or a connection for multicast transmission between a group of ED 110s and one or more NT-TRP 172s.
[0062] RANs 120a and 120b communicate with the core network 130 to provide various services, such as voice, data, and other services, to EDs 110a, 110b, and 110c. RANs 120a and 120b, and / or the core network 130, can communicate directly or indirectly with one or more other RANs (not shown), which may or may not be directly served by the core network 130, and may or may not use the same radio access technology as RANs 120a and / or RAN 120b. The core network 130 can also serve as a gateway access between (i) RANs 120a and 120b, and / or EDs 110a, 110b, and 110c and (ii) other networks (e.g., PSTN 140, Internet 150, and other networks 160). Furthermore, some or all of EDs 110a, 110b, and 110c may include the ability to communicate with different wireless networks via different radio links using different radio technologies and / or protocols. Instead of wireless communication (or other than wireless communication), ED 110a, 110b, and 110c can also communicate with service providers or exchanges (not shown) via wired communication channels and with the Internet 150. PSTN 140 may include a circuit-switched telephone network for providing plain old telephone service (POTS). The Internet 150 may include a network of computers and / or subnets (internal networks) and incorporate protocols such as Internet Protocol (IP), Transmission Control Protocol (TCP), and User Datagram Protocol (UDP). ED 110a, 110b, and 110c may be multimode devices capable of operating under various wireless access technologies and incorporate multiple transceivers required to support such wireless access technologies.
[0063] Furthermore, the communication system 100 may also include a sensing agent (not shown) to manage sensing data from ED 110 and / or T-TRP 170 and / or NT-TRP 172. In one implementation, the sensing agent is located in T-TRP 170 and / or NT-TRP 172. In another implementation, the sensing agent is a separate node with an interface for communicating with core network 130 and / or RAN 120 (e.g., T-TRP 170 and / or NT-TRP 172).
[0064] Figure 3Another example of the ED 110 and base stations 170a, 170b, and / or 170c is shown. The ED 110 is used to connect people, objects, machines, etc. The ED 110 can be widely used in various scenarios, including, for example, cellular communication, device-to-device (D2D), vehicle-to-everything (V2X), peer-to-peer (P2P), machine-to-machine (M2M), MTC, Internet of Things (IoT), virtual reality (VR), augmented reality (AR), mixed reality (MR), virtual reality, digital twins, industrial control, autonomous driving, telemedicine, smart grids, smart furniture, smart offices, smart wearable devices, smart transportation, smart cities, drones, robots, remote sensing, passive sensing, positioning, navigation and tracking, autonomous delivery, and mobility.
[0065] Each ED 110 represents any suitable end-user equipment used for wireless operation and may include (or be referred to as, but not limited to, the following devices): user equipment / device (UE), wireless transmit / receive unit (WTRU), mobile station, fixed or mobile subscriber unit, cellular phone, station (STA), MTC equipment, personal digital assistant (PDA), smartphone, laptop, computer, tablet, wireless sensor, consumer electronics, smartbook, vehicle, automobile, truck, bus, train, or IoT device, wearable device (e.g., watch, glasses, head-mounted device, etc.), industrial equipment, or devices that include or incorporate the above-mentioned devices (e.g., communication module, modem, or integrated circuit). Next-generation ED 110 may be referred to using other terms. Base stations 170a and 170b are terrestrial equipment and will be referred to as T-TRP 170 below. Also in Figure 3 As shown, the NT-TRP non-terrestrial (NT) device will be referred to as NT-TRP 172 below. Each ED 110 connected to the T-TRP 170 and / or NT-TRP 172 can be dynamically or semi-statically turned on (i.e., established, activated, or enabled), turned off (i.e., released, deactivated, or disabled), and / or configured in response to one or more of connectivity availability and connectivity necessity.
[0066] like Figure 3 As shown, ED 110 includes at least one processor 210. Only one processor 210 is shown in the figure to avoid congestion. ED 110 may also include a transmitter 201 and a receiver 203 coupled to one or more antennas 204. Only one antenna 204 is shown in the figure to avoid congestion. Alternatively, one, some, or all of the antennas 204 may be panels. The transmitter 201 and receiver 203 may, for example, be integrated as a transceiver. The transceiver is used to modulate data or other content for transmission by at least one antenna 204 or a network interface controller (NIC). The transceiver is also used to demodulate data or other content received through at least one antenna 204. Each transceiver includes any suitable structure for generating signals for wireless or wired transmission and / or processing signals received wirelessly or wiredly. Each antenna 204 includes any suitable structure for transmitting and / or receiving wireless or wired signals. The transceiver may also be referred to as an interface for input and output operations.
[0067] like Figure 3 As shown, ED 110 includes at least one memory 208. Only one memory 208 is shown in the figure to avoid congestion. Memory 208 stores instructions. Memory 208 may also store data used, generated, or collected by ED 110. For example, memory 208 may store software instructions or modules for implementing some or all of the functions and / or embodiments described herein and executed by one or more processing units (e.g., one or more processors 210). Each memory 208 includes any suitable one or more volatile and / or non-volatile storage and retrieval devices. Any suitable type of memory can be used, such as random access memory (RAM), read-only memory (ROM), hard disk, optical disk, subscriber identity module (SIM) card, memory stick, secure digital (SD) memory card, and on-processor cache, etc.
[0068] ED 110 may also include one or more input / output devices (not shown) or interfaces (e.g., connected to...). Figure 1(Wired interface of Internet 150 in the network). Input / output devices or interfaces support interaction with users or other devices in the network. Each input / output device or interface includes any suitable structure for providing or receiving information from the user, and / or for communication on the network interface. Suitable structures include, for example, speakers, microphones, keypads, keyboards, displays, touchscreens, etc.
[0069] like Figure 3 As shown, ED 110 includes at least one processor 210. Only one processor 210 is shown in the figure to avoid congestion. Processor 210 performs (or controls ED 110 to perform) operations, including: operations related to preparing for uplink transmissions to NT-TRP 172 and / or T-TRP 170; operations related to processing downlink transmissions received from NT-TRP 172 and / or T-TRP 170; and operations related to processing sidelink transmissions to and from another ED 110. Processing operations related to preparing for uplink transmissions may include operations such as encoding, modulation, transmit beamforming, and generating symbols for transmission. Processing operations related to processing downlink transmissions may include operations such as receive beamforming, demodulation, and decoding of received symbols. Processing operations related to processing sidelink transmissions may include operations such as transmit / receive beamforming, modulation / demodulation, and encoding / decoding symbols. According to embodiments, downlink transmissions may be received by receiver 203 using receive beamforming, and processor 210 may extract signaling from the downlink transmissions (e.g., by detecting and / or decoding signaling). Examples of signaling may be reference signals transmitted by NT-TRP 172 and / or T-TRP 170. In some embodiments, processor 210 implements transmit beamforming and / or receive beamforming based on beam direction indications (e.g., beam angle information (BAI)) received from T-TRP 170. In some embodiments, processor 210 may perform operations related to network access (e.g., initial access) and / or downlink synchronization, such as operations related to detecting synchronization sequences, decoding, and obtaining system information. In some embodiments, processor 210 may perform channel estimation, for example, using reference signals received from NT-TRP 172 and / or T-TRP 170.
[0070] Although not shown, processor 210 may form part of transmitter 201 and / or receiver 203. Although not shown, memory 208 may form part of processor 210.
[0071] The processing components of processor 210, transmitter 201, and receiver 203 may each be implemented by the same or different one or more processors for executing instructions stored in memory (e.g., memory 208). Alternatively, some or all of the processing components of processor 210, transmitter 201, and receiver 203 may each be implemented using dedicated circuitry such as a programmable field-programmable gate array (FPGA), application-specific integrated circuit (ASIC), or hardware accelerator (e.g., a graphics processing unit (GPU) or artificial intelligence (AI) accelerator).
[0072] In some implementations, ED 110 may be a device (also called a component), such as a communication module, modem, integrated circuit, or chipset, which includes at least one processor 210 and an interface or at least one pin. In this scenario, the transmitter 201 and receiver 203 may be replaced by an interface or at least one pin, wherein the interface or at least one pin is used to connect the device (e.g., an integrated circuit) and other devices (e.g., another circuit, memory, or bus). Therefore, sending information to NT-TRP172 and / or T-TRP170 and / or another ED 110 can be referred to as sending information to an interface or at least one pin, or as sending information to NT-TRP172 and / or T-TRP170 and / or another ED 110 via an interface or at least one pin, and receiving information from NT-TRP172 and / or T-TRP170 and / or another ED 110 can be referred to as receiving information from an interface or at least one pin, or as receiving information from NT-TRP172 and / or T-TRP170 and / or another ED 110 via an interface or at least one pin. This information may include control signaling and / or data.
[0073] In some implementations, the T-TRP 170 can use other names, such as base station, base transceiver station (BTS), wireless base station, network node, network device, network-side device, transmit / receive node, NodeB, evolved NodeB (eNodeB or eNB), home eNodeB, next-generation NodeB (gNB), transmission point (TP), site controller, access point (AP), wireless router, relay station, ground node, ground network device, ground base station, base band unit (BBU), remote radio unit (RRU), active antenna unit (AAU), remote radio head (RRH), central unit (CU), distributed unit (DU), location node, etc. The T-TRP 170 can be a macro BS, pico BS, relay node, or donor node, or a combination thereof. T-TRP 170 may refer to the aforementioned equipment or to a device within the aforementioned equipment (e.g., a communication module, modem, or integrated circuit).
[0074] In some embodiments, the CU (or CU control plane (CP) and CU user plane (UP)), DU, or RU may use other names. For example, in an open RAN (ORAN) system, the CU may also be called an open CU (O-CU), the DU may also be called an open DU (O-DU), the CU-CP may also be called an open CU-CP (O-CU-CP), the CU-UP may also be called an open CU-UP (O-CU-CP), and the RU may also be called an open RU (O-RU). Any of the CU (or CU-CP, CU-UP), DU, or RU may be implemented by a software module, a hardware module, or a combination of software and hardware modules.
[0075] In some embodiments, the portions of T-TRP 170 may be distributed. For example, some modules of T-TRP 170 may be located remotely from the device housing the antenna 256 of T-TRP 170 and may be coupled to the device housing the antenna 256 via a communication link (not shown) sometimes referred to as a fronthaul (e.g., a common public radio interface, CPRI). Therefore, in some embodiments, the term T-TRP 170 may also refer to network-side modules that perform processing operations such as determining the location of ED 110, resource allocation (scheduling), message generation, and encoding / decoding, and are not necessarily part of the device housing the antenna 256 of T-TRP 170. These modules may also be coupled to other T-TRPs. In some embodiments, T-TRP 170 may actually be multiple T-TRPs operating together, for example, by using the cooperative multicast service ED 110.
[0076] like Figure 3 As shown, the T-TRP 170 includes at least one transmitter 252 and at least one receiver 254 coupled to one or more antennas 256. Only one antenna 256 is shown in the figure to avoid clutter. Alternatively, one, some, or all of the antennas 256 may be panels. The transmitter 252 and receiver 254 may be integrated into a transceiver.
[0077] like Figure 3As shown, T-TRP 170 also includes at least one processor 260. Only one processor 260 is shown in the figure to avoid congestion. The operations performed by processor 260 include those related to: preparing transmissions for downlink transmission to ED 110; processing uplink transmissions received from ED 110; preparing transmissions for backhaul transmission to NT-TRP 172; and processing transmissions received from NT-TRP 172 via backhaul. Processing operations related to preparing transmissions for downlink or backhaul transmission may include operations such as encoding, modulation, precoding (e.g., multiple-input multiple-output (MIMO) precoding), transmit beamforming, and generating symbols for transmission. Processing operations related to processing transmissions received in the uplink or via backhaul may include operations such as receive beamforming, demodulating received symbols, and decoding received symbols. Processor 260 can also perform operations related to network access (e.g., initial access) and / or downlink synchronization, such as generating the contents of a synchronization signal block (SSB) and generating system information. In some embodiments, processor 260 also generates beam direction indications (e.g., BAI), which can be scheduled for transmission by scheduler 253. Processor 260 performs other network-side processing operations described herein, such as determining the location of ED 110, determining the deployment location of NT-TRP 172, etc. In some embodiments, processor 260 can generate signaling, such as one or more parameters for configuring ED 110 and / or one or more parameters for NT-TRP 172. Any signaling generated by processor 260 is transmitted by transmitter 252. It should be noted that “signaling” as used herein can alternatively be referred to as control signaling. Signaling can be transmitted in physical layer control channels such as the physical downlink control channel (PDCCH), in which case the signaling can be referred to as dynamic signaling. Signaling transmitted in the downlink physical layer control channel is called downlink control information (DCI). Signaling transmitted in the uplink physical layer control channel is called uplink control information (UCI). Signaling transmitted in the sidelink physical layer control channel is called sidelink control information (SCI).Signaling can be included in higher-layer (e.g., above the physical layer) packets transmitted in physical layer data channels such as the Physical Downlink Shared Channel (PDSCH). In this case, the signaling can be referred to as higher-layer signaling, static signaling, or semi-static signaling. Higher-layer signaling can also refer to radio resource control (RRC) protocol signaling or media access control-control element (MAC-CE) signaling.
[0078] Scheduler 253 may be coupled to or integrated into processor 260. Scheduler 253 may be included within T-TRP 170 or may operate separately from T-TRP. Scheduler 253 may schedule uplink, downlink, lateral link, and / or backlink transmissions, including issuing scheduling authorizations and / or configuring schedule-free (e.g., "configuration authorization") resources.
[0079] like Figure 3 As shown, the T-TRP 170 also includes at least one memory 258 for storing information and data. Only one memory 258 is shown in the figure to avoid congestion. The memory 258 stores instructions and data used, generated, or collected by the T-TRP 170. For example, the memory 258 may store software instructions or modules that are used to implement some or all of the functions and / or embodiments described herein and are executed by the processor 260.
[0080] Although not shown, processor 260 may form part of transmitter 252 and / or receiver 254. Additionally, although not shown, processor 260 may implement scheduler 253. Although not shown, memory 258 may form part of processor 260.
[0081] The processing components of processor 260, scheduler 253, transmitter 252, and receiver 254 may each be implemented by the same or different one or more processors for executing instructions stored in memory (e.g., memory 258). Alternatively, some or all of the processing components of processor 260, scheduler 253, transmitter 252, and receiver 254 may be implemented using dedicated circuitry such as a programmed FPGA, hardware accelerator (e.g., GPU or AI accelerator), or ASIC.
[0082] When T-TRP 170 is a device (also referred to as a component, such as a communication module, modem, integrated circuit, or chipset) in a device, it includes at least one processor and an interface or at least one pin. In this scenario, transmitter 252 and receiver 254 can be replaced by an interface or at least one pin, wherein the interface or at least one pin is used to connect the device (e.g., integrated circuit) and other devices (e.g., another circuit, memory, or bus). Therefore, sending information to NT-TRP 172 and / or T-TRP 170 and / or ED 110 can be referred to as sending information to an interface or at least one pin, and receiving information from NT-TRP 172 and / or T-TRP 170 and / or ED 110 can be referred to as receiving information from an interface or at least one pin. This information may include control signaling and / or data.
[0083] Although the NT-TRP 172 is shown as an example of a drone only, it can be implemented in any suitable non-terrestrial form, such as satellites and high-altitude platforms including international mobile telecommunications base stations and unmanned aerial vehicles. Additionally, in some implementations, the NT-TRP 172 may use other names, such as non-terrestrial node, non-terrestrial network device, or non-terrestrial base station.
[0084] like Figure 3 As shown, the NT-TRP 172 includes at least one transmitter 272 and at least one receiver 274 coupled to one or more antennas 280. Only one antenna 280 is shown in the figure to avoid clutter. Alternatively, one, some, or all of the antennas may be panels. The transmitter 272 and receiver 274 may be integrated into a transceiver.
[0085] like Figure 3As shown, NT-TRP 172 also includes at least one processor 276. Only one processor 276 is shown in the figure to avoid congestion. The operations performed by processor 276 include operations related to: preparing transmissions for downlink transmission to ED 110; processing uplink transmissions received from ED 110; preparing transmissions for backhaul transmission to T-TRP 170; and processing transmissions received from T-TRP 170 via backhaul. Processing operations related to preparing transmissions for downlink or backhaul transmission may include operations such as encoding, modulation, precoding (e.g., MIMO precoding), transmit beamforming, and generating symbols for transmission. Processing operations related to processing transmissions received in the uplink or via backhaul may include operations such as receive beamforming, demodulating received symbols, and decoding received symbols. In some embodiments, processor 276 performs transmit beamforming and / or receive beamforming based on beam direction information (e.g., BAI) received from T-TRP 170. In some embodiments, processor 276 may generate signaling, for example, for configuring one or more parameters of ED 110. In some embodiments, NT-TRP 172 implements physical layer processing but not higher-layer functions, such as those at the medium access control (MAC) layer or radio link control (RLC) layer. Since this is merely an example, more generally, NT-TRP 172 may implement higher-layer functions in addition to physical layer processing.
[0086] like Figure 3 As shown, the NT-TRP 172 also includes at least one memory 278 for storing information and data. Only one memory 278 is shown in the figure to avoid congestion. For example, the memory 278 may store software instructions or modules for implementing some or all of the functions and / or embodiments described herein and executed by the processor 276.
[0087] Although not shown, processor 276 may form part of transmitter 272 and / or receiver 274. Although not shown, memory 278 may form part of processor 276.
[0088] The processing components of processor 276, transmitter 272, and receiver 274 may each be implemented by the same or different one or more processors for executing instructions stored in memory (e.g., memory 278). Alternatively, some or all of the processing components of processor 276, transmitter 272, and receiver 274 may be implemented using dedicated circuitry such as a programmed FPGA, hardware accelerator (e.g., GPU or AI accelerator), or ASIC. In some embodiments, NT-TRP 172 may actually be multiple NT-TRPs operating together, for example, via cooperative multicast service ED 110.
[0089] When NT-TRP 172 is a device within a device (e.g., a communication module, modem, integrated circuit, or chipset), it includes at least one processor and an interface or at least one pin. In this scenario, transmitter 272 and receiver 257 can be replaced by an interface or at least one pin, wherein the interface or at least one pin is used to connect the device (e.g., an integrated circuit) and other devices (e.g., another circuit, memory, or bus). Therefore, sending information to T-TRP 170 and / or another NT-TRP 172 and / or ED 110 can be referred to as sending information to an interface or at least one pin, and receiving information from T-TRP 170 and / or another NT-TRP 172 and / or ED 110 can be referred to as receiving information from an interface or at least one pin. This information may include control signaling and / or data.
[0090] T-TRP 170, NT-TRP 172 and / or ED 110 may include other components, but for clarity these components are omitted.
[0091] It should be noted that, as used in this article, "transmit / receive point (TRP)" can refer to either T-TRP or NT-TRP. Alternatively, T-TRP can be called terrestrial network TRP ("TN TRP"), and NT-TRP can be called non-terrestrial network TRP ("NTNTRP").
[0092] It should be noted that in this invention, when "information" and "message" are different, they can be carried in a single message or in more than one separate message.
[0093] Figure 4Units or modules in a device or apparatus (e.g., ED 110, T-TRP 170, or NT-TRP 172) are shown. According to... Figure 4 One or more steps of the methods provided in the embodiments herein can be performed by corresponding units or modules. For example, a signal can be sent or output by a transmitting unit or a transmitting module. A signal can be received or input by a receiving unit or a receiving module. A signal can be processed by a processing unit or a processing module. Other steps can be performed by an artificial intelligence (AI) module or a machine learning (ML) module. The corresponding units or modules can be implemented using hardware, one or more components or devices executing software, or a combination thereof. For example, one or more of these units or modules can be circuits such as integrated circuits. Examples of integrated circuits include programmed FPGAs, GPUs, or ASICs. For example, one or more of these units or modules can be logical, such as logical functions executed by circuits, a portion of an integrated circuit, or software instructions executed by a processor. It should be understood that if these modules are implemented using software executed by a processor, etc., these modules can be retrieved by the processor, wholly or partially, individually or collectively, for processing, in single or multiple instances, and these modules themselves can include instructions for further deployment and instantiation.
[0094] Although not shown, the transmitting module and receiving module can be part of a transceiver module, or they can be combined to form a transceiver module. A transceiver module can also be called an interface module, or simply an interface, and is used for input and output operations.
[0095] Additional details regarding ED 110, T-TRP 170, and NT-TRP 172 are known to those skilled in the art. Therefore, these details are omitted herein.
[0096] To facilitate understanding of the embodiments of this application, the terms involved in this application are explained briefly below.
[0097] 1. Channel coding Channel coding is an indispensable module in communication systems, which will... K Each source bit is encoded as N Each code bit provides error correction capability against adverse channel conditions such as noise and interference. The code rate can be expressed as... R = K / N ,in R For bitrate, K The number of source bits, N This refers to the number of encoded bits. In practice, the code rate can be selected based on channel quality. R .
[0098] Polar codes are capacity-capacity codes. When the code length approaches infinity, the synthesized channel (or sub-channel) becomes noise-free or purely noisy. Noise-free sub-channels are used to transmit information, and the proportion of noise-free sub-channels has been shown to achieve the channel capacity defined by Shannon. The aforementioned channel polarization phenomenon occurs under successive cancellation (SC) or SC-based decoding, and its complexity is relatively low.
[0099] Low-density parity-check (LDPC) codes are capacity approximation codes. LDPC codes are typically defined by a parity check matrix, in which there are far more 0s than 1s, resulting in low density. Decoding performance can be improved by strategically designing the positions of the 1s in the matrix. Although LDPC codes can be considered as random codes, introducing structural features can facilitate the hardware implementation of their encoders and decoders. A quasi-cyclic structure is one such structure: first, a small base matrix or base graph (BG) is defined, and then "lifting" is performed by replacing the 1s in this base matrix or base graph with cyclically shifted versions of the identity matrix.
[0100] After channel coding, rate matching can be performed by puncturing / shortening or repeating some code bits. The purpose of rate matching is to obtain a code bit sequence of the desired length for transmission over limited channel resources.
[0101] After channel coding and rate matching, a channel interleaver can be applied by permuting code bits. The purpose of the channel interleaver is to provide stable or superior performance under higher-order modulation or in fading channels.
[0102] 2. Polar coding Polar codes are linear block codes. For a length of... N The polar code has a generator matrix of: And its encoding process is ,in It is a binary information vector. It is a binary code vector. binary matrix ,in It is the polarization kernel matrix. , It is the Kronecker product.
[0103] Assumption K Each information bit is encoded into N One code bit, and K < N。 Then, the bitrate is R = K / N <1, which means only A portion is used to carry information bits, and the remainder is called frozen bits. These are respectively... I To represent a set of information bits (or a set of information), use F This represents the set of frozen bits (or a frozen set). Frozen bits are known before decoding (usually all zeros), therefore they do not carry any information. In some implementations, It can also include an additional parity-check (PC) bit set, used P These PC bits are parity check bits of a subset of the information bits, and are therefore known once the associated information bits have been decoded. Decoding a polar code is essentially an attempt to recover all the information bits.
[0104] Code length M It may not always be a power of 2, that is M < N In some implementations, puncturing and shortening are used to reduce the transmitted code bits from... N Reduce to M For convenience, from now on we will refer to... N The length of the mother code, and will M This is called the code length. Specifically, punctured bits are untransmitted bits unknown to the decoder, while shortened bits are untransmitted bits known to the decoder (usually all zeros).
[0105] Figure 5 It shows N =8、 K Example of a polar code with a value of 4. Figure 5 Each "butterfly" shown represents a first polarization, that is... In this example, the information set is... The frozen set is .
[0106] SC is the basic decoding algorithm for polar codes, in which all frozen bits and information bits are decoded sequentially (i.e., bit by bit). The preceding bits are always decoded first.
[0107] Successive cancellation list (SCL) is an enhanced decoding algorithm for polar codes, in which multiple (e.g., ...) cancellations are performed. L (Number) SC decoding instances. Each instance is called a "decoding path". When decoding each binary bit, both the "0" and "1" branches are expanded to each path, resulting in 2... L 2 paths. Then, for all 2 L Compare the paths, and retain the most likely one.L Choose a path and discard (or prune) the least likely one. L There are several paths. Path expansion and pruning operations are performed during the decoding of each information bit until all information bits have been decoded. Finally, the most probable path is selected as the decoded output.
[0108] The working principle of the cyclic redundancy check (CRC)-aided successive cancellation list (CA-SCL) is almost the same as that of SCL, except that in the last step, the most likely path that passes the CRC check is selected as the decoding output.
[0109] 3. LDPC encoding LDPC codes are a channel coding scheme very close to Shannon lines, and they offer good performance and low complexity. LDPC has been adopted as a data channel coding scheme in 5G NR systems.
[0110] LDPC codes are encoded using a parity check matrix. Widely used LDPC codes have a quasi-cyclic (QC) structure, and the shift values of each block are designed to avoid undesirable structures such as short circles and improve the code distance. The main decoding algorithms used for LDPC codes are min-sum (MS) and belief propagation (BP). BP decoding performs better in terms of decoding performance, but it requires a large amount of information storage, has complex computational overhead, and is not convenient for hardware implementation. Therefore, offset MS and normalized MS decoding algorithms are used in practical communication systems. In practice, LDPC codes are implemented by extending the "1" in the block shape (BG) using a square matrix, which is a cyclically shifted version of the identity matrix. The BG of a QC-LDPC code can be defined as BG=(X, Y, F), where X corresponds to the variables, Y corresponds to the parity check equation, and F is the edge connection. The Tanner graph is constructed using the expansion factor Z. c This was obtained after QC improvement. It is a bipartite graph G=(V, C, E), where V is a variable node, C is a check node, E is a connecting edge, and the corresponding odd / even matrix has N=|V|=Z columns. c The parity check matrix has M = |C| = Z rows. c |Y|, and the number of non-zero elements in the check matrix is |E|=Z|F|.
[0111] 5G data channels support block lengths ranging from 1 to 8448. The standard describes two parity check matrices, BG1 and BG2. The same base map, boosted with different boost sizes, can accommodate a variety of different code rates and code lengths. To achieve this, a list of boost sizes and shift values is stored in lookup tables, and rate matching and IR-HARQ are then implemented based on these tables.
[0112] In NR LDPC codes, the codeword before rate matching (called the mother codeword) typically consists of three disjoint parts: the systematic bits, the core parity bits, and the extended parity bits. After rate matching, four different redundancy versions (RVs) are generated in NR LDPC codes: RV0, RV1, RV2, and RV3. In the initial transmission, RV0 is usually chosen, in which most of the systematic bits are included in the set of coded bits. Simultaneously, depending on the effective code rate, a portion or all of the core parity bits, along with the extended parity bits, are included in RV0. Therefore, RV0 has the highest self-decoding capability of all RVs (i.e., RV0 can self-decode at the highest code rate). In retransmissions, the transmitter can choose RV1, RV2, or RV3. However, only RV3 is self-decoding, while RV1 and RV2 are not self-decoding at high code rates. The main reason is that at some bit rates, RV1 and RV2 may consist of only parity bits, which can lead to decoding failure at the receiver.
[0113] 4. Hybrid Automatic Repeat Request (HARQ) HARQ is a mechanism for providing reliable wireless transmission. HARQ combines forward error correction (FEC) and automatic repeat request (ARQ). In HARQ, the initial transmission is an FEC codeword with CRC bits to support error detection at the receiver. If a decoding error is detected, the receiver sends a negative acknowledge (NACK) signal to notify the transmitter of the error and request a retransmission. In some implementations, the retransmitted bits can be directly selected from the initial transmission bits. In other implementations, the retransmitted bits can include incrementally generated code bits, which, together with the initial transmission bits, form a longer codeword. The former is called chase-combining HARQ (CC-HARQ), and the latter is called incremental-redundancy HARQ (IR-HARQ). Generally, IR-HARQ outperforms CC-HARQ due to the additional coding gain from incremental redundancy.
[0114] In wireless communication, channel quality is constantly changing due to fading effects at both fast and slow scales. Therefore, channel coding design always aims to adapt to channel conditions. Adaptive modulation and coding schemes (MCS) are an effective method for handling changing channel conditions, allowing for real-time adjustments to the modulation order, code length, and coding rate. This necessitates that the channel coding scheme can flexibly change the code length and code rate in a fine-grained manner, while simultaneously achieving good error correction performance across all possible configurations. This fine-grained flexibility of channel codes is one of the most challenging problems in this field.
[0115] Furthermore, both the encoding and decoding algorithms need to have sufficiently low complexity. On the hardware side, complexity can be assessed by measuring integrated circuit area and energy efficiency. While integrated circuit area and energy efficiency are related to algorithm complexity, they are more closely related to the cost of electronic devices and battery life. Therefore, when designing encoding schemes, it is necessary to reduce implementation complexity.
[0116] Future communication systems will need to support various scenarios, such as immersive communication, massive-scale communication, and ultra-reliable low-latency communication. Key performance indicators (KPIs) related to channel coding include coding gain, reliability, throughput, latency, and their trade-offs. For example, future communication systems may require throughput exceeding 1 Tbps, while energy efficiency should be reduced to 1 pJ / bit. Simultaneously, coding schemes need to support flexible rate matching and HARQ schemes. Designing code integrations to achieve all these KPIs and capabilities is necessary, but also a very challenging task.
[0117] Therefore, it is necessary to enhance HARQ in future communication systems. Specifically, it is necessary to improve the coding gain and spectral efficiency of HARQ.
[0118] The following is a brief explanation of some HARQ schemes. To distinguish them from the HARQ schemes provided in this application, the HARQ schemes explained below will be referred to as "conventional HARQ". It should be noted that "conventional HARQ" may include, but is not limited to, the specific HARQ schemes explained below. In other words, "conventional HARQ" schemes may also include other HARQ schemes not specifically explained herein but known to those skilled in the art.
[0119] Rate-compatible polar coding is a key technology for wireless applications. In 5G NR, a combination of puncturing, shortening, and repetition is used with a fixed reliability sequence to balance performance and complexity. Specifically, sub-block interleaving and interleaving are used for both puncturing and shortening. The puncturing and shortening patterns are symmetrical.
[0120] In the examples below, when naming certain terms, the mother code length is N, the transmission code length is M, and the number of information bits is K. M > N When, repetition is used as the rate matching scheme; when K / M When ≤7 / 16, perforation is used as the rate matching scheme; when K / M When the value is greater than 7 / 16, shortening is used as the rate matching scheme.
[0121] Sub-block interleaving is performed before punching and shortening. The interleaver will have a length of... N The mother code is divided into 32 parts of size. N / 32 sub-blocks, and using the definition in the NR standard. Figure 6 The table shown interleaves them.
[0122] Because punching is performed starting from the first code bit and shortening is performed starting from the last code bit, the rate matching module is implemented efficiently through a circular buffer. Figure 7 An example of a circular buffer is shown. Figure 7 As shown, all master bits are placed in a circular buffer, punched by selecting bits in clockwise order, and shortened by selecting bits in counterclockwise order.
[0123] Incremental freezing HARQ (IF-HARQ) is a special case of IR-HARQ that supports the transmission of multiple short codewords. As more short codewords are transmitted, the total code length increases, while the total code rate decreases.
[0124] In the first transmission, the data is constructed, encoded, and transmitted. M 1, K Polar codes. The code rate is... R 1= K / M 1. Typically, the bitrate is determined to be such that... R 1< C 1, of which C 1 represents the channel capacity for the first transmission. However, in cases of channel fading or inaccurate channel estimation, there may be... R 1> C 1. Therefore, decoding will fail and a second transmission is required.
[0125] In the second transmission, from the first transmission K Select from information bits K Two of the most unreliable information bits. In practice, K 2 is selected based on the estimated channel capacity from the second transmission. Therefore, construct ( M 2, K 2) Polar code, then encode and transmit that polar code. However, if R 2> C If the result is 2, decoding will fail again and a third transmission will be required.
[0126] The construction of the third and fourth transmissions is similar, and so on.
[0127] At the receiver side, the decoder will always decode the last received codeword because it has the lowest code rate and therefore the highest probability of successful decoding. After the last transmission is correctly decoded, all corresponding information bits from previous transmissions become known and can be decoded into frozen bits with known values. This process is repeated as more codewords are decoded until all of them from the first transmission are decoded. KEvery bit is decoded. The term "incremental freeze" refers to the operation where, once the codewords transmitted later are decoded, some information bits from the previously transmitted code are additionally frozen.
[0128] Figure 8 An example of IF-HARQ is shown, where M 1= M 2= M 3= M 4 = 16, and K 1=12、 K 2=6、 K 3=4、 K 4=3 PC polar codes can be used to increase the minimum distance of polar codes and can also be used to support IR-HARQ. Here, PC bits are used to couple multiple retransmissions into longer polar codes, thus providing additional coding gain.
[0129] The PC function used for IR-HARQ can be considered a special case of the PC function, where some information bits are copied from the initially transmitted code block to the retransmitted code block. This one-to-one parity check between two shorter code blocks effectively couples them into a longer code block.
[0130] For example, the initial transmission is ( M 1=8, K =5) Polar codes, where { u 0, u 1, u 2, u 3, u 4} is an information set, and { u 5, u 6, u 7} is the frozen set. Its encoding process is as follows: Figure 9 As shown.
[0131] In the first retransmission, four additional code bits were transmitted. These four bits were coupled with the initial eight bits to form ( M 2=12, K =5) Polar codes. This coupling is achieved by coupling during encoding. u Copy the value of 4 to u This is achieved using 8, thus generating the PC function. u 4+ u 8 = 0 (or equivalent) u 8= u 4). As mentioned above, the maximum index in this PC function corresponds to the PC bit (here, ). u 8). During decoding, u 4 is decoded as an information bit, while u8 uses u 8= u 4 is used as the PC bit for decoding. (The rest of the text appears to be incomplete and requires further context.) u 0, u 1, u 2, u 3, u 8} as an information set, { u 4} as a PC set, { u 5, u 6, u 7, u 9, u 10 , u 11 As a frozen set, the encoding process is as follows: Figure 10 As shown.
[0132] In the second retransmission, the remaining 4 bits are transmitted. c 12 , c 13 , c 14 , c 15 , in order to form ( M 3=16, K =5) Polar code. But this time, no new PC bits will be generated.
[0133] From the perspective of the polarization transformation matrix, the effective code length is M 1=8、 M 2=12、 M Three transmissions of 3=16, as shown Figure 11 As shown.
[0134] Rate-compatible LDPC codes are a key technology for wireless applications. In 5G NR, a combination of punching, shortening, and repetition is used in conjunction with a quasi-cyclic boosting technique based on block cleavage (BG) and a set of shift values. Specifically, according to This will increase the size Z. c The group is divided into eight sets, among which and From the same a j The derived lift sizes belong to the same set and share the same shift values. The shift values for all non-zero positions in the BG and the shift values for all lift size groups are stored in a single table. The lift sizes are determined first during the construction of the parity check matrix. Z c Then obtain the collection index for the size increase. j And finally, the shift value is obtained from the table.
[0135] Building upon traditional HARQ schemes, future generations of communication systems require HARQ enhancements to further improve spectral efficiency and coding gain while reducing processing complexity.
[0136] In some aspects, this application provides a communication method that combines multiple code sequences corresponding to different code blocks (CBs) to generate a cross-CB code sequence. Therefore, a cross-CB code sequence can be used instead of multiple code sequences for retransmission. This can improve coding gain and spectral efficiency, thereby improving the retransmission efficiency of HARQ. In the following, this will be combined with... Figure 12 This describes the communication method provided in this application.
[0137] Figure 12 This is a flowchart of a communication method 1200 according to an embodiment of this application. The communication method 1200 can be applied to the communication system described above.
[0138] At step S1210, the encoding device receives the first message. Correspondingly, the decoding device transmits the first message.
[0139] The first message indicates that the decoding of the code set was unsuccessful. Specifically, prior to S1210, the encoding device may have already attempted to transmit the code set to the decoding device at least once. Therefore, the decoding device uses the first message to feedback to the encoding device: based on the previous transmission, the code set has not yet been successfully decoded. The first transmission in the previous transmissions can be referred to as the initial transmission.
[0140] It should be noted that the terms "transmitted code set" and "retransmitted code set" in the following text may include, but are not limited to, the following two methods. The first method is to transmit bits directly selected from the code set. The second method is to transmit encoded bits, which are generated by the encoding device based on the code set and can be used by the decoding device to determine the code set.
[0141] For example, the first message could be a NACK message.
[0142] A code set can include N code blocks (CBs), where N is a positive integer greater than 1. Specifically, the code set can include bits transmitted during the initial transmission, and these initially transmitted bits can be divided into N CBs. In some implementations, the code set can be called a transport block (TB) or a code block group (CBG).
[0143] During the initial transmission, N code blocks (CBs) are transmitted. Therefore, the decoding device can transmit a first message when at least one CB is not received by the decoding device, or when at least one CB is not correctly decoded by the decoding device. In some implementations, when the encoding device receives the first message, it may not be informed which specific CBs were not successfully decoded, but only that the code set was not successfully decoded.
[0144] At S1220, the encoding device obtains M first code sequences.
[0145] M first code sequences correspond one-to-one with M CBs out of N CBs, where M is a positive integer greater than 1 and less than or equal to N. For example, all N CBs in the code set can be divided into N' subgroups, and the number of subgroups N' can be expressed as N' = ceil(N / M), where "ceil" is the floor function. In this example, each subgroup except the last one has M CBs, and the last subgroup has M' CBs. The number of CBs in the last subgroup, M', can be expressed as M' = N - (N' - 1). M. Therefore, in the next step, the first code sequences corresponding to a predefined number (M or M' in this example) of CBs in the same subgroup can be combined.
[0146] It should be noted that the meaning of the first code sequence corresponding to CB is that the first code sequence is obtained based on the CB. In other words, each of the M first code sequences is obtained based on the corresponding CB.
[0147] Optionally, in some possible implementations, the bits in the first code sequence can be directly selected from the corresponding CB. Such a first code sequence can be used for retransmission in CC-HARQ. In other words, the method provided in this application can be used to improve the retransmission efficiency of CC-HARQ.
[0148] Optionally, in some other possible implementations, at least one bit in the first code sequence can be generated by encoding the corresponding bit in the CB. Such a first code sequence can be used for retransmission in IR-HARQ. In other words, the method provided in this application can be used to improve the retransmission efficiency of IR-HARQ.
[0149] In some possible implementations, such as in enhanced IR-HARQ scenarios, the M first code sequences include redundant versions (RVs) of the corresponding CBs. Specifically, the bits initially transmitted in the CB and the incrementally generated code bits form a longer codeword, which can be divided into multiple RVs of the CB. Therefore, the first sequence corresponding to the CB can include one or more RVs of the CB.
[0150] It should be noted that the correspondence between the first coded sequence and the CB mentioned above is only an example. The M first code sequences can also be obtained based on the M CBs through other algorithms, and these other algorithms are not limited in this application. For example, each first code sequence can be the bits used to retransmit the corresponding CB in a traditional HARQ scheme (including but not limited to CC-HARQ, IR-HARQ and IF-HARQ).
[0151] At S1230, the encoding device obtains the second code sequence based on M first code sequences.
[0152] The operation of obtaining a second code sequence based on M first code sequences is reversible. Specifically, each first code sequence can be obtained based on the second code sequence and the other M-1 first code sequences among the M first code sequences.
[0153] For example, suppose that the j-th CB out of M CBs has not yet been successfully decoded by the decoding device, while the other M-1 CBs have been successfully decoded, where j is a positive integer less than or equal to M. In this case, the decoding device can obtain M-1 first code sequences corresponding to the other M-1 CBs. Therefore, when the decoding device receives the second code sequence, it can calculate the j-th first code sequence (the first code sequence corresponding to the j-th CB) based on the second code sequence and the other M-1 first code sequences. Then, the j-th first code sequence can be used to decode the j-th CB.
[0154] Therefore, due to the reversible operation between the second code sequence and the M first code sequences, the second code sequence can be used instead of the M first code sequences for retransmission in the traditional HARQ scheme. Compared with the traditional HARQ scheme, this reduces the number of code sequences required for retransmission, thereby improving spectral efficiency.
[0155] M first code sequences have the same length, and the length of each second code sequence is the same as the length of a single code sequence. It should be noted that the length of a code sequence refers to the number of bits in that sequence. In other words, each first code sequence and each second code sequence has the same number of bits.
[0156] In some implementations, the second code sequence can be obtained by performing bit-by-bit computation based on M first code sequences. Bit-by-bit computation can be called bitwise operation or reversible computation. Specifically, each first code sequence can include k bits, and the second code sequence can also include k bits. In this case, the i-th bit of the second code sequence can be obtained by performing bitwise operations based on the i-th bits of the M first code sequences, where k is a positive integer and i is a positive integer less than or equal to k.
[0157] For example, the value of the i-th bit of the second code sequence is equal to the result of an exclusive-OR (XOR) operation on the values of the i-th bits of the M first code sequences. Alternatively, in addition to XOR, other bitwise operations, such as not-exclusive-OR (XNOR) or other table-based mappings, may be used; these bitwise operations are non-limiting examples in this application.
[0158] At S1240, the encoding device transmits the second code sequence. Correspondingly, the decoding device receives the second code sequence.
[0159] The second code sequence can be modulated and transmitted by the encoding device. Then, the decoding device can obtain the channel output signal of the second code sequence (e.g., log-likelihood ratio (LLR)).
[0160] At S1250, the decoding device obtains M first code sequences based on the second code sequence.
[0161] As explained above, each first code sequence can be obtained based on the second code sequence and the other M-1 first code sequences out of the M first code sequences. Therefore, if the code set already contains enough correctly decoded CBs (e.g., M-1 CBs in this example), the decoding device can obtain the first code sequence corresponding to the CB that has not yet been decoded based on the second code sequence. Then, the decoding device can perform decoding on the CB that has not yet been decoded based on the corresponding first code sequence.
[0162] In some implementations, if the code set does not contain enough correctly decoded CBs (i.e., M first code sequences cannot be obtained based on the second code sequence), the decoding device may not attempt to perform decoding. Instead, the decoding device may transmit another feedback message (e.g., NACK) to request another retransmission of the code set.
[0163] In this application, multiple first code sequences corresponding to different CBs are combined to generate a second code sequence of equal length to the first code sequence. Using the second code sequence instead of multiple first code sequences for retransmission improves the spectral efficiency of HARQ. From another perspective, given the same channel resources, the length of the retransmission code sequence in this application can be longer than the retransmission code sequence corresponding to a single CB in traditional HARQ schemes, which can provide greater coding gain. Therefore, the retransmission efficiency of HARQ can be improved.
[0164] Furthermore, the retransmission code sequence (i.e., the second code sequence) can be obtained through simple operations such as XOR, which can reduce the complexity of both the encoding and decoding algorithms. The code sequence used to generate the retransmission code sequence (i.e., the first code sequence) can be obtained in the same way as the traditional HARQ scheme, which enables the reuse of 5G hardware as much as possible in future communication systems.
[0165] The first exemplary implementation illustrates an embodiment of IR-HARQ for multiple CBs. In this example, a TB or CBG includes multiple CBs, denoted as CB1, CB2, ..., CBC, where C is the number of CBs in the TB or CBG. Each CB has multiple RVs (e.g., 4 RVs or 8 RVs), denoted as RV0, RV1, RV2, ..., RVK-1, where K is the number of RVs per CB. In the following, it will be combined with... Figure 13 The process of these embodiments will be described.
[0166] The encoding-side (also known as the transmitter-side) process may include the following operations.
[0167] The encoding device performs channel coding on all CBs and writes the code bits into their respective circular buffers.
[0168] like Figure 13 As shown, for the initial transmission, all CBs' code bits corresponding to RV (denoted by RVi) with rv_id=i are read from their respective circular buffers and transmitted.
[0169] like Figure 13 As shown, for retransmissions, if the RV to be transmitted has rv_id=j (denoted by RVj), then the RVs of multiple CBs are first read from their respective circular buffers. Then, these multiple single CB RVs (e.g., Figure 13 The bit-by-bit XOR combination of CB1 RVj and CB2 RVj shown is used to generate a cross CB RV ( Figure 13 The CBx RVj shown is transmitted.
[0170] For example, if the first bit of CB1 RVj is 0 and the first bit of CB2 RVj is 0, then the first bit of CBx RVj is 0; if the second bit of CB1 RVj is 1 and the second bit of CB2 RVj is 0, then the second bit of CBx RVj is 1; if the third bit of CB1 RVj is 1 and the third bit of CB2 RVj is 1, then the third bit of CBx RVj is 0, and so on.
[0171] It should be noted that, Figure 13The XOR of RVs from two CBs shown is merely an example, and RVs across CBs can be generated by combining RVs from more CBs. Specifically, RVs of a predefined number (X or X') of CBs are combined, for example, X = 2, 3, or 4 CBs. All C CBs in TB or CBG are divided into C' = ceil(C / X) subgroups, where each subgroup has X CBs, except for the last subgroup, which has X' = C - (C' - 1). X CBs. A predefined number of RVs from CBs in the same subgroup are combined to generate a cross-CB RV (also known as a XOR RV). The XOR RV is modulated and transmitted, while the single CBRV is not transmitted.
[0172] The decoding side (also known as the receiver side) may include the following processes.
[0173] The decoding device receives the channel output signal (e.g., LLR) of the RV corresponding to all CBs.
[0174] If the received LLRs correspond to RVs (i.e., RVi) with rv_id=i, they are fed directly to the decoder for decoding.
[0175] Specifically, if the RV is correctly decoded (passes the CRC check), the code bits of the corresponding CB are re-encoded, and the (hard) code bits corresponding to RVi are temporarily stored. Otherwise, if the RV is not correctly decoded (failed the CRC check), the received LLR of the corresponding RV is temporarily stored.
[0176] Otherwise, if the received LLR corresponds to RV (i.e., RVj) with rv_id=j, the decoding device checks whether there are enough correctly decoded CBs in each subgroup, where the subgroup is defined in the transmitter-side process.
[0177] Specifically, assume the subgroup has X CBs. If fewer than X-1 CBs are correctly decoded, no decoding attempt can be made. Otherwise, if X-1 CBs are correctly decoded, the LLR corresponding to the RV (non-XORed) of the undecoded CBs can be recovered by flipping the LLR based on the XORed bit values of the re-encoded code bits of the X-1 correctly decoded CBs. For example, if the XORed bits of the X-1 CBs are 0, the received LLR is not flipped; otherwise, if the XORed bits of the X-1 CBs are 1, the received LLR is flipped. The decoding device then uses the temporarily stored LLR received from rv_id=i and the LLR recovered from rv_id=j to perform decoding on the remaining CBs. Otherwise, if all X CBs are correctly decoded, all temporarily stored code bits and LLRs corresponding to the RVs of these X CBs can be deleted.
[0178] Optionally, if not all CBs are correctly decoded, the decoding device may request another retransmission.
[0179] The second exemplary implementation illustrates further details of an embodiment of IR-HARQ for multiple CBs. In this example, RVs from two CBs within the same subgroup are combined to generate a cross-CB RV for retransmission.
[0180] In the following text, we will combine Figure 14 This describes the process on the encoding side (also known as the transmitter side).
[0181] The encoding device performs channel coding on CB1 and CB2 and writes the code bits into their respective circular buffers.
[0182] like Figure 14 As shown, for the initial transmission, RV (with rv_id=0) of CB1 and CB2 is read from their respective circular buffers. Figure 14 The corresponding code bits of CB1 RV0 and CB2 RV0 shown are transmitted.
[0183] like Figure 14 As shown, for retransmission, the RV to be transmitted has rv_id=1 and rv_id=2. Therefore, the RVs of CB1 and CB2 are first read from their respective circular buffers. Figure 14 The CB1 RV1, CB2 RV1, CB1 RV2, and CB2 RV2 shown are then XORed. In other words, the XOR operation across CB can be performed only on the parity bit RV or RVs other than RV0. Then, the XOR operation across CB RVs is generated and transmitted. Figure 14 The CBx RV1 and CBx RV2 shown are used instead of the single CB RV (CB1 RV1 and CB2 RV1) in the traditional IR-HARQ.
[0184] Specifically, the RVs of two CBs are combined, i.e., X=2. All C CBs in TB or CBG are divided into C'=ceil(C / 2) subgroups, and each subgroup contains two CBs. In this example, CB1 and CB2 are in the same subgroup. The two RVs of CB1 and CB2 with rv_id=1 (denoted as CB1 RV1 and CB2 RV1) are combined to generate an XOR RV, called the CBx RV of rv_id=1 (denoted as CBx RV1). The two RVs of CB1 and CB2 with rv_id=2 (denoted as CB1 RV2 and CB2 RV2) are combined to generate an XOR RV, called the CBx RV of rv_id=2 (denoted as CBx RV2). The CBx RV of rv_id=1 and the CBx RV of rv_id=2 are modulated and transmitted.
[0185] In the following text, we will combine Figure 15 This describes the process on the decoding side (also known as the transmitter side).
[0186] The decoding device receives the channel output signal (e.g., LLR) of the RV corresponding to all CBs.
[0187] like Figure 15 As shown, the received LLR corresponding to RV0 is directly fed to the decoder for decoding. In this example, RV0 of CB1 is correctly decoded, so the code bits corresponding to CB1 are re-encoded to obtain RV1 and RV2. RV0 of CB2 is not correctly decoded, so the received LLR of RV0 is temporarily stored.
[0188] like Figure 15 As shown, the received LLRs corresponding to CBx RV1 and CBx RV2 are used to obtain CB2 RV1 and CB2 RV2 based on CB1 RV1 and CB1 RV2. Specifically, since CB1 is correctly decoded, the LLRs corresponding to CB2 RV1 and CB2 RV2 can be recovered by flipping the LLRs according to the re-encoded code bits of CB1. For example, if the code bit of CB1 is 0, the corresponding received LLR is not flipped; otherwise, if the code bit of CB1 is 1, the corresponding received LLR is flipped. Then, the decoding device can use the temporarily stored received LLR from CB2 RV0 and the recovered LLRs from CB2 RV1 and CB2 RV2 to perform decoding on CB2.
[0189] Please note that in this example, CB2 uses 3 RVs (CB2 RV0, CBx RV1, and CBx RV2) for decoding instead of the 2 RVs (CB2 RV0 and CB2 RV1) in traditional IR-HARQ. Therefore, CB2 has a lower bit rate and a higher probability of successful decoding in this example.
[0190] Optionally, if not all CBs are correctly decoded, the decoding device may request another retransmission.
[0191] Alternatively, referring to the communication method 1200 described above, M CBs can have the same interval in a sequence comprising N CBs. In other words, CBs can be paired (when M=2) or bundled (when M>2) in some predefined way. The following two examples illustrate different implementations of dividing CBs into subgroups.
[0192] In one example, adjacent CBs are grouped into a subgroup and combined using XOR, thanks to a relatively simple implementation.
[0193] For example, such as Figure 16 As shown, if there are 16 CBs in TB, these 16 CBs can be divided into 8 groups, with 2 CBs in each group. Specifically, CB0 and CB1 are XORed together to form CBx01, CB1 and CB2 are XORed together to form CBx12, and so on.
[0194] In another example, interleaved CBs with equal spacing are grouped into a subgroup and XORed together, which maximizes the use of channel diversity.
[0195] For example, such as Figure 17 As shown, if there are 8 CBs in CBG, these 8 CBs can be divided into 4 groups, with 2 CBs in each group and an interval of 4. Specifically, CB0 and CB4 are XORed together to form CBx04, CB1 and CB5 are XORed together to form CBx15, and so on.
[0196] According to the above technical solution, the CBs used to obtain the second code sequence are paired or bundled at predefined intervals, thus supporting both adjacent CB groups and interleaved CB groups simultaneously. Therefore, the simplicity and versatility of the encoding can be improved.
[0197] It should be noted that the two grouping methods described above are merely illustrative examples. To meet other requirements, CBs may also be divided into subgroups using other methods, which are not limited in this application.
[0198] In this application, the subgroup size X (i.e., the number of CBs in the subgroup mentioned in the above communication method 1200, denoted by M) affects the error correction capability. When there are fewer than X-1 decoded CBs in the subgroup, an excessively large X may lead to some performance loss.
[0199] Therefore, in some embodiments, the subgroup size X may be predetermined or configured. Accordingly, the RV length F (i.e., the number of bits in the RV) should be determined.
[0200] The following describes an exemplary implementation of determining the subgroup size and RV length.
[0201] In some implementations, the subgroup size X can be a fixed value such as 2, 3, or 4.
[0202] In some other implementations, the subgroup size X can be pre-configured in the RRC and sent by the RRC message. For example, the subgroup size X can be indicated by an RRC field called "CrossCBSubgroupSize".
[0203] In some other implementations, the subgroup size X can be dynamically indicated in the DCI. For example, the subgroup size X can be indicated by a DCI field called "cross-CB subgroup size".
[0204] In some implementations, the RV length F can be determined based on the subgroup size X.
[0205] Specifically, for a given retransmission, assume the rate-matched output length of each CB is E. For conventional IR-HARQ, to transmit an RV with rv_id, E code bits are read from the circular buffer of each CB, starting from the starting position k0 corresponding to rv_id. For the cross-CB IR-HARQ provided in this application, to transmit a cross-CB RV with rv_id, a total of F = E × X code bits are read from the circular buffer of each CB, starting from the starting position k0 corresponding to rv_id. By XORing the F code bits of each CB, F code bits for the cross-CB RV can be obtained for retransmission. Since the F = E × X code bits used for retransmission are for all X CBs, the total number of bits used for retransmission is still the same as that of conventional IR-HARQ. In other words, each CB retransmits an average of only E = F / X bits.
[0206] In this example, given the same amount of channel resources, more code bits can be read from the circular buffer of each CB. That is, compared to a single CB RV retransmitted in conventional HARQ, more effective code bits can be provided across CB RVs for decoding a single CB. Therefore, more coding gain can be provided.
[0207] Figure 18 An example of two CB pairs used for cross-CB IR-HARQ is shown. In this example, twice the length of the traditional RV is read from each CB to generate a cross-CB RV.
[0208] Figure 19 An example of 3 CB bundles for cross-CB IR-HARQ is shown. In this example, 3 times the length of the traditional RV is read from each CB to generate a cross-CB RV.
[0209] Optionally, the HARQ retransmission mode (i.e., cross-CB HARQ) provided in this application can be adaptively selected. In other words, the HARQ retransmission mode provided in this application can be applied to appropriate scenarios.
[0210] For example, the encoding device can transmit a second message to the decoding device, wherein the second message includes a first field, and the value of the first field indicates the mode of the code set being retransmitted. When the value of the first field indicates that the mode is a first mode (e.g., a cross-CB HARQ mode), the encoding device can transmit a second code sequence to the decoding device. That is, the retransmission (including encoding and decoding) is implemented according to the cross-CB HARQ scheme provided in this application.
[0211] Optionally, in scenarios where the HARQ retransmission mode provided in this application is not selected, other retransmission modes can be selected.
[0212] For example, when the value of the first field of the second message indicates a second mode (e.g., conventional HARQ mode), the encoding device can transmit M first code sequences to the decoding device. That is, retransmission (including encoding and decoding) is implemented according to the conventional HARQ scheme.
[0213] The following exemplary implementation illustrates an embodiment that includes the adaptive HARQ mode selection and indication described above.
[0214] In this example, the first mode is the cross-CB IR-HARQ mode shown above, and the second mode is the traditional IR-HARQ mode. An indicator can be defined to switch between traditional IR-HARQ and cross-CB IR-HARQ.
[0215] In some implementations, such as Figure 20As shown, this indicator can be pre-configured in the RRC and sent by the RRC message. For example, the HARQ retransmission mode used can be indicated by an RRC field called "CrossCB-HARQ-Flag", where CrossCB-HARQ-Flag=0 indicates retransmission using the traditional IR-HARQ mode, and CrossCB-HARQ-Flag=1 indicates retransmission using the cross-CB IR-HARQ mode.
[0216] In some other implementations, such as Figure 21 As shown, this indicator can be dynamically specified in the DCI. For example, the HARQ retransmission mode used can be indicated by a DCI field called "cross-CB HARQ flag", where cross-CB HARQ flag=0 indicates retransmission using the traditional IR-HARQ mode, and cross-CB HARQ flag=1 indicates retransmission using the cross-CB IR-HARQ mode.
[0217] It should be noted that, in Figure 20 and Figure 21 In the example shown, the BS can be an encoding device, and the UE can be a decoding device. NACK can be the first message used to request retransmission. PDSCH can be used to transmit code sequences.
[0218] In some implementations, Figure 20 and Figure 21 The indicators shown can all be used in the process. For example, the HARQ retransmission mode can be pre-configured by the RRC message, and retransmissions can be performed using the pre-configured mode until the DCI message indicates a new HARQ retransmission mode, which can then be used in subsequent retransmissions.
[0219] Optionally, the value of the first field of the second message may be associated with at least one or more of the following: the number of code blocks in the code set that have not yet been decoded; the channel difference used for retransmitting the code set; whether the channel quality indicator (CQI) of the channel is available; and whether there is an acknowledgment or negative acknowledgment (ACK / NACK) feedback for the retransmission.
[0220] For example, this indicator can be set based on the decoding result of the initial transmission. The HARQ feedback content that can be reported in UCI, "Ratio (or Quantity) of Undecoded CBs," can be defined. If the ratio (or quantity) of undecoded CBs exceeds a threshold (e.g., 1 / X or 1 / X...), then this indicator can be used to report the undecoded CBs. C) can then instruct retransmission to be performed using the traditional IR-HARQ mode. If the ratio (or number) of undecoded CBs is less than or equal to a threshold (e.g., 1 / X or 1 / X), then retransmission can be performed. (C) can then instruct the use of cross-CB IR-HARQ mode for retransmission.
[0221] For example, this indicator can be set based on channel differences and / or diversity. If the channel differences are large, such as in cases of preemptive transmission, independent fading, or beam blocking, it can be indicated to use cross-CB IR-HARQ mode for retransmission; otherwise, it can be indicated to use conventional IR-HARQ mode for retransmission.
[0222] For example, this indicator can be set based on whether the channel CQI can be accurately obtained. If the channel CQI can be accurately obtained, it can indicate that retransmission should be performed using the cross-CB IR-HARQ mode; otherwise, it can indicate that retransmission should be performed using the conventional IR-HARQ mode (e.g., in a single transmission).
[0223] For example, this indicator can be set based on whether ACK / NACK feedback is available, or whether ACK / NACK feedback can be obtained with low latency. If ACK / NACK feedback is available, it can indicate retransmission using the traditional IR-HARQ mode; otherwise, it can indicate retransmission using the cross-CB IR-HARQ mode. In other cases, if ACK / NACK feedback can be obtained with low latency (below a threshold), it can indicate retransmission using the traditional IR-HARQ mode; otherwise, it can indicate retransmission using the cross-CB IR-HARQ mode.
[0224] We observed that cross-CB IR-HARQ is most effective when most CBs have been correctly decoded, allowing correctly decoded CBs in a bundle to help decode CBs that are still not correctly decoded. This is because correctly decoded CBs can be used to recover the LLR of the additional RV of the incorrectly decoded CBs, resulting in a much lower actual coding rate for the incorrectly decoded CBs.
[0225] As the number of retransmissions increases, the above situation (i.e., more CBs have been correctly decoded) occurs more frequently.
[0226] Therefore, when enough CBs have been decoded, the HARQ retransmission mode can be progressively switched from the traditional IR-HARQ mode to the cross-CB IR-HARQ mode.
[0227] In some implementations, referring to the communication method 1200 described above, the encoding device may transmit the second code sequence only if the number of code sets being retransmitted is greater than or equal to a first threshold.
[0228] In some other implementations, referring to the communication method 1200 described above, the decoding device may transmit a third message to the encoding device to request retransmission using the second code sequence.
[0229] The exemplary implementation described below illustrates an embodiment including the aforementioned progressive HARQ mode switching and indication.
[0230] Specifically, after a sufficient number of retransmissions (using T) max After that, the transmission can be switched from the traditional IR-HARQ mode to the cross-CB IR-HARQ mode.
[0231] In some implementations, explicit configuration can be used for the aforementioned gradual switching. Specifically, T max It can be fixed as 1, 2, 3, 4, and this fixed T max It can be flexibly configured using RRC or DCI. The number of retransmissions (denoted by T) can be counted and recorded (e.g., the value of T is incremented by 1 for each retransmission). Then, when T equals T0... max At this time, subsequent transmissions can switch from traditional IR-HARQ mode to cross-CB IR-HARQ mode.
[0232] In some other implementations, implicit configuration via UCI feedback can be used for the progressive switching described above. For example, a special type of feedback can be defined to request a switch to cross-CB IR-HARQ mode when the UE has decoded a majority of CBs, such as a 1-bit cross-CB flag. Alternatively, a soft NACK or decoder state information (DSI) with multiple bits can be used to indicate the decoding state, for example, {00 = all NACK, 01 = most NACK, 10 = most ACK, 11 = all ACK}. If 00 or 01 is received, the transmitter uses traditional IR-HARQ; if 10 is received, it switches to cross-CB IR-HARQ.
[0233] like Figure 22 As shown, as more CBs are correctly decoded, the incremental redundancy RV used to send them will waste channel resources. In this case, cross-CB IR-HARQ effectively further increases the redundancy of CBs that are still not correctly decoded.
[0234] It should be noted that any of the above exemplary implementations can also be applied to other cross-CB encoding schemes, such as foreign codes and two-dimensional encoding schemes based on product codes.
[0235] The above references Figures 12 to 22 The communication method according to embodiments of this application is described in detail below, with reference to... Figures 23 to 27The encoding and decoding apparatuses according to embodiments of this application are described in detail.
[0236] picture Figure 23 This is a schematic block diagram of an encoding device 10 according to an embodiment of this application. Figure 23 As shown, the encoding device 10 includes: The transceiver module 11 is used to receive a first message, wherein the first message indicates that the decoding of the code set was unsuccessful, the code set includes N code blocks, and N is a positive integer greater than 1; Encoding module 12 is used to obtain M first code sequences, wherein the M first code sequences correspond one-to-one with the M code blocks in the N code blocks, each of the M first code sequences is obtained based on the corresponding code block, and M is a positive integer greater than 1 and less than or equal to N.
[0237] The encoding module 12 is also used to obtain a second code sequence based on the M first code sequences, wherein each first code sequence can be obtained based on the second code sequence and the other M-1 first code sequences among the M first code sequences, and each first code sequence and the second code sequence have the same number of bits.
[0238] The transceiver module 11 is also used to transmit the second code sequence.
[0239] Therefore, multiple code sequences corresponding to different CBs can be combined to generate cross-CB code sequences for retransmission. This improves the coding gain and spectral efficiency of HARQ.
[0240] The encoding device 10 in this embodiment of the present application can correspond to the encoding device in the communication method described above in the embodiments of the present application, and the management operations and / or functions of each module of the encoding device 10 and other management operations and / or functions are intended to implement the corresponding steps of the above-described method. For the sake of brevity, details will not be repeated here.
[0241] In this embodiment of the present application, the transceiver module 11 can be implemented by a transceiver, and the encoding module 12 can be implemented by an encoder.
[0242] like Figure 24 As shown, the encoding device 20 may include a transceiver 21. Optionally, the encoding device 20 may also include a processor 22 and / or a memory 23. The memory 23 may be used to store instruction information, or it may be used to store code and instructions to be executed by the processor 22.
[0243] Figure 25 This is a schematic block diagram of a decoding apparatus 30 according to an embodiment of this application. Figure 25 As shown, the decoding device 30 includes: The transceiver module 31 is used to transmit the first configuration information and receive the second code sequence; Decoding module 32 is used to obtain M first code sequences based on the second code sequence.
[0244] The decoding device 30 in this embodiment of the present application can correspond to the decoding device in the communication method described above in the embodiments of the present application, and the above-described management operations and / or functions of each module of the decoding device 30 and other management operations and / or functions are intended to implement the corresponding steps of the above-described method. For the sake of brevity, details will not be repeated here.
[0245] In this embodiment of the present application, the transceiver module 31 can be implemented by a transceiver, and the decoding module 32 can be implemented by a decoder.
[0246] like Figure 26 As shown, the decoding device 40 may include a transceiver 41. Optionally, the decoding device 40 may also include a processor 42 and / or a memory 43. The memory 43 may be used to store instruction information, or it may be used to store code and instructions to be executed by the processor 42.
[0247] Processor 22 or processor 42 may be an integrated circuit and have signal processing capabilities. In the embodiments, the steps in the above method embodiments can be implemented using hardware integrated logic circuits in the processor or by using instructions in software form. Processor 22 or processor 42 may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or another programmable logic device, discrete gate or transistor logic device, or discrete hardware component. All methods, steps, and logic block diagrams disclosed in these embodiments of this application can be implemented or executed. The general-purpose processor may be a microprocessor, or the processor may be any conventional processor or similar processor. The steps of the methods disclosed in the embodiments of this invention can be directly executed and completed by a hardware decoding processor, or can be executed and completed by using a combination of hardware and software modules in the decoding processor. The software modules may reside in storage media known in the art, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. The storage medium is located in memory, and the processor reads information from the memory and combines it with the processor's hardware to complete the steps in the above methods.
[0248] In embodiments of the present invention, memory 23 or memory 43 can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be random access memory (RAM) and is used as an external cache. By way of example and not limitation, many forms of RAM may be used, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct rambus dynamic random access memory (DR RAM). The storage of the systems and methods described in this specification is intended to include, but is not limited to, these and any other suitable storage.
[0249] Embodiments of this application also provide a system. For example... Figure 27 As shown, system 50 includes: The encoding device 10 and the decoding device 30 according to embodiments of the present application.
[0250] Embodiments of this application also provide a computer storage medium that can store program instructions for performing any of the methods described above.
[0251] Alternatively, the storage medium may specifically be memory 23 or 43.
[0252] Those skilled in the art will recognize that, in conjunction with the examples described in the embodiments disclosed in this specification, the units and algorithm steps can be implemented using electronic hardware or a combination of computer software and electronic hardware. Whether a function is implemented using hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but should not consider the embodiments to be beyond the scope of this application.
[0253] Those skilled in the art should understand that, for convenience and brevity, the corresponding processes in the above method embodiments can be referred to in the detailed operation of the above systems, devices and units, and the details will not be described further herein.
[0254] In the several embodiments provided in this application, the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the described apparatus embodiments are merely examples. For instance, unit partitioning is a logical functional partitioning, and other partitioning methods can be used in actual embodiments. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not performed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed can be implemented by using some communication interface. Indirect coupling or communication connection between apparatuses or units can be implemented in electronic, mechanical, or other forms.
[0255] Units described as individual components may or may not be physically separate; components shown as units may or may not be physical units, meaning they may reside in one unit or be distributed across multiple network units. Some or all of these units may be selected based on actual requirements to achieve the objectives of the embodiment.
[0256] Furthermore, the functional units in the embodiments of this application can be integrated into a processing unit, and each of these units can exist physically separately, or two or more units can be integrated into one unit.
[0257] When these functions are implemented as software functional units and sold or used as independent products, these functions can be stored in a computer-readable storage medium. The technical solution of this application can be implemented as a software product. This software product is stored in a storage medium and includes several instructions that instruct a computer device (which may be a personal computer, server, or network device, etc.) to execute all or some of the steps of the methods described in the embodiments of this application. The aforementioned storage medium includes any medium capable of storing program code, such as a USB flash drive, a removable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, etc.
[0258] This invention includes various embodiments, not only method embodiments but also other embodiments, such as apparatus embodiments and embodiments relating to non-transitory computer-readable storage media. Embodiments may be combined individually or in combination with the features disclosed herein.
[0259] Although the present invention has reference to illustrative embodiments, it is not intended to be construed as limiting. Various modifications and combinations of the illustrative embodiments, as well as other embodiments of the invention, will be apparent to those skilled in the art upon reference to this specification.
[0260] Additionally or alternatively, features disclosed herein in the context of any particular embodiment may be implemented in other embodiments. For example, method embodiments may be implemented in apparatus, system, and / or computer program product embodiments. Furthermore, although embodiments are described primarily in the context of methods and apparatus, other implementations are contemplated, for example, as instructions stored on one or more non-transitory computer-readable media. Such media may store programs or instructions to perform any of the various methods consistent with the present invention.
[0261] The above description is merely a specific embodiment of this application and is not intended to limit the scope of protection of this application. Any variations or substitutions that are readily conceived by those skilled in the art within the scope of the technology disclosed in this application should fall within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A communication method, characterized in that, include: Receive a first message, wherein the first message indicates that the decoding of the code set was unsuccessful, the code set includes N code blocks, and N is a positive integer greater than 1; M first code sequences are obtained, wherein the M first code sequences correspond one-to-one with the M code blocks in the N code blocks, each of the M first code sequences is obtained based on the corresponding code block, and M is a positive integer greater than 1 and less than or equal to N; A second code sequence is obtained based on the M first code sequences, wherein each first code sequence is obtained based on the second code sequence and the other M-1 first code sequences among the M first code sequences, and each first code sequence and the second code sequence have the same number of bits; Transmit the second code sequence.
2. The method according to claim 1, characterized in that, Each first code sequence includes k bits, and the second code sequence includes k bits. The i-th bit of the second code sequence is obtained by performing a bitwise operation based on the corresponding i-th bit of each of the M first code sequences, where k is a positive integer and i is a positive integer less than or equal to k.
3. The method according to claim 2, characterized in that, The bitwise operation is an XOR operation performed on the value of the i-th bit of each of the M first code sequences.
4. The method according to any one of claims 1 to 3, characterized in that, The M first code sequences include redundant versions RV of the corresponding code blocks.
5. The method according to any one of claims 1 to 4, characterized in that, The M code blocks have the same spacing in the sequence that includes the N code blocks.
6. The method according to any one of claims 1 to 5, characterized in that, The value of M is indicated by at least one of the Radio Resource Control (RRC) message or the Downlink Control Information (DCI) message.
7. The method according to any one of claims 1 to 6, characterized in that, The method further includes: Transmit a second message, wherein the second message includes a first field, and the value of the first field indicates the pattern of the code set being retransmitted; The transmission of the second code sequence includes transmitting the second code sequence when the value of the first field indicates that the mode is a first mode.
8. The method according to claim 7, characterized in that, The method further includes transmitting the M first code sequences when the value of the first field indicates that the mode is a second mode.
9. The method according to claim 7 or 8, characterized in that, The value of the first field is associated with at least one or more of the following: the number of undecoded code blocks in the code set; the channel difference used to retransmit the code set in a retransmission; whether the channel quality indicator (CQI) of the channel is available; and whether there is acknowledgment (ACK) or negative acknowledgment (NACK) feedback for the retransmission.
10. The method according to any one of claims 7 to 9, characterized in that, The second message is either an RRC message or a DCI message.
11. The method according to any one of claims 1 to 10, characterized in that, The transmission of the second code sequence includes: transmitting the second code sequence when the number of the code set being retransmitted is greater than or equal to a first threshold.
12. The method according to any one of claims 1 to 11, characterized in that, The method further includes: A third message is received, wherein the third message is used to request the retransmission of the code set by transmitting the second code sequence.
13. A communication method, characterized in that, include: Transmit a first message, wherein the first message indicates that the decoding of the code set was unsuccessful, the code set comprising N code blocks, and N being a positive integer greater than 1; Receive the second code sequence; Based on the second code sequence, M first code sequences are obtained, wherein the M first code sequences correspond one-to-one with M code blocks among the N code blocks. Each first code sequence is obtained based on the second code sequence and the other M-1 first code sequences among the M first code sequences. Each first code sequence and the second code sequence have the same number of bits, and M is a positive integer greater than 1 and less than or equal to N.
14. The method according to claim 13, characterized in that, Each first code sequence comprises k bits, the second code sequence comprises k bits, where k is a positive integer, and obtaining M first code sequences based on the second code sequence includes: The j-th first code sequence is obtained from the M first code sequences based on the second code sequence and the other M-1 first code sequences. The i-th bit of the j-th first code sequence is obtained by performing bitwise operations based on the i-th bit of the second code sequence and the corresponding i-th bit of the other M-1 first code sequences. Here, i is a positive integer less than or equal to k, and j is a positive integer less than or equal to M.
15. The method according to claim 14, characterized in that, The bitwise operation is an XOR operation performed on the value of the i-th bit of each of the M first code sequences.
16. The method according to any one of claims 13 to 15, characterized in that, The M first code sequences include redundant versions RV of the corresponding code blocks.
17. The method according to any one of claims 13 to 16, characterized in that, The M code blocks have the same spacing in the sequence that includes the N code blocks.
18. The method according to any one of claims 13 to 17, characterized in that, The value of M is indicated by at least one of the Radio Resource Control (RRC) message or the Downlink Control Information (DCI) message.
19. The method according to any one of claims 13 to 18, characterized in that, The method further includes: Receive a second message, wherein the second message includes a first field, and the value of the first field indicates the pattern of the code set being retransmitted; The receiving of the second code sequence includes receiving the second code sequence when the value of the first field indicates that the mode is the first mode.
20. The method according to claim 19, characterized in that, The method further includes: receiving the M first code sequences when the value of the first field indicates that the mode is a second mode.
21. The method according to claim 19 or 20, characterized in that, The value of the first field is associated with at least one or more of the following: the number of undecoded code blocks in the code set; the channel difference used to retransmit the code set in a retransmission; whether the channel quality indicator (CQI) of the channel is available; and whether there is acknowledgment (ACK) or negative acknowledgment (NACK) feedback for the retransmission.
22. The method according to any one of claims 19 to 21, characterized in that, The second message is either an RRC message or a DCI message.
23. The method according to any one of claims 13 to 22, characterized in that, Receiving the second code sequence includes receiving the second code sequence when the number of the code set being retransmitted is greater than or equal to a first threshold.
24. The method according to any one of claims 13 to 23, characterized in that, The method further includes: A third message is transmitted, wherein the third message is used to request the retransmission of the code set by transmitting the second code sequence.
25. An apparatus, characterized in that, It includes a processor and a memory, the memory storing instructions for execution by the processor to cause the device to perform the method according to any one of claims 1 to 24.
26. An apparatus, characterized in that, Includes a processor for causing the device to perform the method according to any one of claims 1 to 24.
27. A communication system, characterized in that, It includes a transmitting device and a receiving device, wherein the receiving device performs the method according to any one of claims 1 to 12, and the transmitting device performs the method according to any one of claims 13 to 24.
28. A computer-readable storage medium, characterized in that, It includes one or more instructions, wherein when the one or more instructions are executed on a computer, the computer performs the method according to any one of claims 1 to 24.
