Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for determining a mother code length

By determining multiple mother code lengths and using a parameter-based encoding method, the flexibility problem of existing code schemes in various wireless communication system scenarios is solved, achieving a more efficient encoding and decoding process and adapting to different transmission requirements.

CN122122836APending Publication Date: 2026-05-29HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
HUAWEI TECH CO LTD
Filing Date
2024-03-06
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

Existing coding schemes lack flexibility in supporting various wireless communication system scenarios, especially in scenarios requiring retransmission or having multiple redundant versions, making it difficult to meet the flexibility requirements of channel coding.

Method used

By determining multiple mother code lengths and encoding information bits based on a set of parameters, scenarios with different transmission counts or redundant versions can be supported, including minimum code rate, maximum code rate, minimum mother code length, maximum mother code length, rate-matched output length, redundant version index, transmission index, and self-decoding indicator, to achieve a flexible encoding process.

Benefits of technology

It improves the adaptability and flexibility of the communication system in various scenarios, reduces the complexity of the decoder, and improves the performance and efficiency during transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122122836A_ABST
    Figure CN122122836A_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure provide methods and apparatuses for determining polar code mother code length. In a method, a plurality of mother code lengths are determined, and a plurality of information bits are encoded based on the plurality of mother code lengths. The plurality of information bits are encoded into a plurality of codewords. The plurality of codewords correspond to the plurality of mother code lengths, i.e., one codeword can correspond to at least one mother code length. The methods and apparatuses for determining polar code mother code length can be used in a communication system to support scenarios that require at least one retransmission or multiple polar codes with multiple redundancy versions.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-references to related applications

[0002] This application relates to and claims priority to U.S. Provisional Patent Application No. 63 / 598,609, filed November 14, 2023, entitled “Determination of Mother Code Length for Polar Codes,” the entire contents of which are incorporated herein by reference. Technical Field

[0003] This application relates to coding, and more particularly to methods, systems, and apparatus for determining the length of a master code. Background Technology

[0004] In the field of communication systems, channel coding is commonly used to improve the reliability of signal transmission and ensure communication quality. Existing coding methods have been proven to achieve theoretical channel capacity with relatively low encoding and decoding complexity.

[0005] With the rapid evolution of wireless communication systems, some new wireless communication systems, such as the sixth-generation (6G) system, will aim to support a variety of scenarios, including immersive communication, massive communication, and ultra-reliable low-latency communication.

[0006] However, due to the design principles of the master code, existing code schemes lack sufficient flexibility in supporting scenarios that require at least one retransmission or have multiple redundant versions of the code. Summary of the Invention

[0007] The following examples relate to embodiments described in this invention.

[0008] One or more embodiments relate to a method. The method includes: determining a plurality of mother code lengths; encoding a plurality of information bits based on the plurality of mother code lengths to obtain a plurality of codewords, wherein the plurality of codewords correspond to the plurality of mother code lengths.

[0009] In some embodiments, after determining multiple master code lengths, codes with different transmission counts or redundant versions can be obtained during the encoding process. Therefore, the communication system can support various scenarios, which is very useful and convenient during transmission.

[0010] In some implementations of the above method, determining multiple mother code lengths includes: determining multiple mother code lengths based on a set of parameters, which includes one or more of the following: minimum code rate, maximum code rate, minimum mother code length, maximum mother code length, rate-matched output length, redundancy version index, transmission index, transmission count, and self-decoding indicator.

[0011] In some embodiments, the number of multiple mother code lengths and the value of each of the multiple mother code lengths can be determined by a set of parameters. Different numbers of multiple mother code lengths and different values ​​of each of the multiple mother code lengths can support different scenarios requiring different retransmission counts or redundant versions of different indexes.

[0012] In some implementations of the above method, each of the multiple mother code lengths is based on the mother code length parameter and the first coefficient.

[0013] In some embodiments, the mother code length parameter refers to the currently calculated mother code length, and the first coefficient refers to the fixed number of extensions. Therefore, different mother code lengths can be determined by using different values ​​of the first coefficient and the mother code length parameter. In embodiments of the present invention, the value of the first coefficient is not specifically limited.

[0014] For example, in the case of "optional retransmission," this means that retransmission may not occur. In some embodiments, the mother code length parameter refers to the initial mother code length used for the initial transmission. The mother code length parameter can be determined first. Then, the retransmission mother code length can be determined based on the different values ​​of the mother code length parameter and the first coefficient.

[0015] For example, in the case of "forced retransmission," this means that at least one retransmission will inevitably occur. In some embodiments, the mother code length parameter refers to the length of the mother code used for retransmission. The mother code length parameter can be determined first. Then, based on the different values ​​of the mother code length parameter and the first coefficient, the initial mother code length and other mother code lengths used for retransmission can be determined.

[0016] For example, in the case of "pre-allocated transmission resources," in some embodiments, the mother code length parameter refers to a reference mother code length. The mother code length parameter can be determined in advance. The mother code length or redundant version used for transmission (including initial transmission and retransmission) can be based on different values ​​of the mother code length parameter and a first coefficient.

[0017] In some implementations of the above methods, the methods for obtaining the mother code length parameter include: obtaining the rate matching output length, the number of multiple information bits, the minimum code rate, and the minimum mother code length; obtaining the first-level mother code length based on the rate matching output length; obtaining the second-level mother code length based on the number of multiple information bits and the minimum code rate; obtaining the third-level mother code length; and obtaining the mother code length parameter based on the first-level mother code length, the second-level mother code length, the third-level mother code length, and the minimum mother code length.

[0018] In some embodiments, different mother code lengths can be obtained based on the mother code length parameter. In some embodiments, the first-level mother code length, the second-level mother code length, and the third-level mother code length can differ depending on factors such as different rate-matching output lengths, different numbers of multiple information bits, different minimum code rates, and different minimum mother code lengths. The methods for obtaining the first-level mother code length, the second-level mother code length, and the third-level mother code length are very flexible and depend on the scenarios supported by the community system.

[0019] In some implementations of the above method, the length of the first-level mother code is a power of 2 integer greater than the length of the rate-matched output.

[0020] In some implementations of the above method, the length of the first-level mother code is equal to... E is the rate-matched output length.

[0021] In some embodiments, the length of the first-level mother code can be the difference between a minimum power of 2 integer greater than the rate-matched output length and a first integer. The integer can be 1, -1, or other values. In embodiments of the present invention, the first integer is not specifically limited.

[0022] In some implementations of the above method, the length of the first-level mother code is a power of 2 integer that is less than the length of the rate-matched output.

[0023] In some implementations of the above method, the length of the first-level mother code is equal to... E is the rate-matched output length.

[0024] In some embodiments, the length of the first-level mother code can be the difference between a power of 2 integer less than the rate-matched output length and a second integer. The second integer can be 1, -1, or other values. In embodiments of the present invention, the integer is not specifically limited.

[0025] In some implementations of the above methods, the mother code length parameter is related to one or more of the following: number of transmissions, channel type, index of redundant versions, and communication scenario.

[0026] In some embodiments, different transmission counts, different channel types, different redundant versions of the index, and different communication scenarios may result in different mother code length parameters. Therefore, multiple mother code lengths can be determined through different mother code length parameters.

[0027] In some implementations of the above method, the length of the second-level mother code is the smallest power of 2 integer that makes the second-level mother code rate less than the minimum code rate, and the second-level mother code rate is the quotient of the number of multiple information bits and the length of the second-level mother code.

[0028] In some implementations of the above method, the length of the second-level mother code is equal to... K is the number of information bits, and Rmin is the minimum code rate.

[0029] In some implementations of the above method, the length of the second-level mother code is a power of 2 integer that makes the second-level mother code rate greater than the minimum code rate, and the second-level mother code rate is the quotient of the number of multiple information bits and the length of the second-level mother code.

[0030] In some implementations of the above method, the length of the second-level mother code is equal to... K is the number of information bits, and Rmin is the minimum code rate.

[0031] In some embodiments, the length of the second-level mother code may vary depending on the method used, which is helpful for community systems that support multiple scenarios.

[0032] In some implementations of the above methods, the minimum bit rate is related to one or more of the following: number of transmissions, channel type, service type, index of redundant versions, and communication scenario.

[0033] In some implementations of the above method, the minimum bit rate n is the same as the first constant.

[0034] In some embodiments, the first constant can be any positive integer. In embodiments of the present invention, the first constant is not specifically limited.

[0035] In some implementations of the above method, the length of the third-level mother code is the same as the second constant.

[0036] In some embodiments, the second constant can be any positive integer. In embodiments of the present invention, the second constant is not specifically limited.

[0037] In some implementations of the above method, the length of the third-level mother code is obtained based on the maximum mother code length.

[0038] In some implementations of the above methods, the maximum mother code length is related to one or more of the following: channel type, service type, and device capabilities.

[0039] In some implementations of the above method, the maximum mother code length is an integer that is a power of 2.

[0040] In some implementations of the above method, the maximum mother code length is the same as the length of the nested reliability sequence.

[0041] In some embodiments, the maximum mother code length can be different, which is helpful for community systems that support multiple scenarios.

[0042] In some implementations of the above method, the maximum mother code length is the same as the third constant.

[0043] In some embodiments, the third constant can be any positive integer. However, in embodiments of the present invention, the third constant is not specifically limited.

[0044] In some implementations of the above method, the minimum mother code length is the same as the fourth constant.

[0045] In some embodiments, the fourth constant can be any positive integer. In embodiments of the present invention, the fourth constant is not specifically limited.

[0046] In some implementations of the above methods, the minimum mother code length is related to the type of channel or service.

[0047] In some implementations of the above method, each of the multiple mother code lengths is the same as the maximum mother code length.

[0048] In some implementations of the above method, the length of multiple mother codes is equal to multiple constants.

[0049] In some embodiments, the multiple constants can be any positive integers. In embodiments of the present invention, there is no specific limitation on the multiple constants.

[0050] In some implementations of the above method, each of the multiple mother code lengths is equal to the product of the mother code length parameter and the first coefficient.

[0051] In some implementations of the above method, the first coefficient is related to one or more of the following: number of transmissions, device capacity, channel type, service type, communication scenario, and index of redundant versions.

[0052] In some implementations of the above method, the first coefficient is a positive integer.

[0053] In some implementations of the above method, the first coefficient is equal to the quotient of two positive integers.

[0054] In some implementations of the above method, encoding multiple information bits based on multiple mother code lengths includes: determining one or more sets of information bits based on multiple information bits and multiple mother code lengths.

[0055] In some embodiments, one or more sets of information bits can be obtained based on multiple master code lengths, and the one or more sets of information bits can be used for multiple transmission or redundant versions.

[0056] One or more embodiments relate to a method. The method includes: acquiring a plurality of codewords, the plurality of codewords corresponding to a plurality of mother code lengths; decoding the plurality of codewords to obtain a plurality of sequences, the plurality of sequences corresponding to a plurality of information bits.

[0057] In some embodiments, multiple codewords can be converted into multiple first sequences by demodulation or other means. The number of multiple first sequences is related to at least one of the following: the number of redundant versions, the number of transmissions, and a self-decoding indicator. A flexible decoding process can be performed based on multiple first sequences, and the communication system can support various scenarios with different transmission counts or redundant versions, which is very useful and convenient during transmission. In embodiments of the present invention, no specific limitations are made on the method of obtaining multiple first sequences or the algorithms and techniques used in decoding. In some implementations of the above method, the lengths of multiple mother codes are determined based on a set of parameters, which include one or more of the following: minimum code rate, maximum code rate, minimum mother code length, maximum mother code length, rate-matched output length, index of redundant versions, transmission index, number of transmissions, and self-decoding indicator.

