US20140133591A1 - Multiple input multiple output (mimo) transmitted signal vector estimation employing monte carlo sampling techniques - Google Patents

Multiple input multiple output (mimo) transmitted signal vector estimation employing monte carlo sampling techniques Download PDF

Info

Publication number
US20140133591A1
US20140133591A1 US14/159,461 US201414159461A US2014133591A1 US 20140133591 A1 US20140133591 A1 US 20140133591A1 US 201414159461 A US201414159461 A US 201414159461A US 2014133591 A1 US2014133591 A1 US 2014133591A1
Authority
US
United States
Prior art keywords
vector
symbol
wireless
random number
transmitted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/159,461
Inventor
Ananthanarayanan Chockalingam
Balaji Sundar Rajan
Tanumay Datta
Ashok Kumar. N
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Indian Institute of Science IISC
Original Assignee
Indian Institute of Science IISC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Indian Institute of Science IISC filed Critical Indian Institute of Science IISC
Priority to US14/159,461 priority Critical patent/US20140133591A1/en
Publication of US20140133591A1 publication Critical patent/US20140133591A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/02Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
    • H04B7/04Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
    • H04B7/0413MIMO systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03178Arrangements involving sequence estimation techniques
    • H04L25/03203Trellis search techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03891Spatial equalizers

