The present disclosure relates, in general, to the field of encoding messages. In particular, the present disclosure relates to an apparatus and method for multi-level encoding of an input message into a symbol sequence, for instance, encoding based on polar coding. The disclosure relates also to an apparatus and method for multi-level decoding of an input symbol sequence. The disclosure is also concerned with providing the symbol sequence with a predefined characteristic.
In order to achieve the capacity of a transmission channel, the channel input symbols should have a certain probability distribution. For example, a Gaussian distribution is required to achieve the capacity of the AWGN channel with average transmit power constraint. However, in many practical systems, uniformly distributed channel input symbols are used, which cause a gap to the capacity. This loss is called the shaping loss, and can be up to 1.53 dB on AWGN channels, if uniformly distributed channel input symbols are used.
The shaping loss becomes significant especially for high-order modulation. In many systems, binary coded modulation is used, wherein input messages are first mapped to binary codewords (using a channel encoder), and the codewords are then further mapped to channel input symbols (such as Amplitude Shift Keying (ASK) or Quadrature Amplitude Modulation (QAM) symbols) via a symbol mapper. A symbol mapper takes in general m bits as input and converts them into a channel input symbol.
Usually, binary codewords have a uniform distribution of bits, i.e., the number of ones and zeros within a codeword is approximately the same on average. This causes the channel input symbols to also have a uniform distribution, which is the cause of the shaping loss, as for many channels uniformly distributed channel input symbols are not optimal.
Different methods to reduce the shaping loss (i.e., shaping methods) are known, such as Probabilistically Shaped Coded Modulation (PSCM) which can be realized based on Bit-Interleaved Coded Modulation (BICM) or Multi-Level Coding (MLC).
In BICM a message d is first encoded by a channel encoder to a code word c, which is interleaved and then mapped to channel input symbols x via a symbol mapper. At the receiver, a single stage demapping and decoding can be performed (see
In MLC a message d is first divided into m parts (d1, . . . , dm), wherein each part is then encoded with a different channel encoder resulting in codewords (c1, . . . , cm) of the same lengths. A symbol mapper maps each bit from the m codewords into a different bit-level of a modulated symbol. At the receiver, each bit-level is demapped and decoded successively (i.e. multi-stage demapping), using the information obtained from decoding the previous bit-levels (see
In the work of Iscan et al. “Probabilistically Shaped Multi-Level Coding with Polar Codes for Fading Channels,” In 2018 IEEE Globecom Workshops (GC Wkshps), pp. 1-5, a polar coded PSCM scheme based on MLC is presented. In
An example of the resulting probability distribution is given in
The following facts can be summarized about this conventional approach:
In summary of the above, there is a need for an improved apparatus and method for encoding an input message into symbols.
In view of the above-mentioned challenges and disadvantages, embodiments of the present disclosure aim to improve the conventional approaches for encoding an input message into a symbol sequence. An objective is thereby to provide an apparatus and a method for multi-level encoding, which allow reducing the shaping loss. In particular, it should be possible to provide the symbol sequence with a desired characteristic, e.g., with a predefined probability distribution of the symbols like a Gaussian probability distribution.
The objective of the present disclosure is achieved by the solution provided in the enclosed independent claims. Advantageous implementations of the present disclosure are further defined in the dependent claims.
According to a first aspect, an apparatus for multi-level encoding of an input message into a symbol sequence comprising information bits is provided. The apparatus is configured to divide the input message into a plurality of sub-messages; encode each of the sub-messages into a codeword, wherein a set of the sub-messages is encoded on the basis of the codewords obtained by encoding the sub-messages not in the set and a predefined function of the symbol sequence; and map the codewords into corresponding symbols.
The set of the sub-messages includes one or more sub-messages. This provides the advantage that the symbol sequence output by the apparatus can be provided to have a predefined characteristic, e.g. a predefined probability distribution, like one that approximates a Gaussian distribution. Thus, a large shaping gain is obtained. The shaping loss is therefore reduced, when transmitting the symbols sequence over a channel, e.g. an AWGN.
In an implementation form of the apparatus of the first aspect, the function is at least one of a probability distribution function of the symbols; a norm associated to the symbol sequence.
In an implementation form of the apparatus of the first aspect, the apparatus is configured to encode the set of the sub-messages such that after a symbol mapping of the plurality of codewords to a plurality of symbols, a predetermined probability distribution of the symbols is obtained.
This can provide the advantage that the symbols have a probability distribution, which approximates a Gaussian distribution, and accordingly a large shaping gain is obtained.
In a further implementation form of the apparatus of the first aspect, the apparatus is configured to encode each sub-message in the set of sub-messages by using a channel decoder.
In particular, the apparatus can encode each sub-message by using a device, which contains a channel decoder, or which is realized by a channel decoder. That is, the channel decoder can be included in a device. Using the channel decoder to encoder the sub-messages allows encoding them based on the codewords obtained by encoding the sub-messages not in the set. Thereby, the encoding of the sub-messages in the set can be influenced based on the predefined function of the symbols sequence. This provides the advantage that the shaping loss can be reduced.
In a further implementation form of the apparatus of the first aspect, the apparatus is further configured to allocate, to each sub-message in the set of sub-messages, a sequence of shaping bits, wherein each sequence of shaping bits is chosen based on the sub-message to which the sequence of shaping bits is allocated and on the codewords obtained by encoding the sub-messages not in the set.
In an implementation with polar codes, the sequence of shaping bits can be transmitted in polar sub-channels, particularly in reliable polar sub-channels. In this way, they can have an influence on how the resulting codewords are generated. Using some of the reliable sub-channels for the transmission of the sequence of shaping bits may reduce the transmission rate, but if chosen correctly they can have a positive effect on the resulting symbols (e.g. increase in the signal to noise ratio) such that this positive effect causes a larger gain than the loss in the transmission rate.
Each sequence of shaping bits may further be chosen based on the predefined function of the symbol sequence. The shaping bits provide the advantage that a symbol sequence with desired characteristics can be obtained, e.g. with a predefined probability distribution. For instance, a good approximation of non-uniform probability distribution, e.g. a Gaussian probability distribution can be achieved.
In a further implementation form of the apparatus of the first aspect, the apparatus is configured to map the codewords to symbols that have multiple bit-levels.
In a further implementation form of the apparatus of the first aspect, the apparatus is configured to map the codewords in such a way that at least one bit-level contains bits from only a particular codeword.
In a further implementation form of the apparatus of the first aspect, the at least one bit-level corresponds to a sign bit-level.
The sign bit-level is the bit-level, which defines the sign of the resulting symbol. If the resulting symbol is a complex number, then there are two bit-levels that define the sign of the real and the imaginary parts of the complex number.
In a further implementation form of the apparatus of the first aspect, the apparatus is configured to map the encoded sub-messages based on natural binary labelling, Gray labelling, or set partitioning labelling.
In a further implementation form of the apparatus of the first aspect, the probability distribution of the symbols is a non-uniform distribution.
This non-uniform distribution may be a Gaussian distribution. The non-uniform probability distribution provides the advantage that the shaping loss can be reduced.
In a further implementation form of the apparatus of the first aspect, the apparatus is configured to encode each sub-message in the set of sub-messages on the basis of polar coding.
This provides the advantage that the polarization effects of polar coding can be used in the encoding process.
In a further implementation form of the apparatus of the first aspect, the channel decoder is a polar decoder, for example a successive cancellation decoder, a list decoder, a belief propagation decoder or a flip decoder.
The channel decoder is in particular the one mentioned above. This provides the advantage that different decoders with a low complexity can be used.
In a further implementation form of the apparatus of the first aspect, the plurality of symbols are amplitude shift keying symbols or quadrature amplitude modulation symbols.
This provides the advantage that well known symbols can be used.
In a further implementation form of the apparatus of the first aspect, the apparatus is configured to provide the symbols to a receiver, and to further provide the receiver with at least one of the following parameters using a separate channel than for providing the symbols: a size of a sequence of shaping bits included in the symbols, predefined function of the symbol sequence, and a rule how the shaping bits are allocated.
According to a second aspect, the disclosure relates to a method for multi-level encoding of an input message into a symbol sequence comprising information bits, the method comprising the steps of dividing the input message into a plurality of sub-messages, encoding each of the sub-messages into a codeword, wherein a set of the sub-messages is encoded on the basis of the codewords obtained by encoding the sub-messages not in the set and a predefined function of the symbol sequence, and mapping the encoded sub-messages into corresponding symbols.
Implementation forms of the method of the second aspect can be developed according to the implementation forms of the apparatus of the first aspect. The method of the second aspect and its implementation forms provide the same advantages as the apparatus of the first aspect and its implementation forms, respectively.
According to a third aspect, the disclosure relates to a computer program comprising a program code for performing the method of the second aspect when executed on a computer.
According to a fourth aspect, the disclosure relates to an apparatus for multi-level decoding, the apparatus configured to perform a demapping of a sequence of input symbols based a predefined function of the symbol sequence to obtain a demapped sequence, wherein the input symbols include encoded shaping bits, decode the demapped sequence, and discard the decoded shaping bits.
The apparatus of the fourth aspect supports decoding according to the encoding scheme provided by the apparatus of the first aspect. Thus, the apparatus of the fourth aspect supports all the advantages mentioned above. The apparatus of the first aspect may be a transmitter, and the apparatus of the fourth aspect may be a receiver. Together, the apparatus of the first aspect and the apparatus of the fourth aspect may form a transmission system.
It has to be noted that all devices, elements, units and means described in the present application could be implemented in the software or hardware elements or any kind of combination thereof. All steps which are performed by the various entities described in the present application as well as the functionalities described to be performed by the various entities are intended to mean that the respective entity is adapted to or configured to perform the respective steps and functionalities. Even if, in the following description of specific embodiments, a specific functionality or step to be performed by external entities is not reflected in the description of a specific detailed element of that entity which performs that specific step or functionality, it should be clear for a skilled person that these methods and functionalities can be implemented in respective software or hardware elements, or any kind of combination thereof.
The above described aspects and implementation forms of the present disclosure will be explained in the following description of specific embodiments in relation to the enclosed drawings, in which:
Upon analyzing the existing solution it can be argued that asymptotically (with infinitely long codewords), MLC performs better than BICM. The reason is that the single stage demapping used by BICM does not take into account the dependence between bit-levels, whereas the multi-stage demapping of MLC allows full exploitation of the dependencies between bit-levels.
On the other hand, in the non-asymptotic regime, where the codewords have finite lengths, MLC may show performance degradations. This is due to finite length effects of the channel coding schemes: the performance of channel codes degrades as the codeword lengths get smaller. MLC requires multiple shorter length codewords (compared to a single long codeword in BICM), and, hence, suffers from a larger finite length loss. Therefore, BICM is preferred in many communication systems.
In general, any binary channel code (e.g., turbo codes, LDPC codes, convolutional codes, polar codes) can be used for both BICM and MLC. Polar codes are the recently developed forward error correction schemes (i.e. channel coding schemes) that can achieve the capacity of binary input memoryless channels. However, their performance with BICM is often poor compared to other modern coding schemes. On the other hand, it is known that polar codes work well with MLC.
Polar coding relies on the channel polarization phenomenon, where the physical channel is converted into polar sub-channels, which tend to have either very high or very low reliabilities asymptotically. A polar encoder assigns message bits to reliable channels, and (known) frozen bits to unreliable channels. A polar decoder (such as a successive cancellation (SC) or SC List (SCL) decoder) processes a noisy observation of the polar codeword together with the frozen bits, in order to estimate the message bits.
Let G denote the polar transform matrix of size n by n, which is defined as the (log2n)-th Kronecker power of the 2 by 2 kernel:
A polar codeword c is obtained from the input sequence u by c=uG. Here, u contains k message bits d at indices I, and n-k frozen bits at indices F, where I and F denote the sets containing the indices of the polar sub-channels with high and low reliabilities, respectively. The performance of a polar code depends on the choice of the sets I and F.
In general, one can calculate the reliabilities of the polar sub-channels (for a given physical channel), and allocate the most reliable sub-channels to message bits, and the rest for frozen bits. A simpler approach is to use a polar sequence Q, similar to the polar sequence that is specified in the 5G New Radio specification. Such a polar sequence defines the reliability order of the polar sub-channels. For example, Q can include the sub-channel indices in order of ascending reliabilities. Accordingly, I and F can be easily computed by taking the last k and first n-k indices in Q, respectively.
The symbol mapper used in BICM or MLC schemes takes as input a sequence of m-bits, and maps them to a channel input symbol according to a bit-labeling scheme. For example, a mapper for 8-ASK maps 3 bits to one ASK symbol can take 8 possible values depending on the input bits. Usually, ‘Gray labeling’ is preferred for BICM, and ‘Natural Binary Labeling’ or ‘Set Partitioning Labeling’ are preferred for MLC.
The apparatus 601 is configured to perform multi-level encoding of an input message into a symbol sequence, wherein the input message and symbol sequence comprise information bits. The apparatus 601 is specifically configured to perform the following steps:
Thus, the symbol sequence may be provided with a predefined characteristic, for instance, the symbols may have a predefined probability distribution (or a target probability distribution) after the symbol mapping. The symbol sequence may also fulfil a predefined norm (for example Euclidean norm, p-norm, or a distance of the symbol sequence to a predetermined sequence).
After the apparatus 601 has encoded the input message, and has output the symbols, it can send the symbol sequence to the apparatus 603, which is configured for multi-level decoding of an input symbol sequence. This apparatus 603 will be described in more detail further below.
In this embodiment, the apparatus 601 is further configured to encode the mth bit-level (defining the set of sub-messages; related to encoder m) in dependence of the previous bit-levels (sub-messages not in the set of sub-messages; related to encoders 1, 2). Further, the encoding in this embodiments may be in dependence of the predefined function, e.g. a predefined probability distribution, which could be derived from the codewords of the previous bit-levels or and external input. As a result, for instance, a predefined probability distribution of the ASK symbols can be obtained, in particular, one that approximates very accurately a Gaussian distribution (see
A decoder can be used as encoder to encode each sub-message in the set of sub-messages, where the decoder is configured to search for a codeword that represents the sub-message and at the same time possesses certain properties, such as a certain probability distribution (or a conditional probability distribution) of the bits in the codeword. This can be realized for example as described in the work of Iscan et al “Probabilistically Shaped Multi-Level Coding with Polar Codes for Fading Channels,” In 2018 IEEE Globecom Workshops (GC Wkshps), pp. 1-5 with reference to polar codes.
Moreover, a simple successive cancellation (SC) decoder can be used as encoder to encode each sub-message in the set of sub-messages, i.e. here as the encoder in the mth bit-level, which has a much lower computational complexity compared to, for example, a list decoder. In fact, a SC decoder has the same order of complexity as a conventional polar encoder. Therefore, advantageously, the proposed scheme is not more complex than a conventional MLC scheme based on polar codes.
In the following a summary of the steps is given, which may be performed by the apparatus 601 of
The apparatus 601 is advantageous for reliable data transmission, is based on multi-level coding (MLC), and may be further configured to:
In the following, steps that can be performed by the apparatus 601 on the transmitter side are further detailed.
The transmission scheme as given in
For example, for 8-ASK (with m=3) the output symbols {−7, −5, . . . , 5, 7} are possible. The mapping of each bit-sequence of m bits to the ASK symbols may be performed according to the binary representation of natural numbers between 0 and (2m−1) in ascending or descending order. The table in
This scheme can easily be extended to symbols with complex numbers. In such a case, there will be two sign bit-levels in total (one sign bit-level per complex dimension).
In an embodiment, such a symbol mapper can be implemented as given in the dashed box of
As described above, the encoder in the mth bit-level (i.e. the sign bit-level) is a modified encoder. This encoder is denoted as εs. In an embodiment, a polar decoder is used as the encoder, e.g. a successive cancellation (SC) decoder, a successive cancellation list (SCL) decoder, a belief propagation (BP) decoder, or a flip decoder can be employed. Moreover, the encoder εs generates its output dependent on xm-1. Note that xm-1 is constructed based on the codewords in the bit-levels 1 to m−1. Therefore, the output of εs is dependent on the codewords in all previous bit-levels.
More specifically, the encoder εs looks for a codeword cm that represents the mth message part dm (i.e. εs encodes dm), and at the same time causes the ASK symbols in x to be distributed according to the target probability distribution PX. For this purpose, some of the reliable polar sub-channels can be allocated in the mth bit-level for shaping bits, which do not carry any information, but cause x to be distributed according to the target probability distribution PX.
The number of shaping bits (s) defines how much resources (in this case polar sub-channels) are allocated for signal shaping. In conventional schemes without shaping no resources are allocated for shaping, i.e. s=0. The number of shaping bits can be chosen to get the best approximation of the target distribution. On the other hand, each shaping bit uses an additional resource. Therefore, too many shaping bits should not be used. The optimal number of shaping bits is the minimum number that gives the maximum gain.
If km message bits are to be transmitted on the mth bit-level (i.e. the length of dm is km), and s shaping bits are to be used, assuming a fixed polar sequence, the most reliable s polar sub-channels (described by the set S) are allocated for the shaping bits, the next most reliable km polar sub-channels (described by the set I) for message bits, and the rest (denoted by the set F) for frozen bits.
Under these conditions, a polar decoder as εs (with codeword length n and rate (km+s)/n) can be used, wherein the following parameters are employed:
In general, Λ can be defined as a function of xm-1. Hence, it is also a function of the codeword bits from the previous bit-levels. Λ is proportional to −xm-1 for a Maxwell-Boltzmann target distribution that minimizes the transmit power for a given rate. Therefore, Λ=−xm-1 can be used. Moreover, a simple successive cancellation (SC) decoder can be sufficient to obtain good gains. A more complex SCL decoder results in a better performance, but at a cost of increased complexity.
Note that this polar decoding operation would search for the shaping bits (and hence the resulting codeword cm), which would cause the resulting codeword to have the desired probability distribution conditioned on xm-1.
From a different perspective, this polar decoding operation can also be seen as the solution of an energy minimization problem, i.e. the decoder looks for a codeword, such that the resulting ASK symbols have a minimum average energy, i.e. minimum Euclidean norm.
To sum up, the following features can be considered for the apparatus 601:
In this embodiment, the apparatus 601 is configured to encode the mth bit-level (defining the set of sub-messages; related to encoder m) in dependence of the previous bit-levels (sub-messages not in the set of sub-messages; related to encoders 1, 2 and in dependence of the predefined function (external input), e.g. a predefined probability distribution. As a result, for instance, a predefined probability distribution of the ASK symbols can be obtained, in particular, one that approximates very accurately a Gaussian distribution (see
In general, an encoder maps a message sequence to a codeword sequence. The operation is one-to-one, i.e., for each message sequence, there is another codeword sequence. In general, codeword sequences are longer than the message sequences. For example, assume an encoder that maps a binary message sequence of k bits to a codeword sequence of n bits with n>k. In this case, any binary sequence of length k can be the input of the encoder (there are 2k possibilities of length k binary sequences), and there are 2k possible codeword sequences of length n. Note that in general, there are 2n different binary sequences of length n, but not every length-n sequence is a codeword. The set of all possible codeword sequence is called a codebook.
In this context, a channel decoder is a device that takes as input an unconstrained sequence of length n, and looks for a codeword sequence in the codebook, and its corresponding message sequence. Both encoders and decoders define mappings between sequences. Conventionally, encoders are used to generate codewords at the transmitters, and decoders are used to search for most likely codeword (and its corresponding message sequence) given the received noisy signal at the receiver.
In the apparatus 601 according to an embodiment of the disclosure, a (channel) decoder may be used, such that the codeword found by this channel decoder has two properties: it represents the message, and at the same time it has certain desired properties (i.e., the bits in the codeword are distributed according to a desired probability distribution, or desired conditional probability distribution). This may be realized by introducing shaping bits as described above, which give a new degree of freedom for mapping the message sequence to a codeword. Shaping bits can be seen as additional bits (to be appended to message bits) that do not carry any information, but cause the codeword bits to have the desired probability distribution. How to obtain the values of the shaping bits can be formulated as a channel decoding operation (as described in the work of Iscan et al). Therefore in the problem at hand, a channel decoder can be used in the apparatus 601 instead of an encoder.
After the apparatus 601 (of any one of the above described) has encoded the input message, and has output the symbol sequence, it can send the symbol sequence over the channel 602 to the apparatus 603 (see
In particular, the apparatus 603 may be based on an MLC receiver as depicted in
In general, all these parameters may be signaled to the apparatus 603 (e.g., using a control channel), such that the apparatus 603 can use these parameters to revert the operations performed at the apparatus 601. However, some simplifications can be made, because all these parameters are related to each other.
In the embodiment above, a fixed polar sequence has been assumed, and the most reliable s indices have been used in this sequence in order to build S. Therefore, in such a situation the apparatus 603 can already obtain S, if the number of shaping bits s is known. Moreover, using roughly ⅓ of the polar sub-channels for shaping bits is a good choice. Accordingly, a fixed rule can be used in order to obtain the number of shaping bits. Lastly, since s and PX are related, the resulting PX for each choice of s can be precomputed, and stored in a look-up table, such that additional control signaling is avoided.
Conventional MLC receivers assume that the ASK symbols are uniformly distributed (PX is uniform). In an embodiment, PX is non-uniform, and, therefore, the demapper needs to generate its output depending on PX. For some typical distributions (like Gaussian distribution or Maxwell-Boltzmann distribution), this can be accomplished by scaling the demapper inputs by a constant, where the constant depends on PX and the channel noise variance.
Compared to a conventional MLC receiver, there are additional shaping bits that are allocated in some polar sub-channels in the sign bit-level. The values of the shaping bits are unknown to the apparatus 603. During decoding of this bit-level, the decoder can treat the shaping bits as the message bits, which are also unknown. At the end of the decoding process, the apparatus 603 can basically discard the shaping bits as they do not carry any additional information. Moreover, if all of the message bits are recovered during decoding, the decoder can perform an early termination without finishing the whole decoding process (since the remaining unknown bits are only shaping bits). As another alternative, the apparatus 603 can extract all shaping bits and message bits at the output of the decoder, and calculate another copy of the shaping bits based on the message bits (as it is done at the transmitter). Later, the apparatus 603 can compare this copy of the shaping bits and the shaping bits at the output of the decoder, and if they are not identical, the apparatus 603 can declare an error. This can be seen as an additional error detection mechanism, which can also be used for picking the correct codeword from the output of a list decoder.
To sum up, in embodiments of the disclosure, the following features may be implemented at the receiver side apparatus 603:
The present disclosure has been described in conjunction with various embodiments as examples as well as implementations. However, other variations can be understood and effected by those persons skilled in the art and practicing the claimed disclosure, from the studies of the drawings, this disclosure and the independent claims. In the claims as well as in the description the word “comprising” does not exclude other elements or steps and the indefinite article “a” or “an” does not exclude a plurality. A single element or other unit may fulfill the functions of several entities or items recited in the claims. The mere fact that certain measures are recited in the mutual different dependent claims does not indicate that a combination of these measures cannot be used in an advantageous implementation.
This application is a continuation of International Application No. PCT/EP2019/079266, filed on Oct. 25, 2019, the disclosure of which is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/EP2019/079266 | Oct 2019 | US |
Child | 17728659 | US |