The invention relates to systems and methods for mapping information symbols to transmission symbols such as modulation symbols.
An information stream containing a sequence of bits which contains about the same number of “ones” and “zeros” is said to have a uniform distribution. For a uniformly distributed information stream, the Gray mapping in two dimensional signaling is widely known as optimal for minimizing bit error rate. However, many data sources, such as image or speech signals to name a few examples, are non-uniformly distributed. A non-uniformly distributed information stream contains a substantial amount of natural redundancy. Even when such information streams are compressed, they still exhibit a residual redundancy due to the suboptimality of the compression scheme. This redundancy, inherent or residual (after source coding) has two forms: redundancy due to the nonuniform distribution of the source symbols and redundancy due to source memory. The redundancy due to the source nonuniformity can be statistically characterized by modeling the source (before or after compression) as an independent identically distributed nonuniform process. The total redundancy (due to both nonuniformity and memory) can be described using a Markov process model.
Referring now to
According to one broad aspect, the invention provides a method comprising: determining mapping selection information in respect of a set of information symbols; selecting a selected mapping from a plurality of mappings for a signal constellation as a function of the mapping selection information; mapping the set of information symbols to the signal constellation using the selected mapping to produce transmission symbols.
In some embodiments, the transmission symbols comprise modulation symbols.
In some embodiments, the method further comprises: dividing an information symbol stream into a plurality of sets of information symbols; performing the steps of determining, selecting and mapping for each set of said plurality of sets.
In some embodiments, the method further comprises: for each set of information symbols, transmitting mapping information allowing an identification of the selected mapping for the set of information symbols.
In some embodiments, the mapping information comprises an identifier for the selected mapping.
In some embodiments, determining mapping selection information comprises determining a measure of entropy in respect of the set of information symbols.
In some embodiments, determining mapping selection information comprises determining a measure of non-uniformity within the set of information symbols.
In some embodiments, the method further comprises transmitting non-uniformity information in respect of the set of information symbols from which the selected mapping can be derived.
In some embodiments, the information symbols comprise bits, and wherein the measure of non-uniformity is determined by determining how many bits in the set of information symbols are ones and how many bits in the set of information symbols are zeros.
In some embodiments, determining mapping selection information comprises determining a measure of memory in the set of information symbols.
In some embodiments, determining mapping selection information comprises determining a measure of memory and non-uniformity a set of information symbols.
In some embodiments, the method further comprises transmitting the transmission symbols.
In some embodiments, the transmission symbols comprise carrierless transmission symbols.
In some embodiments, the method further comprises transmitting the modulation symbols.
In some embodiments, transmitting the modulation symbols comprises transmitting the modulation symbols on a wireless channel.
In some embodiments, one of said plurality of mappings is a Gray mapping, and at least one of the plurality of mappings is an Mn mapping.
In some embodiments, said plurality of mappings comprises a first mapping which is a Gray mapping, a second mapping which is an Mn mapping, and a third mapping which is an inverse of the Mn mapping.
In some embodiments, the first mapping is employed for a first range of non-uniformity in the set of information symbols, the second mapping is employed for a second range of non-uniformity in the set of information symbols, and the third mapping is employed for a third range of non-uniformity in the set of information symbols.
In some embodiments, each of said plurality of mappings provides enhanced BER (bit error rate) performance over a communications channel of interest for a respective range of measure of entropy.
In some embodiments, the plurality of mappings comprise a respective mapping for each of a plurality of ranges of non-uniformity.
In some embodiments, the method further comprises: remotely receiving the transmission symbols; processing the transmission symbols using knowledge of the selected mapping.
In some embodiments, the transmission symbols comprise modulation symbols.
In some embodiments, the modulation symbols are processed using a MAP (maximum a posteriori) detector.
In some embodiments, the method further comprises determining the selected mapping using blind detection.
In some embodiments, the method further comprises: remotely receiving the transmission symbols; remotely receiving the mapping information; determining the selected mapping from the mapping information; processing the transmission symbols using the selected mapping.
In some embodiments, the mapping information identifies the selected mapping, the method further comprising: inferring a signal non-uniformity from the mapping information; performing MAP detection using the signal non-uniformity.
In some embodiments, the mapping information identifies a signal non-uniformity, the method further comprising: remotely determining the selected mapping from the signal non-uniformity; performing MAP detection using the signal non-uniformity.
In some embodiments, a modem is provided which is adapted to implement a method as summarized above.
In some embodiments, a transmitter is provided which is adapted to implement a method as summarized above.
In some embodiments, a computer readable medium is provided having instructions stored thereon for execution on a processing platform so as to implement a method as summarized above.
According to another broad aspect, the invention provides a mapping system for mapping a set of information symbols to a transmission symbols of a signal constellation, the mapping system comprising: a mapper input stream analyzer adapted to analyze the set of information symbols and determine a selected mapping from a plurality of mappings for the signal constellation; a mapper adapted to map the set of information symbols to the signal constellation using the selected mapping to produce transmission symbols.
Another embodiment provides a modem comprising the above summarized mapping system.
Another embodiment provides a transmitter comprising the above summarized mapping system, the transmitter being adapted to transmit the transmission symbols.
In some embodiments, the mapping system is further adapted to divide an information symbol stream into a plurality of sets of information symbols; wherein the mapper input stream analyzer and the mapper analyze each set and select a mapping for each set.
In some embodiments, the mapping system is further adapted to, for each set of information symbols, transmit mapping information allowing an identification of the selected mapping for the set of information symbols.
In some embodiments, the mapper determines at least one of symbol non-uniformity, entropy, redundancy, memory in determining the selected mapping.
According to another broad aspect, the invention provides a de-mapper comprising: an input for receiving a set of transmission symbols which were mapped from a set of information symbols using a selected mapping of a plurality of mappings for a signal constellation; a transmission symbol processor adapted to process the transmission symbols using knowledge of the selected mapping.
In some embodiments, the de-mapper is adapted to obtain knowledge of the selected mapping using blind detection.
In some embodiments, the de-mapper is further adapted to receive mapping information allowing an identification of the selected mapping.
In some embodiments, the mapping information identifies the selected mapping, the de-mapper being further adapted to infer a signal non-uniformity from the mapping information, and to perform MAP detection using the signal non-uniformity.
In some embodiments, the mapping information identifies a signal non-uniformity, the de-mapper being further adapted to determine the selected mapping from the signal non-uniformity, and perform MAP detection using the signal non-uniformity.
According to another broad aspect, the invention provides a system comprising a transmitter and a receiver, the transmitter comprising: a mapping system for mapping a set of information symbols to a transmission symbols of a signal constellation, the mapping system comprising: a mapper input stream analyzer adapted to analyze the set of information symbols and determine a selected mapping from a plurality of mappings for the signal constellation; a mapper adapted to map the set of information symbols to the signal constellation using the selected mapping to produce transmission symbols for transmission by the transmitter; the receiver comprising: an input for receiving a set of transmission symbols which were mapped from a set of information symbols using a selected mapping of a plurality of mappings for a signal constellation; and a transmission symbol processor adapted to process the transmission symbols using knowledge of the selected mapping.
In some embodiments, the transmitter is further adapted to: divide an information symbol stream into a plurality of sets of information symbols, and to analyze each set and select a mapping for each set; for each set of information symbols, transmit mapping information allowing an identification of the selected mapping for the set of information symbols; wherein the receiver is adapted to receive the mapping information allowing an identification of the selected mapping for each set of information symbols.
Preferred embodiments of the invention will now be described with reference to the attached drawings in which:
Referring now to
The processing function 22 may be implemented as any one or a combination of hardware, software, and firmware. Similarly, the dynamic mapper 26 may be implemented as any one or a combination of hardware, software and firmware. While the two functions for processing 22 and mapping 26 are shown as two distinct elements in the illustrated embodiment, more generally any number of one or more elements may be used to implement the combination. For example, they could be implemented in a single chip, or with a single program. Depending on the number of elements used to implement the functionality, the signalling between the various elements may differ from that specifically illustrated in
The functionality of
In operation, the processing function 22 processes the input stream 20 using whatever conventional processing is required. This might be some combination of channel encoding, interleaving etc. The processing function 22 produces the mapper input stream 24. In some embodiments, there is no processing to perform, and in such cases the mapper input stream 24 is the same as input stream 20. The mapper input stream analyzer 23 processes the mapper input stream 24 to determine the mapping selection information 30.
The dynamic mapper 26 then performs a mapping of the mapper input stream 24 to modulation symbols of a signal constellation to produce the modulation symbols 28 using a mapping selected from a plurality of mappings as a function of the mapping selection information 30. The number of information symbols, e.g. bits, mapped to a modulation symbol is well known to be a function of the size of the signal constellation. K bits can be mapped to a signal constellation having at least 2K points. The mapping information 32 or 33 is information which can be made available to a receiver of the modulation symbols 28 (more generally any device responsible for processing the modulation symbols 28) to allow the receiver to know which mapping was employed by the dynamic mapper 26. This mapping information 32,33 when present may be transmitted in any suitable channel. For example, a parallel control channel may be used. Alternatively the information may be included in a single signal which also carries the modulation symbols 28.
In some embodiments, a respective mapping is used by the dynamic mapper 26 for each set of N bits of the mapper input stream. If K bits are mapped per symbol, then N/K modulation symbols are produced between each update of the selected mapping. N is a system parameter. A very large N will increase the likelihood that the N bits are substantially uniformly distributed, and will cause the dynamic mapper 26 to behave basically the same as a static mapper. On the other hand, a smaller N may increase the amount of overhead in systems in which mapping information 32 and/or 33 is transmitted. More generally, the respective mapping may be used for a respective set of bits, with the sets of bits not necessarily being equal in size. As a specific example, sets of N=100 bits might be mapped to a 16 QAM (quadrature amplitude modulation) constellation using one of three mappings, with four bits being mapped to each modulation symbol, and 25 modulation symbols being produced per set of 100 bits. One way to identify which of the three mappings was used is to transmit two bits set to indicate the specific mapping employed. This represents an overhead of two bits per 100 bits being mapped.
A large file which is more or less uniformly distributed may contain local non-uniformities. Because of this, an adaptive mapping may still outperform a Gray mapping if N is selected small enough to capture these non-uniformities.
The mapper input stream analyzer 23 is any functionality which processes the mapper input stream to determine mapper selection information 30. In one embodiment, the mapper input stream analyzer 23 determines a non-uniformity metric in respect of the mapper input stream 24 for each set of N bits. This non-uniformity metric might for example be some measure of an imbalance between the frequency of zeros and ones in the mapper input stream. For example, it might be a number of zeros and a number of ones, or a percentage of zeros vs. ones.
The mapping selection information 30 consists of information which enables the dynamic mapping 26 to select an appropriate mapping for each set of N bits of the mapper input stream 24. It is important to note that the mapping selection information 30 operates within a given signal constellation to allow the selection of one of a plurality of possible mappings for the signal constellation. For a different signal constellation, the mapping selection information 30 operates within that signal constellation to select from a different plurality of possible mappings for the different signal constellation.
In the embodiment of
Any number of mappings may be employed in a given implementation. In one particular example, three mappings are employed. One of these is the Gray mapping; one is the so-called M1 mapping detailed below, and the other is an inversion of the M1 mapping, hereafter referred to as the M1′ mapping. In another embodiment, one or more mappings is an Mn mapping as described below. One mapping may be a Gray mapping. One or more mappings may be an Mn′ mapping, an Mn′ mapping being the inverse of the Mn mapping, created by inverting all the bits of the Mn mapping.
In another embodiment, the mapper input stream analyzer 23 determines a measure of entropy in the mapper input stream, and this measure of entropy is used as a basis for performing mapping selection.
In another embodiment, the mapper input stream analyzer 23 determines a measure of redundancy in the mapper input stream, and this measure of redundancy is used as a basis for performing mapping selection. Redundancy can include both non-uniformity and memory effects. In a preferred embodiment, the dynamic mapper 26 implements a discrete set of static mapping functions, with one mapping being executed for a respective range of a metric being measured by the mapper input stream analyzer 23. In some embodiments the dynamic mapper 26 has all of the mappings implemented in hardware. In another embodiment, the dynamic mapper 26 has the mappings stored in memory for recall as required. In some embodiments, the mapping selection information is only used when a change in the mapping is required. In this case, the previously selected mapping is employed until a new mapping is selected. In other embodiments, the mapping selection information is processed for every set of N bits.
Mapping information 32/33 is any information that will allow a de-mapper to select the proper mapping. This can be an identification of the mapping per se, or an identification of other information allowing a mapping to be selected. For example, if the mapping is selected on the basis of signal non-uniformity, sending information concerning the signal non-uniformity would also allow a receiver to determine the mapping used. In one implementation, several bits are transmitted each time the mapping changes so as to identify the next mapping. These can be sent on a separate channel from the modulation symbols, or embedded within a transmitted signal containing the modulation symbols.
Referring now to
Once the mapping used at the source is known, any method of processing the received modulation symbols may be employed. For example, any existing method of processing received modulation symbols mapped using a static mapper may be employed so long as the mapping is changed as required to reflect the mapping performed. This processing may involve some combination of steps such as symbol detection, de-mapping, decoding, for example all of which are well understood by those skilled in the art. For example, MAP detection or ML (maximum likelihood) decoding or approximations thereof might be implemented in a receiver.
The functionality of
In some embodiments, a transmitter of modulation symbols generated using the dynamic mapping provided by embodiments of the invention does not send any mapping information to assist a receiver of the modulation symbols in selecting an appropriate mapping. For the example of
As indicated above, in some embodiments, MAP detection is used to recover the information from the modulation symbols. MAP detection requires an estimate of noise power. There are many methods known to one skilled in the art of generating an estimate of the noise power, and any of these may be employed, or new methods alternatively may be developed. MAP detection also requires information about the probabilities of each information symbol in the information stream. For example, for binary information, MAP detection needs to know the relative probability of a bit being a one or a zero. In one embodiment, the mapping information 32/33 identifies which mapping was employed to generate the modulation symbols, and the mapping information is used to infer information on the relative probabilities of the information symbols.
For example, consider an implementation in which “q” is the probability of a “zero”, 1-q being the probability of a “one”, and in which the following mappings are used:
In another embodiment, the mapping information 32/33 is a value for q. This value for q can then be used to determine which mapping was used, and can also be used for MAP detection.
These examples have been specific to binary information symbols. For M-ary information symbols, M symbol probabilities are needed at the receiver if MAP detection is to be employed. These can be sent as additional overhead. In a preferred embodiment, all of the M symbol probabilities are inferred from the identification of which mapping was employed.
The embodiments have assumed that the mappings take place between information symbols and modulation symbols. More generally, embodiments of the invention provide for mappings between information symbols and transmission symbols. Modulation symbols are one example of a type of transmission symbols which are modulated onto a carrier or carriers. More generally, transmission symbols may or may not be modulated onto a carrier or carriers. An example of transmission symbols which are not modulated to a carrier can be found in new ultra wideband transmission symbols which are transmitted, for example, over a bandwidth spanning 0 Hz (DC) to 10 GHz.
In such embodiments, the modulation symbol processor of
In one embodiment, the adaptive mapping and de-mapping methods described herein are applied in a carrierless transmitter and/or receiver such as an ultra wideband transmitter and an ultra wideband receiver.
The above described embodiments have focussed on mechanisms for switching between different mappings. Of course, it is preferred that each mapping thus selected performs better than the other available mappings for a given input signal, and that mapping selection is carried out such that a switch in mapping is made when a different mapping will perform better than a current mapping. One way of achieving this is to simulate the BER performance of each mapping for an entire range of input signal characteristic, for example for an entire range of non-uniformity, or over a range of interest of non-uniformity. Then, thresholds in signal characteristic/non-uniformity can be identified from the performance results by determining for each signal characteristic value/non-uniformity value which one of the mappings performs best. It is expected that if simulations are run long enough, contiguous ranges of signal characteristic/non-uniformity will result for each mapping.
Constellation Mappings for MAP Decoding
Any mappings can be employed with the above discussed embodiments. Of course, little or no benefit will be achieved if the mappings are not intelligently selected.
In this section, we consider the construction of mappings from a set of nonuniformly distributed symbols to the points of a fixed 2-D constellation with the objective of minimizing SER (symbol error rate) /BER. For a given M-ary constellation, there are M! possible mappings from the source symbol set to the constellation points, and thus, despite the fact that in many cases many of the mappings are equivalent to one another in terms of SER/BER performance (in the case of a binary source), this problem has exponential search complexity.
A further complication is the following: tractable closed-form analytical expressions for the SER or BER under MAP decoding are not known for a general given constellation and a given mapping. Moreover, it is not feasible to search through, for example, thousands of mappings via simulation. To partially address this problem, new upper and lower bounds recently derived in H. Kuai, F. Alajaji, and G. Takahara, “Tight error bounds for nonuniform signaling over AWGN channels,” IEEE Trans. Inform. Theory, vol. 46, pp. 2712-2718, November 2000, are employed to assess the BER/SER performance for any given mapping. The bounds are very accurate and computationally efficient. They are useful for performing exhaustive searches for small values of M(i.e., M≦16 for SER and M≦8 for BER) and for conducting limited searches for moderate values of M(i.e., M=32 for SER and M=16 for BER). In addition, criteria are provided for constructing a heuristic map that performs well compared to optimal maps when known (obtained using our bounds) and locally optimal maps obtained via a search algorithm.
In the case of equally likely signals, the average energy per symbol is the same for all mappings. However, for signals that are not equally likely this is not true, and it is desirable to have mappings which minimize the average energy per symbol. Also, one should minimize the probability of error when the most likely signals are sent. The following criteria, listed in order of priority, are proposed as guidelines for constructing a mapping with the objective of jointly minimizing SER [criteria 1) and 2)] and BER [criterion 3)]:
Subject to criterion 1), criterion 2) is next considered. Let s1, . . . , sM denote the signals listed from most likely to least likely. The SER is given by
An approach to minimizing the SER is the greedy one [criterion 2)], which consists of first minimizing Pr{Symbol Error|s1 sent} subject to the average energy per symbol being minimized, then minimizing Pr{Symbol Error|s2 sent} subject to the average energy per symbol and the first conditional error probability being minimized, etc. At any given stage, after selecting a mapping to minimize the average energy per symbol, a set of permutations of that mapping is available which is more restricted than at the previous stage. From this new restricted set of permutations, a mapping is chosen to minimize the conditional error probability of the current stage.
However, there is a practical limitation to the above procedure: finding the set of maps which minimizes a given conditional error probability [as suggested in criterion 2)] is only slightly less complex than finding the overall optimal map for any moderately sized M. Indeed, this may require considering mapping choices over very large sets.
Therefore, the following two simple heuristics are proposed in accordance with criteria 1)-3) for constellations with several energy levels (such as QAM with M>4) and constellations with a single energy level (such as PSK), respectively.
1) QAM Heuristic Mapping: For each energy level, starting with the lowest and in increasing order of energy levels, choose a set of symbols to fill up that energy level from the set of unallocated symbols to satisfy criterion 1′) below and then allocate the symbols in this chosen set to the signal points of that energy level to satisfy criterion 2′) below.
1′) The symbols in this set are the most likely symbols among the unallocated symbols (note that this set is not unique in general).
2′) The least likely symbols of the current set are the nearest neighbors of the most likely symbols of the set allocated for the previous energy level.
When there is more than one set/allocation of symbols that satisfies criteria 1′) and 2′), use a Gray mapping procedure [as discussed in 3) above] to identify a single set and allocation.
2) PSK Heuristic Mapping: For constellations with a single energy level (such as PSK), the following simpler heuristic is proposed.
1) Place the (single) most likely symbol arbitrarily.
2) Place the next m=log2 M most likely symbols such that these first m+1 most likely symbols are as uniformly spread as possible, with the most likely symbol being the most isolated (in Euclidean distance sense) when possible.
3) Place the two least likely symbols next to the most likely symbol and the next 2 m least likely symbols as nearest neighbors to the m symbols placed in step 2), adhering to the Gray mapping principle whenever possible.
4) Repeat steps 2) and 3) until all the remaining symbols are placed.
3) Search Algorithm: Criteria 1′)-2′) [or 1)-4)] can be implemented in-the following algorithm to search for locally optimal mappings that have good SER and BER performance.
Input mapping Mn as the initial point in a steepest descent search algorithm, which searches locally at each iteration for the mapping which minimizes the objective function (SER or BER) by interchanging the assignment of a pair of symbols. Let Mn+1 denote the final (locally optimal) mapping obtained by this search.
Let n=n+1 and Eb/N0=Eb/N0+Δ.
Note that the mapping provided by the above search algorithm is, in general, a function of Eb/N0.
Performance results were obtained using a simulator which simulated MAP decoding for a Gray map and for the M1 and M1′ map. This program took a q (the percentage of bits being a zero) and computed the bit and symbol error rates. The simulation used additive white Gaussian noise for various signal to noise ratios. All of the results are for 64 QAM.
In order to determine thresholds, simulation was conducted at a particular Eb/N0 (=9) over the range of q. Results are shown in
The simulator opens a specified binary file and reads the first N=3000 bits. As the 3000 bits are read the program counts the number of zero's and computes q for the 3000-bit sample. This 3000-bit sample is then simulated in the same fashion as before.
To assess the adaptive mapping approach, the program takes input from a file and based on the value of q for each 3000 bit sequence it selects a different mapping to use. If the q value is less than the M1′ threshold (set at 0.4) the M1′ mapping is used. If the q value is greater than the M1 threshold (set at 0.65) the M1 mapping is used and if the q value is between the two thresholds the gray mapping is used. Simulation was done with real multimedia files. A range of file types were used, and included the following files:
It is important to notice that many of these popular media types are compressed formats.
The distributions of some of aforementioned files were analyzed and the results are plotted in
The fax documents and the medical file both had non-uniform distributions. The fax documents had low proportions of zeros. Every bin had a proportion less than 0.4, and many consecutive bins had no zeros.
The medical image document shows a distribution with a high proportion of zeros. This file was originally too small for the desired simulations. In order to make it large enough, the data in the file was copied and appended to the file three times. This accounts for the similarities within the file (the two identical bumps). The proportion stays for the most part above 0.6 (with the exception of bin 305 having a proportion of 0.5333).
Simulation with the Gray Mapping, the M1 mapping, and the M1′ mapping was then done with the multimedia files. For simplicity, only three files were analyzed. All compressed file types exhibited nearly identical behaviour, so the Kitty.avi file was analyzed from that collection of files. Both fax documents also had nearly identical behaviour, so the ccitt1.pgm was analyzed. As no other document had a distribution like the medical image, that file was also analyzed.
The plot for the headscan.pgm file appears in
The plot for the fax document appear in
The performance for the file kitty.avi, one of the compressed files is shown in
The adaptive mapping strategy was then tested against the other available mappings using the specific thresholds identified above. Again for simplicity, the same three files will be used for analysis. The kitty.avi file was the first file simulated. The results are shown in
The ccitt1.pgm was simulated and the results are shown in
The next file simulated was the headscan.pgm file. The adaptive mapping and the M1′ mapping (not shown) yielded identical results, both having BER lower than the Gray mapping and the M1 mapping. This would seem suspicious, but recall that the switching bounds for the adaptive mapping were set at 0.4 on the low end and 0.65 on the high end. The distribution of the headscan file shows that the proportion of zeros only rarely falls below 0.6. Thus, the M1′ mapping was used for most of the simulation.
The above examples assume an additive white Gaussian noise channel. The M1 mapping also performs well in a Rayleigh fading channel. An example of this is shown in
The above examples have assumed a single transmit antenna and a single receive antenna. The M1 mapping also performs well in a MIMO (multiple input multiple output environment. An example of this is shown in
Numerous modifications and variations of the present invention are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims, the invention may be practiced otherwise than as specifically described herein.
This application claims the benefit of prior U.S. provisional patent application No. 60/549,150 filed Mar. 3, 2004.
Number | Date | Country | |
---|---|---|---|
60549150 | Mar 2004 | US |