  We consider large MIMO systems, where by `{\em large}' we mean number of
transmit and receive antennas of the order of tens to hundreds. Such large MIMO
systems will be of immense interest because of the very high spectral
efficiencies possible in such systems. We present a low-complexity detector
which achieves uncoded near-exponential diversity performance for hundreds of
antennas (i.e., achieves near SISO AWGN performance in a large MIMO fading
environment) with an average per-bit complexity of just $O(N_tN_r)$, where
$N_t$ and $N_r$ denote the number of transmit and receive antennas,
respectively. With an outer turbo code, the proposed detector achieves good
coded bit error performance as well. For example, in a 600 transmit and 600
receive antennas V-BLAST system with a high spectral efficiency of 200 bps/Hz
(using BPSK and rate-1/3 turbo code), our simulation results show that the
proposed detector performs close to within about 4.6 dB from theoretical
capacity. We also adopt the proposed detector for the low-complexity decoding
of high-rate non-orthogonal space-time block codes (STBC) from division
algebras (DA). For example, we have decoded the $16\times 16$ full-rate
non-orthogonal STBC from DA using the proposed detector and show that it
performs close to within about 5.5 dB of the capacity using 4-QAM and rate-3/4
turbo code at a spectral efficiency of 24 bps/Hz. The practical feasibility of
the proposed high-performance low-complexity detector could potentially trigger
wide interest in the implementation of large MIMO systems. In large MC-CDMA
systems with hundreds of users, the proposed detector is shown to achieve near
single-user performance at an average per-bit complexity linear in number of
users, which is quite appealing for its use in practical CDMA systems.
