Communication method and apparatus
By performing interleaving processing of distributed matching and dedistributed matching at the transmitting and receiving ends, the problem of high energy consumption in multi-layer distributed matching is solved, achieving efficient energy utilization and hardware simplification.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-11-14
- Publication Date
- 2026-05-28
AI Technical Summary
In existing technologies, how to efficiently perform multi-layer distributed matching to save energy consumption of communication equipment is a challenge.
By performing distribution matching and dedistribution matching operations at the sending and receiving ends respectively, and utilizing interleaving and deinterleaving processes, hardware complexity is reduced and multi-layer parallel processing is achieved, ensuring that the output sequence length is finite and simplifying hardware design.
This technology reduces latency, improves energy efficiency, simplifies hardware design, and reduces energy consumption in multi-layer distributed matching processes.
Smart Images

Figure CN2025135008_28052026_PF_FP_ABST
Abstract
Description
A communication method and apparatus
[0001] Cross-reference to related applications
[0002] This application claims priority to Chinese Patent Application No. 202411690080.8, filed on November 22, 2024, entitled "A Communication Method and Apparatus", the entire contents of which are incorporated herein by reference. Technical Field
[0003] This application relates to the field of communication technology, and in particular to a communication method and apparatus. Background Technology
[0004] Devices communicate through encoding, modulation, demodulation, and decoding. Modulation symbols may have different energies; by sending more low-energy modulation symbols and fewer high-energy ones, the average energy at the transmitting end can be saved. Probabilistic shaping techniques can increase the probability of low-energy modulation symbols appearing and decrease the probability of high-energy modulation symbols appearing, thus saving energy. Probabilistic shaping techniques include processes such as distribution matching, encoding, and modulation.
[0005] How to perform multi-level distribution matching efficiently is something that needs to be considered. Summary of the Invention
[0006] This application provides a communication method and apparatus for efficiently performing multi-layer distributed matching.
[0007] Firstly, this application provides a communication method applied at a transmitting end. The transmitting end includes, but is not limited to: a terminal device, or a communication module within the terminal device, or a processor, circuit, or chip within the terminal device responsible for communication functions (such as a modem chip, also known as a baseband chip, or a system-on-a-chip containing a modem core).
[0008] System on chip (SoC) chips or system-in-package (SIP) chips can also be logical nodes, logical modules or software that can implement all or part of the terminal functions; or, the transmitting end includes, but is not limited to: network devices, modules in network devices (such as chips, chip systems, or processors, etc.), logical nodes, logical modules or software that implement all or part of the network device functions.
[0009] Taking the application of this method at the sending end as an example: the sending end performs distribution matching on the first sequence of the i-th layer based on the first length, and obtains 2 iA second sequence; wherein, the first length is used to indicate the length of the output sequence after distribution matching, the first length is related to the length of the output sequence of any layer and i, where i is an integer greater than or equal to 1; the sending end is based on the 2 i The second sequence and interleaving process are used to obtain the output sequence of the i-th layer.
[0010] In this method, the length of the output sequence after performing distribution matching in the i-th layer (i.e., the first length) is not determined based on the output sequences from the 0th to the (i-1th)th layers, but is determined based on the length n of the output sequence of any layer and the value of i. In this way, when performing distribution matching on multiple layers, the multiple layers can perform distribution matching in parallel, which can reduce latency and achieve efficient multi-layer distribution matching.
[0011] In addition, the length of the output sequence after distribution matching is limited, and the length of the input sequence after distribution matching is also limited, which reduces the complexity of the hardware.
[0012] In one possible implementation, the first length is n / 2. i Or, the first length is n / 2 i The integer value; where n is the length of the output sequence of any layer.
[0013] In one possible implementation, based on the 2 i The second sequence and interleaving process are used to obtain the output sequence of the i-th layer, including: the second sequence and interleaving process. i The second sequence is interleaved to obtain the output sequence of the i-th layer.
[0014] In one possible implementation, the 2 i The second sequence is interleaved, including: when the first quantity is greater than or equal to the second quantity, interleaving the second number of consecutive bits in the j-th second sequence to the position of the corresponding value of the j-th second sequence in the combined sequence; when the first quantity is less than the second quantity, interleaving the bits in the j-th second sequence to the position of the corresponding value of the j-th second sequence to the position of the first number of consecutive bits in the combined sequence; wherein, the first quantity is the number of bits included in the j-th second sequence, the second quantity is the number of the corresponding value of the j-th second sequence in the combined sequence, and the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1), where 0 ≤ j ≤ 2. i -1.
[0015] In this implementation, 2 is directly used i The second sequence is interleaved, and the process is simple.
[0016] In one possible implementation, the basis of the 2 iThe second sequence and interleaving process are used to obtain the output sequence of the i-th layer, including: the second sequence and interleaving process. i Concatenate the second sequences to obtain the third sequence; divide the third sequence into 2... i 2 subsequences; wherein, the 2 i The length of each subsequence is determined based on the output sequence from layer 0 to layer (i-1); the 2 i The 2 subsequences are interleaved to obtain the output sequence of the i-th layer; wherein, the 2 i The interleaving positions of each subsequence are determined based on the output sequences from layer 0 to layer (i-1).
[0017] In this implementation, for 2 i After concatenating the second sequences, they are re-divided into subsequences, and then interleaved based on these subsequences. The division and interleaving processes use the same rules to ensure that the number of bits in each subsequence matches the number of corresponding interleaving positions. Additionally, before interleaving, an extra pair of 2... i The second sequence is concatenated and re-divided into 2. i The process of concatenating subsequences is very simple, with negligible latency. Even if multiple layers are concatenated, they do not affect each other. The total latency of re-dividing the concatenated third sequence into subsequences and interleaving based on these subsequences does not significantly increase compared to direct interleaving, because the rules used are consistent. Therefore, overall, this implementation does not increase latency.
[0018] In one possible implementation, the 2 i The length of each subsequence is determined based on the output sequence from layer 0 to layer (i-1), including: the length of the j-th subsequence is determined based on the number of values corresponding to the j-th subsequence in the combined sequence, wherein the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1), and 0 ≤ j ≤ 2. i -1.
[0019] In one possible implementation, the 2 i Interleaving the subsequences to obtain the output sequence of the i-th layer includes: interleaving the bits in the j-th subsequence to the positions of the corresponding values in the j-th subsequence in the combined sequence to obtain the output sequence of the i-th layer; wherein, the combined sequence is obtained by combining the output sequences from the 0th layer to the (i-1)th layer, and 0 ≤ j ≤ 2. i -1.
[0020] In one possible implementation, i = 1, the value corresponding to the 0th subsequence is 0, and the value corresponding to the 1st subsequence is 1; i = 2, the value corresponding to the 0th subsequence is 01, the value corresponding to the 1st subsequence is 00, the value corresponding to the 2nd subsequence is 10, and the value corresponding to the 3rd subsequence is 11; i = 3, the values corresponding to the 0th to 7th subsequences are: 011, 010, 000, 001, 101, 100, 110, 111; i = 4, the values corresponding to the 0th to 15th subsequences are: 0111, 0110, 0100, 0101, 0001, 0000, 0010, 0011, 1011, 1010, 1000, 1001, 1101, 1100, 1110, 1111.
[0021] Secondly, this application provides a communication method applied to a receiving end. The receiving end includes, but is not limited to: a terminal device, or a communication module within the terminal device, or a processor, circuit, or chip within the terminal device responsible for communication functions (such as a modem chip, also known as a baseband chip, or a system-on-chip (SoC) chip containing a modem core, or a system-in-package (SIP) chip), and may also be a logical node, logical module, or software capable of implementing all or part of the terminal functions; or, the receiving end includes, but is not limited to: a network device, modules within the network device (e.g., chips, chip systems, or processors), or logical nodes, logical modules, or software implementing all or part of the network device functions.
[0022] Taking the application of this method at the receiving end as an example: the receiving end, based on the first length, the fourth sequence of the i-th layer, and deinterleaving processing, obtains 2 i A second sequence; the first length is used to indicate the length of the output sequence after distribution matching, or to indicate the length of the input sequence after distribution matching; the first length is related to the length of the fourth sequence and i, where i is an integer greater than or equal to 1; the receiving end is based on the 2 i The second sequence and solution distribution are matched and processed to obtain the first sequence of the i-th layer.
[0023] The receiving end performs the reverse (opposite) operation to the sending end, and the technical effect achieved at both ends is the same, so it will not be repeated.
[0024] In one possible implementation, the first length is n / 2. i Or, the first length is n / 2 i The integer value; where n is the length of the fourth sequence.
[0025] In one possible implementation, the fourth sequence based on the first length and the i-th layer, along with deinterleaving, yields 2. i A second sequence, comprising: deinterleaving the fourth sequence based on the first length to obtain 2 i The second sequence.
[0026] In one possible implementation, the fourth sequence is de-interleaved based on the first length to obtain 2. i A second sequence includes: when the first quantity is greater than or equal to the second quantity, concatenating all bits at the position of the value corresponding to the j-th second sequence in the combined sequence to form a second consecutive quantity of bits in the j-th second sequence; when the first quantity is less than the second quantity, concatenating a second consecutive quantity of bits from all bits at the position of the value corresponding to the j-th second sequence in the combined sequence to form the j-th second sequence; wherein, the first quantity is the number of bits included in the j-th second sequence, the first quantity is determined based on the first length, the second quantity is the number of values corresponding to the j-th second sequence in the combined sequence, and the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1), where 0 ≤ j ≤ 2. i -1.
[0027] In one possible implementation, the fourth sequence based on the first length and the i-th layer, along with deinterleaving, yields 2. i A second sequence, including: deinterleaving the fourth sequence to obtain 2 i A fifth sequence; wherein, the 2 i The deinterleaving positions of the fifth sequences are determined based on the output sequences from layer 0 to layer (i-1); for the 2 i The fifth sequence is concatenated to obtain the third sequence; the third sequence is then deconcatenated based on the first length to obtain 2. i The second sequence.
[0028] In one possible implementation, the fourth sequence is de-interleaved to obtain the 2 i The fifth sequence includes: concatenating the bits at the first position corresponding to the j-th fifth sequence in the fourth sequence to obtain j fifth sequences; wherein, the first position corresponding to the j-th fifth sequence is the position of the value corresponding to the j-th fifth sequence in the combined sequence, and the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1).
[0029] In one possible implementation, i = 1, the value corresponding to the 0th fifth sequence is 0, and the value corresponding to the 1st fifth sequence is 1; i = 2, the value corresponding to the 0th fifth sequence is 01, the value corresponding to the 1st fifth sequence is 00, the value corresponding to the 2nd fifth sequence is 10, and the value corresponding to the 3rd fifth sequence is 11; i = 3, the values corresponding to the 0th to 7th fifth sequences are: 011, 010, 000, 001, 101, 100, 110, 111; i = 4, the values corresponding to the 0th to 15th fifth sequences are: 0111, 0110, 0100, 0101, 0001, 0000, 0010, 0011, 1011, 1010, 1000, 1001, 1101, 1100, 1110, 1111.
[0030] Thirdly, a communication device is provided, which can be a transmitting end as described in the first aspect, and the communication device has the functions of the transmitting end. The communication device is, for example, a functional module in the transmitting end, such as a baseband device or a chip system. Alternatively, the communication device can be a receiving end as described in the second aspect, and the communication device has the functions of the receiving end. The communication device is, for example, a functional module in the receiving end, such as a baseband device or a chip system.
[0031] In one optional implementation, the communication device includes a baseband device and a radio frequency device. In another optional implementation, the communication device includes a processing unit (sometimes also called a processing module) and a transceiver unit (sometimes also called a transceiver module). The transceiver unit is capable of transmitting and receiving functions. When the transceiver unit performs the transmitting function, it can be called a transmitting unit (sometimes also called a transmitting module), and when the transceiver unit performs the receiving function, it can be called a receiving unit (sometimes also called a receiving module). The transmitting unit and the receiving unit can be the same functional module, which is called the transceiver unit and can perform both transmitting and receiving functions; or, the transmitting unit and the receiving unit can be different functional modules, and the transceiver unit is a collective term for these functional modules.
[0032] In one possible implementation, the communication device further includes a storage unit (sometimes also called a storage module), and the processing unit is configured to couple with the storage unit and execute programs or instructions in the storage unit to enable the communication device to perform the functions of the transmitting end described in the first aspect or the functions of the receiving end described in the second aspect.
[0033] When this communication device is used at the transmitting end:
[0034] In one possible implementation, the processing unit is used to perform distribution matching on the first sequence of the i-th layer based on a first length, to obtain 2i A second sequence; wherein, the first length is used to indicate the length of the output sequence after distribution matching, the first length is related to the length of the output sequence of any layer and i, where i is an integer greater than or equal to 1; based on the 2 i The second sequence and interleaving process are used to obtain the output sequence of the i-th layer.
[0035] In one possible implementation, the first length is n / 2. i Or, the first length is n / 2 i The integer value; where n is the length of the output sequence of any layer.
[0036] In one possible implementation, the processing unit is specifically used to process the 2 i The second sequence is interleaved to obtain the output sequence of the i-th layer.
[0037] In one possible implementation, the processing unit is specifically configured to: when the first quantity is greater than or equal to the second quantity, interleave the bits of the j-th second sequence with a consecutive second quantity to the position of the corresponding value of the j-th second sequence in the combined sequence; when the first quantity is less than the second quantity, interleave the bits of the j-th second sequence with a consecutive first quantity of the corresponding value of the j-th second sequence in the combined sequence; wherein, the first quantity is the number of bits included in the j-th second sequence, the second quantity is the number of the corresponding value of the j-th second sequence in the combined sequence, and the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1), where 0 ≤ j ≤ 2. i -1.
[0038] In one possible implementation, the processing unit is specifically used to process the 2 i Concatenate the second sequences to obtain the third sequence; divide the third sequence into 2... i 2 subsequences; wherein, the 2 i The length of each subsequence is determined based on the output sequence from layer 0 to layer (i-1); the 2 i The 2 subsequences are interleaved to obtain the output sequence of the i-th layer; wherein, the 2 i The interleaving positions of each subsequence are determined based on the output sequences from layer 0 to layer (i-1).
[0039] In one possible implementation, the 2 i The length of each subsequence is determined based on the output sequence from layer 0 to layer (i-1), including: the length of the j-th subsequence is determined based on the number of values corresponding to the j-th subsequence in the combined sequence, wherein the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1), and 0 ≤ j ≤ 2.i -1.
[0040] In one possible implementation, the 2 i Interleaving the subsequences to obtain the output sequence of the i-th layer includes: interleaving the bits in the j-th subsequence to the positions of the corresponding values in the j-th subsequence in the combined sequence to obtain the output sequence of the i-th layer; wherein, the combined sequence is obtained by combining the output sequences from the 0th layer to the (i-1)th layer, and 0 ≤ j ≤ 2. i -1.
[0041] When this communication device is used at the receiving end:
[0042] In one possible implementation, the processing unit is used for deinterleaving based on the first length, the fourth sequence of the i-th layer, and 2... i A second sequence; the first length is used to indicate the length of the output sequence after distribution matching, or to indicate the length of the input sequence after distribution matching; the first length is related to the length of the fourth sequence and i, where i is an integer greater than or equal to 1; based on the 2 i The second sequence and solution distribution are matched and processed to obtain the first sequence of the i-th layer.
[0043] In one possible implementation, the first length is n / 2. i Or, the first length is n / 2 i The integer value; where n is the length of the fourth sequence.
[0044] In one possible implementation, the processing unit is specifically used to deinterleave the fourth sequence based on the first length, to obtain 2 i The second sequence.
[0045] In one possible implementation, the processing unit is specifically configured to: when the first quantity is greater than or equal to the second quantity, concatenate all bits at the position of the value corresponding to the j-th second sequence in the combined sequence to obtain a second consecutive number of bits in the j-th second sequence; when the first quantity is less than the second quantity, concatenate a second consecutive number of bits from all bits at the position of the value corresponding to the j-th second sequence in the combined sequence to obtain the j-th second sequence; wherein, the first quantity is the number of bits included in the j-th second sequence, the first quantity is determined based on the first length, the second quantity is the number of values corresponding to the j-th second sequence in the combined sequence, and the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1), where 0 ≤ j ≤ 2. i -1.
[0046] In one possible implementation, the processing unit is specifically used to deinterleave the fourth sequence to obtain 2 i A fifth sequence; wherein, the 2 i The deinterleaving positions of the fifth sequences are determined based on the output sequences from layer 0 to layer (i-1); for the 2 i The fifth sequence is concatenated to obtain the third sequence; the third sequence is then deconcatenated based on the first length to obtain 2. i The second sequence.
[0047] In one possible implementation, the processing unit is specifically used to concatenate the bits at the first position corresponding to the j-th fifth sequence in the fourth sequence to obtain j fifth sequences; wherein, the first position corresponding to the j-th fifth sequence is the position of the value corresponding to the j-th fifth sequence in the combined sequence, and the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1).
[0048] Fourthly, a communication device is provided, including an interface circuit and a processor, and optionally, a memory. The memory stores a computer program. The processor is coupled to the memory and the interface circuit. When the processor reads the computer program or instructions, it causes the communication device to execute the method executed by the sending end in the first aspect, or the method executed by the receiving end in the second aspect. For example, the interface circuit is used to receive signals from other communication devices besides the communication device and transmit them to the processor, or to send signals from the processor to other communication devices besides the communication device. The processor, through logic circuits or executable code instructions, implements the method executed by the sending end in the first aspect, or the method executed by the receiving end in the second aspect.
[0049] In one possible implementation, the communication device is a chip or chip system.
[0050] Fifthly, a communication device is provided, including a processor, and optionally, a memory; the processor and the memory are coupled; the memory is used to store computer programs or instructions; the processor is used to execute part or all of the computer programs or instructions in the memory, and when the part or all of the computer programs or instructions are executed, it is used to implement the function of the transmitting end in the first aspect above, or to implement the function of the receiving end in the second aspect above.
[0051] In one possible implementation, the apparatus may further include a transceiver for transmitting signals processed by the processor or receiving signals input to the processor. The transceiver may perform the transmitting or receiving actions performed by the transmitting end in the first aspect, or the transmitting or receiving actions performed by the receiving end in the second aspect.
[0052] In one possible implementation, the processing unit in the third aspect can be implemented by the processor, the storage unit in the third aspect can be implemented by the memory, and the transceiver unit in the third aspect can be implemented by the transceiver.
[0053] In one possible implementation, the communication device is a chip or chip system.
[0054] Sixthly, a communication system is provided, comprising a transmitting end as described in the first aspect and a receiving end as described in the second aspect. For example, the transmitting end can be implemented using the communication apparatus described in the fourth or fifth aspect. For example, the receiving end can be implemented using the communication apparatus described in the fourth or fifth aspect.
[0055] In a seventh aspect, a computer-readable storage medium is provided for storing a computer program or instructions that, when executed, cause the methods of the first aspect or the second aspect to be implemented.
[0056] Eighthly, a computer program product containing instructions is provided, which, when run on a computer, causes the method in the first aspect above to be implemented, or causes the method in the second aspect above to be implemented. Attached Figure Description
[0057] Figure 1a is a schematic diagram of the architecture of a communication system provided in an embodiment of this application;
[0058] Figure 1b is a schematic diagram of an inter-device communication process provided in an embodiment of this application;
[0059] Figure 1c is a schematic diagram of a probability shaping method provided in an embodiment of this application;
[0060] Figure 1d is a schematic diagram of a constellation distribution after probability shaping provided in an embodiment of this application;
[0061] Figure 1e is a schematic diagram of a target distribution provided in an embodiment of this application;
[0062] Figure 2 is a schematic flowchart of a communication method provided in an embodiment of this application;
[0063] Figure 3 is a schematic diagram of a probability shaping process provided in an embodiment of this application;
[0064] Figures 4a, 4b, 4c, 4d, 4e, and 4f are schematic diagrams of a probability-formed constellation distribution provided in an embodiment of this application.
[0065] Figure 5 is a structural diagram of a communication device provided in an embodiment of this application;
[0066] Figure 6 is a structural diagram of a communication device provided in an embodiment of this application. Detailed Implementation
[0067] The technical solution of this application can be applied to various wireless communication systems, including but not limited to fourth-generation (4G) mobile communication technology systems (also known as long term evolution (LTE) systems), fifth-generation (5G) mobile communication technology systems (also known as new radio (NR) systems), or future mobile communication systems, etc., without any specific limitations.
[0068] Furthermore, the technical solutions provided in this application can be applied to device-to-device (D2D) scenarios, such as NR-D2D scenarios, or to vehicle-to-everything (V2X) communication scenarios, such as NR-V2X scenarios. For example, they can be used in fields such as intelligent driving, assisted driving, or intelligent connected vehicles. As another example, the technical solutions provided in this application can also be applied to factory manufacturing scenarios.
[0069] Furthermore, the technical solutions provided in this application can be applied to scenarios including but not limited to: terrestrial cellular communication, non-terrestrial network (NTN), satellite communication, high altitude platform station (HAPS) communication, integrated access and backhaul (IAB) communication, and reconfigurable intelligent surface (RIS) communication.
[0070] Figure 1a is a schematic diagram of the architecture of the communication system applied in an embodiment of this application. The communication system 1000 shown in Figure 1a includes a wireless access network 100 and a core network 200. Optionally, the communication system 1000 also includes an Internet 300. The wireless access network 100 may include at least one network device (110a and 110b in Figure 1a) and at least one terminal device (120a-120j in Figure 1a). The terminal device is wirelessly connected to the network device, and the network device is wirelessly or wiredly connected to the core network 200. The core network device and the network device may be independent physical devices, or the functions of the core network device and the logical functions of the network device may be integrated on the same physical device, or a single physical device may integrate some of the functions of the core network device and some of the functions of the network device. Terminal devices and network devices can be interconnected via wired or wireless means. Figure 1a is only a schematic diagram; the communication system may also include other network devices, such as wireless relay devices and wireless backhaul devices, which are not shown in Figure 1a.
[0071] The radio access network 100 can be a cellular system related to the 3rd generation partnership project (3GPP), such as 4G, 5G, or evolution systems beyond 5G (e.g., 6G mobile communication systems). The radio access network 100 can also be an open radio access network (open RAN, O-RAN, or ORAN) or a cloud radio access network (CRAN). The radio access network 100 can also be a communication system that integrates two or more of the above systems.
[0072] Network devices are nodes in a radio access network (RAN), also known as access network devices or RAN nodes (or devices). Network devices help terminal devices achieve wireless access. Multiple network devices in the communication system 1000 can be nodes of the same type or different types.
[0073] In one possible scenario, network equipment can be a base station, an evolved NodeB (eNodeB), a transmitting and receiving point (TRP), a transmitting point (TP), a next-generation NodeB (gNB), a next-generation base station in a 6G mobile communication system, a base station in a future mobile communication system, an access point (AP) in a satellite, an integrated access and backhaul (IAB) node, or network equipment in a mobile switching center non-terrestrial network (NTN) communication system. This means it can be deployed on high-altitude platforms or satellites. Network equipment can be a macro base station (e.g., 110a in Figure 1a), a micro base station or indoor station (e.g., 110b in Figure 1a), a relay node or donor node, or a radio controller in a CRAN scenario. Network equipment can also function as a base station in device-to-device (D2D) communication, vehicle-to-everything (V2X) communication, drone communication, or machine-to-machine (M2M) communication. Optionally, network equipment can also be a server, wearable device, vehicle, or in-vehicle equipment. For example, the access network equipment in V2X technology can be a roadside unit (RSU).
[0074] In another possible scenario, multiple network devices collaborate to assist terminal devices in achieving wireless access, with each network device implementing a portion of the base station's functions. For example, network devices can be one or more of the following: a central unit (CU), a distributed unit (DU), a CU-control plane (CP), a CU-user plane (UP), or a radio unit (RU). The CU and DU can be separately configured (i.e., physically separate) or included simultaneously in the same network element, such as a baseband unit (BBU); this application does not impose limitations on this. The RU can be included in radio equipment or radio units, such as a remote radio unit (RRU), an active antenna unit (AAU), or a remote radio head (RRH). It is understood that network devices can be CU nodes, DU nodes, or devices comprising both CU and DU nodes. Furthermore, the CU can be classified as a network device in the access network (RAN) or a network device in the core network (CN); this is not limited here. CU and DU can be understood as a logical functional division of a base station. Physically, CU and DU can be separate or deployed together; this application does not specifically limit this. One CU can connect to one DU, or multiple DUs can share one CU, which can save costs and facilitate network expansion. Furthermore, CU includes CU-CP and CU-UP. CU-CP is connected to the DU via F1-C (control plane), and CU-UP is connected to the DU via F1-U (user plane). CU-CP and CU-UP are connected via the E1 interface. CU-CP represents the gNB connected to the core network via the Ng interface.
[0075] In different systems, CU (or CU-CP and CU-UP), DU, or RU may have different names, but those skilled in the art will understand their meaning. For example, in an ORAN system, CU can also be called O-CU (open CU), DU can also be called O-DU, CU-CP can also be called O-CU-CP, CU-UP can also be called O-CU-UP, and RU can also be called O-RU. For ease of description, this application uses CU, CU-CP, CU-UP, DU, and RU as examples. Any of the units among CU (or CU-CP, CU-UP), DU, and RU in this application can be implemented through software modules, hardware modules, or a combination of software and hardware modules.
[0076] A terminal device is a device with wireless transceiver capabilities, capable of sending signals to or receiving signals from network devices. Terminal devices include, but are not limited to, terminal equipment, user equipment (UE), mobile stations, and mobile terminals. Terminal devices can be widely used in various scenarios, such as device-to-device (D2D), vehicle-to-everything (V2X) communication, machine-type communication (MTC), the Internet of Things (IoT), virtual reality, augmented reality, industrial control, autonomous driving, telemedicine, smart grids, smart furniture, smart offices, smart wearables, intelligent transportation, and smart cities. Specifically, terminal devices can be mobile phones, tablets, computers with wireless transceiver capabilities, wearable devices, vehicles, aircraft, ships, robots, robotic arms, smart home devices, etc. The embodiments of this application do not limit the specific technologies or device forms used in the terminal devices.
[0077] Network devices and terminal devices can be fixed in location or mobile. They can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; they can also be deployed on water; and they can be deployed on aircraft, balloons, and artificial satellites. The embodiments of this application do not limit the application scenarios of the network devices and terminal devices.
[0078] The roles of network devices and terminal devices can be relative. For example, the helicopter or drone 120i in Figure 1a can be configured as a mobile network device. For terminal devices 120j that access the wireless access network 100 through 120i, terminal device 120i is a network device; however, for network device 110a, 120i is a terminal device, meaning that 110a and 120i communicate via a wireless air interface protocol. Of course, 110a and 120i can also communicate via a network device-to-network device interface protocol. In this case, relative to 110a, 120i is also a network device. Therefore, both network devices and terminal devices can be collectively referred to as communication devices. 110a and 110b in Figure 1a can be called communication devices with network device functions, and 120a-120j in Figure 1a can be called communication devices with terminal device functions.
[0079] Communication between network devices and terminal devices, between network devices, and between terminal devices can be conducted using licensed spectrum, unlicensed spectrum, or both simultaneously. Communication can be conducted using spectrum below 6 GHz, spectrum above 6 GHz, or both simultaneously. The embodiments of this application do not limit the spectrum resources used for wireless communication.
[0080] In the embodiments of this application, the functions of the network device can be executed by modules (such as chips) within the network device, or by a control subsystem that includes network device functions. This control subsystem, including network device functions, can be a control center in the aforementioned application scenarios such as smart grids, industrial control, intelligent transportation, and smart cities. Similarly, the functions of the terminal device can be executed by modules (such as chips or modems) within the terminal device, or by a device that includes terminal device functions.
[0081] Figure 1b illustrates a flowchart of inter-device communication. At the transmitting end, the source signal is source-coded to obtain a payload (also called a transport block). The payload is then channel-coded to obtain multiple encoded bits. These bits are then modulated to obtain multiple modulated symbols (also called modulation symbols or complex symbols). The transmitting end sends these modulation symbols. At the receiving end, the modulated signal undergoes demodulation, channel decoding, and source recovery processes to obtain the destination signal. Based on the destination signal, the receiving end can acquire useful information.
[0082] Modulation can be understood as mapping multiple bits to the same channel symbol. Common modulation methods include quadrature amplitude modulation (QAM), offset quadrature amplitude modulation (OQAM), binary phase shift keying (BPSK), amplitude shift keying (ASK), pi / 2-BPSK, QPSK, pi / 4-QPSK, 16QAM, 64QAM, 256QAM, 1024QAM, and APSK, etc.
[0083] Table 1 below illustrates the bit mapping relationship in an 8-ASK modulation scheme. During the modulation process, the modulation symbol x is determined based on bits b0, b1, and b2, and is used as the modulation symbol to be transmitted.
[0084] Table 1:
[0085] Since the energy (energy is the square of X) of different modulation symbols in higher-order modulation may be different, average energy can be saved by sending more low-energy modulation symbols and fewer high-energy modulation symbols.
[0086] Probabilistic shaping techniques can increase the probability of low-energy symbols (modulated symbols) and decrease the probability of high-energy symbols. Probabilistic shaping techniques include processes such as distribution matching, interleaving, channel coding, and modulation.
[0087] Figure 1c illustrates a schematic diagram of probabilistic shaping. A precoder is cascaded before the channel encoder to map (mapping can be understood as "shaping") the information bits to a sequence that follows a specific distribution; the precoder can also be called a distribution matcher (DM), and this mapping process is also called a transformation. Then, during the channel coding process, systematic coding is used so that the sequence satisfying the specific distribution ultimately appears directly in the coded sequence, thereby shaping the modulation symbols. As shown in 1c, the payload 1 to k is divided into two parts: one part is the 1st to k1st (k1≤k) payloads, and the other part is the k1+1th to kth payloads; the k1+1th to kth payloads undergo distribution matching, interleaving, and other processing to obtain a new bit sequence. The new bit sequence is then coded and modulated with the 1st to k1st payloads. It should be noted that the output bit sequence of the distributed matcher can have the same length as the input bit sequence, or the length of the output bit sequence can be greater than the length of the input bit sequence. For example, if the length of the input bit sequence is 5, the length of the output bit sequence can be 8.
[0088] Figure 1d shows a schematic diagram of constellation distribution after probability shaping. It can be seen that the probability of low-energy symbols appearing is higher than that of high-energy symbols.
[0089] The following describes the distribution matching and interleaving processes:
[0090] When performing distribution matching on a bit sequence, this part of the bit sequence (e.g., the (n+1)th to the kth payload) is divided into multiple groups, each group corresponding to one layer. The number of layers is set to m, where m is an integer greater than or equal to 2. Distribution matching can be performed on every layer, or only on some layers. For example, if m = 2, distribution matching can be performed on both layers 0 and 1, or distribution matching can be performed only on layer 1 without layer 0.
[0091] The input and output sequences of a layer that does not perform distribution matching are identical. If distribution matching is performed on the i-th layer, then the number of distribution matchers in the i-th layer is 2. i There are n modulated symbols; where 0 ≤ i ≤ m-1. Furthermore, the length of the output sequence of each layer is n, and n is related to the number of modulation symbols.
[0092] The following presents several examples of existing technologies to facilitate understanding of distribution matching and interleaving.
[0093] First, let's explain the letters involved in the example:
[0094] c represents the output sequence of the pre-encoder, and u represents the input sequence of the pre-encoder; c 0,0 c represents the 0th element in the input sequence of layer 0. 0,7 This represents the 7th element in the output sequence of layer 0;
[0095] c 1,0 c represents the 0th element in the output sequence of layer 1. 1,7 This represents the 7th element in the output sequence of the first layer;
[0096] This represents the 0th element in the input sequence of layer 0. This represents the 7th element in the input sequence of layer 0;
[0097] This represents the 0th element in the input sequence of layer 1. This represents the 7th element in the input sequence of layer 1.
[0098] Example 1: n=8, m=3, no distribution matching is performed in layers 0 and 1, and layer 2 includes 4 distribution matchers (DM). 2,0 DM 2,1 DM 2,2 DM 2,3 ).
[0099] The input sequence and output sequence of layer 0 are the same:
[0100] The input sequence and output sequence of the first layer are the same:
[0101] Based on the combined sequences (c) corresponding to the output sequences of (01, 00, 10, 11) at layers 0 and 1 respectively, 0,j c 1,j The quantity in the distribution determines the length of the output sequence of the four distribution matchers in the second layer. Figure 1e illustrates a schematic diagram of a target distribution. It can be seen that: the quantity of 01 in the combined sequence corresponding to the output sequence of the 0th and 1st layers is 2, located at the 0th and 4th positions respectively; the quantity of 00 in the combined sequence is 2, located at the 1st and 6th positions respectively; the quantity of 10 in the combined sequence is 2, located at the 2nd and 5th positions respectively; and the quantity of 11 in the combined sequence is 2, located at the 3rd and 7th positions respectively. Therefore, the length of the output sequence of the four distribution matchers in the second layer is: n′ 2,0 =n′ 2,1 =n′ 2,2 =n′ 2,3 =2.
[0102] The lengths of the input sequences for the four distribution matchers are: K 2,0 =2,K 2,1 =1,K 2,2 =1,K 2,3 =1, where the lengths of the input sequences and output sequences of the distribution matcher are related. Based on the lengths of the input sequences, the input sequences of the four distribution matchers are determined, and the four input sequences are set as follows:
[0103] The four input sequences are processed by four distribution matchers (DMs). 2,0 DM 2,1 DM 2,2 DM 2,3 The resulting four output sequences are as follows:
[0104] Output sequence The combined sequence (c) corresponding to the output sequences of layer 0 and layer 1 interleaved. 0,j c 1,j The positions j = {0, 4} in the array have values of 0 or 1.
[0105] Output sequence Intertwined to (c 0,j c 1,j The position j = {1, 6} in the array has a value of 00.
[0106] Output sequence Intertwined to (c 0,j c 1,j The position j = {2, 5} in the array has a value of 10.
[0107] Output sequence Intertwined to (c 0,j c 1,j The position j = {3, 7} in the array has a value of 11.
[0108] Thus, the output sequence of the second layer (c) is obtained. 2,0 c 2,7 ) = (00000010).
[0109] Example 2: n=8, m=3, no distribution matching is performed in layers 0 and 1, and layer 2 includes 4 distribution matchers (DM). 2,0 DM 2,1 DM 2,2 DM 2,3 ).
[0110] The input sequence and output sequence of layer 0 are the same:
[0111] The input sequence and output sequence of the first layer are the same:
[0112] Based on the combined sequences (c) corresponding to the output sequences of (01, 00, 10, 11) at layers 0 and 1 respectively, 0,j c 1,j The number of 0s and 1s in (c) determines the length of the output sequences of the four distribution matchers in the second layer. 0,j c 1,j The quantity in (c) is 1,00 in (c) 0,j c 1,j The quantity in (c) is 2, and 10 is in (c) 0,j c 1,j The quantity in (c) is 2, and 11 is in (c) 0,j c 1,j If the quantity in ) is 3, then the length of the output sequence of the 4 distribution matchers in the second layer is: n′ 2,0 =1, n′ 2,1 =2, n′ 2,2 =2, n′ 2,3 =3.
[0113] The lengths of the input sequences for the four distribution matchers are K. 2,0 =1,K 2,1 =1,K 2,2 =1,K 2,3 =2; The four input sequences are set as follows: These four input sequences are respectively processed by DM 2,0 DM 2,1 DM 2,2DM 2,3 The four output sequences are as follows:
[0114] Output sequence Intertwined to (c 0,j c 1,j The position j = {0} in the array has a value of 0 or 1.
[0115] Output sequence Intertwined to (c 0,j c 1,j The position j = {1, 6} in the array has a value of 00.
[0116] Output sequence Intertwined to (c 0,j c 1,j The position j = {2, 5} in the array has a value of 10.
[0117] Output sequence Intertwined to (c 0,j c 1,j The position j = {3, 4, 7} in the array has a value of 11.
[0118] Thus, the output sequence of the second layer (c) is obtained. 2,0 c 2,7 ) = (00001011).
[0119] The two examples above are both based on m=3. If m=2, layer 0 does not perform distribution matching, and the lengths of the output sequences of the two distribution matchers in layer 1 are determined based on the number of (0, 1) in the output sequence of layer 0. If the output sequence of layer 0 is 00110101, which includes 4 zeros and 4 ones, then the lengths of the output sequences of the two distribution matchers in layer 1 are both 4. If the output sequence of layer 0 is 00100101, which includes 5 zeros and 3 ones, then the lengths of the output sequences of the two distribution matchers in layer 1 are 3 and 5, respectively.
[0120] As can be seen, in the above scheme, the length of the output sequence of the distribution matcher in layer i is related to the content of the output sequences from layer 0 to layer (i-1), which will cause the following problems:
[0121] On the one hand, the length of the output sequence of the distribution matcher in the i-th layer is not fixed, and the hardware needs to support multiple combinations of the lengths of the output and input sequences, which increases the hardware complexity.
[0122] On the other hand, when performing distribution matching on the i-th layer, the output sequences from layer 0 to the (i-1)-th layer need to be known first. If distribution matching is performed on multiple layers, it needs to be executed serially, resulting in high latency. For example, when m=3, distribution matching is not performed on layer 0, but on layers 1 and 2. Based on the output sequence of layer 0, the lengths of the output sequences of the two distribution matchers in layer 1 are determined, and distribution matching is performed on layer 1 based on the corresponding lengths to obtain the output sequence of layer 1. Then, based on the output sequences of layer 0 and layer 1, the lengths of the output sequences of the four distribution matchers in layer 2 are determined, and distribution matching is performed on layer 2 based on the corresponding lengths.
[0123] Based on this, this application provides a communication method in which, when performing distribution matching at the i-th layer, the length of the output sequence after performing distribution matching is determined based on the length n of the output sequence of any layer and the value of i. Then, distribution matching is performed on the sequence of the i-th layer based on the length of the output sequence, and interleaving can be performed thereafter to obtain the output sequence of the i-th layer.
[0124] In this method, the length of the output sequence after distribution matching at layer i is no longer determined based on the output sequences from layer 0 to layer (i-1), but rather based on the length n of the output sequence at any layer and the value of i. This limits the types of lengths for the output sequences after distribution matching, and also limits the length of the input sequences for distribution matching, thus reducing hardware complexity. Furthermore, when performing distribution matching on multiple layers, these layers can perform the matching in parallel, reducing latency.
[0125] The relevant terms used in the embodiments of this application will be explained below. It should be noted that these explanations are for the purpose of making the embodiments of this application easier to understand, and should not be regarded as a limitation on the scope of protection claimed by this application.
[0126] (1) “Sequence” and “bit sequence” can be interchanged; “length of sequence” and “number of bits in sequence” can be interchanged; “distribution matching”, “precoding”, “distribution transformation”, “shaping”, etc. can be interchanged; “interleaving” and “position transformation” can be interchanged.
[0127] (2) Target distribution: Used to represent the specific value of the j-th sequence (e.g., the second sequence of this application, or the subsequence after cascading, or the distribution matcher), where 0≤j≤2 i -1, the target distribution of the i-th layer has 2 i kind.
[0128] For example, if i = 1, the i-th layer includes two distribution matchers, and the values corresponding to the two distribution matchers are 0 and 1. For example, the value corresponding to the 0th distribution matcher is 0, and the value corresponding to the 1st distribution matcher is 1; or, for another example, the value corresponding to the 0th distribution matcher is 1, and the value corresponding to the 1st distribution matcher is 0.
[0129] For example, if i = 2, the i-th layer includes 4 distribution matchers, and the values corresponding to the 4 distribution matchers are: 00, 01, 11, and 10 (in no particular order). For example, the value corresponding to the 0th distribution matcher is 01, the value corresponding to the 1st distribution matcher is 00, the value corresponding to the 2nd distribution matcher is 10, and the value corresponding to the 3rd distribution matcher is 11; please refer to the previous introduction about Figure 1e; the order can also be changed.
[0130] For example, if i = 3, the i-th layer includes 8 distributed matchers. The values corresponding to the 0th to 7th distributed matchers are 011, 010, 000, 001, 101, 100, 110, and 111, respectively, in no particular order.
[0131] For example, if i = 4, the i-th layer includes 16 distributed matchers. The values corresponding to the 0th to the 15th distributed matchers are: 0111, 0110, 0100, 0101, 0001, 0000, 0010, 0011, 1011, 1010, 1000, 1001, 1101, 1100, 1110, 1111, in no particular order.
[0132] To better illustrate the embodiments of this application, the methods provided by the embodiments of this application are described below with reference to the accompanying drawings. Unless otherwise specified below, the steps indicated by dashed lines in the accompanying drawings corresponding to the various embodiments of this application are optional steps. It should be noted that the technical details of the multiple embodiments provided in this application can be referenced to each other, each embodiment described below can exist independently, and multiple embodiments can also be combined with each other as an embodiment in the absence of logical errors.
[0133] Figure 2 is a flowchart illustrating a communication method provided in an embodiment of this application. Figure 2 uses the interaction between a sending end and a receiving end as an example to illustrate the method. The sending end can be the terminal device or network device shown in Figure 1a, and the receiving end can be the terminal device or network device shown in Figure 1a. However, this embodiment does not limit the executing entity of the interaction. For example, the method can be executed by a module (e.g., a chip, chip system, or processor) applied to a terminal device or network device, or by a logical node, logical module, or software that implements all or part of the functions of the terminal device or network device.
[0134] Step 201: The sending end performs distribution matching on the first sequence of the i-th layer based on the first length to obtain 2 i A second sequence; wherein the first length is used to indicate the length of the output sequence after distribution matching, and the first length is related to the length n of the output sequence of any layer and the i.
[0135] Let m be the number of bit layers, n be the length of the output sequence of any layer (including the i-th layer), and n be the length of the first sequence less than or equal to n, where n is related to the number of modulation symbols.
[0136] For the i-th layer (0≤i≤m-1), distribution matching can be performed or not. When distribution matching is not performed for the i-th layer, n bits are input to the i-th layer. The output sequence of the i-th layer (c) can be obtained directly. i,0 c i,n-1 The output sequence of the i-th layer is the same as the input sequence of the i-th layer.
[0137] When performing distribution matching in the i-th layer, the i-th layer includes 2 i A distributed matcher, based on 2 i The length of the input sequence of each distribution matcher divides the first sequence of the i-th layer into 2... i In the group, the j-th (0≤j≤2) i -1) Input the j-th group (K) into the distribution matcher i,j bits After processing by the j-th distribution matcher, the second sequence output by the j-th distribution matcher is obtained. This can be called the j-th second sequence. Where, 2 i The length of the input sequence of each distribution matcher is based on 2 i The length of the output sequence of each distribution matcher is determined. Based on the combination of the lengths of the output and input sequences, two are selected. i A suitable distribution matcher.
[0138] Step 201 can specifically be: based on the 2 of the i-th layer i The first length of the output sequence of each distribution matcher is used to perform distribution matching on the first sequence of the i-th layer, resulting in 2 i The second sequence is the output sequence of the distribution matcher.
[0139] In one possible implementation, the first length is n / 2. i Or the first length is n / 2 i The rounded value can be obtained by rounding up, rounding down, or rounding to the nearest integer. The sender can use n and i, and the formula n / 2 as the basis. i ,or or Determine the first length; or the sender may store the relationship between n, i and the first length in a table or other way, and the sender can find the first length in the table / relationship based on n and i.
[0140] For example, when n / 2 i If it is an integer, then 2 i The length of each second sequence is n / 2 i When n / 2 i If it is not an integer, then 2 i In the second sequence 2 i -1 The length of the second sequence is n / 2 i The length of a second sequence after rounding is: n minus 2. i -1 is the length of the second sequence. For example, if n = 9 and i = 2, then in the 4 second sequences, the length of 3 second sequences is 2 and the length of 1 second sequence is 3.
[0141] Optionally, if distribution matching is not performed from level 0 to level (i-1), the first length is n / 2. i Or the first length is n / 2 i The integer value.
[0142] Optionally, if distribution matching is performed in at least one of the layers from layer 0 to layer (i-1), the first length corresponding to the j-th second sequence is determined based on the average (or the rounded value) of the number of values corresponding to the j-th second sequence in the combined sequence, wherein the combined sequence is obtained by combining the output sequences from the layers 0 to (i-1). The number of values corresponding to the j-th second sequence in the combined sequence can be referred to in the description of Figure 1e, and will not be elaborated here. The average of these numbers can be understood as follows: in the same scenario, for example, when the values of n and m are the same, it is the same whether distribution matching is performed in one layer or not. A large number of tests are conducted to obtain the number corresponding to each value, and the average of the numbers corresponding to the same values is calculated. If the value is divisible, the average is directly used as the length of the sequence after distribution matching. If the value is not divisible, the average is rounded down, and the rounded value is used as the length of the output sequence after distribution matching.
[0143] Alternatively, the average number of 1s in the combined sequence can be calculated based on the input and output lengths of the distribution matcher. For example, when the input length of the i-th layer is K and the output length is n, the average number of 1s in the distribution matcher can be A, where A satisfies... The average value of 0 in the distribution matcher can be nA.
[0144] For example, with m=2 and n=1024, layer 0 does not perform distribution matching, while layer 1 does. In one test, the number of values of 0 in the output sequence of layer 0 is 520, and the number of values of 1 in the output sequence of layer 0 is 504. In another test, the number of values of 0 in the output sequence of layer 0 is 510, and the number of values of 1 in the output sequence of layer 0 is 514. In yet another test, the number of values of 0 in the output sequence of layer 0 is 508, and the number of values of 1 in the output sequence of layer 0 is 516. Therefore, the average number of values of 0 in the output sequence of layer 0 is approximately 517, and the average number of values of 1 in the output sequence of layer 0 is approximately 507. Thus, the lengths of the output sequences of the two distribution matchers in layer 1 are 517 and 507, respectively.
[0145] In one possible implementation, numerous tests are conducted on different scenarios. The test results are then calculated and recorded, essentially saving the association between each scenario and the length of the output sequence after distribution matching. This can be done, for example, by saving the data in a table. Before step 201, the sending end can, based on the first scenario (i.e., the value of m, the value of i, and optionally whether distribution matching is performed from layer 0 to layer i, or even specifying which layer), find the length of the output sequence associated with the first scenario based on the pre-saved association between each scenario and the length of the output sequence after distribution matching. Then, based on the found length (i.e., the first length), distribution matching is performed on the sequence of layer i.
[0146] Step 202: The sending end, based on the above 2 i The second sequence and interleaving process are used to obtain the output sequence of the i-th layer.
[0147] Optionally, step 203a: The transmitting end performs channel coding and modulation on the output sequence of layer m.
[0148] Optionally, in step 203b: the transmitting end sends the modulated signal, and correspondingly, the receiving end receives the modulated signal.
[0149] Once the output sequence of layer m is obtained, channel coding, modulation, and other operations can be performed based on the output sequence of layer m, and then the data can be sent out.
[0150] For example, the output sequence of m layers (each layer's output sequence is of length n), one symbol sequence of length n (the n-length symbol sequence is used to determine the sign of the modulation symbol), and f (f≥0) other amplitude sequences of length n are modulated to obtain the symbol sequence. In this sequence, some or all of the bits in the symbol sequence and other amplitude sequences can be parity bits obtained through channel coding (e.g., forward error correction (FEC) coding). Additionally, other amplitude sequences can be empty, i.e., f = 0.
[0151] During modulation, Gray mapping modulation can be used to achieve 2... m′ Modulation is performed using -ASK symbols; where m′=m+f+1, a sequence of n symbols corresponds to bit b0 in the Gray map, and the output sequence of the m layers and other amplitude sequences correspond to bits b1, …, b in the Gray map. m′-1 .
[0152] In this method, the length of the output sequence after distribution matching at layer i is no longer determined based on the output sequences from layer 0 to layer (i-1), but rather based on the length n of the output sequence at any layer and the value of i. This limits the types of lengths for the output sequences after distribution matching, and also limits the length of the input sequences for distribution matching, reducing hardware complexity. Furthermore, when performing distribution matching on multiple layers, these layers can perform the matching in parallel, reducing latency.
[0153] Optionally, step 203c: The receiver demodulates and decodes the received signal to obtain m fourth sequences.
[0154] Under ideal channel conditions, the m fourth sequences are the output sequences of the m layers in step 203a.
[0155] Step 204: Based on the first length, the fourth sequence of the i-th layer, and deinterleaving, obtain 2 i The second sequence.
[0156] At the transmitting end, the first length is used to indicate the length of the output sequence after distribution matching; at the receiving end, the first length is used to indicate the length of the input sequence after distribution matching, that is, the length of the second sequence is the first length.
[0157] The receiver determines the first length in a similar way to the sender. For example, the receiver can base it on n and i, and the formula n / 2. i ,or or The first length can be determined by: 1. Determining the first length; 2. Storing the relationship between n, i, and the first length in a table or other manner at the receiving end, allowing the sending end to find the first length based on n and i in the table / relationship. For example, the receiving end can store the relationship between each scene and the length of the output sequence after distribution matching (or the length of the input sequence after dedistribution matching). Finding the length of the output sequence after distribution matching associated with the first scene (or the length of the input sequence after dedistribution matching) is the first length.
[0158] Step 205: Based on 2 i The second sequence and solution distribution are matched and processed to obtain the first sequence of the i-th layer.
[0159] Input the j-th second sequence into the j-th solution distribution matcher to obtain the sequence output by the j-th solution distribution matcher; then input the 2... i The sequences output by the solution distribution matchers are concatenated (e.g., concatenated in chronological order) to obtain the first sequence of the i-th layer.
[0160] The receiving end performs the reverse (opposite) operation to the sending end, and the two ends achieve the same technical effect.
[0161] The following describes step 202 (the sending end is based on the above 2). i One possible implementation of (a second sequence and interleaving to obtain the output sequence of the i-th layer): The transmitter performs interleaving on the second... i The second sequence is interleaved to obtain the output sequence of the i-th layer.
[0162] Setting: The number of bits included in the second sequence is the first quantity, or in other words, the length of the second sequence is the first length; the number of values corresponding to the second sequence in the combined sequence is the second quantity; the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1). For an explanation of the combined sequence, please refer to Figure 1e, where 0 ≤ j ≤ 2. i -1.
[0163] When the first and second quantities are the same, the bits in the j-th second sequence are interleaved to the position of the corresponding value in the combined sequence to obtain the output sequence of the i-th layer.
[0164] In all embodiments of this application, the interlacing can be done sequentially in a particular order.
[0165] When the first quantity is greater than the second quantity, the second number of consecutive bits in the j-th second sequence are interleaved to the position of the corresponding value of the j-th second sequence in the combined sequence. For example, the first number of bits in the j-th second sequence are interleaved to the position of the corresponding value of the j-th second sequence in the combined sequence, or the last number of bits in the j-th second sequence are interleaved to the position of the corresponding value of the j-th second sequence in the combined sequence. Of course, it is also possible to interleave the second number of bits located in the middle or any consecutive position in the j-th second sequence to the position of the corresponding value of the j-th second sequence in the combined sequence.
[0166] When the first quantity is less than the second quantity, the bits in the j-th second sequence are interleaved to positions where the value corresponding to the j-th second sequence is consecutively within the first quantity in the combined sequence. For example, the bits in the j-th second sequence are interleaved to positions where the value corresponding to the j-th second sequence is at the beginning of the combined sequence, or the bits in the j-th second sequence are interleaved to positions where the value corresponding to the j-th second sequence is at the end of the combined sequence. Of course, the bits in the j-th second sequence can also be interleaved to positions where the value corresponding to the j-th second sequence is in the middle or at any consecutive position in the combined sequence.
[0167] Then, interleave the remaining uninterleaved bits in the j-th second sequence to the remaining positions in the combined sequence corresponding to the value of the j-th second sequence.
[0168] For example, m=2, i=1, the first layer includes two distribution matchers. The length of the second sequence output by the 0th distribution matcher is 514, and the length of the second sequence output by the 1st distribution matcher is 510. The number of values corresponding to the 0th and 1st distribution matchers in the output sequence of the 0th layer is 512 each. The interleaving method is as follows:
[0169] The first 512 bits (or the last 512 bits, or the 2nd to 513th bits) of the second sequence output by the 0th distribution matcher are interleaved to the position of the value corresponding to the 0th distribution matcher in the output sequence of the 0th layer. There are still 2 bits left uninterleaved in the second sequence output by the 0th distribution matcher.
[0170] The second sequence (i.e., 510 bits) output by the first distribution matcher is interleaved into the first 510 positions (or the last 512 positions, or the 2nd to 511th positions) of the 512 positions in the output sequence of the 0th layer corresponding to the value of the first distribution matcher. The remaining 2 positions are used to place the remaining 2 bits in the second sequence output by the 0th distribution matcher. There are no restrictions on how these 2 bits are placed. For example, they can be placed in a specific order.
[0171] The corresponding deinterleaving method is as follows: Step 204: Based on the first length, the fourth sequence of the i-th layer, and the deinterleaving process, the 2 i The second sequence includes the following process:
[0172] For example, the receiving end deinterleaves the fourth sequence of the i-th layer based on the first length to obtain the 2 i The second sequence.
[0173] Let the number of bits included in the second sequence be the first number, or in other words, the length of the second sequence be the first length; and the number of values corresponding to the second sequence in the combined sequence be the second number.
[0174] If the first quantity and the second quantity are the same, concatenate all bits at the position of the value corresponding to the j-th second sequence in the combined sequence to form the j-th second sequence.
[0175] If the first quantity is greater than the second quantity, all bits at the position of the value corresponding to the j-th second sequence in the combined sequence are concatenated to form the second quantity of consecutive (e.g., at the beginning, the end, the middle, or any consecutive position) bits in the j-th second sequence.
[0176] If the first quantity is less than the second quantity, the second number of consecutive bits (e.g., those at the beginning, the end, the middle, or any consecutive position) of the value corresponding to the j-th second sequence in the combined sequence are concatenated to form the j-th second sequence.
[0177] Then, take the remaining bits from all the bits at the position of the value corresponding to the j-th second sequence in the combined sequence, and use them as the bits in the j-th second sequence.
[0178] The following describes step 202 (the sending end is based on the above 2). i Another possible implementation of (a second sequence and interleaving to obtain the output sequence of the i-th layer) includes the following steps:
[0179] Step 202a: The sending end transmits the 2 iThe second sequence is concatenated to obtain the third sequence.
[0180] 2 of the i-th layer i The output sequences of the distributed matchers can be concatenated into a third bit sequence of length n (a i,0 , ..., a i,n-1 For example, 2 i The second sequence can be cascaded in natural order (sequential order) (i.e.) ) is the third sequence (a i,0 , ..., a i,n-1 ).
[0181] Step 202b: The sending end divides the third sequence into 2 i Subsequences.
[0182] Among them, the 2 i The length of each subsequence is determined based on the output sequence from layer 0 to layer (i-1).
[0183] For example, the length of the j-th subsequence is determined based on the number of values corresponding to the j-th subsequence in the combined sequence, where the combined sequence is obtained by combining the output sequences from the 0th to the (i-1th)th layers. The third sequence is then arranged according to 2... i The lengths of the subsequences are divided into 2... i Subsequences.
[0184] Let the number of bits included in the j-th subsequence be n′. i,j , where n′ i,j Let n' be the number of values corresponding to the j-th subsequence in the combined sequences corresponding to the output sequences from level 0 to level (i-1); in other words, let n' be the number of values corresponding to the j-th subsequence in the combined sequences corresponding to the output sequences from level 0 to level (i-1). i,j , N i,0 =0, the Nth digit of the third sequence i,j Position to N i,j+1 -1 is used as the j-th subsequence. N i,j This represents the index of the first bit of the (j-1)th sequence in the i-th layer within the third concatenated sequence. Subsequences belonging to the same concatenated sequence may come from multiple distribution matchers; for example, the number of bits with a value of 0 in the 0th layer is n′. 0,0 =510, the number of bits with a value of 1 is n′ 0,1 =514, the 0th subsequence includes the first 510 bits of the concatenated third sequence (a 1,0 , ..., a 1,509 The first subsequence includes the remaining bits in the third sequence (a). 1,510 , ..., a1,1023 ). genus (a 1,510 , ..., a 1,1023 The first two bits a in ) 1,510 a 1,511 From the 0th distribution matcher, the remaining bits a 1,512 , ..., a 1,1023 From the first distribution matcher.
[0185] Step 202c: The sending end transmits the 2 i The subsequences are interleaved to obtain the output sequence of the i-th layer.
[0186] Among them, the 2 i The interleaving positions of each subsequence are determined based on the output sequences from layer 0 to layer (i-1).
[0187] For example, the position of the bit of the j-th subsequence in the output sequence of the i-th layer is determined based on the position of the value corresponding to the j-th subsequence in the combined sequence.
[0188] In other words, the bits in the j-th subsequence are interleaved (in sequence) to the positions of the corresponding values in the j-th subsequence in the combined sequence to obtain the output sequence of the i-th layer (c i,0 c i,n-1 ).
[0189] It should be noted that in steps 202b and 202c, the values corresponding to the j-th sequence are the same. This ensures that the number of bits included in the subsequence is consistent with the number of corresponding interleaving positions.
[0190] Figure 3 illustrates a probability shaping process applicable to the above example, where m=3. Layers 0 and 1 do not perform distribution matching, while layer 2 performs distribution matching and interleaving. The output sequence of layer 0 is the input sequence, and the output sequence of layer 1 is the input sequence. Layer 2 includes four distribution matchers. The first sequence of layer 2 is divided into four groups, and the four groups of bits are input into the four distribution matchers respectively. The second sequences output by the four distribution matchers are concatenated, and the partition length is determined based on the output sequences of layers 0 and 1. Based on the partition length, the concatenated sequence is divided into four sub-sequences. The interleaving position is determined based on the output sequences of layers 0 and 1, and the four sub-sequences are interleaved to obtain the output sequence of layer 2. The output sequences of layers 0, 1, and 2 are then subjected to channel coding, modulation, etc.
[0191] If for 2 iDirectly interleaving the second sequence may result in a discrepancy between the number of bits in the second sequence and the number of corresponding interleaving positions. For example, in layer 1, which includes two distribution matchers, the length of the second sequence output by the 0th distribution matcher is 514, and the length of the second sequence output by the 1st distribution matcher is 510. The number of values corresponding to the 0th and 1st distribution matchers in the output sequence of layer 0 is 512 each.
[0192] In this implementation, for 2 i After concatenating the second sequences, they are re-divided into subsequences, and then interleaved based on these subsequences. The division and interleaving processes use the same rules to ensure that the number of bits in each subsequence matches the number of corresponding interleaving positions. Additionally, before interleaving, an extra pair of 2... i The second sequence is concatenated and re-divided into 2. i The process of concatenating subsequences is very simple, with negligible latency. Even if multiple layers are concatenated, they do not affect each other. The total latency of re-dividing the concatenated third sequence into subsequences and interleaving based on these subsequences does not significantly increase compared to direct interleaving, because the rules used are consistent. Therefore, overall, this implementation does not increase latency.
[0193] Combining steps 202a, 202b, and 202c above, the following are two examples where n = 8 and m = 3.
[0194] Example a: Layer 0 and Layer 1 do not perform distribution matching, and the output sequence is equal to the input sequence. Layer 2 performs distribution matching.
[0195] The input sequence and output sequence of layer 0 are the same:
[0196] The input sequence and output sequence of the first layer are the same:
[0197] Based on the target distribution and n, four distribution matchers (DMs) are determined for the second layer. 2,0 DM 2,1 DM 2,2 DM 2,3 The length of the output sequence, for example, n 2,0 =n 2,1 =n 2,2 =n 2,3 =2.
[0198] The lengths of the input sequences are: K 2,0 =2,K 2,1 =1,K 2,2 =1,K2,3 =1; The input sequences are set as follows: These four input sequences are respectively processed by DM 2,0 DM 2,1 DM 2,2 DM 2,3 The four resulting second sequences are as follows:
[0199] Concatenate the four second sequences in order to obtain the third sequence (a). 2,0 , ..., a 2,7 ) = (00010000).
[0200] The third sequence is divided into four subsequences in sequence, where the lengths of the four subsequences are based on the combined sequence (c) corresponding to the output sequences of layers 0 and 1 (01, 00, 10, 11). 0,j c 1,j The quantity in (c) is determined. 01 in (c) 0,j c 1,j The quantity in (c) is 2.00. 0,j c 1,j The quantity in (c) is 2, and 10 is in (c) 0,j c 1,j The quantity in (c) is 2, and 11 is in (c) 0,j c 1,j If the quantity in ) is 2, then the lengths of the 4 subsequences are: n′ 2,0 =2, n′ 2,1 =2, n′ 2,2 =2, n′ 2,3 =2. For example, the four subsequences are:
[0201] a 2,0 a 2,1 =(00); a 2,2 a 2,3 =(01); a 2,4 a 2,5 =(00); a 2,6 a 2,7 = (00).
[0202] Interweave these 4 subsequences:
[0203] a 2,0 a 2,1 =(00) interweaves to (c 0,j c 1,j The positions j = {0, 4} in the array have values of 0 or 1.
[0204] a 2,2 a 2,3 =(01) interweaves to (c0,j c 1,j The position j = {1, 6} in the array has a value of 00.
[0205] a 2,4 a 2,5 =(00) interweaves to (c 0,j c 1,j The position j = {2, 5} in the array has a value of 10.
[0206] a 2,6 a 2,7 =(00) interweaves to (c 0,j c 1,j The position j = {3, 7} in the array has a value of 11.
[0207] Thus, the output sequence of the second layer (c) is obtained. 1,0 c 1,7 ) = (00000010).
[0208] Example b: Layer 0 and Layer 1 do not perform distribution matching, and the output sequence is equal to the input sequence. Layer 2 performs distribution matching.
[0209] The input sequence and output sequence of layer 0 are the same:
[0210] The input sequence and output sequence of the first layer are the same:
[0211] Based on the target distribution and n, four distribution matchers (DMs) are determined for the second layer. 2,0 DM 2,1 DM 2,2 DM 2,3 The length of the output sequence, for example, n 2,0 =n 2,1 =n 2,2 =n 2,3 =2.
[0212] The lengths of the input sequences are: K 2,0 =2,K 2,1 =1,K 2,2 =1,K 2,3 =1; The input sequences are set as follows: These four input sequences are respectively processed by DM 2,0 DM 2,1 DM 2,2 DM 2,3 The four resulting second sequences are as follows:
[0213] Concatenate the four second sequences in order to obtain the third sequence (a).2,0 , ..., a 2,7 ) = (00010000).
[0214] The third sequence is divided into four subsequences in sequence, where the lengths of the four subsequences are based on the combined sequence (c) corresponding to the output sequences of layers 0 and 1 (01, 00, 10, 11). 0,j c 1,j The quantity in (c) is determined. 01 in (c) 0,j c 1,j The quantity in (c) is 1,00 in (c) 0,j c 1,j The quantity in (c) is 2, and 10 is in (c) 0,j c 1,j The quantity in (c) is 2, and 11 is in (c) 0,j c 1,j If the quantity in ) is 3, then the 4 subsequences are: 0, 00, 10, 000.
[0215] The first subsequence a 2,1 a 2,2 From two distributed matchers DM 2,0 DM 2,1 The second subsequence a 2,3 a 2,4 From two distributed matchers DM 2,1 DM 2,2 The third subsequence a 2,5 a 2,6 a 2,7 From two distributed matchers DM 2,2 DM 2,3 .
[0216] Interweave these 4 subsequences:
[0217] a 2,0 =(0) interweaves to (c 0,j c 1,j The position j = {0} in the array has a value of 0 or 1.
[0218] a 2,1 a 2,2 =(00) interweaves to (c 0,j c 1,j The position j = {1, 6} in the array has a value of 00.
[0219] a 2,3 a 2,4 =(10) intertwined to (c 0,j c 1,j The position j = {2, 5} in the array has a value of 10.
[0220] a 2,5 a 2,6 a 2,7 =(000) interleaved to (c 0,j c 1,j The position j = {3, 4, 7} in the array has a value of 11.
[0221] The output sequence of the second layer (c) is obtained. 1,0 c 1,7 ) = (00100000).
[0222] The deinterleaving method corresponding to the interleaving method is as follows, namely step 204: based on the first length, the fourth sequence of the i-th layer, and the deinterleaving process, the 2 i The second sequence includes the following process:
[0223] Step 204a: The receiving end deinterleaves the fourth sequence of the i-th layer to obtain the 2 i A fifth sequence. Ideally, the subsequences resulting from the concatenation and partitioning in step 202b are equivalent to the fifth sequence.
[0224] The 2 i The deinterleaving positions of the fifth sequences are determined based on the output sequences from layer 0 to layer (i-1). For example, the bits at the first position corresponding to the j-th fifth sequence in the fourth sequence are concatenated to obtain j fifth sequences; where the first position corresponding to the j-th fifth sequence is the position of the value corresponding to the j-th fifth sequence in the combined sequence; the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1).
[0225] Step 204b: For 2 i The fifth sequence is spliced together to obtain the third sequence.
[0226] For example, for 2 i The fifth sequence is concatenated in chronological order (natural order) to obtain the third sequence, which has a length of n.
[0227] Step 204c: Based on the first length, deconcatenate the third sequence to obtain 2 i The second sequence.
[0228] Based on the first length, the third sequence is divided according to its chronological order, resulting in 2. i There is a second sequence. The length of the second sequence is the same as the length of the first sequence.
[0229] For example, the first length is n / 2 i Or the first length is n / 2 i The rounded value can be rounded up, rounded down, or rounded to the nearest integer.
[0230] For example, when n / 2 i If it is an integer, then 2 i The length of each second sequence is n / 2 i When n / 2 i If it is not an integer, then 2 i In the second sequence 2 i -1 The length of the second sequence is n / 2 i The length of a second sequence after rounding is: n minus 2. i -1 is the length of the second sequence. For example, if n = 9 and i = 2, then in the 4 second sequences, the length of 3 second sequences is 2 and the length of 1 second sequence is 3.
[0231] Below are a few more examples and their corresponding plastic surgery results.
[0232] Example 1: n = 1024, m = 2, layer 0 does not perform distribution matching, layer 1 performs distribution matching, the target distribution is two bit sequences with values (10, 00, 01, 11) with a ratio of [p0, p1, p2, p3] = [0.42, 0.32, 0.18, 0.08], this ratio is the proportion of different modulation symbols after probability shaping. The output length n of the two distribution matchers in layer 1 is... 1,j =512, Input length K 1,0 =477, K 1,1 =318, the j-th distribution matcher can use an output length of n 1,j The input length is K 1,j The distribution matcher can be any distribution matcher, such as a polar code-based distribution matcher, a fixed-component distribution matcher, or an enumerative sphere shaping (ESS) distribution matcher, or any other distribution matching method, without limitation.
[0233] After cascading, the number of bits with a value of 0 in layer 0 is n′. 0,0 =510, the number of bits with a value of 1 is n′ 0,1 =514, the 0th subsequence includes the first 510 bits of the concatenated third sequence (a 1,0 , ..., a 1,509 The first subsequence includes the remaining bits (a) in the concatenated third sequence. 1,510 , ..., a 1,1023 ). genus (a 1,510 , ..., a 1,1023 The first two bits a in ) 1,510 a 1,511From the 0th distribution matcher, the remaining bits a 1,512 , ..., a 1,1023 From the first distribution matcher.
[0234] Interweaving: Interweaving the 0th subsequence (a 1,0 , ..., a 1,509 The first subsequence (a) is interleaved into the output sequence of layer 0 at positions where the value is 0, and the first subsequence (a) is interleaved into the output sequence of layer 0 at positions where the value is 0. 1,510 , ..., a 1,1023 The values are interleaved into the positions where the output sequence of layer 0 is 1, resulting in the output sequence of layer 1 (c). 1,0 c 1,1023 ).
[0235] Modulation: The output sequences of m layers (each output sequence is of length n), one symbol sequence of length n (the symbol sequence of length n is used to determine the sign of the modulation symbol), and f (f≥0) other amplitude sequences of length n are modulated to obtain the symbol sequence. In this system, some or all bits in the symbol sequence and other amplitude sequences can be parity bits obtained through channel coding (e.g., FEC coding). Additionally, other amplitude sequences can be empty, i.e., f = 0. During modulation, Gray mapping modulation to 2m′-ASK symbols can be used; where m′ = m + f + 1, a symbol sequence of length n corresponds to bit b0 in the Gray mapping, and the output sequence of layer m and other amplitude sequences correspond to bits b1, ..., b in the Gray mapping. m′-1 .
[0236] Figure 4a shows a schematic diagram of the symbol average probability obtained by using 8-ASK modulation when f=0, applicable to Example 1.
[0237] Figure 4b shows a schematic diagram of the symbol average probability obtained using 16-ASK modulation when f=1, applicable to Example 1.
[0238] Example 2: m = 2, n = 1024. Both layers 0 and 1 perform distribution matching. The target distribution is the ratio of two bit sequences with values (10, 00, 01, 11) to [p0, p1, p2, p3] = [0.54, 0.32, 0.11, 0.03]. This ratio represents the proportion of different modulation symbols after probability shaping. Layer 0 uses a binary ESS distribution matcher with an output sequence length of n and 1006 input bits. The average number of 0s in the output sequence is 443, and the average number of 1s is 581. Any other distribution matching method can also be used without limitation. The output lengths of the two distribution matchers in layer 1 are: n... 1,0 =443,n 1,1 =581, input lengths are: K 1,0=356, K 1,1 =166, a binary CCDM distribution matcher can be used, or any other distribution matching method can be used without restriction.
[0239] After cascading, the number of bits with a value of 0 in layer 0 is n′. 0,0 =443, the number of bits with a value of 1 is n′ 0,1 =581, the 0th subsequence of the first layer includes the first 443 bits of the concatenated third sequence (a 1,0 , ..., a 1,442 The first subsequence includes the remaining bits (a) in the concatenated third sequence. 1,443 , ..., a 1,1023 ). (a 1,0 , ..., a 1,442 The first 441 bits a 1,0 , ..., a 1,440 From the 0th distribution matcher, the remaining bits a 1,441 a 1,442 From the first distribution matcher.
[0240] Interweaving: Interweaving the 0th subsequence (a 1,0 , ..., a 1,442 The first subsequence (a) is interleaved into the output sequence of layer 0 at positions where the value is 0, and the first subsequence (a) is interleaved into the output sequence of layer 0 at positions where the value is 0. 1,443 , ..., a 1,1023 The values are interleaved into the positions where the output sequence of layer 0 is 1, resulting in the output sequence of layer 1 (c). 1,0 c 1,1023 ).
[0241] Modulation: Refer to the modulation process described in Example 1, which will not be repeated here.
[0242] Figure 4c shows a schematic diagram of the symbol average probability obtained using 8-ASK modulation when f=0, applicable to Example 2.
[0243] Example 3: m = 3, n = 1024, layer 0 and layer 1 do not perform distribution matching, layer 2 performs distribution matching. The target distribution is three bit sequences with values (110, 100, 000, 010, 011, 001, 101, 111) with the proportions [p0, p1, p2, p3, p4, p5, p6, p7] = [0.22, 0.20, 0.18, 0.14, 0.11, 0.07, 0.05, 0.03]. This proportion represents the proportion of different modulation symbols after probability shaping. The length of the output sequence of the four distribution matchers in layer 2 is n. 2,j =256, the lengths of the input sequences are: K 2,0 =248, K 2,1 =213, K 2,2 =180, K 2,3 =129, the j-th distribution matcher can use each of length n 2,j The number of 1s in the output component is The binary CCDM.
[0244] Figure 4d shows a schematic diagram of the symbol average probability obtained using 16-ASK modulation when f=0, applicable to Example 3.
[0245] Figure 4e shows a schematic diagram of the symbol average probability obtained using 32-ASK modulation when f=1, applicable to Example 3.
[0246] Example 4: m=4, n=1024, layers 0, 1, and 2 do not perform distribution matching, while layer 3 performs distribution matching. The target distribution is four bit sequences with values (1110, 1100, 1000, 1010, 0010, 0000, 0100, 0110, 0111, 0101, 0001, 0011, 1011, 1001, 1101, 1111) with proportions [p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p 10 p 11 p 12 p 13 p 14 p 15 The ratio is [0.110, 0.107, 0.103, 0.098, 0.092, 0.084, 0.076, 0.067, 0.058, 0.049, 0.041, 0.033, 0.027, 0.022, 0.018, 0.014], where n is the proportion of different modulation symbols after probability shaping. The length of the output sequence of the 8 distribution matchers in the 3rd layer is: n 1,j =128, the length of the input sequence is: K 3,0 =123, K 3,1 =119, K 3,2 =112, K 3,3 =101, K 3,4 =91, K 3,5 =81, K 3,6 =71, K 3,7 =60; the j-th distribution matcher can use an output length of n 3,j The input length is K 3,jThe distribution matcher can be any distribution matcher, such as a polar code-based distribution matcher, a fixed-component distribution matcher, or an ESS distribution matcher, or any other distribution matching method can be used without limitation.
[0247] Figure 4f shows a schematic diagram of the symbol average probability obtained using 32-ASK modulation when f=0, applicable to Example 4.
[0248] In this embodiment, a distribution matcher can generate two probabilities. Therefore, when m=2, there are four different probabilities, and when m=3, there are eight different probabilities. The above is merely an example illustrating one or more of these probabilities.
[0249] It is understood that, in order to achieve the functions in the above embodiments, the sending end and receiving end include hardware structures and / or software modules corresponding to each function. Those skilled in the art should readily recognize that, based on the units and method steps of the various examples described in conjunction with the embodiments disclosed in this application, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed by hardware or by computer software driving hardware depends on the specific application scenario and design constraints of the technical solution.
[0250] Figures 5 and 6 are schematic diagrams of possible communication devices provided in embodiments of this application. These communication devices can be used to implement the functions of the transmitting end and the receiving end in the above method embodiments, and thus can also achieve the beneficial effects of the above method embodiments.
[0251] As shown in Figure 5, the communication device 500 includes a processing unit 510 and a transceiver unit 520.
[0252] For example, the communication device 500 is used to implement the functions of the transmitting end in the method embodiments shown in Figures 2 and 3 above. The transceiver unit 520 can perform the receiving and transmitting actions performed by the transmitting end in the above method embodiments. The processing unit 510 can perform other actions besides the transmitting and receiving actions performed by the transmitting end in the above method embodiments.
[0253] For example, the communication device 500 is used to implement the functions of the receiving end in the method embodiments shown in Figures 2 and 3 above. The transceiver unit 520 can perform the receiving and transmitting actions performed by the receiving end in the above method embodiments. The processing unit 510 can perform other actions besides the transmitting and receiving actions performed by the receiving end in the above method embodiments.
[0254] A more detailed description of the processing unit 510 and the transceiver unit 520 can be obtained directly from the relevant descriptions in the method embodiments shown in Figures 2 and 3, and will not be repeated here. The processing unit 510 can be implemented by a processor, and the transceiver unit 520 can be implemented by a transceiver.
[0255] As shown in Figure 6, the communication device 600 includes a processor 610 and an interface circuit 620. The processor 610 and the interface circuit 620 are coupled together. It is understood that the interface circuit 620 can be a transceiver or an input / output interface. Optionally, the communication device 600 may also include a memory 630 for storing instructions executed by the processor 610, or storing input data required for the processor 610 to execute instructions, or storing data generated after the processor 610 executes instructions. Sometimes, the interface circuit 620 can also be understood as part of the processor 610, in which case the communication device 600 includes the processor 610.
[0256] When the communication device 600 is used to implement the methods shown in Figures 2 and 3 above, the processor 610 is used to implement the functions of the processing unit 510 above, and the interface circuit 620 is used to implement the functions of the transceiver unit 520 above.
[0257] When the aforementioned communication device is a chip applied to a terminal device, the terminal device chip implements the functions of the terminal device in the above method embodiments. The terminal device chip receives information from a network device, which can be understood as the information being first received by other modules (such as an RF module or antenna) in the terminal device, and then sent to the terminal device chip by these modules. The terminal device chip sends information to a network device, which can be understood as the information being first sent to other modules (such as an RF module or antenna) in the terminal device, and then sent to the network device by these modules.
[0258] When the aforementioned communication device is a chip applied to a network device, the network device chip implements the functions of the network device in the above method embodiments. The network device chip receives information from the terminal device, which can be understood as the information being first received by other modules (such as radio frequency modules or antennas) in the network device, and then sent to the network device chip by these modules. The network device chip sends information to the terminal device, which can be understood as the information being sent down to other modules (such as radio frequency modules or antennas) in the network device, and then sent to the terminal device by these modules. Here, the network device module can be the baseband chip of the network device, or a DU (Digital Unit) or other modules. The DU here can be a DU under the Open Radio Access Network (O-RAN) architecture.
[0259] In this application, entity A sends information to entity B, either directly or indirectly through other entities. Similarly, entity B receives information from entity A, either directly or indirectly through other entities. Entities A and B can be network devices or terminal devices, or modules within network devices or terminal devices. The sending and receiving of information can be between network devices and terminal devices, between two network devices (e.g., CU and DU), or between different modules within a single device (e.g., a terminal device chip and other modules within the terminal device, or a network device chip and other modules within the network device).
[0260] It is understood that the processor in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor can be a microprocessor or any conventional processor.
[0261] This application also provides a computer-readable storage medium storing a computer program that, when executed by a computer, enables the computer to perform the aforementioned communication method. Alternatively, the computer program includes instructions for implementing the aforementioned communication.
[0262] This application also provides a computer program product, including: computer program code, which, when run on a computer, enables the computer to execute the communication method provided above.
[0263] This application also provides a communication system, which includes a sending end and a receiving end that perform the above-described communication method.
[0264] The method steps in the embodiments of this application can be implemented in hardware or by a processor executing software instructions. The software instructions can consist of corresponding software modules, which can be stored in random access memory, flash memory, read-only memory, programmable read-only memory, erasable programmable read-only memory, electrically erasable programmable read-only memory, registers, hard disks, portable hard disks, compact disc read-only memory (CD-ROM), or any other form of storage medium known in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and storage medium can reside in an ASIC. Alternatively, the ASIC can reside in a base station or terminal. Of course, the processor and storage medium can also exist as discrete components in the base station or terminal.
[0265] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application are performed entirely or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a network device, a first control plane network element, a user equipment, or other programmable device. The computer program or instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer program or instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; it can also be an optical medium, such as a digital video optical disc; or it can be a semiconductor medium, such as a solid-state drive. The computer-readable storage medium may be a volatile or non-volatile storage medium, or may include both types of storage media.
[0266] In the various embodiments of this application, unless otherwise specified or in case of logical conflict, the terminology and / or descriptions of different embodiments are consistent and can be referenced by each other. The technical features of different embodiments can be combined to form new embodiments according to their inherent logical relationship.
[0267] In this application embodiment, the number of nouns, unless otherwise specified, refers to "singular nouns or plural nouns," that is, "one or more." "At least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A exists alone, A and B exist simultaneously, or B exists alone, where A or B can be singular or plural. The character " / " generally indicates that the related objects before and after are in an "or" relationship. For example, A / B means: A or B. Expressions such as "at least one of the following" or "one or more of them" refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c, or one or more of a, b, or c, means: a, b, c, a and b, a and c, b and c, or a and b and c. Each of a, b, and c can be single or multiple.
[0268] The ordinal numbers such as "first" and "second" mentioned in the embodiments of this application are used to distinguish multiple objects, and are not used to limit the size, content, order, timing, priority, or importance of the multiple objects. Furthermore, such names do not indicate differences in the content, sending order, size, application scenario, priority, or importance of the two pieces of information. Additionally, the numbering of steps in the various embodiments described in this application is only to distinguish different steps and is not used to limit the order in which the steps are performed.
Claims
1. A communication method, characterized in that, Applied to the sending end, including: Based on the first length, the distribution of the first sequence in the i-th layer is matched to obtain 2 i A second sequence; wherein the first length is used to indicate the length of the output sequence after distribution matching, the first length is related to the length of the output sequence of any layer and i, where i is an integer greater than or equal to 1; Based on the above 2 i The second sequence and interleaving process are used to obtain the output sequence of the i-th layer.
2. The method as described in claim 1, characterized in that, The first length is n / 2 i Or, the first length is n / 2 i The integer value; where n is the length of the output sequence of any layer.
3. The method as described in claim 1 or 2, characterized in that, The basis of the 2 i The second sequence and interleaving process are used to obtain the output sequence of the i-th layer, including: The 2 i The second sequence is interleaved to obtain the output sequence of the i-th layer.
4. The method as described in claim 3, characterized in that, The 2 i The second sequence is interleaved, including: If the first quantity is greater than or equal to the second quantity, the second number of consecutive bits in the j-th second sequence are interleaved to the position of the corresponding value in the j-th second sequence in the combined sequence; If the first quantity is less than the second quantity, the bits in the j-th second sequence are interleaved to the positions where the corresponding values of the j-th second sequence are consecutively in the combined sequence for the first quantity. Wherein, the first quantity is the number of bits included in the j-th second sequence, and the second quantity is the number of values corresponding to the j-th second sequence in the combined sequence, wherein the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1), and 0 ≤ j ≤ 2. i -1.
5. The method as described in claim 1 or 2, characterized in that, The basis of the 2 i The second sequence and interleaving process are used to obtain the output sequence of the i-th layer, including: The 2 i Concatenate the second sequences to obtain the third sequence; The third sequence is divided into 2 i 2 subsequences; wherein, the 2 i The length of each subsequence is determined based on the output sequence from layer 0 to layer (i-1); The 2 i The 2 subsequences are interleaved to obtain the output sequence of the i-th layer; wherein, the 2 i The interleaving positions of each subsequence are determined based on the output sequences from layer 0 to layer (i-1).
6. The method as described in claim 5, characterized in that, The 2 i The length of each subsequence is determined based on the output sequence from layer 0 to layer (i-1), including: The length of the j-th subsequence is determined based on the number of values corresponding to the j-th subsequence in the combined sequence, wherein the combined sequence is obtained by combining the output sequences from the 0th layer to the (i-1th layer), and 0 ≤ j ≤ 2. i -1.
7. The method as described in claim 5 or 6, characterized in that, The 2 i The subsequences are interleaved to obtain the output sequence of the i-th layer, including: Interleave the bits in the j-th subsequence to the positions of the corresponding values in the j-th subsequence in the combined sequence to obtain the output sequence of the i-th layer; wherein, the combined sequence is obtained by combining the output sequences from the 0th layer to the (i-1)th layer, and 0≤j≤2. i -1.
8. The method as described in claim 6 or 7, characterized in that, When i = 1, the value corresponding to the 0th subsequence is 0, and the value corresponding to the 1st subsequence is 1; i = 2, the value corresponding to the 0th subsequence is 01, the value corresponding to the 1st subsequence is 00, the value corresponding to the 2nd subsequence is 10, and the value corresponding to the 3rd subsequence is 11; When i = 3, the values corresponding to the 0th to 7th subsequences are: 011, 010, 000, 001, 101, 100, 110, 111; i=4, and the values corresponding to the 0th to 15th subsequences are as follows: 0111, 0110, 0100, 0101, 0001, 0000, 0010, 0011, 1011, 1010, 1000, 1001, 1101, 1100, 1110, 1111.
9. A communication method, characterized in that, Applied to the receiving end, including: Based on the first length, the fourth sequence of the i-th layer, and deinterleaving processing, we obtain 2 i A second sequence; the first length is used to indicate the length of the output sequence after distribution matching, or to indicate the length of the input sequence for distributive matching; the first length is related to the length of the fourth sequence and i, where i is an integer greater than or equal to 1; Based on the above 2 i The second sequence and solution distribution are matched and processed to obtain the first sequence of the i-th layer.
10. The method as described in claim 9, characterized in that, The first length is n / 2 i Or, the first length is n / 2 i The integer value; where n is the length of the fourth sequence.
11. The method as described in claim 9 or 10, characterized in that, The fourth sequence based on the first length and the i-th layer, and the deinterleaving process, yield 2 i The second sequence includes: Based on the first length, the fourth sequence is de-interleaved to obtain 2 i The second sequence.
12. The method as described in claim 11, characterized in that, The fourth sequence is de-interleaved based on the first length to obtain 2 i The second sequence includes: If the first quantity is greater than or equal to the second quantity, all bits at the position of the value corresponding to the j-th second sequence in the combined sequence are concatenated to form the second consecutive number of bits in the j-th second sequence; If the first quantity is less than the second quantity, the second number of consecutive bits at the position of the value corresponding to the j-th second sequence in the combined sequence are concatenated to form the j-th second sequence. Wherein, the first quantity is the number of bits included in the j-th second sequence, and the first quantity is determined based on the first length; the second quantity is the number of values corresponding to the j-th second sequence in the combined sequence, and the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1), where 0 ≤ j ≤ 2. i -1.
13. The method as described in claim 9 or 10, characterized in that, The fourth sequence based on the first length and the i-th layer, and the deinterleaving process, yield 2 i The second sequence includes: De-interleaving the fourth sequence yields 2 i A fifth sequence; wherein, the 2 i The deinterleaving positions of the fifth sequence are determined based on the output sequences from layer 0 to layer (i-1). For the 2 i The fifth sequence is concatenated to obtain the third sequence; Based on the first length, the third sequence is deconcatenated to obtain 2. i The second sequence.
14. The method as described in claim 13, characterized in that, The fourth sequence is de-interleaved to obtain the 2 i The fifth sequence includes: The bits at the first position corresponding to the j-th fifth sequence in the fourth sequence are concatenated to obtain j fifth sequences; wherein the first position corresponding to the j-th fifth sequence is the position of the value corresponding to the j-th fifth sequence in the combined sequence, and the combined sequence is obtained by combining the output sequences from layer 0 to layer (i-1).
15. The method as described in claim 14, characterized in that, When i = 1, the value corresponding to the 0th fifth sequence is 0, and the value corresponding to the 1st fifth sequence is 1; i = 2, the value corresponding to the 0th fifth sequence is 01, the value corresponding to the 1st fifth sequence is 00, the value corresponding to the 2nd fifth sequence is 10, and the value corresponding to the 3rd fifth sequence is 11; i=3, the values corresponding to the 0th to 7th fifth sequences are: 011, 010, 000, 001, 101, 100, 110, 111; i=4, and the values corresponding to the 0th to 15th fifth sequences are as follows: 0111, 0110, 0100, 0101, 0001, 0000, 0010, 0011, 1011, 1010, 1000, 1001, 1101, 1100, 1110, 1111.
16. A communication device, characterized in that, Includes a module for performing the method as described in any one of claims 1-8, or a module for performing the method as described in any one of claims 9-15.
17. A communication device, characterized in that, Including processor The processor is configured to execute a computer program or instructions, which, when executed, are configured to implement the method as described in any one of claims 1-8, or the method as described in any one of claims 9-15.
18. A communication device, characterized in that, Including processor and memory; The memory is used to store computer programs or instructions; The processor is configured to execute some or all of the computer programs or instructions in the memory, and when the some or all of the computer programs or instructions are executed, to implement the method as described in any one of claims 1-8, or to implement the method as described in any one of claims 9-15.
19. A communication device, characterized in that, The device includes a processor and an interface circuit. The interface circuit is used to receive signals from other communication devices besides the communication device and transmit them to the processor, or to send signals from the processor to other communication devices besides the communication device. The processor is used through logic circuits or execution code instructions to implement the method as described in any one of claims 1-8, or to implement the method as described in any one of claims 9-15.
20. A communication system, characterized in that, The communication system includes: a transmitting end that performs the method as described in any one of claims 1-8 and a receiving end that performs the method as described in any one of claims 9-15.
21. A computer-readable storage medium, characterized in that, The storage medium stores a computer program or instructions, which, when executed by a communication device, implement the method as described in any one of claims 1-8, or the method as described in any one of claims 9-15.
22. A computer program product, characterized in that, The computer program product includes: computer instructions that, when executed on a computer, cause the method as described in any one of claims 1-8 to be implemented, or the method as described in any one of claims 9-15 to be implemented.