Precoding for polar codes

CN122092883APending Publication Date: 2026-05-26NOKIA TECHNOLOGIES OY
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
NOKIA TECHNOLOGIES OY
Filing Date
2025-11-25
Publication Date
2026-05-26

Smart Images

  • Figure CN122092883A_ABST
    Figure CN122092883A_ABST
Patent Text Reader

Abstract

The present disclosure relates to precoding for polar codes, and provides a method comprising: receiving, from a network node, an indication to perform polar coding using one of a plurality of polar code types, where the plurality of polar code types include a first polar code type having an external cyclic redundancy check coding, and a second polarization code type having precoding based on a precoding matrix, the precoding matrix being determined at least based on the information position of the zero-fill vector; and performing polarization coding on the message based on the indicated polarization code type.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to wireless communications. Background Technology

[0002] A communication system can be a facility that enables communication between two or more nodes or devices (such as fixed or mobile communication devices). Signals can be carried on wired or wireless carrier waves.

[0003] An example of a cellular communication system is the architecture standardized by the 3rd Generation Partnership Project (3GPP). Recent developments in this field are often referred to as Long Term Evolution (LTE) of Universal Mobile Telecommunications System (UMTS) radio access technology. EUTRA (Evolved UMTS Terrestrial Radio Access) is the air interface defined by 3GPP for the LTE upgrade path of mobile networks. In LTE, base stations or access points (APs), referred to as enhanced node APs (eNBs), provide radio access within a coverage area or cell. In LTE, mobile devices or mobile stations are referred to as user equipment (UEs). LTE has included many improvements and developments. All aspects of LTE continue to improve.

[0004] The development of 5G New Radio (NR) is part of an ongoing evolution of mobile broadband to meet 5G requirements, similar to the early evolution of 3G and 4G wireless networks. Furthermore, in addition to mobile broadband, 5G also targets emerging use cases. The goal of 5G is to deliver significant improvements in wireless performance, which can include new levels of data rates, latency, reliability, and security. 5G NR can also be expanded to efficiently connect massive Internet of Things (IoT) networks and can provide new types of mission-critical services. For example, ultra-reliable and low-latency communication (URLLC) devices may require high reliability and very low latency. 6G and other networks are also under development. Summary of the Invention

[0005] In some respects, the techniques described herein relate to a method comprising: determining a first precoding matrix having a size determined based on the message size of the message to be encoded by polar coding and the codeword size of the polar-coded codewords; determining a second precoding matrix based on the first precoding matrix and the information positions of a zero-padding vector; and performing precoding on the message based on the second precoding matrix to generate an output vector.

[0006] In some aspects, the technology described herein relates to an apparatus comprising: at least one processor; and at least one memory. The at least one memory stores instructions that, when executed by the at least one processor, cause the apparatus to at least: determine a first precoding matrix having a size determined based on the message size of the message to be encoded by polar coding and the codeword size of the polar-coded codewords; determine a second precoding matrix based on the first precoding matrix and the information positions of a zero-padding vector; and perform precoding for the message based on the second precoding matrix to generate an output vector.

[0007] In some aspects, the techniques described herein relate to a method comprising: receiving from a network node the message size of a message to be encoded by polar coding and the codeword size of the polar-coded codeword; receiving from the network node an indication of the information location of a zero-padding vector; determining a precoding matrix based on the message size, codeword size, and information location; and performing precoding on the message based on the precoding matrix to generate an output vector.

[0008] In some aspects, the technology described herein relates to an apparatus comprising: at least one processor; and at least one memory. The at least one memory stores instructions that, when executed by the at least one processor, cause the apparatus to at least: receive from a network node the message size of a message to be encoded by polar coding and the codeword size of the polar-coded codeword; receive from the network node an indication of the information location of a zero-padding vector; determine a precoding matrix based on the message size, codeword size, and information location; and perform precoding on the message based on the precoding matrix to generate an output vector.

[0009] In some aspects, the techniques described herein relate to a method comprising: receiving from a network node an indication to perform polar coding using one of a plurality of polar code types, wherein the plurality of polar code types include a first polar code type having an outer cyclic redundancy check (ECR) code and a second polar code type having a precoding based on a precoding matrix, the precoding matrix being determined at least based on the information positions of zero-padding vectors; and performing polar coding on a message based on the indicated polar code type.

[0010] In some aspects, the technology described herein relates to an apparatus comprising: at least one processor; and at least one memory. The at least one memory stores instructions that, when executed by the at least one processor, cause the apparatus to at least: receive from a network node an instruction to perform polar coding using one of a plurality of polar code types, wherein the plurality of polar code types includes a first polar code type having an external cyclic redundancy check (OCR) code and a second polar code type having a precoding based on a precoding matrix, the precoding matrix being determined at least based on the information positions of zero-padding vectors; and perform polar coding on a message based on the indicated polar code type.

[0011] Other example embodiments are provided or described for each example method, including: components for performing any example method; a non-transitory computer-readable storage medium including instructions stored thereon, which, when executed by at least one processor, are configured to cause a computing system to perform any example method; and an apparatus including at least one processor and at least one memory, the at least one memory including computer program code, the at least one memory and the computer program code being configured, together with the at least one processor, to cause the apparatus to at least perform any example method.

[0012] Details of one or more examples of embodiments are set forth in the accompanying drawings and the following description. Other features will be apparent from the specification, drawings, and claims. Attached Figure Description

[0013] Figure 1 This is a block diagram of wireless network 130.

[0014] Figure 2 This is a matrix illustrating an example embodiment. sum matrix The image.

[0015] Figure 3 This is a diagram illustrating the encoding process using pre-transformed polar codes.

[0016] Figure 4 This is a matrix illustrating an example embodiment. The diagram of (Formula 4).

[0017] Figure 5 This is a diagram illustrating the encoding process using precoded polar codes according to another example embodiment.

[0018] Figure 6 Four example matrices are shown, including N. max ×N max Upper triangular matrix (Formula 5), ​​K×N systematic precoding matrix ,matrix and K×N precoding matrix .

[0019] Figure 7 This illustrates a method for using N according to an example embodiment. max ×N max Upper triangular identity matrix Determine the N×N upper triangular identity matrix And also used to determine the K×N precoding matrix. The diagram shows the operation.

[0020] Figure 8 This illustrates an example embodiment for using a K×N precoding matrix. Determine the K×N systematic precoding matrix The diagram shows the operation.

[0021] Figure 9 This is a flowchart illustrating operations that can be performed by the UE or other nodes, and... Figure 7 and Figure 8 correspond.

[0022] Figure 10 This is a diagram illustrating the operation of a network according to an example embodiment.

[0023] Figure 11 This is a diagram illustrating the operation of a network according to another example embodiment.

[0024] Figure 12A This is a flowchart illustrating the operation of a user equipment (or UE) according to an example embodiment.

[0025] Figure 12B This is a flowchart illustrating the operation of a user equipment (or UE) according to another example embodiment.

[0026] Figure 12C This is a flowchart illustrating the operation of a user equipment (or UE) according to another example embodiment.

[0027] Figure 13 This is a block diagram of a wireless station or node (e.g., UE, user equipment, AP, BS, eNB, gNB, RAN node, network node, TRP or other node) 1300 according to an example embodiment. Detailed Implementation

[0028] It should be understood that although the terms “first,” “second,” etc., may be used herein to describe various elements, these elements should not be limited by these terms. These terms are used only to distinguish one element from another, and they do not restrict the order of the nouns. For example, without departing from the scope of the exemplary embodiments, a first element may be referred to as a second element, and similarly, a second element may be referred to as a first element. As used herein, the term “and / or” includes any and all combinations of one or more of the listed terms.

[0029] As used herein, unless explicitly stated otherwise, the action “in response to A” does not indicate that the action is performed immediately after “A” occurs and may include one or more intervention steps.

[0030] Figure 1 This is a block diagram of wireless network 130. Figure 1 In the wireless network 130, user equipment 131, 132, 133, and 135, also referred to as mobile stations (MS) or user equipment (UE), can connect to (and communicate with) a base station (BS) 134, which can also be referred to as an access point (AP), an enhanced node B (eNB), a gNB, or a network node. The terms user equipment and user equipment (UE) are used interchangeably. The BS may also include or be referred to as a RAN (Radio Access Network) node, and in the case of splitting the BS or splitting the gNB, may include a portion of the BS or a portion of the RAN node, such as, for example, a centralized unit (CU) and / or a distributed unit (DU). At least a portion of the functionality of the BS (e.g., an access point (AP), a base station (BS), or an (e) Node B (eNB), gNB, RAN node) can also be performed by any node, server, or host operatively coupled to a transceiver (such as a remote radio head). BS (or AP) 134 provides wireless coverage within cell 136, including coverage to user equipment (or UEs) 131, 132, 133, and 135. Although only four user equipment (or UEs) are shown connected to or attached to BS 134, any number of user equipment can be provided. BS 134 is also connected to core network 150 via NG interface 151. This is just a simplified example of a wireless network, and other networks can be used.

[0031] A base station (e.g., such as BS 134) is an example of a radio access network (RAN) node within a wireless network. A BS (or RAN node) can be or may include (or may alternatively be referred to as) such as an access point (AP), gNB, eNB, or a portion thereof (such as a centralized unit (CU) and / or distributed unit (DU) in the case of splitting a BS or gNB) or other network nodes.