[0058] In some implementations of the above method, each of the multiple mother code lengths is related to the mother code length parameter and the first coefficient.

[0059] In some implementations of the above methods, the methods for obtaining the mother code length parameter include: obtaining the rate matching output length, the number of multiple information bits, the minimum code rate, and the minimum mother code length; obtaining the first-level mother code length based on the rate matching output length; obtaining the second-level mother code length based on the number of multiple information bits and the minimum code rate; obtaining the third-level mother code length; and obtaining the mother code length parameter based on the first-level mother code length, the second-level mother code length, the third-level mother code length, and the minimum mother code length.

[0060] In some implementations of the above method, the length of the first-level mother code is a power of 2 integer greater than the length of the rate-matched output.

[0061] In some implementations of the above method, the length of the first-level mother code is a power of 2 integer that is less than the length of the rate-matched output.

[0062] In some implementations of the above methods, the mother code length parameter is related to one or more of the following: number of transmissions, channel type, index of redundant versions, and communication scenario.

[0063] In some implementations of the above method, the length of the second-level mother code is a power of 2 integer that makes the second-level mother code rate less than the minimum code rate, wherein the second-level mother code rate is the quotient of the number of multiple information bits and the length of the second-level mother code.

[0064] In some implementations of the above method, the length of the second-level mother code is a power of 2 integer that makes the second-level mother code rate greater than the minimum code rate, where the second-level mother code rate is the quotient of the number of multiple information bits and the length of the second-level mother code.

[0065] In some implementations of the above methods, the minimum bit rate is related to one or more of the following: number of transmissions, channel type, service type, index of redundant versions, and communication scenario.

[0066] In some implementations of the above method, the length of the third-level mother code is obtained based on the maximum mother code length.

[0067] In some implementations of the above methods, the maximum mother code length is related to one or more of the following: channel type, service type, and device capabilities.

[0068] In some implementations of the above method, the maximum mother code length is an integer that is a power of 2.

[0069] In some implementations of the above method, the maximum mother code length is the same as the length of the nested reliability sequence.

[0070] In some implementations of the above methods, the minimum mother code length is related to the type of channel or service.

[0071] In some implementations of the above method, one of the multiple mother code lengths is the same as the maximum mother code length.

[0072] In some implementations of the above method, each of the multiple mother code lengths is related to the product of the mother code length parameter and the first coefficient.

[0073] In some implementations of the above method, the first coefficient is related to one or more of the following: number of transmissions, device capacity, channel type, service type, communication scenario, and index of redundant versions.

[0074] In some implementations of the above method, the first coefficient is equal to the quotient of two positive integers.

[0075] One or more embodiments may include an apparatus that includes functions or units for causing the apparatus to perform the methods of the present invention.

[0076] One or more embodiments may include an apparatus including a processor for causing the apparatus to perform the method of the present invention.

[0077] One or more embodiments may include a device / chipset system comprising: at least one processor that executes instructions stored in a computer-readable medium to implement the method of the present invention.

[0078] One or more embodiments may include a computer program comprising instructions that, when executed by a processor, enable the processor to implement the method of the present invention.

[0079] One or more embodiments may include a non-transitory computer-readable medium that stores a program that, when executed by a processor, enables the processor to implement the method of the present invention.

[0080] This invention covers these and other aspects or embodiments. Attached Figure Description

[0081] To gain a more complete understanding of this embodiment and its advantages, the following description, in conjunction with the accompanying drawings, will now be provided by way of example.

[0082] Figure 1 This is a simplified diagram of a communication system.

[0083] Figure 2 yes Figure 1 A block diagram illustrating an exemplary communication system.

[0084] Figure 3 Examples of exemplary electronic devices and base stations are shown.

[0085] Figure 4 The unit or module in the device is shown.

[0086] Figure 5 This is a grid diagram showing an example of a polar code.

[0087] Figure 6 It is a table of sub-block interleaver patterns.

[0088] Figure 7 This is a diagram illustrating punching and shortening using a circular buffer.

[0089] Figure 8 This is a schematic diagram illustrating an example of an encoding process involving four transmissions.

[0090] Figure 9 This is a schematic diagram illustrating an example of the encoding process for the initial transmission.

[0091] Figure 10 This is a schematic diagram illustrating an example of the encoding process for the first retransmission.

[0092] Figure 11 This is a block diagram illustrating an example of a polarization transformation matrix for three transmissions.

[0093] Figure 12 This is a flowchart illustrating an example of an encoding method.

[0094] Figure 13This is a flowchart illustrating an example of a decoding method.

[0095] Figure 14 This is a block diagram illustrating an example of determining the length of the mother code. Detailed Implementation

[0096] For illustrative purposes, specific exemplary embodiments will be explained in more detail below with reference to the accompanying drawings.

[0097] The embodiments described herein illustrate information sufficient to practice the claimed subject matter and demonstrate methods for practicing such subject matter. Those skilled in the art, upon reading the following description in conjunction with the accompanying drawings, will be able to understand the concepts of the claimed subject matter and recognize the applications of these concepts not specifically stated herein. In some embodiments, these concepts and applications are within the scope of the invention and the appended claims.

[0098] Specific examples (e.g., “methods”) having or providing certain features may be referenced above and / or elsewhere in this document. It should be understood that these are merely examples, and such features are not necessarily provided in all examples or embodiments, or may be provided in other examples or embodiments.

[0099] Although the methods for determining the length of the mother code in this invention can be illustrated using polar codes as an example, these methods can be applied to other codes. For example, these methods for determining the length of the mother code in this invention can be applied to low-density parity-check (LDPC) codes, Turbo codes, Reed-Muller (RM) codes, convolutional codes, product codes, etc. In the embodiments of this invention, no specific limitation is made on the code type.

[0100] In methods for determining the mother code length of polar codes, determining multiple mother code lengths can reduce decoder complexity in high-throughput communication scenarios and improve performance in cases with multiple transmissions, such as incremental-redundancy hybrid automatic repeat request (IR-HARQ).

[0101] In methods for determining the mother code length of LDPC codes, determining multiple mother code lengths can reduce the buffer size of terminals with limited buffer size and low device capabilities.

[0102] In methods for determining the mother code length of Turbo codes, different mother code lengths can be determined for different communication scenarios, such as Internet of Things (IoT) devices that require shorter code lengths.

[0103] In methods for determining the mother code length of convolutional codes, determining multiple mother code lengths can provide flexible mother code lengths (in the form of constrained lengths), which can achieve a good balance between decoding complexity and performance.

[0104] In methods for determining the mother code length of RM codes, multiple mother code lengths are provided, especially including longer mother code lengths, which can further enhance the coding gain of very short codes (with short block lengths).

[0105] In methods for determining the mother code length of a product code, different mother code lengths can achieve a flexible balance between encoding / decoding parallelism and encoding gain for the component codes in the product code.

[0106] The background of the method for determining the mother code length provided in the embodiments of the present invention will be explained below.

[0107] In wireless communication, channel quality constantly changes due to both fast and slow fading effects. Therefore, channel coding has always been designed to adapt to channel conditions. Adaptive modulation and coding schemes (MCS) are a powerful method to combat constantly changing channel conditions, where the modulation order, code length, and coding rate can be changed in real time. This requires the channel coding scheme to be able to flexibly change the code length and code rate in a fine-grained manner while achieving good error correction performance in all possible configurations. This fine-grained flexibility of channel codes is one of the most challenging problems faced by engineers in this field.

[0108] Simultaneously, both the encoding and decoding algorithms need to have sufficiently low complexity. On the hardware side, complexity can be assessed by measuring chip area and energy efficiency. While chip area and energy efficiency are related to algorithm complexity, they are more closely related to hardware cost and battery life. Therefore, there is a need to reduce implementation complexity when designing encoding schemes.

[0109] Future communication systems (such as 6G systems) are likely designed to support several challenging scenarios, including immersive communication, massive data acquisition, and ultra-reliable low-latency communication. Key performance indicators (KPIs) related to channel coding include coding gain, reliability, throughput, latency, and their balance. For example, 6G could target throughput exceeding 1 Tbps and energy efficiency down to 1 pJ / bit. Coding schemes supporting flexible rate matching and IR-HARQ schemes are also beneficial. Therefore, designing a code ensemble to achieve all these KPIs and capabilities is desirable, but also challenging.

[0110] refer to Figure 1This is provided as an illustrative example, but not a limitation, of a simplified schematic diagram of a communication system. Communication system 100 includes a radio access network 120. Radio access network 120 can be a next-generation (e.g., sixth-generation, 6G, or higher) radio access network, or a traditional (e.g., 5G, 4G, 3G, or 2G) radio access network. 5G refers to the fifth generation, 4G to the fourth generation, 3G to the third generation, and 2G to the second generation. Traditional wireless technologies may also include second-generation (2G). One or more electronic devices (EDs) 110a, 110b, 110c, 110d, 110e, 110f, 110g, 110h, 110i, 110j (collectively referred to as 110) can be interconnected with each other or connected to one or more network nodes (170a, 170b, collectively referred to as 170) within radio access network 120. The core network 130 may be part of the communication system and may depend on or be independent of the wireless access technology used in the communication system 100. Furthermore, the communication system 100 includes a public switched telephone network (PSTN) 140, the Internet 150, and other networks 160.

[0111] Figure 2 An exemplary communication system 100 is illustrated. Typically, the communication system 100 enables multiple wireless or wired components to transmit data and other content. The purpose of the communication system 100 may be to provide content such as voice, data, video, and / or text via broadcast, multicast, unicast, etc. The communication system 100 can operate by sharing resources (e.g., carrier spectrum bandwidth) among its constituent components. The communication system 100 may include terrestrial communication systems and / or non-terrestrial communication systems. The communication system 100 can provide a wide range of communication services and applications, such as earth monitoring, remote sensing, passive sensing and positioning, navigation and tracking, autonomous delivery, and mobility. The communication system 100 can provide high availability and robustness through the joint operation of terrestrial and non-terrestrial communication systems. For example, integrating a non-terrestrial communication system or components thereof into a terrestrial communication system can realize a heterogeneous network comprising multiple layers. Compared to traditional communication networks, heterogeneous networks can achieve better overall performance through efficient multi-link joint operation, more flexible function sharing, and faster physical layer link switching between terrestrial and non-terrestrial networks.

[0112] Terrestrial communication systems and non-terrestrial communication systems can be considered subsystems of a communication system. Figure 2In the example shown, communication system 100 includes electronic devices (EDs) 110a, 110b, 110c, and 110d (collectively referred to as ED110), radio access networks (RANs) 120a and 120b, a non-terrestrial communication network 120c, a core network 130, a PSTN 140, the Internet 150, and other networks 160. RANs 120a and 120b include corresponding base stations (BSs) 170a and 170b, which can be collectively referred to as terrestrial transmit and receive points (T-TRPs) 170a and 170b. The non-terrestrial communication network 120c includes access nodes 172, which can be collectively referred to as non-terrestrial transmit and receive points (NT-TRPs) 172.

