System object: comm.BCHDecoder
Decode data using a BCH decoder
Y = step(H,X)
[Y,ERR] = step(H,X)
Y = step(H,X,ERASURES)
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,X) decodes input binary codewords
X using a (
BCH decoder with the corresponding narrow-sense generator polynomial.
The step method returns the estimated message in
This syntax applies when you set the
to false. The input and output length of the step function equal the
values listed in the table in Input and Output Signal Lengths in BCH and RS System Objects.
[Y,ERR] = step(H,X) returns the number
of corrected errors in output
ERR when you set
NumCorrectedErrorsOutputPort property to
A non- negative value in the i-th element of the
vector denotes the number of corrected errors in the i-th
input codeword. A value of
-1 in the i-th
element of the
ERR output indicates that a decoding
error occurred for the i-th input codeword. A decoding
error occurs when an input codeword has more errors than the error
correction capability of the BCH code.
Y = step(H,X,ERASURES) uses
the erasures pattern input when you set the
true. The object decodes the binary encoded
X, and treats as erasures the bits
of the input codewords specified by the binary column vector,
The length of
ERASURES must equal the length of
and its elements must be of data type double or logical. Values of
the erasures vector correspond to erased bits in the same position
of the (possibly punctured) input codewords.
obj specifies the System object on
which to run this
The object performs an initialization the first time the
is executed. This initialization locks nontunable
properties 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.