[0032] Some functions of a communication network can be performed, at least in part, in a central / centralized unit (CU, e.g., a server, host, or node) that is operatively coupled to distributed units (DUs, e.g., radio heads / nodes). Therefore, 5G network architectures can be based on so-called CU-DU decoupling. A gNB-CU (central node) can control multiple spatially separated gNB-DUs, at least acting as transmit / receive (Tx / Rx) nodes. However, in some embodiments, a gNB-DU (also referred to as a DU) may include, for example, a Radio Link Control (RLC), Media Access Control (MAC) layer, and a Physical (PHY) layer, while a gNB-CU (also referred to as a CU) may include layers above the RLC layer, such as the Packet Data Convergence Protocol (PDCP) layer, Radio Resource Control (RRC), and Internet Protocol (IP) layer. Other functional decoupling is also possible.

[0033] According to illustrative examples, a BS node (e.g., a BS, eNB, gNB, CU / DU, or thereon) or radio access network (RAN) can be part of a mobile telecommunications system. The RAN (Radio Access Network) can include one or more BS or RAN nodes implementing radio access technologies, for example, to allow one or more UEs to access the network or core network (CN). Thus, for example, the RAN (RAN node, such as a BS or gNB) can reside between one or more user equipments or UEs and the core network. According to example embodiments, each RAN node (e.g., a BS, eNB, gNB, CU / DU, etc.) or BS can provide one or more wireless communication services for one or more UEs or user equipments, for example, to allow the UE to have wireless access to the network via the RAN node. Each RAN node or BS can perform or provide wireless communication services, such as allowing the UE or user equipment to establish a wireless connection to the RAN node, and to send data to one or more UEs and / or receive data from one or more UEs. For example, after establishing a connection to the UE, the RAN node or network node (e.g., BS, eNB, gNB, CU / DU) can forward data received from the network or core network to the UE, and / or forward data received from the UE to the network or core network. The RAN node or network node (e.g., BS, eNB, gNB, CU / DU) can perform a wide variety of other radio functions or services, such as broadcasting control information to the UE (e.g., system information or on-demand system information), paging the UE when data is available to be delivered to the UE, assisting the UE in handover between cells, scheduling resources for uplink data transmission from the UE and downlink data transmission to the UE, sending control information to configure one or more UEs, etc. These are just a few examples of one or more functions that a RAN node or BS can perform.

[0034] User equipment or user node (user terminal, user equipment (UE), mobile terminal, handheld wireless device, etc.) can refer to portable computing devices that operate with or without a subscriber identification module (SIM), including but not limited to the following types of devices: mobile station (MS), mobile phone, cellular phone, smartphone, personal digital assistant (PDA), cell phone, device using a wireless modem (alarm or measuring device, etc.), laptop and / or touchscreen computer, tablet computer, tablet phone, game console, laptop computer, vehicle, sensor and multimedia device (by way of example), or any other wireless device. It should be understood that user equipment can also be (or may include) a virtually exclusive uplink-only device, an example of which is a camera or video camera that loads image or video clips onto the network. Furthermore, user node can include user equipment (UE), user equipment, user terminal, mobile terminal, mobile station, mobile node, subscriber equipment, subscriber node, subscriber terminal, or other user node. For example, a user node can be used for wireless communication with one or more network nodes (e.g., gNB, eNB, BS, AP, CU, DU, CU / DU) and / or with one or more other user nodes, regardless of the technology or radio access technology (RAT). In LTE (as an illustrative example), the core network 150 may be referred to as the Evolved Packet Core (EPC), which may include a Mobility Management Entity (MME) that can handle or assist the mobility / handover of user equipment between BSs, one or more gateways that can forward data and control signals between the BS and a packet data network or the Internet, and other control functions or blocks. Other types of wireless networks, such as 5G (which may be referred to as New Radio (NR)), may also include a core network.

[0035] Furthermore, the technologies described in this paper can be applied to various types of user equipment or data service types, or to user equipment that can have multiple applications running on it that can have different data service types. New 5G (NR) development can support several different applications or several different data service types, such as, for example: Machine-Type Communication (MTC), Enhanced Machine-Type Communication (eMTC), Internet of Things (IoT), and / or Narrowband IoT user equipment, Enhanced Mobile Broadband (eMBB), and Ultra-Reliable and Low-Latency Communication (URLLC). Many of these new 5G (NR) related applications often require higher performance than previous wireless networks.

[0036] The Internet of Things (IoT) can refer to a growing group of objects that possess internet or network connectivity, enabling them to send and receive information from other network devices. For example, many sensor-type applications or devices can monitor physical conditions or states and, for instance, send reports to servers or other network devices when events occur. Machine-to-machine communication (MTC) can be characterized, for example, as fully automated data generation, exchange, processing, and driving between intelligent machines, with or without human intervention. Enhanced Mobile Broadband (eMBB) can support data rates significantly higher than those currently available in LTE.

[0037] Ultra-Reliable and Low-Latency Communication (URLLC) represents a new type of data service or use case that new radio (5G) systems can support. This enables emerging new applications and services, such as industrial automation, autonomous driving, vehicle safety, and eHealth services. As an illustrative example, 3GPP aims to provide corresponding 10... -5 The reliability of a connection requires a low block error rate (BLER) and a maximum U-plane (user / data plane) latency of 1 millisecond. Therefore, for example, a URLLC user equipment / UE may require a significantly lower block error rate and lower latency than other types of user equipment / UEs (regardless of whether high reliability is required simultaneously). Thus, for example, a URLLC UE (or a URLLC application on a UE) may require shorter latency compared to an eMBB UE (or an eMBB application running on the UE).

[0038] The technologies described in this article can be applied to a wide variety of wireless technologies or wireless networks, such as 5G (New Radio (NR)), centimeter-wave and / or millimeter-wave band networks, IoT, MTC, eMTC, eMBB, URLLC, 6G, etc.) or any other wireless network or wireless technology. These example networks, technologies, or data service types are provided as illustrative examples only.

[0039] Polar codes are a class of error-correcting codes capable of achieving channel capacity. Polar codes, and improvements using external CRC codes, have been adopted by 3GPP as channel coding for control channels in 5G NR. Other improvements to polar codes, such as polarization-adjusted convolutional (PAC) codes or pre-coded polar codes (where they can be viewed as polar codes with dynamically frozen bits), have been shown to be highly competitive in near-maximum likelihood (ML) decoding scenarios over short to medium lengths. Typical examples of near-ML decoding algorithms include Serial Cancellation List (SCL) decoding and Serial Cancellation Ordered Search (SCOS) decoding. In some cases, the information transmitted through the channel may include frozen bits (bits at frozen positions) with values ​​known to both the sender and receiver. These bits with fixed values ​​are called frozen bits, and in some examples, frozen bits are set to zero. Non-frozen bits (or bits at non-frozen positions) can be referred to as information bits or information positions.

[0040] This section will briefly describe an overview of polar codes and some of their shortcomings or defects.