[0113] Alternatively, any ED 110 can be used to connect, access, or communicate with any T-TRP 170a and 170b and NT-TRP 172, Internet 150, core network 130, PSTN 140, other network 160, or any combination thereof. In some examples, ED 110a can perform uplink and / or downlink transmission with T-TRP 170a via terrestrial air interface 190a. In some examples, ED 110a, 110b, 110c, and 110d can also communicate directly with each other via one or more sidelink air interfaces 190b. In some examples, ED 110d can perform uplink and / or downlink transmission with NT-TRP 172 via non-terrestrial air interface 190c.

[0114] Air interfaces 190a and 190b can use similar communication technologies, such as any suitable wireless access technology. For example, communication system 100 can implement one or more channel access methods in air interfaces 190a and 190b, such as code division multiple access (CDMA), space division multiple access (SDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), or single-carrier FDMA (SC-FDMA) (also known as discrete Fourier transform spread OFDMA (DFT-s-OFDMA)). Air interfaces 190a and 190b can utilize other high-dimensional signal spaces, which may involve combinations of orthogonal and / or non-orthogonal dimensions.

[0115] The non-terrestrial air interface 190c enables communication between the ED 110d and one or more NT-TRP 172s via a wireless link (or simply a link). For some examples, the link is a dedicated connection for unicast transmission, a connection for broadcast transmission, or a connection for multicast transmission between a group of ED 110s and one or more NT-TRP 172s.

[0116] RANs 120a and 120b communicate with core network 130 to provide various services, such as voice, data, and other services, to EDs 110a, 110b, and 110c. RANs 120a and 120b and / or core network 130 may communicate directly or indirectly with one or more other RANs (not shown), which may or may not be directly served by core network 130, and may or may not use the same radio access technology as RANs 120a, RAN 120b, or both. Core network 130 may also act as a gateway for (i) between RANs 120a and 120b and / or between EDs 110a, 110b, and 110c, and (ii) between other networks (e.g., PSTN 140, Internet 150, and other networks 160). Furthermore, some or all of ED110a, 110b, and 110c may include the ability to communicate with different wireless networks via different wireless links using different wireless technologies and / or protocols. Instead of wireless communication (or other than wireless communication), ED 110a, 110b, and 110c may also communicate with service providers or exchanges (not shown) via wired communication channels and with the Internet 150. PSTN 140 may include a circuit-switched telephone network for providing plain old telephone service (POTS). The Internet 150 may include a network of computers and subnets (intranets) or both, incorporating protocols such as Internet Protocol (IP), Transmission Control Protocol (TCP), and User Datagram Protocol (UDP). ED 110a, 110b, and 110c may be multimode devices capable of operating according to multiple wireless access technologies and include multiple transceivers required to support these technologies.

[0117] Figure 3Another example of the ED 110 and base stations 170a, 170b, and / or 170c is shown. The ED 110 is used to connect people, objects, machines, etc. The ED 110 can be widely used in various scenarios, including, for example, cellular communication, device-to-device (D2D), vehicle-to-everything (V2X), peer-to-peer (P2P), machine-to-machine (M2M), machine-type communications (MTC), Internet of Things (IoT), virtual reality (VR), augmented reality (AR), mixed reality (MR), metaverse, digital twins, industrial control, autonomous driving, telemedicine, smart grids, smart furniture, smart offices, smart wearables, smart transportation, smart cities, drones, robots, remote sensing, passive sensing, positioning, navigation and tracking, autonomous delivery, and mobility, etc.

[0118] Each ED 110 represents any end-user equipment suitable for wireless operation and may include (or be referred to as) devices such as: user equipment / device (UE), wireless transmit / receive unit (WTRU), mobile station, fixed or mobile subscriber unit, cellular phone, station (STA), machine type communication (MTC) device, personal digital assistant (PDA), smartphone, laptop, computer, tablet, wireless sensor, consumer electronics device, smartbook, vehicle, automobile, truck, bus, train, or IoT device, wearable device (e.g., watch, glasses, head-mounted device, etc.), industrial equipment, or devices comprising or including the aforementioned devices (e.g., communication module, modem, or chip), etc. Future generations of ED 110 may be referred to using other terms. Base stations 170a and 170b are T-TRPs and will be referred to as T-TRP 170 below. Figure 3As also shown, NT-TRP will be referred to as NT-TRP 172 below. Each ED 110 connected to T-TRP 170 and / or NT-TRP 172 may be dynamically or semi-statically turned on (i.e., established, activated, or enabled), turned off (i.e., released, deactivated, or disabled), and / or configured in response to one or more of connection availability and connection necessity.

[0119] ED 110 includes a transmitter 201 and a receiver 203 coupled to one or more antennas 204. Only one antenna 204 is shown in the figure to avoid congestion. One, some, or all of the antennas 204 may also be panels. For example, the transmitter 201 and receiver 203 may be integrated as a transceiver. The transceiver is used to modulate data or other content for transmission by at least one antenna 204 or a network interface controller (NIC). The transceiver is also used to demodulate data or other content received through at least one antenna 204. Each transceiver includes any suitable structure for generating signals for wireless or wired transmission and / or for processing signals received wirelessly or wiredly. Each antenna 204 includes any suitable structure for transmitting and / or receiving wireless or wired signals.

[0120] ED 110 includes at least one memory 208. Memory 208 stores instructions and data used, generated, or acquired by ED 110. For example, memory 208 may store software instructions or modules for implementing some or all of the functions and / or embodiments described herein and executed by one or more processing units (e.g., processor 210). Each memory 208 includes any suitable one or more volatile and / or non-volatile storage and retrieval devices. Any suitable type of memory can be used, such as random access memory (RAM), read-only memory (ROM), hard disk, optical disk, subscriber identity module (SIM) card, memory stick, secure digital (SD) memory card, on-processor cache, etc.

[0121] ED 110 may also include one or more input / output devices (not shown) or interfaces (e.g., connected to...). Figure 1 (Wired interface of Internet 150 in the network). Input / output devices or interfaces support interaction with users or other devices in the network. Each input / output device or interface includes any suitable structure for providing or receiving information from the user, and / or for communication via the network interface. For example, suitable structures include speakers, microphones, keypads, keyboards, displays, touchscreens, etc.

[0122] ED 110 includes a processor 210 for performing operations, including operations related to preparing for uplink transmissions to NT-TRP 172 and / or T-TRP 170; operations related to processing downlink transmissions received from NT-TRP 172 and / or T-TRP 170; and operations related to processing sidelink transmissions to and from another ED 110. Processing operations related to preparing for uplink transmissions may include operations such as encoding, modulation, transmit beamforming, and generating symbols for transmission. Processing operations related to processing downlink transmissions may include operations such as receive beamforming, demodulation, and decoding of received symbols. According to an embodiment, the downlink transmission may be received by receiver 203, possibly using receive beamforming, and processor 210 may extract signaling from the downlink transmission (e.g., by detecting and / or decoding signaling). Examples of signaling may be reference signals transmitted by NT-TRP 172 and / or T-TRP 170. In some embodiments, processor 210 performs transmit beamforming and / or receive beamforming based on beam direction indications (e.g., beam angle information (BAI)) received from T-TRP 170. In some embodiments, processor 210 may perform operations related to network access (e.g., initial access) and / or downlink synchronization, such as operations related to detecting synchronization sequences, decoding, and acquiring system information. In some embodiments, processor 210 may perform channel estimation using reference signals received from NT-TRP 172 and / or T-TRP 170.

[0123] Although not shown, processor 210 may form part of transmitter 201 and / or receiver 203. Although not shown, memory 208 may form part of processor 210.

[0124] The processing components of processor 210, transmitter 201, and receiver 203 may be implemented by the same or different processors, which execute instructions stored in memory (e.g., memory 208). Alternatively, some or all of the processing components of processor 210, transmitter 201, and receiver 203 may be implemented using dedicated circuitry, such as a programmable field-programmable gate array (FPGA), application-specific integrated circuit (ASIC), or hardware accelerators such as graphics processing units (GPUs) or artificial intelligence (AI) accelerators.

[0125] In some embodiments, ED 110 may be replaced by a device within ED 110 (e.g., a communication module, modem, chip, or chipset within ED 110). It includes at least one processor and an interface or at least one pin. In this scenario, transmitter 201 and receiver 203 may be replaced by an interface or at least one pin, wherein the interface or at least one pin is used to connect a device (e.g., a chip) and other devices (e.g., a chip, memory, or bus). Therefore, sending information to T-TRP 170 or NT-TRP 172 may be referred to as sending information to an interface or at least one pin, while receiving information from T-TRP 170 or NT-TRP 172 may be referred to as receiving information from an interface or at least one pin. The information may include control signaling and / or data.

[0126] The T-TRP 170 may be known by other names in some implementations, such as base station, base-transceiver station (BTS), wireless base station, network node, network device, network-side device, transmit / receive node, NodeB, evolved NodeB (eNodeB or eNB), home eNodeB, next-generation NodeB (gNB), transmission point (TP), site controller, access point (AP), wireless router, relay station, ground node, ground network device, ground base station, base band unit (BBU), remote radio unit (RRU), active antenna unit (AAU), remote radio head (RRH), central unit (CU), distributed unit (DU), positioning node, etc. The T-TRP 170 can be a macro BS, pico BS, relay node, host node, or a combination thereof. T-TRP 170 may refer to the aforementioned equipment or the device within the aforementioned equipment.

[0127] In some embodiments, the portions of T-TRP 170 may be distributed. For example, some modules of T-TRP 170 may be located remotely from the device housing the antenna 256 of T-TRP 170 and may be coupled to the device housing the antenna 256 via a communication link (not shown) (e.g., a common public radio interface, CPRI) sometimes referred to as a fronthaul. Therefore, in some embodiments, the term T-TRP 170 may also refer to modules on the network side that perform processing operations such as determining the location of ED 110, resource allocation (scheduling), message generation, and encoding / decoding; these modules are not necessarily part of the device housing the antenna 256 of T-TRP 170. These modules may also be coupled to other T-TRPs. In some embodiments, T-TRP 170 may actually be multiple T-TRPs that operate together to provide services such as coordinated multicast to ED 110.

[0128] T-TRP 170 includes at least one transmitter 252 and at least one receiver 254 coupled to one or more antennas 256. Only one antenna 256 is shown in the figure to avoid congestion. One, some, or all of the antennas 256 may also be panels. The transmitter 252 and receiver 254 may be integrated as a transceiver. T-TRP 170 also includes a processor 260 for performing operations, including operations related to: preparing transmissions for downlink transmission to ED 110, processing uplink transmissions received from ED 110, preparing transmissions for backhaul transmission to NT-TRP 172, and processing transmissions received from NT-TRP 172 via backhaul. Processing operations related to preparing transmissions for downlink or backhaul transmission may include operations such as encoding, modulation, precoding (e.g., multiple-input multiple-output (MIMO) precoding), transmit beamforming, and generating symbols for transmission. Processing operations related to transmissions received in the uplink or via backhaul may include receiving beamforming, demodulating received symbols, and decoding received symbols. Processor 260 may also perform operations related to network access (e.g., initial access) and / or downlink synchronization, such as generating the contents of a synchronization signal block (SSB) and generating system information. In some embodiments, processor 260 also generates beam direction indications, such as BAI, that can be scheduled for transmission by scheduler 253. Processor 260 performs other network-side processing operations described herein, such as determining the location of ED 110 and the deployment location of NT-TRP 172.

