1. A method for generating soft output for a received signal in a multiple input, multiple output (MIMO) receiver, comprising: estimating a channel matrix H from signals y received at a plurality of antennas via corresponding channels; decomposing, using M parameters, the channel matrix H to obtain a unitary matrix Q and upper triangular matrix R; determining, in a QRD-M detection unit, a set of candidate decision vectors based on the matrices Q and R and the received signals y; determining, in a Markov chain Monte Carlo (MCMC) detection emit, an important subset of the set of candidate decision vectors; and determining, in a log-likelihood ratio unit, a soft output using the important subset.