System object: comm.ConvolutionalDeinterleaver
Package: comm

Restore ordering of symbols using shift registers


Y = 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 = step(H,X) restores the original ordering of the sequence, X, that was interleaved using a convolutional interleaver and returns Y. The input X must be a column vector. The data type can be numeric, logical, or fixed-point (fi objects). Y has the same data type as X. The convolutional deinterleaver object uses a set of N shift registers, where N is the value specified by the NumRegisters property. The object sets the delay value of the k-th shift register to the product of (k-1) and RegisterLengthStep property value. With each new input symbol, a commutator switches to a new register and the new symbol shifts in while the oldest symbol in that register shifts out. When the commutator reaches the N-th register and the next new input occurs, it returns to the first register.


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.