Communication method and apparatus
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2025-10-31
- Publication Date
- 2026-05-21
Smart Images

Figure CN2025131636_21052026_PF_FP_ABST
Abstract
Description
Communication methods and devices
[0001] This application claims priority to Chinese Patent Application No. 202411643340.6, filed on November 15, 2024, entitled "Communication Method and Apparatus", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of communication technology, and in particular to a communication method and apparatus. Background Technology
[0003] In a communication system, the transmitting device can use polar coding to polarize the information bit sequence, modulate the encoded sequence, and send the modulated sequence to the receiving device.
[0004] Before polar coding the information bit sequence, the transmitting device can segment the information bit sequence and then perform polar coding on the segmented information bit sequence.
[0005] However, the existing New Radio (NR) standard stipulates that when the transmitting device performs polar coding, it can only divide the information bit sequence into two segments at most, which affects system performance. Summary of the Invention
[0006] This application provides a communication method and apparatus that can provide a new segmentation method for segmenting information bit sequences, thereby improving the performance of the encoding system.
[0007] Firstly, this application provides a communication method that can be executed by a transmitting device. Unless otherwise specified, "transmitting device" in this application can refer to the transmitting device itself, a component within the transmitting device (e.g., a processor, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the transmitting device. The method includes: determining a first sequence of length K1 from an information bit sequence of length K; segmenting the first sequence according to the number of code blocks; the number of code blocks being determined according to E and a first length, where E is the length of a second sequence; transforming the segmented sequences respectively; and concatenating the transformed results to obtain a second sequence of length E, where the first length is the maximum length of the transformed result.
[0008] Based on the first aspect, a new segmentation method for dividing information bit sequences is provided. Specifically, the transmitting device can segment the first sequence according to E and a first length, and then transform and concatenate the segmented sequences. Compared to the NR standard which stipulates that the transmitting device can only divide the information bit sequence into a maximum of two segments, the transmitting device, by segmenting the first sequence according to the above method during transformation, can not only reduce complexity but also improve transformation performance (such as improving the transformation performance based on polar codes), thereby improving the performance of the coding system.
[0009] In one possible design, the segmented sequences are transformed separately, including performing distribution matching transformation on the segmented sequences separately.
[0010] Based on this possible design, a distribution matching transformation can be performed on the segmented sequence to obtain the shaping gain.
[0011] In one possible design, the segmented sequences are transformed separately, including: performing distribution matching transformation on the segmented sequences separately based on the first encoding method.
[0012] In one possible design, the segmented sequences are transformed separately, including: performing distribution matching transformation on the segmented sequences separately according to the decoding method of the first encoding method.
[0013] Based on the two possible designs mentioned above, the segmented sequence can be subjected to distribution matching transformation based on the first encoding method or the decoding method corresponding to the first encoding method to obtain the shaping gain.
[0014] In one possible design, the transformed result is a sequence that follows a specific distribution.
[0015] In one possible design, the second sequence is a sequence that follows a specific distribution.
[0016] Based on the two possible designs mentioned above, by transforming the segmented sequence, the transformed result and the concatenated second sequence can conform to a specific distribution. This allows the bit sequence that satisfies the specific distribution to appear directly in the encoded sequence, thereby shaping the final modulation symbol, saving average energy, and reducing transmission power.
[0017] In one possible design, E is a positive integer greater than or equal to K1.
[0018] In one possible design, E is an even number greater than or equal to K1.
[0019] In one possible design, E is determined based on the number of modulation symbols corresponding to the transmission resources.
[0020] Based on this possible design, the value of E can be an even multiple of the number of modulation symbols, which can ensure that the E transformed bits of the second sequence can be evenly distributed in the real and imaginary parts of each modulation symbol.
[0021] In one possible design, the number of code blocks is the rounded-up result of the ratio of E to the first length.
[0022] Based on this possible design, a feasible solution is provided for determining the number of code blocks.
[0023] In one possible design, the first length is any of the following: 512, 1024, 2048, or 4096.
[0024] Based on this possible design, several feasible options are provided for the specific value of the first length.
[0025] In one possible design, the first length corresponding to the downlink transmission is greater than or equal to the first length corresponding to the uplink transmission.
[0026] Based on this possible design, since the transmitting device needs to perform a transformation process, the processing complexity will be relatively high. Generally, the processing capability of the network device is stronger than that of the terminal device. The first length corresponding to the downlink transmission can be greater than or equal to the first length corresponding to the uplink transmission in order to reduce the processing complexity of the terminal device, reuse existing hardware as much as possible, and reduce hardware overhead.
[0027] In one possible design, the first length corresponding to the downlink transmission is any of the following lengths: 512, 1024, 2048, or 4096.
[0028] Based on this possible design, the first length corresponding to the downlink transmission can be set to 1024 to ensure compatibility with NR communication systems and improve communication performance. Alternatively, the first length corresponding to the downlink transmission can be set to 2048 or 4096 to improve transformation-based transmission performance; it is understood that the longer the first length, the better the transformation-based transmission performance. Alternatively, the first length of the downlink transmission can be set to 512 to further reduce the complexity of the transmitting end.
[0029] In one possible design, the first length corresponding to the uplink transmission is any of the following lengths: 512, 1024, 2048, or 4096.
[0030] Based on this possible design, the first length corresponding to the uplink transmission can be determined to be 512 or 1024 to ensure compatibility with NR communication systems, reuse existing decoders in terminal devices, reduce implementation complexity, and reuse existing hardware as much as possible. Alternatively, the first length corresponding to the uplink transmission can be determined to be 2048 or 4096 to improve the transformation-based transmission performance. It is understood that the longer the first length, the better the transformation-based transmission performance.
[0031] In one possible design, if the transmitting device supports transformation, the number of code blocks is determined based on E and the first length.
[0032] Based on this possible design, the transmitting device can segment the code according to the above number of code blocks, provided that the transformation is supported. This can not only reduce complexity but also improve the performance of the coding system.
[0033] In one possible design, when the carrier type is Orthogonal Frequency Division Multiplexing (OFDM), it is determined that the transmitting device supports the conversion.
[0034] Based on this possible design, taking 5G NR uplink transmission as an example, uplink transmission supports both DFT-S-OFDM and OFDM waveforms. The transmitting device can support the transformation in the OFDM scenario. In the DFT-S-OFDM scenario, supporting the transformation might affect PAPR, so it is possible to choose not to support the transformation.
[0035] In one possible design, the first sequence is segmented according to the number of code blocks, including: filling the first sequence into a third sequence of length K1'; where K1 is less than or equal to K1', and K1' is a positive integer multiple of the number of code blocks; and dividing the third sequence into C segments; where C is the number of code blocks.
[0036] In one possible design, K1' is equal to the product of the floor of the ratio of K1 to C and C.
[0037] In one possible design, the first sequence is segmented according to the number of code blocks, including: filling the first sequence into a third sequence of length K1'; where K1 is less than or equal to K1', and K1' is a positive integer multiple of the number of code blocks; and dividing the third sequence into C segments; where C is the number of code blocks.
[0038] In one possible design, the first sequence is segmented according to the number of code blocks, including: filling the first sequence into a third sequence of length K1'; where K1 is less than or equal to K1', and K1' is a positive integer multiple of the number of code blocks; dividing the third sequence into C segments, where the length of the transformed sequence of segment C-1 is the first length, and the length of the transformed sequence of another segment is E-(C-1)*the first length, where C is the number of code blocks.
[0039] Based on the four possible designs described above, when K1 equals K1', the third sequence may include K1 bits of the first sequence. When K1 is less than K1', the third sequence may include K1 bits of the first sequence and (K1'-K1) repeated bits from the first sequence; or, the third sequence may include K1 bits of the first sequence and (K1'-K1) padding bits.
[0040] Secondly, this application provides a communication method that can be executed by a receiving device. Unless otherwise specified, "receiving device" in this application can refer to the receiving device itself, a component within the receiving device (e.g., a processor, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the receiving device. The method includes: acquiring information to be decoded; a second sequence of length E corresponding to the information to be decoded; obtaining a first sequence based on the number of code blocks and the information to be decoded; the number of code blocks is determined according to E and the first length, where the first length is the maximum length of the transformed result.
[0041] Based on the second aspect, a new segmentation method for dividing the information bit sequence is provided. Specifically, the receiving device can determine the number of code blocks the transmitting device will use to segment the information bit sequence based on E and a first length, and then decode the information to be decoded according to this number of code blocks. Compared to the NR standard, which stipulates that the transmitting device can only divide the information bit sequence into a maximum of two segments, the transmitting device, by segmenting the first sequence according to the above method, can not only reduce complexity but also improve transformation performance (such as improving the transformation performance based on polar codes), thereby improving the performance of the coding system.
[0042] In one possible design, the second sequence is a sequence that follows a specific distribution.
[0043] In one possible design, E is determined based on the number of modulation symbols corresponding to the transmission resources.
[0044] In one possible design, the number of code blocks is the rounded-up result of the ratio of E to the first length.
[0045] In one possible design, the first length is any of the following: 512, 1024, 2048, or 4096.
[0046] In one possible design, the first length corresponding to the downlink transmission is greater than or equal to the first length corresponding to the uplink transmission.
[0047] In one possible design, the first length corresponding to the downlink transmission is any of the following lengths: 512, 1024, 2048, or 4096.
[0048] In one possible design, the first length corresponding to the uplink transmission is any of the following lengths: 512, 1024, 2048, or 4096.
[0049] In one possible design, if the transmitting device supports transformation, the number of code blocks is determined based on E and the first length.
[0050] In one possible design, when the carrier type is Orthogonal Frequency Division Multiplexing (OFDM), it is determined that the transmitting device supports the conversion.
[0051] The beneficial effects of the various possible designs described above can be referred to the relevant description in the first aspect above, and will not be repeated here.
[0052] Thirdly, this application provides a communication device that can be applied to the transmitting end device described in the first aspect to realize the functions performed by the transmitting end device. The communication device can be the transmitting end device itself, or it can be a chip, chip system, or system-on-a-chip of the transmitting end device, etc. The communication device can execute the functions performed by the transmitting end device through hardware, or it can execute corresponding software through hardware. The hardware or software includes one or more modules corresponding to the above functions. For example, a transceiver module and a processing module. The transceiver module can independently complete the following transceiver operations, or it can cooperate with the processing module to complete the following transceiver operations; correspondingly, the processing module can independently complete the following processing operations, or it can cooperate with the transceiver module to complete the following processing operations, without limitation.
[0053] For example, the processing module is used to determine a first sequence of length K1 from an information bit sequence of length K; to segment the first sequence according to the number of code blocks; the number of code blocks is determined according to E and the first length, where E is the length of the second sequence; the processing module is also used to transform the segmented sequences respectively, and to concatenate the transformed results to obtain a second sequence of length E, where the first length is the maximum length of the transformed result.
[0054] Optionally, the transceiver module and processing module of the communication device in the third aspect may also perform the corresponding functions in the first aspect or any possible design of the first aspect, as detailed in the method examples, and the beneficial effects that can be achieved can also be found in the foregoing related content.
[0055] Fourthly, this application provides a communication device that can be applied to the receiving device described in the second aspect to realize the functions performed by the receiving device. The communication device can be the receiving device itself, or it can be a chip, chip system, or system-on-a-chip of the receiving device. The communication device can execute the functions performed by the receiving device through hardware or through corresponding software. The hardware or software includes one or more modules corresponding to the functions described above. For example, a transceiver module and a processing module. The transceiver module can independently complete the following transceiver operations or cooperate with the processing module to complete the following transceiver operations; correspondingly, the processing module can independently complete the following processing operations or cooperate with the transceiver module to complete the following processing operations, without limitation.
[0056] For example, the processing module is used to obtain information to be decoded; the information to be decoded corresponds to a second sequence of length E; the processing module is also used to obtain a first sequence according to the number of code blocks and the information to be decoded; the number of code blocks is determined according to E and the first length, the first length being the maximum length of the transformed result.
[0057] Optionally, the transceiver module and processing module of the communication device in the fourth aspect may also perform the corresponding functions in the second aspect or any possible design of the second aspect, as detailed in the method examples, and the beneficial effects that can be achieved can also be found in the foregoing related content.
[0058] Fifthly, this application provides a communication device comprising one or more processors; the one or more processors being configured to run computer programs or instructions, such that when the one or more processors execute the computer instructions or instructions, the communication method described in any one of the first to second aspects is performed.
[0059] In one possible design, the communication device further includes one or more memories coupled to one or more processors, the memories used to store the aforementioned computer programs or instructions. In one possible implementation, the memories are located outside the communication device. In another possible implementation, the memories are located inside the communication device. In embodiments of this application, the processor and memory may also be integrated into a single device, i.e., the processor and memory may be integrated together. In one possible implementation, the communication device further includes a transceiver for receiving and / or transmitting information.
[0060] In one possible design, the communication device further includes one or more communication interfaces coupled to one or more processors, and the communication interfaces are used to communicate with other modules outside the communication device.
[0061] In a sixth aspect, this application provides a communication device including an interface circuit and a logic circuit; the interface circuit is used for inputting and / or outputting information; the logic circuit is used for performing the communication method as described in any one of the first to second aspects, processing and / or generating information based on the information.
[0062] In a seventh aspect, this application provides a computer-readable storage medium storing computer instructions or programs that, when executed on a computer, cause the communication method described in any one of the first to second aspects to be performed.
[0063] Eighthly, this application provides a computer program product containing computer instructions that, when run on a computer, causes the communication method described in any one of the first to second aspects to be executed.
[0064] Ninthly, this application provides a computer program that, when run on a computer, causes the communication method described in any one of the first to second aspects to be executed.
[0065] In a tenth aspect, this application provides a chip comprising: a processor coupled to a memory for storing programs or instructions, wherein when the programs or instructions are executed by the processor, a communication method as described in any one of the first to second aspects is executed.
[0066] The technical effects of any of the design methods in aspects five through ten are similar to those in aspects one through two, and will not be elaborated upon further.
[0067] In one aspect, this application provides a communication system that may include communication means for performing the communication as described in the first aspect or any possible design of the first aspect, and communication means for performing the communication as described in the second aspect or any possible design of the second aspect. Attached Figure Description
[0068] Figure 1 is a schematic diagram of a polar code encoding provided in an embodiment of this application;
[0069] Figure 2 is a schematic diagram of SC decoding provided in an embodiment of this application;
[0070] Figure 3 is a schematic diagram of a probability shaping process provided in an embodiment of this application;
[0071] Figure 4 is a schematic diagram of a constellation distribution provided in an embodiment of this application;
[0072] Figure 5 is a schematic diagram of a probability shaping provided in an embodiment of this application;
[0073] Figure 6 is a schematic diagram of a communication system provided in an embodiment of this application;
[0074] Figure 7 is a flowchart of an encoding and decoding process provided in an embodiment of this application;
[0075] Figure 8 is a schematic diagram of the composition of a communication device provided in an embodiment of this application;
[0076] Figure 9 is a flowchart of a communication method provided in an embodiment of this application;
[0077] Figure 10 is a schematic diagram of a transmitting device provided in an embodiment of this application;
[0078] Figure 11 is a schematic diagram of a receiving device provided in an embodiment of this application;
[0079] Figure 12 is a schematic diagram of a communication device provided in an embodiment of this application;
[0080] Figure 13 is a schematic diagram of a communication device provided in an embodiment of this application. Detailed Implementation
[0081] Before describing the embodiments of this application, the technical terms involved in the embodiments of this application will be described.
[0082] In a communication system, the transmitting device can use polar coding to polarize the information bit sequence, modulate the encoded sequence, and send the modulated sequence to the receiving device.
[0083] Among them, polar codes are the first coding scheme that can be rigorously proven to "achieve" the Shannon channel capacity. They have the advantages of good decoding performance and low complexity. They have been selected by the third generation partnership project (3GPP) as the control channel coding scheme for the enhanced mobile broadband (eMBB) scenario of the fifth generation (5G) mobile communication system.
[0084] For example, as shown in Figure 1, is a schematic diagram of an 8-bit polar code encoding. The encoding process includes several polar kernel operations (the polar kernel is indicated by a dashed box). The polar kernel ANDs two input bits with... Multiplying them yields two output bits. It can be seen that the recursive construction of polar codes shows that an 8-bit polar code can be obtained by coupling two 4-bit polar codes, and a 4-bit polar code can be obtained by coupling two 2-bit polar codes.
[0085] The construction process of polar codes is used to determine the information bits and frozen bits. Generally, the reliability of each sub-channel is ranked, and the K positions with the highest reliability are set as information bits, while the remaining NK positions are set as frozen bits. As shown in Figure 1, to construct a polar code with N=8 and K=4, u3, u5, u6, and u7 are typically the information bits, and the remaining positions are the frozen bits.
[0086] Corresponding to polar coding, decoding can be performed using the successive cancellation decoding (SC) algorithm. In SC, the log-likelihood ratio (LLR) of the information bits is calculated step by step. For an information bit, if LLR > 0, the bit is determined to be 0; if LLR < 0, the bit is determined to be 1. For frozen bits, the bit is set to 0 regardless of the LLR value. A simple illustration of SC decoding is shown in Figure 2: there are 8 computation nodes in the figure, including 4 f nodes and 4 g nodes. The computation of f nodes requires 2 LLR inputs on its right side, and the computation of g nodes requires 2 LLR inputs on its right side and 1 "partial sum" input above. Note that the output can only be calculated after the input items are calculated. According to the above rules, starting from the received signal on the right side, the 8 nodes are calculated sequentially, and the resulting decoding sequence is ①→②→③→④, which is the SC decoding process.
[0087] In addition, higher-order modulation can be used in communication systems to improve spectral efficiency. Higher-order modulation refers to mapping multiple bits to the same channel symbol, thereby further improving spectral efficiency. Common higher-order modulation schemes include quadrature amplitude modulation (QAM), 64QAM, and 256QAM. Table 1 shows a bit mapping relationship for 16-bit amplitude shift keying (ASK). During modulation, the modulation symbol x can be determined based on bits b0, b1, b2, and b3, which serves as the modulation symbol to be transmitted. Here, b0 is the symbol bit, and b1, b2, and b3 are amplitude bits. The amplitude bits are ordered from highest to lowest reliability as follows: b0, b1, b2, b3.
[0088] Table 1
[0089] In high-order modulation transmission, transmission performance can be further improved through probabilistic shaping. Theoretical analysis shows that for Gaussian white noise channels, the greatest energy saving occurs when the transmitted symbol distribution follows a Gaussian distribution. Compared to a uniform distribution, up to 1.53 dB of transmission power can be saved. Probabilistic shaping is a common "shaping" technique, and its typical flowchart is shown in Figure 3. By cascading a precoder (also known as a distribution matcher, transformation, shaping, probabilistic shaping, etc.) before the encoder, the information bits are mapped (or "shaped") to a sequence that follows a specific distribution. During the encoding process, systematic coding is used, so that the bit sequence that meets the specific distribution ultimately appears directly in the encoded sequence, thereby shaping the final modulation symbols, saving average energy, and reducing transmission power.
[0090] For example, the constellation distribution after "shaping" can be shown in Figure 4, where the horizontal axis represents the symbol, the vertical axis represents the probability, and the square of the symbol represents the energy level. The smaller the square of the symbol, the lower the energy, and the larger the square of the symbol, the higher the energy. As can be seen from Figure 4, the probability of low-energy symbols appearing is higher than that of high-energy symbols.
[0091] Based on the above description of polar codes and probabilistic shaping, with the continuous development of polar codes, they can be used as distribution matchers to implement probabilistic shaping. The function of this distribution matcher can be understood as: mapping K information bits to E shaped bits, where the K information bits follow a uniform distribution, and the E shaped bits follow a specific distribution (generally not a uniform distribution).
[0092] For example, for a polar code-based distributed matcher, an N-length polar code can be constructed, as shown in Figure 5. The K positions with the lowest reliability are selected as information bits (bits filled with pattern 1 in Figure 5), and the remaining NK positions are selected as auxiliary bits (bits filled with pattern 2 in Figure 5).
[0093] During distribution matching, K original information bits to be transformed are placed in the information bit positions. The decoder uses the LLR value corresponding to the target distribution as the sequence of symbols to be decoded (as the LLR input on the right side of the fence diagram in Figure 5), and obtains auxiliary bits through decoding. Further, based on the original information bits to be transformed and the decoded auxiliary bits, an encoded bit sequence is obtained (the bits filled with pattern 3 in Figure 5), which serves as the shaped bit sequence.
[0094] By controlling the LLR value sequence of the right-hand decoder, the shaping effect of the polar code-based distribution matcher can be controlled, thereby further improving the shaping gain. Specifically, when the decoder inputs the same LLR sequence, the shaped bit sequence also follows the same distribution. Alternatively, the decoder can input different sequences to achieve finer shaping; generally, the larger the corresponding LLR value, the greater the distribution bias of that bit (i.e., the more uneven the distribution).
[0095] By using polar codes as distributed matchers, existing polar code decoders in the transmitting device can be reused for transformation, eliminating the need for additional chip area. Furthermore, fast decoding algorithms for polar code decoders can be leveraged to reduce the complexity of the shaping process. Additionally, by using different LLR sequences as input to the decoder and introducing joint design, the transformation performance and shaping gain can be improved without increasing complexity.
[0096] Based on the above description of polar codes and probability shaping, before performing distribution matching transformation on the information bit sequence, the transmitting device can segment the information bit sequence and then perform distribution matching transformation on the segmented information bit sequence.
[0097] However, the New Radio (NR) standard stipulates that the information bit sequence can only be divided into two segments at most, which affects system performance.
[0098] To address the aforementioned technical problems, embodiments of this application provide a communication method. In this method, a transmitting device can determine a first sequence of length K1 from an information bit sequence of length K, segment the first sequence according to the number of code blocks, transform each segmented sequence, and concatenate the transformed results to obtain a second sequence of length E. The number of code blocks is determined based on E and the first length, where the first length is the maximum length of the transformed result.
[0099] This application provides a novel segmentation method for dividing an information bit sequence. The transmitting device can segment the first sequence according to E and a first length, then transform and concatenate the segmented sequences. Compared to the NR standard, which stipulates that the transmitting device can only divide the information bit sequence into a maximum of two segments, the transmitting device, by segmenting the first sequence according to the above method during transformation, not only reduces complexity but also improves transformation performance, thereby enhancing the performance of the coding system.
[0100] The embodiments of this application will now be described in detail with reference to the accompanying drawings.
[0101] The communication method provided in this application embodiment can be used in any communication system, such as a 3GPP communication system, for example, a long term evolution (LTE) system, or a 5G mobile communication system, a hybrid LTE and 5G network system, an NR system, an NR vehicle-to-everything (V2X) system, a device-to-device (D2D) communication system, a machine-to-machine (M2M) communication system, an Internet of Things (IoT) system, a narrow band Internet of Things (NB-IoT) system, a global system for mobile communications (GSM), an enhanced data rate for GSM evolution (EDGE) system, a wideband code division multiple access (WCDMA) system, a code division multiple access (CDMA2000) system, or a time division-synchronization code division multiple access (TDMA) system. Access, TD-SCDMA, eMBB, ultra-reliable and low-latency communication (URLLC), enhanced machine-type communication (eMTC), and various types of future communication systems are also included, as well as non-terrestrial network (NTN) systems (such as satellite communication systems), non-3GPP communication systems, etc., without restriction.
[0102] The communication method provided in this application can be applied to various communication scenarios. For example, it can be applied to one or more of the following communication scenarios: coding of control channels, coding of data channels, etc., without limitation.
[0103] The communication system provided in the embodiments of this application will be described below with reference to Figure 6.
[0104] Figure 6 is a schematic diagram of a communication system provided in an embodiment of this application. As shown in Figure 6, the communication system may include at least one terminal device and at least one network device.
[0105] In Figure 6, the terminal device can be located within the beam / cell coverage area of the network device, and the network device can provide communication services to the terminal device. For example, the network device can use channel coding to encode downlink data and then transmit it to the terminal device via air interface after constellation modulation (i.e., the network device is the transmitting device, and the terminal device is the receiving device); the terminal device can also use channel coding to encode uplink data and then transmit it to the network device via air interface after constellation modulation (i.e., the terminal device is the transmitting device, and the network device is the receiving device). It is understood that when network devices communicate with each other, or when terminal devices communicate with each other, communication can also be based on channel coding; that is, the transmitting and receiving devices can both be network devices or both be terminal devices, without restriction.
[0106] The terminal device in Figure 6 can be a device with wireless transceiver capabilities or a chip or chip system that can be configured on the device. It allows users to access the network and is used to provide voice and / or data connectivity to users. The terminal device can also be called user equipment (UE), subscriber unit, terminal, mobile station (MS), or mobile terminal (MT), etc.
[0107] For example, the terminal device in Figure 6 can be a mobile phone, a tablet computer, or a computer with wireless transceiver capabilities. Terminal equipment can also be user stations, mobile stations, remote stations, remote terminal equipment, mobile terminal equipment, user terminal equipment, wireless communication equipment, user agents, user devices, cellular phones, cordless phones, session initiation protocol (SIP) phones, wireless local loop (WLL) stations, personal digital assistants (PDAs), handheld devices with wireless communication capabilities, computing devices, processing devices connected to wireless modems, in-vehicle equipment, wearable devices, terminal equipment in the Internet of Things (IoT), home appliances, virtual reality (VR) terminals, augmented reality (AR) terminals, wireless terminals in industrial control, wireless terminals in autonomous driving, wireless terminals in telemedicine, wireless terminals in smart grids, wireless terminals in smart cities, wireless terminals in smart homes, vehicles with vehicle-to-vehicle (V2V) communication capabilities, intelligent connected vehicles, and UAV-to-UAV communication. Unmanned aerial vehicles (UAVs) with U2U communication capabilities, terminal devices in future networks, or terminal devices in future evolved public land mobile networks (PLMNs) are not subject to restrictions.
[0108] In Figure 6, the network device can be any device deployed in the access network capable of wireless communication with terminal devices. It can also be a chip or chip system that can be configured within such a device, a logical node or module, or a function implemented in software. Its main responsibilities include air interface-side wireless physical control, resource scheduling, wireless resource management, quality of service management, data compression and encryption, wireless access control, and mobility management. Specifically, the network device can be either a wired access device or a wireless access device.
[0109] For example, a network device can consist of one or more access network (AN) / radio access network (RAN) nodes. AN / RAN nodes can be various types of base stations, such as: satellite base stations, evolved Node Bs (gNBs), transmission reception points (TRPs), evolved Node Bs (eNBs), radio network controllers (RNCs), Node Bs (NBs), base station controllers (BSCs), base transceiver stations (BTSs), home base stations (e.g., home evolved Node Bs, or home Node Bs (HNBs), macro base stations, micro base stations, pico base stations, small cells, relay stations, balloon stations, drone stations, wireless backhaul nodes, base band units (BBUs), or wireless fidelity (Wi-Fi) access points (APs), etc. It is understood that network devices can be terrestrial devices or non-terrestrial devices (such as satellites, drones, high-altitude communication equipment, etc.). Furthermore, in communication systems employing different wireless access technologies, the names of network devices with base station functions may differ, and this application does not impose any restrictions on this.
[0110] In another example, the network equipment may include a BBU and a remote radio unit (RRU). The BBU and RRU can be located in different places; for example, the RRU can be moved remotely to a high-traffic area, while the BBU is located in the central equipment room. The BBU and RRU can also be located in the same equipment room. The BBU and RRU can also be different components under the same rack.
[0111] In another example, the network device can be a device that includes centralized unit (CU) nodes, distributed unit (DU) nodes, or both CU and DU nodes. For instance, the network device can be logically divided into CUs and DUs, with some protocol layer functions centrally controlled by the CU, and the remaining partial or complete protocol layer functions distributed in the DU, which is centrally controlled by the CU. The CU and DU can be separate entities or included in the same network element, such as a BBU. Furthermore, the centralized unit (CU) can be further divided into a control plane (CU-CP) and a user plane (CU-UP).
[0112] In another example, the network device may also be a device that includes a radio unit (RU), or a device that includes a CU, a DU, and a RU. The RU may be included in a radio frequency device or radio frequency unit, such as an RRU, an active antenna unit (AAU), or a remote radio head (RRH).
[0113] It is understood that CU (or CU-CP and CU-UP), DU, or RU may have different names in different systems, but those skilled in the art will understand their meaning. For example, in an open radio access network (O-RAN) 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 modules and hardware modules.
[0114] Based on the above description of the terminal device and network device, optionally, the communication method provided in the embodiments of this application can be implemented by the aforementioned terminal device or network device, or by components of the terminal device or network device, such as by application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or software (such as program code in memory) deployed in the terminal device or network device, without limitation.
[0115] Optionally, in this embodiment of the application, the transmitting device (or source) and the receiving device (or sink) can encode and decode using the process shown in Figure 7 below. The transmitting device can be any terminal device or network device in the communication system shown in Figure 6, and the receiving device can also be any terminal device or network device in the communication system shown in Figure 6.
[0116] In this process, the transmitting device can perform source encoding on its own generated bits to obtain a source bit stream, perform channel encoding on the source bit stream, and then modulate it before transmitting the modulated symbols to the receiving device through a noisy channel. When the receiving device receives the modulated symbols through the noisy channel, it can demodulate them, then perform channel decoding to recover the source bit stream, and finally perform source decoding to obtain the decoding result.
[0117] In specific implementation, as shown in Figure 6, each terminal device and network device can adopt the composition structure shown in Figure 8, or include the components shown in Figure 8. Figure 8 is a schematic diagram of the composition of a communication device 800 provided in an embodiment of this application. The communication device 800 can be a terminal device or a chip or system-on-a-chip in a terminal device; it can also be a network device or a chip or system-on-a-chip in a network device. As shown in Figure 8, the communication device 800 includes a processor 801, a transceiver 802, and a communication line 803.
[0118] Furthermore, the communication device 800 may also include a memory 804. The processor 801, memory 804, and transceiver 802 can be connected via a communication line 803.
[0119] The processor 801 can be a central processing unit (CPU), a general-purpose processor, a network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller, a programmable logic device (PLD), or any combination thereof. The processor 801 can also be other devices with processing capabilities, such as circuits, devices, or software modules, without limitation.
[0120] Transceiver 802 is used to communicate with other devices or other communication networks. These other communication networks can be Ethernet, radio access network (RAN), wireless local area network (WLAN), etc. Transceiver 802 can be a module, circuit, transceiver, or any device capable of enabling communication.
[0121] Communication line 803 is used to transmit information between the components included in communication device 800.
[0122] The memory 804 is used to store instructions. These instructions can be computer programs.
[0123] The memory 804 can be a read-only memory (ROM) or other type of static storage device that can store static information and / or instructions; it can also be a random access memory (RAM) or other type of dynamic storage device that can store information and / or instructions; it can also be an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, etc., without limitation.
[0124] It should be noted that the memory 804 can exist independently of the processor 801, or it can be integrated with the processor 801. The memory 804 can be used to store instructions, program code, or some data, etc. The memory 804 can be located inside or outside the communication device 800, without limitation. The processor 801 is used to execute the instructions stored in the memory 804 to implement the communication method provided in the following embodiments of this application.
[0125] In one example, processor 801 may include one or more CPUs, such as CPU0 and CPU1 in Figure 8.
[0126] As an optional implementation, the communication device 800 may include multiple processors, for example, in addition to the processor 801 in FIG8, it may also include a processor 807.
[0127] As an optional implementation, the communication device 800 also includes an output device 805 and an input device 806. For example, the input device 806 is a device such as a keyboard, mouse, microphone, or joystick, and the output device 805 is a device such as a display screen or speaker.
[0128] It should be noted that the communication device 800 can be a desktop computer, a portable computer, a network server, a mobile phone, a tablet computer, a wireless terminal, an embedded device, a chip system, or a device with a similar structure to that shown in Figure 8. Furthermore, the composition shown in Figure 8 does not constitute a limitation on the communication device. In addition to the components shown in Figure 8, the communication device may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0129] In this embodiment of the application, the chip system may be composed of chips or may include chips and other discrete devices.
[0130] Furthermore, the actions, terms, etc., involved in the various embodiments of this application can be referenced interchangeably without limitation. The message names or parameter names in the messages exchanged between the various devices in the embodiments of this application are merely examples, and other names may be used in specific implementations without limitation.
[0131] The communication method provided in the embodiments of this application will be described below with reference to the communication system shown in Figure 6 and Figure 9. The transmitting device can be any terminal device or network device in the communication system shown in Figure 6, and the receiving device can also be any terminal device or network device in the communication system shown in Figure 6. The transmitting or receiving device described in the following embodiments may include the components shown in Figure 8.
[0132] Figure 9 is a flowchart of a communication method provided in an embodiment of this application. As shown in Figure 9, the method may include:
[0133] Step 901: The transmitting device determines the first sequence of length K1 from the information bit sequence of length K.
[0134] The information bit sequence can include the information bits themselves, and K can be the number of information bits included in the information bit sequence. Alternatively, the information bit sequence can include information bits and cyclic redundancy check (CRC) bits, that is, the information bit sequence can be a CRC-encoded information bit sequence, and K can be the sum of the number of information bits and the number of CRC bits included in the information bit sequence.
[0135] The first sequence comprises information bits that have undergone transformation (or can be described as shaping, forming, probabilistic shaping, or distribution matching) during the information bit sequence, passing through a transformation module (or distribution matching module, distribution matcher, etc.) during the encoding process. This first sequence can also be described as the input sequence of the transformation module, and its length K1 can be described as the input length of the transformation module.
[0136] Where K is a positive integer, and K1 is a positive integer less than or equal to K. K1 can be determined based on one or more of the following: Y, signal-to-noise ratio, modulation and coding scheme (MCS), etc., where Y is the number of modulation symbols corresponding to the transmission resource. A detailed description of the specific value of K1 can be found in the subsequent description of K1, and will not be repeated here.
[0137] Optionally, if the sending device is a network device, its transmission resources can be determined by the network device itself. If the sending device is a terminal device, its transmission resources can be configured by the network device.
[0138] Step 902: The transmitting device segments the first sequence according to the number of code blocks.
[0139] The transmitting device can segment the first sequence according to the number of code blocks when transforming the first sequence. The number of code blocks can be determined based on E and a first length, where the first length is the maximum length of the transformed result.
[0140] For example, the first length can be the maximum mother code length.
[0141] In the polar coding process, the maximum mother code length can be understood as the maximum coding length of the polar code.
[0142] Where E is the length of the second sequence, which is the output sequence obtained after the transformation of the first sequence, or it can be described as the output sequence of the transformation module, and the length E of the second sequence is the output length of the transformation module.
[0143] Here, E can be determined based on the number of modulation symbols Y corresponding to the transmission resources, and E is a positive integer greater than or equal to K1. A detailed description of the specific values of E can be found in the subsequent description of E, and will not be repeated here.
[0144] For example, the number of code blocks can be the rounded-up result of the ratio of E to the first length.
[0145] Right now Where C represents the number of code blocks, N max Indicates the first length. This indicates rounding up to the nearest integer.
[0146] For example, the first length can be any of the following lengths: 512, 1024, 2048, or 4096.
[0147] Optionally, the first length corresponding to the uplink transmission and the first length corresponding to the downlink transmission can be the same or different.
[0148] For example, the first length corresponding to the downlink transmission can be greater than or equal to the first length corresponding to the uplink transmission.
[0149] Since the transmitting device needs to perform the transformation process shown in step 903 below, the processing complexity is relatively high. Generally, the processing capability of the network device is stronger than that of the terminal device. The first length corresponding to the downlink transmission can be greater than or equal to the first length corresponding to the uplink transmission in order to reduce the processing complexity of the terminal device, reuse existing hardware as much as possible, and reduce hardware overhead.
[0150] For example, the first length corresponding to the downlink transmission is any of the following lengths: 512, 1024, 2048, or 4096.
[0151] One approach is to set the first length of the downlink transmission to 1024 to ensure compatibility with NR communication systems and improve communication performance. Alternatively, the first length can be set to 2048 or 4096 to improve transform-based transmission performance; generally, a longer first length results in better transform-based transmission performance. Another option is to set the first length of the downlink transmission to 512 to further reduce the complexity at the transmitting end.
[0152] For example, the first length corresponding to the uplink transmission is any of the following lengths: 512, 1024, 2048, or 4096.
[0153] One approach is to set the first length of the uplink transmission to 512 or 1024 to ensure compatibility with NR communication systems, reuse existing decoders in terminal devices, reduce implementation complexity, and maximize the reuse of existing hardware. Alternatively, the first length of the uplink transmission can be set to 2048 or 4096 to improve transformation-based transmission performance. It is understood that the longer the first length, the better the transformation-based transmission performance.
[0154] Optionally, the first length corresponding to the uplink transmission can also be 0. In this case, it is assumed that the sending device does not support the transformation.
[0155] Optionally, the transmitting device may determine the number of code blocks based on E and the first length, provided that the transmitting device supports transformation (or is described as enabling transformation, supporting probabilistic shaping, enabling probabilistic shaping, etc.).
[0156] For example, the transmitting device can determine whether to support the transformation based on the carrier type.
[0157] For example, when the carrier type is orthogonal frequency division multiplexing (OFDM), the transmitting device can determine that it supports the transformation.
[0158] Taking 5G NR uplink transmission as an example, uplink transmission supports two waveforms: Discrete Fourier Transform Spread OFDM (DFT-S-OFDM) and OFDM. The transmitting device can support the transformation in the OFDM scenario. In the DFT-S-OFDM scenario, supporting the transformation may affect the peak-to-average power ratio (PAPR), so it is possible to choose not to support the transformation.
[0159] Optionally, the transmitting device can also determine whether transformation is supported based on other information. For example, the transmitting device can determine whether to indicate transformation based on the received first indication information, which is used to indicate whether transformation is supported. Alternatively, the transmitting device can also determine whether transformation is supported based on the MCS table, etc., without restriction.
[0160] Step 903: The transmitting device transforms the segmented sequence separately, and concatenates the transformed results to obtain a second sequence of length E.
[0161] The transmitting device can segment the first sequence according to the number of code blocks C to obtain C segments of sequence. The C segments of sequence are then transformed to obtain the transformed result of each segment, i.e., the transformed result of segment C. The transformed results of segment C are then concatenated to obtain the second sequence of length E.
[0162] Optionally, when the transmitting device segments the first sequence according to the number of code blocks C, it can fill the first sequence into a third sequence of length K1', and divide the third sequence into C segments.
[0163] Where K1 is less than or equal to K1', and K1' is a positive integer multiple of the number of code blocks. For example, K1' is equal to the product of the floor function of the ratio of K1 to C and C, i.e. This indicates rounding up to the nearest integer.
[0164] Optionally, if K1 equals K1', the third sequence may include K1 bits of the first sequence. If K1 is less than K1', the third sequence may include K1 bits of the first sequence and (K1'-K1) repeated bits from the first sequence; or, the third sequence may include K1 bits of the first sequence and (K1'-K1) padding bits.
[0165] For example, the transmitting device can divide the third sequence into C segments. For the C segments, the length of the sequence obtained after transforming the C-1 segment (i.e., the transformed result) is the first length, and the length of the sequence obtained after transforming the other segment (i.e., the transformed result) is E-(C-1)*the first length.
[0166] The transmitting device transforms the segmented sequence separately, which can also be described as the transmitting device performing distribution matching transformation on the segmented sequence separately.
[0167] Optionally, the transmitting device may perform distribution matching transformation on the segmented sequence based on the first encoding method.
[0168] Optionally, the transmitting device may perform distribution matching transformation on the segmented sequence according to the decoding method of the first encoding method.
[0169] For example, the first encoding method can be polar code, low density parity check code (LDPC) encoding, RM code, convolutional code, RS code, arithmetic encoding, etc., without limitation.
[0170] For example, taking polar code as the first encoding method, when the transmitting device transforms each segmented sequence, it can refer to the aforementioned description of the distribution matching process in Figure 5, placing the original information bits to be transformed (i.e., the segmented sequence) in the information bit position, and using the LLR value corresponding to the target distribution as the sequence of symbols to be decoded (as the LLR input on the right side of the fence diagram in Figure 5), and obtaining auxiliary bits through decoding. Further, based on the original information bits to be transformed (i.e., the segmented sequence) and the decoded auxiliary bits, the encoded bit sequence (the bits filled with pattern 3 in Figure 5) is obtained, serving as the shaped bit sequence (i.e., the transformed result).
[0171] Based on the above description, the transformed result is a sequence that follows a specific distribution (such as a non-uniform distribution). Concatenating the transformed results of segment C yields a second sequence that also follows a specific distribution (such as a non-uniform distribution).
[0172] Based on the method shown in Figure 9, a new segmentation method for dividing information bit sequences is provided. Specifically, the transmitting device can segment the first sequence according to E and a first length, and then transform and concatenate the segmented sequences. Compared to the NR standard which stipulates that the transmitting device can only divide the information bit sequence into a maximum of two segments, the transmitting device, by segmenting the first sequence according to the above method during transformation, can not only reduce complexity but also improve transformation performance (such as improving the transformation performance based on polar codes), thereby improving the performance of the coding system.
[0173] Based on the method shown in Figure 9 above, the length K1 of the first sequence is described in detail below:
[0174] The length K1 of the first sequence can be determined based on Y, where Y is the number of modulation symbols corresponding to the transmission resource.
[0175] For example, K1 is equal to the product of r and Y, where r is a positive number.
[0176] In the first possible design, r is related to the modulation order.
[0177] Where r is greater than 0 and less than or equal to 2.
[0178] For example, taking a modulation order of 10 as an example, the amplitude bits corresponding to the real and imaginary parts of the modulation symbol can be transformed respectively. In this case, the value of r can be in the range of (0,2]. For example, the value of r can be 1.5 (equivalent to an shaping cost of 1.25) or 1.4 (equivalent to an shaping cost of 0.3), etc., without limitation.
[0179] In the second possible design, r is related to the modulation order and MCS.
[0180] Where r is greater than 0 and less than or equal to the difference between the modulation order and 4; the modulation order is greater than 4. When the modulation orders are the same, r corresponding to the first MCS is less than or equal to r corresponding to the second MCS; the index of the first MCS is less than the index of the second MCS.
[0181] Optionally, a corresponding r can be configured for each MCS.
[0182] For example, taking a modulation order of 10 as an example, based on the above grouping principle, the amplitude bits corresponding to the real and imaginary parts of the modulation symbol can be transformed respectively. In this case, the value range of r can be (0,2]. Within this value range, a corresponding r can be configured for each MCS. The r corresponding to the MCS with a smaller sequence number (such as the first MCS) is less than or equal to the r corresponding to the MCS with a larger sequence number (such as the second MCS). For example, the value of r configured for the MCS with sequence number 20 can be 1.1, and the value of r configured for the MCS with sequence number 23 can be 1.5.
[0183] In another example, taking a modulation order of 8 as an example, based on the above grouping principle, the amplitude bits corresponding to the real and imaginary parts of the modulation symbol can be transformed respectively. In this case, the value range of r can be (0,2]. Within this value range, a corresponding r can be configured for each MCS. The r corresponding to the MCS with a smaller sequence number is less than or equal to the r corresponding to the MCS with a larger sequence number.
[0184] In another example, taking a modulation order of 6 as an example, based on the above grouping principle, the amplitude bits corresponding to the real and imaginary parts of the modulation symbol can be transformed respectively. In this case, the value range of r can be (0,2]. Within this value range, a corresponding r can be configured for each MCS. The r corresponding to the MCS with a smaller sequence number is less than or equal to the r corresponding to the MCS with a larger sequence number.
[0185] In the third possible design, r is predefined.
[0186] In this approach, after determining the specific value of r in advance based on the aforementioned grouping principle, the specific value of r can be predefined using a communication protocol pre-definition method, so that the sending device can determine the specific value of r according to the communication protocol. The description of determining the specific value of r based on the grouping principle can be found in the relevant descriptions of the first to second possible designs mentioned above, and will not be repeated here.
[0187] Based on the method shown in Figure 9 above, the length E of the second sequence is described in detail below:
[0188] The length E of the second sequence can be determined based on Y.
[0189] In one possible design, E is an even number greater than or equal to K1.
[0190] For example, the value of E is equal to the product of P and Y, where P is an even number.
[0191] For example, the value of E can be 2Y.
[0192] It is understandable that when the value of E is equal to 2Y, the second sequence corresponds to one bit of a certain amplitude in the real part and one bit of the imaginary part of the Y modulation symbols.
[0193] Based on the method shown in Figure 9 above, after determining the second sequence, the transmitting device can further encode (e.g., polar coding), rate matching, and modulate the second sequence to obtain a modulation symbol sequence. The transmitting device can send the modulation symbol sequence to the receiving device, and correspondingly, the receiving device receives the information to be decoded from the transmitting device, demodulates, de-rate-matches, and decodes the information to be decoded to obtain the second sequence.
[0194] The modulation symbol sequence output by the transmitting device may be affected by noise and other interference when transmitted through the channel, and the information to be decoded received by the receiving device is the modulation symbol sequence affected by noise and other interference.
[0195] The information to be decoded corresponds to a second sequence of length E. The receiving device can determine the first sequence based on the number of code blocks and the information to be decoded.
[0196] The receiving device can determine the number of code blocks based on E and the first length, referring to the method used by the sending device to determine the number of code blocks.
[0197] Based on the above description, before encoding, the transmitting device can, if it supports transformation, use the method shown in Figure 9 to determine the number of code blocks based on E and the first length, and then segment the first sequence in the information bit sequence according to the number of code blocks.
[0198] For example, the sending device may segment the first sequence with reference to the following description:
[0199] It should be noted that the various embodiments of this application can be implemented independently or in combination, without limitation. Unless otherwise specified or in conflict, the terminology and / or descriptions between the different embodiments provided in this application are consistent and can be referenced mutually. Technical features in different embodiments can be combined to form new embodiments based on their inherent logical relationships.
[0200] It is understood that in the embodiments of this application, the executing entity may perform some or all of the steps in the embodiments of this application. These steps or operations are merely examples, and the embodiments of this application may also perform other operations or variations thereof. Furthermore, the various steps may be executed in different orders as presented in the embodiments of this application, and it is not necessarily necessary to execute all the operations in the embodiments of this application.
[0201] The foregoing primarily describes the solutions provided in this application from the perspective of device-to-device interaction. It is understood that each device, in order to achieve the aforementioned functions, includes corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should readily recognize that, based on the algorithm steps of the examples described in conjunction with the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0202] This application embodiment can divide each device into functional modules according to the above method example. For example, each function can be divided into a separate functional module, or two or more functions can be integrated into one processing module. The integrated module can be implemented in hardware or as a software functional module. It should be noted that the module division in this application embodiment is illustrative and only represents one logical functional division. In actual implementation, there may be other division methods.
[0203] Figure 10 shows a transmitting device 100 when each functional module is divided according to its corresponding function. The transmitting device 100 can perform the actions performed by the transmitting device in the method shown in Figure 9. All relevant content of each step involved in the above method embodiment can be referred to the functional description of the corresponding functional module. The technical effects that can be obtained can be referred to the above method embodiment, and will not be repeated here.
[0204] The transmitting device 100 may include a transceiver module 1001 and a processing module 1002. Exemplarily, the transmitting device 100 may be a communication device, or a chip or other combination device or component having the aforementioned transmitting device functions applied in a communication device. When the transmitting device 100 is a communication device, the transceiver module 1001 may be a transceiver, which may include an antenna and radio frequency circuits, etc.; the processing module 1002 may be a processor (or processing circuit), such as a baseband processor, which may include one or more CPUs. When the transmitting device 100 is a component having the aforementioned transmitting device functions, the transceiver module 1001 may be a radio frequency unit; the processing module 1002 may be a processor (or processing circuit), such as a baseband processor. When the transmitting device 100 is a chip system, the transceiver module 1001 may be an input / output interface of a chip (e.g., a baseband chip); the processing module 1002 may be a processor (or processing circuit) of the chip system, and may include one or more central processing units. It should be understood that the transceiver module 1001 in the embodiments of this application can be implemented by a transceiver or transceiver-related circuit components; the processing module 1002 can be implemented by a processor or processor-related circuit components (or, referred to as processing circuit).
[0205] For example, the transceiver module 1001 can be used to execute all the transceiver operations performed by the transmitting device in the embodiment shown in FIG9, and / or to support other processes of the technology described herein; the processing module 1002 can be used to execute all operations other than the transceiver operations performed by the transmitting device in the embodiment shown in FIG9, and / or to support other processes of the technology described herein.
[0206] Figure 11 shows a receiving device 110, which can perform the actions performed by the receiving device in the method shown in Figure 9 above. All relevant content of each step involved in the above method embodiment can be referred to the functional description of the corresponding functional module, and the technical effects that can be obtained can be referred to the above method embodiment, which will not be repeated here.
[0207] The receiving device 110 may include a transceiver module 1101 and a processing module 1102. For example, the receiving device 110 may be a communication device, or a chip or other combination device or component having the aforementioned receiving device functions. When the receiving device 110 is a communication device, the transceiver module 1101 may be a transceiver, which may include an antenna and radio frequency circuits; the processing module 1102 may be a processor (or processing circuit), such as a baseband processor, which may include one or more CPUs. When the receiving device 110 is a component having the aforementioned receiving device functions, the transceiver module 1101 may be a radio frequency unit; the processing module 1102 may be a processor (or processing circuit), such as a baseband processor. When the receiving device 110 is a chip system, the transceiver module 1101 may be an input / output interface of a chip (e.g., a baseband chip); the processing module 1102 may be a processor (or processing circuit) of the chip system, and may include one or more central processing units. It should be understood that the transceiver module 1101 in the embodiments of this application can be implemented by a transceiver or transceiver-related circuit components; the processing module 1102 can be implemented by a processor or processor-related circuit components (or, referred to as processing circuit).
[0208] For example, the transceiver module 1101 can be used to perform all the transceiver operations performed by the receiving device in the embodiment shown in FIG9, and / or to support other processes of the technology described herein; the processing module 1102 can be used to perform all operations other than the transceiver operations performed by the receiving device in the embodiment shown in FIG9, and / or to support other processes of the technology described herein.
[0209] As another possible implementation, the transceiver module 1001 in Figure 10 can be replaced by a transceiver unit that integrates the functions of the transceiver module 1001; the processing module 1002 can be replaced by a processor that integrates the functions of the processing module 1002. Furthermore, the transmitting end device 100 shown in Figure 10 may also include a memory. Alternatively, the transceiver module 1101 in Figure 11 can be replaced by a transceiver unit that integrates the functions of the transceiver module 1101; the processing module 1102 can be replaced by a processor that integrates the functions of the processing module 1102. Furthermore, the receiving end device 110 shown in Figure 11 may also include a memory.
[0210] Alternatively, when the processing module 1002 is replaced by a processor and the transceiver module 1001 is replaced by a transceiver, the transmitting end device 100 involved in the embodiments of this application can also be the communication device 120 shown in FIG12. Or, when the processing module 1102 is replaced by a processor and the transceiver module 1101 is replaced by a transceiver, the receiving end device 110 involved in the embodiments of this application can also be the communication device 120 shown in FIG12.
[0211] The processor can be logic circuit 1201, and the transceiver can be interface circuit 1202. Furthermore, the communication device 120 shown in FIG12 may also include a memory 1203.
[0212] This application also provides a communication device, as shown in FIG13. This communication device can be applied to the method shown in any of the embodiments in FIG9. As shown in FIG13, the communication device includes a processing module and a transceiver module. The processing module may be one or more processors, and the transceiver module may be a transceiver or a communication interface. This communication device can be used to implement the sending or receiving device involved in any of the above method embodiments, or to implement the functions of the device involved in any of the above method embodiments. The device or device function may be a network component in a hardware device, a software function running on dedicated hardware, or a virtualization function instantiated on a platform (e.g., a cloud platform). Optionally, the communication device may further include a storage module for storing the program code and data of the communication device.
[0213] In one example, the communication device functions as a transmitting device or is a chip applied within a transmitting device, and executes the steps performed by the transmitting device in the above method embodiments. The transceiver module is used to specifically execute the transmitting and / or receiving actions performed by the transmitting device in any embodiment of FIG9, for example, supporting the transmitting device in performing other processes of the technology described herein. The processing module can be used to support the communication device in performing the processing actions in the above method embodiments, for example, supporting the transmitting device in performing other processes of the technology described herein.
[0214] To achieve the above functions, the chip of this application may include hardware structures and / or software modules corresponding to the execution of each function. Those skilled in the art will readily recognize that, based on the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0215] In one possible implementation, when the transmitting or receiving device is a chip, the transceiver module can be a communication interface, pins, or circuits. The communication interface can be used to input data to be processed to the processor and can output the processor's processing results. Specifically, the communication interface can be a general purpose input / output (GPIO) interface, which can connect to multiple peripheral devices (such as LCD displays, cameras, radio frequency (RF) modules, antennas, etc.). The communication interface is connected to the processor via a bus.
[0216] The processing module can be a processor, which can execute computer execution instructions stored in the storage module to cause the chip to perform the methods involved in any of the embodiments shown in FIG9. Further, the processor may include a controller, an arithmetic logic unit (ALU), and registers. For example, the controller is mainly responsible for instruction decoding and issuing control signals for the operations corresponding to the instructions. The ALU is mainly responsible for performing fixed-point or floating-point arithmetic operations, shift operations, and logical operations, and can also perform address operations and conversions. The registers are mainly responsible for storing register operands and intermediate operation results temporarily stored during instruction execution. In specific implementations, the processor's hardware architecture can be an ASIC architecture, a microprocessor without interlocked piped stages architecture (MIPS) architecture, an advanced reduced instruction set machine (RISC) machine (ARM) architecture, or a network processor (NP) architecture, etc. The processor can be single-core or multi-core. The storage module can be an internal storage module of the chip, such as registers or caches. The storage module can also be an external storage module, such as ROM or other types of static storage devices that can store static information and instructions, RAM, etc.
[0217] It should be noted that the functions of the processor and interface can be implemented through hardware design, software design, or a combination of both; no restrictions are imposed here.
[0218] This application also provides a computer program product that, when executed by a computer, can implement the functions of any of the above method embodiments.
[0219] This application also provides a computer program that, when executed by a computer, can implement the functions of any of the above method embodiments.
[0220] This application also provides a computer-readable storage medium. All or part of the processes in the above method embodiments can be implemented by a computer program instructing related hardware. This program can be stored in the computer-readable storage medium, and when executed, it can include the processes of the above method embodiments. The computer-readable storage medium can be an internal storage unit of the terminal (including a data sending end and / or a data receiving end) of any of the foregoing embodiments, such as the terminal's hard disk or memory. The computer-readable storage medium can also be an external storage device of the terminal, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the terminal. Further, the computer-readable storage medium can include both the terminal's internal storage unit and external storage devices. The computer-readable storage medium is used to store the computer program and other programs and data required by the terminal. The computer-readable storage medium can also be used to temporarily store data that has been output or will be output.
[0221] It should be noted that the terms "first" and "second," etc., in the specification, claims, and drawings of this application are used to distinguish different objects, not to describe a specific order. "First" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Therefore, a feature defined with "first" and "second" may explicitly or implicitly include one or more of that feature. In the description of this embodiment, unless otherwise stated, "a plurality of" means two or more.
[0222] Furthermore, the terms “comprising” and “having”, and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the steps or units listed, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to such process, method, product, or apparatus.
[0223] It should be understood that in this application, "at least one (item)" means one or more. "More than one" means two or more. "At least two (items)" means two or three or more. "And / or" is used to describe the relationship between related objects, indicating that there can be three relationships. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the related objects before and after are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple. Both "...when" and "if" indicate that a corresponding action will be taken under certain objective circumstances. They are not time limits, nor do they require a judgment action to be taken when the action is taken, nor do they imply any other limitations.
[0224] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner to facilitate understanding.
[0225] In this application, "sending information to...(terminal device)" can be understood as the destination of the information being the terminal device. This can include sending information directly or indirectly to the terminal device. "Receiving information from...(terminal device)" can be understood as the source of the information being the terminal device, and can include receiving information directly or indirectly from the terminal device. Information may undergo necessary processing between the source and destination, such as format changes, but the destination can understand the valid information from the source.
[0226] Through the above description of the embodiments, those skilled in the art can clearly understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0227] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0228] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0229] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0230] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of this application embodiment, or all or part of the technical solution, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, RAM, magnetic disks, or optical disks.
Claims
1. A communication method characterized by comprising: include: Determine the first sequence of length K1 from the information bit sequence of length K; The first sequence is segmented according to the number of code blocks; the number of code blocks is determined according to E and a first length, where E is the length of the second sequence; the first length is the maximum length of the sequence after each code block transformation. The segmented sequences are transformed separately, and the transformed results are concatenated to obtain the second sequence of length E.
2. The method of claim 1, wherein, The transformation of the segmented sequence includes: Perform distribution matching transformation on each of the segmented sequences.
3. The method according to claim 1 or 2, characterized in that, The transformation of the segmented sequence includes: Based on the first encoding method, the segmented sequences are subjected to distribution matching transformation.
4. The method according to any one of claims 1 to 3, characterized in that, The transformation of the segmented sequence includes: Based on the decoding method of the first encoding method, the segmented sequences are subjected to distribution matching transformation.
5. The method according to any one of claims 1-4, characterized in that, The transformed result is a sequence that follows a specific distribution.
6. The method according to any one of claims 1-5, characterized in that, The second sequence is a sequence that follows a specific distribution.
7. The method according to any one of claims 1-6, characterized in that, E is a positive integer greater than or equal to K1.
8. The method according to any one of claims 1-7, characterized in that, The value of E is determined based on the number of modulation symbols corresponding to the transmission resources.
9. The method according to any one of claims 1-8, characterized in that, The number of code blocks is the rounded-up result of the ratio of E to the first length.
10. The method according to any one of claims 1-9, characterized in that, The first length is any of the following: 512, 1024, 2048, or 4096.
11. The method according to any one of claims 1-10, characterized in that, The first length corresponding to the downlink transmission is greater than or equal to the first length corresponding to the uplink transmission.
12. The method according to any one of claims 1-11, characterized in that, The first length corresponding to the downlink transmission is any of the following lengths: 512, 1024, 2048, or 4096.
13. The method according to any one of claims 1-12, characterized in that, The first length corresponding to the uplink transmission is any of the following lengths: 512, 1024, 2048, or 4096.
14. The method according to any one of claims 1-13, characterized in that, If the transmitting device supports transformation, the number of code blocks is determined based on E and the first length.
15. The method according to claim 14, characterized in that, When the carrier type is Orthogonal Frequency Division Multiplexing (OFDM), it is determined that the transmitting device supports the transformation.
16. The method according to any one of claims 1 to 15, characterized in that, The step of segmenting the first sequence according to the number of code blocks includes: The first sequence is filled into a third sequence of length K1'; wherein K1 is less than or equal to K1', and K1' is a positive integer multiple of the number of code blocks; The third sequence is divided into C segments; where C is the number of code blocks.
17. The method according to claim 16, characterized in that, K1' is equal to the product of the floor function of the ratio of K1 to C and C.
18. The method according to any one of claims 1 to 17, characterized in that, The step of segmenting the first sequence according to the number of code blocks includes: The first sequence is filled into a third sequence of length K1'; wherein K1 is less than or equal to K1', and K1' is a positive integer multiple of the number of code blocks; The third sequence is divided into C segments; where C is the number of code blocks.
19. The method according to any one of claims 1 to 18, characterized in that, The step of segmenting the first sequence according to the number of code blocks includes: The first sequence is filled into a third sequence of length K1'; wherein K1 is less than or equal to K1', and K1' is a positive integer multiple of the number of code blocks; The third sequence is divided into C segments, where the length of the transformed sequence of segment C-1 is the first length, and the length of the transformed sequence of the other segment is E-(C-1)*the first length, where C is the number of code blocks.
20. A method of communication, comprising: include: Obtain the information to be decoded; the information to be decoded corresponds to a second sequence of length E; Based on the number of code blocks and the information to be decoded, the first sequence is obtained; The number of code blocks is determined based on E and a first length, where the first length is the maximum length of the transformed result.
21. The method according to claim 20, characterized in that, The second sequence is a sequence that follows a specific distribution.
22. The method according to claim 20 or 21, characterized in that, The value of E is determined based on the number of modulation symbols corresponding to the transmission resources.
23. The method according to any one of claims 20-22, characterized in that, The number of code blocks is the rounded-up result of the ratio of E to the first length.
24. The method according to any one of claims 20-23, characterized in that, The first length is any of the following: 512, 1024, 2048, or 4096.
25. The method according to any one of claims 20-24, characterized in that, The first length corresponding to the downlink transmission is greater than or equal to the first length corresponding to the uplink transmission.
26. The method according to any one of claims 20-25, characterized in that, The first length corresponding to the downlink transmission is any of the following lengths: 512, 1024, 2048, or 4096.
27. The method according to any one of claims 20-26, characterized in that, The first length corresponding to the uplink transmission is any of the following lengths: 512, 1024, 2048, or 4096.
28. The method according to any one of claims 20-27, characterized in that, If the transmitting device supports transformation, the number of code blocks is determined based on E and the first length.
29. The method according to any one of claims 20-28, characterized in that, When the carrier type is Orthogonal Frequency Division Multiplexing (OFDM), it is determined that the transmitting device supports the transformation.
30. A communications device, characterized by include: The processing module is used to determine a first sequence of length K1 from an information bit sequence of length K; The processing module is further configured to segment the first sequence according to the number of code blocks; the number of code blocks is determined according to E and a first length, wherein E is the length of the second sequence; The processing module is further configured to transform the segmented sequence separately, and concatenate the transformed results to obtain the second sequence of length E.
31. A communications device, characterized by include: The transceiver module is used to acquire information to be decoded; the information to be decoded corresponds to a second sequence of length E. The processing module is used to obtain a first sequence based on the number of code blocks and the information to be decoded; the number of code blocks is determined according to E and a first length.
32. A communications device, characterized by The communication device includes a processor; the processor is configured to run a computer program or instructions that cause the communication method as described in any one of claims 1-19 to be executed, or cause the communication method as described in any one of claims 20-29 to be executed.
33. A communications device, characterized by The communication device includes an interface circuit and a logic circuit; the interface circuit is used to input and / or output information; the logic circuit is used to execute the communication method as described in any one of claims 1-19, or to execute the communication method as described in any one of claims 20-29, and to process and / or generate the information based on the information.
34. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions or programs that, when executed on a computer, cause the communication method as described in any one of claims 1-19 to be executed, or cause the communication method as described in any one of claims 20-29 to be executed.
35. A computer program product, characterized in that, The computer program product includes computer instructions; when some or all of the computer instructions are executed on a computer, they cause the communication method as described in any one of claims 1-19 to be executed, or cause the communication method as described in any one of claims 20-29 to be executed.