[0041] make express Bit inversion matrix [1], where , It is a non-negative integer, and Consider the matrix ,in yes of Peck-Ronek product. Matrix. It is the polarization transformation matrix. For example, we can first focus on the following encoding: its generator matrix is ​​derived from... choose Row composition. These selected row indices are called information indexes, and the set containing the indices is represented as... Therefore, A or It can refer to the location of information. For example, Polar codes provide optimal performance under serial cancellation (SC) decoding through storage. indexes What is obtained is the ability to choose the most reliable one. Index. From Another important encoding generated may include a length of and dimension are (in )of Reid-Muller (RM) code. In this case, the set By index Composition, corresponding to The Hamming weight is at least equal to The line. Assume Indicates the part to be encoded In both cases, encoding can be performed by applying a polarization transform to the message after appropriate zero-padding, i.e., codewords. Obtained as ,in It is a length of binary vectors that satisfy (yes The index belongs to the set (a subvector composed of the elements), and Note that sets (therefore This is known to the receiving end.

[0042] The following section briefly introduces precoded polar codes. For a given set (For a given set of information locations), in some cases, it can be achieved via... Perform polar coding, where , ,and It's a convolution operation. (Matrix) (or ) can be represented as Upper triangular identity shape and invertible matrices. This technique proposes using, for example... The example generator polynomial is used to define the transformation, where each row can be transformed by shifting the previous row by 1 and using... The earlier positions are filled to generate the data. For example, suppose... Then, having by Figure 2 The matrix described by formula (1) (or ). Figure 2 This is a matrix illustrating an example embodiment. sum matrix The image.

[0043] Observed coding complexity due to computation The required complexity increases, among which It is by The index belongs to A matrix composed of rows representing (information locations), such as Figure 2 Formula (2) is shown in the figure.

[0044] For example, suppose as well as In this example, This indicates the information positions at bits or positions 2, 3, 4, 6, 7, and 8, and therefore the frozen positions are positions 1 and 5. Then, we have: Formula (3).

[0045] The alternative name for this type of polar code is pre-transformed polar code (PT-polar code). Figure 3 This is a diagram illustrating the encoding process using pre-transformed polar codes. (See diagram for example.) Figure 3 As shown, a K-bit message v is padded with NK zeros to form a vector u of length N, where the zero-padding positions are indicated by a zero-padding vector Z. The zero-padding vector Z can include the information positions. Instructions, for example, a zero-padding vector may include 1s at information locations (e.g., locations 2, 3, 4, 6, 7, and 8) and 0s at frozen locations (in this example, frozen locations 1 and 5, which are non-information locations in the non-zero-padding vector Z). The N-bit vector u is coupled to the transform or pre-transform matrix T (or... The N-bit vector u' is multiplied by the polarization transformation matrix G to output the N-bit vector u'. The polarization transformation is performed by multiplying the N-bit vector u' by the polarization transformation matrix G. N Multiplication is used to perform this. (This is related to) polarization transformation. Compared to the complexity of pre-transformation, the cost of pre-transformation can be as high as [missing information]. More importantly, for sets Among many other options (other options for information location), the selected Poor performance means that the performance becomes worse compared to other codes.

[0046] This method can also be described as a polar code with dynamically frozen bits (or frozen positions), where the dynamically frozen bits are constructed as a linear combination of previous information bits. Therefore, they are not equal to fixed values ​​like standard frozen bits. Note that polar codes with random dynamically frozen bits have been shown to exhibit highly competitive performance on various BMS channels. This description is provided for use with an SC-based decoder at the receiver, the process of which will be provided in the next paragraph. For this purpose, an alternative representation of the polar code with dynamically frozen bits is a precoded polar code. In this case, the set... (Information location) and transformation Can be combined to provide precoding matrix ,in , It is by The index belongs to A matrix composed of columns, yes Identity matrix. Matrix. pass Obtain, among which Non-singular matrices Only for Perform row operations to give it the desired structure. Consider the example above, where... and Formulas (1) and (2) respectively (as shown in the figure) Figure 2 (as shown). Then, as... Figure 4 As shown in formula (4), the corresponding precoding matrix is ​​obtained. . Figure 4 This is a matrix illustrating an example embodiment. The diagram of (Formula 4).

[0047] Figure 5 The corresponding block diagram for encoding is given in the figure, where precoding is performed as follows: . Figure 5 This is a diagram illustrating the encoding process using pre-coded polar codes according to another example embodiment. For example, in Figure 5 In the encoding process shown, the zero-padding vector Z and the transformation matrix Replaced with a single box for use with the precoding matrix Multiply. For example, then we have It was observed that this calculation only requires targeting... Instead of nine XOR operations as in Equation (3), a single XOR operation is performed. Furthermore, the precoding matrix in Equation (4) is more convenient for use at the receiver for SC-based decoding algorithms compared to the precoding matrix in Equation (3). However, it is observed that computation... The complexity requires 8 XOR operations, which makes the total number of XOR operations the same as when using formula (2), which is 9.

[0048] Typically, matrix Only in the index The column contains a single (The column corresponding to the information location) means that , and simply use In contrast, no calculations are required. It was observed that... At most there are on the list. One of the 1s, among which It includes the former A set of information index positions in a given location, where some columns are all zeros. In summary, for a given... Different choices (different sets of information locations) and different block lengths (its size satisfies) The goal is to obtain a code with a compact description (i.e., space-efficient) of a matrix as in Equation (4), for example, in encoding (i.e., avoiding like Direct multiplication or like It does not require high complexity in back-substitution operations and decoding, while providing excellent performance that competes with state-of-the-art designs.

[0049] For a given parameter and ,gather (Information location set) and transformation matrix Combination selection or precoding matrix The choice of is important for BLEP (Block Error Probability) and the encoding / decoding / space complexity required to achieve the target BLEP. Note that for sets Transformation matrix The choice of the precoding matrix affects the performance of the resulting code under near-ML decoding; therefore, the impact is particularly significant under SCL decoding. Similarly, the precoding matrix... The choice of [option name] will affect the performance of the resulting code under SC decoding and SCL decoding.

[0050] In some cases, techniques can be used to reduce the search space, which can sometimes degrade performance. Therefore, for each pair... and (in, , Provides different precoding matrices This requires for each pair and Store different matrices Furthermore, in some cases, such as vectors of length 7... It can be used to generate matrices as shown in formula (1). This matrix can be applied to specific Specified However, it performs poorly for many other options and doubles the coding complexity (e.g., the number of XOR operations required to perform precoding before polar coding). Improved techniques are desired that offer superior polar coding performance while being more compact or efficient.

[0051] Propose storage Upper triangular unit binary matrix It is used to extract any Pre-transformation matrix (also known as) ), to be used when needed Figure 3 In addition, it can be derived from the pre-transformation matrix. ( Extract from ) Systematic precoding matrix By analyzing the matrix Applying a row operation (e.g., the example requiring 9 XOR operations as described above) makes For use Figure 5 middle.

[0052] This requires storing a binary upper triangular identity matrix. Because it is an upper triangular identity matrix (i.e., all diagonal elements are 1), it can be stored as... Rows of different sizes, with lengths ranging from 1 to... Therefore, its space complexity is , rather than Furthermore, this matrix It is possible to store only one row of length ν, which can later be used to extract the desired precoded matrix. without needing to modify the matrix Perform row operations. This is done by storing a length of... We can achieve a low-complexity description using binary vectors. This contrasts with other solutions that use binary vectors for each pair. and Store different Compared to binary matrices, UEs and / or gNBs only need to store a single binary matrix (e.g., Upper triangular unit binary matrix ) or one of its lines.

[0053] In the following text, individual items may be received, identified, and / or stored. Upper triangular unit nonsingular matrix It can be used to define for any pair and of Pre-transformation matrix or .make It is the first in the matrix row and number The elements of the column. Since it is upper triangular and non-singular, then we have: ,but ,like ,but ,otherwise The upper triangular portion of the matrix is ​​observed to be the part that offers flexibility in choosing values. Therefore, any matrix... It can be stored as a large upper triangular matrix, where the space complexity is only 1 / 3. .

[0054] Then, for a given block length , of submatrix (This matrix is ​​obtained by removing all indices greater than...) The rows and columns (of which can be used) can be used as Figure 3 pre-transformation matrix Observed message The encoding can be achieved through, for example Figure 3 In Execution, as discussed, requires at most [time period] before the polarization transformation. The second binary operation (if) Apart from the upper triangular matrix, no structure was applied (Note: polarization transformation requires approximately...). (Secondary binary operation). Furthermore, in some cases, randomly generated... It can provide fairly good performance, for example, depending on the selected parameters. and Its complexity may reach .

[0055] Further improvements can be made as follows: In the following text, it is proposed that... (Therefore, from any and of Extract another Systematic precoding matrix , making (This means) The column corresponding to the information location is set as the identity matrix I. K (without requiring row operations). Obtain as described above. Then, through settings ( The rows corresponding to the information positions are set as identity matrices) and Obtain the desired systematic precoding matrix In other words, for precoding matrix The corresponding information location Columns, matrix The elements of these columns can be set as an identity matrix ( To obtain the systematic precoding matrix Instead of performing line operations, and through the... Perform row operations to obtain the systematic precoding matrix Compared to [previous methods], this achieves lower computational complexity. Furthermore, compared to [other methods]... Figure 3 Directly using the pre-transformation matrix In comparison, by using the matrix The columns are set to the identity matrix ( To obtain the systematic precoding matrix The obtained systematic precoding matrix Polar precoding requires fewer XOR operations (lower precoding complexity). The precoding is then performed as follows: (by using a systematic precoding matrix) replace Figure 5 Systematic precoding matrix in ). Observed (where u corresponds to the information position) The bits or positions are set to be equal to the identity matrix I. K )and (where u corresponds to the frozen position of the zero-padding vector Z) The bit or position is set to equal to ), The calculation only requires copying, with no additional overhead. Furthermore, it can be calculated as follows: :like ,but ,otherwise An example is provided below, in which... , , and .

[0056] Note that if the systematic precoding matrix For precoding, the resulting code and the pretransform matrix Heji The defined codes are different, and if the matrix If constructed as described in the detailed description, the performance will be similar.

[0057] Figure 6 Four example matrices are shown, including N. max ×N max Upper triangular matrix (Formula 5), ​​K×N systematic precoding matrix ,matrix and K×N precoding matrix .

[0058] N max ×N max Upper triangular identity matrix (Formula 5) can include multiple nested pre-transformation submatrices. For different values ​​of N, these submatrices... They can be nested, for example, they can overlap each other, and they can be in N... max ×N max Upper triangular identity matrix Provided within (or in the matrix) The memory contains different sizes or corresponding values ​​of N. Several exemplary pre-transformed submatrices are shown. Including: in 610, matrix Example 8×8 (N=8) submatrix (shown in bold elements or bits); Example 4×4 (N=4) submatrix in 612. ; and in 614, another example of a 4×4 (N=4) submatrix These are merely the pre-transformed submatrices. Examples, and can be found in the matrix Other submatrices may be provided or exist within it, for example, submatrices The diagonal bits or elements can be used with N max ×N max Upper triangular matrix The diagonal elements are shared or common (or may be a subset thereof). Furthermore, the submatrix... The diagonal bits or elements can be used with N max ×N max Upper triangular identity matrix Alignment of diagonal elements (or a subset thereof). Therefore, for example, for a given value of N, it is possible to align the diagonal elements of N. max ×N max Upper unit triangular matrix Choose any N×N pretransformation submatrix For example, as long as the selected submatrix Provided along the same diagonal (or centered along the diagonal) (or its diagonal aligned with the diagonal).

[0059] according to and set (The information location of the zero-padding vector Z) can be used to obtain the precoding matrix. ,like Figure 6 As shown, this provides superior performance compared to... Figure 6 The direct use shown in the text The advantage of this is that it is suitable for matrices. Performing a back-substitution operation once allows you to... Figure 6 The method for obtaining the precoding matrix is ​​shown. If the matrix If the precoding matrix is ​​generated randomly as described below, both methods offer similar performance, where the precoding matrix... Its use is due to its use of the identity matrix (I K The simplicity of this approach avoids back-substitution operations. Therefore, it is more efficient than obtaining and using the precoded matrix. In comparison, precoding matrix Lower computational complexity is provided due to fewer XOR operations at the encoder and decoder.

[0060] Initially, the matrix The upper part can be generated by random elements, that is, if , ,in The choice can be made based on the desired sparsity. As a lower-complexity alternative, a generation length of... binary vector ,in , making .in this case, The rows are constructed as follows: and for , In other words, the first row starts with 1, followed by vectors. The former 1 entry, and At that time, the remaining ( Each position is used Filling. Subsequent rows can be constructed as follows: shift the previous row by 1, fill the first entry of that row with a 0, and truncate the last entry to have a maximum of N columns. Observe that for formula (5), the matrix... That is, construct it in the manner described above, and select... And the resulting vector is constructed as .

[0061] According to an example embodiment, the process or method may include: determining and / or storing a single N. max ×N max Upper triangular unit binary matrix It contains or includes multiple N×N upper triangular identity submatrices for different values ​​of N. or The matrices described in this article can be binary matrices, because their elements are either 0 (zero) or 1 (one). An upper triangular identity matrix (usually a square matrix) is a matrix where all diagonal elements (along one diagonal) are 1, all elements below the diagonal are 0, and elements above the diagonal can be either 0 or 1. Diagonal elements are the elements in the matrix whose row index equals their column index. N max ×N max Upper triangular identity matrix It is provided in a compact or compact form because it can include multiple nested N×N upper triangular identity submatrices for different values ​​of N. or Multiple N×N upper triangular identity submatrices Aligned with the diagonal of N, and with N max ×N max Upper triangular identity matrix Aligned diagonally. Therefore, for example, an N×N upper triangular identity submatrix. The elements of the diagonal can be N max ×N max Upper triangular identity matrix A subset of the elements on the diagonal.

[0062] For a given block length or codeword size N, the process or method may include: from Nmax ×N max Upper triangular identity matrix Determine or extract the N×N upper triangular unit pretransformation submatrix or It can be used to perform a pre-transformation before the polarization transformation.

[0063] The process or method may include: from an N×N upper triangular identity matrix or based on an N×N upper triangular identity matrix (e.g., from an N×N upper triangular identity pre-transformation submatrix). Given a payload bit sequence size (or message size) K (to be polarized) and a given codeword size N (after polarization coding), determine a K×N systematic precoding matrix. This is used for precoding before polarization transformation. The system matrix is ​​or can be, for example, a matrix in which a subset (e.g., multiple) of the N columns (e.g., K columns, where K < N) constitute the identity matrix. Therefore, the system matrix comprises a subset of the columns that make up the identity matrix. The identity matrix ( A matrix is ​​a square matrix (a matrix with the same number of rows and columns) where the elements along the diagonal of the square matrix are all 1s (matrix elements or bits where the row index equals the column index are provided as 1), and the other elements or bits of the matrix are provided as 0s (zeros). The matrices and submatrices described herein can be binary matrices, for example, because each element of a matrix or submatrix is ​​a binary value (0 or 1).

[0064] In the illustrative example, K = 6 bits of message size, encoded via polar coding or polar transformation. After polar transformation, the codeword size is N = 8 bits. Furthermore, the zero-padding vector Z can indicate the frozen bits or positions at positions 1 and 5. It can also indicate the information bits or positions at positions 2, 3, 4, 6, 7, and 8 of the example 8-bit zero-padding vector Z. Therefore, in this example, the zero-padding vector Z could be: 01110111, where 1 is provided in the information position and 0 is provided in the frozen position.

[0065] Figure 7 This illustrates what can be used to extract from N according to an example embodiment. max ×N max Upper triangular identity matrix Determine the N×N upper triangular identity matrix And also used to determine the K×N precoding matrix. A diagram of the operations. In an example embodiment, the matrix... It can be considered a pre-encoding matrix. Figure 8This illustrates an example embodiment that can be used for K×N precoding matrices. Determine the K×N systematic precoding matrix The diagram shows the operation. Figure 9 This is a flowchart illustrating operations that can be performed by the UE or other nodes, and... Figure 7 and Figure 8 Corresponding. (Refer to) Figure 7 and Figure 8 describe Figure 9 The operation or steps. Can be performed. Figure 9 The flowchart includes one or more steps from steps 1-7. See below for reference. Figure 7 and Figure 8 The examples shown illustrate these steps.

[0066] Step 1) Determine and / or store N max ×N max Upper triangular identity matrix For example, a 16-bit × 16-bit upper triangular identity matrix. (where N is in this example) max =16), which internally contains or includes multiple nested N×N pretransformation submatrices for different values ​​of N. or N max It is the maximum value of N (codeword size). In the example, the upper triangular identity matrix... This can include all 1s along the diagonal (e.g., all 1s extending from the top left corner to the bottom right corner of the matrix), all zeros to the left and below that diagonal, and The 1s or 0s above and to the right of the matrix. Furthermore, for example, the matrix... The information can be pre-stored or determined by the UE, or it can be notified to the UE by a gNB signal, or the UE may already know the information (e.g., matrix). (line 1), or a signal is sent to the UE, which allows the UE to determine or generate a matrix. Example N max ×N max (16×16) Upper triangular identity matrix exist Figure 7 It is shown as matrix 710.

[0067] Step 2) For a given N, determine or extract the upper triangular unit pre-transformation submatrix. Based on N, from N max ×N max Upper triangular identity matrix Extract the N×N upper triangular unit pretransform submatrix The N×N upper triangular unit pretransformation submatrix diagonal elements and Nmax ×N max Upper triangular identity matrix The diagonal elements are shared or common. That is, for a given N, any N×N upper triangular unit pretransformation submatrix of size N... All can be derived from N max ×N max Upper triangular unit binary matrix Select or extract, as long as the N×N upper triangular unit pre-transformation submatrix is ​​selected. diagonal elements and N max ×N max Upper triangular unit binary matrix The diagonal positions are shared, common, or aligned. In other words, the N×N upper triangular unit pre-transformation submatrix... The diagonal element is N max ×N max Upper triangular identity matrix A subset of the diagonal elements, or an N×N upper triangular unit pre-transformation submatrix. The diagonal and N max ×N max Upper triangular identity matrix The diagonal alignment. In this example, N = 8 bits, which can be obtained from N... max ×N max Upper triangular identity matrix Determine or extract the 8×8 upper triangular unit pretransformation submatrix Extract or obtain the upper triangular unit pre-transformation submatrix. This could include, for example, deleting N. max ×N max Upper triangular unit binary matrix The rows and columns with row or column indices greater than N. Therefore, for N=8, this could include deleting rows with row indices greater than 8 (e.g., deleting rows 9-16) and columns with column indices greater than 8 (e.g., deleting columns 9-16) to obtain an 8×8 upper triangular unit pre-transformed submatrix. .like Figure 7 As shown, for example, by deleting columns with column indices greater than N=8 from matrix 710 and rows with row indices greater than 8 from matrix 710, the 8×8 upper triangular unit pre-transformation submatrix... ( Figure 6 and 7 Matrix 610 in the matrix can be derived from a 16×16 upper triangular unit binary matrix. (Matrix 710) is used to obtain or extract. This is to determine or extract an N×N (e.g., N=8 in this example) upper triangular unit pre-transformation submatrix. This is an example technique, and other techniques can be used. Furthermore, there may be multiple (or many) 8×8 upper triangular unit pretransformation submatrices. And any one of these pretransformed submatrices can be selected, as in the reference... Figure 6 As described.

[0068] Step 3) For a given K and N (e.g., in this example, K=6 and N=8), receive or determine the zero-padding vector Z, indicating the location of the information. and frozen position For a given K and N, a zero-padding vector Z can be received or determined. In the example of K=6 and N=8, the 8-bit zero-padding vector Z can indicate the freeze positions at positions 1 and 5. And the information locations at positions 2, 3, 4, 6, 7, and 8. As mentioned above, a zero-padding vector Z can be selected to optimize or improve the performance of polar coding for that particular K and N. Therefore, each combination of K and N can have its own zero-padding vector Z, which indicates the location of the information. and frozen position Therefore, in this illustrative example, the zero-padding vector Z could be: 01110111 (where 1 indicates the information location and 0 indicates the frozen position of the example 8-bit zero-padding vector Z).

[0069] Step 4) Freeze position based on zero-padding vector Z and N×N upper triangular unit pretransformation submatrix Determine or obtain the K×N precoding matrix This step may involve deleting the N×N upper triangular unit pretransformation submatrix. The frozen position corresponding to the zero-filling vector Z The line. For example. Figure 7 As shown, in the example of the 8-bit zero-padding vector Z, the frozen positions are positions 1 and 5 of the 8-bit (or 8-bit) zero-padding vector Z. Figure 7 As shown, in step 4, the N×N upper triangular unit pre-transformation submatrix is ​​deleted. The frozen position corresponding to the zero-filling vector Z The rows at positions 1 and 5 result in an N×N upper triangular unit pretransformation submatrix. ( Figure 7 Rows 1 and 5 of the submatrix 610 are deleted or removed to obtain (or generate) a K×N (K=6, N=8) precoding matrix. .exist Figure 7 8×8 upper triangular unit pretransformation submatrix (Submatrix 610, Figure 7The deletion of rows 1 and 5 of submatrix 610 involves crossing out these rows. Therefore, the frozen position of the zero-filling vector Z indicates the N×N upper triangular unit pre-transformed submatrix. The deleted rows are used to obtain the K×N precoding matrix. Therefore, for a given combination of K and N, the zero-padding vector Z (including information location) and frozen position The instruction can lead to a specific K×N precoding matrix composed of K and N. .

[0070] Step 5) Based on the K×N matrix Information position of the zero-padding vector Z Determine or extract the K×N systematic precoding matrix For a K×N precoding matrix The corresponding information bit or position The columns, setting the elements or bits of those columns to the identity matrix ( To obtain the systematic precoding matrix In this step, the K×N precoding matrix... The frozen position corresponding to the zero-filling vector Z The rows will remain unchanged; for example, they will be compared with the K×N precoding matrix. The bits or elements in the precoding matrix are the same. For example, this can actually lead to problems with the precoding matrix. The middle corresponds to the information location Some 1s in the positions or bits of those columns are changed to 0 (or set to zero, or change 1 to 0), but the identity matrix bits or positions outside those columns are set to 1. The identity matrix is ​​a matrix where all elements or bits along the diagonal are 1 (e.g., providing 1 in matrix elements where the row index equals the column index), and all other elements or bits are zero. This is achieved by feeding a K×N pre-encoding matrix... The corresponding information bit or position Those subsets of the columns are applied to or written into the identity matrix ( ), operable In these columns, change 1 to zero (or set to zero) (except for the K×N precoding matrix). The identity matrix 1 in those columns associated with the information location (which will remain 1) is used to obtain the system's K×N precoding matrix. (Matrix 825, Figure 8 It was observed that, in this way, the transmitter and receiver do not need to perform line operations. Converted into a systematic precoding matrix (Row operations require many XOR operations).

[0071] Reference Figure 8 This shows an example K×N precoding matrix consisting of 6 rows and 8 columns. (Matrix 805). Columns 1 and 5 (columns 1 and 5) (810) correspond to the frozen positions of the zero-padding vector and are not modified or changed. Columns 2, 3, and 4 (820) and 6, 7, and 8 (830) correspond to the information positions of the zero-padding vector. The frozen position columns (columns 1 and 5) are ignored, and only (or based on) the precoding matrix is ​​considered. The subset of the 6 columns corresponding to the information positions in (matrix 805), the identity matrix I. K Write to or apply to a K×N precoding matrix Those subsets of the columns (columns 2, 3, 4, 6, 7, and 8 in this example) of matrix 805. In this illustrative example, this might result in 1 being written to one element in each of columns 1, 3, 4, 6, 7, and 8 (along the diagonal of these subsets, e.g., where the row index equals the column index, ignoring columns 1 and 5), and the other elements of these subsets of K=6 columns being written to zero or set to zero, as shown below. Figure 8 As shown in the example. Reference Figure 8 The example shown ignores the matrix. Columns 1 and 5 (column 810), the identity matrix is ​​written into or applied to the matrix. Columns 2, 3, 4, 6, 7, and 8, where X indicates 1s that are changed to 0 (or set these 1s to zero), are used as part of the process of applying the identity matrix to a subset of these columns. Note that writing 1s to diagonal elements (writing 1s to elements whose row index equals column index) applies only to a subset of columns K, excluding columns 1 and 5, which correspond to the frozen positions.

[0072] Therefore, based on the systematic precoding matrix before polarization transformation When performing precoding, zeroing out (or changing these matrix elements from 1 to 0) reduces the number of XOR operations required (and thus reduces the computational complexity of precoding) while maintaining excellent performance. Therefore, compared to obtaining and then using the precoded matrix... In comparison, based on the precoding matrix Corresponding to information location The column is applied to or written into the identity matrix ( (It may change some 1s to 0s in a subset of that column), using a systematic precoding matrix. Precoding can enable the use of systematic precoding matrices. The precoding employs fewer XOR operations, thus reducing computational complexity while maintaining excellent performance. Furthermore, the identity matrix is ​​applied to or written into the precoding matrix. The information position of the zero-padding vector Z The corresponding subset of N columns provides relatively simple and low-complexity techniques for obtaining or determining systematic precoding matrices. This does not cause or require computationally expensive operations, such as row operations.

[0073] Step 6) Based on the K×N systematic precoding matrix Perform precoding: Based on a K×N systematic precoding matrix Perform precoding on a K-bit message v to obtain or output an N-bit vector. This corresponds to copying the input bits into an N-bit vector. The information location is calculated, and only the value corresponding to the dynamically frozen bit is calculated.

[0074] Step 7) By using the N-bit vector With polarization transformation matrix Multiplication, for N-bit vectors Perform a polarization transformation to obtain an N-bit codeword c.

[0075] Some other example embodiments may include: 1) Store a single ,in yes The power of, from which: a. Generate Pre-transformation matrix (or T N ),in and (or T N Alignment with the diagonal of the matrix, for example, it could be the top left of the larger matrix. Part, for use as Figure 3 The encoding and corresponding decoder in the code; b. For example, extract any Systematic precoding matrix For use in encoding (such as) Figure 5 In this context, a systematic precoding matrix is ​​used. Decoding requires no back-substitution operations; c. Among them submatrix (or It can optimize a given nested construct in order from smaller message size K to larger message size, so that it has the maximum minimum distance and the minimum minimum distance item weight. 2. Storage length is A single vector

[0076] a. Generate Pre-transformation matrix (or For example, this matrix can be generated as the top-left submatrix, used for Figure 3 The encoding and corresponding decoder are shown below; b. Anytime in advance Systematic precoding matrix For use in encoding (such as) Figure 5 (as shown) and decoding, without the need for back-substitution operations.

[0077] Figure 10 This is a diagram illustrating the operation of a network according to an example embodiment. UE 1012 can communicate with a network node or gNB 1010. In step 1, UE 1012 can request coding information, allowing the UE to determine a precoding matrix for performing precoding prior to polar coding. In step 2, gNB 1010 can determine N and K, for example, based on channel conditions (such as reference signal received power, reference signal received quality, channel quality indication from the UE, or other channel-related measurements). For a given N and K, gNB can also determine a zero-padding vector, which can indicate information location and freeze location. For example, a 5G reliability sequence can be used or determined and used as the zero-padding vector. In step 3, gNB 1010 sends coding parameters to UE 1012, including, for example, N, K, and a possible zero-padding vector Z. In steps 4 and 5, UE 1012 and gNB 1010 can then, for example, according to the above reference... Figures 6 to 9 The described method determines the K×N systematic precoding matrix. .

[0078] Figure 11This is a diagram illustrating the operation of a network according to another example embodiment. UE 1012 can communicate with a network node or gNB 1010. In step 1, UE 1012 can request encoding information so that the UE can perform polar coding based on one of a plurality of polar coding types. In step 2, gNB 1010 can determine, for example, based on channel conditions or other information between the UE and gNB, which polar coding type the UE should use for polar coding. The plurality of polar coding types may include, for example, a first polar coding type (e.g., 5G polar coding) with external cyclic redundancy check (CRC) encoding and a second polar coding type with precoding based on a systematic precoding matrix determined based on the information position of the zero-padding vector Z, and / or based on K and N. In step 3, gNB 1010 can send an indication to UE 1012 of which polar coding type should be used to perform polar coding. If a 5G polar code type is indicated, the gNB 1010 can indicate the CRC length and freeze position, and the gNB can indicate K, N, and / or Z (including indications of information position and freeze position). In steps 4 and 5, the gNB and UE can then perform either of the following operations: 1) if a 5G polar code is indicated, perform polar coding using the 5G polar code; or 2) determine a systematic precoding matrix, for example, based on N and K and / or Z. Then the UE can perform precoding based on the precoding matrix (the gNB can perform decoding based on the precoding matrix at the receiving end).

[0079] Figure 12A This is a flowchart illustrating the operation of a user equipment (or UE) according to an example embodiment. Operation 1205 includes determining a first precoding matrix having a size determined based on the message size of the message to be encoded by polar coding and the codeword size of the polar-coded codewords. Operation 1210 includes determining a second precoding matrix based on the first precoding matrix and the information positions of the zero-padding vector. Operation 1215 includes performing precoding for the message based on the second precoding matrix to generate an output vector.

[0080] Figure 12B This is a flowchart illustrating the operation of a user equipment (or UE) according to another example embodiment. Operation 1220 includes receiving from a network node the message size of the message to be encoded by polar coding and the codeword size of the polar-coded codeword. Operation 1225 includes receiving from the network node an indication of the information location of a zero-padding vector. Operation 1230 includes determining a precoding matrix based on the message size, codeword size, and information location. Operation 1235 includes performing precoding on the message based on the precoding matrix to generate an output vector.

[0081] Figure 12C This is a flowchart illustrating operation of a user equipment (or UE) according to another example embodiment. Operation 1240 includes receiving from a network node an instruction to perform polar coding using one of a plurality of polar code types, wherein the plurality of polar code types includes a first polar code type having an outer cyclic redundancy check (ECR) code and a second polar code type having a precoding based on a precoding matrix, the precoding matrix being determined at least based on the information positions of zero-padding vectors. Operation 1245 includes performing polar coding on a message based on the indicated polar code type.

[0082] Some examples will be described: Clause 1. A method comprising: determining a first precoding matrix having a size determined based on a message size of a message to be encoded by polar coding and a codeword size of a polar-coded codeword; determining a second precoding matrix based on the first precoding matrix and information positions of a zero-padding vector; and performing precoding on the message based on the second precoding matrix to generate an output vector.

[0083] Clause 2. The method according to Clause 1, wherein determining the second precoding matrix comprises: setting the elements of columns of the first precoding matrix corresponding to information positions of zero-padding vectors to an identity matrix to obtain the second precoding matrix, wherein the second precoding matrix is ​​a systematic precoding matrix.

[0084] Clause 3. The method according to any one of Clauses 1-2 further comprises: performing a polarization transformation on the output vector by multiplying the output vector with a polarization transformation matrix to obtain a polarized codeword.

[0085] Clause 4. The method according to any one of Clauses 1-3 further includes: determining a zero-padding vector for indicating the location of information and the zero position based on the message size and the codeword size.

[0086] Clause 5. The method according to any one of Clauses 1-4 further comprises: determining a fourth matrix, the fourth matrix comprising a plurality of pretransform submatrices for different codeword sizes.

[0087] Clause 6. The method according to Clause 5 further comprises: determining, from the fourth matrix, an additional pretransform submatrix for the codeword size of a plurality of pretransform submatrixes, wherein the diagonal elements of the additional pretransform submatrix are a subset of the diagonal elements of the fourth matrix.

[0088] Clause 7. The method according to Clause 6, wherein the diagonal elements of the additional pre-transformed submatrix are identical to at least a portion of the diagonal elements of the fourth matrix.

[0089] Clause 8. The method according to any one of Clauses 6-7, wherein determining an additional pre-transformed submatrix from the fourth matrix comprises: deleting at least one of the following: a row or more rows of the fourth matrix or a column or more columns of the fourth matrix, wherein a row or more rows of the fourth matrix or a column or more columns of the fourth matrix has at least one of the following: a row index or column index greater than the codeword size.

[0090] Clause 9. The method according to Clause 6 further comprises: deleting one or more rows of an additional pretransform submatrix corresponding to one or more frozen positions to obtain a first precoding matrix.

[0091] Clause 10. The method according to any one of Clauses 1 to 9, wherein K is the message size and N is the codeword size; wherein determining the first precoding matrix comprises: determining a K×N precoding matrix. The determination of the second precoding matrix includes: based on the K×N precoding matrix. Information position of the zero-padding vector Z Determine the K×N systematic precoding matrix Furthermore, the precoding process includes: precoding based on a K×N systematic precoding matrix. Precoding is performed on a K-bit message V to generate an N-bit output vector. .

[0092] Clause 11. The method according to Clause 10, wherein a K×N systematic precoding matrix is ​​determined. Includes: for K×N precoding matrices The information position corresponding to the zero-padding vector Z The columns, and the elements of these columns are set as the identity matrix I. K To obtain the systematic precoding matrix .

[0093] Clause 12. The method according to any one of Clauses 10-11 further includes: passing an N-bit output vector With polarization transformation matrix Multiplication to perform N-bit output vector The polarization transformation is used to obtain the N-bit codeword c.

[0094] Clause 13. The method described in Clause 10 further includes: determining N max ×N max Upper triangular identity matrix N max ×N max Upper triangular identity matrix Includes multiple N×N submatrices for different values ​​of N. .

[0095] Clause 14. The method described pursuant to Clause 13 further includes: with respect to the codeword size (N), from N max ×N max Upper triangular identity matrix Determine multiple N×N submatrices The N×N pretransformation submatrix Where the N×N pretransformation submatrix The diagonal element is N max ×N max Upper triangular identity matrix A subset of the diagonal elements.

[0096] Clause 15. The method according to Clause 6, wherein the N×N pretransformation submatrix is ​​determined. Includes: Deleting at least one of the following: N max ×N max Upper triangular identity matrix One or more rows, one or more columns, N max ×N max Upper triangular identity matrix It has at least one of the following: a row index or a column index greater than N.

[0097] Clause 16. The method according to Clause 15 further includes: deleting the N×N pre-transformed submatrix. One or more rows corresponding to the frozen positions are used to obtain the K×N precoding matrix. .

[0098] Clause 17. The method described in Clause 13, wherein N max ×N max Upper triangular identity matrix Includes multiple nested N×N pretransformation submatrices for different values ​​of N. The diagonal of one or more N×N pretransformed submatrices and N max ×N max Upper triangular identity matrix Align the diagonals.

[0099] Clause 18. An apparatus comprising: at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform at least: determining a first precoding matrix, the size of which is determined based on a message size to be encoded by polar coding and a codeword size of a polar-coded codeword; determining a second precoding matrix based on the first precoding matrix and information positions of a zero-padding vector; and performing precoding on the message based on the second precoding matrix to generate an output vector.

[0100] Clause 19. An apparatus comprising: at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform at least the method according to any one of Clauses 1-17.

[0101] Clause 20. An apparatus comprising components for performing the method according to any one of Clauses 1-17.

[0102] Clause 21. A method comprising: receiving from a network node a message size to be encoded by polar coding and a codeword size of a polar-coded codeword; receiving from the network node an indication of the information position of a zero-padding vector; determining a precoding matrix based on the message size, the codeword size, and the information position; and performing precoding on the message based on the precoding matrix to generate an output vector.

[0103] Clause 22. The method according to Clause 21, wherein determining the precoding matrix comprises: determining a systematic precoding matrix, wherein the systematic precoding matrix comprises a subset of columns forming an identity matrix.

[0104] Clause 23. The method according to Clause 22, wherein determining the systematic precoding matrix comprises: setting the elements of the columns of the first precoding matrix to an identity matrix for the columns corresponding to the information positions of the zero-padding vectors of the first precoding matrix, to obtain the systematic precoding matrix.

[0105] Clause 24. An apparatus comprising: at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform at least: receiving from a network node a message size to be encoded by polar coding and a codeword size of a polar-coded codeword; receiving from the network node an indication of the location of an information vector of zero-padding; determining a precoding matrix based on the message size, the codeword size, and the information location; and performing precoding on the message based on the precoding matrix to generate an output vector.

[0106] Clause 25. A method comprising: receiving from a network node an instruction to perform polar coding using one of a plurality of polar code types, wherein the plurality of polar code types include a first polar code type having an outer cyclic redundancy check (ECR) code and a second polar code type having a precoding based on a precoding matrix, the precoding matrix being determined at least based on the information positions of a zero-padding vector; and performing polar coding on a message based on the indicated polar code type.

[0107] Clause 26. The method described in accordance with Clause 25, wherein the instruction indicates the use of a second polar code type.

[0108] Clause 27. The method according to Clause 26, wherein the precoding matrix includes a systematic precoding matrix that includes a subset of columns forming an identity matrix.

[0109] Clause 28. The method of Clause 26, wherein the precoding matrix includes a systematic precoding matrix, the method further comprising: setting the elements of the columns of the first precoding matrix to an identity matrix for columns of the first precoding matrix corresponding to information positions of zero-padding vectors, to obtain a systematic precoding matrix.

[0110] Clause 29. The method according to any one of Clauses 27-28, wherein the precoding for the second polar code type is based on a systematic precoding matrix, which is determined at least based on the information location, the message size of the message to be encoded by polar coding, and the codeword size of the polar-coded codeword.

[0111] Clause 30. The method pursuant to Clause 27 further comprises: performing precoding on the message to generate an output vector based on a systematic precoding matrix.

[0112] Clause 31. The method according to Clause 30 further comprises: performing a polarization transformation on the output vector by multiplying the output vector with a polarization transformation matrix to obtain a polarized codeword.

[0113] Clause 32. The method according to Clause 27 further comprises: determining an indication to use a second polar code type; receiving the message size of the message to be encoded by polar coding, the codeword size of the polar-coded codeword, and the information position; determining a first precoding matrix having a size determined based on the message size and the codeword size; and setting the elements of the columns of the first precoding matrix to an identity matrix for the columns of the first precoding matrix corresponding to the information positions of the zero-padding vector, to obtain a systematic precoding matrix.

[0114] Clause 33. The method according to Clause 32 further includes: performing precoding on the message to generate an output vector based on a systematic precoding matrix.

[0115] Clause 34. The method according to Clause 33 further comprises: performing a polarization transformation on the output vector by multiplying the output vector with a polarization transformation matrix to obtain a polarized codeword.

[0116] Clause 35. The method according to Clause 32 further comprises: determining a second matrix, the second matrix including a plurality of pretransform submatrices for different codeword sizes; from the second matrix, determining pretransform submatrices for codeword sizes of the plurality of pretransform submatrices, wherein the diagonal elements of the determined pretransform submatrices are a subset of the diagonal elements of the second matrix or are aligned with the diagonal elements of the second matrix.

[0117] Clause 36. The method according to Clause 35, wherein determining the pre-transformed submatrix comprises: deleting at least one of the following: a row or more rows of the second matrix or a column or more columns of the second matrix, wherein a row or more rows of the second matrix or a column or more columns of the second matrix has at least one of the following: a row index or column index greater than the codeword size.

[0118] Clause 37. The method according to any one of Clauses 35-36 further comprises: deleting one or more columns of the pretransform submatrix corresponding to the frozen positions of the zero-padding vector to obtain the first precoding matrix.

[0119] Clause 38. The method according to any one of Clauses 29-37: where K is the message size and N is the codeword size; wherein the systematic precoding matrix comprises a K×N systematic precoding matrix. The precoding for the second polar code type is based on a K×N systematic precoding matrix. K×N systematic precoding matrix Information location based on zero-filling vector Z The size of the message to be encoded by polar coding and the size of the codeword after polar coding are determined.

[0120] Clause 39. An apparatus comprising: at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to at least: receive from a network node an instruction to perform polar coding using one of a plurality of polar code types, wherein the plurality of polar code types include a first polar code type having an external cyclic redundancy check (OCR) code and a second polar code type having a precoding based on a precoding matrix, the precoding matrix being determined at least based on the information positions of zero-padding vectors; and perform polar coding on a message based on the indicated polar code type.

[0121] Clause 40. An apparatus comprising: at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform at least the method according to any one of Clauses 25-38.

[0122] Clause 41. An apparatus comprising components for performing the method according to any one of Clauses 25-38.

[0123] Clause 42. An apparatus comprising components for performing the method according to any one of Clauses 21-23.

[0124] This disclosure also provides the following examples.

[0125] Example 1. An apparatus for wireless communication, comprising: At least one processor; and At least one memory, the at least one memory storing instructions that, when executed by the at least one processor, cause the device to perform at least the following: Receive the message size of the message to be encoded by polar coding from the network node and the codeword size of the polar-coded codeword; Indication of the location of the zero-padding vector received from the network node; Based on the message size, the codeword size, and the information position, determine the precoding matrix; and Based on the precoding matrix, the message is precoded to generate an output vector.

[0126] Example 2. The apparatus according to Example 1, wherein determining the precoding matrix includes: Determine the systematic precoding matrix, which includes a subset of the columns that form the identity matrix.

[0127] Example 3. The apparatus according to Example 2, wherein determining the systematic precoding matrix includes: For the columns of the first precoding matrix that correspond to the information positions of the zero-padding vector, the elements of the columns of the first precoding matrix are set to the identity matrix to obtain the systematic precoding matrix.

[0128] Example 4. A method for wireless communication, comprising: Receive the message size of the message to be encoded by polar coding from the network node, and the codeword size of the polar-coded codeword; Indicates the location of the zero-padding vector received from the network node; The precoding matrix is ​​determined based on message size, codeword size, and information location; and Based on the precoding matrix, the message is precoded to generate an output vector.

[0129] Example 5. An apparatus for wireless communication, comprising: At least one processor; and At least one memory, which stores instructions that, when executed by at least one processor, cause the device to perform at least the following: Receive from a network node an instruction to perform polar coding using one of a plurality of polar code types, wherein the plurality of polar code types include a first polar code type with an outer cyclic redundancy check (CRC) code and a second polar code type with a precoding based on a precoding matrix, the precoding matrix being determined at least based on the information positions of the zero-padding vector; and Polar coding is performed on the message based on the indicated polar code type.

[0130] Example 6. The apparatus according to Example 5, wherein the indication indicates the use of a second polar code type.

[0131] Example 7. The apparatus according to Example 6, wherein the precoding matrix includes a systematic precoding matrix, the systematic precoding matrix including a subset of columns forming an identity matrix.

[0132] Example 8. The apparatus according to Example 6, wherein the precoding matrix includes a systematic precoding matrix, and the apparatus is further configured to perform: For the columns of the first precoding matrix that correspond to the information positions of the zero-padding vector, the elements of these columns of the first precoding matrix are set to the identity matrix to obtain the systematic precoding matrix.

[0133] Example 9. The apparatus according to Example 7, wherein the precoding for the second polar code type is based on a systematic precoding matrix, which is determined at least based on the information location, the message size of the message to be encoded by polar coding, and the codeword size of the polar-coded codeword.

[0134] Example 10. The apparatus according to Example 7, wherein the apparatus is further caused to perform: Based on a systematic precoding matrix, the message is precoded to generate an output vector.

[0135] Example 11. The apparatus according to Example 10, wherein the apparatus is further caused to perform: The output vector is polarized by multiplying it with the polarization transformation matrix to obtain the polarized codeword.

[0136] Example 12. The apparatus according to Example 7, wherein the apparatus is further caused to perform: The indication indicates that the second polar code type is used; Receive the message size, the codeword size of the polar-coded codeword, and the information position of the message to be encoded using polar coding; Determine a first precoding matrix having a size determined based on the message size and codeword size; and For the columns of the first precoding matrix that correspond to the information positions of the zero-padding vector, the elements of the columns of the first precoding matrix are set to the identity matrix to obtain the systematic precoding matrix.

[0137] Example 13. The apparatus according to Example 12, wherein the apparatus is further caused to perform: Based on a systematic precoding matrix, the message is precoded to generate an output vector.

[0138] Example 14. The apparatus according to Example 13, wherein the apparatus is further caused to perform: The output vector is polarized by multiplying it with the polarization transformation matrix to obtain the polarized codeword.

[0139] Example 15. The apparatus according to Example 12, wherein the apparatus is further caused to perform: Determine the second matrix, which includes multiple pre-transformation submatrices for different codeword sizes; From the second matrix, determine the codeword size of the pretransform submatrix for the plurality of pretransform submatrixes, wherein the diagonal elements of the determined pretransform submatrix are a subset of the diagonal elements of the second matrix or are aligned with the diagonal elements of the second matrix.

[0140] Example 16. The apparatus according to Example 15, wherein determining the pre-transformed submatrix comprises: deleting at least one of the following: a row or more rows of the second matrix or a column or more columns of the second matrix, wherein a row or more rows of the second matrix or a column or more columns of the second matrix has at least one of the following: a row index or column index greater than the codeword size.

[0141] Example 17. The apparatus according to Example 15, wherein the apparatus is further caused to perform: Remove one or more columns from the pretransform submatrix corresponding to the frozen positions of the zero-padding vector to obtain the first precoding matrix.

[0142] Example 18. The apparatus according to any one of Examples 9 to 17: Where K is the message size and N is the codeword size; The systematic precoding matrix mentioned above includes a K×N systematic precoding matrix P. ; The precoding for the second polar code type is based on the K×N systematic precoding matrix P. The K×N systematic precoding matrix P The information position A of the zero-padding vector Z is determined based on the message size of the message to be encoded by polar coding and the codeword size of the polar-coded codeword.

[0143] Example 19. A method for wireless communication, comprising: Receive from a network node an instruction to perform polar coding using one of a plurality of polar code types, wherein the plurality of polar code types include a first polar code type having an outer cyclic redundancy check (CRC) code and a second polar code type having a precoding based on a precoding matrix, the precoding matrix being determined at least based on the information positions of zero-padding vectors; and Polar coding is performed on the message based on the indicated polar code type.

[0144] Figure 13 This is a block diagram of a wireless station or node (e.g., UE, user equipment, AP, BS, eNB, gNB, RAN node, network node, TRP, or other node) 1300 according to an example embodiment. The wireless station 1300 may include, for example, one or more (e.g., such as...) Figure 13 The two RF (radio frequency) or wireless transceivers 1302A and 1302B shown herein include a transmitter for transmitting signals and a receiver for receiving signals. The wireless station also includes a processor or control unit / entity (controller) 1304 for executing instructions or software and controlling the transmission and reception of signals, and a memory 1306 for storing data and / or instructions.

[0145] Processor 1304 may also make decisions or determinations, generate frames, packets, or messages for transmission, decode received frames or messages for further processing, and perform other tasks or functions described herein. For example, processor 1304, which may be a baseband processor, may generate messages, packets, frames, or other signals for transmission via wireless transceiver 1302 (1302A or 1302B). Processor 1304 may control the transmission of signals or messages on a wireless network and may control the reception of signals or messages via a wireless network (e.g., after down-conversion by wireless transceiver 1302). Processor 1304 may be programmable and capable of executing software or other instructions stored in memory or other computer media to perform one or more of the various tasks and functions described above, such as one or more of the tasks or methods described above. Processor 1304 may be (or may include) hardware, programmable logic, a programmable processor executing software or firmware, and / or any combination of these. For example, using other terms, processor 1304 and transceiver 1302 together may be considered a wireless transmitter / receiver system.

[0146] Additionally, refer to Figure 13 The controller (or processor) 1308 can execute software and instructions, and can provide overall control for station 1300, and can provide... Figure 13Other systems, not shown, provide control, such as controlling input / output devices (e.g., a display, a keyboard) and / or can execute software for one or more applications that may be available on the wireless station 1300, such as, for example, an email program, an audio / video application, a word processor, a VoIP application, or other applications or software.

[0147] In addition, a storage medium may be provided that includes stored instructions, which, when executed by a controller or processor, may cause the processor 1304 or other controller or processor to perform one or more of the functions or tasks described above.

[0148] According to another example embodiment, the RF or wireless transceiver 1302A / 1302B can receive signals or data, and / or transmit or send signals or data. The processor 1304 (and possibly the transceiver 1302A / 1302B) can control the RF or wireless transceiver 1302A or 1302B to receive, transmit, broadcast, or transmit signals or data.

[0149] Example embodiments are provided or described for each example method, including: an apparatus (e.g., Figure 13 (of the 1300), the device includes components for performing any method (e.g., Figure 13 The processor 1304, RF transceiver 1302A and / or 1302B and / or memory 1306; non-transitory computer-readable storage medium (e.g., memory 1306, Figure 13 The non-transitory computer-readable storage medium includes instructions stored thereon, which are processed by at least one processor. Figure 13 The processor 1304 is configured to enable the computing system (e.g., 1300, ...) to execute. Figure 13 ) execute any example method; and devices (e.g., Figure 13 (1300), the device includes at least one processor (e.g., Figure 13 The processor 1304) and at least one memory (e.g., Figure 13 The at least one memory (1306) includes computer program code, and the at least one memory (1306) and the computer program code are configured together with at least one processor (1304) to cause the device (e.g., 1300) to perform at least any of the methods in the example methods.

[0150] Embodiments of the various technologies described herein can be implemented in digital electronic circuits, or in computer hardware, firmware, software, or combinations thereof. Embodiments can be implemented as computer program products, i.e., computer programs tangibly embodied in an information carrier (e.g., in a machine-readable storage device or in a propagating signal) for execution by or control of a data processing apparatus (e.g., a programmable processor, a computer, or multiple computers). Embodiments can also be provided on a computer-readable medium or a computer-readable storage medium, which may be a non-transitory medium. Embodiments of the various technologies may also include embodiments provided via transient signals or media, and / or program and / or software embodiments downloadable via the Internet or other networks (wired and / or wireless networks). Additionally, embodiments can be provided via machine-type communication (MTC) and also via the Internet of Things (IoT).

[0151] As used herein, the term "circuit" or "circuit" means all of the following: (a) a hardware circuit implementation, such as an implementation in analog and / or digital circuits only; and (b) a combination of circuits and software (and / or firmware), such as (where applicable): (i) a combination of (multiple) processors or (ii) a portion of (multiple) processors / software, including (multiple) digital signal processors, software, and (multiple) memories working together to enable the device to perform various functions; and (c) a circuit, such as (multiple) microprocessors or portions thereof, which require software or firmware for operation, even if the software or firmware is not physically present. This definition of 'circuit' applies to all uses of the term in this application. As another example, as used herein, the term "circuit" will also cover an implementation of a processor (or multiple processors) or a portion thereof and its (or their) accompanying software and / or firmware. For example, and if applicable to a particular element, the term "circuit" will also cover a baseband integrated circuit or application processor integrated circuit for use in a mobile phone or server, cellular network device, or another network device.

[0152] Computer programs can be in the form of source code, object code, or some intermediate form, and they can be stored on some carrier, distribution medium, or computer-readable medium, which can be any entity or device capable of carrying the program. For example, such carriers include recording media, computer memory, read-only memory, photoelectric and / or electrical carrier signals, telecommunication signals, and software distribution packages. Depending on the required processing power, a computer program can be executed in a single electronic digital computer, or it can be distributed across multiple computers.

[0153] Furthermore, embodiments of the various technologies described herein can utilize network-physical systems (CPS) (systems where collaborative computing elements control physical entities). CPS enables the implementation and utilization of a large number of interconnected ICT devices (sensors, actuators, processors, microcontrollers, etc.) embedded in physical objects at different locations. Mobile network-physical systems, which are inherently mobile physical systems, are a subcategory of network-physical systems. Examples of mobile physical systems include mobile robots and electronic devices transported by humans or animals. The rise of smartphones has increased interest in the field of mobile network-physical systems. Therefore, various embodiments of the technologies described herein can be provided via one or more of these technologies.

[0154] Computer programs such as those described above can be written in any programming language, including compiled or interpreted languages, and can be deployed in any form, including as standalone programs or as modules, components, subroutines, or other units or parts thereof suitable for use in a computing environment. Computer programs can be deployed to execute on a single computer, at a single site, or distributed across multiple sites and interconnected via a communication network.

[0155] The method steps can be executed by one or more programmable processors that execute a computer program or a portion thereof to perform a function by manipulating input data and generating output. The method steps can also be executed by special-purpose logic circuitry, and the apparatus can be implemented as special-purpose logic circuitry, such as an FPGA (Field-Programmable Gate Array) or an ASIC (Application-Specific Integrated Circuit).

[0156] As an example, processors suitable for executing computer programs include both general-purpose and special-purpose microprocessors, as well as any type of digital computer, chip, or chipset and any one or more processors. Typically, the processor receives instructions and data from read-only memory or random access memory, or both. Elements of a computer may include at least one processor for executing instructions and one or more memory devices for storing instructions and data. Typically, a computer may also include one or more mass storage devices (e.g., magnetic disks, magneto-optical disks, or optical disks) for storing data, or operatively coupled thereto to receive data or transfer data to or to them, or both. Suitable information carriers embodying computer program instructions and data include all forms of non-volatile memory, including, for example, semiconductor memory devices such as EPROM, EEPROM, and flash memory devices; magnetic disks, such as internal hard disks or removable disks; magneto-optical disks; and CD-ROMs and DVD-ROMs. The processor and memory may be supplemented by or incorporated into special-purpose logic circuitry.

[0157] To provide interaction with a user, embodiments can be implemented on a computer having a display device (e.g., a cathode ray tube (CRT) or liquid crystal display (LCD) monitor) for displaying information to the user and a user interface (e.g., a keyboard and pointing device, such as a mouse or trackball), through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, voice, or tactile input.

[0158] The embodiments can be implemented in a computing system that includes backend components (e.g., as a data server), or middleware components (e.g., an application server), or frontend components (e.g., a client computer having a graphical user interface or web browser through which a user can interact with the embodiments), or any combination of such backend, middleware, or frontend components. The components can be interconnected via digital data communication (e.g., a communication network) of any form or medium. Examples of communication networks include local area networks (LANs) and wide area networks (WANs), such as the Internet.

[0159] While certain features of the described embodiments have been shown as described herein, many modifications, substitutions, alterations, and equivalents will now occur to those skilled in the art. Therefore, it should be understood that the appended claims are intended to cover all such modifications and alterations falling within the true spirit of the various embodiments.

Claims

1. An apparatus for wireless communication, comprising: At least one processor; as well as At least one memory, the at least one memory storing instructions that, when executed by the at least one processor, cause the device to perform at least the following: Receive the message size of the message to be encoded by polar coding from the network node and the codeword size of the polar-coded codeword; Indication of the location of the zero-padding vector received from the network node; The precoding matrix is ​​determined based on the message size, the codeword size, and the information position; as well as Based on the precoding matrix, the message is precoded to generate an output vector.

2. The apparatus according to claim 1, wherein determining the precoding matrix comprises: Determine a systematic precoding matrix, wherein the systematic precoding matrix comprises a subset of the columns that form the identity matrix.

3. The apparatus according to claim 2, wherein determining the systematic precoding matrix comprises: For the column of the first precoding matrix corresponding to the information position of the zero-padding vector, the elements of the column of the first precoding matrix are set to an identity matrix to obtain the systematic precoding matrix.

4. A method for wireless communication, comprising: Receive the message size of the message to be encoded by polar coding from the network node and the codeword size of the polar-coded codeword; Indication of the location of the zero-padding vector received from the network node; The precoding matrix is ​​determined based on the message size, the codeword size, and the information position; as well as Based on the precoding matrix, the message is precoded to generate an output vector.

5. An apparatus for wireless communication, comprising: At least one processor; as well as At least one memory, the at least one memory storing instructions that, when executed by the at least one processor, cause the device to perform at least the following: Receive from a network node an instruction to perform polar coding using one of a plurality of polar code types, wherein the plurality of polar code types include a first polar code type having an external cyclic redundancy check (CRC) code and a second polar code type having a precoding based on a precoding matrix, the precoding matrix being determined at least based on the information positions of zero-padding vectors; as well as Polar coding is performed on the message based on the indicated polar code type.

6. The apparatus of claim 5, wherein the indication indicates the use of the second polar code type.

7. The apparatus of claim 6, wherein the precoding matrix comprises a systematic precoding matrix, the systematic precoding matrix comprising a subset of columns forming an identity matrix.

8. The apparatus of claim 6, wherein the precoding matrix comprises a systematic precoding matrix, and the apparatus is further configured to perform: For the columns of the first precoding matrix corresponding to the information positions of the zero-padding vector, the elements of these columns of the first precoding matrix are set to identity matrices to obtain the systematic precoding matrix.

9. The apparatus of claim 7, wherein the precoding for the second polar code type is based on the systematic precoding matrix, the systematic precoding matrix being determined at least based on the information location, the message size of the message to be encoded by polar coding, and the codeword size of the polar-coded codeword.

10. The apparatus of claim 7, wherein the apparatus is further caused to perform: Based on the systematic precoding matrix, the message is precoded to generate an output vector.