26-06-2013, 12:54 PM
Implementation of pulse code modulation and demodulation using matlab
Learning Objectives
To be familiar with concept of pulse coded modulation and demodulation with the use of MATLAB.
THEORY
ANALOG-TO-DIGITAL CONVERSION:
A digital signal is superior to an analog signal because it is more robust to noise and can easily be recovered, corrected and amplified. For this reason, the tendency today is to change an analog signal to digital data. In this section we describe two techniques, pulse code modulation and delta modulation
Pulse code Modulation (PCM):
Pulse-code modulation (PCM) is a method used to digitally represent sampled analog signals, which was invented by Alec Reeves in 1937. It is the standard form for digital audio in computers and various Blu-ray, Compact Disc and DVD formats, as well as other uses such as digital telephone systems. A PCM stream is a digital representation of an analog signal, in which the magnitude of the analogue signal is sampled regularly at uniform intervals, with each sample being quantized to the nearest value within a range of digital steps.
PCM consists of three steps to digitize an analog signal:
1. Sampling
2. Quantization
3. Binary encoding
Before we sample, we have to filter the signal to limit the maximum frequency of the signal as it affects the sampling rate.
Filtering should ensure that we do not distort the signal, ie remove high frequency components that affect the signal shape.
Quantization Levels:
The midpoint of each zone is assigned a value from 0 to L-1 (resulting in L values) Each sample falling in a zone is then approximated to the value of the midpoint.
Quantization Error:
When a signal is quantized, we introduce an error - the coded signal is an approximation of the actual amplitude value.
The difference between actual and coded value (midpoint) is referred to as the quantization error.
The more zones, the smaller which results in smaller errors.
BUT, the more zones the more bits required to encode the samples -> higher bit rate