System object: comm.CRCDetector
Package: comm

Detect errors in input data using CRC


[Y,ERR] = step(H,X)



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,ERR] = step(H,X) computes checksums for the entire input frame, X. X must be a binary column vector and the data type can be double or logical. The step method outputs a row vector ERR, with size equal to the number of checksums that you specify in the CheckSumsPerFrame property. The elements of ERR are 0 if the checksum computation yields a zero value, and 1 otherwise. The method outputs Y, with the set of CheckSumsPerFrame message words concatenated after removing the checksums bits. The object sets the length of output Y as length(X)P×CheckSumsPerFrame, where P is the order of the polynomial that you specify in the Polynomial property.


obj specifies the System object on which to run this step method.

The object performs an initialization the first time the step method 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 the release method to unlock the object.