Construction of a polar code based on a distance criterion and a reliability criterion, in particular of a multi-kernel polar code
11190214 · 2021-11-30
Assignee
Inventors
- Valerio BIOGLIO (Boulogne Billancourt, FR)
- Ingmar Land (Boulogne Billancourt, FR)
- Jean-Claude Belfiore (Boulogne Billancourt, FR)
- Frederic Gabry (Boulogne Billancourt, FR)
Cpc classification
H03M13/033
ELECTRICITY
International classification
Abstract
The present disclosure relates to a device for generating a polar code x.sub.N of length N and dimension K on the basis of a transformation matrix G.sub.N of size N×N, wherein the transformation matrix G.sub.N is based on a first matrix G.sub.N, of size N.sub.r×N, and on a second matrix G.sub.N.sub.
Claims
1. A channel encoder including a device for generating a polar code x.sub.N of length N and dimension K, the device comprising: a processor configured to: generate a reliability vector having dimension j; determine a set of K information bit indices I on the basis of the reliability vector
and of the distance spectrum vector
; generate the polar code x.sub.N on the basis of the set of K information bit indices I; and transmit the polar code x.sub.N to a channel decoder via a communication channel, wherein:
N=N.sub.r.Math.N.sub.d, the polar code x.sub.N is given by x.sub.N=u.sub.N.Math.G.sub.N, a transformation matrix G.sub.N of size N×N is based on the first matrix G.sub.N.sub.
2. The channel encoder of claim 1, wherein the processor is further configured to generate the transformation matrix G.sub.N on the basis of the following equation:
G.sub.N=G.sub.N.sub.
3. The channel encoder of claim 1, wherein, in order to determine the set of K information bit indices I, the processor is further configured to: determine an index l of the largest entry z.sub.l in a vector z with the largest value l, wherein the vector z is defined by
4. The channel encoder of claim 3, wherein in order to determine the set of K information bit indices I, the processor is further configured to: initialize the set of K information bit indices I as an empty set, prior to determining the index l.
5. The channel encoder of claim 1, wherein the polar code x.sub.N has length N=12, wherein the transformation matrix is given by G.sub.12=T.sub.2.Math.T.sub.2.Math.T.sub.3, with:
6. The channel encoder of claim 1, wherein the processor is further configured to generate the reliability vector by calculating the reliability of the i-th input bit of the code generated by the first matrix G.sub.N.sub.
7. A method for generating a polar code x.sub.N of length N and dimension K, the method comprising the steps of: generating a reliability vector having dimension j; determining a set of K information bit indices I on the basis of the reliability vector
and of the distance spectrum vector
; and generating the polar code x.sub.N on the basis of the set of K information bit indices I; and transmitting the polar code x.sub.N to a channel decoder via a communication channel, wherein:
N=N.sub.r.Math.N.sub.d, the polar code x.sub.N is given by x.sub.N=u.sub.N.Math.G.sub.N, a transformation matrix G.sub.N of size N×N is based on the first matrix G.sub.N.sub.
8. A non-transitory computer readable medium storing a computer program comprising a program code for performing the method of claim 7 when executed by a processor.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Further embodiments of the disclosure will be described with respect to the following figures, wherein:
(2)
(3)
(4)
(5)
(6) In the various figures, identical reference signs will be used for identical or at least functionally equivalent features.
DETAILED DESCRIPTION OF THE EMBODIMENTS
(7) In the following description, reference is made to the accompanying drawings, which form part of the disclosure, and in which are shown, by way of illustration, specific aspects in which the present disclosure may be placed. It is understood that other aspects may be utilized and structural or logical changes may be made without departing from the scope of the present disclosure. The following detailed description, therefore, is not to be taken in a limiting sense, as the scope of the present disclosure is defined by the appended claims.
(8) For instance, it is understood that a disclosure in connection with a described method may also hold true for a corresponding device or system configured to perform the method and vice versa. For example, if a specific method step is described, a corresponding device may include a unit to perform the described method step, even if such unit is not explicitly described or illustrated in the figures. Further, it is understood that the features of the various exemplary aspects described herein may be combined with each other, unless specifically noted otherwise.
(9)
(10) The communication apparatus 102 comprises a channel encoder 102a, wherein the channel encoder comprises the device 102b for generating the polar code x.sub.N of length N and dimension K on the basis of a transformation matrix G.sub.N of size N×N according to an embodiment.
(11) The transformation matrix G.sub.N is based on a first matrix G.sub.N.sub.
(12) The device 102b comprises a processor 102c configured to: generate a reliability vector
(13)
wherein v.sub.i represents a reliability of an i-th input bit of a code generated by the first matrix G.sub.N.sub.
(14)
of a code generated by the second matrix G.sub.N.sub. and of the distance spectrum vector d.sub.G.sub.
(15) Thus, the device 102b advantageously allows for a construction of polar codes, in particular of multi-kernel polar codes, which makes use of both the bit-channel reliabilities and the distance properties. The processor 102c can be configured to combine the reliability and distance techniques in order to design or generate the set of frozen bit indices (or, equivalently, the set of information bit indices) of the multi-kernel polar code in such a way that the performance of the polar code is enhanced.
(16) Thus, an improved device 102b is provided, since it operates on the enhanced distance profile of the transformation matrix G.sub.N of the polar code x.sub.N, taking into account the reliabilities of the bits in order to improve the minimum distance design. For example, simulations show excellent BLER performance for the proposed design under SC list decoding (with list length 8) for exemplary codes having medium lengths (N˜100 . . . 1000).
(17) In an embodiment the transformation matrix G.sub.N is a multi-kernel polar code matrix given by:
G.sub.N=G.sub.N.sub.
wherein G.sub.N.sub.
(18) Furthermore, the processor 102c can be configured to generate a reliability vector =[v.sub.1, . . . v.sub.N.sub.
(19) The minimum distances achievable for the input bits of the second matrix G.sub.N.sub.
(20) The processor 102c can be configured to calculate the distance spectrum of a multi-kernel polar code as the Kronecker product of the distance spectra of the kernels forming the transformation matrix G.sub.N.sub.
(21)
of a code generated by the second matrix G.sub.N.sub.
(22) Moreover, given the pre-calculated vectors , w and w′, the processor 102c can be configured to calculate the vectors
(23)
and use z and z′ in order to generate the code x.sub.N. Therefore, the vector z and the vector z′ contain information about the reliability and distance.
(24) The processor 102c can also be configured to execute an algorithm which initializes the information set an empty set, and then to add sequentially, step-by-step, one row index to the information set. Then, at each step, the position l of the largest entry z.sub.l in the vector z with the largest value l is determined, and this index l is added to the information set, while the entry z.sub.l itself is set to zero. In addition, if l=(p.sub.s−1) mod p.sub.s, the index (l−p.sub.s+1) is removed from the information set, and the index l−1 is added to the set of K information bit indices I, while the algorithm sets z.sub.l-1=0 and z.sub.l-p.sub.
(25) The additional part is required, as by construction, (l−p.sub.s+1) should be not be in the information set any more in the step where l is added. Furthermore, this part is possible, as (l−1) is not yet in the set of K information bit indices I at this stage.
(26) Once, the polar code x.sub.N is generated, the communication apparatus 102 can be configured to send it to the communication apparatus 104 via a communication channel.
(27) In an embodiment, the communication apparatus 104 comprises a channel decoder 104a, wherein the channel decoder 104a comprises a device 104b for generating a polar code as described above. Moreover, the communication apparatus 104 can comprise a processor 104c configured to decode the polar code on the basis of a successive-cancellation (SC) algorithm or a successive-cancellation list (SCL) algorithm.
(28)
(29) In general, the relationship between the input vector u.sub.N and the polar code x.sub.N can be represented by a Tanner graph. An example of a Tanner graph is illustrated in
(30) Moreover, in can then be used in the minimum distance design algorithm as the spectrum of the first λ layers. The result is a mixed profile of the polar code x.sub.N. In particular, an embodiment with λ=0 corresponds to the reliability-based construction only, while an embodiment with λ=s, wherein s is the number of kernels used in the generation of the transformation matrix, corresponds the minimum-distance-based construction only. Therefore, in
(31) In the following table, the information sets obtained for different values of A for a polar code x.sub.N of dimension K=4 are listed:
(32) TABLE-US-00001 TABLE 1 Information sets for different parameters λ for code length N = 12 λ Information set 0 (DE/GA) u.sub.8, u.sub.9, u.sub.10, u.sub.11 1 u.sub.6, u.sub.9, u.sub.10, u.sub.11 2 u.sub.6, u.sub.9, u.sub.10, u.sub.11 3 (dist) u.sub.3, u.sub.6, u.sub.10, u.sub.11
(33) As it can be taken from table 1, the information set depends on the choice of the parameter λ. An optimal choice of the parameter λ can be done on the basis of numerical simulations.
(34) Once the polar code x.sub.N is generated, the communication apparatus 102 can be configured to send the polar code x.sub.N to the communication apparatus 104. The processor 104c of the communication apparatus 104 can be configured to decode the received polar code x.sub.N affected by the propagation through the communication channel, namely the vector of noisy symbols y.sub.N=(y.sub.0, y.sub.1, y.sub.2, y.sub.3, y.sub.4, y.sub.5, y.sub.6, y.sub.7, y.sub.8, y.sub.9, y.sub.10, y.sub.11).
(35) The processor 104c can be configured to perform a successive cancellation (SC) or successive cancellation list (SCL) decoding of the vector of noisy symbols y.sub.N, in order to get an estimate of the sent polar code x.sub.N. In the case of SC decoding, the input bits (corresponding to the ones on the left side of the Tanner graph) can be decoded successively from top to bottom by propagating the log-likelihood-ratio (LLR) values from right to left and hard-decisions (partial sums) from left to right (see, the aforementioned work by Arikan). The LLRs L.sup.(0), . . . , L.sup.(1) appearing at the right-most side correspond to the channel observations. LLRs and hard-decisions can be computed according to update functions which can be found in the aforementioned work by Arikan. As an alternative to SC decoding, SC list decoding (see, the work by I. Tal et. al, “List decoding of polar codes,” in IEEE ISIT, July 2011) or similar decoding methods can be used as well.
(36)
(37) In
(38) In this embodiment, the design parameter is given by λ=1, and the constructed polar codes have a dimension K=48, and lengths N=576, 288, 144, 96, 72. Moreover, the performance of polar codes according to embodiments of the disclosure (PROPOSED case) is compared to the construction of polar codes based only on the reliability design (see, PCT/EP2016/069593), denoted by DE/GA design in the figure, and on the minimum distance design (see, PCT/EP2016/082555), denoted by min-dist design in the figure.
(39) As it can be taken from
(40)
(41) The transformation matrix G.sub.N is based on a first matrix G.sub.N.sub.
(42) The method 400 comprises the steps of: generating 402 a reliability vector
(43)
wherein v.sub.i represents a reliability of an i-th input bit of a code generated by the first matrix G.sub.N.sub.
(44)
of a code generated by the second matrix G.sub.N.sub. and of the distance spectrum vector d.sub.G.sub.
(45) While a particular feature or aspect of the disclosure may have been disclosed with respect to only one of several implementations or embodiments, such feature or aspect may be combined with one or more other features or aspects of the other implementations or embodiments as may be desired and advantageous for any given or particular application. Furthermore, to the extent that the terms “include”, “have”, “with”, or other variants thereof are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term “comprise”. Also, the terms “exemplary”, “for example” and “e.g.” are merely meant as an example, rather than the best or optimal. It should be understood that the terms “coupled” and “connected”, along with similar terms or derivatives, may have been used to indicate that two elements cooperate or interact with each other regardless whether they are in direct physical or electrical contact, or they are not in direct contact with each other.
(46) Although specific aspects have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that a variety of alternate and/or equivalent implementations may be substituted for the specific aspects shown and described without departing from the scope of the present disclosure. This application is intended to cover any adaptations or variations of the specific aspects discussed herein.
(47) Although the elements in the following claims are recited in a particular sequence with corresponding labeling, unless the claim recitations otherwise imply a particular sequence for implementing some or all of those elements, those elements are not necessarily intended to be limited to being implemented in that particular sequence.
(48) Many alternatives, modifications, and variations will be apparent to those skilled in the art in light of the above teachings. Of course, those skilled in the art readily recognize that there are numerous applications of the disclosure beyond those described herein. While the present disclosure has been described with reference to one or more particular embodiments, those skilled in the art recognize that many changes may be made thereto without departing from the scope of the present disclosure. It is therefore to be understood that within the scope of the appended claims and their equivalents, the disclosure may be practiced otherwise than as specifically described herein.