Professional Documents
Culture Documents
Pulse Code Modulation: EE 442 - Spring Semester
Pulse Code Modulation: EE 442 - Spring Semester
Pulse Code Modulation: EE 442 - Spring Semester
Analog signal
https://studylib.net/doc/18316971/lecture-11--pulse-code-modulation
Pulse Code Modulation 1
Reading from Agbo and Sadiku
Basic principle: A band-limited waveform can’t be time-limited, and a time-limited waveform can’t
be band-limited.
Sampling Theorem: A band-limited signal g(t) of bandwidth B (Hz) can be reconstructed exactly
from data samples taken at a sampling rate fS if fS is greater than or equal to 2B (Hz).
Baseband
“band-limited”
g(t ) ( or m(t ))
spectra of G(f)
FT bandwidth B
t
Ш(t)
G(f) consists of G(f), scaled by the
constant 1/TS , repeated periodically
TS with period fS = (1/TS) as shown here.
g(t)
G(f) Multiple
FT spectra
t
Review 3
Summary of Lecture 8 – Page 2
The Fourier transform of a finite width pulse train in the time domain is the sinc function in
the frequency domain.
Sampling is never the ideal delta function (Shah function) but rather a sequence of narrow pulses.
Thus, the multiple spectra in the frequency domain have amplitudes determined the sinc function.
Nyquist Sampling Theorem: The Minimum Sampling Rate fS = 2B is the Nyquist rate.
Oversampling occurs when the rate exceeds the Nyquist rate. Parameter B is the bandwidth of the
message signal m(t).
Signal reconstruction is called Interpolation. We can recover g(t) by sending the samples through
a band-limited filter of bandwidth B (Hz).
Review 4
Summary of Lecture 8 – Page 3
In non-ideal sampling reconstruction may be performed by passing the sampled data
stream through a filter called an equalizer.
1
G( f ) = E( f )G( f ) = E( f )P( f )
TS
G( f = nf
n
S )
S1 A2
A1 +
+ +
Output
+ R Input
VG1 Buffer
Buffer S2 C g(t)
g(t) Sampling VG2
Pulse
Review 5
Summary of Lecture 8 – Page 4
Basic relationship in digital communications: A maximum of 2B independent elements of
information per second can be transmitted, error-free, over a noiseless channel of
bandwidth B Hz.
Review 6
Advantages of Digital Over Analog For Communications
PCM signal
transmitted
to channel
Transmitter
Distorted PCM Regenerated
signal from PCM signal sent
imperfect channel along channel
Transmission Path
Final
channel
output
Receiver
https://www.elprocus.com/pulse-code-modulation-and-demodulation/
amplitude
•
amplitude
•• • •
0100101101011001
time •
time time 1110101010101000
• 0100011000100011
• •
• • 0101001111010101
• •
•• • 1110110111010001
•
Sample Quantize Encode
Analog Digital
Signal Captured Quantized Signal
Sampled Data Sampled
Sampling Values Quantizing Data Encoding
selects the chooses the assigns binary
data points amplitude numbers to
we use to Discrete values used Now have those Now have the
Analog signal create the time values: to encode discrete amplitude digital
is continuous digital data few amplitudes Values in values data which
in time & from analog both time & is the final
amplitude signal amplitude result
Four-bit coding
(16 discrete levels)
https://en.wikipedia.org/wiki/Pulse-code_modulation
2m p
==
L
After Lathi & Ding, 4th ed., 2009; page 6. L = 16 levels → 4 bits
−m p
Maximum value = |mp|
Pulse Code Modulation 11
Four-Bit Binary Pulse Code (Example)
To communicate
sampled values, we
send a sequence of bits
that represents the
quantized value.
For 16 quantization levels,
4 bits are required.
PCM can use a
binary
representation of
value.
The PSTN uses PCM
We start with a sampled signal {call it m(t)} and now we want to quantize it.
Divide the range (-mp, +mp) into L uniformly spaced intervals. The number
intervals is L and the separation between quantized levels is
2 mp
=
L
The kth sample point of m(t) is designated as m(kTS) and is assigned a value
equal to the midpoint between two adjacent levels. Define:
The signal (or message) power S0 is proportional to the mean square of m(t),
A 2
mp2
S0 = 2 = m2 (t ) ; and if m(t ) is sinusoidal, S0 = = m
2 2
Note: denotes a time average.
Pulse Code Modulation 15
Where Does (2/12) Come From?
P(q)
1
Probability
Density
Function q
−
2 2
This assumes the quantization error is uniformly distributed.
/2
1 1 q 3
/ 2 1
3
−
3
2
E (q ) = q dq =
2 2
= − =
− /2
3 − / 2 3
2 2 12
But, N q = q 2 = q 2 = E(q 2 )
We want a measure of the quality of received signal (that is, the ratio of
the strength of the received signal power S0 relative to the strength of the
noise power Nq due to quantization).
3L2
2
m (t ) 1
It is usually expressed in decibels, Note:
mp2 2
S0 3L2
SQNRdB = 10 log 10 10 log 10
Nq 2
Conclusion:
To reduce the quantization error relative to the message signal level, use
smaller quantization steps .
Compression Restoration
(m) m(t)
m(t) m(t)
http://www.slideshare.net/91pratham/unit-ipcmvsh
Pulse Code Modulation 19
Companding Laws
Output (y/ymax)
Input (m/mp) Input (m/mp)
A m m 1
y= for 0 1 m m
1 + log e A mp mp A y= log e 1 + for 0 1
log e (1 + ) m mp
A Am 1 m p
y= 1 + log e for 1
1 + log e A mp A mp
A = 87.6
http://www.en.voipforo.com/codec/codecs-g711-alaw.php
Pulse Code Modulation 21
Flattening of the S/N Ratio Using the -Law
S0
Nq
(8 bits)
BT = nB Hz
Given message signal m(t) with range from –mp to +mp. For n levels the
quantization step is given by
2 mp
=
L
()
2
mp2
The mean square error (MSE) is found from Nq = q2 = =
3L2 12
The means signal power is S0 = 2 = m2 (t )
Solution:
The Nyquist rate is RN = 2 x 3000 Hz = 6000 Hz (samples/second), but the actual
rate is 33⅓ % higher, so the sample rate is 6000 Hz + (⅓ x 6000) = 8000 Hz.
Solution (continued):
Having chosen n = 8 to guarantee < 0.5% error, to find the bandwidth required
we start with
If 24 such signals are multiplexed onto a single line (known as a T1 Line in the
Bell telephone system), then
¶
A maximum of 2B independent elements of information per second can be
transmitted, error-free, over a noiseless channel of bandwidth B Hz.
Pulse Code Modulation 26
Exponential Increase of the Output SNR (S/N Ratio)
We start with the SNR (signal-to-noise ratio) equation from slide 12 above:
S0 m 2 (t )
= 3 L2 denotes time average
Nq mp2
The number of levels L can be expressed as L2 = 22n where n = log2(L) and is
the number of bits to generate L levels. The SNR can now be expressed as
S0 m 2 (t ) 2 n
mp2 ( )
= 3 2
Nq
Using the expression for bandwidth, BT = nB, then we arrive at
S0 m 2 (t ) 2 B /B
= 3 (2) T
Nq mp2
Taking the logarithm gives
S0 S0 m 2 (t )
= 10 log 10 = 10 log 10 3 + 10 2 n log 10 ( 2 ) ( + 6n ) dB
Nq Nq mp2
dB
S0 m 2 (t ) 3P 3
= 3 (2)2 n = 2ave (2)2 n = (2)2 n
Nq mp2 mmax 2
L n SNR
S0 32 5 31.8 dB
10 log 10 ( 1.76 + 6n ) dB
Nq 64 6 37.8 dB
128 7 43.8 dB
256 8 49.8 dB
The first version, the Transmission System 1 (T1), was introduced in 1962 in
the Bell System, and could transmit up to 24 telephone calls simultaneously
over a single transmission line consisting of copper wire.
193 bit frame – 122 sec/frame
https://sun.iwu.edu/~jhaefner/CS390/Lecture9/lec9.htm
Pulse Code Modulation 29
T1 Carrier – Time Division Multiplexing
Using for the quantization noise Nq = [2/12], and taking Pave = 2 W, the
SNR is given by
SO Pave 2 24
=
= 12 = = 98, 304
Nq N q 2 (1.5625 10 −2 )2
SNRdB = 10 log 10 ( 98, 304 ) = 49.93 dB
(b) If the minimum SNR is to be at least 36 dB, how many bits n are needed
to encode the signal (i.e., find n)? Other parameters such as signal power remain
the same as in part (a) on previous slide.
The lowest integer number of bits n that will give at least 31.5 levels is n = 5
because 25 = 32 levels. So the answer is 5 bits.
PCM is not really efficient because it generates so many bits taking up a lot
of bandwidth. Can we improve on this? YES.
At the receiver knowing d[k] and the previous value of m[k-1] allows us to
construct the value of m[k].
How do we benefit from doing this?
Suppose mest[k] is the estimate of the kth sample, then the difference d[k]
is defined by
d[k] = m[k] – mest[k]
Receiver Concept:
At the receiver we determine the estimate mest[k] from previous sample
values, and then generate m[k] by adding the received d[k] values to the
estimate mest[k]. Thus, the reconstruction of the samples is done
iteratively.
m[ k ] a1m[ k − 1] + a2 m[ k − 2] + . . . + aN m[ k − N ] = mq [ k ]
Note that the input consists of the weighted previous samples m[k-1],
m[k-2], etc. We say that input m[k] gives output mest[k].
mest [ k ] = a1m[ k − 1] + a2 m[ k − 2] + . . . + aN m[ k − N ]
Input
m[k] Delay Delay Delay Delay ... Delay
TS TS TS TS TS
a1 a2 a3 aN
Output mest[k]
+
mest[k]
+
After Lathi and Ding, mq[k]
4th edition, 2009; page 344. Predictor
The predictor output mest[k] is fed back to the input so the predictor input
mq[k] is given by
mq [ k ] = mq [ k ] + dq [ k ] = m[ k ] − d[ k ] + dq [ k ] = m[ k ] + q[ k ]
Input Output
dq[k] + mq[k]
+
mest[k]
Predictor
The receiver’s output (which is the predictor’s input) is also the same,
mq[k] = m[k] + q[k].
Hence, we are able to receive the desired signal m[k] plus the quantization
noise, q[k]. It is important to note that from the difference signal d[k] is
much smaller that the noise associated with m[k].
time
1100000101111101000011100010101 .....
Reference: ?
http://www.venusclubs.co.nz/02/provide-your-clients-with-answers-before-they-ask-their-questions/
Pulse
amplitude
modulation
Pulse
duration (width)
modulation
Pulse
position
modulation
Pulse
frequency
modulation
Pulse
code
modulation
https://www.quora.com/What-is-the-difference-between-pulse-
amplitude-modulation-PAM-and-pulse-code-modulation-PCM
https://electronicspost.com/comparison-between-pcm-dm-adm-and-dpcm/
https://en.wikipedia.org/wiki/Quantization_(signal_processing)
PWM
PFM
http://randomflux.info/1bit/viewtopic.php?id=21