[0129] In some embodiments, processor 260 may generate signaling, such as one or more parameters for configuring ED 110 and / or one or more parameters for NT-TRP 172. Any signaling generated by processor 260 is transmitted by transmitter 252. It should be noted that the term "signaling" used herein may also be referred to as control signaling. Signaling may be transmitted in a physical layer control channel (e.g., a physical downlink control channel (PDCCH)), in which case the signaling may be referred to as dynamic signaling. Signaling transmitted in the downlink physical layer control channel may be referred to as downlink control information (DCI). Signaling transmitted in the uplink physical layer control channel may be referred to as uplink control information (UCI). Signaling transmitted in the sidelink physical layer control channel may be referred to as sidelink control information (SCI). Signaling can be included in higher-layer (e.g., above the physical layer) messages transmitted on physical layer data channels (e.g., physical downlink shared channel, PDSCH). In this case, the signaling can be referred to as higher-layer signaling, static signaling, or semi-static signaling. Higher-layer signaling can refer to radio resource control (RRC) protocol signaling or media access control-control element (MAC-CE) signaling.

[0130] Scheduler 253 may be coupled to processor 260. Scheduler 253 may be included within T-TRP 170 or may operate separately from T-TRP 170. Scheduler 253 may schedule uplink, downlink, lateral link, and / or backhaul transmissions, including issuing scheduling authorizations and / or configuring schedule-free (e.g., "configuration authorization") resources. T-TRP 170 also includes memory 258 for storing information and data. Memory 258 stores instructions and data used, generated, or acquired by T-TRP 170. For example, memory 258 may store software instructions or modules executed by processor 260 for implementing some or all of the functions and / or embodiments described herein.

[0131] Although not shown, processor 260 may form part of transmitter 252 and / or receiver 254. Furthermore, although not shown, processor 260 may implement scheduler 253. Although not shown, memory 258 may form part of processor 260.

[0132] The processing components of processor 260, scheduler 253, transmitter 252, and receiver 254 may be implemented by the same or different processors, which execute instructions stored in memory (e.g., memory 258). Alternatively, some or all of the processing components of processor 260, scheduler 253, transmitter 252, and receiver 254 may be implemented using dedicated circuitry, such as a programmable FPGA, hardware accelerator (e.g., GPU or AI accelerator), or ASIC.

[0133] In some embodiments, T-TRP 170 can be replaced by a device within the T-TRP (e.g., a communication module, modem, chip, or chipset within the T-TRP). It includes at least one processor and an interface or at least one pin. In this scenario, transmitter 252 and receiver 254 can be replaced by an interface or at least one pin, wherein the interface or at least one pin is used to connect the device (e.g., a chip) and other devices (e.g., a chip, memory, or bus). Therefore, sending information to ED 110 can be referred to as sending information to an interface or at least one pin, and receiving information from ED 110 can be referred to as receiving information from an interface or at least one pin. The information may include control signaling and / or data.

[0134] Although the NT-TRP 172 is shown as an example of a drone only, it can be implemented in any suitable non-terrestrial form, such as satellites and high-altitude platforms, including international mobile communication base stations and unmanned aerial vehicles. Furthermore, the NT-TRP 172 may be known by other names in some implementations, such as a non-terrestrial node, a non-terrestrial network device, or a non-terrestrial base station. The NT-TRP 172 includes a transmitter 272 and a receiver 274 coupled to one or more antennas 280. Only one antenna 280 is shown in the figure to avoid congestion. One, some, or all of the antennas may also be panels. The transmitter 272 and receiver 274 may be integrated as a transceiver. The NT-TRP 172 also includes a processor 276 for performing operations including: preparing transmissions for downlink transmission to ED 110, processing uplink transmissions received from ED 110, preparing transmissions for backhaul transmission to T-TRP 170, and processing transmissions received from T-TRP 170 via backhaul. Processing operations related to preparing a transmission for downlink or backhaul transmission may include operations such as encoding, modulation, precoding (e.g., MIMO precoding), transmit beamforming, and generating symbols for transmission. Processing operations related to processing transmissions received in the uplink or via backhaul may include operations such as receive beamforming, demodulating received symbols, and decoding received symbols. In some embodiments, processor 276 performs transmit beamforming and / or receive beamforming based on beam direction information (e.g., BAI) received from T-TRP 170. In some embodiments, processor 276 may generate signaling, such as for configuring one or more parameters of ED110. In some embodiments, NT-TRP 172 implements physical layer processing but does not implement higher-level functions such as those at the medium access control (MAC) or radio link control (RLC) layers. Since this is only an example, more generally, NT-TRP 172 may implement higher-level functions in addition to physical layer processing.

[0135] The NT-TRP 172 also includes a memory 278 for storing information and data. Although not shown, a processor 276 may form part of the transmitter 272 and / or the receiver 274. Although not shown, the memory 278 may form part of the processor 276.

[0136] The processing components of processor 276, transmitter 272, and receiver 274 may be implemented by the same or different processors, which execute instructions stored in memory (e.g., memory 278). Alternatively, some or all of the processing components of processor 276, transmitter 272, and receiver 274 may be implemented using dedicated circuitry, such as a programmable FPGA, hardware accelerator (e.g., GPU or AI accelerator), or ASIC. In some embodiments, NT-TRP 172 may actually be multiple NT-TRPs operating together to coordinate services such as multicast transmission ED 110.

[0137] T-TRP 170, NT-TRP 172 and / or ED 110 may include other components, but for clarity these components are omitted.

[0138] according to Figure 4 One or more steps of the methods in the various embodiments provided herein may be performed by the corresponding units or modules. Figure 4 The diagram illustrates units or modules within a device, such as in ED 110, T-TRP 170, or NT-TRP 172. For example, signals can be transmitted or output by a transmitting unit or transmitting module. Signals can be received or input by a receiving unit or receiving module. Signals can be processed by a processing unit or processing module. Other steps can be performed by artificial intelligence (AI) or machine learning (ML) modules. The corresponding units or modules can be implemented using hardware, one or more components or devices executing software, or a combination thereof. For example, one or more units or modules can be circuits such as integrated circuits. Examples of integrated circuits include programmable FPGAs, GPUs, or ASICs.

[0139] For example, one or more units or modules can be logic, such as a part of a circuit, an integrated circuit, or a logical function executed by software instructions executed by a processor. It should be understood that if these modules are implemented, for example, using software executed by a processor, then these modules can be retrieved by the processor, in whole or in part, individually or collectively, for processing, in one or more instances, and these modules themselves may include instructions for further deployment and instantiation.

[0140] Although not shown, the transmitting module and receiving module can be part of a transceiver module, or combined into a transceiver module. A transceiver module can also be called an interface module, or simply an interface, and is used for input and output operations.

[0141] Additional details regarding ED 110, T-TRP 170, and NT-TRP 172 are known to those skilled in the art. Therefore, these details are omitted herein.

[0142] In a communication system, the channel coding module encodes K source bits into N code bits to provide error correction capabilities against adverse channel conditions such as noise and interference. The code rate is R = K / N. In practice, the code rate R is chosen based on the channel quality.

[0143] Polar codes are capacity-realizing codes, representing a significant breakthrough in coding theory. When the code length approaches infinity, the synthesized channel either becomes noise-free or purely noisy. Synthetic channels (also called sub-channels) are created from or associated with polar codes. Using noise-free sub-channels to transmit information has demonstrated that their proportions can achieve the channel capacity defined by Shannon. This channel polarization phenomenon occurs under successive cancellation (SC) or SC-based decoding, and its complexity is relatively low.

[0144] Rate matching is performed after channel coding by puncturing / shortening or repeating some code bits. The purpose of this operation is to obtain a code bit sequence of the desired length for transmission over limited channel resources.

[0145] Channel interleaving is applied after channel coding and rate matching by permuting code bits. The aim is to provide stable or superior performance in high-order modulation or fading channels.

[0146] HARQ is a mechanism for providing reliable wireless transmission. It combines forward error correction (FEC) and automatic repeat request (ARQ). In HARQ, the initial transmission is an FEC codeword with means to support error detection at the receiver (e.g., cyclic redundancy check (CRC) bits). If a decoding error is detected, the receiver sends a negative acknowledgment (NACK) signal to notify the transmitter of the error and request a retransmission. The retransmitted bits can be selected directly from the initial transmission bits or from incrementally generated codewords that form a longer codeword with the initial transmission bits. The former is called chase-combining HARQ (CC-HARQ), and the latter is called IR-HARQ. Generally, IR-HARQ outperforms CC-HARQ due to the additional coding gain from incremental redundancy.

[0147] Polar codes belong to the class of linear block codes. For a polar code of length N, its generator matrix is , and its encoding process is , where is a binary information vector, and is a binary code vector. The binary matrix , where is the polarization kernel matrix , and ⊗ is the Kronecker product.

[0148] Generally, there are K information bits to be encoded into N code bits. In some embodiments of the present invention, the K information bits refer to K source bits. Therefore, the inequality K < N is given to obtain the code rate R = K / N < 1. This means that only a part of is used to carry information bits, and the rest are usually called frozen bits. The set of information bits or the information set can be respectively represented as I, and the set of frozen bits or the frozen set can be respectively represented as F. In some cases, there is also an additional set of parity check bits or the PC bit set, represented as P. The frozen bits are known before decoding (usually all zeros, but may also be other known values or sequences), so they do not carry any payload information. The PC bits are parity check bits generated from a subset of the information bits. Therefore, once the associated information bits are decoded, the PC bits are known. The decoding of polar codes attempts to recover all information bits.

[0149] The transmission code length M is not necessarily always a power of 2, i.e., M < N. In fact, puncturing and shortening are used to reduce the transmission code bits from N to M. For convenience, in the following text of the present invention, N is referred to as the mother code length, and M is referred to as the code length. Specifically, the punctured bits are non-transmission bits unknown to the decoder, and the shortened bits are non-transmission bits known to the decoder, and the shortened bits are usually all zeros.

[0150] An example of a polar code with N = 8 and K = 4 is shown as Figure 5 shown. Figure 5 Each "butterfly" in represents a polarization, i.e., . In this example, the information set is .

[0151] Successive cancellation (SC) is the basic decoding algorithm for polar codes, where all frozen bits and information bits are decoded sequentially (i.e., bit by bit). The previous bits are usually always decoded first.

[0152] Successive cancellation list (SCL) is an enhanced decoding algorithm for polar codes, in which multiple (e.g., L) SCL decoding instances are performed. Each instance is called a "decoding path". While decoding each binary bit, both the "0" and "1" branches are expanded to each path, creating 2L paths. All 2L paths are then compared, with the L most likely paths retained and the L least likely paths discarded or pruned. These path expansion and pruning operations are performed during the decoding of each information bit until all information bits have been decoded. Finally, the most likely path is selected as the decoded output.

[0153] The CRC-aided successive cancellation list (CA-SCL) works almost the same way as the SCL, except that in the last step, the path most likely to pass the CRC check is selected as the decoding output.

[0154] The parity-check successive cancellation list (PC-SCL) works almost identically to the SCL, except that when decoding parity-check (PC) bits, the parity check value of the associated preceding bit is used as the bit decision result. PC bits can be considered as a type of bit other than frozen bits and information bits.

[0155] Rate-compatible polar coding is an ideal technique for wireless applications. In one example of rate-matching polar codes, a combination of puncturing, shortening, and repetition is used with a fixed reliability sequence to balance performance and complexity. Specifically, sub-block-level interleaving and cross-interleaving are used for both puncturing and shortening. The puncturing and shortening patterns are symmetrical.

[0156] When the mother code length is N and the transmission code length is M, the specific rate matching scheme is as follows: when M>N, repeat; when K / M≤7 / 16, puncture; when K / M>7 / 16, shorten.

