System object: comm.PSKDemodulator
Package: comm

Demodulate using M-ary PSK method


Y = step(H,X)
Y = step(H,X,VAR)



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) demodulates data, X, with the PSK demodulator System object, H, and returns Y. Input X must be a scalar or a column vector with double or single precision data type. If the value of the ModulationOrder property is less than or equal to 8 and you set BitOutput to false, or when you set the DecisionMethod property to Hard Decision and BitOutput to true, the object accepts an input with a signed integer data type or signed fixed point (fi objects). Depending on the BitOutput property value, output Y, can be integer or bit valued.

Y = step(H,X,VAR) uses soft decision demodulation and noise variance VAR. This syntax applies when you set the BitOutput property to true, the DecisionMethod property to Approximate log-likelihood ratio or Log-likelihood ratio, and the VarianceSource property to Input port. The data type of input VAR must be double or single precision.


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.