US20150117559A1 - Low complexity near optimal two spatial stream maximal likelihood detector - Google Patents

Low complexity near optimal two spatial stream maximal likelihood detector Download PDF

Info

Publication number
US20150117559A1
US20150117559A1 US14/224,750 US201414224750A US2015117559A1 US 20150117559 A1 US20150117559 A1 US 20150117559A1 US 201414224750 A US201414224750 A US 201414224750A US 2015117559 A1 US2015117559 A1 US 2015117559A1
Authority
US
United States
Prior art keywords
initial solution
bit
iteration
candidate
qam
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.)
Granted
Application number
US14/224,750
Other versions
US9008241B1 (en
Inventor
Fei Tong
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Priority to US14/224,750 priority Critical patent/US9008241B1/en
Assigned to SAMSUNG ELECTRONICS CO., LTD. reassignment SAMSUNG ELECTRONICS CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: TONG, FEI
Application granted granted Critical
Publication of US9008241B1 publication Critical patent/US9008241B1/en
Publication of US20150117559A1 publication Critical patent/US20150117559A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/02Arrangements for detecting or preventing errors in the information received by diversity reception
    • H04L1/06Arrangements for detecting or preventing errors in the information received by diversity reception using space diversity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • H04L27/38Demodulator circuits; Receiver circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0054Maximum-likelihood or sequential decoding, e.g. Viterbi, Fano, ZJ algorithms

Definitions

  • the present invention relates generally to a low complexity near optimal two spatial stream maximal likelihood detector, and more particularly to a low complexity two spatial stream maximal likelihood detection method with the flexibility to limit processing throughput.
  • a Multiple Input Multiple Output (MIMO) spatial multiplexing configuration significantly increases spectral efficiency: the gain is proportional to the number of spatial streams provided by the MIMO channel (i.e., the rank of the MIMO channel matrix).
  • This technology has been adopted in both the IEEE 802.11n and 802.11ac WLAN standards, which provide high throughput with existing channelization bandwidth.
  • SNR signal-to-noise ratio
  • a linear MIMO receiver requires a higher signal-to-noise ratio (SNR) than non-spatial multiplexing receivers. In real environments, this translates to limited high throughput coverage, i.e. a station can only benefit from the use of spatial multiplexing in limited spots where scattering is rich and SNR is high.
  • a low complexity maximal likelihood detection method for two spatial streams is provided with the flexibility to limit the maximum processing throughput.
  • a low complexity maximal likelihood detection method for two or more spatial streams is provided with reduced complexity without substantially reduced performance.
  • a method for generating a candidate search set for Maximal Likelihood (ML) detection of 2 n -Quadrature Amplitude Modulation (2 n -QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams including: estimating an initial solution y q for a received 2 n -QAM symbol value b 0 b 1 . . .
  • each iteration comprises: determining a search center as: if i th bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution y q ; or if i th bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point y qc to the initial solution y q ; and searching outward from the determined search center for candidate constellation points.
  • a method for generating a candidate search set for Maximal Likelihood (ML) detection of 2 n -Quadrature Amplitude Modulation (2 n -QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams including: estimating an initial solution y q for a received 2 n -QAM symbol value b 0 b 1 . . .
  • candidate search sets in the LUT were generated by: performing an iteration for each hypothetical value of each bit position i of an initial solution y q , wherein each iteration comprises: determining a search center as: if i th bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution y q ; or if i th bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point y qc to the initial solution y q ; and searching outward from the determined search center for candidate constellation points.
  • LUT Look-Up Table
  • a mobile device including: a receiver configured to receive 2 n -Quadrature Amplitude Modulation (2 n -QAM) signals transmitted from two or more Multiple Input Multiple Output (MIMO) spatial streams; one or more processors capable of performing a method for generating a candidate search set for Maximal Likelihood (ML) detection of received 2 n -QAM signals; and at least one non-transitory computer-readable medium storing instructions that, when executed, causes the one or more processors to perform the method for generating a candidate search set for ML detection of received 2 n -QAM signals, the method comprising: estimating an initial solution y q for a received 2 n -QAM symbol value b 0 b 1 .
  • each iteration comprises: determining a search center as: if i th bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution y q ; or if i th bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point y qc to the initial solution y q ; and searching outward from the determined search center for candidate constellation points.
  • a mobile device including: a receiver configured to receive 2 n -Quadrature Amplitude Modulation (2 n -QAM) signals transmitted from two or more Multiple Input Multiple Output (MIMO) spatial streams; one or more processors capable of performing a method for generating a candidate search set for Maximal Likelihood (ML) detection of received 2 n -QAM signals; and at least one non-transitory computer-readable medium storing instructions that, when executed, causes the one or more processors to perform the method for generating a candidate search set for ML detection of received 2 n -QAM signals, the method comprising: estimating an initial solution y q for a received 2 n -QAM symbol value b 0 b 1 .
  • candidate search sets in the LUT were generated by: performing an iteration for each hypothetical value of each bit position i of the initial solution y q , wherein each iteration comprises: determining a search center as: if i th bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution y q ; or if i th bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point y qc to the initial solution y q ; and searching outward from the determined search center for candidate constellation points.
  • LUT Look-Up Table
  • a non-transitory computer-readable medium which stores instructions that, when executed by one or more processors, performs a method for generating a candidate search set for Maximal Likelihood (ML) detection of 2 n -Quadrature Amplitude Modulation (2 n -QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams, the method including: estimating an initial solution y q for a received 2 n -QAM symbol value b 0 b 1 . . .
  • each iteration comprises: determining a search center as: if i th bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution y q ; or if i th bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point y qc to the initial solution y q ; and searching outward from the determined search center for candidate constellation points
  • a non-transitory computer-readable medium which stores instructions that, when executed by one or more processors, performs a method for generating a candidate search set for Maximal Likelihood (ML) detection of 2 n -Quadrature Amplitude Modulation (2 n -QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams, the method including: estimating an initial solution y q for a received 2 n -QAM symbol value b 0 b 1 . . .
  • candidate search sets in the LUT were generated by: performing an iteration for each hypothetical value of each bit position i of an initial solution y q , wherein each iteration comprises: determining a search center as: if i th bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution y q ; or if i th bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point y qc to the initial solution y q ; and searching outward from the determined search center for candidate constellation points.
  • LUT Look-Up Table
  • a method for generating a candidate search set for Maximal Likelihood (ML) detection of 2 n -Quadrature Amplitude Modulation (2 n -QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams by performing an iteration for each hypothetical value of each bit position i of an initial solution y of a received 2 n -QAM symbol value b 0 b 1 . . .
  • each iteration includes: determining a search center as: if i th bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution y q ; or if i th bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point y c to the initial solution y; and searching outward from the determined search center for candidate constellation points.
  • FIG. 1 is a flowchart of a method of candidate selection according to an embodiment of the present invention
  • FIG. 2 is a diagram of a Gray-mapped 64-QAM constellation showing the shift of search center according to an embodiment of the present invention.
  • FIGS. 3A and 3B are graphs comparing the performance of other methods against an embodiment of the present invention.
  • a key feature of this invention is the selection of non-adjacent points, which include both hypotheses for all bit positions; this selective search space will generate a soft value with better accuracy without increasing the search space.
  • the distinct two-dimensional candidates are combined together while calculating log-likelihood ratio (LLR) so that LLRs for both spatial streams have the same candidate set size.
  • LLR log-likelihood ratio
  • the two techniques together produce a set of non-adjacent candidate points in a two dimensional complex space, which differentiates this approach significantly from conventional sphere decoding methods (as discussed further below).
  • FIG. 1 is a flowchart of a method for generating a set of candidate constellation points according to an embodiment of the present invention.
  • 2 n -QAM 2 n -Quadrature Amplitude Modulation
  • step 110 the method starts with an initial estimated solution y q , the closest constellation point (via simple quantization) to the MMSE solution y. From this initial estimate, a candidate set can be generated, as shown in steps 120 - 165 . As shown below, each of steps 120 - 165 are performed for each hypothesis (0 or 1) for each bit position b i .
  • the candidate generation process is done through searching a lattice centered around an initial estimate of the solution.
  • the following assumptions are made concerning the QAM mapping of the constellation points:
  • the search area is a square shape so that iterating through all the discrete points can be achieved by stepping with definite iterations with boundary checking.
  • the method according to one embodiment of the present invention starts with y q , the closest constellation point via quantization to MMSE solution y.
  • the constellation is on integer lattice, the minimum distance between neighboring points is 2 (in magnitude).
  • the search consists of a number of iterations: each iteration is per one bit position and one hypothesis (0/1).
  • the complexity can be further reduced by restricting the search area size in the complementary bit hypothesis, e.g., the search range for the complementary hypothesis can be smaller than K (in one extreme, only one point with the complementary bit hypothesis is included).
  • the search area is conditioned on the hypothesis that the bit position is taken as 0 or 1.
  • the searching center is shifted according to the hypothesis (of 1 or 0).
  • the search center is moved to a “mirror point,” which is the constellation point closest to the MMSE solution which satisfies the hypothesis (of an opposite value for the i th bit).
  • a mirror point is the constellation point closest to the MMSE solution which satisfies the hypothesis (of an opposite value for the i th bit).
  • Finding the point only involves shifting the position on the x or y axis depending on whether the bit is carried in the real or the imaginary part of the QAM symbol.
  • FIG. 2 is a Gray-mapped 64-QAM constellation where each symbol is six bits b 0 b 1 b 2 b 3 b 4 b 5 , comprising three bits transmitted on the real part of the signal (b 0 b 1 b 2 , whose Gray-mapped values are shown on the bottom of FIG. 2 ) and three bits transmitted on the imaginary part of the signal (b 3 b 4 b 5 , whose Gray-mapped values are shown on the right-hand side of FIG. 2 ).
  • the mirror point of any constellation point may be found using the following method, which relies upon the fact that, for any Gray-mapped QAM modulation constellation, each bit position (i th bit) of each constellation point has a signed value L i (y q ), whose absolute value indicates its distance to the nearest point with the opposite bit value and whose sign indicates the bit value.
  • L i (y q ) whose absolute value indicates its distance to the nearest point with the opposite bit value and whose sign indicates the bit value.
  • Equations 1a/b and 2 below (corresponding to equations 24 and 25 in Tosato et al.), n denotes the total number of bits represented by the modulation and D i denotes half of the distance between the partition boundaries relative to the i th bit; as in Gray-mapping, the lower bits are mapped to the real part and the upper bits are mapped to the imaginary part.
  • b i (y q ) this per i th bit value
  • the mirror point is the point with an opposite value in the specified bit position, i.e., the i th bit.
  • the i th bit To find the mirror point, we only need shift in one of the two QAM dimensions (i.e., in either the real or the imaginary dimension, see, e.g., the example of 64-QAM shown in FIG. 2 ).
  • the shift direction is determined as:
  • the shift direction is determined as:
  • Embodiments of the present invention provide a simple and robust method of candidate generation which iterates through the region neighboring both the initial solution point and the complementary hypothesis per bit position.
  • iterating through the neighboring region (around both initial ZF/MMSE solution point and the point with complementary hypothesis per a bit position) efficiently was not a trivial problem, and involved at least the following difficulties:
  • the two techniques combined together in the embodiments of the present invention produce a set of non-adjacent candidate points in a two-dimensional complex space, which differentiates this approach significantly from conventional sphere decoding methods.
  • a conventional sphere decoder searches a sub-set of all the candidate symbols in a neighboring region (defined by a high-dimension sphere with certain radius, also called a search lattice) of the ZF/MMSE solution. If the search lattice is small, the search lattice likely does not include the symbols with both hypotheses (0/1) for every bit position. This will compromise soft value precision.
  • the search is performed not only a neighboring region centered around the initial ZF/MMSE solution, but also in the neighboring region around the complementary hypothesis per bit position (with respect to the ZF/MMSE solution). Therefore, for each hypothesis (0/1), there will be equal number of candidates in the search lattice. This will improve the LLR accuracy while maintain the complexity constant (measured by the number of searches).
  • Table 1 summarizes the complexity, in terms of candidate set size, of variants of MLD.
  • “Full ML” refers to MLD without any complexity reduction
  • “Fast ML” refers to the method described in Ghaffar R. and Knopp R., “Low Complexity Metrics for BICM SISO and MIMO systems,” Vehicular Technology Conference ( VTC 2010- Spring ) May 2010 IEEE 71 st , which is hereby incorporated by reference in its entirety
  • Extended List refers to the method described in Barbero L. G., Ratnarajah T. and Cowan C.
  • embodiments of the present invention have a reduced processing complexity in comparison with other techniques for reducing ML detector complexity and, more importantly, scales more easily upward, i.e., the increase in complexity of Proposed ML as the modulation order increases is slow compared to the other methods.
  • FIGS. 3A and 3B show the performance comparison between the four methods.
  • the candidate sets per such possible MMSE solution can be pre-generated and stored in a table, which requires more memory but avoids processing latency.
  • Mobile device refers to any portable electronic device having the capability of receiving of 2 n -Quadrature Amplitude Modulation (2 n -QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams, including, but not limited to, multimedia players, communication devices, computing devices, navigating devices, etc.
  • 2 n -QAM Quadrature Amplitude Modulation
  • MIMO Multiple Input Multiple Output
  • mobile devices include (but are not limited to) laptops, tablet computers, Portable Digital Assistants (PDAs), mp3 players, handheld PCs, Instant Messaging Devices (IMD), cellular telephones, Global Navigational Satellite System (GNSS) receivers, watches, or any such device which can be worn and/or carried on one's person.
  • PDAs Portable Digital Assistants
  • IMD Instant Messaging Devices
  • GNSS Global Navigational Satellite System
  • steps and/or operations may be implemented or otherwise performed, at least in part, using one or more processors running instruction(s), program(s), interactive data structure(s), client and/or server components, where such instruction(s), program(s), interactive data structure(s), client and/or server components are stored in one or more non-transitory computer-readable media.
  • the one or more non-transitory computer-readable media may be instantiated in software, firmware, hardware, and/or any combination thereof.
  • the one or more non-transitory computer-readable media and/or means for implementing/performing one or more operations/steps of an embodiment of the present invention may include, without limitation, application-specific integrated circuits (“ASICs”), standard integrated circuits, controllers executing appropriate instructions, and including microcontrollers and/or embedded controllers, field-programmable gate arrays (“FPGAs”), complex programmable logic devices (“CPLDs”), and the like.
  • ASICs application-specific integrated circuits
  • FPGAs field-programmable gate arrays
  • CPLDs complex programmable logic devices
  • any system components and/or data structures may also be stored as contents (e.g., as executable or other non-transitory machine-readable software instructions or structured data) on a non-transitory computer-readable medium (e.g., as a hard disk; a memory; a computer network or cellular wireless network or other data transmission medium; or a portable media article to be read by an appropriate drive or via an appropriate connection, such as a DVD or flash memory device) so as to enable or configure the computer-readable medium and/or one or more associated computing systems or devices to execute or otherwise use or provide the contents to perform at least some of the described techniques.
  • a non-transitory computer-readable medium e.g., as a hard disk; a memory; a computer network or cellular wireless network or other data transmission medium; or a portable media article to be read by an appropriate drive or via an appropriate connection, such as a DVD or flash memory device
  • any system components and data structures may also be stored as data signals (e.g., by being encoded as part of a carrier wave or included as part of an analog or digital propagated signal) on a variety of non-transitory computer-readable transmission mediums, from which they are read and then transmitted, including across wireless-based and wired/cable-based mediums, and may take a variety of forms (e.g., as part of a single or multiplexed analog signal, or as multiple discrete digital packets or frames).
  • Such computer program products may also take other forms in other embodiments. Accordingly, embodiments of this disclosure may be practiced any computer system configuration.
  • non-transitory computer-readable medium refers to any medium that comprises the actual performance of an operation (such as hardware circuits), that comprises programs and/or higher-level instructions to be provided to one or more processors for performance/implementation (such as instructions stored in a non-transitory memory), and/or that comprises machine-level instructions stored in, e.g., firmware or non-volatile memory.
  • Non-transitory computer-readable media may take many forms, such as non-volatile and volatile media, including but not limited to, a floppy disk, flexible disk, hard disk, RAM, PROM, EPROM, FLASH-EPROM, EEPROM, any memory chip or cartridge, any magnetic tape, or any other magnetic medium from which a computer instruction can be read; a CD-ROM, DVD, or any other optical medium from which a computer instruction can be read; punch cards, paper tape, any other physical medium with one or more patterns of holes, or any other non-transitory medium from which a computer instruction can be read.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)

Abstract

Methods, apparatuses, and systems are provided for generating a candidate search set for ML detection of 2n-QAM signals transmitted on two or more MIMO spatial streams. A method includes estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; and performing an iteration for each hypothetical value of each bit position i of the initial solution yq, wherein each iteration comprises: determining a search center as: if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and searching outward from the determined search center for candidate constellation points.

Description

    PRIORITY
  • The present application claims priority under 35 U.S.C. §119(e) to U.S. Provisional Application No. 61/895,741, entitled “Low Complexity Near Optimal Two Spatial Stream Maximal Likelihood Detector,” which was filed on Oct. 25, 2013, the contents of which are incorporated herein by reference.
  • BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The present invention relates generally to a low complexity near optimal two spatial stream maximal likelihood detector, and more particularly to a low complexity two spatial stream maximal likelihood detection method with the flexibility to limit processing throughput.
  • 2. Description of the Related Art
  • A Multiple Input Multiple Output (MIMO) spatial multiplexing configuration significantly increases spectral efficiency: the gain is proportional to the number of spatial streams provided by the MIMO channel (i.e., the rank of the MIMO channel matrix). This technology has been adopted in both the IEEE 802.11n and 802.11ac WLAN standards, which provide high throughput with existing channelization bandwidth. However, to achieve this spectral efficiency gain, a linear MIMO receiver requires a higher signal-to-noise ratio (SNR) than non-spatial multiplexing receivers. In real environments, this translates to limited high throughput coverage, i.e. a station can only benefit from the use of spatial multiplexing in limited spots where scattering is rich and SNR is high.
  • Compared to linear detection, maximal likelihood (ML) detection can reduce the SNR requirement for MIMO detection. However, ML algorithm requires finding the nearest lattice coordinates, which is a NP problem with a complexity in the order of O(ML), where M is the size of the QAM set and L is the number of spatial streams, assuming equal modulation orders over all spatial streams. In the IEEE 802.11ac amendment, a new modulation order (256-QAM) is added, which dramatically increases the computation complexity for a ML detector. This change in the specification makes this detection method unduly difficult for real time implementation even for low rank (e.g., two spatial stream) spatial multiplexing.
  • Although the attempts to reduce ML detector complexity show that the ML detector complexity can be reduced to O(ML-1) without a loss of performance, this still results in very high complexity especially considering soft value output MLD is generally used in high order modulation. Similarly, sphere decoder methods have been shown to reduce the complexity by restricting the search in a sphere space centered at the initial Minimum Mean Error Square (MMSE) detection result, but, due to its depth first searching order, the number of candidates searched is variable. Breadth-first search algorithms, such as K-best, have a fixed number of candidates and hence a fixed computation throughput. Similarly to breadth-first algorithms, List detectors store visited candidate vectors in a list and a soft value can be derived from searching this list. In both sphere and List algorithms, the candidate sets are defined in the pre-transferred space. This does not guarantee that the complementary hypothesis for each bit position is included in the candidate set, which causes performance loss for both algorithms especially when the channel matrix is noticeably skewed.
  • Thus, there is a need for systems, devices, and methods for reducing ML detector complexity with an insignificant loss of performance.
  • SUMMARY OF THE INVENTION
  • Accordingly, the present invention is designed to address at least the problems and/or disadvantages described above and to provide at least the advantages described below. In one aspect of the invention, a low complexity maximal likelihood detection method for two spatial streams is provided with the flexibility to limit the maximum processing throughput. In another aspect of the invention, a low complexity maximal likelihood detection method for two or more spatial streams is provided with reduced complexity without substantially reduced performance.
  • According to one aspect of the present invention, a method for generating a candidate search set for Maximal Likelihood (ML) detection of 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams is provided, including: estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; and performing an iteration for each hypothetical value of each bit position i of the initial solution yq, wherein each iteration comprises: determining a search center as: if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and searching outward from the determined search center for candidate constellation points.
  • According to another aspect of the present invention, a method for generating a candidate search set for Maximal Likelihood (ML) detection of 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams is provided, including: estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; and looking up a candidate search set corresponding to the initial solution yq in a Look-Up Table (LUT), wherein candidate search sets in the LUT were generated by: performing an iteration for each hypothetical value of each bit position i of an initial solution yq, wherein each iteration comprises: determining a search center as: if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and searching outward from the determined search center for candidate constellation points.
  • According to yet another aspect of the present invention, a mobile device is provided, including: a receiver configured to receive 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted from two or more Multiple Input Multiple Output (MIMO) spatial streams; one or more processors capable of performing a method for generating a candidate search set for Maximal Likelihood (ML) detection of received 2n-QAM signals; and at least one non-transitory computer-readable medium storing instructions that, when executed, causes the one or more processors to perform the method for generating a candidate search set for ML detection of received 2n-QAM signals, the method comprising: estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; and performing an iteration for each hypothetical value of each bit position i of the initial solution yq, wherein each iteration comprises: determining a search center as: if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and searching outward from the determined search center for candidate constellation points.
  • According to still yet another aspect of the present invention, a mobile device is provided, including: a receiver configured to receive 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted from two or more Multiple Input Multiple Output (MIMO) spatial streams; one or more processors capable of performing a method for generating a candidate search set for Maximal Likelihood (ML) detection of received 2n-QAM signals; and at least one non-transitory computer-readable medium storing instructions that, when executed, causes the one or more processors to perform the method for generating a candidate search set for ML detection of received 2n-QAM signals, the method comprising: estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; and looking up a candidate search set corresponding to the initial solution yq in a Look-Up Table (LUT), wherein candidate search sets in the LUT were generated by: performing an iteration for each hypothetical value of each bit position i of the initial solution yq, wherein each iteration comprises: determining a search center as: if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and searching outward from the determined search center for candidate constellation points.
  • According to a still further aspect of the present invention, a non-transitory computer-readable medium is provided which stores instructions that, when executed by one or more processors, performs a method for generating a candidate search set for Maximal Likelihood (ML) detection of 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams, the method including: estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; performing an iteration for each hypothetical value of each bit position i of the initial solution yq, wherein each iteration comprises: determining a search center as: if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and searching outward from the determined search center for candidate constellation points
  • According to yet still further aspect of the present invention, a non-transitory computer-readable medium is provided which stores instructions that, when executed by one or more processors, performs a method for generating a candidate search set for Maximal Likelihood (ML) detection of 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams, the method including: estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; and looking up a candidate search set corresponding to the initial solution yq in a Look-Up Table (LUT), wherein candidate search sets in the LUT were generated by: performing an iteration for each hypothetical value of each bit position i of an initial solution yq, wherein each iteration comprises: determining a search center as: if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and searching outward from the determined search center for candidate constellation points.
  • According to yet still another aspect of the present invention, a method is provided for generating a candidate search set for Maximal Likelihood (ML) detection of 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams by performing an iteration for each hypothetical value of each bit position i of an initial solution y of a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points, wherein each iteration includes: determining a search center as: if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yc to the initial solution y; and searching outward from the determined search center for candidate constellation points.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The above and other aspects, features, and advantages of embodiments of the present invention will be more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which:
  • FIG. 1 is a flowchart of a method of candidate selection according to an embodiment of the present invention;
  • FIG. 2 is a diagram of a Gray-mapped 64-QAM constellation showing the shift of search center according to an embodiment of the present invention; and
  • FIGS. 3A and 3B are graphs comparing the performance of other methods against an embodiment of the present invention.
  • DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION
  • Various embodiments of the present invention will now be described in detail with reference to the accompanying drawings. In the following description, specific details such as detailed configuration and components are merely provided to assist the overall understanding of these embodiments of the present invention. Therefore, it should be apparent to those skilled in the art that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present invention. In addition, descriptions of well-known functions and constructions are omitted for clarity and conciseness.
  • A key feature of this invention is the selection of non-adjacent points, which include both hypotheses for all bit positions; this selective search space will generate a soft value with better accuracy without increasing the search space.
  • Two techniques are used to achieve this selective search space.
  • First, unlike conventional sphere decoding, in which the search space per each spatial stream is limited around the initial MMSE solution, in this approach, multiple non-adjacent clusters of points are included in the search, one centered around the initial MMSE solution and the other ones centered around the complementary point of the MMSE solution per bit position. Using the geometric relationships of a gray mapped constellation, the complementary point can be found easily by only shifting in either the real or the imaginary dimension (i.e., either the x- or y-axis). Once the candidate set for one spatial stream is determined, only one point with the most likelihood on the other spatial stream is chosen as the hypothesis.
  • Second, the distinct two-dimensional candidates are combined together while calculating log-likelihood ratio (LLR) so that LLRs for both spatial streams have the same candidate set size.
  • The two techniques together produce a set of non-adjacent candidate points in a two dimensional complex space, which differentiates this approach significantly from conventional sphere decoding methods (as discussed further below).
  • FIG. 1 is a flowchart of a method for generating a set of candidate constellation points according to an embodiment of the present invention. The set of candidate constellation points is generated by performing searching and selection over a number of iterations, where each iteration considers one hypothesis per bit position bi in yestimated=b0b1 . . . bn-1, where yestimated is the estimated value of the symbol received as a 2n-Quadrature Amplitude Modulation (2n-QAM) signal in one spatial stream among two or more Multiple Input Multiple Output (MIMO) spatial streams.
  • In step 110, the method starts with an initial estimated solution yq, the closest constellation point (via simple quantization) to the MMSE solution y. From this initial estimate, a candidate set can be generated, as shown in steps 120-165. As shown below, each of steps 120-165 are performed for each hypothesis (0 or 1) for each bit position bi.
  • In step 120, it is determined whether the instant bit at position i in yq equals the present hypothetical value (i.e., bi=hypothetical value?). If so, the search center going forward is the constellation point yq in step 130. If not, the search center is mirror constellation point yqc in step 140 (methods to find mirror point yqc are discussed below). After either of steps 130 and 140, a search is performed from the determined search center. Specifically, the search proceeds outward by steps, where constellation points whose bi=hypothetical value are selected as points in the candidate set, and the searching ends when either of (i) the number of search steps reaches a preset limit K, or (ii) the present search step is outside the known constellation boundary.
  • Once the search in step 150 is over, it is determined whether searches have been performed under both hypotheses for each bit position bi in yq in step 155. If so, the method is over (at least for generating the candidate set for the symbol received on this spatial stream). If not, it is determined whether both hypotheses (0 and 1) have been searched for the instant bit position bi in step 161. If so, the method moves on to the next bit position in step 165 (i=i++). If not, the method switches to the other hypothesis in step 163 so it can be searched. After either of steps 163 and 165, the method loops back and repeats.
  • As shown above, in the low complexity method to generate search candidates according to embodiments of the present invention, the candidate generation process is done through searching a lattice centered around an initial estimate of the solution. The following assumptions are made concerning the QAM mapping of the constellation points:
      • The constellation is square shaped and the spacing along each of the x/y axes is 1 (for scaled constellation points, not magnitude).
      • The constellation boundary is known for a given modulation order
      • Gray mapping is used to map the bit sequences to the constellation
  • To avoid the calculation of distance (to check if a constellation symbol falls inside the search boundary, which is necessary for a circle shaped boundary), the search area is a square shape so that iterating through all the discrete points can be achieved by stepping with definite iterations with boundary checking.
  • As discussed above, the method according to one embodiment of the present invention starts with yq, the closest constellation point via quantization to MMSE solution y. The constellation is on integer lattice, the minimum distance between neighboring points is 2 (in magnitude). The search consists of a number of iterations: each iteration is per one bit position and one hypothesis (0/1).
  • One iteration comprises (the example below assumes the ith bit position with the hypothesis of 1):
      • Determine the search center by:
        • If ith bit of constellation point yq equals 1, the search center is yq
        • If ith bit of constellation point yq equals 0, the search center is the mirror point yqc of yq, which is the constellation point closest to yq whose ith bit equals 1 (a method to find yqc is described below)
      • Search from the determined search center in four directions (left and right, up and down) with steps of 2 (in magnitude). In each step, only constellation points with the ith bit equal to 1 are kept in the candidate set.
      • The search stops when either of the following conditions are satisfied:
        • The number of steps is equal to or greater than K (=search range/limit)
        • The search is outside the constellation (i.e., the next step is to a point outside the known constellation boundary)
  • The complexity can be further reduced by restricting the search area size in the complementary bit hypothesis, e.g., the search range for the complementary hypothesis can be smaller than K (in one extreme, only one point with the complementary bit hypothesis is included).
  • An important feature of this invention is that the search area is conditioned on the hypothesis that the bit position is taken as 0 or 1. To achieve this, the searching center is shifted according to the hypothesis (of 1 or 0). When the search is taken for the hypothesis that the ith bit has the value opposite to the initial MMSE solution, the search center is moved to a “mirror point,” which is the constellation point closest to the MMSE solution which satisfies the hypothesis (of an opposite value for the ith bit). Using the geometric relationships of a gray mapped constellation, such a mirror point can be found easily. Finding the point only involves shifting the position on the x or y axis depending on whether the bit is carried in the real or the imaginary part of the QAM symbol.
  • An example of shifting the search center is illustrated in FIG. 2. FIG. 2 is a Gray-mapped 64-QAM constellation where each symbol is six bits b0b1b2b3b4b5, comprising three bits transmitted on the real part of the signal (b0b1b2, whose Gray-mapped values are shown on the bottom of FIG. 2) and three bits transmitted on the imaginary part of the signal (b3b4b5, whose Gray-mapped values are shown on the right-hand side of FIG. 2). Thus, circle 210 in FIG. 2 indicates the constellation point, i.e., the symbol, corresponding to b0b1b2b3b4b5=010110 (where b0b1b2=real part=010; b3b4b5=imaginary part=110).
  • Assuming the constellation point indicated by circle 210 is the MMSE solution yq, let us also assume the iteration we are performing concerns the 3rd bit in the real part of the corresponding number (since i starts at 0, the 3rd bit is designated bit b2, because i=2) and the hypothesis is b2=0. For this hypothesis, the constellation point indicated by circle 210 is the appropriate search center, because b2 in 010 is indeed 0. Thus, the search would begin from this search point. On the other hand, for the hypothesis b2=1, we need to use, as the search center, the mirror point corresponding to the constellation point indicated by circle 210. The mirror point yqc is indicated by the circle 220, which has its 3rd bit equals to 1 (b2=1 in 011) and is the closest constellation point to the MMSE solution yq among all of the constellation points whose 3rd bit equals 1 (b2=1), which are denoted as square symbols in FIG. 2. All of the points whose 3rd bit equals 0 (b2=0) are denoted as star symbols in the constellation of FIG. 2.
  • More generally, the mirror point of any constellation point may be found using the following method, which relies upon the fact that, for any Gray-mapped QAM modulation constellation, each bit position (ith bit) of each constellation point has a signed value Li (yq), whose absolute value indicates its distance to the nearest point with the opposite bit value and whose sign indicates the bit value. The calculation of this can be found in Filippo Tosato et al., “Simplified Soft-Output Demapper for Binary Interleaved COFDM with Application to HIPERLAN/2,” Image Systems Laboratory/HP Labs Bristol, Paper No. HPL-2001-246 (Oct. 16, 2001), the entire contents of which are incorporated herein by reference. In Equations 1a/b and 2 below (corresponding to equations 24 and 25 in Tosato et al.), n denotes the total number of bits represented by the modulation and Di denotes half of the distance between the partition boundaries relative to the ith bit; as in Gray-mapping, the lower bits are mapped to the real part and the upper bits are mapped to the imaginary part.
  • L i ( y q ) = { real ( y q ) , i = 0 - L i - 1 ( y q ) + D i , 0 < i < n 2 ( 1 a ) L i ( y q ) = { imag ( y q ) , i = n 2 - L i - 1 ( y q ) + D i , n 2 < i < n ( 1 b ) D i = { 16 , mod ( i , n 2 ) = 1 8 , mod ( i , n 2 ) = 2 4 , mod ( i , n 2 ) = 3 2 , mod ( i , n 2 ) = 4 ( 2 )
  • For instance, the L2 (yq) of constellation point 210 as yq would have a sign value indicating the 3rd bit position has a value of 0 (b2=0), and an absolute value indicating the distance to the closest complementary hypothesis is 1 (i.e., it is only one hop to a point where b2=1, viz., point 220=011). We therefore denote this per ith bit value as bi(yq), which can be derived from the following equation:
  • b i ( y q ) = { 0 , L i ( y q ) < 0 1 , L i ( y q ) > 0 ( 3 )
  • For a given constellation point, the mirror point is the point with an opposite value in the specified bit position, i.e., the ith bit. To find the mirror point, we only need shift in one of the two QAM dimensions (i.e., in either the real or the imaginary dimension, see, e.g., the example of 64-QAM shown in FIG. 2).
  • In the 64-QAM example of FIG. 2, for bit positions i=0, 1, 2, which lie on the x-axis, i.e., the real axis, the shift direction is determined as:

  • S i(y q)=Πk=1 i b k(y q)  (4)
  • The real part of the mirror point yqc can be expressed as real(yqc)=real(yq)+Si(yq)·Li (yq), and the imaginary part will remain the same, i.e., imag(yqc)=imag(yq).
  • For bit positions i=3, 4, 5, which lie on the y-axis, i.e., the imaginary axis, the shift direction is determined as:

  • S i(y q)=Πk=3 i b k(y q)  (5)
  • The real part of the mirror point yqc will remain the same, i.e., real(yqc)=real(yq), and the imaginary part can be expressed as imag(yqc)=imag(yq)+Si(yq)·Li(yq).
  • For 256-QAM (having 8-bit symbols b0b1b2b3b4b5b6b7), the equations would be the same, except that bit positions i=0, 1, 2, 3 would lie on the x-axis/real axis, and bit positions i=4, 5, 6, 7 would lie on the y-axis/imaginary axis.
  • Embodiments of the present invention provide a simple and robust method of candidate generation which iterates through the region neighboring both the initial solution point and the complementary hypothesis per bit position. Prior to the present invention, iterating through the neighboring region (around both initial ZF/MMSE solution point and the point with complementary hypothesis per a bit position) efficiently was not a trivial problem, and involved at least the following difficulties:
      • (1) finding out the M closest points or all the points within a certain range among the whole symbol set requires brutal search and calculation of the distance, which is computationally costly
      • (2) symbols in the subset (of the constellation) conditioned on ith bit equals to 0/1 are not adjacent to each other, thus searching within a fixed radius could lead to empty set, which will compromise the maximal likelihood detection performance.
  • In addition to providing an efficient method to iterate through constellation candidates by shifting the search centre depending on the hypothesis of a bit position, the two techniques combined together in the embodiments of the present invention produce a set of non-adjacent candidate points in a two-dimensional complex space, which differentiates this approach significantly from conventional sphere decoding methods. A conventional sphere decoder searches a sub-set of all the candidate symbols in a neighboring region (defined by a high-dimension sphere with certain radius, also called a search lattice) of the ZF/MMSE solution. If the search lattice is small, the search lattice likely does not include the symbols with both hypotheses (0/1) for every bit position. This will compromise soft value precision.
  • By contrast, in this invention, the search is performed not only a neighboring region centered around the initial ZF/MMSE solution, but also in the neighboring region around the complementary hypothesis per bit position (with respect to the ZF/MMSE solution). Therefore, for each hypothesis (0/1), there will be equal number of candidates in the search lattice. This will improve the LLR accuracy while maintain the complexity constant (measured by the number of searches).
  • Simulation results in comparison with other suggested methods show that a key advantage of embodiments of the present invention is the low complexity with near optimal performance. Table 1 below summarizes the complexity, in terms of candidate set size, of variants of MLD. In Table 1, “Full ML” refers to MLD without any complexity reduction; “Fast ML” refers to the method described in Ghaffar R. and Knopp R., “Low Complexity Metrics for BICM SISO and MIMO systems,” Vehicular Technology Conference (VTC 2010-Spring) May 2010 IEEE 71st, which is hereby incorporated by reference in its entirety; “Extended List” refers to the method described in Barbero L. G., Ratnarajah T. and Cowan C. “A low-complexity soft-MIMO detector based on the fixed-complexity sphere decoder,” in Proc. IEEE ICASSP '08, March 2005, pp. 2669-2672, which is hereby incorporated by reference in its entirety; and “Proposed ML” refers to an embodiment of the present invention where K=1 for both hypotheses.
  • TABLE 1
    Complexity comparison of various MLD algorithms.
    16-QAM 64-QAM 256-QAM
    Full ML 256 4096 65536
    Fast ML [1] 32 128 512
    Ex. List [4] 20 70 264
    Proposed ML 32 54 78
  • As shown in Table 1, embodiments of the present invention have a reduced processing complexity in comparison with other techniques for reducing ML detector complexity and, more importantly, scales more easily upward, i.e., the increase in complexity of Proposed ML as the modulation order increases is slow compared to the other methods.
  • With more than halved complexity (compared to Fast ML on 64-QAM and 256-QAM case), the performance loss of embodiments of the present invention is negligible. The plots in FIGS. 3A and 3B show the performance comparison between the four methods.
  • As would be understood by one of ordinary skill in the art, there are various ways of implementing the present invention, such as, for example, using a pre-computed table storing the candidate sets of disjointed neighbors. In this alternative method, the candidate sets per such possible MMSE solution can be pre-generated and stored in a table, which requires more memory but avoids processing latency.
  • Depending on the embodiment of the present invention, some or all of the steps and/or operations may be implemented or otherwise performed, at least in part, on a mobile device. “Mobile device” as used herein refers to any portable electronic device having the capability of receiving of 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams, including, but not limited to, multimedia players, communication devices, computing devices, navigating devices, etc. Thus, mobile devices include (but are not limited to) laptops, tablet computers, Portable Digital Assistants (PDAs), mp3 players, handheld PCs, Instant Messaging Devices (IMD), cellular telephones, Global Navigational Satellite System (GNSS) receivers, watches, or any such device which can be worn and/or carried on one's person.
  • Depending on the embodiment of the present invention, some or all of the steps and/or operations may be implemented or otherwise performed, at least in part, using one or more processors running instruction(s), program(s), interactive data structure(s), client and/or server components, where such instruction(s), program(s), interactive data structure(s), client and/or server components are stored in one or more non-transitory computer-readable media. The one or more non-transitory computer-readable media may be instantiated in software, firmware, hardware, and/or any combination thereof.
  • The one or more non-transitory computer-readable media and/or means for implementing/performing one or more operations/steps of an embodiment of the present invention may include, without limitation, application-specific integrated circuits (“ASICs”), standard integrated circuits, controllers executing appropriate instructions, and including microcontrollers and/or embedded controllers, field-programmable gate arrays (“FPGAs”), complex programmable logic devices (“CPLDs”), and the like. Some or all of any system components and/or data structures may also be stored as contents (e.g., as executable or other non-transitory machine-readable software instructions or structured data) on a non-transitory computer-readable medium (e.g., as a hard disk; a memory; a computer network or cellular wireless network or other data transmission medium; or a portable media article to be read by an appropriate drive or via an appropriate connection, such as a DVD or flash memory device) so as to enable or configure the computer-readable medium and/or one or more associated computing systems or devices to execute or otherwise use or provide the contents to perform at least some of the described techniques. Some or all of any system components and data structures may also be stored as data signals (e.g., by being encoded as part of a carrier wave or included as part of an analog or digital propagated signal) on a variety of non-transitory computer-readable transmission mediums, from which they are read and then transmitted, including across wireless-based and wired/cable-based mediums, and may take a variety of forms (e.g., as part of a single or multiplexed analog signal, or as multiple discrete digital packets or frames). Such computer program products may also take other forms in other embodiments. Accordingly, embodiments of this disclosure may be practiced any computer system configuration.
  • Thus, the term “non-transitory computer-readable medium” as used herein refers to any medium that comprises the actual performance of an operation (such as hardware circuits), that comprises programs and/or higher-level instructions to be provided to one or more processors for performance/implementation (such as instructions stored in a non-transitory memory), and/or that comprises machine-level instructions stored in, e.g., firmware or non-volatile memory. Non-transitory computer-readable media may take many forms, such as non-volatile and volatile media, including but not limited to, a floppy disk, flexible disk, hard disk, RAM, PROM, EPROM, FLASH-EPROM, EEPROM, any memory chip or cartridge, any magnetic tape, or any other magnetic medium from which a computer instruction can be read; a CD-ROM, DVD, or any other optical medium from which a computer instruction can be read; punch cards, paper tape, any other physical medium with one or more patterns of holes, or any other non-transitory medium from which a computer instruction can be read.
  • While several embodiments of the present invention have been shown and described herein, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention—i.e., the invention is not limited to any embodiments described herein, but is defined by the appended claims and their equivalents.

Claims (28)

1. A method performed by a receiver for generating a candidate search set for Maximal Likelihood (ML) detection of 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams, comprising:
estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; and
performing an iteration for each hypothetical value of each bit position i of the initial solution yq, wherein each iteration comprises:
determining a search center as:
if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or
if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and
searching outward from the determined search center for candidate constellation points.
2. The method of claim 1, wherein each hypothetical value comprises one of 0 and 1.
3. The method of claim 1, wherein searching outward for candidate constellation points comprises:
selecting, for a candidate search set, constellation points whose ith bit equals the hypothetical value assumed for the current iteration.
4. The method of claim 1, wherein searching outward ceases when one of the two following conditions is met:
a number of search steps performed is equal to or greater than a value K; and
a search step is outside a known constellation boundary.
5. The method of claim 1, wherein, when the ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, the iteration further comprises:
determining the mirror constellation point yqc.
6. The method of claim 5, wherein determining the mirror constellation point yqc, where the ith bit of the mirror constellation point yqc does equal the hypothetical value assumed for the current iteration, comprises:
if the ith bit is in the real dimension, shifting a distance in the real dimension while remaining in the same position in the imaginary dimension; and
if the ith bit is in the imaginary dimension, shifting a distance in the imaginary dimension while remaining in the same position in the real dimension.
7. The method of claim 6, wherein shifting a distance in the real dimension while remaining in the same position in the imaginary dimension in order to determine the mirror constellation point yqc when the ith bit is in the real dimension comprises:
determining a shift distance Si using the following equation
S i ( y q ) = k = 1 i b k ( y q ) where : b i ( y q ) = { 0 , L i ( y q ) < 0 1 , L i ( y q ) > 0 and L i ( y q ) = { real ( y q ) , i = 0 - L i - 1 ( y q ) + D i , 0 < i < n 2 .
8. The method of claim 7, wherein the real part of the mirror point yqc can be expressed as:

real(y qc)=real(y q)+S i(y qL i(y q)
and the imaginary part of the mirror point yqc can be expressed as:

imag(y qc)=imag(y q).
9. The method of claim 6, wherein shifting a distance in the imaginary dimension while remaining in the same position in the real dimension in order to determine the mirror constellation point yqc when the ith bit is in the imaginary dimension comprises:
determining a shift distance Si using the following equation
S i ( y q ) = k = n 2 i b k ( y q ) where : b i ( y q ) = { 0 , L i ( y q ) < 0 1 , L i ( y q ) > 0 and L i ( y q ) = { imag ( y q ) , i = n 2 - L i - 1 ( y q ) + D i , n 2 < i < n .
10. The method of claim 9, wherein the real part of the mirror point yqc can be expressed as:

real(y qc)=real(y q)
and the imaginary part of the mirror point yqc can be expressed as:

imag(y qc)=imag(y q)+S i(y qL i(y q).
11. The method of claim 1, wherein the initial solution yq comprises a closest constellation point, via quantization, to a Minimum Mean Error Square (MMSE) detection solution y.
12. A method performed by a receiver for generating a candidate search set for Maximal Likelihood (ML) detection of 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams, comprising:
estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; and
looking up a candidate search set corresponding to the initial solution yq in a Look-Up Table (LUT), wherein candidate search sets in the LUT were generated by:
performing an iteration for each hypothetical value of each bit position i of an initial solution yq, wherein each iteration comprises:
determining a search center as:
if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or
if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and
searching outward from the determined search center for candidate constellation points.
13. The method of claim 12, wherein searching outward for candidate constellation points comprises:
selecting, for a candidate search set, constellation points whose ith bit equals the hypothetical value assumed for the current iteration.
14. The method of claim 12, wherein searching outward ceases when one of the two following conditions is met:
a number of search steps performed is equal to or greater than a value K; and
a search step is outside a known constellation boundary.
15. The method of claim 12, wherein, when the ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, the iteration further comprises:
determining the mirror constellation point yqc.
16. The method of claim 15, wherein determining the mirror constellation point yqc, where the ith bit of the mirror constellation point yqc does equal the hypothetical value assumed for the current iteration, comprises:
if the ith bit is in the real dimension, shifting a distance in the real dimension while remaining in the same position in the imaginary dimension; and
if the ith bit is in the imaginary dimension, shifting a distance in the imaginary dimension while remaining in the same position in the real dimension.
17. A mobile device comprising:
a receiver configured to receive 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted from two or more Multiple Input Multiple Output (MIMO) spatial streams;
one or more processors capable of performing a method for generating a candidate search set for Maximal Likelihood (ML) detection of received 2n-QAM signals; and
at least one non-transitory computer-readable medium storing instructions that, when executed, causes the one or more processors to perform the method for generating a candidate search set for ML detection of received 2n-QAM signals, the method comprising:
estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; and
performing an iteration for each hypothetical value of each bit position i of the initial solution yq, wherein each iteration comprises:
determining a search center as:
if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or
if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and
searching outward from the determined search center for candidate constellation points.
18. The mobile device of claim 17, wherein parameters for performing the iterations are pre-generated and then stored in the mobile device by a manufacturer of the mobile device.
19. The mobile device of claim 17, wherein the parameters for performing the iterations are downloaded into the mobile device.
20. A mobile device comprising:
a receiver configured to receive 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted from two or more Multiple Input Multiple Output (MIMO) spatial streams;
one or more processors capable of performing a method for generating a candidate search set for Maximal Likelihood (ML) detection of received 2n-QAM signals; and
at least one non-transitory computer-readable medium storing instructions that, when executed, causes the one or more processors to perform the method for generating a candidate search set for ML detection of received 2n-QAM signals, the method comprising:
estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; and
looking up a candidate search set corresponding to the initial solution yq in a Look-Up Table (LUT), wherein candidate search sets in the LUT were generated by:
performing an iteration for each hypothetical value of each bit position i of the initial solution yq, wherein each iteration comprises:
determining a search center as:
 if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or
 if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and
searching outward from the determined search center for candidate constellation points.
21. The mobile device of claim 20, wherein the LUT was pre-generated and then stored in the mobile device by a manufacturer of the mobile device.
22. The mobile device of claim 20, wherein the LUT is downloaded into the mobile device.
23. The mobile device of claim 22, wherein the LUT is downloaded into the mobile device when initially started by a user of the mobile device.
24. A non-transitory computer-readable medium storing instructions that when executed by one or more processors to perform a method for generating a candidate search set for Maximal Likelihood (ML) detection of 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams, the method comprising:
estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points;
performing an iteration for each hypothetical value of each bit position i of the initial solution yq, wherein each iteration comprises:
determining a search center as:
if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or
if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and
searching outward from the determined search center for candidate constellation points.
25. A non-transitory computer-readable medium storing instructions that when executed by one or more processors to perform a method for generating a candidate search set for Maximal Likelihood (ML) detection of 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams, the method comprising:
estimating an initial solution yq for a received 2n-QAM symbol value b0b1 . . . bn-1, wherein all possible 2n-QAM symbol values are Gray-mapped constellation points; and
looking up a candidate search set corresponding to the initial solution yq in a Look-Up Table (LUT), wherein candidate search sets in the LUT were generated by:
performing an iteration for each hypothetical value of each bit position i of an initial solution yq, wherein each iteration comprises:
determining a search center as:
if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or
if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yqc to the initial solution yq; and
searching outward from the determined search center for candidate constellation points.
26. A method performed by a receiver for generating a candidate search set for Maximal Likelihood (ML) detection of 2n-Quadrature Amplitude Modulation (2n-QAM) signals transmitted on two or more Multiple Input Multiple Output (MIMO) spatial streams, comprising:
performing an iteration for each hypothetical value of each bit position i of an initial solution y of a received 2n-QAM symbol value b0b1 . . . bn-1 wherein all possible 2n-QAM symbol values are Gray-mapped constellation points, wherein each iteration comprises:
determining a search center as:
if ith bit of the initial solution equals the hypothetical value assumed for the current iteration, the initial solution yq; or
if ith bit of the initial solution does not equal the hypothetical value assumed for the current iteration, a mirror constellation point yc to the initial solution y; and
searching outward from the determined search center for candidate constellation points.
27. The method of claim 26, further comprising:
storing each set of candidate constellation points for each possible initial solution y in a Look-Up Table (LUT).
28. The method of claim 26, further comprising:
varying one or more parameters of the iterations and then re-performing an iteration for each hypothetical value of each bit position i of each possible initial solution y with the varied one or more parameters; and
storing, for each of the varied one or more parameters, each set of candidate constellation points for each possible initial solution y in a Look-Up Table (LUT).
US14/224,750 2013-10-25 2014-03-25 Low complexity near optimal two spatial stream maximal likelihood detector Active US9008241B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/224,750 US9008241B1 (en) 2013-10-25 2014-03-25 Low complexity near optimal two spatial stream maximal likelihood detector

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201361895741P 2013-10-25 2013-10-25
US14/224,750 US9008241B1 (en) 2013-10-25 2014-03-25 Low complexity near optimal two spatial stream maximal likelihood detector

Publications (2)

Publication Number Publication Date
US9008241B1 US9008241B1 (en) 2015-04-14
US20150117559A1 true US20150117559A1 (en) 2015-04-30

Family

ID=52782302

Family Applications (1)

Application Number Title Priority Date Filing Date
US14/224,750 Active US9008241B1 (en) 2013-10-25 2014-03-25 Low complexity near optimal two spatial stream maximal likelihood detector

Country Status (1)

Country Link
US (1) US9008241B1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170051123A (en) 2015-10-30 2017-05-11 삼성전자주식회사 Method and apparatus for decoding multi-user multiple-input multiple output wireless signal
CN109923925B (en) * 2017-02-19 2022-03-01 上海朗帛通信技术有限公司 Method and device used in terminal and base station for wireless communication
CN108736935B (en) * 2018-05-18 2021-02-26 东南大学 Universal descent search method for large-scale MIMO system signal detection
CN108900460B (en) * 2018-06-12 2020-11-13 南京邮电大学 Anti-phase noise robust symbol detection method based on K-means clustering
US10615912B2 (en) * 2018-08-22 2020-04-07 Samsung Electronics Co., Ltd. Apparatuses, computer-readable media, and methods for single dimension maximal likelihood symbol detection
US10790929B2 (en) * 2018-10-12 2020-09-29 Samsung Electronics Co., Ltd. Nested lookup table for symbol detection with initial candidate reduction
US11775589B2 (en) * 2019-08-26 2023-10-03 Google Llc Systems and methods for weighted quantization

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030102905A1 (en) * 2001-08-13 2003-06-05 Samsung Electronics Co., Ltd. Demodulation apparatus and method in a communication system employing 16-ary QAM
US20040141564A1 (en) * 2002-12-13 2004-07-22 Helder Da-Silva-Valente Decoding of low-complexity signals transmitted by a constellation modulation
US6834088B2 (en) * 2001-03-12 2004-12-21 Motorola, Inc. Method and apparatus for calculating bit log-likelihood ratios for QAM signals
US20040264593A1 (en) * 2003-04-29 2004-12-30 Dong-Hee Shim Signal transmitting method in mobile communication system
US20060029162A1 (en) * 2004-08-06 2006-02-09 Stmicroelectronics, Inc. Modular multi-bit symbol demapper
US20060045211A1 (en) * 2004-08-30 2006-03-02 Samsung Electronics Co., Ltd. Method and apparatus for calculating log-likelihood ratio for decoding in a receiver for a mobile communication system
US7616699B2 (en) * 2005-04-12 2009-11-10 Samsung Electronics Co., Ltd. Method of soft bit metric calculation with direct matrix inversion MIMO detection
US7660368B2 (en) * 2005-01-11 2010-02-09 Qualcomm Incorporated Bit log likelihood ratio evaluation
US7746951B2 (en) * 2005-11-16 2010-06-29 Samsung Electronics Co., Ltd Log-likelihood ration (LLR) generating apparatus and method in Multiple Input Multiple Output (MIMO) antenna communication system
US20100183065A1 (en) * 2008-12-18 2010-07-22 Stmicroelectronics S.R.L Iterative detection and decoding in multiple antenna communication systems
US8204160B2 (en) * 2009-09-28 2012-06-19 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for generating soft bit values
US8401127B1 (en) * 2008-06-16 2013-03-19 Marvell International Ltd. Multi-stream soft demodulation using hard-decision schemes
US8559566B2 (en) * 2007-12-07 2013-10-15 Samsung Electronics Co., Ltd. Method and apparatus for decomposing received symbol signal modulated with bit reflected gray code in bit information

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6834088B2 (en) * 2001-03-12 2004-12-21 Motorola, Inc. Method and apparatus for calculating bit log-likelihood ratios for QAM signals
US20030102905A1 (en) * 2001-08-13 2003-06-05 Samsung Electronics Co., Ltd. Demodulation apparatus and method in a communication system employing 16-ary QAM
US20040141564A1 (en) * 2002-12-13 2004-07-22 Helder Da-Silva-Valente Decoding of low-complexity signals transmitted by a constellation modulation
US20040264593A1 (en) * 2003-04-29 2004-12-30 Dong-Hee Shim Signal transmitting method in mobile communication system
US20060029162A1 (en) * 2004-08-06 2006-02-09 Stmicroelectronics, Inc. Modular multi-bit symbol demapper
US20060045211A1 (en) * 2004-08-30 2006-03-02 Samsung Electronics Co., Ltd. Method and apparatus for calculating log-likelihood ratio for decoding in a receiver for a mobile communication system
US7660368B2 (en) * 2005-01-11 2010-02-09 Qualcomm Incorporated Bit log likelihood ratio evaluation
US7616699B2 (en) * 2005-04-12 2009-11-10 Samsung Electronics Co., Ltd. Method of soft bit metric calculation with direct matrix inversion MIMO detection
US7746951B2 (en) * 2005-11-16 2010-06-29 Samsung Electronics Co., Ltd Log-likelihood ration (LLR) generating apparatus and method in Multiple Input Multiple Output (MIMO) antenna communication system
US8559566B2 (en) * 2007-12-07 2013-10-15 Samsung Electronics Co., Ltd. Method and apparatus for decomposing received symbol signal modulated with bit reflected gray code in bit information
US8401127B1 (en) * 2008-06-16 2013-03-19 Marvell International Ltd. Multi-stream soft demodulation using hard-decision schemes
US20100183065A1 (en) * 2008-12-18 2010-07-22 Stmicroelectronics S.R.L Iterative detection and decoding in multiple antenna communication systems
US8204160B2 (en) * 2009-09-28 2012-06-19 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for generating soft bit values

Also Published As

Publication number Publication date
US9008241B1 (en) 2015-04-14

Similar Documents

Publication Publication Date Title
US9008241B1 (en) Low complexity near optimal two spatial stream maximal likelihood detector
US10181967B2 (en) Method and apparatus for soft detection of high order QAM symbols in MIMO channels
JP5596061B2 (en) Differential codebook, MIMO beamforming system, and quantization error reduction method
US10305513B2 (en) Apparatus and method for determining log likelihood values of nodes in communication system supporting low density parity check code
US8503584B2 (en) Efficient implementation of M-algorithm based on QR decomposition for higher-order constellations
EP2520055B1 (en) Branch processing of search tree in a sphere decoder
Roger et al. Fully parallel GPU implementation of a fixed-complexity soft-output MIMO detector
US9203681B2 (en) Method and apparatus for performing soft demapping in rotated quadrature amplitude modulation (QAM) based communication system
US9246724B2 (en) Method and apparatus for performing soft demapping in rotated quadrature amplitude modulation (QAM) based communication system
US20150215010A1 (en) Method and apparatus for estimating communication channel in mobile communication system
WO2015192704A1 (en) Data processing method and device for maximum likelihood (ml) receiver
US9819528B2 (en) Efficient demapping of constellations
JP2009135929A (en) Constellation simplifying apparatus, simplifying method thereof and receiver
US8699599B2 (en) Method for defining a search sequence for soft-decision sphere decoding algorithm
US9160578B2 (en) Turbo equalisation
US7974370B2 (en) Parallel processing for single antenna interference cancellation
US10615912B2 (en) Apparatuses, computer-readable media, and methods for single dimension maximal likelihood symbol detection
EP2856660B1 (en) Apparatus and method for processing signal in wireless communication system
US9178579B2 (en) Wireless device and wireless communication method
US9258079B2 (en) Apparatus and method for generating soft-decision information in a multiple antenna system
Lai et al. Channel-aware local search (CA-LS) for iterative MIMO detection
KR102684724B1 (en) Apparatuses, computer-readable media, and methods for single dimension maximal likelihood symbol detection
Maung et al. Reduced complexity scheme for MIMO receiver with combined ZF-OSIC and ML detection
EP4024795A1 (en) System and method for performing mld preprocessing in a mimo decoder
US10432446B1 (en) MIMO decoding based on quadrant identification

Legal Events

Date Code Title Description
AS Assignment

Owner name: SAMSUNG ELECTRONICS CO., LTD., KOREA, REPUBLIC OF

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TONG, FEI;REEL/FRAME:032597/0213

Effective date: 20140324

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 8