[0157] Sub-block level interleaving is performed before punching and shortening. The interleaver divides the mother code of length N into 32 sub-blocks of size N / 32 and interleaves them. Figure 6 An exemplary interleaver scheme is shown, which is copied from the 3GPP standard specification.

[0158] Since puncturing starts from the first code bit of the codeword and shortening starts from the last code bit, the rate matching module is efficiently implemented through a circular buffer. A codeword also refers to a code bit or an encoded bit. All mother code bits are placed in the circular buffer. Puncturing is done by selecting bits in a clockwise order and shortening is done by selecting bits in a counterclockwise order.

[0159] Figure 7 is a schematic diagram showing puncturing and shortening using a circular buffer. At Figure 7 602 of, the code bits of the codeword are shown in a vertical column, including the punctured and shortened bits as shown. At 604, Figure 7 shows the circular buffer represented by a circle, and the reading of the code bits without puncturing or shortening. The next two circles respectively show the circular buffer, where the dotted lines respectively represent puncturing from the start of the buffer at 606 and shortening from the end of the buffer at 608.

[0160] Another example of polar code rate matching involves the incremental freeze HARQ method, where the transmission of multiple short codewords is supported. As more short code transmissions occur, the overall code length increases and the overall code rate decreases.

[0161] In the first transmission, a (M1, K) polar code is constructed, encoded, and transmitted. M1 is the first transmission code length and K is the number of first transmission information bits. The first code rate is R1 = K / M1. Generally, the code rate is determined such that R1 < C1, where C1 is the channel capacity of the first transmission. However, in the case of channel fading or inaccurate channel estimation, there may be an inequality R1 > C1 and decoding will fail, requiring a second transmission.

[0162] In the second transmission, K2 of the K information bits from the first transmission with the lowest reliability are selected. In fact, K2 is selected according to the estimated channel capacity of the second transmission. A (M2, K2) polar code is correspondingly constructed, encoded, and sent. M2 is the second transmission code length and K2 is the number of second transmission information bits. However, if R2 > C2, decoding will fail again and a third transmission is required. The construction of the third and fourth transmissions is similar, and so on.

[0163] At the receiving end, the decoder should always decode the last received codeword because it has the lowest code rate and therefore the greatest chance of successful decoding. After the last transmission is correctly decoded, all corresponding information bits from previous transmissions become known and can be decoded into frozen bits with known values. This process is repeated as more codewords are decoded until all K bits from the first transmission have been decoded. The term "incremental freezing" refers to the operation of freezing some additional information bits from previous transmissions once the codewords of later transmissions are decoded. Figure 8 An example of an encoding process for four transmissions is shown, where M1=M2=M3=M4=16, and K1=12, K2=6, K3=4, K4=3. M3 is the third transmission code length, M4 is the fourth transmission code length, K3 is the number of third transmission information bits, and K4 is the number of fourth transmission information bits.

[0164] Parity-check (PC) polar codes can be used to improve the minimum code distance of the original polar code. The value of the PC bit is determined by its preceding information bits, specifically by a binary linear combination of a subset of the preceding information bits. In a PC polar code scheme for supporting IR-HARQ, the PC bit is used to couple multiple retransmissions into a longer polar code with additional coding gain.

[0165] The PC function currently used for IR-HARQ is also a special case, in which some information bits are copied from the initially transmitted code block to the retransmitted code block. This one-to-one parity check between two shorter code blocks effectively couples the two code blocks into a longer code block.

[0166] For example, the initial transmission is a (M1=8, K=5) polar code, where {u0, u1, u2, u3, u4} is the information set, and {u5, u6, u7} is the freeze set. Its encoding process is as follows: Figure 9 As shown. In this example, the bit indices are arranged in descending order of reliability.

[0167] In the first retransmission, four additional code bits are transmitted. These four bits are coupled with the eight bits from the initial transmission to form a polar code (M2=12, K=5). Coupling is achieved by copying the value of u4 to u8 during encoding, thus generating the PC function u4 + u8 = 0, or equivalently, the PC function u8 = u4. As mentioned above, the largest index in this PC function corresponds to the PC bit (u8 in this case). During decoding, u4 is decoded into information bits, while u8 is decoded into PC bits via u8 = u4. With {u0, u1, u2, u3, u8} as the information set, {u4} as the PC set, and {u5, u6, u7, u9, u10, u11} as the freeze set, the encoding process is as follows: Figure 10 As shown.

[0168] In the second retransmission, the remaining four bits c12, c13, c14, and c15 are transmitted to form a polar code (M3=16, K=5). However, no new PC bits are generated.

[0169] From the perspective of polarization transformation matrix Figure 11 The diagram shows three transmissions with effective code lengths of M1=8, M2=12, and M3=16.

[0170] Since polar codes of arbitrary length are always related to a length of... Rate matching is performed on the mother polar code, where n is a non-negative integer. Therefore, determining the mother code length is a key step in the coding chain of the polar code.

[0171] An exemplary polar coding scheme for determining the mother code length is shown below. A pseudocode example of the current mother code length calculation method is shown below:

[0172] use Indicates the length of the rate-matched output sequence;

[0173] If and

[0174] ;

[0175] else

[0176] ;

[0177] end if

[0178] ;

[0179] ;

[0180] ,

[0181] in, E is the rate-matched output sequence length, i.e., the transmission code length M. K is the number of information bits. Rmin is the minimum code rate, nmin is the minimum mother code length Nmin in the logarithmic field, nmax is the maximum mother code length Nmax in the logarithmic field, n1 is the length of the first-level mother code N1 in the logarithmic field, and n2 is the length of the second-level mother code N2 in the logarithmic field.

[0182] In summary, the principle for determining the length of the mother code is as follows:

[0183] 1. The length of the mother code should be greater than the length of the rate-matched output sequence to allow for punching or shortening.

[0184] 2. The length of the mother code should not exceed the maximum length of the mother code.

[0185] 3. The length of the mother code should not exceed twice the length of the rate-matched output sequence to avoid excessive punching or shortening.

[0186] 4. The length of the mother code should not be less than the minimum mother code length.

[0187] 5. The mother code rate should not be less than the minimum code rate, where the mother code rate is defined by K / N, and N is the mother code length.

[0188] The polar coding examples described above have only one mother code length, or a mother code length determined for only one transmission. However, this mother code determination scheme is not suitable for polar codes with retransmissions or polar codes with multiple redundant versions:

[0189] If the mother code length is only for the initial transmission design, the length does not account for the possibility of potential retransmissions, which require a longer mother code. In the example with only one mother code length, additional different mother code lengths need to be defined for multiple transmissions or multiple redundant versions.

[0190] To support potential retransmissions, such as incremental redundancy HARQ, some embodiments of the present invention extend the mother code length to more than twice the length of the rate-matched output sequence. On the one hand, the mother code length needs to be increased based on the current design to allow for one or more retransmissions; on the other hand, for low complexity considerations, the mother code length cannot exceed a certain value.

[0191] The following description provides some detailed examples of the polar codes used in this invention.

[0192] refer to Figure 12 As an illustrative example but not a limitation, a simplified flowchart of the coding method is provided.

[0193] like Figure 12 As shown, the encoding method includes steps 710 and 720. The entity executing the encoding method may be a device or apparatus within a device, wherein the device or apparatus may include a polar code encoder. In some embodiments, the apparatus may be a communication module, modem, or chip within the device.

[0194] Step 710: Determine the lengths of multiple mother codes.

[0195] In embodiments of the present invention, scenarios requiring at least one retransmission or multiple redundant versions to be transmitted in a specific transmission are considered during the encoding process. Therefore, multiple master code lengths need to be determined based on the communication system.

[0196] In some embodiments, multiple master code lengths may be determined based on the number of retransmissions or redundant versions. In some embodiments, determining multiple master code lengths may be based on at least one of the following parameters, such as minimum bit rate, maximum bit rate, minimum master code length, maximum master code length, rate-matched output length, index of redundant versions, transmission index, number of transmissions, or self-decoding indicator.

[0197] Step 720: Encode multiple information bits based on multiple mother code lengths to obtain multiple codewords, wherein the multiple codewords correspond to multiple mother code lengths.

[0198] In some embodiments, multiple sequences can be obtained based on multiple mother code lengths, and multiple sets of information bits can be obtained based on multiple sequences. During the encoding process, the multiple sets of information bits can be encoded into new sequences corresponding to multiple codewords.

[0199] exist Figure 13 The text provides a simplified flowchart of the decoding method as an illustrative example, but not a limitation. For example... Figure 13 As shown, the decoding method includes steps 730 and 740. The entity executing the decoding method may be a device or apparatus within a device, wherein the device or apparatus may include a polar code decoder. In some embodiments, the apparatus may be a communication module, modem, or chip within the device.

[0200] Step 730: Obtain multiple codewords, which correspond to multiple mother code lengths.

[0201] In some embodiments, before decoding, multiple codewords can be converted into multiple first sequences by demodulation or other methods. In embodiments of the present invention, the method of obtaining the multiple first sequences is not specifically limited.

[0202] In some embodiments, the number of multiple first sequences is related to at least one of the following: the number of redundant versions, the number of transmissions, and the self-decoding indicator. The number of multiple first sequences is related to the number of multiple codewords. The number of multiple codewords is related to the number of multiple mother code lengths. In some embodiments, different numbers of redundant versions, different numbers of transmissions, or different self-decoding indicators can be used to determine different numbers of mother code lengths. In some embodiments, a flexible decoding process can be performed based on the number of multiple first sequences, and the communication system can support various scenarios with different numbers of transmissions or redundant versions, which is very useful and convenient during transmission.

[0203] Step 740: Decode multiple codewords to obtain multiple sequences, which correspond to multiple information bits.

[0204] In some embodiments, the SCL algorithm can be operated during the decoding process. Then, after the CRC process, the device can output multiple sequences comprising multiple information bits. In some embodiments, another algorithm and technique can be used in decoding. In embodiments of the present invention, no specific limitation is made to the algorithm and technique used in decoding.

[0205] Some embodiments of the present invention can provide a method for determining the length of a polar code mother code in scenarios that may require a long or multiple mother codes.

[0206] The following section details the method for determining the mother code length of polar codes.

[0207] To support multiple redundant versions or aggregation levels, some embodiments of the present invention specify multiple mother code lengths.

[0208] Some exemplary methods for determining the length of a polarized mother code include the following features:

[0209] In these cases, the polar code scheme includes at least one extended mother code length:

[0210] In some embodiments, the method for determining the mother code length can be based on a fixed mother code length extension. The extended mother code length can be obtained based on the currently calculated mother code length. For example, the extended mother code length can be obtained by multiplying the currently calculated mother code length by a fixed number of extensions. The fixed number of extensions is one of the factors determining the mother code length. The extended mother code length is related to retransmission, redundant versions, or other scenarios.

[0211] At this point, the method for determining the mother code length includes the following characteristics: a fixed number of extensions:

[0212] The fixed number of expansions is predefined in the standard.

[0213] The fixed number of extensions is indicated by the DCI signal or configured in the RRC.

[0214] In some embodiments, the fixed extension number can be obtained by the transmitter in several ways, such as by instructing the transmitter via DCI, configuring it in RRC, etc. In embodiments of the present invention, the transmission method for the fixed extension number is not specifically limited.

[0215] The number of fixed spreads is related to the device capability, which can be derived from other non-channel coding parameters.

