The exemplary and non-limiting embodiments of the invention relate generally to wireless transmissions systems, in particular systems using Frequency Division Multiplexing with a number of sub-carriers.
Wireless communications systems routinely use various schemes to compensate for signal interference and fading. A popular approach is the use of Orthogonal Frequency Division Multiplexing (OFDM), in which several sub-carriers are used and modulated in different fashions so that the receiver can combine the results of several channels to calculate the true value of a transmitted symbol. With a coding into an expanded set of signals, power and bandwidth efficient communications can be achieved. Coded modulation can be categorized, generally, into trellis coded modulation (TCM) and block coded modulation (BCM). There has been described, for example in “A new multilevel coding method using error-correcting code,” by H. Imai, S. Hirakawa, IEEE Trans. on Inform. Theory, vol. IT-23, pp. 371-377, 1977, the foundation for multistage decoding for multi-level ML-BCM. Furthermore, there has been described a method to combine the block coding with a modulation (BCM). The principle of the BCM is to make a set partitioning of the signal constellation and assign a binary code to each level of partition. The minimum distance within each level of partition increases down the partition tree.
It has been shown that the optimum codes for Gaussian channels are not always efficient on fading channels. Minimum squared Euclidean distance is the factor that approximately determines the bit error rate (BER) performance of a coded modulation over a Gaussian channel. Using the product distance, defined as dp2=dE2dH, where dH is the Hamming distance and dE is the minimum Euclidean distance, some design rules have been proposed. The most efficient rule, the balanced distance design rule, is proposed to make the product distances on partition levels as close as possible. Since the sets with the smallest minimum distance dominate the bit error rate, in the BCM approach, block codes the same length, with different Hamming distances, are used to encode input bits.
In such a coded system, the powerful code having the largest. Hamming distance is used to select signal points that are closest together, so that errors that would otherwise result from the close distance are compensated by the code.
Thus, the multilevel BCM allows one to construct bandwidth efficient block coded modulations with a large product distance from the block component codes and the modulation. Using the balanced distance design rule, one can obtain an asymptotic coding gain.
Orthogonal frequency division multiplexing (OFDM) may be used to mitigate the effects of frequency selective fading by forming a set of carriers, where each of these subcarriers exhibits flat fading. As a result of this property, a simple zero-forcing equalizer can be employed. However there exists a noise enhancement depending on the magnitude of an estimated channel. In addition, the performance of such an equalizer is dominated by the weak subcarriers.
The foregoing and other problems are overcome, and other advantages are realized, in accordance with the exemplary embodiments of these teachings.
In accordance with an exemplary embodiment of the invention, a method includes grouping a data stream into a first plurality of subgroups, modulating a plurality of subcarriers with the first plurality of subgroups, adaptively applying a block code to the data stream comprising a repetition code, a Hamming code, and a plurality of uncoded bits based upon a channel characteristic of each of the plurality of subcarriers, and transmitting the data stream on the plurality of subcarriers.
In accordance with another exemplary embodiment of the invention, a program of machine-readable instructions, tangibly embodied on an information bearing medium and executable by a digital data processor, performs actions including grouping a data stream into a first plurality of subgroups, modulating a plurality of subcarriers with the first plurality of subgroups, adaptively applying a block code to the data-stream comprising a repetition code, a Hamming code, and a plurality of uncoded bits based upon a channel characteristic of each of the plurality of subcarriers, and transmitting the data stream on the plurality of subcarriers.
In accordance with another exemplary embodiment of the invention, a mobile station includes a transmitter, a processor coupled to the transceiver and a memory coupled to the processor for storing a set of instructions, executable by the processor, for grouping a data stream into a first plurality of subgroups, modulating a plurality of subcarriers with the first plurality of subgroups, applying a block code to the data stream comprising a repetition code, a Hamming code, and a plurality of uncoded bits, and transmitting the data stream on the plurality of subcarriers via the transceiver.
In accordance with another exemplary embodiment of the invention, a method includes receiving a data stream on a plurality of subcarriers modulated by a plurality of subgroups into which the data stream is grouped the data stream adaptively encoded with a block code comprising a repetition code, a Hamming code, and a plurality of uncoded bits based upon a channel characteristic of each of the plurality of subcarriers, decoding the data stream, and demodulating the data stream.
In accordance with another exemplary embodiment of the invention, an encoder includes an element for receiving a data stream modulated by a plurality of subgroups into which the data stream is grouped and an element for adaptively applying a block code to the data stream comprising a repetition code, a Hamming code, and a plurality of uncoded bits based upon a channel characteristic of each of a plurality of subcarriers.
In accordance with another exemplary embodiment of the invention, a decoder includes an element for receiving a data stream adaptively encoded with a block code comprising a repetition code, a Hamming code, and a plurality of uncoded bits based upon a channel characteristic of each of a plurality of subcarriers, and an element for decoding the data stream.
In accordance with another exemplary embodiment of the invention, a user equipment includes a receiver, a processor coupled to the receiver, and a memory coupled to the processor for storing a set of instructions, executable by the processor, for receiving a data stream modulated by a plurality of subgroups into which the data stream is grouped the data stream adaptively encoded with a block code including a repetition code, a Hamming code, and a plurality of uncoded bits based upon a channel characteristic of each of a plurality of subcarriers, decoding the data stream, and demodulating the data stream.
In accordance with another exemplary embodiment of the invention, a system includes a network element comprising a transmitter, a processor coupled to the transmitter, and a memory coupled to the processor for storing a set of instructions, executable by the processor, for grouping a data stream into a first plurality of subgroups, modulating a plurality of subcarriers with the first plurality of subgroups, adaptively applying a block code to the data stream including a repetition code, a Hamming code, and a plurality of uncoded bits based upon a channel characteristic of each of the plurality of subcarriers, and transmitting the data stream on the plurality of subcarriers via the transmitter, and a user equipment in communication with the network element including a receiver, a processor coupled to the receiver; and a memory coupled to the processor for storing a set of instructions, executable by the processor, for receiving the data stream, decoding the data stream, and demodulating the data stream.
In accordance with another exemplary embodiment of the invention, an integrated circuit includes first circuitry having an input operable to receive a data stream and to group the data stream into a first plurality of subgroups, second circuitry operable to modulate a plurality of subcarriers with the first plurality of subgroups, and third circuitry operable to adaptively apply a block code to the data stream comprising a repetition code, a Hamming code, and a plurality of uncoded bits based upon a channel characteristic of each of the plurality of subcarriers.
Exemplary and non-limiting embodiments of the invention provide a method of coding in an OFDM scheme, in which the signal constellation is partitioned into a set of subcarriers that are modulated with a block coding structure composed of a repetition code, a variable length Hamming code and a set of uncoded (spare) bits. Exemplary embodiments of the invention teach adaptively changing the modulation of subcarriers in response to changing channel conditions. Further exemplary embodiments of the invention teach increasing the code rate for subcarriers with higher signal gains and decreasing the code rate for subcarriers with lower signal gains as well as selecting the lower level codes in order to maximize product distance.
In general, having an exact knowledge of a channel at a transmitter allows one to optimally, or nearly optimally, adapt the rate and the power given the average transmit power constraint. Specifically, each subcarrier can be modulated with a different modulation scheme in accordance with its power strength thereby providing an adaptive modulation. The allocation of bits and the transmit power to each subcarrier may be accomplished using a bit loading algorithm.
With these facts in mind, exemplary and non-limiting embodiments of the invention provide an efficient coding method that adaptively applies the multilevel block coding depending on the channel characteristics for each subcarrier. Using this adaptive scheme, exemplary embodiments of the invention provide a variable rate ML-BCM system as described below.
The encoder matrix gives provides a code mapping for inputs where each row of the encoder matrix directly corresponds to a binary codeword. Let dEi be the minimum distance in the i-th level. With the set partitioning according to exemplary embodiments of the invention, one obtains the following inequality down the partition tree
dE0≦dE1≦. . . ≦dEL.
The partition level Li is then encoded with a binary code, Ci. If Ci is an (ni, ki, dHi) block code with the Hamming distance dHi, the minimum product distance is
With reference to
bj, j=1 2, . . . ,14, is an input bit, P is a parity-bit with the parity condition P=b2⊕b3⊕b4⊕b5⊕b6⊕b7, where ⊕ denotes the bit-by-bit (modulo 2) operation. The 8-PSK modulation requires three partition levels, i.e., three rows in the encoder matrix. The first row is the repetition code, denoted by Ci(7,1,7), the second row is the parity code, C2(7,6,2), and the last row is C3(7,7,1). The seven columns are read out one-by-one, mapped to the signal set, and the corresponding seven symbols are transmitted. It can be shown that the bandwidth efficiency for this coded system is 2 bit/symbol/Hz. The corresponding set partitioning is shown with reference to
Thus, the total squared Euclidean distance is 7Δ02, where Δ0 is the Euclidean distance at the first level. If they differ in one position-in the second row, then the parity bit has to be different to satisfy the parity condition, such that the codes-are separated by Δ1 in two positions, giving the total squared Euclidean distance 2Δ12. One of the examples for this case is given in the following, where the third place in the second row is different.
Also, the total squared Euclidean distance in the third row is A22, where one of the input bits is different in the third row of the encoder matrix E1 as
Since the overall minimum total squared Euclidean distance, defined as the product distance, is dp,min2=4, 3-dB asymptotical coding gain over the QPSK is achieved.
For a set of received signals {r(n),n=1, 2, . . . , 12}, one can apply the maximum likelihood sequence detection (MLSD). However, the number of states for a trellis is 213=8,192, with bΔ=Σi=14(ni−ki)=13, so that it is impractical for a Leech lattice based BCM. As a result, existing algorithms, such as that disclosed in “Fast Decoding of the Leech Lattice,”, IEEE J. on Select Areas in Commun., vol. 7, pp. 959-966, August 1989, by Y. Be'ery, B. Shahar, and J. Snyders. For this reason, exemplary embodiments of the invention can employ the detection and decoding algorithm described as follows.
The decoding process is divided into two parallel decoding processes since the Leech lattice based BCM consists of two half Leech lattice decoders H24. The final decision is made by selecting the better one from two results of H24 decoders. The H24 decoder is the Golay decoder with parity constraints. For a set of received signals {r(n),n=1, 2, . . . , 12}, one first computed the Euclidean distance, denoted by dijk(n), between the representation point and the received signals. To find the cost function associated with the (I,j) indexes, compare dij0(n) with dij1(n), choose the smaller one, and assign it as dij(n). That is, dij(n)=min{dij0(n),dij1(n)}. For {r(n)}, compute a set of dij(n) and the absolute difference between dij0(n) and dij1(n), Δij(n)=|dij1(n)−dij0(n)|, for twelve symbol intervals. These differences will be used in parity constraint check block. A single bit error can occur on th k index if one mistakenly chooses dij0 when dij1 is the minimum. The parity sign pij(n) is used to record if dij0 or dij1 is chosen, i.e.,
If the modulo 2 summation of pij(n) is different from the overall parity of the codewords,
for
group-A codewords, the overall parity is zero, then an odd numbers of bit errors occurred. Similarly, for group-B codewords, an even number of bit errors happen if the modulo 2 summation of pij(n) is different from the overall parity of the codewords, P9c) . For a single bit error for group-A codewords, one can correct a single bit error with the following approach. With the recorded magnitude difference between dij0(n) and dij1(n), the smallest difference tends to be susceptible to channel noise and disturbance, so that a single bit error most likely takes place at the symbol with the smallest difference between dij1(n) and dij0(n) . To correct a single error, one needs to flip one of the k indexes, and update the cost function with the corresponding Δmin(C). That is, a best codeword cbest is
Where Δmin(C)=min(Δij(n),n=1,2, . . . ,12}. The 12(I,j) indexes are the entries of cbest and the k indexes are given by pij(n),n=1,2, . . . ,12, except one index which contributed Δmin(C).
The block diagram for a 24D RHPuuu is shown in
Half of the trellis diagram of the group-A for the scheme illustrated in
With reference to
In these 24D schemes, one can divide the total available subcarriers into a set of 12 subcarriers according to the 24D subcarrier modulation. In some cases, one can control the number of available subcarriers to meet the required coding rate. To address these cases, exemplary and non-limiting embodiments of the invention provide multidimensional ML-BCM schemes as follows.
In the 16D-RHHuuu structure, there are generated eight complex-valued symbols and there is equivalently applied the same subcarrier modulation over eight subcarriers. For a component code, one can use a repetition code C1(8,1,8), an extended Hamming code C2(8,4,4), and three uncoded bits C3(8,8,1). The same signal constellation as in the previous structures, described above, may be used. With reference to
The component codes for a 14-D ML-BCM (14D-RHHHuuu) according to the exemplary embodiments of the invention are a repetition code C1(7,1,7), extended Hamming code C2(7,4,3), and the uncoded bits C4(7,7,1). The total number of states is 64. The coding rate is 0.3333/0.5714/0.6571/0.7143. The bandwidth efficiency is 1.0/2.0/3.0/4.0 [bit/symbols/Hz]. This exemplary structure allows one to use a set of seven subcarriers. With reference to
An exemplary and non-limiting embodiment of a detection algorithm for the ML-BCMs described above is as follows. Let G be the generator matrix for the linear block code. For the parity check matrix, H, it is true that
HGd≡Hr−0,
where r is the transmitted input sequence. This property leads to the observation that the parity check matrix can detect any errors between the transmitted sequences and the detected sequences, H{tilde over (r)}≠0, where {tilde over (r)}=aGd+z, is the amplitude distortion coming from fading, and z is additive white Gaussian noise. One may use the maximum likelihood (ML) decoder using a trellis, or an alternative algorithm, such as a multistage decoding algorithm.
Using the property of the parity-check matrices, denoted by Hi,i=1,2, . . . , L, one can construct the trellis diagram as described, for example, in “Design of trellis decoder for block-coded modulation schemes,” IEE proc. commun., vol. 147, pp. 1-7, February 2000 by M. A. Petronio and R. A. Carrasco.
In the trellis, the next state is obtained from the current state following equation:
where L is the number of block codes, αε{0,1},hi,l+1, is the (l+1)-th column vector of the parity check matrix Hi, Sn(l+1)represents the destination state in the level of l+1, and Sp(l) represents the source state in the level of 1. The number of states for the i-th block code, denoted by (ni,ki), is 2(ni−ki) Thus, the total number of states for the ML-BCM is
Let
be the length of the state-vector, then hi,l+1, should have brows. With this requirement, one needs to add additional rows to the parity-check matrices, such that a set of new parity-check matrices {hacek over (H)}i,i=1,2, . . . , L will have exactly brows with extra requirements:
These requirements can be satisfied by appending zero row vectors in Hi εZ(n−k)×n, such that {hacek over (H)}i is {hacek over (H)}i εZb×n. With the following systematic construction for {hacek over (H)}i, one can efficiently construct the trellis diagram for the ML-BCM with any combination of component codes.
To demonstrate the above approach, there is considered a ML-BCM that includes a C1(7,4,3) Hamming code, a C2(7,6,2)Parity code, and a C3(7,7,1) uncoded code. The parity matrix is respectively given by
Following the procedure to generate {hacek over (H)}i,
one
can generate the following new parity-matrices:
Note that all new parity-matrices have four rows, and that the new parity matrix for the uncoded code is a zero matrix. The trellis diagram for this exemplary ML-BCM is illustrated in
There now follows simulation results for various ML-BCMs according to exemplary and non-limiting embodiments of the invention described above. The simulation parameters are:
With reference to
With an exact knowledge of the channel information at the transmitter, one can optimally, or nearly optimally, adapt the coding rate and the power given the average power constraint. In the conventional approach of adaptive modulation, each subcarrier is modulated with a different modulation scheme in accordance with its power strength. The allocation of bits and transmission power to the subcarriers is done using the bit loading algorithms. In addition, the considered channel equalizer is the zero-forcing equalizer, so that there will be a noise enhancement depending on the estimated channel magnitude.
In accordance with the non-limiting and exemplary embodiments of the invention, one can adaptively apply the ML-BCM for each subcarrier with an available channel information at the transmitter.
With reference to
For the frequency response illustrated in
For a 16DRHHuuu scheme, this structure has a similar tendency to improve the BER and the PER performances as illustrated in
With reference to
The UE 2020 includes a demodulator element 2105 and a block decoder 2106 for demodulating and decoding, respectively, incoming signals. UE 2020 further includes a data processor 2102′ that in turn includes or is coupled to a memory 2103. The memory 2103 stores data and operating programs, including one or more programs 2104′ the execution of which implements the disclosed exemplary embodiments of the invention, including, but not limited to, the demodulation and decoding functionality described above.
In general, the various embodiments of the UE 2020 can include, but are not limited to, cellular telephones, personal digital assistants (PDAs) having wireless communication capabilities, portable computers having wireless communication capabilities, image capture devices such as digital cameras having wireless communication capabilities, gaming devices having wireless communication capabilities, music storage and playback appliances having wireless communication capabilities, Internet appliances permitting wireless Internet access and browsing, as well as portable units or terminals that incorporate combinations of such functions.
As noted above, certain of the exemplary embodiments of the invention may be implemented by computer software executable by the data processor 2102 of the network element 2016, and/or by the data processor 2102′ of the UE 2020, and/or by dedicated hardware, or by a combination of software and hardware.
The memories 2103 and 2103′ may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor-based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory. The data processors 2102 and 2102′ may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) and processors based on a multi-core processor architecture, as non-limiting examples.
Based on the foregoing discussion it can be appreciated that in one non-limiting and exemplary embodiment of the invention there is provided an apparatus, method and a computer program product for sending a message over a wireless channel formed of a transmitter for sending data on a set of N subcarriers, an input element for receiving a stream of input data and grouping the data in N groups, a modulation element for modulating the N subcarriers with the N groups of data. In an exemplary embodiment, the N subcarriers are grouped in M subgroups of approximately equal power at the receiver, and each of the M subgroups is modulated with a modulation such that the Hamming distance of the weakest subgroup is greater than corresponding Hamming distances of other subgroups. Furthermore, the modulation element may apply a block code formed from a repetition code, a Hamming code and a set of uncoded bits. In an exemplary embodiment, the subgroups are chosen such that the product distance of each subgroup is substantially equal. In addition, the system may further include an element for changing the modulation element to apply a different set of modulations to the subgroups in response to changing channel conditions. The modulation element may have the ability to change the value of M.
With reference to
With reference to
The use of the exemplary embodiments of the invention involves providing a transmitter/receiver system having the capability of processing a number of subcarriers. Not all subcarriers will be used all the time (e.g. if 24 carriers are available and the modulation chosen only needs 16, then 8 will be unused). Exemplary embodiments of the invention further involve receiving an input bit stream and grouping it into blocks. When applying different block code modulation schemes to the data depending on which subcarrier is being modulated, one exemplary criterion employed for choosing the modulation is that the product distance is made as uniform as practical (referred to as being substantially equal). Exemplary embodiments of the invention may further involve testing the channel quality at the receiver periodically and changing the modulation scheme to apply better modulation (a greater product distance and thus lower error rate) to carriers having less good channel quality; and applying modulation with a smaller product distance to carriers having a lower error rate.
For a single antenna at the transmitter and the receiver, there is first provided the ML-BCMs for different dimensions. Based on these schemes, there is further provided adaptive ML-BCMs, which adaptively apply the subcarrier modulation determined by an estimated power strength for subcarriers. The simulation results show that the exemplary embodiments can efficiently improve the performance in all proposed multi-dimensional ML-BCMs.
Note that while the exemplary embodiments have been described in the context of trellis based detectors, it is within the scope of these exemplary embodiments to use a simpler detector such as one based on a suboptimal detection approach. This may be especially advantageous when extending the exemplary embodiments of the invention to MIMO-OFDM and other types of multiantenna systems.
It is there evident that the exemplary and non-limiting embodiments disclosed above meet two design criteria including, but not limited to, 1) providing the capability of handling of multiple coding rates, and 2) providing the capability of handling a different number of available subcarriers. For these design criterion, there has been disclosed a multidimensional ML-BCM structures composed of the repetition code, a Hamming code, and uncoded bits. Since the Euclidean distance at the top level is shortest, the most powerful repetition code is used to increase the product distance. The same length of a block code is used for the second and the third levels. A Hamming code is extended or shortened to meet the required dimensionality. The top three levels determine the signal point in the signal constellation for 8-PSK subcarrier modulation. As a result, the coding rate and the subcarrier modulation are mainly determined by the number of uncoded bits. Using a linear and simple block code for a component code, one can reduce the hardware requirement.
As noted above, with an exact knowledge of the channel information at the transmitter, one can optimally adapt the coding rate. In exemplary embodiments of the invention, one first categorizes all available subcarriers in terms of the power strength into several groups, where each group uses a different type of the ML-BCM. This is different from a general adaptive scheme, wherein one adaptively applies a modulation to each subcarrier. For example, when the dimensionality is 16 and one is required to use 64 subcarriers, one needs to divide all available 64 subcarriers into a set of 8 subcarriers to use the 16-dimensional ML-BCM. For a typical frequency channel response, one assigns 16-QAMs to 16 weaker subcarriers, 32-QAMs to 24 medium strength subcarriers, and 64-QAMs to 16 stronger subcarriers. In the present context and as used herein, “weaker” and “stronger” refer to the relative strength of the subcarriers where the strength is defined as the power of a channel at each frequency bin. By using this proposed adaptive grouping scheme, one can improve performance.
In general, the various embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the exemplary embodiments of the invention are not limited thereto. While various aspects of the exemplary embodiments of the invention may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof.
Exemplary embodiments of the inventions may be practiced in various components such as integrated circuit modules. The design of integrated circuits is by and large a highly automated process. Complex and powerful software tools are available for converting a logic level design into a semiconductor circuit design ready to be etched and formed on a semiconductor substrate.
Programs, such as those provided by Synopsys, Inc. of Mountain View, Calif. and Cadence Design, of San Jose, Calif. automatically route conductors and locate components on a semiconductor chip using well established rules of design as well as libraries of pre-stored design modules. Once the design for a semiconductor circuit has been completed, the resultant design, in a standardized electronic format (e.g., Opus, GDSII, or the like) may be transmitted to a semiconductor fabrication facility or “fab” for fabrication.
Various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings. However, any and all modifications of the teachings of the exemplary embodiments of the invention will still fall within the scope of the non-limiting embodiments of this invention.
Furthermore, some of the features of the various non-limiting embodiments of this invention may be used to advantage without the corresponding use of other features. As such, the foregoing description should be considered as merely illustrative of the principles, teachings and exemplary embodiments of this invention, and not in limitation thereof.
This Application claims the benefit under 35 USC 119(e) of U.S. Provisional Application No. 60/701,230 filed Jul. 20, 2005.
Number | Date | Country | |
---|---|---|---|
60701230 | Jul 2005 | US |