Methods, systems, and apparatus for flexible nested reliability sequence extraction
The method addresses the limitations of existing code schemes by determining reliability ordered sequences for encoding and decoding in wireless communication systems, enhancing support for advanced 6G scenarios and reducing decoder complexity.
Patent Information
- Application Number
- PCT/CN2024/082051
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-11-14
- Filing Date
- 2024-03-15
- Publication Date
- 2025-05-22
AI Technical Summary
Existing code schemes are unable to support new scenarios in wireless communication systems, such as sixth-generation (6G) systems, that require retransmissions, multiple redundancy versions of codes, or simultaneous multiple transmissions.
A method for determining a plurality of reliability ordered sequences, encoding information bits based on these sequences to obtain code words, and decoding these code words to support scenarios requiring retransmissions or multiple redundancy versions of codes.
The method reduces decoder complexity in high-throughput communications and improves performance in scenarios with multiple transmissions or redundancy versions of codes.
Smart Images

Figure CN2024082051_22052025_PF_FP_ABST
Abstract
Description
Methods, Systems, and Apparatus for Flexible Nested Reliability Sequence Extraction
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] The present application is related to, and claims priority to: United States provisional patent application Serial No. 63 / 598,579, entitled "Flexible Nested Reliability Sequence Extraction" , filed on November 14th, 2023, the entirety of which is hereby incorporated by reference.TECHNICAL FIELD
[0003] The present application relates to coding, and in particular to methods, systems, and apparatus for flexible nested reliability sequence extraction.BACKGROUND
[0004] In the field of communication systems, channel coding is usually used to improve the reliability of signal transmission and ensure communication quality. The existing code methods have been proven to achieve the theoretical channel capacity, which have relatively simple encoding and decoding complexity.
[0005] With the rapid evolution of wireless communication systems, some new wireless communication systems, such as so-called sixth-generation (6G) systems will aim to support some new scenarios, including immersive communication, massive communication, hyper reliable and low-latency communication, and so on.
[0006] But the existing code schemes are unable to support new scenarios that require retransmissions, in particular, a plurality of redundancy versions of codes would be generated accordingly, or new scenarios that a plurality of transmissions carried out at the same time.SUMMARY
[0007] The following examples pertain to embodiments described throughout this disclosure.
[0008] One or more embodiments are related to a method. The method comprising: determining a plurality of reliability ordered sequences; encoding a plurality of information bits based on the plurality of reliability ordered sequences to obtain a plurality of code words, and the plurality of code words correspond to the plurality of reliability ordered sequences.
[0009] In some embodiments, a plurality of reliability ordered sequences refers to a plurality of second (shorter) sequences. In some embodiments, elements of one of the plurality of reliability ordered sequences may be related to elements of another one of the plurality of reliability ordered sequences, which means that one of the plurality of reliability ordered sequences may be obtained based on another one of the plurality of reliability ordered sequences. For example, values of elements of one of the plurality of reliability ordered sequences may be obtained based on values of elements of another one of the plurality of reliability ordered sequences. In the future, a communication system may need to support several scenarios that at least one retransmission is required or a plurality of redundancy versions of codes are needed during the transmissions. Therefore, after the plurality of reliability ordered sequences are determined, a plurality of codes may be encoded and decoded, which may be used to help the communication system support the scenarios that require retransmissions, or require a plurality of transmissions carried out at the same time, or require a plurality of redundancy versions of codes. And the method may also reduce decoder complexity in high-throughput communications scenarios, and improve performance in cases with multiple transmissions.
[0010] In some implements of the method, values of elements in the plurality of reliability ordered sequences are greater than zero.
[0011] In some embodiments, values of elements in the plurality of reliability ordered sequences may be greater than zero, and elements in the plurality of reliability ordered sequences may ordered by reliability. In some embodiments, values of elements in the plurality of reliability ordered sequences may also be not less than zero. A value range of elements in the plurality of reliability ordered sequences is very flexible. In the embodiments of the disclosure, no specific limitation is imposed on the value range of elements in the plurality of reliability ordered sequences.
[0012] In some implements of the method, determining a plurality of reliability ordered sequences, comprises: determining the plurality of reliability ordered sequences by selecting a plurality of elements from a reference reliability sequence.
[0013] In some embodiments, the plurality of reliability ordered sequences may be obtained by extracting some elements from the reference reliability sequence, which may be very flexible and convenient in determining the plurality of reliability ordered sequences.
[0014] In some implements of the method, a length of the reference reliability sequence is less than or equal to a maximum mother code length.
[0015] In some embodiments, the length of the reference reliability sequence refers to a number of elements of the reference reliability sequence, or a quantity of elements of the reference reliability sequence. The length of the reference reliability sequence may be limited by the maximum mother code length and the length of the reference reliability sequence may be any value less than the maximum code length. So, it is flexible to determine the length of the reference reliability sequence by selecting a value less than or equal to the maximum mother code length.
[0016] In some implements of the method, elements in the reference reliability sequence and each of the plurality of reliability ordered sequences are in an ascending order that is regard with reliability.
[0017] In some embodiments, elements in the reference reliability sequence and each of the plurality of reliability ordered sequences may also be in a descending order that is regard with reliability. In some embodiments, the order of elements in the reference reliability sequence and each of the plurality of reliability ordered sequences may be different. In the embodiments of the disclosure, no specific limitation is imposed on the order of elements in the reference reliability sequence and each of the plurality of reliability ordered sequences.
[0018] In some implements of the method, values of elements in a first number sequence of the plurality of reliability ordered sequences are not less than a first integer, and not greater than a second integer, and both of the first integer and the second integer are not less than zero and not greater than the length of the reference reliability sequence.
[0019] In some embodiments, the first number sequence refers to the second (shorter) sequence. Methods of obtaining values of elements in the first number sequence of the plurality of reliability ordered sequences may be very flexible to obtain different elements of the first number sequence, which may be applicable in different scenarios during the transmissions.
[0020] In some implements of the method, the first integer and the second integer are related to at least one of the followings: a length of the first number sequence, and the length of the reference reliability sequence.
[0021] In some implements of the method, the first integer is equal to a length of the first number sequence, and the second integer is equal to twice the length of the first number sequence.
[0022] In some embodiments, the range of values of elements may be any one in [0, the length of the reference reliability sequence] . Then flexible extraction method of elements of the plurality of reliability ordered sequences may be applicable in lots of scenarios that require a plurality of retransmissions or a plurality of redundancy versions of codes, which may help the communication system support the scenarios.
[0023] In some implements of the method, the first integer is equal to a difference between the length of the reference reliability sequence and a length of the first number sequence, and the second integer is equal to the length of the reference reliability sequence.
[0024] In some embodiments, flexible extraction method of elements of the plurality of reliability ordered sequences may be applicable in lots of scenarios that require a plurality of retransmissions or a plurality of redundancy versions of codes, which may help the communication system support the scenarios.
[0025] In some implements of the method, the first integer is equal to half of the length of the reference reliability sequence, and the second integer is equal to the length of the reference reliability sequence.
[0026] In some embodiments, flexible extraction method of elements of the plurality of reliability ordered sequences may help the communication system support different scenarios.
[0027] In some implements of the method, a remainder of a value of an element of a second number sequence of the plurality of reliability ordered sequences and a third integer is a fourth integer.
[0028] In some embodiments, the second number sequence refers to the second (shorter) sequence. The modulo operation may be performed between the value of the elements of the second number sequence and an integer, and the remainder is also an integer. Then extraction may be operated in the reference reliability sequence with the method of the modulo operation to obtained flexible elements of the plurality of reliability ordered sequences.
[0029] In some implements of the method, both the third integer and the fourth integer are related to at least one of the followings: a length of the second number sequence, and a length of the reference reliability sequence.
[0030] In some implements of the method, the third integer is equal to 2m, m is a positive integer, and the fourth integer is zero.
[0031] In the embodiments, methods of extraction of elements of the second number sequence may be selecting even elements from the reference reliability sequence. Flexible extraction of elements of the second number sequence may be applicable in different scenarios.
[0032] In some implements of the method, the third integer is equal to 2n, n is a positive integer, and the fourth integer is a difference of 2p and one, p is a positive integer.
[0033] In the embodiments, methods of extraction of elements of the second number sequence may be selecting odd elements from the reference reliability sequence. Flexible extraction of elements of the second number sequence may be applicable in different scenarios.
[0034] In some implements of the method, a value of an element in a third sequence of the plurality of reliability ordered sequences is equal to a difference between a value of an element in a fourth sequence of the plurality of reliability ordered sequences and a fifth integer.
[0035] In some embodiments, the third sequence and the fourth sequence refer to the second (shorter) sequence. In some embodiments, elements of a sequence in the plurality of reliability ordered sequences may be obtained by operating an arithmetic operation on elements of another sequence in the plurality of reliability ordered sequences. Then it is possible to obtain a sequence in the plurality of reliability ordered sequences from another sequence in the plurality of reliability ordered sequences.
[0036] In some implements of the method, the fifth integer is related to at least one of the followings: a length of the third sequence, a length of the fourth sequence and the length of the reference reliability sequence.
[0037] In some implements of the method, a value of an element in a fifth sequence of the plurality of reliability ordered sequences is equal to a quotient between a value of an element in a sixth sequence of the plurality of reliability ordered sequences and a sixth integer.
[0038] The fifth sequence and the sixth sequence refer to the second (shorter) sequence. In some embodiments, it is flexible to obtain a sequence in the plurality of reliability ordered sequences from another sequence in the plurality of reliability ordered sequences, which may be helpful to obtain the plurality of reliability ordered sequences.
[0039] In some implements of the method, the sixth integer is related to at least one of the followings: a length of the fifth sequence, and the length of the reference reliability sequence.
[0040] In some implements of the method, the sixth integer is equal to 2q, q is a positive integer.
[0041] In some implements of the method, values of elements in a seventh sequence of the plurality of reliability ordered sequences are not less than a seventh integer, and not greater than an eighth integer, ranges of values of both the seventh integer and the eighth integer are not less than zero and not greater than the length of the reference reliability sequence, and the first integer is different from the seventh integer, and the second integer is different from the eighth integer.
[0042] In some embodiments, the seventh sequence refers to the second (shorter) sequence. Values range of elements of one sequence of the plurality of reliability ordered sequences may be different from values range of elements of another sequence of the plurality of reliability ordered sequences. In the embodiments of the disclosure, no specific limitation is imposed on values range of elements of the plurality of reliability ordered sequences. The flexible method may be applicable in different scenarios.
[0043] In some implements of the method, the seventh integer and the eighth integer are related to at least one of the followings: a length of the seventh sequence, and the length of the reference reliability sequence.
[0044] In some implements of the method, encoding a plurality of information bits based on the plurality of reliability ordered sequences to obtain a plurality of code words, comprises: determining an information bit set of each of the plurality of reliability ordered sequences according to the plurality of information bits and the plurality of reliability ordered sequences; encoding the plurality of information bits based on the information bit set of each of the plurality of reliability ordered sequences to obtain a plurality of code words.
[0045] In some embodiments, after determination of the plurality of reliability ordered sequences, a plurality of information bit sets may be obtained correspond to each of the plurality of reliability ordered sequences. Therefore, the plurality of information bits may be encoded, which may be useful in different scenarios that require different transmission or different redundancy version of codes.
[0046] In some implements of the method, further comprising: determining a parity check bit set of each of the plurality of reliability ordered sequences according to a minimum Hamming weight.
[0047] In some embodiments, parity check bit sets may be used in encoding, which may improve the encoding performance.
[0048] One or more embodiments are related to a method. The method comprising: obtaining a plurality of code words, the plurality of code words correspond to the plurality of reliability ordered sequences; decoding the plurality of code words to obtain a plurality of sequences, and the plurality of sequences correspond to a plurality of information bits.
[0049] In some embodiments, the plurality of code words correspond to the plurality of reliability ordered sequences may be decoded, which may be applicable in scenarios of different transmission or different redundancy version of codes and improve performance in cases with multiple transmissions.
[0050] In some implements of the method, values of elements in the plurality of reliability ordered sequences are greater than a non-zero integer.
[0051] In some implements of the method, the plurality of reliability ordered sequences are determined by selecting a plurality of elements from a reference reliability sequence.
[0052] In some implements of the method, a length of the reference reliability sequences is less than or equal to a maximum mother code length.
[0053] In some implements of the method, elements in the reference reliability sequence and each of the plurality of reliability ordered sequences are in an ascending order that is regard with reliability.
[0054] In some implements of the method, values of elements in a first number sequence of the plurality of reliability ordered sequences are not less than a first integer, and not greater than a second integer, and both of the first integer and the second integer are not less than zero and not greater than the length of the reference reliability sequence.
[0055] In some implements of the method, the first integer and the second integer are related to at least one of the followings: a length of the first number sequence, and the length of the reference reliability sequence.
[0056] In some implements of the method, the first integer is equal to a length of the first number sequence, and the second integer is equal to twice the length of the first number sequence.
[0057] In some implements of the method, the first integer is equal to a difference between the length of the reference reliability sequence and a length of the first number sequence, and the second integer is equal to the length of the reference reliability sequence.
[0058] In some implements of the method, the first integer is equal to half of the length of the reference reliability sequence, and the second integer is equal to the length of the reference reliability sequence.
[0059] In some implements of the method, a remainder of a value of an element of a second number sequence of the plurality of reliability ordered sequences and a third integer is a fourth integer.
[0060] In some implements of the method, both the third integer and the fourth integer are related to at least one of the followings: a length of the second number sequence, and a length of the reference reliability sequence.
[0061] In some implements of the method, the third integer is a first power-of-2 integer, and the fourth integer is zero.
[0062] In some implements of the method, the third integer is a second power-of-2 integer, and the fourth integer is a difference between a third power-of-2 integer and one.
[0063] In some implements of the method, a value of an element of a third sequence of the plurality of reliability ordered sequences is equal to a difference between a value of an element of a fourth sequence of the plurality of reliability ordered sequences and a fifth integer.
[0064] In some implements of the method, the fifth integer is related to at least one of the followings: a length of the third sequence, a length of the fourth sequence and the length of the reference reliability sequence.
[0065] In some implements of the method, a value of an element in a fifth sequence of the plurality of reliability ordered sequences is equal to a quotient between an element of a sixth sequence of the plurality of reliability ordered sequences and a sixth integer.
[0066] In some implements of the method, the sixth integer is related to at least one of the followings: a length of the fifth sequence, a length of the sixth sequence and the length of the reference reliability sequence.
[0067] In some implements of the method, values of elements in a sixth sequence of the plurality of reliability ordered sequences are not less than a seventh integer, and not greater than an eighth integer, ranges of values of both the seventh integer and the eighth integer are not less than zero and not greater than the length of the reference reliability sequence, and the first integer is different from the seventh integer, and the second integer is different from the eighth integer.
[0068] In some implements of the method, the seventh integer and the eighth integer are related to at least one of the followings: a length of the sixth sequence, and the length of the reference reliability sequence.
[0069] One or more embodiments can include an apparatus, the apparatus comprises a function or unit configured to cause the apparatus to perform the methods of the present disclosure.
[0070] One or more embodiments can include an apparatus, and the apparatus comprising a processor configured to cause the apparatus to perform the methods of the present disclosure.
[0071] One or more embodiments can include an apparatus, the apparatus comprising: at least one processor executing instructions stored in a memory to implement the methods of the present disclosure. The apparatus may be a user equipment, a base station, a communication module in the user equipment, or the base station, or a chip / chipset system in the user equipment or a base station.
[0072] One or more embodiments can include a computer program comprising instructions, the instructions, when executed by a processor, may cause the processor to implement the methods of the present disclosure.
[0073] One or more embodiments can include a non-transitory computer-readable medium storing programming, the programming, when executed by a processor, may cause the processor to implement the methods of the present disclosure.
[0074] The present disclosure encompasses these and other aspects or embodiments.BRIEF DESCRIPTION OF THE DRAWINGS
[0075] For a more complete understanding of the present embodiments, and the advantages thereof, reference is now made, by way of example, to the following descriptions taken in conjunction with the accompanying drawings.
[0076] Fig. 1 is a simplified schematic illustration of a communication system.
[0077] Fig. 2 is a block diagram illustration of the example communication system in Fig. 1.
[0078] Fig. 3 illustrates an example electronic device and examples of base stations.
[0079] Fig. 4 illustrates units or modules in a device.
[0080] Fig. 5 is a trellis graph illustrating an example of a polar code.
[0081] Fig. 6 is a table of sub-block interleaver pattern.
[0082] Fig. 7 is a diagram illustrating puncturing and shortening with a cyclic buffer.
[0083] Fig. 8 is a diagram illustration of an example of the encoding process for 4 transmissions.
[0084] Fig. 9 is a diagram illustration of an example of the encoding process of the initial transmission.
[0085] Fig. 10 is a diagram illustration of an example of the encoding process of the first retransmission.
[0086] Fig. 11 is a block diagram illustration of an example of a polar transform matrix of three transmissions.
[0087] Fig. 12 is a flow schematic illustration of an example of an encoding method.
[0088] Fig. 13 is a flow schematic illustration of an example of an decoding method.
[0089] Fig. 14 is a block diagram illustration of an example of the process of polar codes construction and encoding.DETAILED DESCRIPTION
[0090] For illustrative purposes, specific example embodiments will now be explained in greater detail in conjunction with the figures.
[0091] The embodiments set forth herein represent information sufficient to practice the claimed subject matter and illustrate ways of practicing such subject matter. Upon reading the following description in light of the accompanying figures, those of skill in the art will understand the concepts of the claimed subject matter and will recognize applications of these concepts not particularly addressed herein. In some embodiments these concepts and applications fall within the scope of the disclosure and the accompanying claims.
[0092] Reference may be made, above and / or elsewhere herein, to particular examples (such as “the method” ) that have or provide certain features. It should be appreciated that these are example only, and such features need not necessarily be provided in all examples or embodiments, or may be provided in other examples or embodiments.
[0093] Although embodiments of methods of flexible nested reliability sequence extraction in the present disclosure may illustrate by taking polar codes as examples, these methods may be applicable for other codes. For example, these methods of flexible nested reliability sequence extraction in the present disclosure may be applicable for low density parity check (LDPC) codes, turbo codes, reed muller (RM) codes, convolutional codes, product codes, etc. In some embodiments of the disclosure, no specific limitation is imposed on the type of codes.
[0094] For example, methods of flexible nested reliability sequence extraction for polar codes may reduce decoder complexity in high-throughput communications scenarios, and improve performance in cases with multiple transmissions, such as incremental-redundancy hybrid automatic repeat request (IR-HARQ) .
[0095] And Methods of flexible nested reliability sequence extraction for LDPC codes may reduce buffer size for terminals with limited buffer size and lower device capability.
[0096] In methods of flexible nested reliability sequence extraction for Turbo codes, flexible extraction of nested reliability sequences may be determined for different communication scenarios, such as internet of things (IoT) devices that requires shorter code length.
[0097] And methods of flexible nested reliability sequence extraction for Convolutional codes may provide flexible reliability sequences (in the form of constraint length) , which may result in a good tradeoff between decoding complexity and performance.
[0098] In methods of flexible nested reliability sequence extraction for RM codes, flexible nested reliability sequences are provided, which may further enhance the coding gain of very short codes (with short block length) .
[0099] In methods of flexible nested reliability sequence extraction for Product codes, flexible extraction of nested reliability sequences for the component codes in a product code may enable a flexible tradeoff between encoding / decoding parallelism and coding gain.
[0100] The background of methods of the determination of mother code length provided in some embodiments of the present disclosure is explained below.
[0101] In wireless communications, channel quality is constantly changing due to the fading effects at both fast and slow scale. Accordingly, channel coding has always been designed to adapt to the channel states. Modulation coding scheme (MCS) adaptation is a powerful method to combat varying channel states, in which the modulation order and code length and coding rate can be changed in real time. Therefore, it requires that a channel coding scheme can flexibly change the code length and code rate in a fine-grained way, and at the same time achieve good error correction performance in all possible configurations. This fine-grained flexibility of channel codes is one of the most challenging problems for engineers in this domain.
[0102] At the same time, the complexity of both encoding and decoding algorithms needs to be sufficiently low. In hardware, complexity can be evaluated through measuring chip area and energy efficiency. They are related to algorithmic complexity, but are more closely related to hardware cost and battery life. Therefore, there exists a desire to reduce implementation complexity when designing coding schemes.
[0103] Future communication systems, such as 6G systems, may aim to support several challenging scenarios, including for example immersive communication, massive communication, and hyper reliable and low-latency communication. The key performance indicators (KPIs) that are related to channel coding include coding gain, reliability, throughput, latency and their tradeoffs. For example, the throughput target of 6G may reach above 1 Tbps, and the energy efficiency target may decrease to 1 pJ / bit. Meanwhile, a coding scheme supporting flexible rate matching and IR-HARQ schemes is also beneficial. Accordingly, it is desirable yet challenging to design a code ensemble to fulfill all these KPIs and capabilities.
[0104] Referring to Fig. 1, as an illustrative example without limitation, a simplified schematic illustration of a communication system is provided. The communication system 100 comprises a radio access network 120. The radio access network 120 may be a next generation (e.g. sixth generation (6G) or later) radio access network, or a legacy (e.g. 5G, 4G, 3G or 2G) radio access network. 5G refers to 5th generation, 4G refers to 4th generation, 3G refers to 3th generation, 2G refers to 2th generation. Legacy wireless technology may also include 2nd generation (2G) . One or more communication electronic devices (ED) 110a, 110b, 110c, 110d, 110e, 110f, 110g, 110h, 110i, 110j (generically referred to as 110) may be interconnected to one another or connected to one or more network nodes (170a, 170b, generically referred to as 170) in the radio access network 120. A core network 130 may be a part of the communication system and may be dependent or independent of the radio access technology used in the communication system 100. Also, the communication system 100 comprises a public switched telephone network (PSTN) 140, the internet 150, and other networks 160.
[0105] Fig. 2 illustrates an example communication system 100. In general, the communication system 100 enables multiple wireless or wired elements to communicate 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, groupcast, unicast, etc. The communication system 100 may operate by sharing resources, such as carrier spectrum bandwidth, between its constituent elements. The communication system 100 may include a terrestrial communication system and / or a non-terrestrial communication system. The communication system 100 may 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, etc. . The communication system 100 may provide a high degree of availability and robustness through a joint operation of a terrestrial communication system and a non-terrestrial communication system. For example, integrating a non-terrestrial communication system, or components thereof into a terrestrial communication system can result in what may be considered a heterogeneous network comprising multiple layers. Compared to conventional communication networks, the heterogeneous network may achieve better overall performance through efficient multi-link joint operation, more flexible functionality sharing, and faster physical layer link switching between terrestrial networks and non-terrestrial networks.
[0106] The terrestrial communication system and the non-terrestrial communication system could be considered sub-systems of the communication system. In the example shown in Fig. 2, the communication system 100 includes electronic devices (ED) 110a, 110b, 110c, 110d (generically referred to as ED 110) , radio access networks (RANs) 120a, 120b, a non-terrestrial communication network 120c, a core network 130, a PSTN 140, the Internet 150, and other networks 160. The RANs 120a, 120b include respective base stations (BSs) 170a, 170b, which may be generically referred to as terrestrial transmit and receive points (T-TRPs) 170a, 170b. The non-terrestrial communication network 120c includes an access node 172, which may be generically referred to as a non-terrestrial transmit and receive point (NT-TRP) 172.
[0107] Any ED 110 may be alternatively or additionally configured to interface, access, or communicate with any T-TRP 170a, 170b and NT-TRP 172, the Internet 150, the core network 130, the PSTN 140, the other networks 160, or any combination of the preceding. In some examples, ED 110a may communicate an uplink and / or downlink transmission over a terrestrial air interface 190a with T-TRP 170a. In some examples, the EDs 110a, 110b, 110c, and 110d may also communicate directly with one another via one or more sidelink air interfaces 190b. In some examples, ED 110d may communicate an uplink and / or downlink transmission over a non-terrestrial air interface 190c with NT-TRP 172.
[0108] The air interfaces 190a and 190b may use similar communication technology, such as any suitable radio access technology. For example, the communication system 100 may implement one or more channel access methods, 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) in the air interfaces 190a and 190b. The air interfaces 190a and 190b may utilize other higher dimension signal spaces, which may involve a combination of orthogonal and / or non-orthogonal dimensions.
[0109] The non-terrestrial air interface 190c can enable communication between the ED 110d and one or multiple NT-TRPs 172 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 between a group of EDs 110 and one or multiple NT-TRPs 172 for multicast transmission.
[0110] The RANs 120a and 120b are in communication with the core network 130 to provide the EDs 110a 110b, and 110c with various services such as voice, data, and other services. The RANs 120a and 120b and / or the core network 130 may be in direct or indirect communication 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 employ the same radio access technology as RAN 120a, RAN 120b or both. The core network 130 may also serve as a gateway access between (i) the RANs 120a and 120b or EDs 110a 110b, and 110c or both, and (ii) other networks (such as the PSTN 140, the Internet 150, and the other networks 160) . In addition, some or all of the EDs 110a 110b, and 110c may include functionality for communicating with different wireless networks over different wireless links using different wireless technologies and / or protocols. Instead of wireless communication (or in addition thereto) , the EDs 110a 110b, and 110c may communicate via wired communication channels to a service provider or switch (not shown) , and to the Internet 150. PSTN 140 may include circuit switched telephone networks for providing plain old telephone service (POTS) . Internet 150 may include a network of computers and subnets (intranets) or both, and incorporate protocols, such as internet protocol (IP) , transmission control protocol (TCP) , user datagram protocol (UDP) . EDs 110a 110b, and 110c may be multimode devices capable of operation according to multiple radio access technologies, and incorporate multiple transceivers necessary to support such.
[0111] Fig. 3 illustrates another example of an ED 110 and a base station 170a, 170b and / or 170c. The ED 110 is used to connect persons, objects, machines, etc. The ED 110 may be widely used in various scenarios including, for example, cellular communications, 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 twin, industrial control, self-driving, remote medical, smart grid, smart furniture, smart office, smart wearable, smart transportation, smart city, drones, robots, remote sensing, passive sensing, positioning, navigation and tracking, autonomous delivery and mobility, etc.
[0112] Each ED 110 represents any suitable end user device for wireless operation and may include such devices (or may be referred to) as a user equipment / device (UE) , a wireless transmit / receive unit (WTRU) , a mobile station, a fixed or mobile subscriber unit, a cellular telephone, a station (STA) , a machine type communication (MTC) device, a personal digital assistant (PDA) , a smartphone, a laptop, a computer, a tablet, a wireless sensor, a consumer electronics device, a smart book, a vehicle, a car, a truck, a bus, a train, or an IoT device, wearable devices (such as a watch, a pair of glasses, head mounted equipment, etc. ) , an industrial device, or an apparatus in (e.g. communication module, modem, or chip) or comprising the forgoing devices, among other possibilities. Future generation EDs 110 may be referred to using other terms. The base station 170a and 170b is a T-TRP and will hereafter be referred to as T-TRP 170. Also shown in Fig. 3, a NT-TRP will hereafter be referred to as NT-TRP 172. Each ED 110 connected to T-TRP 170 and / or NT-TRP 172 can 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 of more of: connection availability and connection necessity.
[0113] The ED 110 includes a transmitter 201 and a receiver 203 coupled to one or more antennas 204. Only one antenna 204 is illustrated to avoid congestion in the drawing. One, some, or all of the antennas 204 may alternatively be panels. The transmitter 201 and the receiver 203 may be integrated, e.g. as a transceiver. The transceiver is configured to modulate data or other content for transmission by at least one antenna 204 or network interface controller (NIC) . The transceiver is also configured to demodulate data or other content received by the at least one antenna 204. Each transceiver includes any suitable structure for generating signals for wireless or wired transmission and / or processing signals received wirelessly or by wire. Each antenna 204 includes any suitable structure for transmitting and / or receiving wireless or wired signals.
[0114] The ED 110 includes at least one memory 208. The memory 208 stores instructions and data used, generated, or collected by the ED 110. For example, the memory 208 could store software instructions or modules configured to implement some or all of the functionality and / or embodiments described herein and that are executed by one or more processing unit (s) (e.g., a processor 210) . Each memory 208 includes any suitable volatile and / or non-volatile storage and retrieval device (s) . Any suitable type of memory may be used, such as random-access memory (RAM) , read only memory (ROM) , hard disk, optical disc, subscriber identity module (SIM) card, memory stick, secure digital (SD) memory card, on-processor cache, and the like.
[0115] The ED 110 may further include one or more input / output devices (not shown) or interfaces (such as a wired interface to the Internet 150 in Fig. 1) . The input / output devices or interfaces permit interaction with a user or other devices in the network. Each input / output device or interface includes any suitable structure for providing information to or receiving information from a user, and / or for network interface communications. Suitable structures include, for example, a speaker, a microphone, a keypad, a keyboard, a display, a touch screen, etc.
[0116] The ED 110 includes the processor 210 for performing operations including those operations relate to preparing a transmission for uplink transmission to the NT-TRP 172 and / or the T-TRP 170; those operations relate to processing downlink transmissions received from the NT-TRP 172 and / or the T-TRP 170; and those operations relate to processing sidelink transmission to and from another ED 110. Processing operations relate to preparing a transmission for uplink transmission may include operations such as encoding, modulating, transmit beamforming, and generating symbols for transmission. Processing operations relate to processing downlink transmissions may include operations such as receive beamforming, demodulating and decoding received symbols. Depending upon the embodiment, a downlink transmission may be received by the receiver 203, possibly using receive beamforming, and the processor 210 may extract signaling from the downlink transmission (e.g. by detecting and / or decoding the signaling) . An example of signaling may be a reference signal transmitted by the NT-TRP 172 and / or by the T-TRP 170. In some embodiments, the processor 210 implements the transmit beamforming and / or the receive beamforming based on the indication of beam direction, e.g. beam angle information (BAI) , received from the T-TRP 170. In some embodiments, the processor 210 may perform operations relating to network access (e.g. initial access) and / or downlink synchronization, such as operations relating to detecting a synchronization sequence, decoding and obtaining the system information, etc. In some embodiments, the processor 210 may perform channel estimation, e.g. using a reference signal received from the NT-TRP 172 and / or from the T-TRP 170.
[0117] Although not illustrated, the processor 210 may form part of the transmitter 201 and / or part of the receiver 203. Although not illustrated, the memory 208 may form part of the processor 210.
[0118] The processor 210, the processing components of the transmitter 201, and the processing components of the receiver 203 may each be implemented by the same or different one or more processors that are configured to execute instructions stored in a memory (e.g. in the memory 208) . Alternatively, some or all of the processor 210, the processing components of the transmitter 201, and the processing components of the receiver 203 may each be implemented using dedicated circuitry, such as a programmed field-programmable gate array (FPGA) , an application-specific integrated circuit (ASIC) , or a hardware accelerator such as a graphics processing unit (GPU) or an artificial intelligence (AI) accelerator.
[0119] In some embodiments, the ED110 could be replaced with an apparatus in the ED110 (The apparatus, for example, is a communication module, a modem, a chip, or a chipset in side theED110) . It includes at least one processor, and an interface or at least one pin. In this scenario, the transmitter 201 and receiver 203 may be replaced by the interface or at least one pin, wherein the interface or at least one pin is to connect the apparatus (e.g., chip) and other apparatus (e.g., chip, memory, or bus) . Accordingly, the transmitting information to T-TRP170 or NT-TRP 172 may be referred as transmitting information to the interface or at least one pin, and receiving information from T-TRP170 or NT-TRP 172 may be referred as receiving information from the interface or at least one pin. The information may include control signaling and / or data.
[0120] The T-TRP 170 may be known by other names in some implementations, such as a base station, a base transceiver station (BTS) , a radio base station, a network node, a network device, a device on the network side, a transmit / receive node, a Node B, an evolved NodeB (eNodeB or eNB) , a Home eNodeB, a next Generation NodeB (gNB) , a transmission point (TP) , a site controller, an access point (AP) , a wireless router, a relay station, a terrestrial node, a terrestrial network device, a terrestrial base station, a base band unit (BBU) , a remote radio unit (RRU) , an active antenna unit (AAU) , a remote radio head (RRH) , a central unit (CU) , a distributed unit (DU) , a positioning node, among other possibilities. The T-TRP 170 may be a macro-BS, a pico BS, a relay node, a donor node, or the like, or combinations thereof. The T-TRP 170 may refer to the forgoing devices or refer to apparatus in the forgoing devices.
[0121] In some embodiments, the parts of the T-TRP 170 may be distributed. For example, some of the modules of the T-TRP 170 may be located remote from the equipment that houses the antennas 256 for the T-TRP 170, and may be coupled to the equipment that houses the antennas 256 over a communication link (not shown) sometimes known as front haul, such as common public radio interface (CPRI) . 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 the ED 110, resource allocation (scheduling) , message generation, and encoding / decoding, and that are not necessarily part of the equipment that houses the antennas 256 of the T-TRP 170. The modules may also be coupled to other T-TRPs. In some embodiments, the T-TRP 170 may actually be a plurality of T-TRPs that are operating together to serve the ED 110, e.g. through the use of coordinated multipoint transmissions.
[0122] The 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 illustrated to avoid congestion in the drawing. One, some, or all of the antennas 256 may alternatively be panels. The transmitter 252 and the receiver 254 may be integrated as a transceiver. The T-TRP 170 further includes a processor 260 for performing operations including those related to: preparing a transmission for downlink transmission to the ED 110, processing an uplink transmission received from the ED 110, preparing a transmission for backhaul transmission to the NT-TRP 172, and processing a transmission received over backhaul from the NT-TRP 172. Processing operations relate to preparing a transmission for downlink or backhaul transmission may include operations such as encoding, modulating, precoding (e.g. multiple input multiple output (MIMO) precoding) , transmit beamforming, and generating symbols for transmission. Processing operations relate to processing received transmissions in the uplink or over backhaul may include operations such as receive beamforming, demodulating received symbols, and decoding received symbols. The processor 260 may also perform operations relating to network access (e.g. initial access) and / or downlink synchronization, such as generating the content of synchronization signal blocks (SSBs) , generating the system information, etc. In some embodiments, the processor 260 also generates an indication of beam direction, e.g. BAI, which may be scheduled for transmission by a scheduler 253. The processor 260 performs other network-side processing operations described herein, such as determining the location of the ED 110, determining where to deploy the NT-TRP 172, etc.
[0123] In some embodiments, the processor 260 may generate signaling, e.g. to configure one or more parameters of the ED 110 and / or one or more parameters of the NT-TRP 172. Any signaling generated by the processor 260 is sent by the transmitter 252. Note that “signaling” , as used herein, may alternatively be called 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 known as dynamic signaling. Signaling transmitted in a downlink physical layer control channel may be known as downlink control information (DCI) . Signaling transmitted in an uplink physical layer control channel may be known as uplink control information (UCI) . Signaling transmitted in a sidelink physical layer control channel may be known as Sidelink Control Information (SCI) . Signaling may be included in a higher-layer (e.g., higher than physical layer) packet transmitted in a physical layer data channel, e.g. in a physical downlink shared channel (PDSCH) , in which case the signaling may be known as higher-layer signaling, static signaling, or semi-static signaling. Higher-layer signaling may also refer to radio resource control (RRC) protocol signaling or media access control –control element (MAC-CE) signaling.
[0124] The scheduler 253 may be coupled to the processor 260. The scheduler 253 may be included within or operated separately from the T-TRP 170. The scheduler 253 may schedule uplink, downlink, sidelink, and / or backhaul transmissions, including issuing scheduling grants and / or configuring scheduling-free (e.g., “configured grant” ) resources. The T-TRP 170 further includes a memory 258 for storing information and data. The memory 258 stores instructions and data used, generated, or collected by the T-TRP 170. For example, the memory 258 could store software instructions or modules configured to implement some or all of the functionality and / or embodiments described herein and that are executed by the processor 260.
[0125] Although not illustrated, the processor 260 may form part of the transmitter 252 and / or part of the receiver 254. Also, although not illustrated, the processor 260 may implement the scheduler 253. Although not illustrated, the memory 258 may form part of the processor 260.
[0126] The processor 260, the scheduler 253, the processing components of the transmitter 252, and the processing components of the receiver 254 may each be implemented by the same or different one or more processors that are configured to execute instructions stored in a memory, e.g. in the memory 258. Alternatively, some or all of the processor 260, the scheduler 253, the processing components of the transmitter 252, and the processing components of the receiver 254 may be implemented using dedicated circuitry, such as a programmed FPGA, a hardware accelerator (e.g., a GPU or AI accelerator) , or an ASIC.
[0127] In some embodiments, the T-TRP 170 could be replaced with an apparatus in the T-TRP (The apparatus, for example, is a communication module, a modem, a chip, or a chipset inside the T-TRP) . It includes at least one processor, and an interface or at least one pin. In this scenario, the transmitter 252 and receiver 254 may be replaced by the interface or at least one pin, wherein the interface or at least one pin is to connect the apparatus (e.g., chip) and other apparatus (e.g., chip, memory, or bus) . Accordingly, the transmitting information to ED 110 may be referred as transmitting information to the interface or at least one pin, and receiving information from the ED 110 may be referred as receiving information from the interface or at least one pin. The information may include control signaling and / or data.
[0128] Although the NT-TRP 172 is illustrated as a drone only as an example, the NT-TRP 172 may be implemented in any suitable non-terrestrial form, such as satellites and high-altitude platforms, including international mobile telecommunication base stations and unmanned aerial vehicles, for example. Also, 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 illustrated to avoid congestion in the drawing. One, some, or all of the antennas may alternatively be panels. The transmitter 272 and the receiver 274 may be integrated as a transceiver. The NT-TRP 172 further includes a processor 276 for performing operations including those relate to: preparing a transmission for downlink transmission to the ED 110s, processing an uplink transmission received from the ED 110s, preparing a transmission for backhaul transmission to T-TRP 170, and processing a transmission received over backhaul from the T-TRP 170. Processing operations relate to preparing a transmission for downlink or backhaul transmission may include operations such as encoding, modulating, precoding (e.g. MIMO precoding) , transmit beamforming, and generating symbols for transmission. Processing operations relate to processing received transmissions in the uplink or over backhaul may include operations such as receive beamforming, demodulating received symbols, and decoding received symbols. In some embodiments, the processor 276 implements the transmit beamforming and / or receive beamforming based on beam direction information (e.g. BAI) received from the T-TRP 170. In some embodiments, the processor 276 may generate signaling, e.g. to configure one or more parameters of the ED 110. In some embodiments, the NT-TRP 172 implements physical layer processing, but does not implement higher layer functions such as functions at the medium access control (MAC) or radio link control (RLC) layer. As this is only an example, more generally, the NT-TRP 172 may implement higher layer functions in addition to physical layer processing.
[0129] The NT-TRP 172 further includes a memory 278 for storing information and data. Although not illustrated, the processor 276 may form part of the transmitter 272 and / or part of the receiver 274. Although not illustrated, the memory 278 may form part of the processor 276.
[0130] The processor 276, the processing components of the transmitter 272, and the processing components of the receiver 274 may each be implemented by the same or different one or more processors that are configured to execute instructions stored in a memory, e.g. in the memory 278. Alternatively, some or all of the processor 276, the processing components of the transmitter 272, and the processing components of the receiver 274 may be implemented using dedicated circuitry, such as a programmed FPGA, a hardware accelerator (e.g., a GPU or AI accelerator) , or an ASIC. In some embodiments, the NT-TRP 172 may actually be a plurality of NT-TRPs that are operating together to serve the ED 110, e.g. through coordinated multipoint transmissions.
[0131] The T-TRP 170, the NT-TRP 172, and / or the ED 110 may include other components, but these have been omitted for the sake of clarity.
[0132] One or more steps of the embodiment methods provided herein may be performed by corresponding units or modules, according to Fig. 4. Fig. 4 illustrates units or modules in a device, such as in the ED 110, in the T-TRP 170, or in the NT-TRP 172. For example, a signal may be transmitted or output by a transmitting unit or by a transmitting module. A signal may be received or input by a receiving unit or by a receiving module. A signal may be processed by a processing unit or a processing module. Other steps may be performed by an AI or machine learning (ML) module. The respective units or modules may be implemented using hardware, one or more components or devices that execute software, or a combination thereof. For instance, one or more of the units or modules may be a circuit such as an integrated circuit. Examples of an integrated circuit include a programmed FPGA, a GPU, or an ASIC.
[0133] For instance, one or more of the units or modules may be logical such as a logical function performed by a circuit, by a portion of an integrated circuit, or by software instructions executed by a processor. It will be appreciated that where the modules are implemented using software for execution by a processor for example, the modules may be retrieved by a processor, in whole or part as needed, individually or together for processing, in single or multiple instances, and that the modules themselves may include instructions for further deployment and instantiation.
[0134] While not shown, the transmitting module and the receiving module may be part of, or combined into, a transceiver module. A transceiver module may also be known as an interface module, or simply an interface, for inputting and outputting operations.
[0135] Additional details regarding the EDs 110, the T-TRP 170, and the NT-TRP 172 are known to those of skill in the art. As such, these details are omitted here.
[0136] The channel coding module in communications systems encode K source bits into N code bits to provide error correction capability against adversary channel condition such as noise and interference. The code rate is R=K / N. In practice, the code rate R is selected according to channel quality.
[0137] Polar codes are capacity-achieving codes and thus a great breakthrough in coding theory. As code length approaches infinity, the synthesized channels become either noiseless or pure noise. The synthesized channels that are also known as subchannels are created by or associated with the polar code. The noiseless subchannels are utilized to transport information, and their proportion is proven to achieve the channel capacity defined by Shannon. The above-mentioned channel polarization phenomenon occurs under successive cancellation (SC) or SC-based decoding, which has a relatively low complexity.
[0138] Rate matching is performed after channel encoding, by either puncturing / shortening or repeating some code bits. The purpose of this operation is to obtain a code bit sequence of desired length for transmission over limited channel resources.
[0139] Channel interleaving is applied after channel encoding and rate matching by permuting the code bits. The purpose is to provide stable or superior performance under high-order modulation or in a fading channel.
[0140] HARQ is a mechanism to provide reliable wireless transmission. It combines forward error correction (FEC) and automatic repeat request (ARQ) . In HARQ, the initial transmission is a FEC code word with means (such as cyclic redundancy check (CRC) bits) to support error detection at the receiver. If a decoding error is detected, the receiver will send back a negative acknowledgment (NACK) signaling to inform the transmitter of the error, and request a retransmission. The retransmitted bits can be directly selected from the initially transmitted bits, or incrementally generated code bits which form a longer code word with the initially transmitted bits. The former approach is called chase-combining HARQ (CC-HARQ) and the latter approach is called IR-HARQ. Typically, IR-HARQ outperforms CC-HARQ with the additional coding gain from incremental redundancy.
[0141] Polar codes belong to the class of linear block codes. For a polar code of length N, its generator matrix is GN, and its encoding process is wherein is the binary information vector, is the binary code vector. The N×N binary matrix wherein is the polarization kernel matrix, n=log2 N, and is Kronecker product.
[0142] Typically, there are K information bits to be encoded into N code bits. In some embodiments of the present disclosure, K information bits refer to K source bits. Accordingly, the inequality K<N is given to obtain a code rate R=K / N<1. That implies only part of is used to carry information bits, and the rest are typically called frozen bits. The information bit set or called information set may be denoted by I, and the frozen bit set, or called frozen set may be denoted by F respectively. In some cases, there is an additional parity-check bit set or called PC bit set that is denoted by P. The frozen bits are known (usually all zeros, but may also be other known values or sequences) before decoding, so they do not carry any payload information. The PC bits are parity-check bits generated from a subset of information bits. Therefore, the PC bits are known once the associated information bits are decoded. The decoding of polar codes attempts to recover all information bits.
[0143] The transmitted code length M may not always be the power of 2, i.e., M<N. In practice, puncturing and shortening are used to reduce transmitted code bits from N to M. For convenience, the present disclosure hereinafter refers to N as the mother code length, and M as the code length. In particular, punctured bits are non-transmitted bits unknown to the decoder, but shortened bits are non-transmitted bits known to the decoder, and shortened bits are usually all zeros.
[0144] An example of a polar code with N=8, K=4 is shown in the Fig. 5. Each “butterfly” in Fig. 5 represents a polarization, i.e., In this example, the information set is I= {u4, u6, u7, u8} , and the frozen set is F= {u1, u2, u3, u5} .
[0145] Successive cancellation (SC) is the basic decoding algorithm for polar codes, where all the frozen bits and information bits are decoded sequentially, i.e., bit by bit. The preceding bits are typically always decoded first.
[0146] Successive cancellation list (SCL) is an enhanced decoding algorithm for polar codes, where multiple (e.g., a number L) SC decoding instances are executed. Each instance is called a “decoding path” . When decoding each binary bit, both “0” and “1” branches are extended to each path, creating 2L paths. Then, all 2L paths are compared, where the most likely L paths are kept, and the least likely L paths are discarded or pruned. These path extension and pruning operations are performed during decoding of every information bit, until all information bits are decoded. At last, the most likely path is selected as the decoding output.
[0147] CRC-aided successive cancellation list (CA-SCL) works almost the same as SCL, except that in the last step, the most likely path that passes CRC check is selected as the decoding output.
[0148] Parity-check successive cancellation list (PC-SCL) works almost the same as SCL, except that when decoding parity-check (PC) bits, the parity check value of associated preceding bits is used as the bit decision result. PC bits may be considered a type of bit in addition to frozen bits and information bits.
[0149] Rate-compatible polar coding is a desirable technology for wireless applications. In one example of polar code rate matching, a combination of puncturing, shortening and repetition is used together with a fixed reliability sequence to balance performance and complexity. In particular, subblock-wise interlacing and interleaving is used for both puncturing and shortening. The puncturing and shortening patterns are symmetric.
[0150] With mother code length N, and the transmitted code length M, the specific rate matching scheme used is Repetition, when M>N; Puncturing, when K / M≤7 / 16; Shortening, when K / M>7 / 16;
[0151] A subblock-wise interleaving is performed before puncturing and shortening. The interleaver partitions the length-N mother code into 32 subblocks of size N / 32 and interlaces them. An example interleaver scheme is shown in Fig. 6, which is reproduced from a 3GPP standard specification.
[0152] Since puncturing is performed from the 1st code bit of a code word, and shortening is performed from the last code bit, the rate matching module is efficiently implemented through a cyclic buffer. And a code word also refers to a code bit, a coded bit, or an encoded bit. All mother code bits are placed in the cyclic buffer, and puncturing is done by selecting the bits in clockwise order, and shortening is done by selecting bits in counter-clockwise order.
[0153] Fig. 7 is a diagram illustrating puncturing and shortening with a cyclic buffer. At 602 in Fig. 7, code bits of a code word are illustrated in a vertical column, with punctured and shortened bits as shown. At 604, Fig. 7 illustrates a cyclic buffer, represented by a circle shape, and reading of code bits with no puncturing or shortening. The next two circles illustrate, respectively, cyclic buffers with dashed lines representing puncturing from the beginning of the buffer at 606 and shortening from the end of the buffer at 608.
[0154] Another polar code rate matching example involves an incremental freezing HARQ method, wherein transmissions of multiple short code words are supported. As more short codes are transmitted, the overall code length increases, and the overall code rate decreases.
[0155] In the first transmission, an (M1, K) polar code is constructed, encoded and transmitted. M1 is the first transmitted code length, K is the number of the first transmitted information bits. The first code rate is R1=K / M1. Usually, the code rate is determined such that R1<C1, wherein C1 is the channel capacity of the first transmission. But in the case of faded channel or inaccurate channel estimation, there may be the inequality R1>C1, and decoding will fail and a second transmission is required.
[0156] In the second transmission, K2 least reliable information bits are selected from the K information bits in the first transmission. In practice, K2 is chosen according to the estimated channel capacity of the second transmission. An (M2, K2) polar code is constructed accordingly and encoded and transmitted. M2 is the second transmitted code length, K2 is the number of the second transmitted information bits. However, if R2>C2, and decoding will fail again and a third transmission is required. The third and fourth transmissions are constructed similarly, and so on.
[0157] At the receiver side, the decoder should always decode the last received code word, because it has the lowest code rate and thus the best chance of successful decoding. After the last transmission is correctly decoded, the corresponding information bits in all previous transmissions become known, and can be decoded as frozen bits with known values. This process is repeated as more code words are decoded, until all K bits in the first transmission is decoded. The term “incremental freezing” refers to the operations to additionally freeze some information bits in the previous transmissions once a later transmitted code word is decoded. Fig. 8 shows an example of the encoding process for 4 transmissions, wherein M1=M2=M3=M4=16, and K1=12, K2=6, K3=4, K4=3. M3 is the third transmitted code length, M4 is the fourth transmitted code length, K3 is the number of the third transmitted information bits, and K4 is the number of the fourth transmitted information bits.
[0158] Parity-check (PC) polar codes may be used to improve the minimum code distance of the original polar codes. Values of PC bits are determined by their preceding information bits, and specifically, binary linear combinations of a subset of preceding information bits. In one proposal of PC polar codes to support IR-HARQ, the PC bits are used to coupling multiple retransmissions into a longer polar code with extra coding gain.
[0159] The PC functions currently used for IR-HARQ are also a special case, wherein some information bits are copied from the initial transmitted code block to a retransmitted code block. This one-to-one parity checking between the two shorter code blocks effectively couples the two code blocks into a longer code block.
[0160] For example, the initial transmission is a (M1=8, K=5) polar code, wherein {u0, u1, u2, u3, u4} is the information set, and {u5, u6, u7} is the frozen set. Its encoding process is shown in Fig. 9. In this example, bit indices are in decreasing order of reliability.
[0161] In the first retransmission, four additional code bits are transmitted. These four bits are coupled with the initially transmitted 8 bits to form a (M2=12, K=5) polar code. The coupling is achieved by copying the value of u4 to u8 during encoding, thus generating a PC function u4 + u8 = 0, or equivalently a PC function u8 = u4. As said, the largest index in this PC function corresponds to the PC bit (here u8) . During decoding, u4 decoded as an information bit, while u8 is decoded as a PC bit using 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 frozen set, the encoding process is shown in Fig. 10.
[0162] In the second retransmission, the remaining four bits c12, c13, c14, c15 are transmitted to form a (M3=16, K=5) polar code. But no new PC bits are generated.
[0163] From the polar transform matrix point of view, the three transmissions with effective code lengths M1=8, M2=12, M3=16, are showed in Fig. 11.
[0164] To facilitate hardware-friendly implementation of polar encoder and decoder, a nested reliability sequence defines the reliability comparisons between any pair of polarized subchannels. Such a standardized or defined method of determining subchannel reliability is very convenient and differs from the other methods that require online or real-time calculation of reliability or error probability for all the polarized subchannels.
[0165] An example of a nested sequence of length 1024 contains all the 1024 subchannel indices (or called bit indices) and associated reliability definitions to determine the relative reliability of all polar codes with mother code length no larger than 1024. For a polar code with mother code length 1024, the bit indices in the long sequence are ordered in ascending reliability order. For shorter polar codes, the reliability ordering of the bit indices remain unchanged in the long sequence, and as a result, shorter reliability sequences can be extracted from the length-1024 sequence, by taking only the bit indices of value smaller than its mother code length.
[0166] In a particular example, a polar sequence is given in a look-up table, where denotes a bit index before Polar encoding for i=0the. . ., Nmax-1 and Nmax=1024. Nmax is a maximum mother code length. The Polar sequence is in ascending order of reliability, which may be represented by where denotes the reliability of the bit index
[0167] For any code block encoded to N bits, a same Polar sequence is used. N is a positive integer with a value smaller than Nmax. The polar sequence is a subset of the polar sequence with values of all elements less than N, and ordered in an ascending order of reliability denoted by
[0168] In some embodiments, the look-up table may store any kind of reliability ordered sequences, such as the 5G NR length-1024 reliability sequence, or a reliability sequence derived from polarization weights. And the reliability ordered sequences in the look-up table may be in ascending order of reliability or descending order of reliability. In some embodiments of the disclosure, no specific limitation is imposed on the type, a number, and the order of the reliability ordered sequences.
[0169] A simple example to extract a length-8 sequence from a length-16 sequence is given below:
[0170] If the length-16 sequence is [0, 1, 2, 4, 8, 3, 5, 9, 6, 10, 12, 7, 11, 13, 14, 15] ; then the length-8 sequence is a subsequence of the above length-16 sequence with all elements of values less than 8, and the length-8 sequence may be [0, 1, 2, 4, 3, 5, 6, 7] .
[0171] However, the above examples of polar code nested sequence extraction scheme suffer from some disadvantages.
[0172] The first one is that the above nested sequence extraction method follows fixed rules and does not allow flexible configuration for performance enhancement in different scenarios. Therefore, an adaptive sequence extraction scheme for polar codes may be beneficial. In particular, an adaptive scheme depending on a plurality of parameters, such as the code rate, code length, traffic type or application scenario, may help to extract the best-performing subsequence from a longer sequence.
[0173] The second one is that the above nested sequence extraction method cannot generate multiple different subsequences of the same length, result in the inability to support new capabilities such as code construction for multiple redundancy versions and IR-HARQ. Therefore, a multi-sequence extraction scheme for polar codes may be beneficial. In particular, generating a plurality of sequences for a plurality of transmission opportunities may involve methods to generate the plurality of sequences from a single longer sequence. The method may include assigning each of the plurality of sequences to the different transmissions (e.g., redundancy versions) in appropriate order.
[0174] The third one is that the above nested sequence extension method can only construct polar codes from a single sequence. A method is needed to utilize multiple sequences to construct a family of polar codes. And a method is needed to construct different polar codes for multiple scenarios or multiple segments of a longer polar code, and to construct polar codes using these multiple sequences. In order to support the scenarios that at least a retransmission is required or a plurality of redundancy versions of codes are transmitted in a certain transmission, polar codes for different scenarios of different transmission opportunities or different redundancy versions are required in such scenarios. So, a plurality of reliability ordered sequences are needed to be determined before the process of code construction and encoding. Then after a plurality of polar codes obtained based on the plurality of reliability ordered sequences, a communication system with the plurality of polar codes may be applicable in the scenarios of a plurality of transmissions or redundancy versions of polar codes.
[0175] According to the above descriptions, it is reasonable that encoding processes and decoding processes of a plurality of polar codes are required in the scenarios of a plurality of transmissions or redundancy versions of codes.
[0176] As an illustrative example without limitation, a simplified flow illustration of the encoding method is provided in Fig. 13.
[0177] In Fig. 12, the encoding method includes the following steps s1210 and s1220. The executing entity of the encoding method may be a device or an apparatus in the device, wherein the device or the apparatus may include an encoder of polar codes. In some embodiments the apparatus may be a communication module, a modem, or a chip in the device.
[0178] S1210, determining a plurality of reliability ordered sequences.
[0179] In some embodiments of the present disclosure, the scenarios that at least a retransmission is required or a plurality of redundancy versions of codes are needed, or a plurality of redundancy versions of codes are transmitted in a certain transmission are considered in encoding process. Therefore, a plurality of reliability ordered sequences are needed to be determined to help the communications systems support the above scenarios.
[0180] In some embodiments, different code construction and polar encoding may be performed based on each of the plurality of reliability ordered sequences. And different transmission opportunity or different redundancy version is corresponding to each of the plurality of reliability ordered sequences. As a result, the determination of a plurality of reliability ordered sequences may enable the communication system to support scenarios of multiple transmissions and redundancy versions.
[0181] The implementation steps of methods of obtaining the plurality of reliability ordered sequences will be described in detail in the following embodiments.
[0182] S1220, encoding a plurality of information bits based on the plurality of reliability ordered sequences to obtain a plurality of code words, wherein the plurality of code words correspond to the plurality of reliability ordered sequences.
[0183] In some embodiments, a plurality of information bit sets may be obtained according to the plurality of reliability ordered sequences. In the encoding process, the plurality of information bit sets may be encoded to a plurality of new sequences, which correspond to a plurality of code words.
[0184] Referring to Fig. 13, as an illustrative example without limitation, a simplified flow illustration of the decoding method is provided. As shown in Fig. 13, the decoding method includes the following steps s1310 and s1320. The executing entity of the decoding method may be a device or an apparatus in the device, wherein the device or the apparatus may include a decoder of polar codes. In some embodiments the apparatus may be a communication module, a modem, or a chip in the device.
[0185] S1310, obtaining a plurality of code words, and the plurality of code words correspond to a plurality of reliability ordered sequences.
[0186] In some embodiments, before decoding, the plurality of code words may be converted to a plurality of corresponding sequences by demodulation or other ways. In some embodiments of the disclosure, no specific limitation is imposed on the ways of obtaining the plurality of corresponding sequences.
[0187] In some embodiments, a number of the plurality of reliability ordered sequences is related to a number of redundancy versions, a number of transmission times and other coefficient corresponding to scenarios supported by the communication system. A number of the plurality of code words is related to a number of the plurality of reliability ordered sequences. In some embodiments, the flexible decoding processes may be executed according to the plurality of reliability ordered sequences, which enable the communication system to support scenarios required multiple transmissions or redundancy versions of codes.
[0188] S1320, decoding the plurality of code words to obtain a plurality of sequences, and the plurality of sequences correspond to the plurality of information bits.
[0189] In some embodiments, SCL algorithm may be operated during the decoding process. Then after CRC process, the device may output the plurality of sequences including the plurality of information bits. In some embodiments, another algorithm and technique may be used in decoding. In some embodiments of the disclosure, no specific limitation is imposed on the the algorithm and technique in decoding.
[0190] The followings are some embodiments of methods of flexible nested reliability sequences extraction.
[0191] In some embodiments, methods of Flexible nested reliability sequence extraction may include one or more of the following actions:
[0192] In one aspect, a first (longer) sequence Q1 of length N1 may be extracted to obtain a second (shorter) sequence Q2 of length N2 by taking a subset of elements (or called bit indices) in the first (longer) sequence that satisfy certain conditions, followed by using a function to change the values of elements (bit indices) in the subset sequence. In some embodiments, the step of using a function to change the values of elements (bit indices) in the subset sequence may be omitted, which means the subset sequence may be the second (shorter) sequence.
[0193] In another aspect, a first (longer) sequence Q1 of length N1 may be extracted to obtain a plurality of second (shorter) sequences {Q2, 0, Q2, 1, Q2, 2 Q2, 3 …} of length {N2, 0, N2, 1, N2, 2, N2, 3 …} by taking a subset of elements (or called bit indices) in the first (longer) sequence that satisfy certain conditions, followed by using a plurality of functions to change the values of elements (bit indices) in subset sequence. Wherein N2, 0 is the length of a second (shorter) sequence Q2, 0, N2, 1 is the length of a second (shorter) sequence Q2, 1, N2, 2 is the length of a second (shorter) sequence Q2, 2, N2, 3 is the length of a second (shorter) sequence Q2, 3, and so on.In some embodiments, the subset sequence may be one of the plurality of the second (shorter) sequences.
[0194] Then, code construction is performed to generate the information bit sets, frozen bit sets, parity-check bit sets, etc., based on each of the multiple different second (shorter) sequences {Q2, 0, Q2, 1, Q2, 2 Q2, 3 …} , and the multiple second (shorter) sequences {Q2, 0, Q2, 1, Q2, 2 Q2, 3 …} of length {N2, 0, N2, 1, N2, 2, N2, 3 …} . Finally, polar encoding is performed based on the above parameters.
[0195] Therefore, with methods of flexible nested reliability sequence extraction, it is possible to acquire more flexibility in obtaining a plurality of sequences for different transmission occasions, such as for IR-HARQ initial transmission and retransmissions, or different redundancy versions.
[0196] Referring to Fig. 14, as an illustrative example without limitation, a block diagram of the process of different polar codes constructed and encoded using the above methods is provided.
[0197] As shown in Fig. 14, a plurality of second (shorter) sequences {Q2, 0, Q2, 1, Q2, 2} may be extracted from the first (longer) sequence Q1. Polar encoding may be performed based on each of the plurality of second (shorter) sequences with different code rate. For example, K2, 0 is a number of information bits corresponding to the second (shorter) sequence Q2, 0, K2, 1 is a number of information bits corresponding to the second (shorter) sequence Q2, 1, and K2, 2 is a number of information bits corresponding to the second (shorter) sequence Q2, 2. And then, rate matching process may be implemented after polar encoding. In some embodiments, different second (shorter) sequence can be used for either different transmission occasions, or different application scenarios. The transmission occasions or application scenarios may include some scenarios that require retransmissions, in particular, a plurality of redundancy versions of codes would be generated accordingly, or some scenarios that a plurality of transmissions carried out at the same time. In Fig. 14, the second (shorter) sequence Q2, 0 may be applicable in scenario 1 or transmission 1, the second (shorter) sequence Q2, 1 may be applicable in scenario 2 or transmission 2, the second (shorter) sequence Q2, 2 may be applicable in scenario 3 or transmission 3. For example, scenario 1 may be the scenario that requires retransmissions, such as 1 retransmission, and transmission 1 may include an initial transmission and a retransmission. Scenario 2 may be the scenario that requires a plurality of transmissions carried out at the same time, such as requires 3 transmissions at the same time, and transmission 2 may include three transmissions at the same time. Scenario 3 may be the scenario that requires a plurality of redundancy versions of codes, such as requires 2 redundancy versions of codes, and transmission 3 may include 3 versions of codes. In some embodiments, the scenarios or transmission occasions corresponding to different second (shorter) sequences may be the same or different. In some embodiments of the disclosure, no specific limitation is imposed on a number of the plurality of second (shorter) sequences, the type of scenario and a number of transmission times that corresponding to each of the plurality of second (shorter) sequences. The followings are some embodiments of the present disclosure involve methods of sequence extraction and modification. As described in s1210 of Fig. 12, a plurality of reliability ordered sequences, (or called a plurality of second (shorter) sequences) , may be obtained based on a first (longer) sequence in these methods.
[0198] In some embodiments, a first (longer) sequence Q1 of length N1may be extracted in order to obtain a second (shorter) sequence Q2 of length N2 by taking a subset of elements (bit indices) in the first (longer) sequence that satisfy certain conditions, and followed by using a value-changing function to change the values of elements (bit indices) in the subset of the first (longer) sequence:
[0199] The first (longer) sequence is a reliability ordered sequence for constructing a first (longer) polar code, and the second (shorter) sequence is a reliability ordered sequence for constructing a second (shorter) polar code.
[0200] The certain conditions may be satisfied when taking a subset of elements (bit indices) from the first (longer) sequence based on multiple inequalities.
[0201] For example, the condition can be where and are two inequalities, and c1 and c2 are two integers, where is the subset of first (longer) sequence, is the i-th element of the subset and is also an element of the first (longer) sequence Q1.
[0202] In some cases, c1 and c2 are two integers, and the values of c1 and c2 may be variables that depend on either N1, or N2, or both.
[0203] For example, the condition can be
[0204] For example, the condition can be
[0205] For example, the condition can be
[0206] In some embodiments of the disclosure, no specific limitation is imposed on values of c1 and c2.
[0207] The certain conditions may be satisfied when taking a subset of elements (bit indices) from the first (longer) sequence based on multiple equalities.
[0208] For example, the condition can be where mod (x, y) is modulo operation and m1 and r1 are two integers. There may be two or more equalities.
[0209] In some cases, m1 and r1 are two integers, where the values of m1 and r1 are variables that depend on either N1, or N2, or both.
[0210] In some cases, m1 and r1 are two integers, where the value of m1 is a power-of-2, and r1 is either 0 or a power-of-2 minus 1.
[0211] In some cases, m1 and r1 are two integers, where the values of m1 and r1 are two constant integers. For example, m1=2 and r1=0 , meaning that only even indices will be extracted. Similarly, when r1=1 means that only odd indices will be extracted. More specifically, the condition can be or
[0212] For example, the condition can be or
[0213] The certain conditions may be satisfied when taking a subset of elements (bit indices) from the first (longer) sequence based on both equalities and inequalities.
[0214] For example, the condition can be where m1 and r1 are two integers.
[0215] For example, the condition can be
[0216] After the extraction, the relative ordering in the subset remains unchanged from that in Q1. That is, elements in the second (shorter) sequence Q2 are ordered in ascending order of reliability, which is represented by where denotes the reliability of the bit index or called the reliability of the element
[0217] The value-changing function to change the values of elements (bit indices) can be arithmetic operations.
[0218] For example, the arithmetic operations can be anyone one or any combination of + (addition) , - (subtraction) , ×(multiplication) , / (division) , and % (modulo) .
[0219] The value-changing function can be subtracting an integer from every element (bit index) in the extracted sequence: where o is the integer offset value, where is an element of the second (shorter) sequence, is the j-th element of the subset of the first (longer) sequence, j is an integer.
[0220] In some embodiments the values of o may be a variable that depends on either N1, or N2, or both.
[0221] The value-changing function can be dividing by an integer based on every element (bit index) in the extracted sequence: where d is the integer divisor.
[0222] In some embodiments the value of d is a variable that depends on either N1, or N2, or both; it can also be a power-of-2 constant (e.g., 2, 4, 8, 16, 32) or a power-of-2 variable that depends on either N1, or N2, or both.
[0223] For example, the value-changing function can be
[0224] For example, the value-changing function can be
[0225] In the above examples, the values of (N1, N2) can be (32768, 16384) , (16384, 8192) , (8192, 4096) , (4096, 2048) , (2048, 1024) , (1024, 512) , (512, 256) , (256, 128) , (128, 64) or (64, 32) ; the values of (N1, N2) can also be (32768, 8192) , (16384, 4096) , (8192, 2048) , (4096, 1024) , (2048, 512) , (1024, 256) , (512, 128) , (256, 64) , (128, 32) or (64, 32) .
[0226] In some embodiment, the second (shorter) sequence may be the subset extracted from the first (longer) sequence. For example, the value-changing function and the step of “changing values” may not be needed in some cases.
[0227] Based on the above, the parameters used for sequence extraction and modification can be obtained in the following way:
[0228] Fixed and pre-defined in a standard text;
[0229] Flexible and chosen from a set of parameters pre-defined in a standard text;
[0230] Flexible and specified in RRC or DCI fields.
[0231] Some embodiments of the preceding methods may be represented as:
[0232] The Polar sequence is given by a look-up table, where denotes a bit index before Polar encoding for i=0, 1, . . ., Nmax-1 and Nmax=8192. The Polar sequence is in ascending order of reliability where denotes the reliability of bit index
[0233] A second Polar sequence is used. The Polar sequence is a subset of Polar sequence with all elements of values larger than N-1 and less than 2N , ordered in ascending order of reliability
[0234] A simpler example to extract a length-8 sequence from a length-16 sequence is given below:
[0235] If the length-16 sequence is [0, 1, 2, 4, 8, 3, 5, 9, 6, 10, 12, 7, 11, 13, 14, 15] .
[0236] Then the length-8 is a subsequence of the above length-16 sequence with all elements of values greater than 7, which becomes [8, 9, 10, 12, 11, 13, 14, 15] .
[0237] Optionally, it’s feasible to use an example of the value-changing function “y=x-8” to get the second (shorter) sequence [0, 1, 2, 4, 3, 5, 6, 7] .
[0238] The following are some embodiments of the present disclosure involve methods of multiple sequence extraction.
[0239] In some embodiments a first (longer) sequence Q1 of length N1 may be extracted to obtain a plurality of second (shorter) sequences {Q2, 0, Q2, 1, Q2, 2 , Q2, 3 …} of length {N2, 0, N2, 1, N2, 2, N2, 3 …} by taking a subset of elements (bit indices) in the first (longer) sequence that satisfy certain conditions, and followed by using a value-changing function to change the values of elements (bit indices) in the subset of the first (longer) sequence:
[0240] The first (longer) sequence is a reliability ordered sequence for constructing a first (longer) polar code, and the plurality of shorter sequences are reliability ordered sequences for constructing several shorter polar codes.
[0241] The number of the plurality of shorter sequences can be 2, 3, 4, 8, or 16. In some embodiments of the disclosure, no specific limitation is imposed on the number of the plurality of shorter sequences.
[0242] The method for obtaining each of the plurality of the shorter sequences may be the same method introduced in methods of sequence extraction and modification, but with different parameters.
[0243] For example, the extraction conditions can be for the first one of the plurality of shorter sequence, for the second one of the plurality of shorter sequence, for the third one of the plurality of shorter sequence, for the fourth one of the plurality of shorter sequence and so on. Or a subset of the above set of sequences can be used.
[0244] In some embodiments, if there are two shorter sequences, the values of N1 and {N2, 0, N2, 1} can satisfy N1=2N2, 0=2N2, 1 , and the extraction conditions are for the first shorter sequence, for the second shorter sequence, respectively, where N2, 0 is the length of the first shorter sequence, N2, 2 is the length of the second shorter sequence.
[0245] In some embodiments, if there are two shorter sequences, the values of N1 and {N2, 0, N2, 1} can satisfy N1=2N2, 0=N2,1, and the extraction conditions are for the first shorter sequence, for the second shorter sequence, respectively, where N2, 0 is the length of the first shorter sequence, N2, 1 is the length of the second shorter sequence.
[0246] In the above example, the extracted sequences Q2, 0, Q2, 1 may be used for constructing polar codes to support IR-HARQ. In particular, the extracted sequence is used for constructing polar code for initial transmission, and comprises bit indices (on the code word size) for initial transmission; and the extracted sequence is used for constructing polar code for retransmission, and comprises bit indices (on the code word size) for retransmission.
[0247] In some embodiments, if there are four shorter sequences, the values of N1 and {N2, 0, N2, 1} can satisfy N1=4N2, 0=4N2, 1=4N2, 2=4N2, 3, and the extraction conditions are for the first shorter sequence, for the second shorter sequence, for the third shorter sequence, for the fourth shorter sequence, respectively, where N2, 0 is the length of the first shorter sequence, N2, 1 is the length of the second shorter sequence, N2, 2 is the length of the third shorter sequence, N2, 3 is the length of the fourth shorter sequence.
[0248] In the above example, the extracted sequences Q2, 0, Q2, 1 Q2, 2Q2, 3are used for constructing polar codes to be used as the four redundancy versions in IR-HARQ. In particular, the extracted sequence is used for constructing polar code for the first redundancy version, and comprises bit indices (on the code word size) for the first redundancy version (rvid=0) ; and the extracted sequence is used for constructing polar code for the second redundancy version (rvid=1) , and comprises bit indices (on the code word size) for the second redundancy version; and the extracted sequence is used for constructing polar code for the third redundancy version (rvid=2) , and comprises bit indices (on the code word size) for the third redundancy version; and the extracted sequence is used for constructing polar code for the fourth redundancy version (rvid=3) , and comprises bit indices (on the code word size) for the fourth redundancy version.
[0249] The method for changing the values in each short reliability ordered sequence can follow the same method introduced in methods of sequence extraction and modification, but with different parameters.
[0250] In some embodiment, the short sequences may be the subsets extracted from the first (longer) sequence. For example, the value-changing function and the step of “changing values” may not be needed in some cases.
[0251] Based on the above methods, the different shorter sequences generated can be used for different scenarios:
[0252] In some cased, one subset of sequence (s) can be used for ultra-high-speed or high-throughput communications;
[0253] In some cased, one subset of sequence (s) can be used for ultra-reliable and low latency communications;
[0254] In some cased, one subset of sequence (s) can be used for very-low-power, or passive, or ambient communications;
[0255] In some cased, one subset of sequence (s) can be used for uplink shared information (data) or control information communications, and another subset of sequence (s) can be used for downlink shared information (data) or control information communications.
[0256] An example of the preceding methods of a plurality of sequence extraction may be represented as:
[0257] The Polar sequence is given by a table, where denotes a bit index before Polar encoding for i=0, 1, . . ., Nmax-1 and Nmax=8192 . The Polar sequence is in ascending order of reliability where denotes the reliability of bit index
[0258] For any code block encoded to N bits for initial transmission and extended to 2N bits for retransmissions, three Polar sequences are defined below.
[0259] A first Polar sequence is used. The Polar sequence is a subset of Polar sequence with all elements of values less than 2N , ordered in ascending order of reliability
[0260] A second Polar sequence is used. The Polar sequence is a subset of Polar sequence with all elements of values less than N, ordered in ascending order of reliability
[0261] A third Polar sequence is used. The Polar sequence is a subset of Polar sequence with all elements of values larger than N-1 and less than 2N , ordered in ascending order of reliability
[0262] In the above three Polar sequences, the third Polar sequence is used to construct polar codes that comprise code bits for the initial transmission, and the second and first polar codes are both used for construct the extended polar codes that comprise code bits for both the initial transmission and retransmissions.
[0263] The following are some embodiments of the present disclosure involving methods of code construction and encoding based on a plurality of shorter sequences.
[0264] Based on each of the plurality of second (shorter) sequences {Q2, 0, Q2, 1 Q2, 2Q2, 3 …} , code construction is performed to select the information bit sets, frozen bit sets, parity-check bit sets, etc. Finally, polar encoding is performed based on the above parameters.
[0265] The first (longer) sequence is a reliability ordered sequence for constructing a first (longer) polar code; and the plurality of (shorter) sequences are reliability ordered sequences for constructing several (shorter) polar codes; and the plurality of (longer) sequences are reliability ordered sequences for constructing several (longer) polar codes.
[0266] A number of the plurality of shorter sequences can be 2, 3, 4, 8, or 16.
[0267] The method to extract the plurality of shorter sequences can follow the same methods introduced in a preceding example, but with different parameters.
[0268] The method to select the information bit sets, frozen bit sets, parity-check bit sets based on the plurality of second (shorter) sequences can be as follows
[0269] Determining the numbers of information bits to be selected in the plurality of the second (shorter) sequences according to a first longer sequence or certain rate allocation rules. For example, the numbers of information bits to be selected for {Q2, 0, Q2,1 Q2, 2Q2, 3…} are {K2, 0, K2, 1, K2, 2, K2, 3…} , respectively, where K2, 0is the number of information bits for Q2, 0, K2, 1is the number of information bits for Q2, 1, K2, 2is the number of information bits for Q2, 2 , K2, 3is the number of information bits for Q2, 3. In some embodiments of the disclosure, no specific limitation is imposed on the number of the plurality of shorter sequences.
[0270] In the above description, K=∑i K2, i, where K is the total number of information bits in a code block, or a group of code blocks.
[0271] Pre-freezing certain bit indices. For example, the bit positions corresponding to the rate matching (punctured, shortened) positions should be pre-frozen in advance. This is done by marking them as frozen sets {F2, 0, F2, 1, F2, 2, F2, 3 …} ., where F2, 0 is the frozen set corresponding to Q2, 0, F2, 1 is the frozen set corresponding to Q2, 1, F2, 2 is the frozen set corresponding to Q2, 2, F2, 3 is the frozen set corresponding to Q2, 3
[0272] Select {K2, 0, K2, 1, K2, 2, K2, 3…} most reliable non-frozen bit indices from {Q2, 0, Q2, 1 Q2, 2, Q2, 3…} to obtain the information sets {I2, 0, I2, 1, I2, 2 I2, 3 …} , where I2, 0 is the information set corresponding to Q2, 0, I2, 1 is the information set corresponding to Q2, 1, I2, 2 is the information set corresponding to Q2, 2, I2, 3 is the information set corresponding to Q2, 3 .
[0273] An alternative to the above steps i-iv may be: instead of selecting K2, i bit indices for information set only, select K2, i +P2,i bit indices for a set comprising both information bit indices and parity-check bit indices. Within this set, select P2, i bit indices with the minimum Hamming weight (in the corresponding row in the polar generator matrix) that have the highest reliability, to obtain the parity-check sets {P2, 0, P2, 1, P2, 2 , P2, 3 …} , where P2, 0 is the parity-check set corresponding to Q2, 0, P2, 1 is the parity-check set corresponding to Q2, 1, P2, 2 is the parity-check set corresponding to Q2, 2, P2, 3 is the parity-check set corresponding to Q2, 3. The remaining bits in the combined sets are selected as the information sets {I2, 0, I2, 1, I2, 2, I2, 3 …} .
[0274] All the remaining bits in the second (shorter) sequence are additionally selected into the frozen sets {F2, 0, F2, 1, F2, 2 , F2,3 …} .
[0275] An alternative to the above step vi may be: all the remaining bits in the second (shorter) sequence are additionally selected into the parity-check sets {P2, 0, P2, 1, P2, 2, P2, 3 …} .
[0276] The encoding method to obtain code bits based on the multiple information bit sets, frozen bit sets, parity-check bit sets:
[0277] Perform parity-check encoding based on the {K2, 0, K2, 1, K2, 2, K2, 3…} information bits and the information bit sets, frozen bit sets, parity-check bit sets, and then perform polar encoding to generate the final code bits.
[0278] In the above, the parity-check encoding and polar encoding can be separately or independently encoded for each shorter polar code (corresponding to the shorter sequences) ; or the parity-check encoding and polar encoding can be jointly encoded to obtain a long polar code (corresponding to the single long sequence) .
[0279] Some embodiments of the present disclosure may enable advantageous effects such as:
[0280] More flexibility in obtaining polar codes for different transmission opportunities or different scenarios.
[0281] Adapt to different channel condition and application scenarios to obtain better error correction performance.
[0282] Simple standard description and low complexity.
[0283] Ability to generate different sequences of the same length from the same mother sequence, leading to different performance.
[0284] Ability to generate multiple sequences for different transmission occasions, such as for IR-HARQ initial transmission and retransmissions, or different redundancy versions.
[0285] The present disclosure encompasses various 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 incorporate, individually or in combinations, the features disclosed herein.
[0286] Although this disclosure refers to illustrative embodiments, this is not intended to be construed in a limiting sense. Various modifications and combinations of the illustrative embodiments, as well as other embodiments of the disclosure, will be apparent to persons skilled in the art upon reference to the description.
[0287] Features disclosed herein in the context of any particular embodiments may also or instead be implemented in other embodiments. Method embodiments, for example, may also or instead be implemented in apparatus, system, and / or computer program product embodiments. In addition, although embodiments are described primarily in the context of methods and apparatus, other implementations are also contemplated, as instructions stored on one or more non-transitory computer-readable media, for example. Such media could store programming or instructions to perform any of various methods consistent with the present disclosure
[0288] Although aspects of the present invention have been described with reference to specific features and embodiments thereof, various modifications and combinations can be made thereto without departing from the invention. The description and drawings are, accordingly, to be regarded simply as an illustration of some embodiments of the invention as defined by the appended claims, and are contemplated to cover any and all modifications, variations, combinations or equivalents that fall within the scope of the present invention. Therefore, although embodiments and potential advantages have been described in detail, various changes, substitutions and alterations can be made herein without departing from the invention as defined by the appended claims. Moreover, the scope of the present application is not intended to be limited to the particular embodiments of the process, machine, manufacture, composition of matter, means, methods and steps described in the specification. As one of ordinary skill in the art will readily appreciate from the disclosure of the present invention, processes, machines, manufacture, compositions of matter, means, methods, or steps, presently existing or later to be developed, that perform substantially the same function or achieve substantially the same result as the corresponding embodiments described herein may be utilized according to the present invention. Accordingly, the appended claims are intended to include within their scope such processes, machines, manufacture, compositions of matter, means, methods, or steps.
[0289] Moreover, any module, component, or device exemplified herein that executes instructions may include or otherwise have access to a non-transitory computer readable or processor readable storage medium or media for storage of 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 cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, optical disks such as compact disc read-only memory (CD-ROM) , digital video discs or digital versatile disc (DVDs) , Blu-ray DiscTM, or other optical storage, 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 memory technology. Any such non-transitory computer readable or processor readable storage media may be part of a device or accessible or connectable thereto. Any application or module herein described may be implemented using instructions that are readable and executable by a computer or processor may be stored or otherwise held by such non-transitory computer readable or processor readable storage media.
[0290] Simple standard description and low complexity.
[0291] The present disclosure encompasses various 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 incorporate, individually or in combinations, the features disclosed herein.
[0292] Although this disclosure refers to illustrative embodiments, this is not intended to be construed in a limiting sense. Various modifications and combinations of the illustrative embodiments, as well as other embodiments of the disclosure, will be apparent to persons skilled in the art upon reference to the description.
[0293] Features disclosed herein in the context of any particular embodiments may also or instead be implemented in other embodiments. Method embodiments, for example, may also or instead be implemented in apparatus, system, and / or computer program product embodiments. In addition, although embodiments are described primarily in the context of methods and apparatus, other implementations are also contemplated, as instructions stored on one or more non-transitory computer-readable media, for example. Such media could store programming or instructions to perform any of various methods consistent with the present disclosure.
[0294] Acronyms, Abbreviations, and Initialisms
Claims
1.A method comprising:determining a plurality of reliability ordered sequences;encoding a plurality of information bits based on the plurality of reliability ordered sequences to obtain a plurality of code words, wherein the plurality of code words correspond to the plurality of reliability ordered sequences.2.The method of claim 1,wherein values of elements in the plurality of reliability ordered sequences are greater than zero.3.The method of claim 1 or 2,wherein determining a plurality of reliability ordered sequences, comprises:determining the plurality of reliability ordered sequences by selecting a plurality of elements from a reference reliability sequence.4.The method of claims 3,wherein a length of the reference reliability sequence is less than or equal to a maximum mother code length.5.The method of claim 4,wherein elements in the reference reliability sequence and each of the plurality of reliability ordered sequences are in an ascending order that is regard with reliability.6.The method of claim 4 or 5,wherein values of elements in a first number sequence of the plurality of reliability ordered sequences are not less than a first integer, and not greater than a second integer, wherein both of the first integer and the second integer are not less than zero and not greater than a length of the reference reliability sequence.7.The method of claim 6,wherein the first integer and the second integer are related to at least one of the followings:a length of the first number sequence, and the length of the reference reliability sequence.8.The method of claim 6,wherein the first integer is equal to a length of the first number sequence, and the second integer is equal to twice the length of the first number sequence.9.The method of claim 6,wherein the first integer is equal to a difference between the length of the reference reliability sequence and the length of the first number sequence, and the second integer is equal to the length of the reference reliability sequence.10.The method of claim 6,wherein the first integer is equal to half of the length of the reference reliability sequence, and the second integer is equal to the length of the reference reliability sequence.11.The method of anyone of claims 3 to 10,wherein a remainder of a value of an element of a second number sequence of the plurality of reliability ordered sequences and a third integer is a fourth integer.12.The method of claim 11,wherein both the third integer and the fourth integer are related to at least one of the followings:a length of the second number sequence, and a length of the reference reliability sequence.13.The method of claim 11 or 12,wherein the third integer is equal to 2m, m is a positive integer, and the fourth integer is zero.14.The method of claim 11 or 12,wherein the third integer is equal to 2n, wherein n is a positive integer, and the fourth integer is a difference between 2p and 1, wherein p is a positive integer.15.The method of anyone of claims 3 to 14,wherein a value of an element in a third sequence of the plurality of reliability ordered sequences is equal to a difference between a value of an element in a fourth sequence of the plurality of reliability ordered sequences and a fifth integer.16.The method of claim 15,wherein the fifth integer is related to at least one of the followings:a length of the third sequence, a length of the fourth sequence and the length of the reference reliability sequence.17.The method of anyone of claims 3 to 14,wherein a value of an element in a fifth sequence of the plurality of reliability ordered sequences is equal to a quotient between a value of an element in a sixth sequence of the plurality of reliability ordered sequences and a sixth integer.18.The method of claim 17,wherein the sixth integer is related to at least one of the followings: a length of the fifth sequence, and the length of the reference reliability sequence.19.The method of claims 17 or 18,wherein the sixth integer is equal to 2q, wherein q is a positive integer.20.The method of claims 6,wherein values of elements in a seventh sequence of the plurality of reliability ordered sequences are not less than a seventh integer, and not greater than an eighth integer, wherein ranges of values of both the seventh integer and the eighth integer are not less than zero and not greater than the length of the reference reliability sequence, and the first integer is different from the seventh integer, and the second integer is different from the eighth integer.21.The method of claim 20,wherein the seventh integer and the eighth integer are related to at least one of the followings:a length of the seventh sequence, and the length of the reference reliability sequence.22.The method of any one of claims 1 to 21,wherein encoding a plurality of information bits based on the plurality of reliability ordered sequences to obtain a plurality of code words, comprises:determining an information bit set of each of the plurality of reliability ordered sequences according to the plurality of information bits and the plurality of reliability ordered sequences;encoding the plurality of information bits based on the information bit set of each of the plurality of reliability ordered sequences to obtain a plurality of code words.23.The method of claim 22, further comprising:determining a parity check bit set of each of the plurality of reliability ordered sequences according to a minimum Hamming weight.24.A method comprising:obtaining a plurality of code words, wherein the plurality of code words correspond to the plurality of reliability ordered sequences;decoding the plurality of code words to obtain a plurality of sequences, wherein the plurality of sequences correspond to a plurality of information bits.25.The method of claim 24,wherein values of elements in the plurality of reliability ordered sequences are greater than a non-zero integer.26.The method of claim 24 or 25,wherein the plurality of reliability ordered sequences are determined by selecting a plurality of elements from a reference reliability sequence.27.The method of claims 26,wherein a length of the reference reliability sequences is less than or equal to a maximum mother code length.28.The method of claim 27,wherein elements in the reference reliability sequence and each of the plurality of reliability ordered sequences are in an ascending order that is regard with reliability.29.The method of claim 27 or 28,wherein values of elements in a first number sequence of the plurality of reliability ordered sequences are not less than a first integer, and not greater than a second integer, wherein both of the first integer and the second integer are not less than zero and not greater than the length of the reference reliability sequence.30.The method of claim 29,wherein the first integer and the second integer are related to at least one of the followings:a length of the first number sequence, and the number of elements in the reference reliability sequence.31.The method of claim 29,wherein the first integer is equal to a length of the first number sequence, and the second integer is equal to twice the length of the first number sequence.32.The method of claim 29,wherein the first integer is equal to a difference between the length of the reference reliability sequence and a length of the first number sequence, and the second integer is equal to the length of the reference reliability sequence.33.The method of claim 29,wherein the first integer is equal to half of the length of the reference reliability sequence, and the second integer is equal to the length of the reference reliability sequence.34.The method of anyone of claims 26 to 33,wherein a remainder of a value of an element of a second number sequence of the plurality of reliability ordered sequences and a third integer is a fourth integer.35.The method of claim 34,wherein both the third integer and the fourth integer are related to at least one of the followings:a length of the second number sequence, and a length of the reference reliability sequence.36.The method of claim 34 or 35,wherein the third integer is a first power-of-2 integer, and the fourth integer is zero.37.The method of claim 34 or 35,wherein the third integer is a second power-of-2 integer, and the fourth integer is a difference between a third power-of-2 integer and one.38.The method of anyone of claims 26 to 37,wherein a value of an element of a third sequence of the plurality of reliability ordered sequences is equal to a difference between a value of an element of a fourth sequence of the plurality of reliability ordered sequences and a fifth integer.39.The method of claim 38,wherein the fifth integer is related to at least one of the followings: a length of the third sequence, a length of the fourth sequence and the length of the reference reliability sequence.40.The method of anyone of claims 26 to 37, whereina value of an element in a fifth sequence of the plurality of reliability ordered sequences is equal to a quotient between an element of a sixth sequence of the plurality of reliability ordered sequences and a sixth integer.41.The method of claim 40,wherein the sixth integer is related to at least one of the followings: a length of the fifth sequence, a length of the sixth sequence and the number of elements in the reference reliability sequence.42.The method of claim 29,wherein values of elements in a sixth sequence of the plurality of reliability ordered sequences are not less than a seventh integer, and not greater than an eighth integer, wherein ranges of values of both the seventh integer and the eighth integer are not less than zero and not greater than the length of the reference reliability sequence, and the first integer is different from the seventh integer, and the second integer is different from the eighth integer.43.The method of claim 42,wherein the seventh integer and the eighth integer are related to at least one of the followings:a length of the sixth sequence, and the length of the reference reliability sequence.44.An apparatus, wherein the apparatus comprises a processor, wherein the processor is configured to execute one or more instructions stored in a memory, to enable the apparatus to implement the methods according to any one of claims 1 to 23 or claims 24 to 43.45.An apparatus, wherein the apparatus comprises a function or unit to perform the methods according to any one of claims 1 to 23 or perform the methods according to any one of claims 24 to 43.46.A computer readable storage medium, comprising one or more instructions, wherein when the instructions are run on a computer, the computer performs the methods according to any one of claims 1 to 23, or the methods according to any one of claims 24 to 43.47.A computer program product, comprising a non-transitory computer readable medium storing programming for execution by a processor, the programming including instructions to perform the methods of anyone of claims 1 to 23 or claims 24 to 43.
Citation Information
Patent Citations
Polarization code modulation method and device
CN111385059A
Data Transmission Method and Communications Device
US20210320748A1