[0216] The number of fixed extensions is related to the uplink or downlink and / or service type (e.g., data channel, control channel).

[0217] The number of fixed extensions is related to the communication scenario (such as enhanced mobile broadband (eMBB), ultra-reliable low-latency communications (URLLC)).

[0218] The fixed extension number can be 2, 4, 8, 16, or greater. That is, it is an integer that is a power of 2.

[0219] In some embodiments, the fixed extension number is related to the index of the redundant version, the transmission index, the transmission number, etc., which means that the fixed extension number may be the same or different in different transmissions of the polar code or in different indices of the redundant version. In the embodiments of the present invention, the value of the fixed extension number is not specifically limited.

[0220] In some embodiments, the method for determining the mother code length can be based on the maximum mother code length. Regardless of the currently calculated mother code length, it can be extended to reach the maximum mother code length, or the extended mother code length can be fixed to the maximum mother code length. The maximum mother code length is one of the factors that determine the mother code length.

[0221] At this point, the method for determining the mother code length includes the following characteristics of the maximum mother code length:

[0222] The maximum mother code length is predefined in the standard;

[0223] The maximum mother code length is indicated by the DCI or configured in the RRC;

[0224] The maximum mother code length is related to the device capability, which can be derived from other non-channel coding parameters.

[0225] The maximum mother code length is related to the uplink or downlink and / or service type (e.g., data channel, control channel);

[0226] The maximum mother code length can be 2, 4, 8, 16 or greater. That is, it is an integer that is a power of 2.

[0227] Then, considering both of the above factors, the method for determining the mother code length can include at least one of the following.

[0228] The first aspect is to modify the current method for calculating the mother code length, thereby including the parameter "fixed extension count". Therefore, mother code extension is considered when determining the extended mother code length. In this case, the method for determining the mother code length ensures that the extended mother code length does not exceed the maximum mother code length; otherwise, based on the characteristics of the fixed extension count, the fixed extension count can be set to a fixed value.

[0229] The second aspect involves retaining the current mother code length calculation formula. This does not involve the parameter "fixed extension count," but rather determines whether to extend the currently calculated mother code by the fixed extension count or fewer counts based on its characteristics. If the extended mother code length does not exceed the maximum mother code length, no arbitrary operation is performed. Otherwise, the extension count is reduced until it does not exceed the maximum mother code length. It should be noted that these two aspects may result in different currently calculated mother code lengths obtained through different methods (e.g., the currently calculated mother code length may be related to the initial transmission or retransmission).

[0230] In these cases, the schemes for polar codes with multiple mother code lengths are as follows:

[0231] 1. In cases where multiple mother code lengths are included, including the initial transmission mother code length and the extended mother code length for all retransmissions:

[0232] Two mother code lengths are defined. One mother code length is shorter, called the initial mother code length, and is used for initial transmission; the other mother code length is longer, called the extended mother code length, and is used for all possible retransmissions. It should be noted that the longer extended mother code length includes the initial mother code length.

[0233] Define a short mother code length (e.g., using a method in the approach of determining the mother code length based on a fixed mother code length extension), and define a longer mother code length relative to the short mother code length.

[0234] Define a longer mother code length (e.g., using a method in the method of determining the mother code length based on the maximum mother code length), and define a shorter mother code length relative to the longer mother code length.

[0235] Two mother code lengths are defined simultaneously (e.g., a method that uses a fixed mother code length extension to determine the mother code length and a method that uses the maximum mother code length to determine the mother code length).

[0236] 2. In cases where multiple master code lengths include the master code length for each retransmission or each redundant version:

[0237] This definition specifies the mother code length for each transmission and retransmission. One mother code length does not include the other mother code length.

[0238] In some scenarios, retransmission opportunities are predefined or pre-scheduled, meaning that retransmission requests using NACK are not required. This is called blind retransmission. In this case, for simplicity, the master code length of each retransmission (or redundant version) can be the same, monotonically increasing for higher reliability, or monotonically decreasing for higher spectral efficiency.

[0239] Figure 14 This is a flowchart illustrating the method for determining the length of the mother code. Figure 14In this context, the first mother code length refers to the short mother code length, such as the initial mother code length used for initial transmission. The second mother code length refers to the longer mother code length, such as the mother code length used for retransmission. In some embodiments, the short mother code length and the longer mother code length may involve different redundancy versions.

[0240] The control channel, also known as CC, is primarily used to transmit signaling or synchronization data in multi-channel shared communication systems. In analog cellular systems, it mainly consists of paging and access channels. In digital cellular systems, it mainly consists of broadcast channels, common control channels, and dedicated control channels. The data channel is crucial for the flexibility of mobile communication systems and the introduction of new services. It provides high-speed data transmission services for mobile users. The control channel provides high-speed signaling transmission services for network management and introduces new services such as integrated digital services.

[0241] In data channel coding or control channel coding scenarios, the initial mother code length and the mother code length for retransmission can be obtained based on the minimum mother code rate Rmin, the rate-matched output length E, and the maximum mother code length. In some embodiments of the present invention, the mother code lengths of the data channel and the control channel are different; that is, the initial mother code length of the data channel is different from the initial mother code length of the control channel, and the extended mother code length for data channel retransmission is different from the extended mother code length for control channel retransmission. In some embodiments of the present invention, the mother code length of the data channel is greater than the mother code length of the control channel; that is, the initial mother code length of the data channel is greater than the initial mother code length of the control channel, and the extended mother code length for data channel retransmission is greater than the extended mother code length for control channel retransmission.

[0242] In some embodiments, the number of mother code lengths and the order in which they are determined may differ under different circumstances. The principles for determining the mother code length under different circumstances are as follows:

[0243] In the first scenario, under the "optional retransmission" condition (i.e., retransmission is not possible), the initial mother code length for the initial transmission can be determined first. Therefore, in subsequent retransmissions, the mother code length for retransmission can be determined based on the initial mother code length. For example, the mother code length for retransmission can be obtained by multiplying the initial transmission mother code length by a first coefficient. The mother code length for different retransmissions can be associated with different values ​​of the first coefficient. In some embodiments, the mother code length for retransmission refers to the extended mother code length.

[0244] In the second scenario, under "forced retransmission," which implies that at least one retransmission will definitely occur, at least one mother code length for retransmission can be determined first. The initial mother code length can be obtained from this length. For example, it can be obtained by dividing the initial mother code length by a first coefficient. Other mother code lengths for retransmission can also be determined based on these lengths. For example, they can be obtained by multiplying the lengths for retransmission by different values ​​of the first coefficient.

[0245] In the third case, if pre-allocation of transmission resources is required, the reference master code length is determined first. The master code length used for transmission (including initial transmission and retransmission) or the redundant version can be obtained based on the reference master code length. For example, the initial master code length, the master code length for each retransmission, or the master code length for each redundant version can be obtained by dividing the reference master code length by different values ​​of the first coefficient.

[0246] In some embodiments, other principles may exist for determining the length of the mother code in other situations. In the embodiments of the present invention, the principles for determining the length of the mother code in other situations are not specifically limited.

[0247] In some embodiments, the extended mother code length can be obtained based on the first-level mother code length N1, the second-level mother code length N2, and the third-level mother code length N3.

[0248] The first-level mother code length can be calculated based on the rate-matched output sequence length E, the number of information bits to be encoded K, the minimum code rate Rmin, the minimum mother code length Nmin, and the maximum mother code length Nmax. It should be noted that the rate-matched output sequence length can specifically be the length of the initial (first) transmission or the length of the first redundant version (rvid=0).

[0249] Specifically, several quantities can be predefined:

[0250] The length N1 of the first-level mother code is determined in any of the following ways:

[0251] In the first case, the first-level mother code length N1 is a power of 2 integer that is greater than (or not less than) the rate-matched output length E.

[0252] In the second case, the first-level mother code length N1 is a power of 2 integer that is less than (or not greater than) the rate-matched output length E.

[0253] The minimum code rate (or minimum mother code rate) Rmin is determined in any of the following ways:

[0254] The minimum bit rate value can be predefined in the standard specification, such as 3 / 4, 2 / 3, 1 / 2, 2 / 5, 1 / 3, 1 / 4, 1 / 5, 1 / 6, 1 / 7, 1 / 8, 1 / 9, 1 / 10, 3 / 32, 1 / 12, 1 / 16, 1 / 32, 1 / 64.

[0255] The minimum bit rate value can be determined based on the traffic or service type. For example, it is 3 / 32 for low-power devices such as those used for massive machine-type communication (mMTC) or the Internet of Things (IoT); 1 / 9 for sidelink traffic and downlink control information; 1 / 6 or 1 / 8 for uplink control information; 1 / 3 or 1 / 4 for eMBB data traffic; and 3 / 4 or 1 / 2 for immersive data traffic (up to 1 Tbps for high throughput).

[0256] The minimum code rate can be flexibly configured by the base station through RRC or other means to adapt to different situations.

[0257] The length N2 of the second-level mother code is determined in any of the following ways:

[0258] In the first case, the second-level mother code length N2 is the smallest power of 2 integer that makes the mother code rate, defined as K / N2, less than (or not greater than) the minimum code rate Rmin.

[0259] In the second case, the second-level mother code length N2 is the largest power of 2 integer that makes the mother code rate, defined as K / N2, greater than (or not less than) the minimum code rate Rmin.

[0260] The maximum mother code length Nmax is determined in any of the following ways:

[0261] The maximum mother code length Nmax can be predefined in the standard specification, for example, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768.

[0262] The maximum mother code length Nmax can be the same as the length of the nested reliability sequence of the polar code.

[0263] In some embodiments, the nested reliability sequence of the polar codes defining the reliability of each sub-channel may or may not be set in the standard. In the embodiments of the present invention, the nested reliability sequence of the polar codes is not specifically limited.

[0264] The maximum mother code length can depend on the traffic or service type, for example, 128 for low-power devices such as mMTC or IoT; 512 for sidelink traffic and downlink control information; 1024 for uplink control information; 4096 or 8192 for eMBB data traffic; and 1024 or 2048 for immersive data traffic (high throughput up to 1 Tbps).

[0265] The maximum mother code length can be flexibly configured by the base station through RRC or other means to adapt to different situations.

[0266] The minimum mother code length Nmin is determined in any of the following ways:

[0267] The minimum mother code length can be predefined in the standard specification, such as 16, 32, 64, or 128.

[0268] The minimum mother code length can depend on the traffic or service type, for example, 16 for low-power devices such as mMTC or IoT; 32 for sidelink traffic and downlink control information; 64 for uplink control information; 128 or 256 for eMBB data traffic; and 32 or 64 for immersive data traffic (high throughput up to 1 Tbps).

[0269] The minimum mother code length can be flexibly configured by the base station through RRC or other means to adapt to different situations.

[0270] Based on the above quantities, there are several different methods to determine the mother code length (including the mother code length related to the initial transmission, retransmission, and different redundancy versions):

[0271] The steps 1a to 2a of the first method for determining the mother code length are described below.

[0272] Step 1a: Determine the minimum value among N1, N2 and the predefined value N3, i.e., N' = min{N1, N2, N3}.

[0273] The predefined value N3 can be independent of Nmax, for example, N3=512.

[0274] Alternatively, the predefined value N3 can be derived from Nmax, for example, N3 = Nmax / 2, N3 = Nmax / 4 or N3 = Nmax×2.

