System object: comm.SphereDecoder
Decode received symbols using sphere decoding algorithm
Y = step(H, RXSYMBOLS, CHAN)
Starting in R2016b, instead of using the
step method to perform the operation defined by the System object™, you can call the object with arguments, as if it were a function. For example,
y = step(obj,x) and
y = obj(x) perform equivalent operations.
Y = step(H, RXSYMBOLS, CHAN) decodes the
received symbols, RXSYMBOLS, using the sphere decoding algorithm.
The algorithm can be employed to decode Ns channel realizations in
one call, where in each channel realization, Nr symbols are received.
The inputs are:
RXSYMBOLS: a [Ns Nr] complex double matrix
containing the received symbols.
CHAN: a [Ns Nt Nr] or [1 Nt Nr] complex double
matrix representing the fading channel coefficients of the flat-fading
MIMO channel. For the [Ns Nt Nr] case, the object applies each channel
matrix to each Nr symbol set. For the block fading case, i.e., when
the size of
CHAN is [1 Nt Nr], the same channel
is applied to all of the received symbols.
Y, which depends on the setting of the
DecisionType property, is a double matrix containing the
Log-Likelihood Ratios (LLRs) of the decoded bits or the bits themselves. For both cases,
the size of the output is [Ns*bitsPerSymbol Nt], where
bitsPerSymbol represents the number of bits per transmitted
symbol, as determined by the
obj specifies the System object on which to run this
The object performs an initialization the first time the
step method is executed. This initialization locks nontunable properties and
input specifications. For more information on changing property values, see System Design in MATLAB Using System Objects.