This disclosure relates to wireless communications.
Wireless communication devices can use one or more wireless communication technologies such as orthogonal frequency division multiplexing (OFDM) or code division multiple access (CDMA). In an OFDM based wireless communication system, a data stream is split into multiple data substreams. Such data substreams are sent over different OFDM subcarriers, which can be referred to as tones or frequency tones. Various examples of wireless communication devices include mobile phones, smart phones, wireless routers, wireless hubs, base stations, and access points. In some cases, wireless communication electronics are integrated with data processing equipment such as laptops, personal digital assistants, and computers.
A wireless communication device can generate a transmission signal based on two or more constituent signals. A signal transmitted over a wireless communication channel may be subject to channel noise such as additive white Gaussian noise (AWGN), Rayleigh fading, or even blockage. To decode a received signal, a device can use information based on characteristics of a constituent signal and one or more channel measurements. In some cases, constituent signals can be encoded using channel encoders of different rates and with different amounts of redundancies. Moreover, constituent signals can be modulated using different signal constellations, respectively. Various examples of coding techniques include Reed-Solomon coding, convolutional coding, and turbo coding. Various examples of modulation techniques include quadrature amplitude modulation (QAM) and pulse amplitude modulation (PAM).
A wireless communication device can perform successive interference cancellation (SIC) ordered decoding to process a received signal that is based on multiple constituent signals. A SIC ordered decoding technique includes detecting the strongest signal by assuming other interfering signals to be Gaussian, decoding the strongest signal, re-encoding and re-modulating the decoded signal, and subtracting the re-modulated signal from the received signal to produce a modified received signal. The next strongest signal is then similarly decoded based on the modified received signal. These operations repeat until all of the constituent signals are decoded. A SIC ordered decoding technique can perform a maximum likelihood (ML) detection over individual signal constellations that are associated with respective constituent signals.
The present disclosure includes systems and techniques for wireless communications.
According to an aspect of the present disclosure, a technique for wireless communications includes receiving a signal that represents concurrent wireless data communications, where the signal is based on superimposed signals modulated using different respective constellations; detecting a first signal from the received signal over a first combined constellation, the combined constellation being based on the respective constellations; modifying the received signal based on the first detected signal to remove a signal contribution associated with the first detected signal; and detecting a second signal from the modified received signal over a second constellation. The second constellation can be based on the respective constellations absent a constellation of the respective constellations that is associated with the first detected signal.
The described systems and techniques can be implemented in electronic circuitry, computer hardware, firmware, software, or in combinations of them, such as the structural means disclosed in this specification and structural equivalents thereof. This can include at least one computer-readable medium embodying a program operable to cause one or more data processing apparatus (e.g., a signal processing device including a programmable processor) to perform operations described. Thus, program implementations can be realized from a disclosed method, system, or apparatus, and apparatus implementations can be realized from a disclosed system, computer-readable medium, or method. Similarly, method implementations can be realized from a disclosed system, computer-readable medium, or apparatus, and system implementations can be realized from a disclosed method, computer-readable medium, or apparatus.
For example, one or more disclosed embodiments can be implemented in various systems and apparatus, including, but not limited to, a special purpose data processing apparatus (e.g., a wireless communication device such as a wireless access point, a remote environment monitor, a router, a switch, a computer system component, a medium access unit), a mobile data processing apparatus (e.g., a wireless client, a cellular telephone, a smart phone, a personal digital assistant (PDA), a mobile computer, a digital camera), a general purpose data processing apparatus such as a computer, or combinations of these.
Systems and apparatuses can include circuitry configured to receive a signal that represents concurrent wireless data communications, where the signal is based on superimposed signals modulated using different respective constellations; and processor electronics configured to perform operations comprising i) detecting a first signal from the received signal over a first combined constellation, the combined constellation being based on the respective constellations, ii) modifying the received signal based on the first detected signal to remove a signal contribution associated with the first detected signal, and iii) detecting a second signal from the modified received signal over a second constellation, where the second constellation is based on the respective constellations absent a constellation of the respective constellations that is associated with the first detected signal.
In another aspect, systems and apparatuses can include circuitry configured to store information indicative of a received signal that represents concurrent wireless data communications, where the received signal is based on superimposed signals modulated using different respective constellations. Systems and apparatuses can include circuitry configured to i) detect a first signal from the received signal over a first combined constellation, the combined constellation being based on the respective constellations, ii) modify the received signal based on the first detected signal to remove a signal contribution associated with the first detected signal, and iii) circuitry configured to perform detecting a second signal from the modified received signal over a second constellation. The second constellation can be based on the respective constellations absent a constellation of the respective constellations that is associated with the first detected signal.
Details of one or more implementations are set forth in the accompanying drawings and the description below. Other features and advantages may be apparent from the description and drawings, and from the claims.
Like reference symbols in the various drawings indicate like elements.
A wireless communication device transmits signals to one or more other wireless communication devices. The wireless communication device can superimpose two or more constituent signals to form a transmission signal. In some cases, the wireless communication device transmits the constituent signals on respective antennas for multiple-in-multiple-out (MIMO) based wireless communications. The constituent signals can be separately encoded and modulated. At a receiving device, wireless channel conditions such as noise or fading can increase the complexity of extracting constituent signals from a received signal.
This disclosure includes systems and techniques for extracting, from a received signal, multiple signals that are independently produced such as signals that are independently encoded and modulated. Techniques can include the detection and decoding of two or more signals based on a combined signal constellation. A wireless communication device can use modulation and coding scheme (MCS) information associated with other devices to decode a signal intended for the wireless communication device. One or more of the described techniques can be applied in wireless communication systems such as ones based on 3GPP LTE or IEEE 802.16 WiMAX. One or more the described techniques can be applied to wireless channels such as a multiple access channel, a broadcast channel, an interference channel, or a combination thereof.
A wireless communication device can use circuitry such as encoders and modulators to independently produce K constituent signals based on respective input signals, e.g., data bit streams. The wireless communication device can perform concurrent wireless data transmissions based on superimposing the constituent signals.
For a k-th input signal, an encoder can transform a vector bk[m] of information bits for the k-th signal to a vector ck[m] of encoded bits for the k-th signal. Various examples of coding techniques include trellis coding, block coding, convolutional coding, Reed-Solomon coding, and turbo coding.
A modulator can transform a vector ck[m] of encoded bits for the k-th signal to a vector xk[m] that represents the k-th constituent signal. Various examples of modulation techniques include quadrature amplitude modulation (QAM) and pulse amplitude modulation (PAM). A modulator can use M-ary QAM, where M refers to the number of points in a constellation. Examples of M-ary QAM include 4-QAM, 16-QAM, and 64-QAM. A modulator can use M-ary PAM, where M refers to the number of points in a constellation. Examples of M-ary PAM include 2-PAM, 4-PAM, and 8-PAM. In some implementations, independently producing K constituent signals can include using 4-QAM to modulate a first signal and using 4-PAM to modulate a second signal. In some implementations, independently producing K constituent signals can include using a first version of 4-QAM to modulate a first signal and a second version of 4-QAM to modulate a second signal. In some implementations, the second version of 4-QAM can be a scaled version of the first version. In some implementations, the second version of 4-QAM uses a different set of points than the first version.
A wireless communication device can perform a summation of the K constituent signals to produce a transmission signal. In some implementations, a device can receive a summation of the K constituent signals, each of which is independently transmitted from an independent device. The device(s) can apply transmit power Pk parameters to respective constituent signals before the summation. A received version of the transmission signal can be represented by
where m represents a time index, xk[m] represents the k-th constituent signal, hk[m] represents a k-th channel gain from a transmitter to a receiver, n[m] represents independent and identically distributed (i.i.d.) complex Gaussian noise with mean zero and variance σn2.
A wireless communication device can generate constituent signals for one or more channel types such as a multiple access channel (MAC), a broadcast channel (BC), an interference channel (IC), or a combination thereof. In some cases, the constituent signals are intended for separate receivers. In some cases, one or more constituent signals are for transmitting a system channel such as a pilot channel or paging channel.
For a multiple access channel, a received version of the transmission signal can be represented by
where m represents a time index, xk[m] represents the k-th constituent signal, hk[m] represents a k-th channel gain from a transmitter to a receiver, n[m] represents independent and identically distributed (i.i.d.) complex Gaussian noise with mean zero and variance σn2.
For a broadcast channel, a received version of a broadcast signal at the i-th receiver can be represented by
where a propagation of the transmission signal to the i-th receiving device experiences its own channel gain hi[m] and noise ni[m].
For an interference channel, a received version of an interference signal at the i-th receiver can be represented by
where hik[m] is a channel gain from the k-th transmitter to the i-th receiver. Here, each receiver has a distinct received signal yi[m] with hk[m]:=hik[m] for every k=1, . . . , K. Note that noise can be indexed per receiver.
A wireless communication device can perform successive interference cancellation (SIC) ordered decoding to process a received signal that is based on two or more constituent signals. Some wireless communication device can detect and decode signals based on considering separate signal constellations. An order of signal decoding is represented by an index numeration of 1, 2, . . . , K. The constituent signal that is decoded first is assigned the i=1 index, the constituent signal that is decoded second is assigned the i=2 index, and so on.
A wireless communication device can detect a first signal in a received signal by treating the expression
as Gaussian to detect {circumflex over (x)}1[m] and decode {circumflex over (b)}1[m]. Detecting a first signal can include computing one or more channel gain values.
Detecting a second signal in a received signal can include re-encoding and re-modulating {circumflex over (b)}1[m] to generate {circumflex over ({circumflex over (x)}1[m] and computing a modified received signal v2 by subtracting h1[m]{circumflex over ({circumflex over (x)}1[m] from y[m]. The subtraction can reduce or eliminate the interference caused by the first signal. Detecting a second signal can include using the modified received signal to detect and decode the signal second to detect {circumflex over (x)}2[m] and decode {circumflex over (b)}2[m]. The wireless communication device can repeat the process for additional signals, if required. In some implementations, computing a modified received signal includes computing a signal based on
where v1[m]=y[m].
A wireless communication device can use a maximum likelihood detector that considers signal constellations individually. For example, a maximum likelihood detector can detect a signal based on
where fM
where σ12 and σn2 are the variances of other interfering signals and noise, respectively. In some implementations, a maximum likelihood detector can access a data structure that stores information about signal constellations that are used to modulate signals.
Rather than considering separate constellations to detect constituent signals, a wireless communication device can use a combined constellation to detect an initial signal from a received signal. The wireless communication device can perform successive interference cancellation to increase the likelihood of a successful detection of the remaining signals. The wireless communication device, if required, can combine constellations associated with the remaining signals to detect a subsequent signal.
An encoder 115 encodes the decoded information bits associated with the first signal. A modulator 120 modulates the encoded bits to produce an estimated version {circumflex over (x)}1[m] of a constituent signal x1[m]. A multiplier 125 multiplies the estimated version {circumflex over (x)}1[m] and a negative version of the channel gain h1[m]. An adder 130 adds an output of the multiplier 125 with the received signal y[m] to remove the contribution of the first signal from the received signal to produce a modified received signal.
A second detector 135 detects a second signal from the modified received signal using a constellation, which is based on one or more remaining constellations associated with respective one or more remaining signals to be decoded. In a two signal example, the second detector 135 uses the remaining constellation. In a three signal example, the second detector 135 uses a combined version of the remaining two constellations. The second detector 135 includes a demodulator to demodulate the second signal. A decoder 140 performs decoding on an output of the second detector 135 to produce one or more decoded bits, e.g., a vector {circumflex over (b)}2[m] of information bits, associated with the second signal.
A wireless communication device can include independent encoders and modulators for preparing multiple signals for transmission. For example, a wireless communication device can transmit a signal with multiple constituent signals via superimposing two or more signals that have been independently encoded and modulated. For receiving, a wireless communication device can use MCS information of the constituent signals to process a signal. A wireless communication device can receive MCS information via a broadcast control channel. In some implementations, MCS information is predetermined.
A superimposition of the symbols 215, 225 is represented by a point 235 labeled ‘0010’ on the graph 230. The representation can include noise and different channel gains for the respective symbols 215, 225. Because the constituent constellations 210, 220 include 4 points, their combination yields a constellation of 16 points.
A wireless communication device can perform hard decoding of L signals among K superimposed signals. An order of signal decoding is represented by an index numeration of 1, 2, . . . , L. The signal that is decoded first is assigned index 1, the signal that is decoded second is assigned index 2, and so on. The wireless communication device can detect the first signal {circumflex over (x)}1[m] over a first combined constellation M1× . . . ×MK of K superimposed signals and decode {circumflex over (b)}1[m]. In some implementations, detecting a signal includes performing maximum likelihood detection. In some implementations, detecting a signal includes performing minimum distance detection. Detecting a first signal can include computing one or more channel gains.
Detecting a second signal in a received signal can include using a first signal interference-cancelled version of the received signal to detect {circumflex over (x)}2[m] over a combined constellation. Detecting a second signal can include re-encoding {circumflex over (b)}1[m] to generate {circumflex over ({circumflex over (x)}1[m] and computing a modified received signal v2 based on subtracting h1[m]{circumflex over ({circumflex over (x)}1[m] from y[m]. The subtraction can remove the interference caused by the first signal to the other signals.
Using the modified received signal, the wireless communication device can detect the second signal over a second combined constellation M2× . . . ×MK. The second combined constellation is based on signal constellations that correspond to the remaining K−1 superimposed signal(s), respectively. The wireless communication device can repeat the process for additional signals, if required.
In some implementations, computing a modified received signal includes computing a signal based on
where v1[m]=y[m]. Detecting the (i+1)-th signal can include using the (i+1)-th combined constellation given by Mi+1× . . . ×MK to detect the signal. If the (i+1)-th signal is the K-th signal, then the combined constellation reduces to MK.
A wireless communication device can use a maximum likelihood detector that considers one or more combinations of signal constellations. The maximum likelihood detector can detect a signal {circumflex over (x)} based on
where f is a CPDF that is considered over the combined constellation of Mi+1× . . . ×MK, where {circumflex over (x)} corresponds to the î-th x. Here, the CPDF f function can be represented by:
The maximum likelihood detector can consider all signal points of M1+1× . . . ×MK around each signal point of {circumflex over (x)}i[m].
A wireless communication device can use a minimum distance detector that considers one or more combinations of signal constellations. A minimum distance detector can detect a signal {circumflex over (x)} based on
where {circumflex over (x)} corresponds to the î-th x. In some implementations, to detect a signal {circumflex over (x)}, a minimum distance detector can compute:
The minimum distance detector can consider the nearest signal point of Mi× . . . ×MK to calculate a minimum distance hard decoding metric. The minimum distance detector can extract {circumflex over (x)}i[m] from the detected set of ({circumflex over (x)}i, . . . , {circumflex over (x)}K), which is one of the combined constellation points.
where x1[m] and x2[m] are binary PAM signals (e.g., signal 1 and signal 2, respectively). A wireless communication device performs detection and decoding on x1[m] and then on x2[m]. Points 402 on a combined constellation are represented by circles in
At 510, the communication process detects a first signal from the received signal over a first combined constellation that is based on the respective constellations. The combined constellation can be a product of the respective constellations.
In some implementations, detecting a signal includes using a maximum likelihood detector that considers the points associated with a combined constellation. In some implementations, detecting a signal includes using a minimum distance detector that considers the points associated with a combined constellation. In some implementations, detecting a signal includes using a product of the respective constellations. In some implementations, detecting a signal includes using one or more points associated with a product of the respective constellations.
At 515, the communication process modifies the received signal based on the detected first signal to remove a signal contribution associated with the detected first signal. The communication process can include decoding the first detected signal, re-encoding the decoded version, and re-modulating the re-encoded version. Modifying a received signal can include subtracting a scaled re-modulated version from the received signal, where the scaling factor is based on a wireless channel gain associated with the first detected signal. In some implementations, a wireless channel gain is determined based on one or more training sequences.
At 525, the communication process detects a second signal from the received signal over a second combined constellation that is based on the respective constellations absent the constellation associated with the first detected signal. The communication process can prune the identified constellation from a group of the respective constellations. The communication process can construct the second combined constellation based on a product of the constellations in the pruned version of the group. In some implementations, combinations of the constellations are predetermined before the communication process starts.
In some implementations, the communication process identifies a constellation associated with the first detected signal. Identifying a constellation can include obtaining an identifier of a constellation indicated by a detector to be the constellation associated with the first detected signal. Identifying a constellation can include determining whether a point of a detected signal matches one of the respective constellations. In some implementations, the communication process detects a second signal from the received signal over a second combined constellation that is based on the respective constellations absent the identified constellation associated with the first detected signal.
In concurrent wireless communications via interference channels, multiple transmitters are transmitting signals to multiple receivers. In some implementations, a multiple-in-multiple-out (MIMO) configured wireless communication device uses two or more antennas to concurrently transmit data to two or more receive antennas. The receive antennas can correspond to two or more devices or can correspond to another MIMO device that has two or more antennas. For example, a signal xi[m] is transmitted from the i-th transmitter (e.g., i-th device or i-th antenna of a device) to the j-th receiver (e.g., j-th device or antenna of a device) with channel gain hji[m]. An on-diagonal element hii, represents a channel gain for the i-th signal, whereas off-diagonal elements of h represent channel interference between signals.
Two or more signals of an interference channel can be transmitted and received. A signal can include two or more signal elements such as a signal for common information denoted by a ‘c’ and a signal for private information denoted by a ‘p.’ Information deemed common is intended for all receivers in a group, whereas information deemed private is intended for a specific receiver in the group. A Han-Kobayashi technique can be used for two or more signals for interference channel based communications.
For example, two transmitters can transmit two signals (e.g., signal x1[m] and signal x2[m]) to two receivers. Here, x1[m]=x1c[m]+x1p[m] and x2[m]=x2c[m]+x2p[m]. The signal x1c[m] is associated with signal constellation M1c; x1p[m] with M1p; x2c[m] with M2c; and x2p[m] with M2p. The signal received by a first receiver is represented by:
y1[m]=h11[m]x1c[m]+h12[m]x2c[m]+h11[m]x1p[m]+h12[m]x2p[m]+n1[m].
The signal received by a second receiver is represented by:
y2[m]=h22[m]x2c[m]+h21[m]x1c[m]+h22[m]x2p[m]+h21[m]x1p[m]+n2[m].
The first receiver detects {circumflex over (x)}1c[m] from y1[m] over the combined constellation of M1c×M2c×M1p×M2p. The receiver decodes {circumflex over (x)}1c[m] into {circumflex over (b)}1c[m]. The receiver re-encodes {circumflex over (b)}1c[m] into {circumflex over ({circumflex over (x)}1c[m]. A first modified received signal is generated by subtracting h11[m]{circumflex over ({circumflex over (x)}1c[m] from y1[m]. The receiver detect {circumflex over (x)}2c[m] from the first modified received signal over the combined constellation of M2c×M1p×M2p. The receiver decodes {circumflex over ({circumflex over (x)}2c[m] into {circumflex over (b)}2c[m]. The receiver re-encodes {circumflex over (b)}2c[m] into {circumflex over ({circumflex over (x)}2c[m]. A second modified received signal is generated by subtracting h12[m]{circumflex over ({circumflex over (x)}2c[m] from the first modified received signal. The receiver detects {circumflex over (x)}1p[m] from the second modified received signal over the combined constellation of M1p×M2p, and decodes {circumflex over (x)}1p[m] into {circumflex over (b)}1p[m]. The second receiver performs similar operations, but with index 1 and 2 swapped.
A few embodiments have been described in detail above, and various modifications are possible. The disclosed subject matter, including the functional operations described in this specification, can be implemented in electronic circuitry, computer hardware, firmware, software, or in combinations of them, such as the structural means disclosed in this specification and structural equivalents thereof, including potentially a program operable to cause one or more data processing apparatus to perform the operations described (such as a program encoded in a computer-readable medium, which can be a memory device, a storage device, a machine-readable storage substrate, or other physical, machine-readable medium, or a combination of one or more of them).
The term “data processing apparatus” encompasses all apparatus, devices, and machines for processing data, including by way of example a programmable processor, a computer, or multiple processors or computers. The apparatus can include, in addition to hardware, code that creates an execution environment for the computer program in question, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them.
A program (also known as a computer program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and it can be deployed in any form, including as a stand alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A program does not necessarily correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code). A program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
While this specification contains many specifics, these should not be construed as limitations on the scope of what may be claimed, but rather as descriptions of features that may be specific to particular embodiments. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination may be directed to a subcombination or variation of a subcombination.
Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments.
Other embodiments fall within the scope of the following claims.
This disclosure is a continuation of and claims the benefit of the priority of U.S. patent application Ser. No. 12/938,718, filed Nov. 3, 2010 and entitled “Signal Processing for Independently Produced Signals” (now U.S. Pat. No. 8,625,694) which claims the benefit of the priority of U.S. Provisional Application Ser. No. 61/258,491, filed Nov. 5, 2009 and entitled “A New Hard Decoding Method For Independently Encoded Signals. The above-identified applications are incorporated herein by reference in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
20070011716 | Koslov et al. | Jan 2007 | A1 |
20090074097 | Sadowsky | Mar 2009 | A1 |
20090203310 | Lozano et al. | Aug 2009 | A1 |
20110051851 | Khayrallah | Mar 2011 | A1 |
Entry |
---|
Han, Te Sun, “A New Achievable Rate Region for the Interface Channel,” Jan. 1981, IEEE Transactions on Information Theory IT-27(1):49-60, 12 pages. |
Number | Date | Country | |
---|---|---|---|
61258491 | Nov 2009 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12938718 | Nov 2010 | US |
Child | 14148308 | US |