[0275] Step 2a: Determine the first currently calculated mother code length Na by determining the maximum value between the minimum value mentioned in step 1a and Nmin, i.e., N = max{N', Nmin}. In some embodiments, the initial mother code length and the extended mother code length can be obtained based on the first currently calculated mother code length Na.

[0276] For example, the extended mother code length can be equal to the currently calculated mother code length Na. Alternatively, the extended mother code length can be equal to the first currently calculated mother code length Na multiplied by a fixed number of extensions. The initial mother code length can be equal to the currently calculated mother code length Na. Alternatively, the initial mother code length can be equal to the first currently calculated mother code length Na multiplied by a constant.

[0277] In the embodiments of the present invention, the method for obtaining the initial mother code length and the extended mother code length based on the first method is not specifically limited.

[0278] An example of pseudocode for the first method is shown below (in the logarithmic field, for example, n = log₂N). n₁

[0279] ;

[0280] ;

[0281] ;

[0282] .

[0283] Where n3 is the length of the third-level mother code N3 in the logarithm field, and na is the length of the first currently calculated mother code in the logarithm field.

[0284] The steps 1b to 3b of the second method for determining the mother code length are described below.

[0285] Step 1b: Determine the minimum value among N1, N2, and Nmax, i.e., N' = min{N1, N2, Nmax}.

[0286] Step 2b: Determine the initial mother code length Nini as the maximum value between the minimum value mentioned in step 1b and Nmin, i.e., Nini = max{N', Nmin}.

[0287] Step 3b: Determine the extended mother code length Nest by multiplying the above length Nini by C, i.e., Nest = C × Nini, where C is a power of 2 as specified in the standard, for example, C = 2, C = 4, C = 8, C = 16. C is the fixed extension number.

[0288] Where C depends on the channel type. For example, C=2 for downlink and C=4 for uplink; or C=1 for downlink and C=2 for uplink; or C=1 for control signals and C=2 for data traffic.

[0289] In the logarithmic field, multiplying by C is equivalent to adding c = log₂C. For example, Nest = C × N is equivalent to nest = c + n. Nest is the length of the extended mother code in the logarithmic field.

[0290] The pseudocode example for the second method is as follows (in the logarithmic field, for example, n = log₂N):

[0291] ;

[0292] ;

[0293] ;

[0294] .

[0295] The steps 1c to 3c of the third method for determining the mother code length are described below.

[0296] Step 1c: Determine the minimum value among N1, N2, and Nmax, i.e., N' = min{N1, N2, Nmax}.

[0297] Step 2c: Determine the current calculated mother code length, or initial mother code length, as the maximum value between the minimum value mentioned in step 1c and Nmin, i.e., Nini = max{N', Nmin}.

[0298] Step 3c: Determine the extended mother code length Nest using a fixed value.

[0299] The fixed value can be the maximum mother code length Nmax.

[0300] The fixed value can be a predefined mother code length, which can be independent of Nmax or derived from Nmax, for example, Nest = Nmax / 2 or Nest = Nmax×2.

[0301] An example of pseudocode for the third method is shown below (in the logarithmic field, for example, n = log₂N):

[0302] ;

[0303] ;

[0304] ;

[0305] .

[0306] The steps 1d to 3d of the fourth method for determining the mother code length are described below.

[0307] Step 1d: Determine the minimum value among N1, N2, and Nmax, i.e., N' = min{N1, N2, Nmax}.

[0308] Step 2d: Determine the current calculated mother code length, or the initial mother code length Nini, as the maximum value between the minimum value mentioned in step 1d and Nmin, i.e., N''=max{N', Nmin}.

[0309] Step 3d: Determine the extended mother code length Nest by multiplying the initial mother code length Nini by a fixed value, i.e. Nest = C × N'', which should also not be greater than the maximum mother code length.

[0310] Where C is a power of 2 as specified in the standard, for example: C=2, C=4, C=8, C=16.

[0311] Where C depends on the channel type. For example, C=2 for downlink and C=4 for uplink; or C=1 for downlink and C=2 for uplink; or C=1 for control signals and C=2 for data traffic.

[0312] In the logarithmic field, multiplying a constant by C is equivalent to adding c, where c = log₂C. For example, Nest = C × Nini is equivalent to n = c + n''.

[0313] If the length of the extended mother code obtained by the above method is greater than Nmax, then set Nest = Nmax.

[0314] An example of pseudocode for the fourth method is shown below (in the logarithmic field, for example, n = log₂N):

[0315] ;

[0316] ;

[0317]

[0318]

[0319] It should be noted that all four methods described above can be represented in the logarithm field.

[0320] The following description details the principles of determining the mother code length of polar codes under different circumstances.

[0321] In some embodiments of the present invention, the mother code length can be defined according to different determination orders. For example, in a HARQ retransmission scenario, some retransmissions are optional, while others are mandatory.

[0322] In the first case, corresponding to the "optional retransmission" scenario, a mother code length is defined for the initial transmission, but it may not be necessary to define an extended mother code length for one or more retransmissions. In this case, the initial mother code length is defined first, followed by the extended mother code length derived from the initial mother code length.

[0323] Let Nini represent the initial mother code length and Nest represent the extended mother code length. The first method can be described as follows:

[0324] Determine the initial mother code length Nini.

[0325] Use any of the information mentioned above in the method for determining the length of the extended mother code of the polar code to obtain Nini.

[0326] Deriving the extended mother code length Nest from Nini

[0327] Nest = f(Nini), where f(·) is a function that can be multiplied by a constant, where, in some cases, the constant can be an integer that is a power of 2.

[0328] The pseudocode for the method in the first case is as follows (in the logarithmic field, for example, n = log₂N):

[0329] ;

[0330] ;

[0331] ;

[0332]

[0333]

[0334] In some embodiments, the pseudocode of the method in the first case is an example of the description of the method in the first case, which means that the values ​​of n1, n2, n3, nini, and nest may be different in other pseudocodes of the method in the first case.

[0335] In the second case, corresponding to the "forced retransmission" scenario, the mother code length for the initial transmission and the extended mother code length for one or more retransmissions are defined. In this case, the longer extended mother code length can be defined first, and then the portion corresponding to the initial transmission length can be specified.

[0336] Using the same definitions for Nini and Nest, the second approach can be described as follows:

[0337] Determine the extended mother code length Nest.

[0338] Use any of the methods described above for determining the mother code length of a polar code to obtain Nest.

[0339] Derive the initial mother code length Nini from Nest.

[0340] Nini = f(Nest), where f(·) is a function divisible by a constant, where, in some cases, the constant can be an integer that is a power of 2.

[0341] The pseudocode for the method in the second case is as follows (in the logarithmic field, for example, n = log₂N):

[0342] ;

[0343] ;

[0344]

[0345]

[0346]

[0347] It should be noted that all the methods described above in this invention can be represented in the logarithmic field.

[0348] In some embodiments, the pseudocode of the method in the second case is an example of the description of the method in the second case, which means that the values ​​of n1, n2, n3, nini, and nest may be different in other pseudocodes of the method in the second case.

[0349] In the third case, the mother code length for multiple retransmissions (or redundant versions) can be determined at once. For example, in some blind retransmission scenarios, the resources used for retransmission are pre-allocated. Therefore, the mother code length for each retransmission can also be predetermined.

[0350] Specifically, a reference mother code length Nref can be defined, and then several mother code lengths can be defined relative to Nref for each transmission (retransmission) Nrv0, Nrv1, Nrv2, Nrv3... The steps are as follows:

[0351] 1. Determine the reference mother code length Nref by using any of the methods described above in the methods for determining the mother code length of a polar code.

[0352] 2. Derive the length of the mother code Nrv0, Nrv1, Nrv2, Nrv3, etc. for each redundant version.

[0353] Nrv0 = f0(Nref), Nrv1 = f1(Nref), Nrv2 = f2(Nref), Nrv3 = f3(Nref)..., where f0(·), f1(·), f2(·), and f3(·) are functions that can be multiplied or divided by a constant. The constant here can be a power of 2, but in some cases it can also be "a power of 2 minus 1", or the difference between two different power-of-2 integers.

[0354] In the first example, there are two transmissions: an initial transmission and a retransmission. If the reference mother length Nref is 1024, the mother length for each transmission can be set using the following options:

[0355] Choose A: Nrv0 = Nref = 1024; Nrv1 = Nref = 1024;

[0356] Choose B: Nrv0 = Nref = 1024; Nrv1 = Nref / 2 = 512; (or Nrv0 = Nref = 512; Nrv1 = Nref / 2 = 256).

[0357] If the reference mother code length Nref is 512, the following options can be used to set the mother code length for each transmission:

[0358] Choose C: Nrv0 = Nref = 512, Nrv1 = 2 × Nref = 1024;

[0359] Choose D: Nrv0 = Nref = 512, Nrv1 = 3 × Nref = 1536.

[0360] In the second example, there are four transmissions, including one initial transmission and three retransmissions (or a subset of the three retransmissions). If the reference mother code length Nref is 512, the mother code length for each transmission can be set using the following options:

[0361] Choose A: Nrv0 = Nref = 512; Nrv1 = Nref = 512; Nrv3 = Nref = 512; Nrv4 = Nref = 512;

[0362] Option B: Nrv0 = Nref = 512; Nrv1 = Nref / 2 = 256; Nrv3 = Nref = 512; Nrv4 = Nref / 2 = 256; (or Nrv0 = 2 × Nref = 1024; Nrv1 = Nref = 512; Nrv3 = 2 × Nref = 1024; Nrv4 = Nref = 512)

[0363] Choose C: Nrv0 = Nref = 512, Nrv1 = Nref = 512; Nrv3 = 2 × Nref = 1024; Nrv4 = 4 × Nref = 2048;

[0364] Choose D: Nrv0 = Nref = 512, Nrv1 = Nref = 512; Nrv3 = 3×Nref = 1536; Nrv4 = 3×Nref = 1536.

[0365] It should be noted that the length of the mother code for each transmission in all the above choices in the first and second examples can be extended (indicating that the current four transmissions are a subset of more than four transmissions) or reduced (indicating that the current four transmissions are a superset of less than four transmissions).

[0366] Some embodiments of the present invention can achieve advantageous effects, such as:

[0367] The length of the polar code mother code can be flexibly determined, and multiple mother code lengths are supported.

[0368] While this invention has been described with reference to illustrative embodiments, it is not intended to be construed as limiting. Those skilled in the art will recognize, upon referring to this description, various modifications and combinations of the illustrative embodiments, as well as other embodiments of the invention.

[0369] Additionally or alternatively, features disclosed herein in the context of any particular embodiment may be implemented in other embodiments. For example, method embodiments may be implemented in apparatus, system, and / or computer program product embodiments. Furthermore, although embodiments are described primarily in the context of methods and apparatus, other implementations are contemplated, for example, as instructions stored in one or more non-transitory computer-readable media. These media may store programming or instructions to perform any of the various methods consistent with the present invention.

[0370] Although various aspects of the invention have been described with reference to specific features and embodiments thereof, various modifications and combinations thereof can be made without departing from the invention. Therefore, the description and drawings are to be regarded only as illustrative of some embodiments of the invention as defined in the appended claims, and are intended to cover any and all modifications, variations, combinations, or equivalents falling within the scope of the invention. Thus, while embodiments and potential advantages have been described in detail, various changes, substitutions, and alterations may be made herein without departing from the invention as defined in the appended claims. Furthermore, the scope of this application is not limited to the specific embodiments of the processes, machines, articles of manufacture, material compositions, modules, methods, and steps described in the specification. Those skilled in the art will readily understand from the disclosure of this invention that processes, machines, articles of manufacture, material compositions, modules, methods, or steps (including those currently existing or later developed) can be used according to the invention to perform or achieve substantially the same function or result as the corresponding embodiments described herein. Accordingly, the appended claims encompass such processes, machines, articles of manufacture, material compositions, modules, methods, or steps.

[0371] Furthermore, any module, component, or device executing instructions illustrated herein may include or otherwise access one or more non-transitory computer-readable or processor-readable storage media to store information, such as computer-readable or processor-readable instructions, data structures, program modules, and / or other data. A non-exhaustive list of examples of non-transitory computer-readable or processor-readable storage media includes magnetic tape cassettes, magnetic tape, disk storage or other magnetic storage devices, compact disc read-only memory (CD-ROM), digital video disc or digital versatile disc (DVD), Blu-ray™ and other optical discs, volatile and non-volatile, removable and non-removable media implemented in any method or technology, random-access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory, or other storage technologies. Any such non-transitory computer-readable or processor-readable storage medium may be part of a device or may access or be connected to a device. Any application or module described herein may be implemented using computer-readable and executable instructions, or may be stored or otherwise held by a processor by such non-transitory computer-readable or processor-readable storage medium.

[0372] The standard description is simple and has low complexity.

[0373] This invention encompasses a variety of embodiments, including not only method embodiments but also other embodiments, such as apparatus embodiments and embodiments related to non-transitory computer-readable storage media. Embodiments may be combined individually or in combination with the features disclosed herein.

[0374] While this invention has been described with reference to illustrative embodiments, it is not intended to be construed as limiting. Those skilled in the art will recognize, upon referring to this description, various modifications and combinations of the illustrative embodiments, as well as other embodiments of the invention.

[0375] Additionally or alternatively, features disclosed herein in the context of any particular embodiment may be implemented in other embodiments. For example, method embodiments may be implemented in apparatus, system, and / or computer program product embodiments. Furthermore, although embodiments are described primarily in the context of methods and apparatus, other implementations are contemplated, for example, as instructions stored in one or more non-transitory computer-readable media. These media may store programming or instructions to perform any of the various methods consistent with the present invention.

[0376] Abbreviations

[0377]

Claims

1. A method, characterized in that, include: Determine the length of multiple mother codes; Multiple information bits are encoded based on the multiple mother code lengths to obtain multiple codewords, wherein the multiple codewords correspond to the multiple mother code lengths.

2. The method according to claim 1, characterized in that, Determining the lengths of multiple mother codes includes: Multiple mother code lengths are determined based on a set of parameters, wherein the set of parameters includes one or more of the following: Minimum bit rate, maximum bit rate, minimum mother code length, maximum mother code length, rate-matched output length, index of redundant version, transmission index, number of transmissions, self-decoding indicator.

3. The method according to claim 2, characterized in that, Each of the plurality of mother code lengths is related to the mother code length parameter and the first coefficient.

4. The method according to claim 3, characterized in that, The method for obtaining the mother code length parameter includes: Obtain the rate-matched output length, the number of the plurality of information bits, the minimum code rate, and the minimum mother code length; The length of the first-level mother code is obtained based on the rate-matched output length. The length of the second-level mother code is obtained based on the number of the plurality of information bits and the minimum code rate; Get the length of the third-level mother code; The mother code length parameter is obtained based on the first-level mother code length, the second-level mother code length, the third-level mother code length, and the minimum mother code length.

5. The method according to claim 4, characterized in that, The length of the first-level mother code is a power of 2 integer greater than the rate-matched output length.

6. The method according to claim 4, characterized in that, The length of the first-level mother code is equal to Where E is the rate-matched output length.

7. The method according to claim 4, characterized in that, The length of the first-level mother code is a power of 2 integer that is less than the length of the rate-matched output.

8. The method according to claim 7, characterized in that, The length of the first-level mother code is equal to Where E is the rate-matched output length.

9. The method according to any one of claims 4 to 8, characterized in that, The mother code length parameter is related to one or more of the following: number of transmissions, channel type, index of redundant versions, and communication scenario.

10. The method according to any one of claims 4 to 9, characterized in that, The second-level mother code length is a power of 2 integer that makes the second mother code rate less than the minimum code rate, wherein the second mother code rate is the quotient of the number of the plurality of information bits and the second-level mother code length.

11. The method according to claim 7, characterized in that, The second-level mother code length is equal to Where K is the number of the plurality of information bits, and Rmin is the minimum code rate.

12. The method according to any one of claims 4 to 9, characterized in that, The second-level mother code length is a power of 2 integer that makes the second mother code rate greater than the minimum code rate, wherein the second mother code rate is the quotient of the number of the plurality of information bits and the second-level mother code length.

13. The method according to claim 12, characterized in that, The second-level mother code length is equal to Where K is the number of the plurality of information bits, and Rmin is the minimum code rate.

14. The method according to any one of claims 4 to 13, characterized in that, The minimum bit rate is related to one or more of the following: number of transmissions, channel type, service type, index of redundant versions, and communication scenario.

15. The method according to any one of claims 4 to 14, characterized in that, The minimum code rate is the same as the first constant.

16. The method according to any one of claims 4 to 15, characterized in that, The length of the third-level mother code is the same as the second constant.

17. The method according to any one of claims 4 to 16, characterized in that, The length of the third-level mother code is obtained based on the maximum mother code length.

18. The method according to claim 17, characterized in that, The maximum mother code length is related to one or more of the following: channel type, service type, and device capabilities.

19. The method according to claim 17 or 18, characterized in that, The maximum mother code length is an integer that is a power of 2.

20. The method according to any one of claims 17 to 19, characterized in that, The maximum mother code length is the same as the length of the nested reliability sequence.

21. The method according to any one of claims 17 to 20, characterized in that, The maximum mother code length is the same as the third constant.

22. The method according to any one of claims 4 to 21, characterized in that, The minimum mother code length is the same as the fourth constant.

23. The method according to any one of claims 4 to 22, characterized in that, The minimum mother code length is related to the type of channel or service.

24. The method according to any one of claims 17 to 23, characterized in that, One of the multiple mother code lengths is the same as the maximum mother code length.

25. The method according to any one of claims 1 to 23, characterized in that, The lengths of the multiple mother codes are equal to multiple constants.

26. The method according to any one of claims 3 to 25, characterized in that, Each of the plurality of mother code lengths is related to the product of the mother code length parameter and the first coefficient.

27. The method according to any one of claims 3 to 26, characterized in that, The first coefficient is related to one or more of the following: number of transmissions, device capacity, channel type, service type, communication scenario, and index of redundant versions.

28. The method according to any one of claims 3 to 27, characterized in that, The first coefficient is a positive integer.

29. The method according to any one of claims 3 to 28, characterized in that, The first coefficient is equal to the quotient of two positive integers.

30. The method according to any one of claims 1 to 29, characterized in that, The encoding of multiple information bits based on the multiple mother code lengths includes: One or more sets of information bits are determined based on the plurality of information bits and the plurality of mother code lengths.

31. The method according to any one of claims 1 to 30, characterized in that, The lengths of the plurality of mother codes are associated with at least one of the following: polar codes, LDPC codes, Turbo codes, RM codes, convolutional codes, and product codes.

32. A method, characterized in that, include: Obtain multiple codewords, wherein the multiple codewords correspond to multiple mother code lengths; The multiple codewords are decoded to obtain multiple sequences, wherein the multiple sequences correspond to multiple information bits.

33. The method according to claim 32, characterized in that, The lengths of the multiple mother codes are determined based on a set of parameters, wherein the set of parameters includes one or more of the following: Minimum bit rate, maximum bit rate, minimum mother code length, maximum mother code length, rate-matched output length, index of redundant version, transmission index, number of transmissions, self-decoding indicator.

34. The method according to claim 33, characterized in that, Each of the plurality of mother code lengths is related to the mother code length parameter and the first coefficient.

35. The method according to claim 34, characterized in that, The method for obtaining the mother code length parameter includes: Obtain the rate-matched output length, the number of the plurality of information bits, the minimum code rate, and the minimum mother code length; The length of the first-level mother code is obtained based on the rate-matched output length. The length of the second-level mother code is obtained based on the number of the plurality of information bits and the minimum code rate; Get the length of the third-level mother code; The mother code length parameter is obtained based on the first-level mother code length, the second-level mother code length, the third-level mother code length, and the minimum mother code length.

36. The method according to claim 35, characterized in that, The length of the first-level mother code is a power of 2 integer greater than the rate-matched output length.

37. The method according to claim 35, characterized in that, The length of the first-level mother code is a power of 2 integer that is less than the length of the rate-matched output.

38. The method according to any one of claims 35 to 37, characterized in that, The mother code length parameter is related to one or more of the following: number of transmissions, channel type, index of redundant versions, and communication scenario.

39. The method according to any one of claims 35 to 38, characterized in that, The second-level mother code length is a power of 2 integer that makes the second mother code rate less than the minimum code rate, wherein the second mother code rate is the quotient of the number of the plurality of information bits and the second-level mother code length.

40. The method according to any one of claims 35 to 38, characterized in that, The second-level mother code length is a power of 2 integer that makes the second mother code rate greater than the minimum code rate, wherein the second mother code rate is the quotient of the number of the plurality of information bits and the second-level mother code length.

41. The method according to any one of claims 35 to 40, characterized in that, The minimum bit rate is related to one or more of the following: number of transmissions, channel type, service type, index of redundant versions, and communication scenario.

42. The method according to any one of claims 35 to 41, characterized in that, The length of the third-level mother code is obtained based on the maximum mother code length.

43. The method according to claim 42, characterized in that, The maximum mother code length is related to one or more of the following: channel type, service type, and device capabilities.

44. The method according to claim 42 or 43, characterized in that, The maximum mother code length is an integer that is a power of 2.

45. The method according to any one of claims 42 to 44, characterized in that, The maximum mother code length is the same as the length of the nested reliability sequence.

46. ​​The method according to any one of claims 35 to 45, characterized in that, The minimum mother code length is related to the type of channel or service.

47. The method according to any one of claims 42 to 46, characterized in that, One of the multiple mother code lengths is the same as the maximum mother code length.

48. The method according to any one of claims 34 to 47, characterized in that, Each of the plurality of mother code lengths is related to the product of the mother code length parameter and the first coefficient.

49. The method according to any one of claims 34 to 48, characterized in that, The first coefficient is related to one or more of the following: Indexes of transmission count, device capacity, channel type, service type, communication scenario, and redundant versions.

50. The method according to any one of claims 34 to 49, characterized in that, The first coefficient is equal to the quotient of two positive integers.

51. An apparatus, characterized in that, The apparatus includes a processor, wherein the processor is configured to execute one or more instructions stored in a memory, such that the apparatus implements the method of any one of claims 1 to 31 or claims 32 to 50.

52. An apparatus, characterized in that, The apparatus includes functions or units that perform the method of any one of claims 1 to 31 or the method of any one of claims 32 to 50.

53. A computer-readable storage medium, characterized in that, It includes one or more instructions, wherein when the instructions are executed on a computer, the computer performs the method of any one of claims 1 to 31, or the method of any one of claims 32 to 50.

54. A computer program product, characterized in that, The invention includes a non-transitory computer-readable medium storing a program for execution by a processor, the program comprising instructions for performing the method according to any one of claims 1 to 31 or 32 to 50.