Communication method and communication device
By dynamically adjusting the CRC polynomial set in the encoding and decoding devices, the problem that existing technologies cannot meet the requirements for flexible and variable error detection is solved, thereby improving the error detection performance and data reception accuracy of the communication system.
Patent Information
- Application Number
- CN202410533581.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-29
- Publication Date
- 2025-10-31
AI Technical Summary
Existing technologies cannot meet the flexible and variable error detection requirements of transmitted data, resulting in data of the same payload length having different error detection requirements that cannot be met.
The encoding and decoding devices determine the set of CRC polynomials corresponding to the payload size, information type, and importance of the payload sequence, respectively. The length of the CRC bit sequence is dynamically adjusted to meet different error detection requirements. The encoding device adds the CRC bit sequence before channel coding, and the decoding device performs CRC bit sequence verification after channel decoding.
This technology enables flexible adjustment of the CRC bit sequence length in data transmission with different payload lengths and types, improving the error detection performance of the communication system and increasing the accuracy of data reception.
Smart Images

Figure CN120880604A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of channel coding, and more specifically, to a communication method and a communication apparatus. Background Technology
[0002] During information transmission, errors may occur between the data received by the receiver and the data sent by the sender. To maximize the accuracy of data reception, the data needs to be encoded before being sent and verified before being received. Data is only accepted if the verification passes. There are various verification methods at the receiver, such as parity check (PC), Internet checksum, and cyclic redundancy check (CRC). Among these, CRC is a calculation method used to verify the accuracy of data transmission on a communication link. It establishes a pre-defined relationship between data bits and check bits through certain numerical operations. In network communication, CRC has certain advantages over other verification methods. CRC can complete the calculation of the data checksum in a very short time and quickly complete the error detection process.
[0003] Currently, the length of the CRC bit sequence added by the sending end after the transmitted data changes with the payload length of the transmitted data. For transmitted data with the same payload length, the corresponding CRC bit sequence length is the same. However, transmitted data with the same payload length may have different error detection requirements, and current technology cannot meet the flexible and variable error detection requirements of the transmitted data. Therefore, how to design a scheme that can meet the flexible and variable error detection requirements of the transmitted data is an urgent problem to be solved in this application. Summary of the Invention
[0004] This application provides an encoding method that can meet the flexible and variable error detection requirements of the transmitted data and improve the error detection performance of the communication system.
[0005] Firstly, an encoding method is provided, which can be executed by an encoding device, by a component of the encoding device (e.g., a chip, circuit, or chip system), or by a logic module or software capable of implementing all or part of the functions of the encoding device. For ease of understanding, the following description uses the example of execution by an encoding device.
[0006] The method includes: an encoding device acquiring a payload sequence; the encoding device determining a first CRC polynomial, the first CRC polynomial belonging to a first set, the first set including at least one candidate CRC polynomial, the first set corresponding to at least one of the following information: payload size of the payload sequence, information type of the payload sequence, and importance of the payload sequence; the encoding device calculating a first CRC bit sequence based on the first CRC polynomial and the payload sequence; and the encoding device adding the first CRC bit sequence to the payload sequence and performing channel coding to obtain a codeword sequence.
[0007] Specifically, the aforementioned payload sequence includes the information bit sequence carried by uplink control information (UCI) or downlink control information (DCI), or the information bit sequence transmitted by any one of the broadcast channel, uplink data channel, and downlink data channel, or the information bit sequence carried on the media access control control element (MAC CE) or the information bit sequence carried on the radio resource control information element (RRC IE).
[0008] Specifically, each of the at least one candidate CRC polynomials mentioned above includes at least one of the following parameters:
[0009] Length, polynomial expression, binary representation, octal representation, hexadecimal representation, etc.
[0010] Specifically, the information type of the aforementioned payload sequence is any one of the following: perceptual information, artificial intelligence (AI) information, channel information, or other information. Perceptual information includes at least one of the following: reflection point data, patch data, environmental map data, reflection map data, electromagnetic signal data, etc.; AI information includes at least one of the following: training data, model data, inference data, performance data, etc.; and channel information includes at least one of the following: channel matrix data, channel state information data, etc.
[0011] It should be noted that the first CRC polynomial determined by the encoding device can also be 0, and the length of the first CRC bit sequence obtained based on the first CRC polynomial is also 0.
[0012] Using the above method, when determining the CRC polynomial for encoding the payload sequence, the encoding device selects it from a set corresponding to at least one of the parameters such as payload size, payload information type, and payload importance. Therefore, the CRC polynomial determined by the encoding device can consider various parameters of the payload sequence, not just the payload size. This method can determine CRC bit sequences of different lengths for payload sequences of the same length, thereby meeting different error detection requirements for payload sequences of the same length and improving the error detection performance of the communication system.
[0013] In conjunction with the first aspect, in some implementations of the first aspect, the encoding device determines the first CRC polynomial by: the encoding device determining a first set from at least one set based on first information, the first information being at least one of the following: payload size of the payload sequence, information type of the payload sequence, and importance of the payload sequence; and the encoding device determining the first CRC polynomial from the first set based on second information, the second information being at least one of the following: payload size of the payload sequence, information type of the payload sequence, and importance of the payload sequence, excluding the first information.
[0014] For example, the first information may be the payload size of the payload sequence, and the second information may be the information type of the payload sequence and / or the importance of the payload sequence; or, the first information may be the information type of the payload sequence, and the second information may be the payload size of the payload sequence and / or the importance of the payload sequence; or, the first information may be the importance of the payload sequence, and the second information may be the payload size of the payload sequence and / or the information type of the payload sequence.
[0015] Using the above method, the encoding device can determine the CRC polynomial used for encoding the payload sequence based on the pre-configured first and second information, without requiring other devices to select the CRC polynomial through signaling instructions, thus saving signaling overhead.
[0016] In conjunction with the first aspect, in certain implementations of the first aspect, the encoding device determines the first CRC polynomial by: the encoding device receiving third information, the third information indicating a first set in at least one set; the encoding device receiving fourth information, the fourth information indicating at least one first candidate CRC polynomial in the first set; and the encoding device determining the first CRC polynomial based on the third information and the fourth information.
[0017] For example, the aforementioned third information and / or the aforementioned fourth information are carried in radio resource control (RRC) signaling, DCI, MAC CE, or UCI.
[0018] Using the above method, the encoding device selects the CRC polynomial by signaling instructions from other devices, eliminating the need for the encoding device to determine the CRC polynomial and reducing the operational complexity of the encoding device.
[0019] In conjunction with the first aspect, in some implementations of the first aspect, if the number of at least one first candidate CRC polynomial is greater than 1, the encoding device determines the first CRC polynomial based on the third information and the fourth information, including: the encoding device determines the first CRC polynomial based on the third information, the fourth information and the fifth information, wherein the fifth information is at least one of the following: payload size of the payload sequence, information type of the payload sequence, and importance of the payload sequence.
[0020] Using the above method, the encoding device selects the CRC polynomial by signaling instructions from other devices and combines this selection with the CRC polynomial determined by the encoding device based on the pre-configured fifth information. This reduces the operational complexity of the encoding device and improves the accuracy of the selected CRC polynomial, thereby enhancing the error detection performance of the communication system.
[0021] In conjunction with the first aspect, in certain implementations of the first aspect, the encoding device determines the first CRC polynomial by: the encoding device determining a first set from at least one set based on first information, the first information being at least one of the following: payload size of the payload sequence, information type of the payload sequence, and importance of the payload sequence; the encoding device receiving fourth information, the fourth information being used to indicate at least one first CRC polynomial in the first set; and the encoding device determining the first CRC polynomial based on the fourth information.
[0022] For example, the aforementioned fourth information is carried in RRC signaling, DCI, MAC CE, or UCI.
[0023] By using the above method, the encoding device determines the first set based on the pre-configured first information and selects the CRC polynomial from the first set through signaling instructions from other devices. This not only saves signaling overhead but also reduces the operational complexity of the encoding device, enabling flexible determination of the CRC polynomial.
[0024] In conjunction with the first aspect, in some implementations of the first aspect, if the number of at least one first candidate CRC polynomial is greater than 1, the encoding device determines the first CRC polynomial based on the fourth information, including: the encoding device determines the first CRC polynomial based on the fourth information and the sixth information, wherein the sixth information is at least one of the following information other than the first information: the payload size of the payload sequence, the information type of the payload sequence, and the importance of the payload sequence.
[0025] By combining the CRC polynomial selection by the encoding device with the CRC polynomial determined by the encoding device based on the pre-configured sixth information, the accuracy of the selected CRC polynomial can be improved, thereby enhancing the error detection performance of the communication system.
[0026] In conjunction with the first aspect, in some implementations of the first aspect, the encoding device determines the first CRC polynomial by: the encoding device receiving third information, the third information indicating a first set in at least one set; and the encoding device determining the first CRC polynomial from the first set based on seventh information, the seventh information being at least one of the following: payload size of the payload sequence, information type of the payload sequence, and importance of the payload sequence.
[0027] For example, the aforementioned third information is carried in RRC signaling, DCI, MAC CE, or UCI.
[0028] Using the above method, the encoding device determines the first set through signaling instructions from other devices and combines this with the CRC polynomial selected by the encoding device from the first set according to the pre-configured seventh information. This not only saves signaling overhead but also reduces the operational complexity of the encoding device, enabling flexible determination of the CRC polynomial.
[0029] In conjunction with the first aspect, in some implementations of the first aspect, each of the at least one set mentioned above includes at least one candidate CRC polynomial, and there exist two sets among the at least one set that include the same candidate CRC polynomial.
[0030] Using the above method, payload sequences with different lengths, different information types, or different importance can choose the same CRC polynomial, thus meeting flexible error detection performance requirements.
[0031] Secondly, a verification method is provided. This method can be executed by a decoding device, by a component of the decoding device (such as a chip, circuit, or chip system), or by a logic module or software capable of implementing all or part of the functions of the decoding device. For ease of understanding, the following description uses the decoding device as an example.
[0032] The method includes: a decoding device receiving a codeword sequence; the decoding device performing channel decoding on the codeword sequence to obtain a payload sequence and a first CRC bit sequence; the decoding device determining a first CRC polynomial, the first CRC polynomial belonging to a first set, the first set including at least one candidate CRC polynomial, the first set corresponding to at least one of the following: payload size of the payload sequence, information type of the payload sequence, and importance of the payload sequence; the decoding device calculating a second CRC bit sequence based on the first CRC polynomial and the payload sequence, and comparing the second CRC bit sequence with the first CRC bit sequence.
[0033] Specifically, the aforementioned payload sequence includes the information bit sequence carried by the UCI or the information bit sequence carried by the DCI, or the information bit sequence transmitted by any one of the broadcast channel, uplink data channel, and downlink data channel, or the information bit sequence carried on the MACCE or the information bit sequence carried on the RRC IE.
[0034] Specifically, each of the at least one candidate CRC polynomials mentioned above includes at least one of the following parameters:
[0035] Length, polynomial expression, binary representation, octal representation, hexadecimal representation, etc.
[0036] Specifically, the information type of the aforementioned payload sequence is any one of sensing information, AI information, channel information, or other information. Among them, sensing information includes at least one of reflection point data, patch data, environmental map data, reflection map data, electromagnetic signal data, etc.; AI information includes at least one of training data, model data, inference data, performance data, etc.; and channel information includes at least one of channel matrix data, channel state information data, etc.
[0037] It should be noted that the first CRC polynomial determined by the decoding device can also be 0, and the length of the second CRC bit sequence obtained based on the first CRC polynomial is also 0.
[0038] Using the above method, the decoding device selects the CRC polynomial used for payload sequence verification from a set corresponding to at least one of the parameters such as payload size, payload information type, and payload importance. Therefore, the CRC polynomial determined by the decoding device can consider various parameters of the payload sequence, not just the payload size. This method can determine CRC bit sequences of different lengths for payload sequences of the same length, thereby meeting different error detection requirements for payload sequences of the same length and improving the error detection performance of the communication system.
[0039] Other implementation methods for the second aspect can refer to the other implementation methods for the first aspect mentioned above, and will not be elaborated here.
[0040] Thirdly, an encoding method is provided, which can be executed by an encoding device, by a component of the encoding device (e.g., a chip, circuit, or chip system), or by a logic module or software capable of implementing all or part of the functions of the encoding device. For ease of understanding, the following description uses the example of execution by an encoding device.
[0041] The method includes: an encoding device acquiring a payload sequence; the encoding device determining that the payload length of the payload sequence belongs to a first set in at least one set, each set in the at least one set including at least one payload length value, the payload length values between each set in the at least one set being non-contiguous; the encoding device determining a first CRC polynomial based on the first set; the encoding device calculating a first CRC bit sequence based on the first CRC polynomial and the payload sequence; the encoding device adding the first CRC bit sequence to the payload sequence and performing channel coding to obtain a codeword sequence.
[0042] Specifically, the aforementioned payload sequence includes the information bit sequence carried by the UCI or the information bit sequence carried by the DCI, or the information bit sequence transmitted by any one of the broadcast channel, uplink data channel, and downlink data channel, or the information bit sequence carried on the MACCE or the information bit sequence carried on the RRC IE.
[0043] Specifically, the first set and the first CRC polynomial mentioned above have a corresponding relationship.
[0044] Using the above method, the CRC bit sequence length determined by the encoding device for the payload sequence is determined by the set of payload lengths of the payload sequence, and does not monotonically increase or decrease with the increase of the payload length of the payload sequence, thereby satisfying different error detection requirements of the payload sequence and improving the error detection performance of the communication system.
[0045] In conjunction with the third aspect, in some implementations of the third aspect, at least one of the above-mentioned net load length values is discontinuous.
[0046] Fourthly, a verification method is provided. This method can be executed by a decoding device, by a component of the decoding device (such as a chip, circuit, or chip system), or by a logic module or software capable of implementing all or part of the functions of the decoding device. For ease of understanding, the following description uses the decoding device as an example.
[0047] The method includes: a decoding device receiving a codeword sequence; the decoding device performing channel decoding on the codeword sequence to obtain a payload sequence and a first CRC bit sequence; the decoding device determining that the payload length of the payload sequence belongs to a first set in at least one set, each set in the at least one set including at least one payload length value, the payload length values between each set in the at least one set being non-contiguous; the decoding device determining a first CRC polynomial based on the first set; and the decoding device calculating a second CRC bit sequence based on the first CRC polynomial and the payload sequence, and comparing the second CRC bit sequence with the first CRC bit sequence.
[0048] Specifically, the aforementioned payload sequence includes the information bit sequence carried by the UCI or the information bit sequence carried by the DCI, or the information bit sequence transmitted by any one of the broadcast channel, uplink data channel, and downlink data channel, or the information bit sequence carried on the MACCE or the information bit sequence carried on the RRC IE.
[0049] Specifically, the first set and the first CRC polynomial mentioned above have a corresponding relationship.
[0050] Using the above method, the CRC bit sequence length determined by the decoding device for the payload sequence is determined by the set of payload lengths, and does not monotonically increase or decrease with the increase of the payload length, thereby satisfying different error detection requirements of the payload sequence and improving the error detection performance of the communication system.
[0051] In conjunction with the fourth aspect, in some implementations of the fourth aspect, at least one of the above-mentioned net load length values is discontinuous.
[0052] Fifthly, a communication device is provided, which has the function of implementing the method of the first aspect or the third aspect, or any possible implementation of the first aspect or the third aspect. The function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more units corresponding to the above-described functions.
[0053] In a sixth aspect, this application provides a communication device including at least one processor coupled to at least one memory for storing computer programs or instructions, and the at least one processor for calling and running the computer programs or instructions from the at least one memory, causing the communication device to perform the method of the first aspect or any possible implementation thereof, or to perform the method of the third aspect or any possible implementation thereof.
[0054] In a seventh aspect, this application provides a communication device, including a communication interface and a circuit. The communication interface is used to receive a payload sequence and input the payload sequence to the circuit. The circuit is used to determine a first CRC polynomial, calculate a first CRC bit sequence based on the first CRC polynomial and the payload sequence, add the first CRC bit sequence to the payload sequence, and perform channel coding to obtain a codeword sequence. The communication interface is also used to output the codeword sequence.
[0055] As an example, the communication device in the fifth to seventh aspects is an encoding device, such as an encoder.
[0056] Eighthly, a communication device is provided, the communication device having the function of implementing the method of the second or fourth aspect, or any possible implementation of the second or fourth aspect. The function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more units corresponding to the above-described functions.
[0057] Ninthly, this application provides a communication device including at least one processor coupled to at least one memory for storing computer programs or instructions, and the at least one processor for calling and running the computer programs or instructions from the at least one memory, causing the communication device to perform the method of the second aspect or any possible implementation thereof, or to perform the method of the fourth aspect or any possible implementation thereof.
[0058] In a tenth aspect, this application provides a communication device, including a communication interface and a circuit. The communication interface is used to receive a codeword sequence and input the codeword sequence to the circuit. The circuit is used to perform channel decoding on the codeword sequence to obtain a payload sequence and a first CRC bit sequence, determine a first CRC polynomial, calculate a second CRC bit sequence based on the first CRC polynomial and the payload sequence, and compare the second CRC bit sequence with the first CRC bit sequence.
[0059] As an example, the communication device in the eighth to tenth aspects is a decoding device, such as a decoder.
[0060] Eleventhly, this application provides a computer-readable storage medium storing computer program code or instructions that, when executed on a computer, cause the method in the first aspect or any possible implementation thereof to be implemented, or the method in the second aspect or any possible implementation thereof to be implemented, or the method in the third aspect or any possible implementation thereof to be implemented, or the method in the fourth aspect or any possible implementation thereof to be implemented.
[0061] In a twelfth aspect, this application provides a computer program product comprising computer program code or instructions that, when executed on a computer, cause the method in the first aspect or any possible implementation thereof to be implemented, or the method in the second aspect or any possible implementation thereof to be implemented, or the method in the third aspect or any possible implementation thereof to be implemented, or the method in the fourth aspect or any possible implementation thereof to be implemented.
[0062] In a thirteenth aspect, this application provides a wireless communication system, including an encoding device as described in any of the fifth to seventh aspects and a decoding device as described in any of the eighth to tenth aspects. Attached Figure Description
[0063] Figure 1 This is a schematic diagram of the system architecture of a communication system applicable to embodiments of this application.
[0064] Figure 2 This is a flowchart of a communication system.
[0065] Figure 3 This is a schematic flowchart of a communication method 300 provided in an embodiment of this application.
[0066] Figure 4 This is a schematic diagram illustrating the determination of a first CRC polynomial, provided as an embodiment of this application.
[0067] Figure 5 This is a schematic diagram illustrating another method for determining the first CRC polynomial, as provided in an embodiment of this application.
[0068] Figure 6 This is a schematic flowchart of a communication method 400 provided in an embodiment of this application.
[0069] Figure 7 This is a comparison chart showing the error correction and detection performance of the first CRC bit sequence added to the payload sequence and the CRC bit sequence added to the payload sequence by NR in the embodiments of this application.
[0070] Figure 8 A schematic structural diagram of a communication device provided in this application.
[0071] Figure 9 A schematic structural diagram of another communication device provided in this application.
[0072] Figure 10 A schematic structural diagram of another communication device provided in this application. Detailed Implementation
[0073] The technical solutions in this application will now be described with reference to the accompanying drawings.
[0074] The technical solutions of this application can be applied to various communication systems, including but not limited to: satellite communication systems, fifth-generation (5G) systems, long-term evolution (LTE) systems (LTE frequency division duplex (FDD) systems, LTE time division duplex (TDD) systems), etc. The technical solutions provided in this application can also be applied to future communication systems, such as sixth-generation mobile communication systems. Furthermore, they can be applied to device-to-device (D2D) communication, vehicle-to-everything (V2X) communication, machine-to-machine (M2M) communication, machine-type communication (MTC), and Internet of Things (IoT) communication systems, or other communication systems, etc., which are not limited herein.
[0075] The technical solutions of this application embodiment can also be applied to three major application scenarios of narrowband Internet of Things (NB-IoT), global system for mobile communications (GSM), enhanced data rate for GSM evolution (EDGE), wideband code division multiple access (WCDMA), code division multiple access 2000 (CDMA2000), time division-synchronization code division multiple access (TD-SCDMA), and next-generation 5G mobile communication systems: enhanced mobile broadband (eMBB), ultra-reliable and low-latency communications (URLLC), and massive machine-type communications (eMTC).
[0076] Figure 1 This is a schematic diagram of the system architecture of a communication system applicable to the technical solutions of this application. The communication system may include one or more network devices and one or more terminal devices.
[0077] For example, a terminal device may also be referred to as user equipment (UE), access terminal, user unit, user station, mobile station, mobile station, mobile terminal (MT), remote station, remote terminal, mobile device, user terminal, terminal, wireless communication device, user agent, or user apparatus. In the embodiments of this application, the terminal device may be a device that provides voice and / or data connectivity to a user, and can be used to connect people, objects, and machines, such as a handheld device with wireless connectivity, in-vehicle equipment, etc. The terminal device in the embodiments of this application may be a mobile phone, tablet computer, laptop computer, PDA, mobile internet device (MID), wearable device, virtual reality (VR) device, augmented reality (AR) device, personal digital assistant, wireless terminal in industrial control, wireless terminal in self-driving, wireless terminal in remote medical surgery, wireless terminal in smart grid, wireless terminal in transportation safety, wireless terminal in smart city, wireless terminal in smart home, vehicle-mounted mobile terminal, etc. Optionally, the UE may be used to act as a base station. For example, the UE may act as a scheduling entity, providing sidelink signals between UEs in V2X or D2D, etc.
[0078] In this embodiment, the device for implementing the terminal's functions can be the terminal itself, or it can be any device capable of supporting the terminal in implementing those functions, such as a chip system or a chip. This device can be installed in the terminal. In this embodiment, the chip system can consist of chips, or it can include chips and other discrete components.
[0079] For example, a network device can be a device with wireless transceiver capabilities, which can be a device that provides wireless communication services. It is usually located on the network side, including but not limited to next-generation base stations (gNodeB, gNB) in 5th generation (5G) communication systems, base stations in 6th generation (6G) mobile communication systems, base stations in future mobile communication systems, or access nodes in wireless fidelity (Wi-Fi) systems, evolved node B (eNB), radio network controller (RNC), node B (NB), base station controller (BSC), home base station (e.g., home evolved NodeB, or home Node B, HNB), base band unit (BBU), transmission reception point (TRP), transmitting point (TP), base transceiver station (BTS), etc. in long term evolution (LTE) systems. In a network architecture, network equipment may include centralized unit (CU) nodes, distributed unit (DU) nodes, RAN equipment including CU and DU nodes, or RAN equipment including control plane CU nodes, user plane CU nodes, and DU nodes. Alternatively, network equipment may also be wireless controllers, relay stations, vehicle-mounted equipment, and wearable devices in cloud radio access network (CRAN) scenarios. Furthermore, base stations may be macro base stations, micro base stations, relay nodes, donor nodes, or combinations thereof. A base station may also refer to a communication module, modem, or chip installed within the aforementioned equipment or apparatus. A base station may also be a mobile switching center and equipment performing base station functions in D2D, V2X, and M2M communications, network-side equipment in 6G networks, or equipment performing base station functions in future communication systems. Base stations can support networks with the same or different access technologies, without limitation.
[0080] In this embodiment, the means for implementing the function of the network device can be the network device itself, or it can be a means that enables the network device to implement the function, such as a chip system or a chip, which can be installed in the network device. In this embodiment, the chip system can be composed of chips, or it can include chips and other discrete devices.
[0081] It should be understood that the communication method based on cyclic redundancy check (CRC) provided in this application can be used in dedicated network equipment or general-purpose equipment, and can be applied to various network devices (e.g., base station equipment) as described above, as well as various terminal devices as described above. Specifically, this scheme is mainly implemented through the channel coding unit in these devices.
[0082] The methods provided in the embodiments of this application can also be implemented by application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or by software (e.g., program code in memory), without limitation.
[0083] Figure 2 This is a flowchart illustrating the communication system process. For example... Figure 2 The technical solution of this application mainly relates to the channel coding part. Channel coding is located between source coding and modulation, responsible for coding the bits generated by the source, then modulating them, and finally transmitting the modulated symbols through a noisy channel to the receiver. The receiver demodulates the signals and then performs channel decoding. Channel decoding is located between demodulation and source decoding, responsible for recovering the source bit stream.
[0084] The transmitting end performs channel coding on the signal source from the media access control (MAC), and the receiving end sends the demodulated log likelihood ratio (LLR) soft information into the decoder to recover the signal source information and upload it to the MAC.
[0085] When using wireless technology for communication, the signal source at the transmitting end typically undergoes source coding, channel coding, and modulation before being transmitted over the channel. The receiving end, upon receiving the signal, sequentially performs demodulation, channel decoding, and source decoding to obtain the final signal.
[0086] Channel coding and decoding is one of the core technologies in the field of wireless communication, and its performance improvement will directly enhance network coverage and user transmission rate.
[0087] During information transmission, errors may occur between the data received by the receiver and the data sent by the sender. To maximize the accuracy of data reception, the data needs to be encoded before being sent and verified before being received. Data is only accepted if the verification passes. There are various verification methods at the receiver, such as parity check (PC), Internet checksum, and CRC. CRC is a calculation method used to verify the accuracy of data transmission over a communication link. It establishes a pre-defined relationship between data bits and check bits through a certain numerical operation. The sender calculates a CRC bit sequence for the transmitted data using a formula and appends this CRC bit sequence to the transmitted data. The receiver performs the same calculation on the transmitted data using the pre-defined numerical operation. If the verification passes, the receiver accepts the transmitted data; if the verification fails, the receiver can request the sender to retransmit the data. CRC has certain advantages over other verification methods in network communication. CRC can complete the calculation of the data checksum in a very short time and quickly complete the error detection process.
[0088] Currently, the length of the CRC bit sequence added by the sender after the transmitted data varies with the payload length of the transmitted data. For example, the longer the payload length, the longer the CRC bit sequence added after the transmitted data; conversely, the shorter the payload length, the shorter the CRC bit sequence added after the transmitted data. For transmitted data with the same payload length, the corresponding CRC bit sequence length is the same. However, transmitted data with the same payload length may have different error detection requirements, and current technology cannot meet the flexible and variable error detection requirements of transmitted data. Therefore, how to design a scheme that can meet the flexible and variable error detection requirements of transmitted data is an urgent problem to be solved in this application.
[0089] The specific embodiments involved in this application will be described in detail below with reference to the accompanying drawings. Figure 3 This is a schematic flowchart illustrating a communication method 300 provided in an embodiment of this application. Steps 310 to 318 in the communication method 300 can be executed by an encoding device or by a device applied to the encoding device (e.g., a chip, chip system, or circuit). Steps S320 to 324 can be executed by a decoding device or by a device applied to the decoding device (e.g., a chip, chip system, or circuit). The following description uses an encoding device and a decoding device as examples. For example, the encoding device can be... Figure 1 The network equipment and decoding equipment in the communication system shown can be Figure 1 The terminal equipment in the communication system shown; or, the encoding device can be... Figure 1The terminal equipment and decoding equipment in the communication system shown can be Figure 1 The network device in the communication system shown; or, the encoding device can be a network device in the communication system shown; Figure 1 The terminal equipment and decoding equipment in the communication system shown can be Figure 1 The other terminal device in the communication system shown in this application embodiment does not limit the specific form of the encoding device and the decoding device.
[0090] The communication method 300 may specifically include the following steps:
[0091] Step S310: The encoding device acquires the payload sequence.
[0092] The payload sequence includes the information bit sequence carried by the UCI or the information bit sequence carried by the DCI, or the information bit sequence transmitted by any one of the broadcast channel, uplink data channel, or downlink data channel, or the information bit sequence carried on the MAC CE or the information bit sequence carried on the RRC IE, etc., and this application does not limit it.
[0093] As an example, the aforementioned uplink data channel can be a physical uplink shared channel (PUSCH), the downlink data channel can be a physical downlink shared channel (PDSCH), the uplink control information includes the information transmitted on the physical uplink control channel (PUCCH), and the downlink control information includes the information transmitted on the physical downlink control channel (PDCCH).
[0094] In one possible implementation, the payload length of the payload sequence includes one of 32, 40, 48, 56, or 64.
[0095] For example, when the payload sequence includes a sequence of information bits transmitted by the broadcast channel, the payload length of the payload sequence may include one of 32, 40, 48, 56, or 64.
[0096] For example, when the payload sequence includes an information bit sequence of any one of the uplink data channel, downlink data channel, uplink control information, and downlink control information, the payload length of the payload sequence may include one of 32, 40, 48, 56, and 64, or any other natural number.
[0097] It should be understood that the payload length of the payload sequence refers to the sequence of information bits in the channel or information, excluding the CRC bit sequence.
[0098] In step S312, the encoding device determines a first CRC polynomial, which belongs to a first set, which includes at least one candidate CRC polynomial, and the first set corresponds to at least one of the following information: payload size of the payload sequence, information type of the payload sequence, and importance of the payload sequence.
[0099] Specifically, embodiments of this application can provide the following four methods for determining the first CRC polynomial:
[0100] Method 1: The encoding device determines a first set from at least one set based on the first information; the encoding device determines a first CRC polynomial from the first set based on the second information.
[0101] The first information is at least one of the following: the net load size of the net load sequence, the information type of the net load sequence, and the importance of the net load sequence. The second information is at least one of the following: the net load size of the net load sequence, the information type of the net load sequence, and the importance of the net load sequence, excluding the first information.
[0102] For example, the first information may be the payload length of the payload sequence, and the second information may be the information type of the payload sequence or the importance of the payload sequence; or, the first information may be the information type of the payload sequence, and the second information may be the payload length of the payload sequence or the importance of the payload sequence; or, the first information may be the importance of the payload sequence, and the second information may be the payload length of the payload sequence or the information type of the payload sequence. This application does not limit this.
[0103] In one example, this application embodiment illustrates the concept by using the first information as the payload length of the payload sequence and the second information as the importance of the payload sequence, such as... Figure 4As shown. For example, the payload length can be divided into four intervals: [K0, K1], (K1, K2], (K2, K3], and (K3, K4]. Interval [K0, K1] corresponds to set 1, interval (K1, K2] corresponds to set 2, interval (K2, K3) corresponds to set 3, and interval (K3, K4) corresponds to set 4. Set 1 includes CRC0, CRC3, CRC4, and CRC5; set 2 includes CRC0, CRC3, and CRC6; set 3 includes CRC0, CRC4, CRC5, CRC6, and CRC7; and set 4 includes CRC0, CRC5, and CRC6. CRC7 and CRC11. Here, CRC0 is represented in hexadecimal as 0, CRC3 as 9, CRC4 as 19, CRC5 as 29, CRC6 as 43, CRC7 as d3, and CRC11 as 847. CRC0, CRC3, CRC4, CRC5, CRC6, CRC7, and CRC11 can also be represented in binary, octal, or polynomial. For example, CRC11 is represented in binary as 111000100001 and in polynomial as g. CRC11 (D)=D 11 +D 10 +D 9 +D 5 +1.
[0104] If the payload length K of the payload sequence acquired by the encoding device belongs to the interval (K1, K2], the encoding device determines set 2 (an example of the first set) based on the payload length K. The encoding device can further select a CRC polynomial from set 2 based on the importance of the payload sequence. The importance of the payload sequence can be indicated by the parameter priority index. For example, when the importance of the payload sequence is high, the priority index is set to 1; when the importance of the payload sequence is second highest, the priority index is set to 0. Priority index = 1 corresponds to CRC6, and priority index = 0 corresponds to CRC3. If the importance of the payload sequence is priority index = 1, the encoding device can determine CRC6 (an example of the first CRC polynomial) based on the importance of the payload sequence.
[0105] Another example, in this application embodiment, is illustrated by using the information type of the payload sequence as the first information and the payload length of the payload sequence as the second information, such as... Figure 5As shown. For example, the information types of the payload sequence may include sensing data, artificial intelligence (AI) data, channel data, and other information. Sensing data includes point cloud data, polygon data, environment map data, radiofreq map data, and signal matrix data, etc. AI information includes training data, model data, inference data, and performance data, etc. Channel information includes channel matrix data (h data) and channel state information data (csi data), etc. The system is divided into four sets: perception information (set 1'), AI information (set 2'), channel information (set 3'), and other information (set 4'). Set 1' includes CRC0, CRC3, CRC4, and CRC5; set 2' includes CRC0, CRC3, and CRC6; set 3' includes CRC0, CRC4, CRC5, CRC6, and CRC7; and set 4' includes CRC0, CRC5, CRC6, CRC7, and CRC11. Here, CRC0 is represented in hexadecimal as 0, CRC3 as 9, CRC4 as 19, CRC5 as 29, CRC6 as 43, CRC7 as d3, and CRC11 as 847. CRC0, CRC3, CRC4, CRC5, CRC6, CRC7, and CRC11 can also be represented in binary, octal, or polynomial form. For example, CRC11 is represented in binary as 111000100001 and in polynomial form as g. CRC11 (D)=D 11 +D 10 +D 9 +D 5 +1.
[0106] If the payload sequence of the encoding device includes one or more segments of channel matrix data (h Data) and channel state information data (csi Data) included in the channel information, then the information type of the payload sequence is channel information, and the encoding device determines set 3' (an example of the first set) based on the information type of the payload sequence. The encoding device can further select a CRC polynomial from set 3' based on the payload length of the payload sequence. The payload length can be divided into four intervals: [K0', K1'], (K1', K2'], (K2', K3'], and (K3', K4']. The interval [K0', K1'] corresponds to CRC4 in set 3', the interval (K1', K2'] corresponds to CRC5 in set 3', the interval (K2', K3') corresponds to CRC6 in set 3', and the interval (K3', K4') corresponds to CRC7 in set 3'. If the payload length K of the payload sequence belongs to the interval (K1', K2'], the encoding device determines CRC5 (an example of the first CRC polynomial) based on the payload length K of the payload sequence.
[0107] Optionally, the encoding device can determine the information type of the payload sequence by receiving RRC signaling. For example, the RRC signaling may be a system information block (SIB), an RRC reconfiguration message, a measurement report message, an RRC reconfiguration completion message, a measurement report side traverse message, an RRC reconfiguration side traverse message, or an RRC reconfiguration completion side traverse message, etc. This application does not limit this.
[0108] Optionally, the encoding device can determine the information type of the payload sequence through the added MAC CE.
[0109] Method 2: The encoding device receives third information, which indicates a first set in at least one set; the encoding device receives fourth information, which indicates at least one first candidate CRC polynomial in the first set; the encoding device determines the first CRC polynomial based on the third information and the fourth information.
[0110] For example, the aforementioned third information and / or the aforementioned fourth information may be carried in RRC signaling, DCI, MAC CE, or UCI, etc.
[0111] As an example, this application embodiment illustrates how the aforementioned third information and / or fourth information are carried in RRC signaling or MAC CE. An additional RRC IE can be added to the RRC signaling to carry the third information and / or the aforementioned fourth information.
[0112] For example, the signaling format of the newly added RRC IE in RRC signaling can be as follows:
[0113]
[0114]
[0115] For example, the above-mentioned at least one set includes set 1 (CRC-ResourceSet1), set 2 (CRC-ResourceSet2), set 3 (CRC-ResourceSet3), and set 4 (CRC-ResourceSet4). If the third information field in the RRC signaling received by the encoding device indicates that the encoding device uses the CRC polynomial in set 1 (CRC-ResourceSet1) for encoding, then the third information only needs to carry set 1 (CRC-ResourceSet1) and does not need to carry set 2 (CRC-ResourceSet2), set 3 (CRC-ResourceSet3), and set 4 (CRC-ResourceSet4). Further, the above-mentioned set 1 (CRC-ResourceSet1) includes CRC0, CRC3, CRC4, CRC5, CRC6, CRC7, CRC11, CRC24, CRC32, etc. If the fourth information field in the RRC signaling received by the encoding device indicates that the encoding device uses CRC4 in set 1 (CRC-ResourceSet1) for encoding, then the fourth information only needs to carry CRC4 and does not need to carry other CRC polynomials in set 1. For example, the fourth information can be indicated by specifying the length of CRC4 and its polynomial expression.
[0116] The encoding device can determine the first set based on the index of the CRC-ResourceSet carried in the RRC signaling, and the encoding device can determine the first CRC polynomial in the first set based on the CRC index carried in the RRC signaling.
[0117] Optionally, if the third and / or fourth information is to be carried in a MAC CE, a new MAC CE can be added to the MAC CEList to carry the third and / or fourth information; or, a new logical channel ID (LCID) can be added to carry the third and / or fourth information.
[0118] Another example is illustrated in this application embodiment where the aforementioned third information and / or the aforementioned fourth information are carried in the DCI.
[0119] For example, the above-mentioned at least one set includes set 1, set 2, set 3, and set 4. The third information field in the DCI received by the encoding device is CRC-Resource Set Id. The CRC-Resource Set Id field is set to 00 to indicate that the encoding device uses the CRC polynomial in set 1 for encoding, or the CRC-Resource Set Id field is set to 01 to indicate that the encoding device uses the CRC polynomial in set 2 for encoding, or the CRC-Resource Set Id field is set to 10 to indicate that the encoding device uses the CRC polynomial in set 3 for encoding, or the CRC-Resource Set Id field is set to 11 to indicate that the encoding device uses the CRC polynomial in set 4 for encoding.
[0120] If the third information indicates that the encoding device uses a CRC polynomial from set 1 for encoding, and set 1 includes CRC3, CRC4, CRC5, and CRC6, then the fourth information field in the DCI received by the encoding device is a CRC-Indicator. Setting the CRC-Indicator field to 00 indicates that the encoding device uses CRC3 from set 1 for encoding; setting the CRC-Indicator field to 01 indicates that the encoding device uses CRC4 from set 1 for encoding; setting the CRC-Indicator field to 10 indicates that the encoding device uses CRC5 from set 1 for encoding; or setting the CRC-Indicator field to 11 indicates that the encoding device uses CRC6 from set 1 for encoding.
[0121] The encoding device can determine the first set based on the CRC-Resource Set Id field in the DCI, and the encoding device can determine the first CRC polynomial in the first set based on the CRC-Indicator field in the DCI.
[0122] Specifically, carrying the aforementioned third and / or fourth information in the DCI can reduce latency compared to carrying the aforementioned third and / or fourth information in the RRC signaling.
[0123] Method 2 may also include an implementation where, if the number of at least one first candidate CRC polynomials indicated by the fourth information received by the encoding device is greater than 1, the encoding device determines the first CRC polynomial based on the third and fourth information by: the encoding device determines the first CRC polynomial based on the third, fourth, and fifth information, wherein the fifth information is at least one of the following: payload size of the payload sequence, information type of the payload sequence, and importance of the payload sequence.
[0124] In one example, if the aforementioned third and / or fourth information is carried in RRC signaling, and the fourth information instructs the encoding device to use CRC4 or CRC5 from set 1 (CRC-ResourceSet1) for encoding, then the fourth information only needs to carry CRC4 and CRC5, without needing to carry other CRC polynomials from set 1. The encoding device can select CRC4 or CRC5 for encoding based on at least one of the following: payload size, payload information type, and payload importance. For example, the encoding device can select CRC4 or CRC5 for encoding based on the payload size.
[0125] In another example, where the aforementioned third and / or fourth information is carried in the DCI, the CRC-Indicator field of the fourth information is set to 10+11, instructing the encoding device to use either CRC5 or CRC6 from set 1 for encoding. The encoding device can select CRC5 or CRC6 for encoding based on at least one of the following: payload size, information type of the payload sequence, and importance of the payload sequence. For example, the encoding device can select CRC5 or CRC6 based on the payload size of the payload sequence.
[0126] Compared to Method 2, Method 1 can save signaling overhead; compared to Method 1, Method 2 can reduce the processing complexity of the encoding device.
[0127] Method 3: The encoding device determines a first set from at least one set based on the first information; the encoding device receives fourth information, which indicates at least one first candidate CRC polynomial in the first set; the encoding device determines the first CRC polynomial based on the fourth information.
[0128] Specifically, the method by which the encoding device determines the first set from at least one set based on the first information can refer to the method described in Method 1 above, and will not be repeated here.
[0129] Specifically, the fourth information received by the encoding device can be carried in RRC signaling, DCI, MAC CE, or UCI, etc. The signaling format of the fourth information carried in RRC signaling or the field settings of the fourth information carried in DCI can refer to the signaling format of the fourth information carried in RRC signaling or the field settings of the fourth information carried in DCI in Method 2 above, which will not be repeated here.
[0130] Method 3 may also include an implementation where, if the number of at least one first candidate CRC polynomials indicated by the fourth information received by the encoding device is greater than 1, the encoding device determines the first CRC polynomial based on the fourth information by: the encoding device determining the first CRC polynomial based on the fourth information and the sixth information, wherein the sixth information is at least one of the following information other than the first information: the payload size of the payload sequence, the information type of the payload sequence, and the importance of the payload sequence.
[0131] In one example, if the first information is the payload length of the payload sequence and the fourth information is carried in the RRC signaling, and the fourth information instructs the encoding device to use CRC4 or CRC5 from set 1 (CRC-ResourceSet1) for encoding, then the fourth information only needs to carry CRC4 and CRC5, without needing to carry other CRC polynomials from set 1. The encoding device can select CRC4 or CRC5 for encoding based on at least one of the information type of the payload sequence and the importance of the payload sequence. For example, the encoding device can select CRC4 or CRC5 for encoding based on the information type of the payload sequence.
[0132] In another example, where the first information is the payload length of the payload sequence and the fourth information is carried in the DCI, the CRC-Indicator field of the fourth information is set to 10+11 to instruct the encoding device to use either CRC5 or CRC6 from set 1 for encoding. The encoding device can select CRC5 or CRC6 for encoding based on at least one of the following: the information type of the payload sequence and the importance of the payload sequence. For example, the encoding device can select CRC5 or CRC6 for encoding based on the information type of the payload sequence.
[0133] Method 4: The encoding device receives third information, which indicates a first set in at least one set; the encoding device determines a first CRC polynomial from the first set based on seventh information, which is at least one of the following: payload size of the payload sequence, information type of the payload sequence, and importance of the payload sequence.
[0134] Specifically, the third information received by the encoding device can be carried in RRC signaling, DCI, MAC CE, or UCI, etc. The signaling format of the third information carried in RRC signaling or the field settings of the third information carried in DCI can refer to the signaling format of the third information carried in RRC signaling or the field settings of the third information carried in DCI in Method 2 above, which will not be repeated here.
[0135] Specifically, the method by which the encoding device determines the first CRC polynomial from the first set based on the seventh information can refer to the method described above where the encoding device determines the first CRC polynomial from the first set based on the second information, and will not be repeated here.
[0136] Step S314: The encoding device calculates the first CRC bit sequence based on the first CRC polynomial and the payload sequence.
[0137] In step S316, the encoding device adds the first CRC bit sequence to the payload sequence and performs channel coding to obtain the codeword sequence.
[0138] In step S318, the encoding device sends a codeword sequence to the decoding device. Accordingly, the decoding device receives the codeword sequence.
[0139] In step S320, the decoding device performs channel decoding on the codeword sequence to obtain the payload sequence and the first CRC bit sequence.
[0140] Step S322: The decoding device determines the first CRC polynomial.
[0141] Specifically, the decoding device determines the first CRC polynomial in the same way as the encoding device determines the first CRC polynomial in step S312 above, which will not be repeated here.
[0142] In step S324, the decoding device calculates the second CRC bit sequence based on the first CRC polynomial and the payload sequence, and compares the second CRC bit sequence with the first CRC bit sequence.
[0143] Specifically, if the decoding device finds that the second CRC bit sequence matches the first CRC bit sequence, the verification passes; if the decoding device finds that the second CRC bit sequence does not match the first CRC bit sequence, the verification fails, and the decoding device can request the encoding device to resend the data to be transmitted.
[0144] Through the aforementioned communication method 300, the encoding device can consider various parameter information of the payload sequence during encoding to add CRC bit sequences, so that payload sequences of the same length may correspond to different CRC bit sequences. This satisfies the error detection requirement of flexible and variable payload sequences and improves the error detection performance of the communication system.
[0145] The above-mentioned encoding method 300 can consider various parameter information of the payload sequence to add a CRC bit sequence. This application can also provide a communication method 400, which flexibly determines the CRC bit sequence for the payload sequence based on only considering the payload length of the payload sequence.
[0146] Figure 6This is a schematic flowchart illustrating a communication method 400 provided in an embodiment of this application. Steps 410 to 420 of the communication method 400 can be executed by an encoding device or by a device applied to the encoding device (e.g., a chip, chip system, or circuit). Steps 422 to 426 can be executed by a decoding device or by a device applied to the decoding device (e.g., a chip, chip system, or circuit). The following description uses an encoding device and a decoding device as examples. For example, the encoding device can be... Figure 1 The network equipment and decoding equipment in the communication system shown can be Figure 1 The terminal equipment in the communication system shown; or, the encoding device can be... Figure 1 The terminal equipment and decoding equipment in the communication system shown can be Figure 1 The network device in the communication system shown; or, the encoding device can be a network device in the communication system shown; Figure 1 The terminal equipment and decoding equipment in the communication system shown can be Figure 1 The other terminal device in the communication system shown in this application embodiment does not limit the specific form of the encoding device and the decoding device.
[0147] The communication method 400 may specifically include the following steps:
[0148] Step S410: The encoding device acquires the payload sequence.
[0149] The payload sequence includes the information bit sequence carried by the UCI or the information bit sequence carried by the DCI, or the information bit sequence transmitted by any one of the broadcast channel, uplink data channel, or downlink data channel, or the information bit sequence carried on the MAC CE or the information bit sequence carried on the RRC IE, etc., and this application does not limit it.
[0150] As an example, the uplink data channel mentioned above can be PUSCH, the downlink data channel can be PDSCH, the uplink control information includes the information transmitted on PUCCH, and the downlink control information includes the information transmitted on PDCCH.
[0151] In one possible implementation, the payload length of the payload sequence includes one of 32, 40, 48, 56, or 64.
[0152] For example, when the payload sequence includes a sequence of information bits transmitted by the broadcast channel, the payload length of the payload sequence may include one of 32, 40, 48, 56, or 64.
[0153] For example, when the payload sequence includes an information bit sequence of any one of the uplink data channel, downlink data channel, uplink control information, and downlink control information, the payload length of the payload sequence may include one of 32, 40, 48, 56, and 64, or any other natural number.
[0154] It should be understood that the payload length of the payload sequence refers to the sequence of information bits in the channel or information, excluding the CRC bit sequence.
[0155] In step S412, the encoding device determines that the payload length of the payload sequence belongs to the first set of at least one set.
[0156] Specifically, each of the at least one set mentioned above includes at least one net load length value, and the net load lengths between each of the at least one set are not continuous.
[0157] In step S414, the encoding device determines the first CRC polynomial based on the first set.
[0158] For example, the aforementioned at least one set includes set 1, set 2, set 3, set 4, and set 5. Set 1 is {3, 4, 5, 6, 7, 8, 15, 16}, set 2 is {21, 102, 104}, set 3 is {9, 10, 11, 12, 13, 20, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 37, 38, 39, 40, 41, 42, 43, 44, 46, 56, 91, 94, 99, 112, 113, 115, 126, 127, 128}, and set 4 is {14, 17, 18, 19, 34, 35, 36, 45, 47, 48, 49, 50, 51, 52, 53, 54}. The set 5 is {66, 67, 68, 70, 72, 73, 79, 85, 88, 90}. Set 1 corresponds to CRC0, set 2 corresponds to CRC3, set 3 corresponds to CRC4, set 4 corresponds to CRC5, and set 5 corresponds to CRC6.
[0159] If the payload length K of the payload sequence is 40, the encoding device can determine the first set as set 3, and the encoding device can determine CRC4 (an example of the first CRC polynomial) based on set 3.
[0160] Optionally, the at least one net load length value included in each of the above at least one set may be non-continuous.
[0161] Step S416: The encoding device calculates the first CRC bit sequence based on the first CRC polynomial and the payload sequence.
[0162] In step S418, the encoding device adds the first CRC bit sequence to the payload sequence and performs channel coding to obtain the codeword sequence.
[0163] In step S420, the encoding device sends a codeword sequence to the decoding device. Correspondingly, the decoding device receives the codeword sequence.
[0164] In step S422, the decoding device performs channel decoding on the codeword sequence to obtain the payload sequence and the first CRC bit sequence.
[0165] In step S424, the decoding device determines that the payload length of the payload sequence belongs to the first set in at least one set.
[0166] Specifically, each of the at least one set mentioned above includes at least one net load length value, and the net load lengths between each of the at least one set are not continuous.
[0167] Step S426: The decoding device and the encoding device determine the first CRC polynomial based on the first set.
[0168] Specifically, the method by which the decoding device determines the first CRC polynomial based on the first set can refer to the method by which the encoding device determines the first CRC polynomial based on the first set in step S414 above, and will not be repeated here.
[0169] In step S428, the decoding device calculates the second CRC bit sequence based on the first CRC polynomial and the payload sequence, and compares the second CRC bit sequence with the first CRC bit sequence.
[0170] Specifically, if the decoding device finds that the second CRC bit sequence matches the first CRC bit sequence, the verification passes; if the decoding device finds that the second CRC bit sequence does not match the first CRC bit sequence, the verification fails, and the decoding device can request the encoding device to resend the data to be transmitted.
[0171] Through the above communication method 400, when the encoding device determines the CRC bit sequence based on the payload length of the payload sequence, it can classify payload sequences with different error detection requirements, thereby meeting the error detection requirements of payload sequences with different payload lengths and improving the error detection performance of the communication system.
[0172] Figure 7 This is a comparison chart showing the error correction and detection performance of the first CRC bit sequence added to the payload sequence in this embodiment of the application and the CRC bit sequence added to the payload sequence by the NR system.
[0173] Figure 7 The variation trend of the net charge length K of the net charge sequence between 3 and 128 is given. Figure 7 It can be seen that for NR, as the payload length of the payload sequence gradually increases, the length of the CRC bit sequence added to the payload sequence also shows an increasing trend; however, for the communication methods 300 and 400 provided in the embodiments of this application, as the payload length of the payload sequence gradually increases, the length of the CRC bit sequence added to the payload sequence does not show an increasing trend, but rather increases or decreases dynamically, and the optimal length of the CRC bit sequence added to the payload sequence can even be 0. Furthermore, as the payload length of the payload sequence gradually increases, the block error rate (BLER) gradually decreases, that is, the error correction and detection performance gradually improves. Meanwhile, from... Figure 7 It can be seen that the BLER obtained by the communication method 300 and the communication method 400 provided in this application embodiment is lower than that obtained by NR. That is, the error correction and detection performance obtained by the communication method 300 and the communication method 400 provided in this application embodiment is better than that obtained by NR.
[0174] The communication method provided in this application has been described in detail above. The communication device provided in this application will be described below.
[0175] like Figure 8 This application provides a communication device 800.
[0176] The communication device 800 may be an encoding device, or it may be a device applied to the encoding device that can realize the corresponding functions of the encoding device in the communication method 300 and communication method 400 in the embodiments of this application, such as a chip, chip system or circuit.
[0177] Optionally, the communication device 800 includes a processing module 801, which may be a processor, a processing board, a processing unit, or a processing device, etc. For example, the processing module 801 is used to determine a first CRC polynomial, calculate a first CRC bit sequence based on the first CRC polynomial and the payload sequence, add the first CRC bit sequence to the payload sequence, and perform channel coding to obtain a codeword sequence, etc. For specific processes, please refer to the detailed description of the communication method 300 and communication method 400 in the embodiments of this application, which will not be repeated here.
[0178] Optionally, the communication device 800 further includes a communication module 802, which may also be called a transceiver module, transceiver, transceiver device, or transceiver apparatus, etc., and is used to perform receiving (or input) and / or sending (or output) operations. For example, the communication module 802 can be used to acquire the payload sequence, output the codeword sequence, etc. For specific processes, please refer to the detailed description of the communication method 300 and communication method 400 in the embodiments of this application, which will not be repeated here.
[0179] or, Figure 8 The communication device 800 shown can be a decoding device, or it can be a device applied to the decoding device that can realize the corresponding functions of the decoding device in the communication method 300 and communication method 400 in the embodiments of this application, such as a chip, chip system or circuit.
[0180] Optionally, the communication device 800 includes a processing module 801, which may be a processor, a processing board, a processing unit, or a processing device, etc. For example, the processing module 801 is used to perform channel decoding on the codeword sequence to obtain the payload sequence and the first CRC bit sequence, determine the first CRC polynomial, calculate the second CRC bit sequence based on the first CRC polynomial and the payload sequence, and compare the first CRC bit sequence with the first CRC bit sequence, etc. For specific details, please refer to the detailed description of the communication method 300 and the communication method 400 in the embodiments of this application, which will not be repeated here.
[0181] Optionally, the communication device 800 further includes a communication module 802, which may also be called a transceiver module, transceiver, transceiver device, or transceiver apparatus, etc., and is used to perform receiving (or input) and / or sending (or output) operations. For example, the communication module 802 can be used to receive codeword sequences, etc. For specific details, please refer to the detailed description of the communication method 300 and communication method 400 in the embodiments of this application, which will not be repeated here.
[0182] In some embodiments, the aforementioned communication module and / or processing module can be implemented as a virtual module. For example, the processing module can be implemented as a software functional unit or a virtual device, and the communication module can be implemented as a software function or a virtual device. Alternatively, the processing module or communication module can also be implemented as a physical device, for example, if the device is implemented using a chip / circuit (e.g., integrated circuit, dedicated circuit, logic circuit, etc.). The communication module can be an input / output circuit and / or a communication interface, performing input operations (corresponding to the aforementioned receiving operation) and output operations (corresponding to the aforementioned sending operation); the processing module is an integrated processor, microprocessor, or circuit (e.g., integrated circuit, logic circuit, etc.).
[0183] The module division in this application is illustrative and represents only one logical functional division. In actual implementation, other division methods are possible. Furthermore, the functional modules in the various examples of this application can be integrated into a single processor, exist as separate physical entities, or be integrated into a single module. The integrated modules described above can be implemented in hardware or as software functional modules.
[0184] like Figure 9 This application also provides a communication device 900. The communication device 900 includes at least one processor 910, which implements the functions of the encoding or decoding device described in the foregoing method embodiments.
[0185] Optionally, the processor 910 is coupled to a memory, which may be located within the communication device, integrated with the processor, or located outside the communication device. The communication device 900 may further include at least one memory 920. The memory 920 stores computer programs, instructions, or data necessary for implementing any of the above method embodiments; the processor 910 can execute the computer programs, instructions, or data stored in the memory 920 to complete the communication method of any of the above embodiments.
[0186] Optionally, the communication device 900 may further include a communication interface 930, through which the communication device 900 can interact with other devices. For example, the communication interface 930 may be a transceiver, circuit, bus, module, pin, or other type of interface.
[0187] The coupling in this application refers to indirect coupling or communication connection between devices, units, or modules, which can be electrical, mechanical, or other forms, used for information exchange between devices, units, or modules. The processor 910 may operate in conjunction with the memory 920 and the communication interface 930. This application does not limit the specific connection medium between the processor 910, the memory 920, and the communication interface 930.
[0188] like Figure 10 This application also provides a chip (or chip system). The chip (or chip system) 1000 may include a circuit 1010 and an input / output interface 1020. The circuit 1010 may be a logic circuit, an integrated circuit, etc., and the input / output interface 1020 may be an input / output circuit or an interface circuit, capable of inputting information (or receiving information) and outputting information (or sending information). Optionally, the chip system may be composed of a chip or may include chips and other discrete devices. The chip 1000 can be used to execute the methods performed by the encoding or decoding device in the various embodiments of this application.
[0189] In addition, this application also provides a computer-readable storage medium storing computer instructions that, when executed on a computer, cause operations and / or processes performed by an encoding or decoding device in the various method embodiments of this application to be executed.
[0190] This application also provides a computer program product, which includes computer program code or instructions. When the computer program code or instructions are run on a computer, the operations and / or processes performed by the encoding or decoding device in the various method embodiments of this application are executed.
[0191] Furthermore, this application also provides a chip including a processor. A memory for storing a computer program is provided independently of the chip, and the processor is used to execute the computer program stored in the memory, so that operations and / or processes performed by an encoding or decoding device in any method embodiment are executed. Further, the chip may also include a communication interface. The communication interface may be an input / output interface or an interface circuit, etc. Further, the chip may also include a memory storing code and / or instructions required by the chip to execute the encoding method of this application.
[0192] This application provides a communication system, including an encoding device and a decoding device as described in the embodiments of this application. The encoding device is used to implement the steps performed by the encoding device in the above method embodiments, and the decoding device is used to implement the steps performed by the decoding device in the above method embodiments.
[0193] In various embodiments of this application, "multiple" includes two or more.
[0194] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0195] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0196] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of 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 system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0197] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0198] In addition, 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.
[0199] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) 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, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0200] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. An encoding method, characterized in that, The method includes: Obtain the net load sequence; A first cyclic redundancy check (CRC) polynomial is determined. The first CRC polynomial belongs to a first set, which includes at least one candidate CRC polynomial. The first set corresponds to at least one of the following information: the payload size of the payload sequence, the information type of the payload sequence, and the importance of the payload sequence. The first CRC bit sequence is calculated based on the first CRC polynomial and the payload sequence. The first CRC bit sequence is added to the payload sequence and channel-coded to obtain a codeword sequence.
2. A verification method, characterized in that, The method includes: Receive codeword sequence; Channel decoding is performed on the codeword sequence to obtain the payload sequence and the first cyclic redundancy check (CRC) bit sequence; A first CRC polynomial is determined, the first CRC polynomial belongs to a first set, the first set includes at least one candidate CRC polynomial, and the first set corresponds to at least one of the following information: the payload size of the payload sequence, the information type of the payload sequence, and the importance of the payload sequence. The second CRC bit sequence is calculated based on the first CRC polynomial and the payload sequence, and the second CRC bit sequence is compared with the first CRC bit sequence.
3. The method according to claim 1 or 2, characterized in that, The determination of the first cyclic redundancy check (CRC) polynomial includes: The first set is determined from at least one set based on first information, wherein the first information is at least one of the following: the net load size of the net load sequence, the information type of the net load sequence, and the importance of the net load sequence; The first CRC polynomial is determined from the first set based on the second information, wherein the second information is at least one of the following, in addition to the first information: the payload size of the payload sequence, the information type of the payload sequence, and the importance of the payload sequence.
4. The method according to claim 1 or 2, characterized in that, The determination of the first cyclic redundancy check (CRC) polynomial includes: Receive third information, the third information being used to indicate the first set in at least one set; Receive fourth information, the fourth information being used to indicate at least one first candidate CRC polynomial in the first set; The first CRC polynomial is determined based on the third and fourth information.
5. The method according to claim 4, characterized in that, If the number of at least one first candidate CRC polynomial is greater than 1, determining the first CRC polynomial based on the third information and the fourth information includes: The first CRC polynomial is determined based on the third, fourth, and fifth information, wherein the fifth information is at least one of the following: the payload size of the payload sequence, the information type of the payload sequence, and the importance of the payload sequence.
6. The method according to claim 1 or 2, characterized in that, The determination of the first cyclic redundancy check (CRC) polynomial includes: The first set is determined from at least one set based on first information, wherein the first information is at least one of the following: the net load size of the net load sequence, the information type of the net load sequence, and the importance of the net load sequence; Receive fourth information, the fourth information being used to indicate at least one first candidate CRC polynomial in the first set; The first CRC polynomial is determined based on the fourth information.
7. The method according to claim 6, characterized in that, If the number of at least one first candidate CRC polynomial is greater than 1, determining the first CRC polynomial based on the fourth information includes: The first CRC polynomial is determined based on the fourth and sixth information, wherein the sixth information is at least one of the following, excluding the first information: the payload size of the payload sequence, the information type of the payload sequence, and the importance of the payload sequence.
8. The method according to claim 1 or 2, characterized in that, The determination of the first cyclic redundancy check (CRC) polynomial includes: Receive third information, the third information being used to indicate the first set in at least one set; The first CRC polynomial is determined from the first set based on the seventh information, wherein the seventh information is at least one of the following: the payload size of the payload sequence, the information type of the payload sequence, and the importance of the payload sequence.
9. The method according to any one of claims 4 to 7, characterized in that, The third and / or fourth information is carried in Radio Resource Control (RRC) signaling, Downlink Control Information (DCI), Media Access Control (MAC) CE, or Uplink Control Information (UCI).
10. The method according to any one of claims 3 to 9, characterized in that, Each of the at least one set includes at least one candidate CRC polynomial, and there exist two sets in the at least one set that include the same candidate CRC polynomial.
11. The method according to any one of claims 1 to 10, characterized in that, Each of the at least one candidate CRC polynomials includes at least one of the following parameters: Length, polynomial expression, binary representation, octal representation, hexadecimal representation.
12. The method according to any one of claims 1 to 11, characterized in that, The information type of the payload sequence is any of the following: The information includes perception information, artificial intelligence (AI) information, channel information, and other information. The perception information includes at least one of reflection point data, patch data, environmental map data, reflection map data, and electromagnetic signal data. The AI information includes at least one of training data, model data, inference data, and performance data. The channel information includes at least one of channel matrix data and channel state information (CSI) data.
13. The method according to any one of claims 1 to 12, characterized in that, The payload sequence includes the information bit sequence carried by the uplink control information (UCI), the information bit sequence carried by the downlink control information (DCI), the information bit sequence transmitted by any one of the broadcast channel, uplink data channel, and downlink data channel, the information bit sequence carried on the media access control unit (MAC CE), or the information bit sequence carried on the radio resource control information element (RRC IE).
14. An encoding method, characterized in that, The method includes: Obtain the net load sequence; The payload length of the payload sequence is determined to belong to a first set of at least one set, each set of at least one set includes at least one payload length value, and the payload length values between each set of at least one set are not consecutive; The first cyclic redundancy check (CRC) polynomial is determined based on the first set. The first CRC bit sequence is calculated based on the first CRC polynomial and the payload sequence. The first CRC bit sequence is added to the payload sequence and channel-coded to obtain a codeword sequence.
15. A verification method, characterized in that, The method includes: Receive codeword sequence; Channel decoding is performed on the codeword sequence to obtain the payload sequence and the first cyclic redundancy check (CRC) bit sequence; The payload length of the payload sequence is determined to belong to a first set of at least one set, each set of at least one set includes at least one payload length value, and the payload length values between each set of at least one set are not consecutive; The first CRC polynomial is determined based on the first set; The second CRC bit sequence is calculated based on the first CRC polynomial and the payload sequence, and the second CRC bit sequence is compared with the first CRC bit sequence.
16. The method according to claim 14 or 15, characterized in that, The first set and the first CRC polynomial have a corresponding relationship.
17. The method according to any one of claims 14 to 16, characterized in that, The at least one net load length value is discontinuous.
18. The method according to any one of claims 14 to 17, characterized in that, The payload sequence includes the information bit sequence carried by the uplink control information (UCI), the information bit sequence carried by the downlink control information (DCI), the information bit sequence transmitted by any one of the broadcast channel, uplink data channel, and downlink data channel, the information bit sequence carried on the media access control unit (MAC CE), or the information bit sequence carried on the radio resource control information element (RRC IE).
19. A communication device, characterized in that, Including communication interfaces and circuits, The communication interface is used to acquire the payload sequence and input the payload sequence to the circuit; the communication interface is also used to output the codeword sequence. The circuit is used to enable the method as described in any one of claims 1, 3 to 13, or the circuit is used to enable the method as described in any one of claims 14, 16 to 18.
20. A communication device, characterized in that, Including communication interfaces and circuits, The communication interface is used to acquire codeword sequences and input the codeword sequences into the circuit; The circuit is used to implement the method of any one of claims 2 to 13, or the circuit is used to implement the method of any one of claims 15 to 18.
21. A communication device, characterized in that, include: A processor coupled to a memory, the processor being configured to execute a computer program or instructions stored in the memory to implement the method as described in any one of claims 1-18.
22. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that, when executed on a computer, implement the method as described in any one of claims 1-18.
23. A computer program product, characterized in that, The computer program product includes computer program code or instructions, and when the computer program code or instructions are run on a computer, the method as described in any one of claims 1-18 is implemented.
24. A communication system, characterized in that, The communication system includes an encoding device and a decoding device. The encoding device is used to perform the method as described in any one of claims 1, 3 to 13, or the encoding device is used to perform the method as described in any one of claims 14, 16 to 18; The decoding device is used to perform the method as described in any one of claims 2 to 13, or the decoding device is used to perform the method as described in any one of claims 15 to 18.