Channel encoding method and apparatus, and channel decoding method and apparatus
By flexibly setting the CRC length according to the payload size and information identifier, and optimizing the position of the CRC encoding bit sequence by combining polar coding, the problem of insufficient reliability of CRC encoding in modern communication systems is solved, thereby reducing the bit error rate and improving the channel coding and decoding performance.
Patent Information
- Application Number
- PCT/CN2025/083017
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-08-02
- Filing Date
- 2025-03-17
- Publication Date
- 2026-02-05
AI Technical Summary
The existing CRC encoding based on the information block length k to determine the check code length r cannot meet the reliability requirements of modern communication systems, especially with high bit error rate under high communication rate requirements.
The CRC length can be flexibly set according to the payload size and information identifier. Combined with the polar coding of parity check PC, the position and length of the CRC encoded bit sequence can be optimized to adapt to the error detection capability requirements of different information and reduce the bit error rate during transmission.
It improves the reliability of CRC encoding verification, reduces the bit error rate during transmission, and enhances the performance of channel coding and decoding.
Smart Images

Figure CN2025083017_05022026_PF_FP_ABST
Abstract
Description
Method and apparatus for channel encoding and decoding
[0001] The present application claims priority to the Chinese patent application No. 202411065438.8, filed on August 2, 2024, and entitled "Method and apparatus for channel encoding and decoding", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD
[0002] The present application relates to the field of communication technology, and in particular, to a method and apparatus for channel encoding and decoding. BACKGROUND
[0003] In order to realize reliable transmission in a communication system, error control technology is used, and the most commonly used error control technology is cyclic redundancy check (CRC), that is, a CRC algorithm is used to encode and check information blocks.
[0004] The principle of CRC is based on linear coding theory. The sending end generates r-bit check code (CRC code) according to a certain rule from the k-bit information code sequence to be transmitted, and appends the check code to the information code to form a (k+r)-bit sending sequence. The receiving end checks according to the CRC code generation rule to determine whether an error occurs in the transmission process. The value of r is determined according to the value of k.
[0005] However, as the modern communication system requires higher and higher communication rates, the encoding and checking based on the determination of the length r of the check code according to the length k of the information block cannot meet the reliability requirements of the modern communication system. SUMMARY
[0006] The present application provides a method and apparatus for channel encoding and decoding, which can improve the reliability of cyclic redundancy check (CRC) encoding.
[0007] In a first aspect, an embodiment of the present application provides a channel encoding method, which can be executed by a first communication device. In the absence of special description, the "first communication device" in the present application can refer to the first communication device itself, a component (for example, a communication module, a processor, a circuit, a chip, or a chip system, etc.) in the first communication device, or a logic module or software capable of realizing all or part of the functions of the first communication device. The method comprises: determining the length of a check bit sequence according to the size of a payload and the information identifier of the payload; encoding the payload according to the length of the check bit sequence to obtain an encoded bit sequence; and transmitting the encoded bit sequence.
[0008] Based on the scheme, the first communication device determines the length of the CRC based on the size of the payload, and also considers that different information (e.g., information of different service types) has different requirements for error detection capability, and then determines the length of the CRC (i.e., the length of the check bit sequence) based on the size of the payload and the information identifier of the payload. For example, because different information has different requirements for error detection capability, the first communication device can flexibly set the length of the CRC based on the information identifier of the payload, so that the encoded bit sequence transmitted after encoding of different payloads can meet the corresponding error detection capability requirement, reduce the bit error rate in the transmission process, and improve the reliability of CRC encoding and checking.
[0009] In a possible design, the encoding of the payload according to the length of the check bit to obtain the encoded bit sequence includes: performing cyclic redundancy check (CRC) encoding on the payload according to the length of the check bit sequence to obtain a CRC encoded bit sequence, where the CRC encoded bit sequence includes the payload and the check bit sequence; and performing channel encoding on the CRC encoded bit sequence to obtain the encoded bit sequence.
[0010] Based on the possible design, when encoding the payload, the first communication device can first perform CRC encoding on the payload, and then perform channel encoding, to obtain the encoded bit sequence. In the process of CRC encoding, the length of the CRC is determined based on the size of the payload, and also considers that different information has different requirements for error detection capability, and then determines the length of the CRC (i.e., the length of the check bit sequence) based on the size of the payload and the information identifier of the payload. For example, because different information has different requirements for error detection capability, the first communication device can flexibly set the length of the CRC based on the information identifier of the payload, so that the encoded bit sequence transmitted after encoding of different payloads can meet the corresponding error detection capability requirement, reduce the bit error rate in the transmission process, and improve the reliability of CRC encoding and checking.
[0011] In a possible design, when the channel encoding includes PC-based polar encoding, the channel encoding of the CRC encoded bit sequence to obtain the encoded bit sequence includes: performing PC-based polar encoding on the CRC encoded bit sequence according to a plurality of PC bits, to obtain the encoded bit sequence; and if the length of the check bit sequence is greater than 0, the reliability of a position of any bit in the plurality of PC bits is lower than the reliability of a position of any bit in the CRC encoded bit sequence.
[0012] Based on the possible design, when the channel coding is PC-based polar coding, the plurality of PC bits are all frozen bits PC; that is, the PC bits are all located at positions with lower reliability, such as the reliability of each bit in the plurality of PC bits is lower than the reliability of each bit in the CRC-encoded bit sequence. Thus, the CRC-encoded bit sequence can be located at positions with higher reliability, reducing the loss of the bit sequence in the transmission process and improving the decoding performance.
[0013] In a possible design, when the channel coding includes PC-based polar coding, the CRC-encoded bit sequence is channel-coded to obtain an encoded bit sequence, including: performing PC-based polar coding on the CRC-encoded bit sequence according to a plurality of PC bits, to obtain the encoded bit sequence; and wherein, if the length of the check bit sequence is 0, the reliability of any bit in the plurality of PC bits is lower than the reliability of any bit in the CRC-encoded bit sequence, or at least one bit in the plurality of PC bits has a higher reliability than the lowest reliability of the bits in the CRC-encoded bit sequence.
[0014] Based on the possible design, when the channel coding is PC-based polar coding, if the length of the check bit sequence is equal to 0, that is, there is no check bit sequence (such as a CRC check bit) in the CRC-encoded bit sequence, the first communication device can flexibly set the positions of the PC bits. For example, the reliability of the plurality of PC bits is lower than the reliability of the CRC-encoded bit sequence (that is, the reliability of any bit in the plurality of PC bits is lower than the reliability of any bit in the CRC-encoded bit sequence), or at least one PC bit in the plurality of PC bits can have a higher reliability than the lowest reliability of the CRC-encoded bit sequence (that is, at least one bit in the plurality of PC bits has a higher reliability than the lowest reliability of the bits in the CRC-encoded bit sequence).
[0015] Since the length of the check bit sequence is equal to 0, there is no check bit sequence in the CRC-encoded bit sequence, that is, there is no need to sacrifice the reliability to place the check bit sequence in the channel coding process, so even if there is an individual PC bit (that is, the minimum row weight w min PC) that needs to occupy a position with higher reliability, compared with the scheme that does not need to sacrifice the reliability to place the check bit sequence, it has less impact on the decoding performance. Therefore, the first communication device can flexibly set the positions of the PC bits. A plurality of implementation schemes are provided for PC-Polar codes. In addition, when the PC bits include w min PC, the code spectrum can be improved.
[0016] In a second aspect, an embodiment of the present application provides a channel decoding method, which can be executed by a second communication device. Unless otherwise specified, the "second communication device" in the present application can refer to the second communication device itself, a component (for example, a communication module, a processor, a circuit, a chip, or a chip system) in the second communication device, or a logic module or software capable of realizing all or part of the functions of the second communication device. The method comprises: obtaining a received value sequence; performing channel decoding on the received value sequence to obtain a decoded bit sequence, the decoded bit sequence comprising a payload and a check bit sequence, the length of the check bit sequence being related to the size of the payload and the information identifier of the payload; and performing a cyclic redundancy check (CRC) on the decoded bit sequence to obtain the payload.
[0017] Based on the scheme, in the encoding process of the first communication device, the CRC length is determined based on the size of the payload, and the different information (for example, information of different service types) has different requirements for error detection capability, so that the finally determined CRC length (that is, the length of the check bit sequence) is determined based on the size of the payload and the information identifier of the payload. For example, because different information has different requirements for error detection capability, the length of the CRC can be flexibly set based on the information identifier of the payload, so that the encoded bit sequence transmitted after encoding of different payloads can meet the corresponding error detection capability requirements, thereby reducing the bit error rate in the transmission process, so that when the second communication device decodes the received value sequence corresponding to the encoded bit sequence, the decoding performance of the second communication device can be improved, and the reliability of the CRC encoding check can be improved.
[0018] For example, the length of the check bit sequence is related to the size of the payload and the information identifier of the payload, which means that the length of the check bit sequence is determined based on the size of the payload and the information identifier of the payload.
[0019] In a possible design, when the channel decoding comprises PC-based polar decoding, the channel decoding on the received value sequence to obtain the decoded bit sequence comprises: performing channel decoding on the received value sequence based on a plurality of PC bits to obtain the decoded bit sequence; and if the length of the check bit sequence is greater than 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the decoded bit sequence.
[0020] In a possible design, when the channel decoding comprises PC-based polar decoding, the channel decoding on the received value sequence to obtain the decoded bit sequence comprises: performing channel decoding on the received value sequence according to the plurality of PC bits to obtain the decoded bit sequence; and wherein, if the length of the check bit sequence is 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the CRC encoded bit sequence, or the reliability of the position of at least one bit in the plurality of PC bits is higher than the lowest reliability of the position of the bit in the decoded bit sequence.
[0021] The technical effects brought by any possible design of the second aspect can refer to the technical effects brought by the corresponding design of the first aspect, which will not be repeated here.
[0022] In combination with the first aspect and possible designs thereof, or the second aspect and possible designs thereof, in a possible design, the length of the check bit sequence is the sum of a first length and a second length; the first length is related to the size of the payload, and the second length is related to the information identifier of the payload; and the first length and the second length are both integers greater than or equal to 0.
[0023] For example, the first length is related to the size of the payload, which can be understood as that the first length is determined based on the size of the payload; similarly, the second length is related to the information identifier of the payload, which can be understood as that the second length is determined based on the information identifier of the payload.
[0024] Based on this possible design, the first communication device can determine a CRC length (i.e., the first length) according to the size of the payload, and further determine another CRC length according to the information identifier of the payload, so that the length of the CRC (i.e., the length of the check bit sequence) determined finally is determined based on the size of the payload and the information identifier of the payload. For example, because different information has different requirements for error detection capability, the first communication device can flexibly set the length of the CRC based on the information identifier of the payload, so that the encoded bit sequence transmitted after encoding of different payloads can meet the corresponding error detection capability requirement, thereby reducing the bit error rate in the transmission process and improving the reliability of the CRC encoding check.
[0025] In combination with the first aspect and possible designs thereof, or the second aspect and possible designs thereof, in a possible design, the first length is the length corresponding to the value set to which the size of the payload belongs.
[0026] Based on this possible design, different lengths correspond to different values of the size of the payload; for example, different intervals (i.e., different value sets) can be divided based on the different values, so that different intervals correspond to different lengths, thereby providing a possible implementation manner for the first communication device to determine the first length.
[0027] In a possible design of the first aspect and possible designs thereof, or the second aspect and possible designs thereof, the size of the payload belongs to a value set, and a length corresponding to the value set is 0, and a maximum value in the value set is less than or equal to a threshold.
[0028] In a possible design of the first aspect or the second aspect, the size of the payload belongs to a first type of value set, and the first type of value set includes a plurality of value sets; a length corresponding to a first value set is greater than a length corresponding to a second value set, the first value set and the second value set are any two adjacent value sets in the plurality of value sets, and a minimum value in the first value set is greater than a maximum value in the second value set.
[0029] Based on the two possible designs above, when the maximum value in the value set to which the size of the payload belongs is less than or equal to the threshold, the length (that is, the first length) corresponding to the value set to which the size of the payload belongs is 0; or the size of the payload belongs to the first type of value set, and for the plurality of value sets in the first type of value set, the greater the value in the value set, the longer the length corresponding to the value set (that is, the length corresponding to the first value set is greater than the length corresponding to the second value set, the first value set and the second value set are any two adjacent value sets in the plurality of value sets, and the minimum value in the first value set is greater than the maximum value in the second value set), which provides different implementation manners for the first length.
[0030] In a possible design of the first aspect and possible designs thereof, or the second aspect and possible designs thereof, the number of values in the first value set is the same as the number of values in the second value set, and the greater the number of values, the greater the difference between the length corresponding to the first value set and the length corresponding to the second value set.
[0031] Based on the possible design, it can be understood that, to ensure the reliability of CRC encoding and checking, the greater the size of the payload, the longer the required and checked sequence; therefore, when the number of values in the first value set is the same as the number of values in the second value set, the greater the number of values, the greater the difference between the length corresponding to the first value set and the length corresponding to the second value set, thereby ensuring the reliability of CRC encoding and checking.
[0032] In a possible design of the first aspect and possible designs thereof, or the second aspect and possible designs thereof, the minimum value in the value set to which the size of the payload belongs is 7 bits, and the maximum value is greater than or equal to 20 bits.
[0033] In a possible design of the first aspect and / or the second aspect, the second length is determined according to the information identifier of the payload.
[0034] Based on this possible design, the first communication device can determine the CRC length (e.g., the second length) according to the information identifier of the payload, considering that different information has different requirements on error detection capability. For example, the first communication device can flexibly set the length of the CRC according to the information identifier of the payload, so that the encoded bit sequence of the payload after encoding can meet the corresponding requirement on error detection capability, reduce the bit error rate in the transmission process, and improve the reliability of CRC encoding check.
[0035] In a possible design of the first aspect and / or the second aspect, the information identifier of the payload includes a plurality of types, and the plurality of types correspond to different importance levels respectively. The higher the importance level corresponding to the information identifier of the payload, the longer the length corresponding to the information identifier of the payload.
[0036] Based on this possible design, the plurality of types correspond to different importance levels respectively, and the higher the importance level corresponding to the information identifier of the payload, the longer the length corresponding to the information identifier of the payload. For example, the plurality of types can be determined to have different importance levels based on different error detection requirements corresponding to the plurality of types respectively. For example, the higher the error detection requirement, the higher the importance level. In this way, the first communication device can determine the length of the CRC (e.g., the second length) according to the information identifier of the payload, so that the encoded bit sequence of the payload after encoding can meet the corresponding requirement on error detection capability, reduce the bit error rate in the transmission process, and improve the reliability of CRC encoding check.
[0037] In a possible design of the first aspect and / or the second aspect, the information identifier of the payload is any one of the following identifiers: a hybrid automatic repeat request-acknowledge character (HARQ-ACK), a scheduling request (SR), or a channel state information (CSI) part 1, a CSI part 2, a service identifier of an artificial intelligence (AI) scenario, or a service identifier of a perception scenario.
[0038] In a possible design of the first aspect and possible designs thereof or the second aspect and possible designs thereof, when the information identifier of the payload is any one of HARQ-ACK, SR, or CSI part 1, the information identifier of the payload corresponds to a first importance level; when the payload is any one of the service identifier of the AI scene, the service identifier of the perception scene, or CSI part 2, the information identifier of the payload corresponds to a second importance level, and the first importance level is higher than the second importance level.
[0039] In a possible design of the first aspect and possible designs thereof or the second aspect and possible designs thereof, when the information identifier of the payload is any one of HARQ-ACK or SR, the information identifier of the payload corresponds to a first importance level; when the payload is CSI-1 part 1, the information identifier of the payload corresponds to a second importance level; when the payload is any one of the service identifier of the AI scene, the service identifier of the perception scene, or CSI part 2, the importance level of the payload is a third importance level, and the first importance level, the second importance level, and the third importance level are sequentially reduced.
[0040] Based on the two possible designs described above, the multiple types can be classified based on different requirements, and correspondingly, the lengths corresponding to the multiple types are different, thereby providing different implementation manners for implementation of the second length.
[0041] In a possible design of the first aspect and possible designs thereof or the second aspect and possible designs thereof, the information identifier of the payload further includes a priority indication of the payload; for the information identifier of the payload of the same type, the higher the priority indicated by the priority indication of the payload, the longer the length corresponding to the information identifier of the payload.
[0042] Based on the possible design, based on distinguishing different lengths based on different types, for the information identifier of the payload of the same type, the length corresponding to the information identifier of the payload can be further determined according to the priority indication of the payload, that is, the length corresponding to the information identifier of the payload can be further subdivided according to the priority indication of the payload. This enables the first communication device to determine a more accurate second length, further reduces the bit error rate in the transmission process, and improves the reliability of CRC encoding and checking.
[0043] In a possible design of the first aspect and possible designs thereof or the second aspect and possible designs thereof, the check bit sequence is part or all of the first bit sequence, the length of the first bit sequence is greater than or equal to the length of the check bit sequence, and the first bit sequence is determined according to a polynomial corresponding to the length of the check bit sequence and a polynomial corresponding to the payload.
[0044] Based on the possible design, the first communication device can determine a CRC polynomial based on the length of the check bit sequence, and then determine the check bit sequence based on the CRC polynomial and the polynomial corresponding to the payload. Wherein, the process of determining the check bit sequence based on the CRC polynomial and the polynomial corresponding to the payload is the CRC encoding. That is, the first communication device can determine the check bit sequence through a CRC encoding calculation process, and the CRC encoding process is simple and the resource consumption is low.
[0045] With reference to the first aspect and possible designs thereof, or the second aspect and possible designs thereof, in a possible design, the check bit sequence includes a first sub-check bit sequence and a second sub-check bit sequence; wherein the first sub-check bit sequence has a first length, and the first sub-check bit sequence is part or all of a second bit sequence determined based on a polynomial corresponding to the first length and a polynomial corresponding to the payload; the second sub-check bit sequence has a second length, and the second sub-check bit sequence is part or all of a third bit sequence determined based on a polynomial corresponding to the second length and the polynomial corresponding to the payload.
[0046] Based on the possible design, the first communication device can determine a CRC polynomial based on the first length and the second length respectively, and then determine the first sub-check bit sequence based on the polynomial corresponding to the payload and the CRC polynomial corresponding to the first length, and determine the second sub-check bit sequence based on the polynomial corresponding to the payload and the CRC polynomial corresponding to the second length. Since the first length and the second length are both smaller than the length of the check bit sequence, compared with the scheme of determining the check bit sequence based on the CRC polynomial corresponding to the length of the check bit sequence and the polynomial corresponding to the payload, the CRC calculation efficiency is higher.
[0047] In a third aspect, a communication apparatus is provided for implementing the methods described in the various aspects above. The communication apparatus can be the first communication device in the first aspect, or the second communication device in the second aspect, or an apparatus included in the first communication device or the second communication device, such as a chip or chip system. The communication apparatus includes modules, units, or means for implementing the corresponding methods, which can be implemented by hardware, software, or by executing corresponding software by hardware. The hardware or software includes one or more modules or units corresponding to the functions.
[0048] In some possible design, the communication apparatus can include a processing module and a transceiving module. The processing module can be used to implement the processing functions in any of the above aspects and any possible implementation manner thereof. The transceiving module can include a receiving module and a sending module, which are used to implement the receiving function and the sending function in any of the above aspects and any possible implementation manner thereof.
[0049] In some possible design, the transceiving module can be composed of a transceiving circuit, a transceiver, a transceiver, or a communication interface.
[0050] In the fourth aspect, a communication apparatus is provided, including a processor and a memory. The memory is used to store computer instructions, which, when executed by the processor, cause the communication apparatus to perform the method in any of the above aspects. The communication apparatus can be the first communication device in the first aspect or the second communication device in the second aspect, or an apparatus included in the first communication device or the second communication device, such as a chip or a chip system. The communication apparatus includes modules, units, or means corresponding to the method, which can be implemented by hardware, software, or by hardware executing corresponding software. The hardware or software includes one or more modules or units corresponding to the functions.
[0051] In the fifth aspect, a communication apparatus is provided, including a processor and a communication interface. The communication interface is used to communicate with modules outside the communication apparatus. The processor is used to execute computer programs or instructions, so as to cause the communication apparatus to perform the method in any of the above aspects. The communication apparatus can be the first communication device in the first aspect or the second communication device in the second aspect, or an apparatus included in the first communication device or the second communication device, such as a chip or a chip system. The communication apparatus includes modules, units, or means corresponding to the method, which can be implemented by hardware, software, or by hardware executing corresponding software. The hardware or software includes one or more modules or units corresponding to the functions.
[0052] Alternatively, the interface circuit can be a code / data read-write interface circuit, which is used to receive computer execution instructions (stored in the memory, which can be directly read from the memory or can pass through other devices) and transmit them to the processor, so that the processor executes the computer execution instructions to perform the method in any of the above aspects.
[0053] In a possible design, the communication apparatus further includes a memory used to store computer programs or instructions. Optionally, the processor and the memory are integrated together, or the processor and the memory are separately arranged.
[0054] In a possible design, the memory is coupled with the processor, and is located outside the communication apparatus.
[0055] In a sixth aspect, a communication apparatus is provided, which includes at least one processor, and the processor is configured to execute computer programs or instructions, so that the communication apparatus performs the method in any one of the aspects. The communication apparatus can be the first communication device in the first aspect, or the second communication device in the second aspect, or a device included in the first communication device or the second communication device, such as a chip or a chip system. The communication apparatus includes modules, units or means corresponding to the method, which can be implemented by hardware, software or by hardware executing corresponding software. The hardware or software includes one or more modules or units corresponding to the functions.
[0056] In some possible designs, the communication apparatus includes a memory, which is configured to store necessary programs and data. The memory can be coupled with the processor, or can be independent of the processor.
[0057] In some possible designs, when the apparatus is a chip system, the apparatus can be composed of a chip, or can include a chip and other discrete devices.
[0058] It can be understood that, when the communication apparatus in any one of the fourth aspect to the sixth aspect is a chip, the sending action / function of the communication apparatus can be understood as outputting information, and the receiving action / function of the communication apparatus can be understood as inputting information.
[0059] In a seventh aspect, a computer readable storage medium is provided, which stores computer programs or instructions, and when the computer programs or instructions are executed on a communication apparatus, the communication apparatus can perform the method in any one of the aspects.
[0060] In an eighth aspect, a computer program product is provided, which includes instructions, and when the instructions are executed on a communication apparatus, the communication apparatus can perform the method in any one of the aspects.
[0061] In a ninth aspect, a communication system is provided, which includes the communication apparatus, which can be the first communication device in the first aspect (or a device included in the first communication device, such as a chip or a chip system) or the second communication device in the second aspect (or a device included in the second communication device, such as a chip or a chip system).
[0062] The technical effects brought by any one of the third aspect to the ninth aspect can refer to the technical effects brought by different design manners in the first aspect or the second aspect, which will not be repeated here. BRIEF DESCRIPTION OF DRAWINGS
[0063] FIG. 1 is a flow diagram of a signal transmission according to the present application;
[0064] FIG. 2 is a schematic diagram of the working principle of a polar code according to the present application;
[0065] FIG. 3 is a schematic diagram of the working principle of a successive cancellation decoding according to the present application;
[0066] FIG. 4 is a flow diagram of another signal transmission according to the present application;
[0067] FIG. 5 is a schematic diagram of the working principle of a parity check polar code according to the present application;
[0068] FIG. 6 is a schematic diagram of the working principle of a parity check bit according to the present application;
[0069] FIG. 7 is a schematic diagram of a communication architecture according to the present application;
[0070] FIG. 8 is a schematic diagram of a communication device according to the present application;
[0071] FIG. 9 is a flow diagram of a channel coding method according to the present application;
[0072] FIG. 10 is a schematic diagram of the working principle of another parity check bit according to the present application;
[0073] FIG. 11 is a flow diagram of another channel coding method according to the present application;
[0074] FIG. 12 is a schematic diagram of another communication device according to the present application;
[0075] FIG. 13 is a schematic diagram of still another communication device according to the present application. DETAILED DESCRIPTION
[0076] In the description of the present application, unless otherwise specified, " / " represents that the objects before and after the " / " are in an "or" relationship, for example, A / B can represent A or B; "and / or" in the present application is only a description of the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B, which can represent: A exists alone, A and B exist together, and B exists alone, where A and B can be singular or plural.
[0077] In the description of the present application, "a plurality of" means two or more than two, unless otherwise specified. "At least one of the following" or similar expressions means any combination of the items, including a single item or any combination of multiple items. For example, at least one of a, b, or c can mean a, b, c, a-b, a-c, b-c, or a-b-c, where a, b, and c can be single or multiple.
[0078] In addition, in order to facilitate the clear description of the technical solutions of the embodiments of the present application, in the embodiments of the present application, "first", "second" and the like are used to distinguish the same items or similar items with basically the same function and role. Those skilled in the art can understand that "first", "second" and the like do not limit the quantity and execution order, and "first", "second" and the like do not necessarily mean different.
[0079] In the embodiments of the present application, the words "exemplary" or "for example" are used to mean serving as an example or illustration. Any embodiment or design presented as "exemplary" or "for example" in the embodiments of the present application should not be construed as more preferred or advantageous over other embodiments or design solutions. Rather, the use of "exemplary" or "for example" is intended to present relevant concepts in a concrete manner, facilitating understanding.
[0080] It can be understood that "embodiments" mentioned throughout the specification mean that the specific features, structures or characteristics related to the embodiments are included in at least one embodiment of the present application. Therefore, the various embodiments throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures or characteristics can be combined in any suitable manner in one or more embodiments. It can be understood that in various embodiments of the present application, the size of the sequence number of each process does not mean the execution order, and the execution order of each process should be determined by its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0081] It can be understood that the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device including a series of steps or units does not have to be limited to those steps or units clearly listed, but can include other steps or units not clearly listed or inherent to these processes, methods, products or devices.
[0082] It can be understood that in the present application, "when" and "if" both refer to making corresponding processing under certain objective circumstances, not limiting the time, and not requiring judgment action when implementing, nor implying the existence of other limitations.
[0083] It can be understood that some optional features in the embodiments of the present application can be implemented independently in some scenarios, solve corresponding technical problems, and achieve corresponding effects, without relying on other features, such as the scheme currently based on. In some scenarios, it can also be combined with other features according to needs. Correspondingly, the apparatus given in the embodiments of the present application can also implement these features or functions, which will not be described here.
[0084] It can be understood that in the present application, "indication" can include direct indication and indirect indication, and can also include explicit indication and implicit indication. When describing "a certain indication information indicates A" or "indication information of A", it can include that the indication information directly indicates A or indirectly indicates A, and does not mean that A is necessarily carried in the indication information. The information indicated by a certain information is called to be indicated information, and there are many ways to indicate the to-be-indicated information in the implementation process, for example, but not limited to, the to-be-indicated information can be directly indicated, such as the to-be-indicated information itself or the index of the to-be-indicated information. The to-be-indicated information can also be indirectly indicated by indicating other information, where the other information and the to-be-indicated information have an association relationship. The to-be-indicated information can also be only indicated a part, and the other part of the to-be-indicated information is known or agreed in advance. For example, the indication of a specific information can be achieved by means of the arrangement order of each information agreed in advance (for example, a protocol stipulates), thereby reducing the indication overhead to a certain extent. At the same time, the common part of each information can be identified and uniformly indicated, so as to reduce the indication overhead caused by separately indicating the same information. In addition, the specific indication method can also be various existing indication methods, for example, but not limited to, the above-mentioned indication methods and various combinations thereof. As can be seen from the above, for example, when multiple information of the same type needs to be indicated, the indication methods of different information can be different. In the implementation process, the required indication method can be selected according to the specific needs, and the selected indication method is not limited in the embodiments of the present application. In this way, the indication method involved in the embodiments of the present application should be understood as covering various methods that can enable the to-be-indicated party to know the to-be-indicated information. The to-be-indicated information can be sent as a whole, or can be sent separately in multiple sub-information, and the sending period or sending time of the sub-information can be the same or different. The specific sending method is not limited in the present application. The sending period or sending time of the sub-information can be pre-defined, for example, pre-defined according to a protocol, or configured by the transmitting end device by sending configuration information to the receiving end device.
[0085] In the present application, "sending" and "receiving" represent the direction of signal transmission. For example, "sending information to XX" can be understood as that the destination of the information is XX, which can include direct sending through the air interface, and also includes indirect sending through the air interface by other units or modules. "Receiving information from YY" can be understood as that the source of the information is YY, which can include direct receiving from YY through the air interface, and also includes indirect receiving from YY through the air interface by other units or modules. "Sending" can also be understood as the "output" of the chip interface, and "receiving" can also be understood as the "input" of the chip interface. In other words, sending and receiving can be carried out between devices, such as between network devices and terminal devices, or can be carried out within a device, such as between components, modules, chips, software modules or hardware modules within a device through a bus, wire or interface.
[0086] In the present application, the same or similar parts between different embodiments can be mutually referred to, unless otherwise specified. In the present application, the terms and / or descriptions of different embodiments are consistent and can be mutually referred to, unless otherwise specified and logically conflicted, and different embodiments can be combined to form new embodiments according to their inherent logical relationship. The implementation modes of the present application described below do not constitute a limitation on the protection scope of the present application.
[0087] In order to facilitate the understanding of the technical solutions of the embodiments of the present application, first, a brief introduction of the related technologies of the present application is given as follows:
[0088] 1. Signal transmission
[0089] In a communication system, as shown in FIG. 1, the information sent by the signal source can be formed into a signal after the processes of source encoding, channel encoding and modulation, and after channel transmission, the signal is received by the signal sink, and the signal becomes information after the processes of demodulation, channel decoding and source recovery, so as to realize the signal transmission between the signal sink and the signal source.
[0090] Among them, the channel coding scheme (or channel coding type) mainly includes: block code, convolutional code (such as tail biting convolutional coding (TBCC)), turbo code (or simply referred to as Turbo code), low density parity check (LDPC) code, and polar code (or simply referred to as Polar code) and the like.
[0091] 2. Polar code
[0092] Polar code is the first type of channel coding that can be rigorously proven to "achieve" the Shannon channel capacity, and has the characteristics of good error correction performance and low decoding complexity. It has been determined by the third generation partnership project (3GPP) to be the channel coding type of the (uplink / downlink) control channel in the 5th generation (5G) mobile communication system of the enhanced mobile broadband (eMBB) scenario.
[0093] In the channel coding type of the Polar code (or also referred to as the channel coding scheme of the Polar code), the positions of the bits in the bit sequence can be divided into the positions of the frozen bits (or also referred to as the positions of the fixed bits) and the positions of the information bits according to the reliabilities of the positions of the bits in the bit sequence. The positions of the bits with lower reliabilities are the positions of the frozen bits, which can be used to carry the frozen bits (or referred to as fixed bits, frozen), which are usually set to 0 and known to both ends in actual transmission. The positions of the bits with higher reliabilities are the positions of the information bits, which can be used to carry the information bits (data) in actual transmission.
[0094] For example, as shown in FIG. 2, a typical Polar code encoding diagram with a length of 8 is provided. The positions of the bits with higher reliabilities (such as u7, u6, u5, and u3) can be set as the positions of the information bits, carrying information bits 0 or 1; and the positions of the bits with lower reliabilities (such as u4, u2, u1, and u0) can be set as the positions of the frozen bits, carrying frozen bits 0.
[0095] The reliabilities of the positions of the bits in the bit sequence are determined according to a reliability sequence with the same length as the bit sequence; that is, the reliability sequence can be used to indicate the reliabilities corresponding to the positions of the bits in the bit sequence. The greater the value of the reliability, the more reliable the position corresponding to the reliability.
[0096] For example, the reliability sequence can be pre-defined by a protocol. Thus, the sending end can select a reliability sequence with the same length as the bit sequence from one or more reliability sequences pre-defined by the protocol.
[0097] Decoding of Polar Codes: With the Polar code being listed in the 5G standard, the decoding of Polar codes has become a hot issue in the field of communication. The mainstream Polar code decoding methods can be divided into two categories according to their decoding timing: timing decoding and non-timing decoding. Among them, timing decoding refers to the decoder decoding bit by bit according to the natural timing of Polar design; non-timing decoding refers to the decoder outputting decoding results in parallel according to other structures of Polar code (such as Tanner graph, Trellis graph, etc.).
[0098] For timing decoding, the main Polar code timing decoding algorithms include: successive cancellation (SC) decoding, successive cancellation list (SCL) decoding, successive cancellation stack (SCS) decoding, and cyclic redundancy check (CRC) aided successive cancellation list (CA-SCL) decoding, etc. For non-timing decoding, the main Polar code non-timing decoding algorithms include: belief propagation (BP) decoding, etc.
[0099] Polar code mainly adopts timing decoding, and the decoding performance of SCL decoding is greatly improved compared with SC decoding. The CA-SCL decoding with CRC check can make the performance of Polar code better than that of LDPC code and Turbo code. Therefore, SCL decoding and CA-SCL decoding are mainly used in communication systems.
[0100] For SC decoding, when decoding Polar codes using the SC decoding algorithm, the log-likelihood ratio (LLR) of the information bits can be calculated step by step. For an information bit, if LLR > 0, the information bit is determined to be 0; if LLR < 0, the information bit is determined to be 1. For frozen bits, the frozen bit is set to 0 regardless of the LLR value. For example, Figure 3 provides a simple schematic diagram of SC decoding. Figure 3 has 8 calculation nodes, including 4 f nodes and 4 g nodes. The calculation of the f node requires two LLR inputs on its right side, and the calculation of the g node requires two LLR inputs on its right side and one "partial sum" input above it. Note that the output can only be calculated after the input items are calculated. According to the above rules, starting from the received signal on the right side, the 8 nodes are calculated sequentially, resulting in the decoding sequence ①→②→③→④, which is the SC decoding process.
[0101] SCL decoding is an extension of SC decoding. Instead of determining the decoding result midway through the process, SCL decoding retains both the 0 and 1 corresponding decoding results, forming two branch decoding candidate paths. Using this method, the SCL algorithm can save multiple candidate paths and ultimately select a good candidate path as the decoding result through a path metric (PM, used to judge the quality of the path).
[0102] For CA-SCL decoding with CRC check, the corresponding Polar code can also be called Polar code concatenated CRC, or simply CA-Polar. The encoding process of this Polar code is shown in Figure 4(a). The sending end performs CRC encoding and Polar encoding on the information block sequentially to obtain the encoded block. The receiving end can decode the received information to be decoded according to CA-SCL decoding. After decoding, a candidate path is selected from the candidate paths output by the SCL decoder through CRC check as the decoded output.
[0103] Specifically, the signal transmission process shown in Figure 1 can be replaced by the process shown in Figure 4(b): the sending end can transmit information of length K bits. Input to a CRC encoder, which generates a sequence of length K+L bits. in, Yes This is obtained by adding a CRC sequence of length L. Then... The input channel encoder (such as a Polar encoder) produces a codeword sequence of length N. Then regarding Rate matching is performed to obtain a codeword sequence of length E. Then, via a modulator, a symbol sequence of M length is obtained Then, via a modulator, a symbol sequence of M length is obtained Output. Correspondingly, the receiving end receives a receiving sequence of M length Then, via a modulator, a symbol sequence of M length is obtained Then, via a modulator, a symbol sequence of M length is obtained Then, via a modulator, a symbol sequence of M length is obtained Then, via a modulator, a symbol sequence of M length is obtained Then, via a modulator, a symbol sequence of M length is obtained Then, via a modulator, a symbol sequence of M length is obtained Then, via a modulator, a symbol sequence of M length is obtained Then, via a modulator, a symbol sequence of M length is obtained In the process of CRC check on the decoded message, the K bits of the decoded message are taken out for CRC encoding to obtain a CRC check bit sequence corresponding to the decoded message, and then compared with the L check bit sequence of the decoded message. If the two are the same, it means that the CRC check is passed, otherwise, the CRC check is failed, indicating that the current decoding is wrong. 3、payload (payload):
[0104] In this application, if not specially stated, the pure information to be transmitted is called payload, for example, the information block can also be called payload, which is uniformly described here and will not be repeated.
[0105] In this application, if not specially stated, the pure information to be transmitted is called payload, for example, the information block can also be called payload, which is uniformly described here and will not be repeated.
[0106] 4、parity check polar codes (PC-Polar codes):
[0107] As shown in FIG. 5, the PC-Polar code can include information bits, frozen bits, PC bits, and rate matching shortened bits. Among them, a part of the frozen bits can be selected as PC bits, the values of the PC bits are different from those of other frozen bits, and are not fixed as 0, but are determined by PC equations according to the values of the information bits in front of the PC bits, so the PC bits can also be called dynamic frozen bits (i.e., the positions are from the frozen bits, but the values are not fixed as 0). As shown in FIG. 5, PC bit #1 (i.e., the PC bit on the left in the two PC bits in FIG. 5) is determined according to the value of the first information bit in the three information bits in front (i.e., the first information bit in the bit sequence shown in FIG. 5 in the order from left to right) and the value of the third information bit (i.e., the third information bit in the bit sequence shown in FIG. 5 in the order from left to right); PC bit #2 (i.e., the PC bit on the right in the two PC bits in FIG. 5) is determined according to the value of the first information bit in the three information bits in front and the value of the second information bit (i.e., the second information bit in the bit sequence shown in FIG. 5 in the order from left to right). In addition, the rate matching shortened bits do not need to be sent to the channel. The information bits are the results of CRC encoding. Among them, the PC bits can include two types; one is PC bits that need to sacrifice the reliability of the polar code (referred to as minimum row weight w min PC in the following embodiments) to improve the code spectrum; the other is PC bits that do not affect the reliability of the polar code (referred to as frozen bit PC in the following embodiments).
[0108] Specifically, when the PC-Polar code is encoded, the positions of w min PC can be determined according to the minimum row weight w r corresponding to the positions of K min information bits, that is, from the set of bit positions corresponding to the minimum row weight w r of the K min most reliable bits, the most reliable bit position is selected as the position of w PC. min
[0109] The frozen bit PC is usually placed in the position with the lowest sequence reliability. Specifically, the number n PC of PC bits is predefined by the communication protocol, so when there are w PC PC in the n min PC bits, after the position of w r PC is determined, the least reliable bit position can be selected from the (K PC +n PC ) most reliable bit positions. bit positions as frozen PC bits (i.e. remaining PC bits).
[0110] Taking the size of a payload (i.e. information block) in new radio (NR) as an example, the size of the payload is in the interval of 12-19 bits, at this time, n PC = 3; wherein, The value of K r may be determined according to the length of the information bits and the length E r of the sequence output after the payload is encoded and rate matched. Specifically, when E r - K r + 3 ≤ 192, i.e. at this time, w min PC is not triggered, and the 3 PC bits are all frozen PC bits. Taking K r = 13 as an example, the order of the row weights corresponding to the positions of the K r information bits according to reliability from high to low is shown in (a) of FIG. 6, i.e. the minimum row weight w r = 32 corresponding to the positions of the K min information bits, at this time, the 3 positions with the lowest reliability can be determined from the 13 + 3 = 16 bit positions as the positions of the 3 frozen PC bits.
[0111] When E r - K r + 3 > 192, i.e. at this time, w min PC is triggered, and the 3 PC bits include one w min PC and 2 frozen PC bits. Taking K r = 18 as an example, the value of K r may be any one of 18, 19, 20, 21, 22, 23, 24, 25 (wherein the size of the payload can be any integer value in the interval of 18-25, and the CRC length corresponding to the payload is 6); the order of the row weights corresponding to the positions of the K r information bits according to reliability from high to low is shown in (b) of FIG. 6, i.e. the minimum row weight w r = 32 corresponding to the positions of the K min information bits, at this time, the position with the highest reliability can be determined from the positions with the row weight of 32 in the 18 bit positions as the position of w min PC; and the 2 positions with the lowest reliability can be determined from the 18 + 3 = 21 bit positions as the positions of the 2 frozen PC bits. The scheme in which the plurality of PC bits include w min PC may cause decoding performance to decrease due to the sacrifice of the reliability of the information bits.
[0112] 5. CRC encoding:
[0113] CRC is a technique of generating a fixed number of check code according to an information block (i.e. payload), which is mainly used to monitor or check possible errors after data transmission or storage. Error detection is usually performed by the principle of division and remainder.
[0114] In NR, the length of CRC (i.e. the number of bits of check code) can be selected according to the size of payload. Specifically, the size of payload (i.e. the number of payload bits) and the length of CRC can satisfy the following Table 1:
[0115] Table 1
[0116] In Table 1, when the size of payload is any bit of 1-11, the length of CRC is 0 bit. When the size of payload is any bit of 12-19, the length of CRC is 6 bits. When the size of payload is greater than or equal to 20 bits, the length of CRC is 11 bits. Different lengths of CRC correspond to different CRC polynomials. For example, when the length of CRC is 6 bits, the corresponding CRC polynomial is g CRC6 (D) = [D 6 + D 5 + 1]; when the length of CRC is 11 bits, the corresponding CRC polynomial is g CRC11 (D) = [D 11 + D 10 + D 9 + D 5 + 1]; when the length of CRC is 4 bits, the corresponding CRC polynomial is g CRC6 (D) = [D 4 + D + 1].
[0117] Taking the length of CRC as 4 bits (i.e. L max = 4) and the binary representation of payload as 101011 as an example, the CRC polynomial g CRC6 (D) = [D 4 + D + 1] is 10011 in binary representation, and the polynomial of payload 101011 is M(D) = [D 5 + D 3 + D + 1]. Multiply M(D) by g (i.e. D 4 ), to generate its binary representation is 1010110000, that is, 4 zeros are added after the binary data of the information block. Further, 1010110000 is divided by 10011, and the remainder bit sequence is 0100 according to the modulo 2 algorithm. In this case, the number of bits of the remainder = L max The remainder is the CRC added to the payload, and the remainder can be added to the payload to obtain 1010110100. That is, the CRC encoding is adding a CRC of a corresponding length after the payload; that is, the CRC encoding output is 1010110100. In this case, the CRC added to different payloads is determined according to the bit sequence of the payload and the length of the CRC corresponding to the payload.
[0118] Therefore, in the decoding process, the received bit sequence is divided by the binary sequence of the polynomial corresponding to the length of the CRC. If the bit sequence can be divided, it means that the bit sequence is not error in the transmission process, that is, the bit sequence is 1010110100. If the bit sequence cannot be divided, it means that the bit sequence is error in the transmission process.
[0119] As described above, the length of the CRC is only related to the size of the payload (that is, the length of the CRC can be determined according to the size of the payload). However, in fact, different types of information have different requirements for error detection capability. However, the current scheme for determining the length of the CRC has low reliability of CRC encoding and checking for information types with high requirements for error detection capability than information types with low requirements for error detection capability, that is, the reliability of CRC encoding and checking is reduced.
[0120] Therefore, the embodiment of the present application provides a channel encoding method and device. The first communication device determines the length of the CRC according to the size of the payload, and further considers that different information (such as different types of information services) has different requirements for error detection capability, and then determines the length of the CRC (that is, the length of the check bit sequence) based on the size of the payload and the information identifier of the payload. For example, because different information has different requirements for error detection capability, the first communication device can flexibly set the length of the CRC based on the information identifier of the payload, so that the encoded bit sequence of different payloads after encoding can meet the corresponding requirements for error detection capability, reduce the bit error rate in the transmission process, and improve the reliability of CRC encoding and checking.
[0121] The embodiments of the present application are described in detail below with reference to the accompanying drawings.
[0122] The channel coding method provided by the embodiments of the present application can be used in any communication system. The communication system can be a third generation partnership project (3GPP) communication system, for example, a long term evolution (LTE) system, or a 5th generation (5G) mobile communication system, a system of long term evolution (LTE) and 5G hybrid networking, an NR system, an NR vehicle to everything (V2X) system, a device-to-device (D2D) communication system, a machine to machine (M2M) communication system, an Internet of things (IoT), a narrow band Internet of things (NB-IoT), a global system for mobile communications (GSM), an enhanced data rate for GSM evolution (EDGE), a wideband code division multiple access (WCDMA) system, a code division multiple access 2000 (CDMA2000) system, a time division-synchronization code division multiple access (TD-SCDMA) system, an enhanced mobile broadband (eMBB) system, an ultra-reliable and low-latency communication (URLLC) system, an enhanced machine-type communication (eMTC) system, and various types of future communication systems, or a non-terrestrial network (NTN) system (such as a satellite communication system), a non-3GPP communication system, etc., without limitation.
[0123] The channel coding method provided in the embodiments of the present application can be applied to various communication scenarios, for example, can be applied to one or more of the following communication scenarios: radio frequency map (RF map), sensing, etc., without limitation.
[0124] The communication system provided in the embodiments of the present application is described below by taking (a) in FIG. 7 as an example.
[0125] FIG. 7(a) is a schematic diagram of a communication system provided in the embodiments of the present application, as shown in FIG. 7(a), the communication system can include at least one first communication device and at least one second communication device.
[0126] The first communication device can encode the payload, and then output the encoded bit sequence; the second communication device can obtain (for example, receive) the received value sequence corresponding to the encoded bit sequence, and decode the received value sequence to obtain the payload. Specifically, the encoding performed by the first communication device can include CRC encoding and channel encoding. Correspondingly, the decoding performed by the second communication device includes channel decoding and CRC checking.
[0127] For example, the first communication device can be a terminal device, and the second communication device can be a network device. Alternatively, the first communication device can be a terminal device, and the second communication device can be a terminal device. Alternatively, the first communication device can be a network device, and the second communication device can be a network device. Alternatively, the first communication device can be a network device, and the second communication device can be a terminal device.
[0128] Optionally, the network device in the present application is a device for connecting a terminal device to a wireless network, and the network device can be a node in a radio access network, also known as a base station, and also known as a radio access network (RAN) node (or device).
[0129] For example, the network device can include an evolved Node B (eNB or e-NodeB, evolutional Node B) in an LTE system or an LTE-Advanced (LTE-A) system, such as a conventional macro base station eNB and a micro base station eNB in a heterogeneous network scenario. Alternatively, the network device can include a transmission reception point (TRP), a home base station (for example, a home evolved NodeB, or a home Node B, HNB), a baseband unit (BBU), a BBU pool, or a wireless fidelity (WiFi) access point (AP), and the like. Alternatively, the network device can include a base station in a non-terrestrial network (NTN), that is, can be deployed in a high-altitude platform or a satellite, in which the network device can act as a layer 1 (L1) relay, or can act as a base station, or can act as a distributed unit (DU), or can act as an integrated access and backhual (IAB) node. Alternatively, the network device can be a gateway station or a ground station. Alternatively, the network device can be a device implementing a base station function in IoT, such as V2X, D2D, or machine to machine (M2M), or can include a vehicle-mounted device or a wearable device, or can include a network device in a 5G network or a public land mobile network (PLMN) evolved after 5G, and the embodiments of the present application are not limited thereto.
[0130] In some embodiments, the network device can be understood as the network device itself, or a component (for example, a communication apparatus, a communication module, a processor, a circuit, a chip, or a chip system, and the like) in the network device, or can also be a logic module or software capable of implementing all or part of the network device function.
[0131] In some embodiments, the network device can be further provided with a communication module, a circuit, or a chip for performing a corresponding communication function. The network device can be further configured with program instructions for performing a corresponding communication function and corresponding program instructions. The network device in the present application can also be a logic node, a logic module, or software capable of implementing all or part of the network device function.
[0132] In some possible scenarios, the network device in the embodiments of the present application can also be a module or unit capable of implementing part of the functions of a base station, for example, the network device can include a centralized unit (CU) and a distributed unit (DU). The RAN device including the CU node and the DU node splits the protocol layers of the base station (gNB) in the NR system, the functions of part of the protocol layers are placed in the CU for centralized control, and the functions of the remaining part or all of the protocol layers are distributed in the DU and controlled by the CU. Further, the CU can also be divided into a control plane (centralized unit control plane, CU-CP) and a user plane (centralized unit user plane, CU-UP). The CU-CP is responsible for the control plane function, mainly including the radio resource control (RRC) and the packet data convergence protocol (PDCP) corresponding to the control plane (PDCP-C). The PDCP-C is mainly responsible for the encryption and decryption of the control plane data, the integrity protection, the data transmission and the like. The CU-UP is responsible for the user plane function, mainly including the service data adaptation protocol (SDAP) and the PDCP corresponding to the user plane (PDCP-U). The SDAP is mainly responsible for processing the data of the core network and mapping the flow to the bearer. The PDCP-U is mainly responsible for the encryption and decryption of the data plane, the integrity protection, the header compression, the sequence number maintenance, the data transmission and the like. The CU-CP and the CU-UP are connected through an E1 interface. The CU-CP represents the gNB to connect with the core network through an NG interface, and to connect with the DU through an F1 interface of the control plane (namely, F1-C). The CU-UP is connected with the DU through an F1 interface of the user plane (namely, F1-U). Of course, there is also a possible implementation that the PDCP-C is also in the CU-UP.
[0133] It can be understood that the CU (including CU-CP or CU-UP) or DU can also have different names in different systems, but those skilled in the art can understand its meaning. For example, in an open radio access network (O-RAN) system, the CU can also be referred to as an open centralized unit (O-CU), the DU can also be referred to as an open distributed unit (O-DU), the CU-CP can also be referred to as an open centralized unit-control plane (O-CU-CP) O-CU-CP, and the CU-UP can also be referred to as an open centralized unit user plane (O-CU-UP). For the convenience of description, the CU, CU-CP, CU-UP and DU are taken as examples for description in the present application. The network device can also include an active antenna unit (AAU). The CU implements part of the functions of the gNB, and the DU implements part of the functions of the gNB. For example, the CU is responsible for processing non-real-time protocols and services, and implements the functions of the RRC layer. The DU is responsible for processing physical layer protocols and real-time services, and implements the functions of the radio link control (RLC) layer, the media access control (MAC) layer and the physical (PHY) layer. In some deployments, the CU can also be divided into a centralized unit control plane (CU-CP) node and a centralized unit user plane (CU-UP) node. Among them, the CU-CP is responsible for the control plane function, and the CU-UP is responsible for the user plane function.
[0134] Optionally, the base station in the embodiments of the present application can include various forms of base stations, such as macro base stations, micro base stations (also known as small stations), relay stations, access points, home base stations, TRPs, transmission points (TPs), mobile switching centers, etc., and the embodiments of the present application do not make specific limitations thereto.
[0135] Optionally, the terminal device in the embodiments of the present application can be a user side device for implementing a wireless communication function, such as a terminal or a chip used in a terminal, etc. Wherein, the terminal can be a user equipment (UE) in a 5G network or a PLMN evolved after 5G, an access terminal, a satellite terminal, a terminal unit, a terminal station, a mobile station, a mobile station, a remote station, a remote terminal, a mobile device, a wireless communication device, a terminal agent or a terminal device, etc.The terminal can be a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a smart phone (such as a mobile phone), a personal digital assistant (PDA), a handheld device having wireless communication function, a computing device, or other processing device connected to a wireless modem, a vehicle-mounted device (such as a car, a bicycle, an electric vehicle, an airplane, a ship, a train, a high-speed rail, etc.), or a wearable device (such as a smart watch, a smart bracelet, a pedometer, smart glasses, etc.), a smart robot, a mechanical arm, a plant device, a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal in industrial control, a wireless terminal in self driving, a wireless terminal in telemedicine or telehealth services, a wireless terminal in a smart grid, a wireless terminal in transportation safety, a wireless terminal in a smart city, a wireless terminal in a smart home (for example, a refrigerator, a television, an air conditioner, an electricity meter, etc.), a wireless data card, a tablet computer, a notebook computer, a palm computer, a mobile internet device (MID), a wireless modem, a handset, a laptop computer, a machine type communication (MTC) terminal, a smart point of sale (POS) machine, a customer-premises equipment (CPE), a light UE, a reduced capability UE (REDCAP UE), a flight device (for example, a smart robot, a hot air balloon, a drone, an airplane), etc.Alternatively, a terminal can be a terminal (or a device assuming a terminal function) having a communication function in an internet of things (IoT), for example, a terminal (i.e., a vehicle device such as a whole vehicle device, an on-board module, an on-board chip, an on-board unit (OBU), or a telematics box (T-BOX), a terminal in device-to-device (D2D) system communication, or a terminal in machine-to-machine (M2M) communication, etc.) in vehicle to everything (V2X), or the like. A terminal can be mobile or fixed.
[0136] In some embodiments, a terminal device can also be a device or module having a corresponding communication function accessing the above-mentioned illustrated communication system. A terminal device is usually provided with a communication module, circuit, or chip performing a corresponding communication function, and is also configured with program instructions for performing a corresponding communication function.
[0137] In some embodiments, a terminal device can also be a device or module having a corresponding communication function accessing the above-mentioned illustrated communication system. A terminal device is usually provided with a communication module, circuit, or chip performing a corresponding communication function, and is also configured with program instructions for performing a corresponding communication function.
[0138] Alternatively, the roles between a network device and a terminal device can be relative, for example, the terminal device #9 and the terminal device #10 shown in (b) of FIG. 7. Since the terminal device #10 needs to access the network device #1 through the terminal device #9, the terminal device #9 can be configured as a network device with respect to the terminal device #10. With respect to the network device #1, the terminal device #9 is a terminal device, i.e., the network device #1 and the terminal device #9 communicate through a wireless air interface protocol. Alternatively, the network device #1 and the terminal device #9 can also communicate through an interface protocol between network devices, i.e., with respect to the network device #1, the terminal device #9 also acts as a network device.
[0139] Optionally, the network device and the terminal device, the network device and the network device, or the terminal device and the terminal device can communicate through a licensed spectrum, or can communicate through an unlicensed spectrum, or can communicate through both the licensed spectrum and the unlicensed spectrum. Optionally, the network device and the terminal device, the network device and the network device, or the terminal device and the terminal device can communicate through a spectrum below 6 gigahertz (GHz), or can communicate through a spectrum above 6 GHz, or can communicate through both the spectrum below 6 GHz and the spectrum above 6 GHz. The embodiments of the present application do not limit the spectrum resource used by the wireless communication.
[0140] In the embodiments of the present application, the functions of the network device can also be performed by a module (such as a chip) in the network device, or can also be performed by a control subsystem containing the functions of the network device. The control subsystem containing the functions of the network device can be a control center in the above-mentioned application scenarios such as smart grid, industrial control, intelligent transportation, and smart city. The functions of the terminal device can also be performed by a module (such as a chip, a modem, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or software (such as program code in a memory)) in the terminal device, or can also be performed by a device containing the functions of the terminal device, without limitation.
[0141] In specific implementation, each of the communication devices (such as the first communication device and the second communication device) shown in (a) of FIG. 7 can adopt the component structure shown in FIG. 8, or can include the components shown in FIG. 8. FIG. 8 is a component diagram of a communication device 800 provided by an embodiment of the present application. The communication device 800 can be the first communication device or a chip or a system on chip in the first communication device; or can be the second communication device or a chip or a system on chip in the second communication device. As shown in FIG. 8, the communication device 800 includes a processor 801, a communication interface 802, and a communication line 803.
[0142] Further, the communication device 800 can further include a memory 804. The processor 801, the memory 804, and the communication interface 802 can be connected through the communication line 803.
[0143] The processor 801 can be a central processing unit (CPU), a general-purpose processor, a network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller, a programmable logic device (PLD), or any combination thereof. The processor 801 can also be other devices with processing capabilities, such as a circuit, a device, or a software module, without limitation.
[0144] The communication interface 802 is configured to communicate with other devices or other communication networks. The other communication networks can be an Ethernet, a radio access network (RAN), a wireless local area network (WLAN), or the like. The communication interface 802 can be a module, a circuit, a transceiver, or any device capable of communication.
[0145] The communication line 803 is configured to connect different components in the communication device 800, so that the different components can communicate. The communication line 803 can be a peripheral component interconnect (PCI) bus, an extended industry standard architecture (EISA) bus, or the like. The bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in FIG. 8, but it does not mean that there is only one bus or only one type of bus.
[0146] The memory 804 can be a device with a storage function, configured to store instructions and / or data. The instructions can be a computer program.
[0147] The memory 804 may, for example, be read-only memory (ROM) or another type of static storage device that can store static information and / or instructions that are not to be changed; volatile memory, such as random access memory (RAM), or another type of dynamic storage device that can store information and / or instructions that are to be changed, can also be employed; electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM), or another optical disc storage, a magnetic disk storage or other magnetic storage devices, etc., can also be employed, without limitation.
[0148] It should be noted that the memory 804 can exist independently of the processor 801, or can be integrated with the processor 801. The memory 804 can be used to store instructions or program codes or some data, etc. The memory 804 can be located within the communication device 800, or can be located outside the communication device 800, without limitation. The processor 801 is configured to execute the instructions stored in the memory 804, so as to implement the channel encoding method provided in the embodiments described below.
[0149] In an example, the processor 801 can include one or more CPUs, such as CPU0 and CPU1 in FIG. 8.
[0150] As an optional implementation, the communication device 800 includes multiple processors, for example, in addition to the processor 801 in FIG. 8, the processor 807 can also be included.
[0151] As an optional implementation, the communication device 800 further includes an output device 805 and an input device 806. For example, the input device 806 is a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector, etc. For example, the input device 806 can be a keyboard, a mouse, a microphone, a joystick, a touch screen device, a sensor device, etc. The output device 805 is a display screen, a speaker, etc.
[0152] It should be noted that the communication device 800 can be a desktop computer, a laptop computer, a network server, a mobile phone, a tablet computer, a wireless terminal, an embedded device, a chip system, or a device having a similar structure as shown in FIG. 8. In addition, the constituent structure shown in FIG. 8 does not constitute a limitation on the communication device, and the communication device can include more or fewer components than those shown in FIG. 8, or combine certain components, or have a different arrangement of components.
[0153] In an embodiment of the present application, the chip system can be composed of a chip, or can include a chip and other discrete devices.
[0154] In addition, the actions, terms, and the like involved among the embodiments of the present application can be mutually referred to and are not limited. The message name or parameter name in the message exchanged between the devices in the embodiments of the present application is only an example, and other names can also be used in the specific implementation, which is not limited.
[0155] The channel encoding method provided by the embodiments of the present application will be described below with reference to the accompanying drawings. It can be understood that, in the embodiments of the present application, the first communication device or the second communication device can perform part or all of the steps in the embodiments of the present application. These steps or operations are only examples, and the embodiments of the present application can also perform other operations or variations of various operations. In addition, the various steps can be performed in different orders presented in the embodiments of the present application, and it is possible that not all operations in the embodiments of the present application are performed.
[0156] Referring to FIG. 9, it is a flowchart of a channel encoding method provided by the present application. The channel encoding method includes the following steps S901-S903:
[0157] S901, the first communication device determines the length of the check bit sequence according to the size of the payload and the information identifier of the payload.
[0158] For example, the size of the payload refers to the bit size of the payload, that is, the payload can be represented by the number of bits.
[0159] Specifically, the payload can be uplink control information (UCI) carried on a physical uplink control channel (PUCCH) for transmission, or can be data carried on a media access control-control element (MAC-CE) or RRC, or can be any one of perception data, artificial intelligence data, channel data, or any data other than the above, which is not limited by the present application.
[0160] Optionally, the length of the check bit sequence is a sum of a first length and a second length. The first length is related to a size of the payload, and the second length is related to an information identifier of the payload. Both the first length and the second length are integers greater than or equal to 0.
[0161] For example, the first length is related to the size of the payload, which means that the first length is determined based on the size of the payload. Similarly, the second length is related to the information identifier of the payload, which means that the second length is determined based on the information identifier of the payload. That is, the first communication device can determine the first length according to the size of the payload, determine the second length according to the information identifier of the payload, and then determine the length of the check bit sequence as the sum of the first length and the second length.
[0162] For example, the correspondence between the first length and the size of the payload can be pre-configured. For example, the correspondence can be determined by the sending end, or can be determined by the second communication device and notified to the first communication device, or can be predefined by a protocol, or the first communication device can determine the correspondence between the first length and the size of the payload in any possible way, so that the first communication device can determine the first length based on the correspondence after determining the size of the payload.
[0163] Similarly, the correspondence between the second length and the information identifier of the payload can be pre-configured. For example, the correspondence can be determined by the sending end, or can be determined by the second communication device and notified to the first communication device, or can be predefined by a protocol, or the first communication device can determine the correspondence between the first length and the size of the payload in any possible way, so that the first communication device can determine the second length based on the correspondence after determining the information identifier of the payload.
[0164] Based on the optional scheme, the first communication device can determine a CRC length (i.e., the first length) according to the size of the payload, and determine another CRC length according to the information identifier of the payload, so that the length of the CRC (i.e., the length of the check bit sequence) determined finally is based on the size of the payload and the joint determination. For example, because different information has different requirements for error detection capability, the first communication device can flexibly set the length of the CRC based on the information identifier of the payload, so that the encoded bit sequence transmitted after encoding of different payloads can meet the corresponding error detection capability requirement, reduce the bit error rate in the transmission process, and improve the reliability of CRC encoding and checking.
[0165] S902, the first communication device encodes the payload according to the length of the check bit sequence to obtain an encoded bit sequence.
[0166] Optionally, the first communication device encodes the payload according to the length of the check bit to obtain the encoded bit sequence, comprising: performing CRC encoding on the payload according to the length of the check bit sequence to obtain a CRC encoded bit sequence, the CRC encoded bit sequence comprising the payload and the check bit sequence; and performing channel encoding on the CRC encoded bit sequence to obtain the encoded bit sequence.
[0167] Optionally, according to the related art of the foregoing CRC encoding, different lengths of CRC correspond to different CRC polynomials, and then the check bit sequence can be determined according to the CRC polynomial, so that the check bit sequence is added after the payload to obtain the CRC encoded bit sequence. Therefore, the check bit sequence can include the following two possible implementation manners:
[0168] In one possible implementation manner, the first communication device determines the CRC polynomial based on the length of the check bit sequence, and then determines the check bit sequence.
[0169] Optionally, the first communication device can determine a third length according to the length of the check bit sequence, and then determine the CRC polynomial corresponding to the third length; and then determine the check bit sequence according to the CRC polynomial and the polynomial corresponding to the payload. The third length is greater than or equal to the length of the check bit sequence.
[0170] Optionally, the first communication device can select a value greater than or equal to the length of the check bit sequence as the third length.
[0171] Specifically, different lengths of CRC and their respective corresponding polynomials can be preconfigured; for example, they can be determined by the first communication device, or they can be pre-determined and informed to the first communication device by the second communication device, or they can be pre-defined by a protocol, which is not limited in the present application. Therefore, the first communication device can select a CRC with a length greater than or equal to the length of the check bit sequence from different lengths of CRC, and the length of the CRC is the third length.
[0172] Alternatively, a CRC polynomial can be preconfigured, and the length of the CRC corresponding to the CRC polynomial is greater than or equal to the maximum length of the CRC. For example, the CRC polynomial can be determined by the first communication device, or it can be pre-determined and informed to the first communication device by the second communication device, or it can be pre-defined by a protocol, which is not limited in the present application. Therefore, after the first communication device determines the length of the check bit sequence, the length of the CRC corresponding to the CRC polynomial can be determined as the third length.
[0173] Optionally, the third length is 24, and the CRC polynomial corresponding to the third length is g CRC24C (D) = [D24 +D 23 +D 21 +D 20 +D 17 +D 15 +D 13 +D 12 +D 8 +D 4 +D 2 Taking [+D+1] and a payload of 101011 as an example, the binary number corresponding to the CRC polynomial of the third length is 1101100101011000100010111; the L corresponding to this polynomial max =24. The polynomial corresponding to the net load is M(D) = [D 5 +D 3 +D+1]. Connect M(D) with... (i.e. D) 24 Multiply by , generate Its binary representation is 101011000000000000000000000000, which means adding 24 zeros after the payload. Further, dividing 10101100000000000000000000000 by 1101100101011000100010111, and using the modulo-2 algorithm, yields a remainder of 10110111111101111100110. For ease of description, this remainder can be referred to as the first bit sequence. Therefore, the first bit sequence can also be considered to be determined by the polynomial corresponding to the length of the check bit sequence and the polynomial corresponding to the payload.
[0174] Typically, the remainder, i.e., the number of bits in the first bit sequence, is greater than or equal to the L corresponding to the polynomial of the third length. max (Or, the number of bits in the first bit sequence is greater than or equal to the third length). Therefore, the first communication device can select a bit sequence of the third length from the first bit sequence as the check bit sequence. For example, the first third length of the first bit sequence can be used as the check bit sequence.
[0175] Specifically, when the number of bits in the first bit sequence is equal to the third length, the check bit sequence is the first bit sequence; when the number of bits in the first bit sequence is greater than the third length, the check bit sequence is a portion of the first bit sequence, for example, the check bit sequence is a bit sequence of the third length in the first bit sequence.
[0176] Specifically, based on the CRC polynomial g corresponding to the third length CRC24C (D) The first bit sequence determined by the payload is p0, p1, ..., p 23For example, the length of the determined first bit sequence is 24 bits. If the first length L1=4 bits and the second length L2=11 bits, the third length=L1+L2=15 bits. In this case, any 15 bits in the first bit sequence can be determined as the check bit sequence. For example, the first 15 bits in the first bit sequence are determined as the check bit sequence, i.e., the check bit sequence is p0, p1, …, p3 p4, p5, …, p 14 .
[0177] Based on the possible implementation, the first communication device can determine a CRC polynomial based on the length of the check bit sequence, and then determine the check bit sequence based on the CRC polynomial and the polynomial corresponding to the payload. The process of determining the check bit sequence based on the CRC polynomial and the polynomial corresponding to the payload is the CRC encoding. That is, the first communication device can determine the check bit sequence through one CRC encoding calculation process, and the CRC encoding process is simple and has low resource consumption.
[0178] In another possible implementation, the first communication device determines the check bit sequence based on the CRC polynomials corresponding to the first length and the second length, respectively.
[0179] Optionally, the first communication device can determine a CRC polynomial corresponding to the first length, and then determine the first sub-check bit sequence based on the CRC polynomial and the polynomial corresponding to the payload. Similarly, the first communication device can determine a CRC polynomial corresponding to the second length, and then determine the second sub-check bit sequence based on the CRC polynomial and the polynomial corresponding to the payload. The check bit sequence includes the first sub-check bit sequence and the second sub-check bit sequence.
[0180] For example, the first sub-check bit sequence is "1100", and the second sub-check bit sequence is "1010". In this case, the check bit sequence can be "11001010" or "10101100".
[0181] For example, the CRCs of different lengths and the polynomials corresponding thereto can be preconfigured, determined by the first communication device, pre-determined and informed to the first communication device by the second communication device, or pre-defined by a protocol, which is not limited in the present application. Therefore, the first communication device can select the CRC of the first length from the CRCs of different lengths, and determine the polynomial corresponding to the CRC of the first length. Then, the polynomial M(D)*D 第一长度The remainder obtained by dividing the result M(D)' of the multiplication by the polynomial corresponding to the CRC of the first length according to the modulo 2 algorithm is the second bit sequence. Therefore, it can also be considered that the second bit sequence is determined according to the polynomial corresponding to the first length and the polynomial corresponding to the payload. Further, the first communication device can select a bit sequence of the first length from the second bit sequence as the first sub-check bit sequence. For example, the first sub-check bit sequence can be the first length of bit sequences in the second check bit sequence.
[0182] Similarly, the first communication device can select a CRC of the second length from the CRCs of different lengths, and determine a polynomial corresponding to the CRC of the second length. Further, the remainder obtained by dividing the result M(D)'' of the multiplication of the polynomial corresponding to the second length and the polynomial corresponding to the payload according to the modulo 2 algorithm is the third bit sequence. Therefore, it can also be considered that the third bit sequence is determined according to the polynomial corresponding to the second length and the polynomial corresponding to the payload. Further, the first communication device can select a bit sequence of the second length from the third bit sequence as the second sub-check bit sequence. For example, the second sub-check bit sequence can be the first length of bit sequences in the third bit sequence. When the number of bits of the second bit sequence is equal to the first length, the first sub-check bit sequence is the second bit sequence; when the number of bits of the second bit sequence is greater than the first length, the first sub-check bit sequence is part of the bit sequence in the second bit sequence, for example, the first sub-check bit sequence is the first length of bit sequences in the second bit sequence. 第二长度
[0183] Similarly, when the number of bits of the third bit sequence is equal to the second length, the second sub-check bit sequence is the third bit sequence; when the number of bits of the third bit sequence is greater than the second length, the second sub-check bit sequence is part of the bit sequence in the third bit sequence, for example, the second sub-check bit sequence is the second length of bit sequences in the third bit sequence.
[0184] Specifically, the second bit sequence determined based on the CRC polynomial corresponding to the first length and the payload is the second bit sequence determined based on the CRC polynomial corresponding to the second length and the payload is wherein n1 is a positive integer greater than or equal to the first length L1, and n2 is a positive integer greater than or equal to the second length L2. For example, if L1=4 bits and the second length L2=11 bits, any 4 bits in the second bit sequence can be determined as the first sub-check bit sequence. For example, the first 4 bits in the second bit sequence are determined as the second sub-check bit sequence, that is, the first sub-check bit sequence is Similarly, any 11 bits in the third bit sequence can be determined as the second sub-check bit sequence. For example, the first 11 bits in the third bit sequence are determined as the second sub-check bit sequence, i.e., the second sub-check bit sequence is Therefore, the check bit sequence can be
[0185] Based on the possible implementation, the first communication device can respectively determine the CRC polynomials based on the first length and the second length, and then determine the first sub-check bit sequence based on the polynomial corresponding to the payload and the CRC polynomial corresponding to the first length, and determine the second sub-check bit sequence based on the polynomial corresponding to the payload and the CRC polynomial corresponding to the second length. Since the first length and the second length are both smaller than the length of the check bit sequence, compared with the scheme of determining the check bit sequence based on the CRC polynomial corresponding to the length of the check bit sequence and the polynomial corresponding to the payload, the CRC calculation efficiency is higher.
[0186] Optionally, the channel coding can be any one of, but not limited to, the following multiple items: block code, TBCC, Turbo code, LDPC code, Polar code. The Polar code can include PC-Polar code.
[0187] Optionally, when the channel coding is PC-Polar code, the first communication device channel-encodes the CRC-encoded bit sequence to obtain the encoded bit sequence, including: the first communication device PC-Polar codes the CRC-encoded bit sequence according to the plurality of PC bits to obtain the encoded bit sequence.
[0188] As an example, the reliability of each bit in the plurality of PC bits is lower than the reliability of each bit in the CRC-encoded bit sequence. That is, the reliability of the position where any bit in the plurality of PC bits is lower than the reliability of the position where any bit in the CRC-encoded bit sequence is. Further, the reliability of the plurality of PC bits is the lowest reliability in the encoded bit sequence.
[0189] As an example, in this example, the plurality of PC bits are all frozen bit bits. Taking the CRC-encoded bit sequence including 12 bits and the number of PC bits being 3 as an example, at this time, the plurality of PC bits can be as shown in (a) of FIG. 10. Specifically, the implementation of the frozen bit bit can refer to the related description of the related technology described above, which will not be repeated here.
[0190] Based on the example, when the channel is encoded as a PC-Polar code, the plurality of PC bits are all frozen bits PC; that is, the PC bits are all located at positions with lower reliability, such as the reliability of each bit in the plurality of PC bits is lower than the reliability of each bit in the CRC encoded bit sequence. Thus, the CRC encoded bit sequence can be located at positions with higher reliability, reducing the loss of the bit sequence in the transmission process, and improving the decoding performance.
[0191] As another example, the reliability of each bit in the plurality of PC bits is determined based on the length of the check bit sequence.
[0192] Optionally, when the length of the check bit sequence is greater than 0, the reliability of each bit in the plurality of PC bits is lower than the reliability of each bit in the CRC encoded bit sequence. That is, when the length of the check bit sequence is greater than 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the CRC encoded bit sequence.
[0193] For example, when the length of the check bit sequence is greater than 0, the plurality of PC bits are all frozen bits. Specifically, taking the CRC encoded bit sequence including 12 bits and the number of PC bits being 3 as an example, the plurality of PC bits can be as shown in (a) of FIG. 10. The implementation of the frozen bits can be referred to the related description of the related art above, which will not be described here.
[0194] Based on the optional scheme, when the channel is encoded as a PC-Polar code, if the length of the check bit sequence is greater than 0, that is, the CRC encoded bit sequence includes the check bit sequence (such as the CRC check bit), the reliability of the plurality of PC bits can be the lower reliability in the encoded bit sequence, such as the reliability of each bit in the plurality of PC bits is lower than the reliability of each bit in the CRC encoded bit sequence; so that the payload occupies the positions with higher reliability as much as possible, reducing the loss of the bit sequence in the transmission process, and improving the decoding performance.
[0195] Optionally, when the length of the check bit sequence is equal to 0, the reliability of each bit in the plurality of PC bits can be lower than the reliability of each bit in the CRC encoded bit sequence, or there can be at least one PC bit in the plurality of PC bits whose reliability can be higher than the lowest reliability of the CRC encoded bit sequence. That is, when the length of the check bit sequence is 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the CRC encoded bit sequence, or there is at least one bit in the plurality of PC bits whose position has a reliability higher than the lowest reliability of the position of the bit in the CRC encoded bit sequence.
[0196] For example, when the length of the check bit sequence is equal to 0, the plurality of PC bits can all be frozen bits, or there is at least one w min PC in the plurality of PC bits. For example, when the bit number of the PC bits is 3 and the CRC encoded bit sequence includes 12 bits, the plurality of PC bits can be as shown in (b) of FIG. 10, that is, the 3 PC bits include one w min PC and two frozen bits. Specifically, the implementation of the frozen bits and the implementation of the w min PC can be referred to the related description of the related art above, and will not be described here.
[0197] Specifically, the at least one bit (such as the at least one w min PC) can be autonomously determined by the sending end, or can be pre-configured, such as configured by a protocol, or the at least one bit can be determined based on the length of the CRC encoded bit sequence and the length of the sequence output after rate matching, or the first communication device can obtain the at least one bit by any other possible way.
[0198] For example, when the at least one bit is determined based on the length of the CRC encoded bit sequence and the length of the sequence output after rate matching, if the length of the sequence output after rate matching - the length of the CRC encoded bit sequence + 3 ≤ 192, the number of the at least one bit is 0, that is, the plurality of PC bits are all frozen bits; if the length of the sequence output after rate matching - the length of the CRC encoded bit sequence + 3 > 192, the number of the at least one bit is 1, that is, the plurality of PC bits include one w min PC.
[0199] Based on the optional scheme, when the channel coding is PC-Polar code and the length of the check bit sequence is equal to 0, that is, there is no check bit sequence (such as CRC check bit) in the CRC encoded bit sequence, the first communication device can flexibly set the position of the PC bits. For example, the reliability of the plurality of PC bits is all lower than the reliability of the CRC encoded bit sequence (that is, the reliability of any bit in the plurality of PC bits is lower than the reliability of any bit in the CRC encoded bit sequence), or there is at least one PC bit in the plurality of PC bits whose reliability can be higher than the lowest reliability of the CRC encoded bit sequence (that is, the reliability of at least one bit in the plurality of PC bits is higher than the lowest reliability of the CRC encoded bit sequence).
[0200] Since the length of the check bit sequence is equal to 0, there is no check bit sequence in the CRC encoded bit sequence, that is, there is no need to sacrifice the reliability to place the check bit sequence in the channel coding process, so even if there is an individual PC bit (that is, w minThe PC needs to occupy a position with higher reliability, and compared with a scheme that does not need to place the check bit sequence at the cost of reliability, the scheme has less impact on decoding performance. Therefore, the first communication device can flexibly set the position of the PC bit. A plurality of implementation schemes are provided for the PC-Polar code. In addition, the PC bit includes w min The PC can improve the code spectrum.
[0201] S903, the first communication device sends the encoded bit sequence to the second communication device. Optionally, after step S903, the channel coding method can further include steps S904-S906 as shown in FIG. 11:
[0202] S904, the second communication device obtains the received value sequence.
[0203] For example, when the second communication device is the second communication device itself (such as a terminal device, a network device, etc.), the second communication device can obtain the received value sequence from the first communication device; that is, the first communication device sends the encoded bit sequence to the second communication device, and the second communication device receives the received value sequence corresponding to the encoded bit sequence after channel transmission. At this time, step S903 and step S904 can be combined as: the first communication device sends the encoded bit sequence to the second communication device; correspondingly, the second communication device receives the received value sequence corresponding to the encoded bit sequence from the first communication device.
[0204] When the second communication device is a component (such as a chip or a chip system, etc.) in the second communication device, the second communication device can obtain the received value sequence from the radio frequency chip. That is, the first communication device sends the encoded bit sequence, and after channel transmission, the receiving antenna of the second communication device can receive the received sequence corresponding to the encoded bit sequence, and further, the radio frequency chip processes the received sequence to obtain the received value sequence.
[0205] S905, the second communication device performs channel decoding on the received value sequence to obtain a decoded bit sequence, and the decoded bit sequence includes a payload and a check bit sequence.
[0206] S906, the second communication device performs CRC check on the decoded bit sequence to obtain the payload.
[0207] Optionally, when the channel decoding is PC-Polar code, the second communication device performs channel decoding on the received value sequence to obtain a decoded bit sequence, including: the second communication device performs channel decoding on the received value sequence according to a plurality of PC bits to obtain a decoded bit sequence; wherein, if the length of the check bit sequence is greater than 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the decoded bit sequence.
[0208] Alternatively, when the channel coding is PC-Polar code, the second communication device channel-decodes the received value sequence to obtain a decoded bit sequence, comprising: the second communication device channel-decodes the received value sequence according to the plurality of PC bits to obtain the decoded bit sequence; wherein, if the length of the check bit sequence is 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the CRC encoded bit sequence, or there is at least one bit in the plurality of PC bits whose position has a reliability higher than the lowest reliability of the position of the bit in the decoded bit sequence.
[0209] For example, the implementation of the plurality of PC bits can refer to the related description of the above embodiments, which will not be repeated here.
[0210] The embodiment of the present application provides a channel coding method, and the first communication device determines the length of the CRC on the basis of the size of the payload, and further considers that different information (such as information of different service types) has different requirements for error detection capability, and then the length of the CRC (i.e. the length of the check bit sequence) determined finally is determined based on the size of the payload and the information identifier of the payload. For example, because different information has different requirements for error detection capability, the first communication device can flexibly set the length of the CRC based on the information identifier of the payload, so that the encoded bit sequence transmitted after encoding of different payloads can meet the corresponding error detection capability requirement, reduce the bit error rate in the transmission process, and improve the reliability of the CRC encoding check.
[0211] The above is a general description of the channel coding method provided by the present application, and the "first length" involved in the above embodiments will be described in detail below.
[0212] Optionally, the first length is the length corresponding to the value set to which the size of the payload belongs. For example, the value set to which the size of the payload belongs includes a plurality of values, and one of the plurality of values is the size of the payload.
[0213] For example, the value set to which the size of the payload belongs can include the following two possible implementation forms:
[0214] In one possible implementation form, the length corresponding to the value set to which the size of the payload belongs is 0, i.e. the first length is 0. Wherein, the maximum value in the value set to which the size of the payload belongs is less than or equal to the threshold. That is, when the maximum value in the value set to which the size of the payload belongs is less than or equal to the threshold, the length corresponding to the value set is 0.
[0215] For example, the threshold can be a positive integer. For example, the threshold can be 6, 7, 8, 11, 12, 20, 21, etc., which is not limited by the present application.
[0216] In another possible implementation form, the value set to which the size of the payload belongs is a first type of set. The first type of set includes a plurality of value sets, i.e., the value set to which the size of the payload belongs is one of the plurality of value sets.
[0217] Each of the plurality of value sets corresponds to a length, and in the plurality of value sets, the larger the value in a value set, the longer the length corresponding to the value set.
[0218] Specifically, different values of the size of the payload can be divided into different value sets according to different values of the size of the payload, thereby obtaining a plurality of value sets. Further, different lengths are configured for the plurality of value sets, so that each value set corresponds to a length. Then, the first communication device determines the value set to which the size of the payload belongs, and further determines the length corresponding to the value set, i.e., the first length.
[0219] Specifically, the length corresponding to each value set in the plurality of value sets can be pre-configured. For example, it can be determined by the first communication device autonomously, or it can be determined by the second communication device and informed to the first communication device, or it can be predefined by a protocol, or it can be configured by any possible way, which is not limited in the present application.
[0220] For example, the minimum value in one value set in the plurality of value sets can be 7 bits, and the maximum value can be greater than or equal to 20 bits. For example, the value set can be the value set to which the size of the payload belongs, i.e., the minimum value in the value set to which the size of the payload belongs is 7 bits, and the maximum value is greater than or equal to 20 bits.
[0221] For example, taking any two adjacent value sets in the plurality of value sets (or the first type of set) as the first value set and the second value set, if the values in the first value set are all greater than the values in the second value set, the length corresponding to the first value set is greater than the length corresponding to the second value set.
[0222] For example, adjacent value sets can be understood as: the maximum value in one value set in the two value sets is adjacent to the minimum value in the other value set.
[0223] For example, the values in the first value set being all greater than the values in the second value set can be understood as: the minimum value in the first value set is greater than the maximum value in the second value set, or any value in the first value set is greater than any value in the second value set.
[0224] For example, the first value set is {21, 22, 23, …, 38, 39, 40} and the second value set is {7, 8, 9, 10, …, 18, 19, 20}. In this case, the minimum value in the first value set is 21 and the maximum value in the second value set is 20. Further, the length corresponding to the second value set can be 4 bits and the length corresponding to the first value set can be greater than 4 bits, such as 5 bits.
[0225] Optionally, the number of values in the first value set and the number of values in the second value set are the same or different.
[0226] Optionally, when the number of values in the first value set and the number of values in the second value set are different, if the values in the first value set are all greater than the values in the second value set, the number of values in the first value set is greater than the number of values in the second value set. If the values in the first value set are all less than the values in the second value set, the number of values in the first value set is less than the number of values in the second value set. That is, in the multiple value sets, the greater the maximum value of a value set, the more values in the value set.
[0227] For example, when the values in the first value set are all greater than the values in the second value set, the first value set can be {21, 22, 23, …, 38, 39, 40} and the second value set can be {7, 8, 9, 10, …, 18, 19, 20}.
[0228] Optionally, when the number of values in the first value set and the number of values in the second value set are the same, in the multiple value sets, the greater the value in a value set, the greater the difference between the lengths corresponding to adjacent value sets.
[0229] For example, when the values in the first value set are all greater than the values in the second value set, the greater the number of the first value set and / or the second value set, the greater the difference between the length corresponding to the first value set and the length corresponding to the second value set. When the values in the first value set are all less than the values in the second value set, the greater the number of the first value set and / or the second value set, the smaller the difference between the length corresponding to the first value set and the length corresponding to the second value set.
[0230] In combination with the above two possible implementation manners, optionally, the lengths corresponding to different value sets can be preconfigured, and the different value sets can include a value set with a length of 0 and multiple value sets. The implementation of the multiple value sets can be referred to the related description above, which will not be described here.
[0231] For example, when the threshold value is 6 or 7 (i.e., the maximum value in the value set with a length of 0 can be 6), the lengths corresponding to different value sets can include the following Table 2 or Table 3:
[0232] Table 2
[0233] Table 3
[0234] As shown in Table 2 or Table 3 above, when the value in the value set is greater than 0 and less than or equal to 6, or the value in the value set is greater than or equal to 3 and less than or equal to 6, the length corresponding to the value set is 0; when the value in the value set is greater than or equal to 7 and less than or equal to 20, the length corresponding to the value set is 4; when the value in the value set is greater than or equal to 21 and less than or equal to 40, the length corresponding to the value set is 5; when the value in the value set is greater than or equal to 41 and less than or equal to 60, the length corresponding to the value set is 6; when the value in the value set is greater than or equal to 61 and less than or equal to 80, the length corresponding to the value set is 7; when the value in the value set is greater than or equal to 81 and less than or equal to 100, the length corresponding to the value set is 9; when the value in the value set is greater than or equal to 101, the length corresponding to the value set is 11.
[0235] Alternatively, when the threshold value is 6 or 7 (i.e., the maximum value in the value set with a length of 0 can be 6), the lengths corresponding to different value sets can include the following Table 4 or Table 5:
[0236] Table 4
[0237] Table 5
[0238] As shown in Table 4 or Table 5 above, when the value in the value set is greater than 0 and less than or equal to 6, or the value in the value set is greater than or equal to 3 and less than or equal to 6, the length corresponding to the value set is 0; when the value in the value set is greater than or equal to 7 and less than or equal to 30, the length corresponding to the value set is 4; when the value in the value set is greater than or equal to 31 and less than or equal to 50, the length corresponding to the value set is 5; when the value in the value set is greater than or equal to 51 and less than or equal to 70, the length corresponding to the value set is 6; when the value in the value set is greater than or equal to 71 and less than or equal to 90, the length corresponding to the value set is 7; when the value in the value set is greater than or equal to 91 and less than or equal to 110, the length corresponding to the value set is 9; when the value in the value set is greater than or equal to 111, the length corresponding to the value set is 11. For example, when the threshold value is 11 or 12 (i.e., the maximum value in the value set with a length of 0 can be 11), the lengths corresponding to different value sets can include the following Table 6 or Table 7:
[0239] Table 6
[0240] Table 7
[0241] As shown in Table 6 or Table 7 above, when the value in the value set is greater than 0 and less than or equal to 11, or the value in the value set is greater than or equal to 3 and less than or equal to 11, the length corresponding to the value set is 0; when the value in the value set is greater than or equal to 12 and less than or equal to 40, the length corresponding to the value set is 5; when the value in the value set is greater than or equal to 41 and less than or equal to 60, the length corresponding to the value set is 6; when the value in the value set is greater than or equal to 61 and less than or equal to 80, the length corresponding to the value set is 7; when the value in the value set is greater than or equal to 81 and less than or equal to 100, the length corresponding to the value set is 9; when the value in the value set is greater than or equal to 101, the length corresponding to the value set is 11.
[0242] Specifically, the configuration mode of the lengths corresponding to different value sets is similar to the configuration mode of the lengths corresponding to the plurality of value sets in the first type of set, and specific configurations can be referred to the related description of the above embodiments, which will not be described here.
[0243] It should be understood that the above exemplary lists in Tables 2-7 illustrate different value sets and their respective corresponding lengths; thus, the first communication device can determine the first length from one of the above Tables 2-7 according to the size of the payload; but it does not mean that the value set and its corresponding length include the content of the above Tables 2-7, i.e., when the value set and its corresponding length include other implementations in addition to the above Tables 2-7 (such as the value set and its corresponding length can include the content of Table 1, etc.), the first communication device can also determine the first length from the other implementation according to the size of the payload, which is not limited by the present application.
[0244] In addition, the above exemplary value set and its corresponding length are represented by a table, in fact, the value set and its corresponding length can also be represented by a set, etc., which is not limited by the present application.
[0245] The above is the description of the "first length", and the "second length" related to the above embodiments is described in detail below. Exemplarily, the second length is the length corresponding to the information identifier of the payload.
[0246] Optionally, the information identifier of the payload is any of the following identifiers: hybrid automatic repeat request-acknowledge character (HARQ-ACK), scheduling request (SR), or channel state information (CSI) part 1, CSI part 2, service identifier of an artificial intelligence (AI) scenario, or service identifier of a perception scenario.
[0247] Exemplarily, the HARQ-ACK can include an acknowledge character (ACK) or a non-acknowledge character (NACK)
[0248] Optionally, the information identifier of the payload includes multiple types, and the multiple types correspond to different importance levels, respectively. The higher the importance level corresponding to the information identifier of the payload, the longer the length corresponding to the information identifier of the payload.
[0249] Exemplarily, the importance level of the multiple types can be determined based on the error detection requirement corresponding to each type, respectively; for example, the higher the error detection requirement, the higher the importance level. Alternatively, the importance level of the multiple types can also be determined based on other requirements, which is not limited by the present application.
[0250] Optionally, when the information identifier of the payload is any one of HARQ-ACK, SR, or CSI part 1, the importance level corresponding to the information identifier of the payload is a first level; when the information identifier of the payload is any one of the service identifier of the AI scene, the service identifier of the perception scene, or CSI part 2, the importance level corresponding to the information identifier of the payload is a second level, and the first level is higher than the second level.
[0251] That is, the length corresponding to the information identifier of the payload when the information identifier of the payload is any one of HARQ-ACK, SR, or CSI part 1 is greater than the length corresponding to the information identifier of the payload when the information identifier of the payload is any one of the service identifier of the AI scene, the service identifier of the perception scene, or CSI part 2. Exemplarily, the relationship between the different types and the lengths corresponding thereto can include the content shown in Table 8 as follows:
[0252] Table 8
[0253] As shown in Table 8 above, when the information identifier of the payload is any one of HARQ-ACK, SR, or CSI part 1, the length (i.e., a second length) corresponding to the information identifier of the payload is 6 bits; at this time, the level corresponding to the type to which the information identifier of the payload belongs is a first level. When the information identifier of the payload is any one of the service identifier of the AI scene, the service identifier of the perception scene, or CSI part 2, the length (i.e., a second length) corresponding to the information identifier of the payload is 0; at this time, the level corresponding to the type to which the information identifier of the payload belongs is a second level.
[0254] Optionally, when the information identifier of the payload is any one of HARQ-ACK or SR, the importance level corresponding to the information identifier of the payload is a first level; when the information identifier of the payload is CSI part 1, the importance level corresponding to the information identifier of the payload is a second level; when the information identifier of the payload is any one of the service identifier of the AI scene, the service identifier of the perception scene, or CSI part 2, the importance level corresponding to the information identifier of the payload is a third level, and the importance levels of the first level, the second level, and the third level decrease in turn.
[0255] That is, the length corresponding to the information identifier of the payload when the information identifier of the payload is any one of HARQ-ACK or SR is greater than the length corresponding to the information identifier of the payload when the information identifier of the payload is CSI part 1; and the length corresponding to the information identifier of the payload when the information identifier of the payload is CSI part 1 is greater than the length corresponding to the information identifier of the payload when the information identifier of the payload is any one of the service identifier of the AI scene, the service identifier of the perception scene, or CSI part 2.
[0256] Exemplarily, the relationship between the different types and the corresponding lengths can include the following as shown in Table 9.
[0257] Table 9
[0258] As shown in Table 9, when the information identifier of the payload is any one of HARQ-ACK, SR, the corresponding length (i.e., the second length) of the information identifier of the payload is 11 bits; at this time, the corresponding level of the type to which the information identifier of the payload belongs is the first level. When the information identifier of the payload is any one of CSI part1, the corresponding length (i.e., the second length) of the information identifier of the payload is 6 bits; at this time, the corresponding level of the type to which the information identifier of the payload belongs is the second level. When the information identifier of the payload is any one of the service identifier of the AI scene, the service identifier of the perception scene, or CSI part2, the corresponding length (i.e., the second length) of the information identifier of the payload is 0; at this time, the corresponding level of the type to which the information identifier of the payload belongs is the third level.
[0259] In combination with the above two possible implementation forms, optionally, the information identifier of the payload further includes a priority indication of the payload. Wherein, for the information identifiers of the payloads belonging to the same type, the higher the priority of the priority indication of the payload, the longer the corresponding length of the information identifier of the payload.
[0260] Exemplarily, the priority indication of the payload can be represented by a priority index, for example, the priority index is 1 or 0, wherein the priority indicated by the priority index 1 is higher than the priority indicated by the priority index 0; or, the priority indicated by the priority index 0 is higher than the priority indicated by the priority index 1.
[0261] Specifically, when the information identifier includes any two of HARQ-ACK, SR, or CSI part1 shown in Table 8, such as HARQ-ACK and SR, if the priority indicated by the priority indication of the HARQ-ACK is higher than the priority indicated by the priority indication of the SR, the corresponding length of the HARQ-ACK is greater than the corresponding length of the SR. For example, the corresponding length of the HARQ-ACK can be 7, and the corresponding length of the SR can be 6 or 5; or, the corresponding length of the HARQ-ACK can be 6, and the corresponding length of the SR can be 5.
[0262] Similarly, when the identification of the information includes both the HARQ-ACK and the SR as shown in Table 9, the length corresponding to the HARQ-ACK is greater than the length corresponding to the SR if the priority indicated by the priority indication of the HARQ-ACK is higher than the priority indicated by the priority indication of the SR, as for the HARQ-ACK and the SR. For example, the length corresponding to the HARQ-ACK can be 12, and correspondingly, the length corresponding to the SR can be 11 or 10; or the length corresponding to the HARQ-ACK can be 11, and correspondingly, the length corresponding to the SR can be 10.
[0263] Specifically, the configuration manner of the relationship between the different types and the lengths corresponding thereto is similar to the configuration manner of the lengths corresponding to the different value sets respectively, and details can be referred to the related description of the above embodiments, which will not be repeated here.
[0264] It should be understood that the above Tables 8-9 exemplarily list different types and lengths corresponding thereto respectively; thus, the first communication device can determine the second length from the identification of the information according to the payload in one of the above Tables 8-9; but it does not mean that the different types and the lengths corresponding thereto include the content of the above Tables 8-9, i.e., when the different types and the lengths corresponding thereto include other implementations in addition to the above Tables 8-9, the first communication device can also determine the second length from the other implementations according to the identification of the information of the payload, which is not limited by the present application.
[0265] In addition, the above exemplary different types and the lengths corresponding thereto are represented by tables, in fact, the value sets and the lengths corresponding thereto can also be represented by sets and the like, which is not limited by the present application.
[0266] It should be noted that each of the embodiments of the present application can be independently implemented or combined to be implemented, which is not limited. If there is no special description and logical conflict, the terms and / or descriptions provided in different embodiments of the present application are consistent and can be mutually referred, and the technical features in different embodiments can be combined to form new embodiments according to their inherent logical relationship.
[0267] It should be noted that each device includes a hardware structure and / or software module corresponding to each function in order to implement the above functions. Those skilled in the art should easily understand that, in combination with the algorithm steps of each example described in the embodiments disclosed in the present document, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is implemented in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.
[0268] It should be noted that each device includes a hardware structure and / or software module corresponding to each function in order to implement the above functions. Those skilled in the art should easily understand that, in combination with the algorithm steps of each example described in the embodiments disclosed in the present document, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is implemented in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.
[0269] The embodiments of the present application can divide the function modules of each device according to the above method examples, for example, each function module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated module can be realized in the form of hardware or in the form of a software function module. It should be noted that the division of the modules in the embodiments of the present application is illustrative, and is only a logical function division. There can be another division manner when actually implemented.
[0270] FIG. 12 shows a structural schematic diagram of a communication apparatus 1200. The communication apparatus 1200 includes a processing module 1201 and a transceiver module 1202. The communication apparatus can be used to implement the functions of the first communication device or the second communication device.
[0271] In some embodiments, the communication apparatus 1200 can further include a storage module (not shown in FIG. 12) for storing program instructions and data.
[0272] In some embodiments, the transceiver module 1202, which can also be referred to as a transceiver unit, is used to implement the sending and / or receiving functions. The transceiver module 1202 can be composed of a transceiver circuit, a transceiver, a transceiver, or a communication interface.
[0273] In some embodiments, the transceiver module 1202 can include a receiving module and a transmitting module for performing the receiving and transmitting steps, respectively, of the steps of the above-described method embodiments performed by the above-described first communication device or second communication device, and / or for supporting other processes related to the techniques described herein; and the processing module 1201 can be configured to perform the processing steps (e.g., determining, etc.) of the steps of the above-described method embodiments performed by the above-described first communication device or second communication device, and / or for supporting other processes related to the techniques described herein.
[0274] When the communication apparatus 1200 is configured to implement the functions of the above-described first communication device:
[0275] In some embodiments, the processing module 1201 is configured to determine the length of the check bit sequence according to the size of the payload and the information identifier of the payload; and encode the payload according to the length of the check bit sequence to obtain the encoded bit sequence. The transceiver module 1202 is configured to transmit the encoded bit sequence.
[0276] Optionally, the processing module 1201 is further configured to perform CRC encoding on the payload according to the length of the check bit sequence to obtain a CRC encoded bit sequence, the CRC encoded bit sequence comprising the payload and the check bit sequence; and perform channel encoding on the CRC encoded bit sequence to obtain the encoded bit sequence.
[0277] Optionally, when the channel encoding comprises a PC-Polar code, performing channel encoding on the CRC encoded bit sequence to obtain the encoded bit sequence comprises: performing PC-based polar encoding on the CRC encoded bit sequence according to a plurality of PC bits to obtain the encoded bit sequence; wherein if the length of the check bit sequence is greater than 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the CRC encoded bit sequence.
[0278] Optionally, when the channel encoding comprises a PC-Polar code, performing channel encoding on the CRC encoded bit sequence to obtain the encoded bit sequence comprises: performing PC-based polar encoding on the CRC encoded bit sequence according to a plurality of PC bits to obtain the encoded bit sequence; wherein if the length of the check bit sequence is 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the CRC encoded bit sequence, or there is at least one bit in the plurality of PC bits whose position has a higher reliability than the lowest reliability of the positions of the bits in the CRC encoded bit sequence.
[0279] When the communication apparatus 1200 is configured to implement the functions of the above-described second communication device:
[0280] In some embodiments, the processing module 1201 is configured to obtain a received value sequence; perform channel decoding on the received value sequence to obtain a decoded bit sequence, the decoded bit sequence comprising a payload and a check bit sequence, the length of the check bit sequence being related to the size of the payload and an information identifier of the payload; and perform CRC check on the decoded bit sequence to obtain the payload.
[0281] Optionally, when the channel decoding comprises a PC-Polar code, the performing channel decoding on the received value sequence to obtain the decoded bit sequence comprises: performing channel decoding on the received value sequence according to a plurality of PC bits to obtain the decoded bit sequence; and wherein, if the length of the check bit sequence is greater than 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the decoded bit sequence.
[0282] Optionally, when the channel decoding comprises a PC-Polar code, the performing channel decoding on the received value sequence to obtain the decoded bit sequence comprises: performing channel decoding on the received value sequence according to a plurality of PC bits to obtain the decoded bit sequence; and wherein, if the length of the check bit sequence is 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the CRC encoded bit sequence, or there is at least one bit in the plurality of PC bits whose position has a reliability higher than the lowest reliability of the positions of the bits in the decoded bit sequence.
[0283] In combination with the above two embodiments, optionally, the length of the check bit sequence is the sum of a first length and a second length; wherein the first length is related to the size of the payload, and the second length is related to the information identifier of the payload, and the first length and the second length are both integers greater than or equal to 0.
[0284] In combination with the above two embodiments, optionally, the first length is the length corresponding to the size of the payload in a value set.
[0285] In combination with the above two embodiments, optionally, the length corresponding to the size of the payload in a value set is 0, and the maximum value in the value set of the size of the payload is less than or equal to a threshold value.
[0286] In combination with the above two embodiments, optionally, the value set of the size of the payload belongs to a first type of set, and the first type of set comprises a plurality of value sets; the length corresponding to a first value set is greater than the length corresponding to a second value set, the first value set and the second value set are any two adjacent value sets in the plurality of value sets, and the minimum value in the first value set is greater than the maximum value in the second value set.
[0287] Optionally, the number of values in the first value set is the same as the number of values in the second value set, and the greater the number of values, the greater the difference between the length corresponding to the first value set and the length corresponding to the second value set.
[0288] Optionally, the minimum value in the value set to which the size of the payload belongs is 7 bits, and the maximum value is greater than or equal to 20 bits.
[0289] Optionally, the second length is the length corresponding to the information identifier of the payload.
[0290] Optionally, the information identifier of the payload includes multiple types, and the multiple types correspond to different importance levels respectively, and the higher the importance level corresponding to the information identifier of the payload, the longer the length corresponding to the information identifier of the payload.
[0291] Optionally, the information identifier of the payload is any one of the following identifiers: HARQ-ACK, SR, or CSI part 1, CSI part 2, service identifier of an AI scene, or service identifier of a perception scene.
[0292] Optionally, when the information identifier of the payload is any one of HARQ-ACK, SR, or CSI part 1, the importance level corresponding to the information identifier of the payload is a first level; when the payload is any one of the service identifier of an AI scene, the service identifier of a perception scene, or CSI part 2, the importance level corresponding to the information identifier of the payload is a second level, and the first level is higher than the second level.
[0293] Optionally, when the payload is any one of HARQ-ACK or SR, the importance level corresponding to the information identifier of the payload is a first level; when the payload is CSI-1 part 1, the importance level corresponding to the information identifier of the payload is a second level; when the payload is any one of the service identifier of an AI scene, the service identifier of a perception scene, or CSI part 2, the importance level of the payload is a third level, and the importance levels of the first level, the second level, and the third level decrease in turn.
[0294] Optionally, the information identifier of the payload further includes a priority indication of the payload; for the information identifier of the payload of the same type, the higher the priority indicated by the priority indication of the payload, the longer the length corresponding to the information identifier of the payload.
[0295] Optionally, in combination with the two above-mentioned embodiments, the check bit sequence is part or all of the first bit sequence, the length of the first bit sequence is greater than or equal to the length of the check bit sequence, and the first bit sequence is determined according to a polynomial corresponding to the length of the check bit sequence and a polynomial corresponding to the payload.
[0296] Optionally, in combination with the two above-mentioned embodiments, the check bit sequence includes a first sub-check bit sequence and a second sub-check bit sequence; the length of the first sub-check bit sequence is a first length, the first sub-check bit sequence is part or all of the second bit sequence, and the second bit sequence is determined according to a polynomial corresponding to the first length and a polynomial corresponding to the payload; the length of the second sub-check bit sequence is a second length, the second sub-check bit sequence is part or all of the third bit sequence, and the third bit sequence is determined according to a polynomial corresponding to the second length and a polynomial corresponding to the payload. All related contents of the steps involved in the above method embodiments can be referred to the function description of the corresponding function modules, which will not be repeated here.
[0297] In this application, the communication device (such as the first communication device or the second communication device) 1200 is presented in the form of dividing various function modules in an integrated manner. The "module" here can refer to a specific application-specific integrated circuit (ASIC), a circuit, a processor and a memory executing one or more software or firmware programs, an integrated logic circuit, and / or other devices that can provide the above functions.
[0298] In some embodiments, in hardware implementation, those skilled in the art can conceive that the communication device 1200 can adopt the form of the communication apparatus 1200 shown in FIG. 12.
[0299] As an example, the function / implementation process of the processing module 1201 in FIG. 12 can be realized by invoking the computer execution instructions stored in the memory 804 by the processor 801 in the communication apparatus 800 shown in FIG. 8. The function / implementation process of the transceiver module 1202 in FIG. 12 can be realized by the communication interface 802 in the communication apparatus 800 shown in FIG. 8.
[0300] In some embodiments, when the communication device 1200 in FIG. 12 is a chip or a chip system, the function / implementation process of the transceiver module 1202 can be realized by the input / output interface (or communication interface) of the chip or chip system, and the function / implementation process of the processing module 1201 can be realized by the processor (or processing circuit) of the chip or chip system.
[0301] Since the communication device 1200 provided in this embodiment can execute the above method, the technical effects it can achieve can be referred to the above method embodiment, and will not be repeated here.
[0302] As a possible product form, the first or second communication device described in the embodiments of this application can also be implemented using one or more FPGAs, programmable logic devices (PLDs), controllers, state machines, gate logic, discrete hardware components, any other suitable circuits, or any combination of circuits capable of performing the various functions described throughout this application.
[0303] As another possible product form, the first or second communication device described in this application embodiment can be implemented using a general bus architecture. For ease of explanation, refer to Figure 13, which is a schematic diagram of the communication device 1300 provided in this application embodiment. The communication device 1300 includes a processor 1301 and a transceiver 1302 (which, in a specific implementation, can be an input / output interface or a communication interface). The communication device 1300 can be a first communication device, or a chip or chip system therein; or, the communication device 1300 can be a second communication device, or a chip or module therein. Figure 13 only shows the main components of the communication device 1300. In addition to the processor 1301 and transceiver 1302, the communication device may further include a memory 1303.
[0304] Optionally, the processor 1301 is mainly used to process communication protocols and communication data, control the entire communication device, execute software programs, and process the data of the software programs. The memory 1303 is mainly used to store software programs and data. The transceiver 1302 may include radio frequency (RF) circuitry and an antenna. The RF circuitry is mainly used for converting baseband signals to RF signals and processing RF signals. The antenna is mainly used for transmitting and receiving RF signals in the form of electromagnetic waves.
[0305] Optionally, the processor 1301, transceiver 1302, and memory 1303 can be connected via a communication bus.
[0306] When the communication device is powered on, the processor 1301 can read the software program in the memory 1303, interpret and execute the instructions of the software program, and process the data of the software program. When data needs to be transmitted wirelessly, the processor 1301 performs baseband processing on the data to be transmitted and outputs the baseband signal to the radio frequency (RF) circuit. The RF circuit then performs RF processing on the baseband signal and transmits the RF signal outward in the form of electromagnetic waves through the antenna. When data is sent to the communication device, the RF circuit receives the RF signal through the antenna, converts the RF signal into a baseband signal, and outputs the baseband signal to the processor 1301. The processor 1301 converts the baseband signal into data and processes the data.
[0307] In another implementation, the radio frequency circuitry and antenna can be set up independently of the processor performing baseband processing. For example, in a distributed scenario, the radio frequency circuitry and antenna can be arranged remotely, independent of the communication device.
[0308] In some embodiments, this application also provides a communication device, which includes a processor for implementing the methods in any of the above method embodiments. The communication device may be a first communication device or a second communication device as described in the above method embodiments.
[0309] As one possible implementation, the communication device also includes a memory. This memory stores necessary computer programs and data. The computer program may include instructions, which a processor can invoke to instruct the communication device to execute the methods described in any of the above method embodiments. Alternatively, the memory may not be present in the communication device.
[0310] As another possible implementation, the communication device also includes an interface circuit, which is a code / data read / write interface circuit, used to receive computer execution instructions (which are stored in memory and may be read directly from memory or may be transmitted through other devices) and transmit them to the processor.
[0311] As another possible implementation, the communication device also includes a communication interface for communicating with modules outside the communication device.
[0312] It is understood that the communication device can be a chip or a chip system. When the communication device is a chip system, it can be composed of chips or may include chips and other discrete devices. This application does not specifically limit this.
[0313] This application also provides a computer-readable storage medium having a computer program or instructions stored thereon, which, when executed by a computer, implements the functions of any of the above-described method embodiments.
[0314] This application also provides a computer program product that, when executed by a computer, implements the functions of any of the above method embodiments.
[0315] 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.
[0316] It is understood that the systems, apparatuses, and methods described in this application can also 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 couplings or direct couplings or communication connections shown or discussed may be through some interfaces; indirect couplings or communication connections between devices or units may be electrical, mechanical, or other forms.
[0317] The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. The components shown as units may or may not be physical units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0318] 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.
[0319] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented using software programs, implementation can be, in whole or in part, in the form of a computer program product. This computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device containing one or more servers, data centers, etc., that can be integrated with the medium. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive (SSD)). In this embodiment, the computer may include the aforementioned apparatus.
[0320] Although this application has been described herein in conjunction with various embodiments, those skilled in the art, by reviewing the accompanying drawings, disclosure, and appended claims, will understand and implement other variations of the disclosed embodiments in carrying out the claimed application. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude a plurality. A single processor or other unit can implement several functions listed in the claims. While different dependent claims may recite certain measures, this does not mean that these measures cannot be combined to produce good results.
Claims
1. A channel coding method characterized by, The method comprises: determining the length of the check bit sequence according to the size of the payload and the information identifier of the payload; encoding the payload according to the length of the check bit sequence to obtain an encoded bit sequence; sending the encoded bit sequence.
2. The method of claim 1, wherein, The encoding of the payload according to the length of the check bit sequence to obtain an encoded bit sequence comprises: CRC encoding the payload according to the length of the check bit sequence to obtain a CRC encoded bit sequence, the CRC encoded bit sequence comprising the payload and the check bit sequence; channel encoding the CRC encoded bit sequence to obtain the encoded bit sequence.
3. The method of claim 2, wherein, When the channel encoding comprises PC-based polar encoding, the channel encoding of the CRC encoded bit sequence to obtain the encoded bit sequence comprises: PC-based polar encoding the CRC encoded bit sequence according to a plurality of PC bits to obtain the encoded bit sequence; wherein, if the length of the check bit sequence is greater than 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the CRC encoded bit sequence.
4. The method according to claim 2 or 3, characterized in that, When the channel encoding comprises PC-based polar encoding, the channel encoding of the CRC encoded bit sequence to obtain the encoded bit sequence comprises: PC-based polar encoding the CRC encoded bit sequence according to a plurality of PC bits to obtain the encoded bit sequence; wherein, if the length of the check bit sequence is 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the CRC encoded bit sequence, or there is at least one bit in the plurality of PC bits whose position has a higher reliability than the lowest reliability of the positions of the bits in the CRC encoded bit sequence.
5. A channel decoding method characterized by, The method comprises: obtaining a received value sequence; channel decoding the received value sequence to obtain a decoded bit sequence, the decoded bit sequence comprising the payload and the check bit sequence, the length of the check bit sequence being related to the size of the payload and the information identifier of the payload; performing CRC check on the decoded bit sequence to obtain the payload.
6. The method of claim 5, wherein, When the channel decoding comprises PC-based polar decoding, the channel decoding of the received value sequence to obtain a decoded bit sequence comprises: channel decoding the received value sequence according to a plurality of PC bits to obtain a decoded bit sequence; wherein, if the length of the check bit sequence is greater than 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the payload and the check bit sequence.
7. The method according to claim 5 or 6, characterized in that, When the channel decoding comprises PC-based polar decoding, the channel decoding of the received value sequence to obtain a decoded bit sequence comprises: channel decoding the received value sequence according to a plurality of PC bits to obtain a decoded bit sequence; wherein, if the length of the check bit sequence is greater than 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the payload and the check bit sequence. If the length of the check bit sequence is 0, the reliability of the position of any bit in the plurality of PC bits is lower than the reliability of the position of any bit in the payload and the check bit sequence, or the reliability of the position of at least one bit in the plurality of PC bits is higher than the lowest reliability of the position of the bits in the payload and the check bit sequence.
8. The method according to any one of claims 1 to 7, characterized in that, The length of the check bit sequence is the sum of a first length and a second length; the first length is related to the size of the payload, and the second length is related to the information identifier of the payload; the first length and the second length are both integers greater than or equal to 0.
9. The method of claim 8, wherein, The first length is the length corresponding to the value set to which the size of the payload belongs.
10. The method of claim 9, wherein, The length corresponding to the value set to which the size of the payload belongs is 0, and the maximum value in the value set to which the size of the payload belongs is less than or equal to a threshold value.
11. The method of claim 9, wherein, The value set to which the size of the payload belongs belongs to a first type of set, and the first type of set includes a plurality of value sets. The length corresponding to a first value set is greater than the length corresponding to a second value set, the first value set and the second value set are any two adjacent value sets in the plurality of value sets, and the minimum value in the first value set is greater than the maximum value in the second value set.
12. The method of claim 11, wherein, The number of values in the first value set is the same as the number of values in the second value set, and the greater the number of values, the greater the difference between the length corresponding to the first value set and the length corresponding to the second value set.
13. The method according to claim 11 or 12, characterized in that, The minimum value in the value set to which the size of the payload belongs is 7 bits, and the maximum value is greater than or equal to 20 bits.
14. The method according to any one of claims 9 to 13, characterized in that, The second length is the length corresponding to the information identifier of the payload.
15. The method according to any one of claims 1 to 14, characterized in that, The information identifier of the payload includes a plurality of types, and the plurality of types correspond to different importance levels respectively.
16. The method according to any one of claims 1 to 15, characterized in that, The higher the importance level corresponding to the information identifier of the payload, the longer the length corresponding to the information identifier of the payload.
17. The method according to any one of claims 1 to 16, characterized in that, The information identifier of the payload is any one of the following identifiers: hybrid automatic repeat request-acknowledgment character (HARQ-ACK), scheduling request (SR), or channel state information (CSI) part 1 (part 1), CSI part 2 (part 2), service identifier of an artificial intelligence (AI) scenario, or service identifier of a perception scenario.
18. The method according to any one of claims 1 to 17, characterized in that, The information identifier of the payload includes a priority indication of the payload; for the information identifier of the same type of payload, the longer the length corresponding to the information identifier of the payload, the higher the priority indicated by the priority indication of the payload.
19. The method according to any one of claims 1 to 18, characterized in that, The check bit sequence is part or all of a first bit sequence, the length of the first bit sequence is greater than or equal to the length of the check bit sequence, and the first bit sequence is determined according to a polynomial corresponding to the length of the check bit sequence and a polynomial corresponding to the payload.
20. The method of any one of claims 1-19, wherein, The check bit sequence includes a first sub-check bit sequence and a second sub-check bit sequence. The first sub-check bit sequence has a first length, and is part or all of a second bit sequence determined according to a polynomial corresponding to the first length and a polynomial corresponding to the payload. The second sub-check bit sequence has a second length, and is part or all of a third bit sequence determined according to a polynomial corresponding to the second length and the polynomial corresponding to the payload.
21. A communications device, characterized by The communication device comprises a transceiver module and a processing module, The transceiver module is configured to perform the receiving or transmitting in the method of any one of claims 1-4, 8-20, or perform the receiving or transmitting in the method of any one of claims 5-20. The processing module is configured to perform the processing in the method of any one of claims 1-4, 8-20, or perform the processing in the method of any one of claims 5-20.
22. A communications device, characterized by The communication device comprises a processor, and the processor is configured to run a computer program or instructions to cause the communication device to perform the method of any one of claims 1-4, 8-20, or to perform the method of any one of claims 5-20.
23. The apparatus of claim 22, wherein, The communication device further comprises a memory, and the memory is configured to store program instructions and data for performing the method of any one of claims 1-4, 8-20, or for performing the method of any one of claims 5-20.
24. A computer-readable storage medium, characterized in that, A computer readable storage medium stores computer instructions or programs, and when the computer instructions or programs are run on a computer, the method of any one of claims 1-4, 8-20 is performed, and the method of any one of claims 5-20 is performed.
25. A computer program product, characterised in that, The computer program product comprises computer instructions, and when part or all of the computer instructions are run on a computer, the method of any one of claims 1-4, 8-20 is performed, and the method of any one of claims 5-20 is performed.
Citation Information
Patent Citations
Cyclic redundancy check length management
CN108352931A
Method and device for Polar code coding and decoding
CN108365914A
Data transmission method and device
CN117728918A
Downlink signal reception method and user equipment, and downlink signal transmission method and base station
US20200021393A1
Transport block transmission method and transmission device
US20200153549A1