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
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
the number of bits per transmitted symbol, as determined by the
obj specifies the System
which to run this
The object performs an initialization the first time the
is executed. This initialization locks nontunable
properties (MATLAB) and input specifications, such as dimensions,
complexity, and data type of the input data. If you change a nontunable
property or an input specification, the System
object issues an
error. To change nontunable properties or inputs, you must first call
release method to unlock the object.