Communications Blockset | ![]() ![]() |
Encode using differential pulse code modulation
Library
Description
The DPCM Encoder block quantizes the input signal using differential pulse code modulation. The input must be a scalar signal. Its two outputs are the quantization index and the quantization-encoded signal.
This block uses the Sampled Quantizer Encode block. The description of that block gives more detailed information about quantization indices and quantization-encoded signals.
Quantization partition is a vector whose entries give the endpoints of the partition intervals. Quantization codebook, a vector whose length exceeds the length of Quantization partition by one, prescribes a value for each partition in the quantization. The first element of Quantization codebook is the value for the interval between negative infinity and the first element of Quantization partition.
You can think of the predictor as a transfer function for an IIR filter, hence a rational function of z-1. Specify the predictor's numerator and denominator by listing their coefficients in the vectors Predictor numerator and Predictor denominator, respectively. List the coefficients in order of increasing powers of z-1.
Note The first entry of Predictor numerator must be zero. A nonzero entry there would fail to make sense conceptually, and would create an algebraic loop in the implementation. |
You can use the function dpcmopt
in the Communications Toolbox to train the Predictor numerator, Predictor denominator, Quantization partition, and Quantization codebook parameters. The output of dpcmopt
omits the denominator of the predictor, assuming that it will be 1. In most DPCM applications, the denominator of the predictor transfer function is 1.
If Predictor numerator has the form [0, x] and Predictor denominator is 1, then the modulation is called delta modulation.
Dialog Box
Pair Block
References
[1] Kondoz, A. M. Digital Speech. Chichester, England: John Wiley & Sons, 1994.
![]() | DPCM Decoder | DQPSK Demodulator Baseband | ![]() |