Definitions

  • Embodiments of the present disclosure relate generally to communication systems, and more specifically to techniques for detection of a transmitted signal (vector) in multiple-input multiple-output (MIMO) communication systems, using Monte Carlo sampling techniques.
  • MIMO systems Multiple-input multiple-output (MIMO) communication systems
  • MIMO transmitter transmitting device
  • MIMO receiver receiving device
  • the transmitting device may either represent a single device with the multiple antennas, or multiple (separate) devices, each with its own antenna(s).
  • MIMO technology is currently utilized in wireless communication according to standards such as, for example, IEEE 802.11n, 802.11ac, LTE-Advanced, WiMAX, etc.
  • Each of the multiple separate MIMO transmitters may represent a different user.
  • One of several modulation techniques may be used to transmit each of the symbols.
  • suitable MIMO encoding techniques may be employed in the MIMO transmitter to generate the symbols after modulation.
  • a corresponding MIMO receiver with Nr receive antennas may receive, on each of the Nr antennas, a superposition of the Nt symbols altered by the wireless channel during propagation from the transmitter(s) to the receiver.
  • Detection refers to determination/estimation, at the MIMO receiver, of the values of each of the Nt transmitted symbols in each symbol period.
  • the process of detection may be associated with correspondingly high computational complexity.
  • Another concern with detection techniques in a MIMO receiver may relate to performance (or reliability).
  • the detection needs to determine (or estimate) the transmitted symbols accurately, preferably close to optimum bit-error rate (BER) performance.
  • BER bit-error rate
  • a lower BER corresponds to a better performance of the detection techniques, and vice-versa.
  • Markov Chain Monte Carlo (MCMC) sampling techniques have previously been employed in a MIMO receiver for the estimation of the multiple (Nt) transmitted symbols.
  • simple MCMC sampling techniques employing Gibbs sampling may be associated with a potential drawback generally termed “stalling” that may occur at high receive signal-to-noise ratio (SNR). Stalling occurs when the iterations of the MCMC technique repeatedly generate the same candidate vector (constructed from the transmitted symbol alphabet) as a next potential solution vector, such that the estimation may ‘stall’, i.e., does not progress further.
  • SNR receive signal-to-noise ratio
  • a method of determining a transmitted vector (x) in a MIMO receiver comprises the following steps:
  • FIG. 1 is a block diagram illustrating the details of an example environment in which several embodiments can be implemented.
  • FIG. 2A shows an example probability mass function used in selecting a symbol using Gibbs sampling, in an embodiment of the present invention.
  • FIG. 2B shows cumulative distribution function (cdf) corresponding to the probability mass function of FIG. 2A .
  • FIG. 2C shows four bins formed from the cdf of FIG. 2B .
  • FIG. 3 is a block diagram illustrating relevant details of a wireless MIMO receiver, in which detection of a transmitted vector is performed by execution of appropriate execution modules.
  • FIG. 1 is a block diagram illustrating the details of an example environment in which several embodiments can be implemented.
  • MIMO system 100 is shown containing MIMO transmitters 110 - 1 through 110 -Nt, with respective antennas 120 - 1 through 120 -Nt, and MIMO receiver 130 with antennas 140 - 1 through 140 -Nr.
  • Each of MIMO transmitters 110 - 1 through 110 -Nt represents a user terminal such as, for example, a cell phone or a laptop or a personal digital assistant (PDA).
  • MIMO receiver 130 may represent a cellular base station (BS).
  • the system 100 of FIG. 1 is referred to as a multi-user MIMO system on the uplink. However, the specific details of FIG.
  • Nt separate MIMO transmitters (each corresponding to a user)
  • Nt transmit antennas may also be used.
  • Each of the transmitters 110 - 1 through 110 -Nt transmits on the same frequency, and each of the transmitted signals occupy the same bandwidth. Further, the transmissions from transmitters 110 - 1 through 110 -Nt are synchronized, such that each transmits a symbol in a corresponding symbol period. Any of well-known modulation techniques (e.g., 4-QAM etc.) may be used to transmit signals carrying the data.
  • modulation techniques e.g., 4-QAM etc.
  • a signal transmitted from an antenna of MIMO transmitter 110 - 1 may be received at all antennas 140 - 1 through 140 -Nr of MIMO receiver 130 , with corresponding modifications in amplitude and/or phase caused by the wireless medium 150 through which it propagates.
  • each of antennas 140 - 1 through 140 -Nr receives a corresponding signal, which is a weighted sum of all transmitted signals (i.e., from all antennas 120 - 1 through 120 -Nt.
  • Equation 1 the channel (representing by matrix H c ) is assumed to be a frequency non-selective (flat fading) channel, and the signal bandwidth of each of the signals transmitted by transmitters 110 - 1 through 110 -Nt is much smaller than the channel coherence bandwidth.
  • the techniques of the present invention are also applicable when the channel is frequency selective.
  • a frequency selective channel does not have a flat response over the signal bandwidth of interest. Instead the gains for each frequency (or frequency portions/bins) in the bandwidth of interest may have different gains.
  • embodiments of the present invention may use multi-carrier modulation (such as Orthogonal Frequency Division Multiplexing or OFDM) in each of transmitters 110 - 1 through 110 Nt.
  • OFDM Orthogonal Frequency Division Multiplexing
  • Channel transfer matrix Hc (or in the case of MIMO OFDM, the multiple channel matrices) may be made available to MIMO receiver 110 in a known way. For example, prior to transmission of actual data (information), and/or at periodic intervals during operation of MIMO system 100 , transmitters 110 - 1 through 110 -Nt and MIMO receiver 130 may exchange respective signals of pre-determined characteristics, and measure the changes in amplitude and phase of the signals caused by the wireless channel 150 , thereby obtain the entries of channel matrix H c .
  • the process of detection in MIMO receiver 130 therefore, entails determination or estimation of the transmitted signal vector x (i.e., the Nt symbols transmitted in each symbol period) based on a knowledge of channel matrix H c and the measured values of received signal vector y c (i.e., the signal measured at each of the Nr receive antennas).
  • statistics of noise vector n may also be used in estimating transmitted signal vector x c .
  • Equation 1A the entries in y c , x c , H c , and n c are complex numbers, with a real part and an ‘imaginary’ part.
  • the ‘complex’ system model represented by Equation 1A is first converted to a ‘real’ system model represented as shown below:
  • H r [ R ⁇ ( H c ) - I ⁇ ( H c ) I ⁇ ( H c ) R ⁇ ( H c ) ] ,
  • R(H c ) and I(H c ) are the real and imaginary parts of matrix H c .
  • Matrix H r is of size 2Nt ⁇ 2Nr.
  • Equation 2A For notational convenience, the subscripts r in Equation 2A are dropped.
  • the system model after dropping the subscripts r in Equation 2A is given by
  • Equation 2A is equivalent to Equation 1A, differing merely in representation.
  • the ‘complex’ model represented by Equation 1A may be used instead.
  • a prior detection technique employs Markov Chain Monte Carlo (MCMC) techniques to obtain an estimate of the transmitted vector x, and is described next.
  • MCMC Markov Chain Monte Carlo
  • Each symbol in the initial symbol vector is chosen from a random distribution of all possible symbol values from the modulation alphabet.
  • the alphabet consists of four symbols
  • each symbol in the potential solution vector is chosen randomly from a uniform distribution of the four symbols.
  • a next candidate vector for consideration as a solution vector is obtained by performing Gibbs sampling from a joint distribution P(x 1 , x 2 , . . . x 2Nt
  • Joint distribution P specifies the probability distribution of all possible transmitted vectors given a received vector y and channel matrix H, and is proportional to the value of the expression (exp[ ⁇ ( ⁇ y ⁇ Hx ⁇ 2 )/ ⁇ 2 ⁇ 2 ),
  • next candidate vector involves sequentially determining each symbol in the vector.
  • 2Nt selections are required for each iteration i.e., a next-candidate vector determination.
  • 2Nt updates are carried out by sampling from the distribution noted above in a manner as described next.
  • Each iteration i.e., determination of each next-candidate vector, involves 2Nt sub-steps (referred to conveniently as s1 through s2Nt).
  • s1 through s2Nt the values of all symbols (or co-ordinates) except one are retained with the same values as in the immediately previous iteration (t).
  • a corresponding intermediate vector is constructed retaining the previous values (from iteration t) of all the other symbols.
  • the number of intermediate vectors equals the number of symbols in the modulation alphabet. For example, if the modulation alphabet has four symbols, four intermediate vectors are obtained in each sub-step.
  • the initial symbol vector at iteration ‘t’ is denoted by the vector [x 1 (t) , x 2 (t) , . . . x 2Nt (t) ] T , with x 1 (t) being the first symbol of the vector at time t, x 2 (t) being the second symbol of the vector at time t, and so on.
  • sub-step s1 of the next iteration (t+1) four intermediate vectors are constructed retaining the values of all symbols x 2 (t) through x 2Nt (t) the same as in the initial symbol vector, but each with one of the four possible values for symbol x 1 (t) Since the alphabet consists of the symbols ⁇ 3, ⁇ 1, +1 and +3, the following four intermediate vectors are constructed in sub-step s1:
  • x inter1 (t+1) [ ⁇ 3 ,x 2 (t) , . . . x 2 Nt (t) ] T ,
  • x inter2 (t+1) [ ⁇ 1 ,x 2 (t) , . . . x 2 Nt (t) ] T ,
  • x inter3 (t+1) [+1 ,x 2 (t) , . . . x 2 Nt (t) ] T , and
  • x inter4 (t+1) [+4 ,x 2 (t) , . . . x 2 Nt (t) ] T .
  • each of the four intermediate vectors noted above is then computed based on the expression (exp[ ⁇ y ⁇ Hx ⁇ 2 )/ ⁇ 2 ⁇ 2 ). These four values are normalized to form a valid probability mass function (pmf).
  • pmf probability mass function
  • each of the four probability values is p1, p2, p3 and p4. Assuming p1, p2, p3 and p4 are respectively 0.24, 0.22, 0.5 and 0.04, the corresponding probability mass function is shown in FIG. 2A , and the corresponding cumulative distribution function (cdf ( 210 )) is shown in FIG. 2B .
  • bins are formed as shown in FIG. 2C , wherein each bin corresponds to a symbol in the alphabet.
  • bin1 from extends from 0 to 0.24 and corresponds to symbol ⁇ 3
  • bin2 extends from 0.24 to 0.46 and corresponds to symbol ⁇ 1
  • bin3 extends from 0.46 to 0.96 and corresponds to symbol +1
  • bin4 extends from 0.96 to 1 and corresponds to symbol +3.
  • a uniform random number between 0 to 1 is then generated, and the value of x1(t+1) is selected to be that symbol that corresponds to the bin that this random number falls in.
  • x 1 (t+1) is set to the symbol corresponding to bin 3, in this case +1.
  • Other symbols of the next candidate vector are determined in a similar fashion, keeping the rest of the other corresponding symbols the same as in the previous iteration.
  • 2Nt sub-steps a new candidate vector is thus obtained.
  • the ML cost of the new candidate vector may be computed, following which other candidate vectors may be formed and evaluated in a similar fashion.
  • the candidate vector with the least ML cost after a desired number of iterations is then declared as the solution vector.
  • the prior (conventional) MCMC technique described above may have a drawback referred to as ‘stalling’, according to which two or more successive candidate vectors may all be the same, and therefore a solution vector with a desired ML cost may not be obtained even after a large number of iterations.
  • a modified MCMC sampling technique according to the present invention overcomes such a problem as described next.
  • the technique of selection of each symbol of a next candidate vector is selectable between the conventional MCMC technique (Gibbs sampling) described in detail above, and a random sampling from a uniform distribution of the symbols of the modulation alphabet.
  • the modified sampling technique is referred to as randomized MCMC (RMCMC) or alternatively as “Mixture Sampling Algorithm”.
  • a probability value q is set equal to 1 ⁇ 2Nt, wherein Nt is the number of transmitters, and the Gibbs sampling samples the distribution (exp[ ⁇ ( ⁇ y ⁇ Hx ⁇ ) 2 / ⁇ 2 ), i.e., with the temperature parameter ⁇ 2 set to 1.
  • the probability of selection of a symbol of the next candidate vector using random sampling is q, while the probability of selection of the symbol using Gibbs sampling is (1-q).
  • a random number between 0 to 1 is then generated. If the value of the random number is less than q, then random sampling is used to select the symbol, but if the value of the random number is greater than or equal to q, then Gibbs sampling is used.
  • RMCMC Random MCMC
  • Mixture Sampling Algorithm The technique of selecting a symbol (or co-ordinate) of each candidate vector using either Gibbs sampling or random sampling as described above is termed randomized MCMC (RMCMC) or as Mixture Sampling Algorithm, and provides a low-complexity algorithm with near ML (maximum likelihood) performance.
  • RMCMC Random MCMC
  • Each candidate vector thus obtained may be evaluated against its ML cost, and the vector with the least ML cost may be declared as a final solution vector representing a transmitted vector.
  • Mixture Sampling Algorithm samples one of two probability distributions, the distributions being:
  • the two distributions used by the Mixture Sampling Algorithm are not restricted to those noted above.
  • other probability distribution pairs can instead be used to select a symbol of a candidate vector.
  • the number of iterations of the Mixture Sampling Algorithm before a final solution vector is declared is fixed.
  • other stopping criteria may be used.
  • a dynamic stopping criterion is used in an alternative embodiment that yields good performance without unduly increasing the complexity. The criterion works as described next.
  • a stalling is said to have occurred if the ML cost remains unchanged in two consecutive iterations.
  • the Mixture Sampling Algorithm generates a positive integer termed the stalling limit (S1), and the iterations are allowed to continue in stalling mode (i.e., without ML cost change) up to a maximum of (S1) iterations from the occurrence of stalling. If a lower ML cost is encountered before S1 iterations, the algorithm proceeds with the newly found lower ML cost, otherwise the Mixture Sampling Algorithm terminates. If termination does not happen through stalling limit as above, the Mixture Sampling Algorithm terminates on completing a pre-determined maximum number of iterations.
  • the value of S1 may be chosen based on the quality of the stalled ML cost. A large value for S1 is preferred if the quality of the stalled ML cost is poor, because of the available potential for improvement from a poor stalled solution. On the other hand, if the stalled ML cost quality is already good, then a small value of S1 is preferred.
  • the quality of a stalled solution is determined in terms of closeness of the stalled ML cost to a value obtained using the statistics (mean and variance) of the ML cost for the case when x is detected error-free.
  • the Mixture Sampling Algorithm of the present invention may not be near-optimal (i.e., may not result in a satisfactorily low ML cost) for higher order modulation techniques (e.g., 16-QAM, 32-QAM, 64-QAM, 128-QAM etc.). Another aspect of the present invention addresses this problem as described next.
  • ‘Mixture Sampling Algorithm with restarts’ (which may also be referred to as RMCMC with restarts)
  • the basic Mixture Sampling Algorithm (described above) is run (i.e., performed or executed) multiple times, each time with a different random initial vector.
  • the vector with the least ML cost at the end of the multiple runs is declared as the solution vector.
  • one ‘run’ of the Mixture Sampling Algorithm described above may be stopped after a predetermined number of iterations in a manner similar to that described above. However, after the predetermined number of iterations of the first run, the next initial candidate vector may be chosen randomly from the modulation alphabet, and the iterations are continued thereafter. The second run may be stopped also after a predetermined number of iterations, and subsequent similar runs of the Mixture Sampling Algorithm may be performed. Such restart allows the Mixture Sampling Algorithm to potentially consider a wider set of candidate vectors.
  • the ‘RMCMC with restarts’ (alternatively also referred to as ‘Mixture Sampling Algorithm with Restarts’) provide solution vectors with sufficiently low ML cost even for higher order modulation techniques, without substantially increasing the computational complexity.
  • the multiple runs of the Mixture Sampling Algorithm may be performed one after the other.
  • multiple iterations of the Mixture Sampling Algorithm, each with a corresponding initial vector (chosen randomly) may be performed in parallel.
  • ‘Mixture Sampling Algorithm with Restarts’ may be performed such that a total desired number of iterations and restarts are performed.
  • the total number of iterations is desired to be 300
  • 150 iterations may be performed in a first run according to Mixture Sampling Algorithm starting with one initial vector
  • another 150 iterations may be performed in a second run according to Mixture Sampling Algorithm starting with another initial vector.
  • Another example is when four sets of 75 iterations are performed, each with a corresponding initial vector. After the end of the desired number of iterations and restarts, the candidate vector with the least ML cost is declared as the final solution vector.
  • Mixture Sampling Algorithm alone may be used (i.e., without restarts), or be combined with Mixture Sampling Algorithm with restarts.
  • the Mixture Sampling Algorithm and the Mixture Sampling Algorithm with restarts as described above provide a low-complexity, yet near-optimal (in terms of obtainable ML costs) for detection of transmitted signals in a MIMO receiver.
  • Mixture Sampling Algorithm and the Mixture Sampling Algorithm with restarts can, with appropriate modifications to the ML cost function, be extended to scenarios in which the number of actual (current) transmitters is less than the number of transmitters allowed to operate in the system, such a scenario being termed a sparse multi-user MIMO system.
  • xcap ⁇ 0 is the zero-norm of vector xcap.
  • FIG. 3 is a block diagram illustrating the details of a MIMO receiver, in which detection of a transmitted vector is performed by execution of appropriate software modules.
  • Digital processing system ( 300 ) may be implemented as part of MIMO receiver 130 or as a system external to MIMO receiver 130 , but designed to receive signal inputs enabling it to detect symbols of a transmitted vector.
  • signal processing chains for implementing corresponding operations such as filtering down-conversion, etc
  • path 381 which may be connected to receive signals from multiple antennas, not shown
  • Digital processing system 300 may contain one or more processors such as a central processing unit (CPU) 310 , random access memory (RAM) 320 , secondary memory 330 , graphics controller 360 , display unit 370 , signal interface 380 , and input interface 390 . All the components except display unit 370 may communicate with each other over communication path 350 , which may contain several buses as is well known in the relevant arts.
  • processors such as a central processing unit (CPU) 310 , random access memory (RAM) 320 , secondary memory 330 , graphics controller 360 , display unit 370 , signal interface 380 , and input interface 390 . All the components except display unit 370 may communicate with each other over communication path 350 , which may contain several buses as is well known in the relevant arts.
  • CPU 310 may execute instructions stored in RAM 320 to provide several features of the present invention.
  • CPU 310 may contain multiple processing units, with each processing unit potentially being designed for a specific task. Alternatively, CPU 310 may contain only a single general-purpose processing unit.
  • RAM 320 may receive instructions from secondary memory 330 via communication path 350 .
  • RAM 320 is shown currently containing software instructions constituting operating environment 325 and/or user programs 326 .
  • the operating environment contains utilities shared by user programs, and such shared utilities include operating system, device drivers, virtual machines, etc., which provide a (common) run time environment for execution of user programs/applications.
  • Graphics controller 360 generates display signals (e.g., in RGB format) to display unit 370 based on data/instructions received from CPU 310 .
  • Display unit 370 contains a display screen to display the images defined by the display signals.
  • Input interface 390 may correspond to a keyboard and a pointing device (e.g., touch-pad, mouse), and may be used to provide inputs.
  • Signal interface 380 provides appropriate physical, electrical, and other protocol interfaces to the various signal processing chains (not shown) of MIMO receiver 130 .
  • Secondary memory 330 may contain hard drive 335 , flash memory 336 , and removable storage drive 337 . Secondary memory 330 may store data and software instructions, which enable digital processing system 300 to provide several features in accordance with the description provided above.
  • the blocks/components of secondary memory 330 constitute computer (or machine) readable media, and are means for providing software to digital processing system 300 .
  • CPU 310 may retrieve the software instructions, and execute the instructions to provide various features of the embodiments described above
  • removable storage unit 340 Some or all of the data and instructions may be provided on removable storage unit 340 , and the data and instructions may be read and provided by removable storage drive 337 to CPU 310 .
  • Floppy drive, magnetic tape drive, CD-ROM drive, DVD Drive, Flash memory, removable memory chip (PCMCIA Card, EPROM) are examples of such removable storage drive 337 .
  • Removable storage unit 340 may be implemented using medium and storage format compatible with removable storage drive 337 such that removable storage drive 337 can read the data and instructions.
  • removable storage unit 340 includes a computer readable (storage) medium having stored therein computer software and/or data.
  • the computer (or machine, in general) readable medium can be in other forms (e.g., non-removable, random access, etc.).

Abstract

A method of determining a transmitted vector (x) in a MIMO receiver includes the steps of receiving a received vector (y) representative of the transmitted vector (x), generating a first random number and forming, in a first iteration, a first symbol of a first candidate vector, the candidate vector representing a potential solution vector. The step of forming is based on a first approach if the first random number is greater than a first predetermined value (q), but is based on a second approach if the random number is less than or equal to the first predetermined value (q). The first approach randomly selects the first symbol from a uniform distribution of symbols in the transmission alphabet. The second approach selects the first symbol based on Gibbs sampling. The method represents a randomized Markov Chain Monte Carlo (RMCMC) sampling technique.

Description

    RELATED APPLICATIONS
  • The present application is related to and claims priority from co-pending US Non-provisional patent application entitled, “MULTIPLE INPUT MULTIPLE OUTPUT (MIMO) TRANSMITTED SIGNAL VECTOR ESTIMATION EMPLOYING MONTE CARLO SAMPLING TECHNIQUES”, application Ser. No. 13/472,519, filed on 16 May 2012, and is incorporated in its entirety herewith.
  • BACKGROUND
  • 1. Technical Field
  • Embodiments of the present disclosure relate generally to communication systems, and more specifically to techniques for detection of a transmitted signal (vector) in multiple-input multiple-output (MIMO) communication systems, using Monte Carlo sampling techniques.
  • 2. Related Art
  • Multiple-input multiple-output (MIMO) communication systems (MIMO systems) are well known in relevant arts, and generally refer to systems in which multiple antennas are employed for communication between a transmitting device (MIMO transmitter) and a receiving device (MIMO receiver). The transmitting device may either represent a single device with the multiple antennas, or multiple (separate) devices, each with its own antenna(s). MIMO technology is currently utilized in wireless communication according to standards such as, for example, IEEE 802.11n, 802.11ac, LTE-Advanced, WiMAX, etc. Each of the multiple separate MIMO transmitters may represent a different user. For example, assuming there are Nt different users, each having one transmit antenna, a total of Nt symbols are transmitted simultaneously in each “symbol period”, one symbol from each of the Nt users. One of several modulation techniques may be used to transmit each of the symbols. In addition, suitable MIMO encoding techniques may be employed in the MIMO transmitter to generate the symbols after modulation.
  • A corresponding MIMO receiver with Nr receive antennas (Nr being equal to, or different from (typically larger than) Nt) may receive, on each of the Nr antennas, a superposition of the Nt symbols altered by the wireless channel during propagation from the transmitter(s) to the receiver. Detection (or estimation) refers to determination/estimation, at the MIMO receiver, of the values of each of the Nt transmitted symbols in each symbol period.
  • MIMO systems that employ large number of antennas (for example, to achieve high data transmission rates, throughputs), the process of detection may be associated with correspondingly high computational complexity. Another concern with detection techniques in a MIMO receiver may relate to performance (or reliability). In general, the detection needs to determine (or estimate) the transmitted symbols accurately, preferably close to optimum bit-error rate (BER) performance. In general, a lower BER corresponds to a better performance of the detection techniques, and vice-versa.
  • Markov Chain Monte Carlo (MCMC) sampling techniques have previously been employed in a MIMO receiver for the estimation of the multiple (Nt) transmitted symbols. However, simple MCMC sampling techniques employing Gibbs sampling may be associated with a potential drawback generally termed “stalling” that may occur at high receive signal-to-noise ratio (SNR). Stalling occurs when the iterations of the MCMC technique repeatedly generate the same candidate vector (constructed from the transmitted symbol alphabet) as a next potential solution vector, such that the estimation may ‘stall’, i.e., does not progress further.
  • Several features of the present invention provide a MIMO signal estimation technique employing MCMC techniques that obviates the stalling problem noted above, and provides good performance while being of sufficiently low-complexity for its implementation.
  • SUMMARY
  • A method of determining a transmitted vector (x) in a MIMO receiver comprises the following steps:
      • a) receiving a received vector (y) representative of the transmitted vector (x)
      • b) generating a first random number
      • c) forming, in a first iteration, a first symbol of a first candidate vector, the candidate vector representing a potential solution vector.
      • The step of forming is based on a first approach if the first random number is greater than a first predetermined value (q), but is based on a second approach if the random number is less than or equal to the first predetermined value (q). The first approach randomly selects the first symbol from a uniform distribution of symbols in the transmission alphabet. The second approach selects the first symbol based on Gibbs sampling. The method represents a randomized Markov Chain Monte Carlo (RMCMC) sampling technique. Structures of a MIMO receiver implementing the approaches, and systems using such receivers, are also disclosed.
  • Several embodiments of the present disclosure are described below with reference to examples for illustration. It should be understood that numerous specific details, relationships, and methods are set forth to provide a full understanding of the embodiments. One skilled in the relevant art, however, will readily recognize that the techniques can be practiced without one or more of the specific details, or with other methods, etc.
  • BRIEF DESCRIPTION OF THE VIEWS OF DRAWINGS
  • Example embodiments will be described with reference to the accompanying drawings briefly described below.
  • FIG. 1 is a block diagram illustrating the details of an example environment in which several embodiments can be implemented.
  • FIG. 2A shows an example probability mass function used in selecting a symbol using Gibbs sampling, in an embodiment of the present invention.
  • FIG. 2B shows cumulative distribution function (cdf) corresponding to the probability mass function of FIG. 2A.
  • FIG. 2C shows four bins formed from the cdf of FIG. 2B.
  • FIG. 3 is a block diagram illustrating relevant details of a wireless MIMO receiver, in which detection of a transmitted vector is performed by execution of appropriate execution modules.
  • The drawing in which an element first appears is indicated by the leftmost digit(s) in the corresponding reference number.
  • DETAILED DESCRIPTION
  • Various embodiments are described below with several examples for illustration.
  • 1. Example Environment
  • FIG. 1 is a block diagram illustrating the details of an example environment in which several embodiments can be implemented. MIMO system 100 is shown containing MIMO transmitters 110-1 through 110-Nt, with respective antennas 120-1 through 120-Nt, and MIMO receiver 130 with antennas 140-1 through 140-Nr. Each of MIMO transmitters 110-1 through 110-Nt represents a user terminal such as, for example, a cell phone or a laptop or a personal digital assistant (PDA). MIMO receiver 130 may represent a cellular base station (BS). The system 100 of FIG. 1 is referred to as a multi-user MIMO system on the uplink. However, the specific details of FIG. 1 are meant merely to illustrate, and embodiments of the present disclosure can be deployed in other environments as well. Such other environments may contain more or fewer components than shown in FIG. 1. For example, instead of Nt separate MIMO transmitters (each corresponding to a user), a single device with Nt transmit antennas may also be used.
  • Each of the transmitters 110-1 through 110-Nt transmits on the same frequency, and each of the transmitted signals occupy the same bandwidth. Further, the transmissions from transmitters 110-1 through 110-Nt are synchronized, such that each transmits a symbol in a corresponding symbol period. Any of well-known modulation techniques (e.g., 4-QAM etc.) may be used to transmit signals carrying the data.
  • As indicated by the corresponding arrows in FIG. 1, a signal transmitted from an antenna of MIMO transmitter 110-1 may be received at all antennas 140-1 through 140-Nr of MIMO receiver 130, with corresponding modifications in amplitude and/or phase caused by the wireless medium 150 through which it propagates. Thus, each of antennas 140-1 through 140-Nr receives a corresponding signal, which is a weighted sum of all transmitted signals (i.e., from all antennas 120-1 through 120-Nt.
  • The following equation specifies a signal vector received at MIMO receiver 130:

  • y c =H c x c +n c  Equation 1A
      • wherein,
      • yc represents the received signal vector at MIMO receiver 130, and contains Nr complex entries, each corresponding to a signal received at a corresponding one of the Nr antennas 140-1 through 140-Nr,
      • xc represents the transmitted signal vector containing each of the complex Nt symbols transmitted from the corresponding one of MIMO transmitters 110-1 through 110-Nt,
      • Hc represents the channel transfer matrix of dimension Nr×Nt, with each entry (channel coefficient) representing a channel gain for a corresponding transmit antenna-receive antenna pair,
      • nc is a noise vector, containing Nr entries, with each of the Nr entries representing a corresponding additive noise added to the signal received at the corresponding one of antennas 140-1 through 140-Nr by MIMO receiver 130. Entries of nc may be modeled as variables with Gaussian distribution, with a zero mean and corresponding variances.
  • In Equation 1 above, the channel (representing by matrix Hc) is assumed to be a frequency non-selective (flat fading) channel, and the signal bandwidth of each of the signals transmitted by transmitters 110-1 through 110-Nt is much smaller than the channel coherence bandwidth.
  • However, the techniques of the present invention are also applicable when the channel is frequency selective. As is well-known in the relevant arts, a frequency selective channel does not have a flat response over the signal bandwidth of interest. Instead the gains for each frequency (or frequency portions/bins) in the bandwidth of interest may have different gains. When operating in frequency selective channels, embodiments of the present invention may use multi-carrier modulation (such as Orthogonal Frequency Division Multiplexing or OFDM) in each of transmitters 110-1 through 110Nt.
  • As is well known in the relevant arts, in OFDM, multiple mutually orthogonal sub-carriers are used to carry data. Since the bandwidth required for each sub-carrier being much smaller than the channel coherence bandwidth, with OFDM, a frequency selective channel behaves as a flat channel for each sub-carrier. Matrix Hc in such a case will have multiple entries corresponding to each (transmit antenna—receive antenna) pair. Assuming for example that 64 subcarriers are used in each transmitted signal, there would be an Hc matrix corresponding to each of the sub-carriers, and thus a total of 64 Hc matrices with corresponding gain entries. The techniques of the present invention can be individually applied to each transformation (yc=Hcxc+nc) on each subcarrier.
  • Channel transfer matrix Hc (or in the case of MIMO OFDM, the multiple channel matrices) may be made available to MIMO receiver 110 in a known way. For example, prior to transmission of actual data (information), and/or at periodic intervals during operation of MIMO system 100, transmitters 110-1 through 110-Nt and MIMO receiver 130 may exchange respective signals of pre-determined characteristics, and measure the changes in amplitude and phase of the signals caused by the wireless channel 150, thereby obtain the entries of channel matrix Hc.
  • The process of detection in MIMO receiver 130, therefore, entails determination or estimation of the transmitted signal vector x (i.e., the Nt symbols transmitted in each symbol period) based on a knowledge of channel matrix Hc and the measured values of received signal vector yc (i.e., the signal measured at each of the Nr receive antennas). In addition, statistics of noise vector n may also be used in estimating transmitted signal vector xc.
  • In Equation 1A, the entries in yc, xc, Hc, and nc are complex numbers, with a real part and an ‘imaginary’ part. In embodiments of the present invention, the ‘complex’ system model represented by Equation 1A, is first converted to a ‘real’ system model represented as shown below:

  • y r =H r *x r +n r  Equation 2A
      • wherein
      • yr is the vector containing the real and imaginary parts of yc, stacked one below the other, and is of size (2Nr x1),
      • xr is the vector containing the real and imaginary parts of xc, stacked one below the other, and is of size (2Nt x1),
      • nr is the vector containing the real and imaginary parts of nc, stacked one below the other, and is of size (2Nr x1), and
  • H r = [ R ( H c ) - I ( H c ) I ( H c ) R ( H c ) ] ,
  • wherein R(Hc) and I(Hc) are the real and imaginary parts of matrix Hc. Matrix Hr is of size 2Nt×2Nr.
  • For notational convenience, the subscripts r in Equation 2A are dropped. The system model after dropping the subscripts r in Equation 2A is given by

  • y=H*x+n  Equation 2B
  • Several candidate vectors may be tried as potential solution vectors (seeking to represent the actual transmitted vector), and that candidate vector that minimizes the cost Hx−y2 may be selected as the final solution vector. The approach of the minimization of the cost Hx−y2 over all possible solution vectors is also termed as the maximum likelihood (ML) detection, which is also equivalent to minimizing a function f(x) given by the following equation:

  • f(x)=x T H T Hx−2y T Hx  Equation 2C
      • wherein T represents a matrix transpose operation.
      • f(x) is also termed the ML cost.
  • However, it is noted that Equation 2A is equivalent to Equation 1A, differing merely in representation. In alternative embodiments of the present invention, the ‘complex’ model represented by Equation 1A may be used instead.
  • A prior detection technique employs Markov Chain Monte Carlo (MCMC) techniques to obtain an estimate of the transmitted vector x, and is described next.
  • 2. Conventional MCMC Detection
  • In the prior conventional MCMC technique, an initial symbol vector xt=0 (of size 2Nt×1, and symbols denoted as x1 (0), x2 (0) and so on till x2Nt (0)) is selected randomly as a potential solution vector. Each symbol in the initial symbol vector is chosen from a random distribution of all possible symbol values from the modulation alphabet. Thus for example, assuming the alphabet consists of four symbols, each symbol in the potential solution vector is chosen randomly from a uniform distribution of the four symbols.
  • The cost ∥y−Hx∥2 associated with the initial symbol vector is then computed. A next candidate vector for consideration as a solution vector is obtained by performing Gibbs sampling from a joint distribution P(x1, x2, . . . x2Nt|y, H). Joint distribution P specifies the probability distribution of all possible transmitted vectors given a received vector y and channel matrix H, and is proportional to the value of the expression (exp[−(∥y−Hx∥2)/α2σ2),
      • wherein, ‘exp’ specifies an “e to the power of” operation,
      • σ2 represents the noise variance in receiver 130, and
      • α2 represents a temperature parameter that serves to reduce the higher moments of the number of iterations, and thereby to maximize the probability of arriving at the correct solution quickly when only a finite number of iterations are used.
      • With α2=1, the above expression reduces to (exp[−(∥y−Hx∥2)/α2σ2).
  • Obtaining the next candidate vector involves sequentially determining each symbol in the vector. Thus, since a next candidate vector should have 2Nt co-ordinates, 2Nt selections are required for each iteration i.e., a next-candidate vector determination. In each iteration, 2Nt updates are carried out by sampling from the distribution noted above in a manner as described next.
  • Each iteration, i.e., determination of each next-candidate vector, involves 2Nt sub-steps (referred to conveniently as s1 through s2Nt). In each sub-step of iteration (t+1), the values of all symbols (or co-ordinates) except one are retained with the same values as in the immediately previous iteration (t). Corresponding to each possible value of the remaining symbol (selectable from the modulation alphabet), a corresponding intermediate vector is constructed retaining the previous values (from iteration t) of all the other symbols. Thus, the number of intermediate vectors equals the number of symbols in the modulation alphabet. For example, if the modulation alphabet has four symbols, four intermediate vectors are obtained in each sub-step. The values of the probabilities of each such intermediate vector is computed from the expression (exp[−(Hx−y2)/α2σ2). The selection of the intermediate vectors in each sub-step is clarified further below, in which it is assumed that the modulation alphabet consists of four symbols namely −3, −1, +1 and +3.
  • Denoting ‘t’ as the iteration index and ‘i’ as the co-ordinate index in a candidate vector, the initial symbol vector at iteration ‘t’ is denoted by the vector [x1 (t), x2 (t), . . . x2Nt (t)]T, with x1 (t) being the first symbol of the vector at time t, x2 (t) being the second symbol of the vector at time t, and so on.
  • In sub-step s1 of the next iteration (t+1), four intermediate vectors are constructed retaining the values of all symbols x2 (t) through x2Nt (t) the same as in the initial symbol vector, but each with one of the four possible values for symbol x1 (t) Since the alphabet consists of the symbols −3, −1, +1 and +3, the following four intermediate vectors are constructed in sub-step s1:

  • x inter1 (t+1)=[−3,x 2 (t) , . . . x 2 Nt (t)]T,

  • x inter2 (t+1)=[−1,x 2 (t) , . . . x 2 Nt (t)]T,

  • x inter3 (t+1)=[+1,x 2 (t) , . . . x 2 Nt (t)]T, and

  • x inter4 (t+1)=[+4,x 2 (t) , . . . x 2 Nt (t)]T.
  • The probability values of each of the four intermediate vectors noted above is then computed based on the expression (exp[−∥y−Hx∥2)/α2σ2). These four values are normalized to form a valid probability mass function (pmf). Denote each of the four probability values as p1, p2, p3 and p4. Assuming p1, p2, p3 and p4 are respectively 0.24, 0.22, 0.5 and 0.04, the corresponding probability mass function is shown in FIG. 2A, and the corresponding cumulative distribution function (cdf (210)) is shown in FIG. 2B.
  • From this cdf (210), bins are formed as shown in FIG. 2C, wherein each bin corresponds to a symbol in the alphabet. In the example of FIG. 2C, bin1 from extends from 0 to 0.24 and corresponds to symbol −3, bin2 extends from 0.24 to 0.46 and corresponds to symbol −1, bin3 extends from 0.46 to 0.96 and corresponds to symbol +1, and bin4 extends from 0.96 to 1 and corresponds to symbol +3. A uniform random number between 0 to 1 is then generated, and the value of x1(t+1) is selected to be that symbol that corresponds to the bin that this random number falls in. For example, if the random number obtained has a value of 0.5, x1 (t+1) is set to the symbol corresponding to bin 3, in this case +1. Other symbols of the next candidate vector are determined in a similar fashion, keeping the rest of the other corresponding symbols the same as in the previous iteration. At the end of 2Nt sub-steps a new candidate vector is thus obtained.
  • The ML cost of the new candidate vector may be computed, following which other candidate vectors may be formed and evaluated in a similar fashion. The candidate vector with the least ML cost after a desired number of iterations is then declared as the solution vector.
  • However, the prior (conventional) MCMC technique described above may have a drawback referred to as ‘stalling’, according to which two or more successive candidate vectors may all be the same, and therefore a solution vector with a desired ML cost may not be obtained even after a large number of iterations. A modified MCMC sampling technique according to the present invention overcomes such a problem as described next.
  • 3. Mixture Sampling Algorithm
  • In embodiments of the present invention, the technique of selection of each symbol of a next candidate vector is selectable between the conventional MCMC technique (Gibbs sampling) described in detail above, and a random sampling from a uniform distribution of the symbols of the modulation alphabet. The modified sampling technique is referred to as randomized MCMC (RMCMC) or alternatively as “Mixture Sampling Algorithm”. In an embodiment of the present invention, a probability value q is set equal to ½Nt, wherein Nt is the number of transmitters, and the Gibbs sampling samples the distribution (exp[−(∥y−Hx∥)22), i.e., with the temperature parameter α2 set to 1.
  • The probability of selection of a symbol of the next candidate vector using random sampling is q, while the probability of selection of the symbol using Gibbs sampling is (1-q). A random number between 0 to 1 is then generated. If the value of the random number is less than q, then random sampling is used to select the symbol, but if the value of the random number is greater than or equal to q, then Gibbs sampling is used. By providing an option for such selection of each symbol of a next candidate vector, the stalling problem of the prior conventional MCMC technique is overcome. The technique of selecting a symbol (or co-ordinate) of each candidate vector using either Gibbs sampling or random sampling as described above is termed randomized MCMC (RMCMC) or as Mixture Sampling Algorithm, and provides a low-complexity algorithm with near ML (maximum likelihood) performance. Each candidate vector thus obtained may be evaluated against its ML cost, and the vector with the least ML cost may be declared as a final solution vector representing a transmitted vector.
  • It may be appreciated that the Mixture Sampling Algorithm, in effect, samples one of two probability distributions, the distributions being:
      • exp[−(∥y−Hx∥2)/α2σ2] (with α2 set to the value 1) corresponding to conventional MCMC, and
      • exp[−(∥y−Hx∥2)/α2σ2] (with α2 set to the value infinity), the distribution then reducing to a uniform distribution.
  • It is noted, however, that the two distributions used by the Mixture Sampling Algorithm are not restricted to those noted above. In general, by suitably selecting the value of α2 in each of the two probability distributions, other probability distribution pairs can instead be used to select a symbol of a candidate vector.
  • In an embodiment, the number of iterations of the Mixture Sampling Algorithm before a final solution vector is declared is fixed. However, in other embodiments, other stopping criteria may be used. For example, a dynamic stopping criterion is used in an alternative embodiment that yields good performance without unduly increasing the complexity. The criterion works as described next.
  • A stalling is said to have occurred if the ML cost remains unchanged in two consecutive iterations. Once such a stalling is identified, the Mixture Sampling Algorithm generates a positive integer termed the stalling limit (S1), and the iterations are allowed to continue in stalling mode (i.e., without ML cost change) up to a maximum of (S1) iterations from the occurrence of stalling. If a lower ML cost is encountered before S1 iterations, the algorithm proceeds with the newly found lower ML cost, otherwise the Mixture Sampling Algorithm terminates. If termination does not happen through stalling limit as above, the Mixture Sampling Algorithm terminates on completing a pre-determined maximum number of iterations. The value of S1 may be chosen based on the quality of the stalled ML cost. A large value for S1 is preferred if the quality of the stalled ML cost is poor, because of the available potential for improvement from a poor stalled solution. On the other hand, if the stalled ML cost quality is already good, then a small value of S1 is preferred. The quality of a stalled solution is determined in terms of closeness of the stalled ML cost to a value obtained using the statistics (mean and variance) of the ML cost for the case when x is detected error-free.
  • The Mixture Sampling Algorithm of the present invention may not be near-optimal (i.e., may not result in a satisfactorily low ML cost) for higher order modulation techniques (e.g., 16-QAM, 32-QAM, 64-QAM, 128-QAM etc.). Another aspect of the present invention addresses this problem as described next.
  • 4. Mixture Sampling Algorithm with Restarts
  • In ‘Mixture Sampling Algorithm with restarts’ (which may also be referred to as RMCMC with restarts), the basic Mixture Sampling Algorithm (described above) is run (i.e., performed or executed) multiple times, each time with a different random initial vector. The vector with the least ML cost at the end of the multiple runs is declared as the solution vector.
  • Thus, one ‘run’ of the Mixture Sampling Algorithm described above may be stopped after a predetermined number of iterations in a manner similar to that described above. However, after the predetermined number of iterations of the first run, the next initial candidate vector may be chosen randomly from the modulation alphabet, and the iterations are continued thereafter. The second run may be stopped also after a predetermined number of iterations, and subsequent similar runs of the Mixture Sampling Algorithm may be performed. Such restart allows the Mixture Sampling Algorithm to potentially consider a wider set of candidate vectors. The ‘RMCMC with restarts’ (alternatively also referred to as ‘Mixture Sampling Algorithm with Restarts’) provide solution vectors with sufficiently low ML cost even for higher order modulation techniques, without substantially increasing the computational complexity.
  • The multiple runs of the Mixture Sampling Algorithm may be performed one after the other. Alternatively, multiple iterations of the Mixture Sampling Algorithm, each with a corresponding initial vector (chosen randomly) may be performed in parallel. ‘Mixture Sampling Algorithm with Restarts’ may be performed such that a total desired number of iterations and restarts are performed. As an example, if the total number of iterations is desired to be 300, 150 iterations may be performed in a first run according to Mixture Sampling Algorithm starting with one initial vector, and another 150 iterations may be performed in a second run according to Mixture Sampling Algorithm starting with another initial vector. Another example is when four sets of 75 iterations are performed, each with a corresponding initial vector. After the end of the desired number of iterations and restarts, the candidate vector with the least ML cost is declared as the final solution vector.
  • In general, increasing the number of restarts improves performance, but is associated with higher computational complexity. In embodiments of the present invention, a decision whether to terminate the algorithm or to go for another restart is taken at the end of each restart, and is based on the ML cost of solution vectors, and the number of repetitions of the solution vectors. The Mixture Sampling Algorithm with automatic determination of the number of restarts to be used is summarized in the steps noted below:
      • Step 1: Choose an initial vector.
      • Step 2: Run the Mixture Sampling Algorithm
      • Step 3: Check if Rmax number of restarts are completed, wherein Rmax represents the maximum number to be used for restarts. If (Rmax) number of restarts are completed, control is transferred to Step 5, otherwise control is transferred to Step 4.
      • Step 4: For the solution vector with minimum ML cost obtained so far, find the required number of repetitions needed using the formula P=[max(0, c2 phi(x-tilde)].
      • In the formula for P noted above, phi(x-tilde) is the standardized ML cost of solution vector x-tilde and is specified by the following equation:

  • phi(x-tilde)=[∥y−H(x-tilde)∥2 −Nr2)]/[sqrt(Nr)*σ2]  Equation 3
      • x-tilde is the solution vector with minimum ML cost thus far, sqrt is a square root operator. Check if the number of repetitions of this solution vector so far is less than the required number of repetitions computed in Step 4. If the number of repetitions is less, then control is transferred to Step 1, otherwise control is transferred to Step 5.
      • Step 5: Output the solution vector with the minimum ML cost so far as the final solution.
  • It is noted that Mixture Sampling Algorithm alone may be used (i.e., without restarts), or be combined with Mixture Sampling Algorithm with restarts. The Mixture Sampling Algorithm and the Mixture Sampling Algorithm with restarts as described above provide a low-complexity, yet near-optimal (in terms of obtainable ML costs) for detection of transmitted signals in a MIMO receiver.
  • It is further noted that the Mixture Sampling Algorithm and the Mixture Sampling Algorithm with restarts can, with appropriate modifications to the ML cost function, be extended to scenarios in which the number of actual (current) transmitters is less than the number of transmitters allowed to operate in the system, such a scenario being termed a sparse multi-user MIMO system. The ML cost to be used in the Mixture Sampling Algorithm and the Mixture Sampling Algorithm with restarts techniques is specified by ∥y−Hxcap2+c∥xcap0, wherein c=σ2 log [(1−β)/(β/M)], wherein M is the number of symbols in the modulation alphabet used by the transmitters, β is the probability (also known as the activity factor) of transmission in a particular frame by a transmitter in the sparse multi-user MIMO system[01], xcap is a vector where each of its elements belongs to an augmented signal set which includes zero to the modulation alphabet (this is to account for the users who are in inactive state and hence are not transmitting), and |xcap∥0 is the zero-norm of vector xcap.
  • 5. Digital Processing System
  • FIG. 3 is a block diagram illustrating the details of a MIMO receiver, in which detection of a transmitted vector is performed by execution of appropriate software modules. Digital processing system (300) may be implemented as part of MIMO receiver 130 or as a system external to MIMO receiver 130, but designed to receive signal inputs enabling it to detect symbols of a transmitted vector. For simplicity, signal processing chains for implementing corresponding operations (such as filtering down-conversion, etc) on signals received from antennas 140-1 through 140-M of MIMO receiver 130 are not shown in FIG. 3. It is assumed that such components are present, and provide a baseband signal(s) to system 300 via path 381 (which may be connected to receive signals from multiple antennas, not shown) and signal interface 380.
  • Digital processing system 300 may contain one or more processors such as a central processing unit (CPU) 310, random access memory (RAM) 320, secondary memory 330, graphics controller 360, display unit 370, signal interface 380, and input interface 390. All the components except display unit 370 may communicate with each other over communication path 350, which may contain several buses as is well known in the relevant arts.
  • CPU 310 may execute instructions stored in RAM 320 to provide several features of the present invention. CPU 310 may contain multiple processing units, with each processing unit potentially being designed for a specific task. Alternatively, CPU 310 may contain only a single general-purpose processing unit.
  • RAM 320 may receive instructions from secondary memory 330 via communication path 350. RAM 320 is shown currently containing software instructions constituting operating environment 325 and/or user programs 326. The operating environment contains utilities shared by user programs, and such shared utilities include operating system, device drivers, virtual machines, etc., which provide a (common) run time environment for execution of user programs/applications.
  • Graphics controller 360 generates display signals (e.g., in RGB format) to display unit 370 based on data/instructions received from CPU 310. Display unit 370 contains a display screen to display the images defined by the display signals. Input interface 390 may correspond to a keyboard and a pointing device (e.g., touch-pad, mouse), and may be used to provide inputs.
  • Signal interface 380, as noted above, provides appropriate physical, electrical, and other protocol interfaces to the various signal processing chains (not shown) of MIMO receiver 130.
  • Secondary memory 330 may contain hard drive 335, flash memory 336, and removable storage drive 337. Secondary memory 330 may store data and software instructions, which enable digital processing system 300 to provide several features in accordance with the description provided above. The blocks/components of secondary memory 330 constitute computer (or machine) readable media, and are means for providing software to digital processing system 300. CPU 310 may retrieve the software instructions, and execute the instructions to provide various features of the embodiments described above
  • Some or all of the data and instructions may be provided on removable storage unit 340, and the data and instructions may be read and provided by removable storage drive 337 to CPU 310. Floppy drive, magnetic tape drive, CD-ROM drive, DVD Drive, Flash memory, removable memory chip (PCMCIA Card, EPROM) are examples of such removable storage drive 337.
  • Removable storage unit 340 may be implemented using medium and storage format compatible with removable storage drive 337 such that removable storage drive 337 can read the data and instructions. Thus, removable storage unit 340 includes a computer readable (storage) medium having stored therein computer software and/or data. However, the computer (or machine, in general) readable medium can be in other forms (e.g., non-removable, random access, etc.).
  • While various embodiments of the present disclosure have been described above, it should be understood that they have been presented by way of example only, and not limitation. Thus, the breadth and scope of the present disclosure should not be limited by any of the above-described embodiments, but should be defined only in accordance with the following claims and their equivalents.

Claims (19)

What is claimed is:
1. A method performed in a wireless receiver of a multiple-input multiple-output (MIMO) system, said method comprising:
receiving at said wireless receiver, a received vector (y) upon transmission of a transmitted vector (x) by a plurality of wireless transmitters on a wireless medium, said plurality of transmitters and said wireless receiver together forming said MIMO system,
said transmitted vector transmitted by said plurality of transmitters representing a plurality of symbols belonging to an alphabet according to a modulation technique employed by each of said plurality of wireless transmitters, each symbol of said plurality of symbols being transmitted on said wireless medium by a corresponding wireless transmitter of said plurality of wireless transmitters;
generating a first random number in said wireless receiver;
forming, in said wireless receiver, in a first iteration, a first symbol of a first candidate vector, said candidate vector representing a potential solution vector, wherein said forming is based on a first approach if said first random number is less than a first predetermined value (q), but is based on a second approach if said random number is greater than or equal to said first predetermined value (q),
wherein said first approach randomly selects said first symbol from a uniform distribution of symbols in said alphabet, and
wherein said second approach selects said first symbol based on Gibbs sampling.
2. The method of claim 1, wherein the first predetermined value (q) equals ½Nt, wherein Nt represents the total number of transmitters in said plurality of wireless transmitters.
3. The method of claim 2, wherein selection, by said second approach, of said first symbol based on Gibbs sampling selects said first symbol based on a joint probability distribution of the set of all possible transmitted vectors given said received vector (y) and a channel matrix (H), wherein said channel matrix (H) represents a transformation, caused by said wireless medium, between said received vector (y) and said transmitted vector (x), wherein said first random number has a range of 0 to 1.
4. The method of claim 3, wherein selection, by said second approach, of said first symbol based on Gibbs sampling further comprises:
generating a plurality (M) of intermediate vectors, wherein each of said plurality (M) of intermediate vectors is obtained by retaining all other symbols except a value of said first symbol from a previous iteration, and selecting a current value of said first symbol iteratively from said alphabet;
computing a plurality of (M) probabilities from said joint probability distribution, each of said (M) probabilities representing a probability of a corresponding one of said plurality (M) of intermediate vectors;
forming (M) bins in the range 0 to 1 using the cumulative distribution function (cdf) of said (M) probabilities, wherein each bin corresponding to one of the symbols of said alphabet;
generating a second random number between 0 to 1;
identifying a corresponding one of said (M) bins based on a value of said second random number; and
selecting that symbol from said alphabet as said first symbol which corresponds to a bin identified by said identifying.
5. The method of claim 4, wherein each of the steps of said generating a plurality (M) of intermediate vectors, computing a plurality of (M) probabilities, forming (M) bins in the range 0 to 1, generating a second random number between 0 to 1, and identifying a corresponding one of said (M) bins, is repeated within said first iteration to select each of the remaining symbols in said first candidate vector.
6. The method of claim 5, further comprising performing corresponding iterations to select corresponding candidate vectors as potential solution vectors and evaluating a maximum likelihood (ML) cost of each of said potential solution vectors, till a stop criterion is reached, wherein that solution vector having a least ML cost among all the solution vectors is declared as said transmitted vector (x).
7. The method of claim 6, wherein said first iteration is preceded by a previous iteration, said previous iteration being the initial iteration, wherein said previous iteration selects an initial vector, wherein each symbol of said initial vector is selected randomly from said alphabet.
8. The method of claim 7, wherein performing of said previous iteration, said first iteration and said corresponding iterations represents a first run, wherein said performing is restarted with a new vector in a second run, wherein symbols of said new vector are selected randomly from said alphabet.
9. The method of claim 8, wherein multiple runs of said previous iteration, said first iteration and said corresponding iterations are performed in parallel.
10. The method of claim 9, wherein said modulation technique is one of Quadrature Amplitude Modulation (QAM) and MIMO-OFDM (Orthogonal Frequency Division Multiplexing).
11. The method of claim 1, wherein said wireless receiver is a Base Station (BS) of a cellular system, wherein each of said plurality of wireless transmitters is one of a mobile phone, a laptop, and a personal digital assistant (PDA).
12. A wireless receiver of a Multiple Input Multiple Output (MIMO) system, said wireless receiver comprising:
a signal interface to receive a received vector (y) upon transmission of a transmitted vector (x) by a plurality of wireless transmitters on a wireless medium, said plurality of transmitters and said wireless receiver together forming said MIMO system,
said transmitted vector transmitted by said plurality of transmitters representing a plurality of symbols belonging to an alphabet according to a modulation technique employed by each of said plurality of wireless transmitters, each symbol of said plurality of symbols being transmitted on said wireless medium by a corresponding wireless transmitter of said plurality of wireless transmitters,
wherein a transformation between said received vector (y) and said transmitted vector (x) is represented by a channel matrix (H); and
a processor to receive said received vector (y) from said signal interface, said processor operable to:
generate a first random number;
form, in a first iteration, a first symbol of a first candidate vector, said candidate vector representing a potential solution vector, wherein said processor forms said first symbol based on a first approach if said first random number is less than a first predetermined value (q), but forms said first symbol based on a second approach if said random number is greater than or equal to said first predetermined value (q),
wherein in said first approach, said processor randomly selects said first symbol from a uniform distribution of symbols in said alphabet, and
wherein in said second approach, said processor selects said first symbol based on Gibbs sampling.
13. The wireless MIMO receiver of claim 12, wherein the first predetermined value (q) equals ½Nt, wherein Nt represents the total number of transmitters in said plurality of wireless transmitters, wherein the values of said first random number range from 0 to 1.
14. The wireless MIMO receiver of claim 13, wherein in second approach, said processor selects said first symbol based on a joint probability distribution of the set of all possible transmitted vectors given said received vector (y), and a channel matrix (H), wherein said channel matrix (H) represents a transformation, caused by said wireless medium, between said received vector (y) and said transmitted vector (x).
15. The wireless MIMO receiver of claim 14, wherein in said second approach said processor is further operable to:
generate a plurality (M) of intermediate vectors, wherein each of said plurality (M) of intermediate vectors is obtained by retaining all other symbols except a value of said first symbol from a previous iteration, and selecting a current value of said first symbol iteratively from said alphabet;
compute a plurality of (M) probabilities from said joint probability distribution, each of said (M) probabilities representing a probability of a corresponding one of said plurality (M) of intermediate vectors;
form (M) bins in the range 0 to 1 using the cumulative distribution function (cdf) of said (M) probabilities, wherein each bin corresponding to one of the symbols of said alphabet;
generate a second random number between 0 to 1;
identify a corresponding one of said (M) bins based on a value of said second random number; and
select that symbol from said alphabet as said first symbol which corresponds to an identified bin.
16. The wireless MIMO receiver of claim 15, wherein said processor is operable to repeat each of generating a plurality (M) of intermediate vectors, computing a plurality of (M) probabilities, forming (M) bins in the range 0 to 1, generating a second random number between 0 to 1, and identifying a corresponding one of said (M) bins, within said first iteration to select each of the remaining symbols in said first candidate vector.
17. The wireless MIMO receiver of claim 16, wherein said processor is further operable to perform corresponding iterations to select corresponding candidate vectors as potential solution vectors and evaluating a maximum likelihood (ML) cost of each of said potential solution vectors till a stop criterion is reached, wherein that solution vector having a least cost among all the solution vectors is declared as said transmitted vector (x).
18. The wireless MIMO receiver of claim 17, wherein said wireless MIMO receiver is a Base Station (BS) of a cellular system, wherein each of said plurality of wireless transmitters is one of a mobile phone, a laptop and a personal digital assistant (PDA).
19. A method of determining a transmitted vector (x) representing a plurality of symbols transmitted on a wireless medium by a corresponding plurality of wireless transmitters, said plurality of symbols belonging to an alphabet according to a modulation technique employed by each of said plurality of wireless transmitters, said method being performed in a wireless receiver, wherein said wireless receiver and said plurality of wireless transmitters form a multiple-input multiple-output (MIMO) system, said method comprising:
receiving a received vector (y) representative of said transmitted vector (x);
generating a random number;
forming a first symbol of a first candidate vector, said first candidate vector representing a potential solution vector,
wherein said forming forms said first symbol by sampling a first probability distribution if a value of said random number is greater than a first predetermined value (q), but forms said first symbol by sampling a second probability distribution if said value of said random number is less than or equal to said first predetermined value (q),
wherein each of said first probability distribution and said second probability distribution represents joint probability distributions of all possible transmitted vectors given said received vector y and said channel matrix H, wherein said random number has a range of 0 to 1,
wherein each of said first probability distribution and said second probability distribution is proportional to the expression exp[−(∥y−Hx∥2)/α2σ2),
wherein σ2 represents the noise variance in said wireless receiver, wherein α2 represents a temperature parameter,
wherein said first probability distribution uses a first value for α2 and said second probability distribution uses a second value for α2, said first value being different from said second value, and
wherein said first value is infinity and said second value is one.
US14/159,461 2011-06-03 2014-01-21 Multiple input multiple output (mimo) transmitted signal vector estimation employing monte carlo sampling techniques Abandoned US20140133591A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/159,461 US20140133591A1 (en) 2011-06-03 2014-01-21 Multiple input multiple output (mimo) transmitted signal vector estimation employing monte carlo sampling techniques

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
IN1898/CHE/2011 2011-06-03
IN1898CH2011 2011-06-03
US13/472,519 US8675780B2 (en) 2011-06-03 2012-05-16 Multiple input multiple output (MIMO) transmitted signal vector estimation employing Monte Carlo sampling techniques
US14/159,461 US20140133591A1 (en) 2011-06-03 2014-01-21 Multiple input multiple output (mimo) transmitted signal vector estimation employing monte carlo sampling techniques

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US13/472,519 Continuation US8675780B2 (en) 2011-06-03 2012-05-16 Multiple input multiple output (MIMO) transmitted signal vector estimation employing Monte Carlo sampling techniques

Publications (1)

Publication Number Publication Date
US20140133591A1 true US20140133591A1 (en) 2014-05-15

Family

ID=47261670

Family Applications (2)

Application Number Title Priority Date Filing Date
US13/472,519 Expired - Fee Related US8675780B2 (en) 2011-06-03 2012-05-16 Multiple input multiple output (MIMO) transmitted signal vector estimation employing Monte Carlo sampling techniques
US14/159,461 Abandoned US20140133591A1 (en) 2011-06-03 2014-01-21 Multiple input multiple output (mimo) transmitted signal vector estimation employing monte carlo sampling techniques

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US13/472,519 Expired - Fee Related US8675780B2 (en) 2011-06-03 2012-05-16 Multiple input multiple output (MIMO) transmitted signal vector estimation employing Monte Carlo sampling techniques

Country Status (1)

Country Link
US (2) US8675780B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8675780B2 (en) * 2011-06-03 2014-03-18 Indian Institute Of Science Multiple input multiple output (MIMO) transmitted signal vector estimation employing Monte Carlo sampling techniques
US9647745B2 (en) 2014-10-14 2017-05-09 Regents Of The University Of Minnesota Channel tracking and transmit beamforming with frugal feedback
CN104640168B (en) * 2014-12-04 2018-10-09 北京理工大学 Vehicular ad hoc network method for routing based on Q study
US20190026642A1 (en) * 2015-12-10 2019-01-24 University Of Utah Research Foundation Markov chain monte carlo mimo detector method with gibbs sampler excitation
CN108199756B (en) * 2017-12-29 2020-12-04 清华大学 Selection method of active antenna group of transmitting end in generalized spatial modulation communication system
CN108270702B (en) * 2018-01-19 2020-11-03 中国民航大学 Turbo iteration equalization detection method based on MCMC

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050190868A1 (en) * 2004-03-01 2005-09-01 Aamod Khandekar Iterative channel and interference estimation and decoding
US20080273632A1 (en) * 2004-07-07 2008-11-06 University Of Utah Estimation of Log-Likelihood Using Constrained Markov-Chain Monte Carlo Simulation
US8149810B1 (en) * 2003-02-14 2012-04-03 Marvell International Ltd. Data rate adaptation in multiple-in-multiple-out systems
US8352384B2 (en) * 2008-03-04 2013-01-08 Massachusetts Institute Of Technology Combinational stochastic logic
US8675780B2 (en) * 2011-06-03 2014-03-18 Indian Institute Of Science Multiple input multiple output (MIMO) transmitted signal vector estimation employing Monte Carlo sampling techniques

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6725025B1 (en) * 1999-10-15 2004-04-20 Texas Instruments Incorporated Interference cancellation among wireless units using Gibbs sampling
US7457367B2 (en) * 2004-07-07 2008-11-25 University Of Utah Research Foundation Detector and method for estimating data probability in a multi-channel receiver
TWI492188B (en) * 2008-12-25 2015-07-11 Univ Nat Chiao Tung Method for automatic detection and tracking of multiple targets with multiple cameras and system therefor

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8149810B1 (en) * 2003-02-14 2012-04-03 Marvell International Ltd. Data rate adaptation in multiple-in-multiple-out systems
US20050190868A1 (en) * 2004-03-01 2005-09-01 Aamod Khandekar Iterative channel and interference estimation and decoding
US20080273632A1 (en) * 2004-07-07 2008-11-06 University Of Utah Estimation of Log-Likelihood Using Constrained Markov-Chain Monte Carlo Simulation
US8352384B2 (en) * 2008-03-04 2013-01-08 Massachusetts Institute Of Technology Combinational stochastic logic
US8675780B2 (en) * 2011-06-03 2014-03-18 Indian Institute Of Science Multiple input multiple output (MIMO) transmitted signal vector estimation employing Monte Carlo sampling techniques

Also Published As

Publication number Publication date
US20120307924A1 (en) 2012-12-06
US8675780B2 (en) 2014-03-18

Similar Documents

Publication Publication Date Title
US20140133591A1 (en) Multiple input multiple output (mimo) transmitted signal vector estimation employing monte carlo sampling techniques
WO2008130628A1 (en) Method and apparatus for precoding validation in wireless communications
US11096069B2 (en) Apparatus and method for hybrid multiple access wireless communication system
CN105356921A (en) Reduced complexity beam-steered MIMO OFDM system
US8675720B2 (en) Noise estimation filter
KR20150090421A (en) Method and apparatus for estimate communication channel in mobile communication system
CN102227098B (en) Selection method of bearing point of frequency domain of multi-mode MIMO-SCFDE adaptive transmission system
CN104348763A (en) Channel measuring method for large-scale antennas, and user terminal
CN112398769B (en) Modulation mode detection method and device, electronic equipment and readable storage medium
CN102238114A (en) Method and device for determining valid signal-to-noise ratio
US8634490B2 (en) Techniques for detection of signals in multiple-input multiple-output communication systems
US20190149362A1 (en) Hybrid mimo detection of ofdm signals
CN115812282A (en) Determining signal quality using error vector magnitude
US9209876B2 (en) Adaptive transmit beamforming
CN108270704A (en) The method and apparatus of decision-directed common phase error estimation based on Soft Inform ation
JP2017063447A (en) Signaling to protect advanced receiver performance in wireless local area networks (lans)
US10009076B2 (en) Method and apparatus for obtaining downlink data in a massive MIMO system
CN114640561B (en) Communication signal transmission method and equipment
CN116636155A (en) Transceiver method between receiver (Rx) and transmitter (Tx) in an overloaded communication channel
Hao et al. Channel estimation for nonlinear MIMO receiver with square envelope detection
CN107317609B (en) Wireless transmission efficiency judging device and wireless transmission efficiency judging method
CN102082628B (en) Turbo enhancing method for band sorting of MIMO (multiple input multiple output) wireless communication receiver
CN101662337B (en) Multi-input multi-output signal detection method and device
CN112383330B (en) MU-MIMO signal detection method and device, equipment and storage medium
EP4044538A1 (en) Channel estimation method and apparatus

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION