0% found this document useful (0 votes)
2 views

PCM Lectures

The lecture discusses Pulse Code Modulation (PCM) and its applications in the Bell System, including the T-1 carrier system which allows for time division multiplexing of voice channels. It also covers various forms of PCM such as Differential PCM (DPCM) and Adaptive DPCM (ADPCM), emphasizing the advantages of using previous samples for better prediction and efficiency. Additionally, the lecture addresses multiplexing techniques and challenges associated with asynchronous PCM transmission.

Uploaded by

Ahanaf Sami
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

PCM Lectures

The lecture discusses Pulse Code Modulation (PCM) and its applications in the Bell System, including the T-1 carrier system which allows for time division multiplexing of voice channels. It also covers various forms of PCM such as Differential PCM (DPCM) and Adaptive DPCM (ADPCM), emphasizing the advantages of using previous samples for better prediction and efficiency. Additionally, the lecture addresses multiplexing techniques and challenges associated with asynchronous PCM transmission.

Uploaded by

Ahanaf Sami
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

Lecture 13: Pulse Code Modulation

John M Pauly

November 2, 2021
Pulse Code Modulation (PCM)
I PCM in the Bell System
I Multiplexing PCM
I Asynchronous PCM
I Extensions to PCM
I Differential PCM (DPCM)
I Adaptive DPCM (ADPCM)
I Delta-Sigma Modulation (DM)

I Vocoders

Based on lecture notes from John Gill


PCM in the Bell System
Starting in the 1920s, long distance telephone links used frequency division
multiplexing. (FDM requires amplifiers, built using vacuum tubes.)
A cable with bandwidth 3 MHz can support (in principle) 1000 3 kHz voice
channels. But 1000 filters, modulators, and demodulators are needed.
Local exchanges communicated by trunk lines. Each copper pair carried one
voice conversation.
Using PCM, multiple connections could be time division multiplexed.
The Bell System settled on 1.544 Mbit/s (by experimentation).
8000 · (24 · 8 + 1) = 8000 · 193 = 1544000
This TDM signal is called digital signal level 1 (DS1).
This T-1 carrier system uses the same copper that was used for voice!

PCM is credited to Bernard Oliver and Claude Shannon (patent 2 801 281, 1946)
Telephone Exchange Using Strowger Switches
Electromechanical Crossbar Switch
T-1 Carrier System
The input to the (fast) 13-bit ADC comes from an analog multiplexer.
The digital processor compresses the digital value according to µ-law.
T-1 Carrier System (cont.)
The 8-bit compressed voice values are sent consecutively, msb first.
The samples of all 24 inputs comprise a frame.

Most serial communications transmits data lsb first (“little endian”).


T-1 Frame
A framing bit is prepended to each frame, hence 193 bits/frame. Framing
bits alternate and allow for frame synchronization.
The “final” version of T-1 uses robbed-bit signaling. In every sixth frame,
the lsb of each sample is used for control purposes.

Early T-1 used every lsb for signaling, hence only 128 quantization levels. In the same way,
information can be hidden in the lsb of CD audio or images.
T-Carrier (T-CXR)
T-1 links can be multiplexed over high-speed links (wire, microwave,
optical). Multiplexing is by bits, not octets.
T-2: 4 T-1 channels (96 voice), 6.312 Mbs (copper)
T-3: 7 T-2 channels (672 voice), 44.736 Mbs (copper)
T-4: 6 T-3 channels (4032 voice), 274.176 Mbs
Customers could buy a T-1 link or part of a link (fractional T-1).
A common digital link in the 1990s was 56000 bps. This was one T-1
channel with 7 bits/sample at 8 kHz.
The European hierarchy is similar but was designed after T-carrier.
E1 has 32 8-bit channels but uses two for frame synchronization and
signaling.
E1–E5 have 32, 128, 512, 2048, 8192 channels. The channels are not
combined by bitwise multiplexing.
Multiplexing PCM
A major motivation for PCM is the ability to multiplex many low bit rate
channels on a single hit bit rate channel. There are many ways to do this:
I Bit interleaving
I Word interleaving
These each have advantages and disadvantages. A major issue is
synchronization. There are several different approaches
I Synchronous : hard to do in practice
I Asynchronous : potentially wasteful of capacity
I Plesiochronous : a practical balance
Multiplexing PCM
Asynchronous PCM
Problem: It is difficult to ensure that the bits arrive and leave at the
synchronous rates
Example :
I 100 km cable, carrying 200 Mbits/s.
I If the temperature increases by 1 ◦ F, it increases the propagation
velocity by 0.01%.
I This results in a temporary increase of 20 kbits/s in the bit arrival rate.
What do we do with all the extra bits?
Answers :
I Run the link at a slightly slower bit rate, and bit stuff the extra bits
empty bits if you don’t need them
I Run the link at a slightly lower bit rate, and drop occasional LSB’s
I Run at the ideal rate, and bit stuff/bit delete as needed
Use the control channel to indicate which bits are stuffed/deleted
Differential PCM
PCM uses a lot of bits per second. This is mostly because audio has a large
dynamic range, and is weighted towards lower frequencies.

The result is that samples are highly correlated, and the previous sample is
a good prediction of the next.
d
We can improve PCM by transmitting samples of dt m(t), and then
reconstructing the m(t) at the other end by integration
Differentiated Audio Spectrum

0 3kHz

This is differential PCM.


Differential PCM
In general, we want to use previous samples to predict the signal.
I m[k] is the sampled unquantized signal we want to transmit, and mq [k]
is the quantized signal
I m̂[k] is the prediction of m[k] based on previous samples mq [k]
I d[k] = m[k] − m̂[k], the unquantized difference between m[k] and the
prediction
I dq [k] is the actual quantized difference that will be transmitted.
A predictor will take previous samples of the signal, and compute the next
expected sample
Differential PCM
We’ll start with the receiver
<latexit sha1_base64="U6P7OMGWLS7HVxin2mSblHvYpEw=">AAAB7XicbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWw2m3btZjfuboQS+h+8eFDEq//Hm//GbZuDtj4YeLw3w8y8MOVMG9f9dkpr6xubW+Xtys7u3v5B9fCoo2WmCG0TyaXqhVhTzgRtG2Y47aWK4iTktBuOb2Z+94kqzaS4N5OUBgkeChYzgo2VOtHg0R8Hg2rNrbtzoFXiFaQGBVqD6lc/kiRLqDCEY619z01NkGNlGOF0WulnmqaYjPGQ+pYKnFAd5PNrp+jMKhGKpbIlDJqrvydynGg9SULbmWAz0sveTPzP8zMTXwc5E2lmqCCLRXHGkZFo9jqKmKLE8IklmChmb0VkhBUmxgZUsSF4yy+vkk6j7l3WvbuLWrNRxFGGEziFc/DgCppwCy1oA4EHeIZXeHOk8+K8Ox+L1pJTzBzDHzifP3gFjwM=</latexit> <latexit sha1_base64="xsjev+pcrDIaa8pjijqUoS6f8a4=">AAAB7XicbVDLSgNBEOyNrxhfUY9eBoPgKewGUY8BLx4jmAdsljA7mU3GzGOdmRVCyD948aCIV//Hm3/jJNmDJhY0FFXddHfFKWfG+v63V1hb39jcKm6Xdnb39g/Kh0ctozJNaJMornQnxoZyJmnTMstpJ9UUi5jTdjy6mfntJ6oNU/LejlMaCTyQLGEEWye1RO8xHEW9csWv+nOgVRLkpAI5Gr3yV7evSCaotIRjY8LAT200wdoywum01M0MTTEZ4QENHZVYUBNN5tdO0ZlT+ihR2pW0aK7+nphgYcxYxK5TYDs0y95M/M8LM5tcRxMm08xSSRaLkowjq9DsddRnmhLLx45gopm7FZEh1phYF1DJhRAsv7xKWrVqcFkN7i4q9VoeRxFO4BTOIYArqMMtNKAJBB7gGV7hzVPei/fufSxaC14+cwx/4H3+AIXWjww=</latexit>

dq [k] + mq [k]
+
+
Predictor
<latexit sha1_base64="S/MVswN104LVFyQ3bbijvXL0y5Q=">AAAB83icbVBNS8NAEJ34WetX1aOXxSJ4KkkR9Vjw4rGC/YAklM122y7dTeLuRCihf8OLB0W8+me8+W/ctjlo64OBx3szzMyLUikMuu63s7a+sbm1Xdop7+7tHxxWjo7bJsk04y2WyER3I2q4FDFvoUDJu6nmVEWSd6Lx7czvPHFtRBI/4CTloaLDWAwEo2ilIBhRzNW09+iPw16l6tbcOcgq8QpShQLNXuUr6CcsUzxGJqkxvuemGOZUo2CST8tBZnhK2ZgOuW9pTBU3YT6/eUrOrdIng0TbipHM1d8TOVXGTFRkOxXFkVn2ZuJ/np/h4CbMRZxmyGO2WDTIJMGEzAIgfaE5QzmxhDIt7K2EjaimDG1MZRuCt/zyKmnXa95Vzbu/rDbqRRwlOIUzuAAPrqEBd9CEFjBI4Rle4c3JnBfn3flYtK45xcwJ/IHz+QNc35HZ</latexit>

m̂q [k]
Decoder

I We’ll assume that the system is working, and has produced previous
values of mq [k]
I The predictor compute m̂q [k], the next predicted sample
I The input is the quantized difference signal dq [k]
I This is added to the predicted signal m̂q [k] to recover mq [k].
Differential PCM
A simple encoder would quantize first, compute the prediction, and then
compute the difference signal to transmit

+
<latexit sha1_base64="aO789MA/gNUEOlj3CoM5Fvh4NIc=">AAAB63icbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWy2m3bp7ibsboQS+he8eFDEq3/Im//GTZqDtj4YeLw3w8y8MOFMG9f9diobm1vbO9Xd2t7+weFR/fikp+NUEdolMY/VIMSaciZp1zDD6SBRFIuQ0344u8v9/hNVmsXy0cwTGgg8kSxiBJtcEv4sGNUbbtMtgNaJV5IGlOiM6l/DcUxSQaUhHGvte25iggwrwwini9ow1TTBZIYn1LdUYkF1kBW3LtCFVcYoipUtaVCh/p7IsNB6LkLbKbCZ6lUvF//z/NREt0HGZJIaKslyUZRyZGKUP47GTFFi+NwSTBSztyIyxQoTY+Op2RC81ZfXSa/V9K6b3sNVo90q46jCGZzDJXhwA224hw50gcAUnuEV3hzhvDjvzseyteKUM6fwB87nD/z5jig=</latexit> <latexit sha1_base64="xsjev+pcrDIaa8pjijqUoS6f8a4=">AAAB7XicbVDLSgNBEOyNrxhfUY9eBoPgKewGUY8BLx4jmAdsljA7mU3GzGOdmRVCyD948aCIV//Hm3/jJNmDJhY0FFXddHfFKWfG+v63V1hb39jcKm6Xdnb39g/Kh0ctozJNaJMornQnxoZyJmnTMstpJ9UUi5jTdjy6mfntJ6oNU/LejlMaCTyQLGEEWye1RO8xHEW9csWv+nOgVRLkpAI5Gr3yV7evSCaotIRjY8LAT200wdoywum01M0MTTEZ4QENHZVYUBNN5tdO0ZlT+ihR2pW0aK7+nphgYcxYxK5TYDs0y95M/M8LM5tcRxMm08xSSRaLkowjq9DsddRnmhLLx45gopm7FZEh1phYF1DJhRAsv7xKWrVqcFkN7i4q9VoeRxFO4BTOIYArqMMtNKAJBB7gGV7hzVPei/fufSxaC14+cwx/4H3+AIXWjww=</latexit> <latexit sha1_base64="U6P7OMGWLS7HVxin2mSblHvYpEw=">AAAB7XicbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWw2m3btZjfuboQS+h+8eFDEq//Hm//GbZuDtj4YeLw3w8y8MOVMG9f9dkpr6xubW+Xtys7u3v5B9fCoo2WmCG0TyaXqhVhTzgRtG2Y47aWK4iTktBuOb2Z+94kqzaS4N5OUBgkeChYzgo2VOtHg0R8Hg2rNrbtzoFXiFaQGBVqD6lc/kiRLqDCEY619z01NkGNlGOF0WulnmqaYjPGQ+pYKnFAd5PNrp+jMKhGKpbIlDJqrvydynGg9SULbmWAz0sveTPzP8zMTXwc5E2lmqCCLRXHGkZFo9jqKmKLE8IklmChmb0VkhBUmxgZUsSF4yy+vkk6j7l3WvbuLWrNRxFGGEziFc/DgCppwCy1oA4EHeIZXeHOk8+K8Ox+L1pJTzBzDHzifP3gFjwM=</latexit>

m[k] mq [k] dq [k]


Quantizer +
<latexit sha1_base64="S/MVswN104LVFyQ3bbijvXL0y5Q=">AAAB83icbVBNS8NAEJ34WetX1aOXxSJ4KkkR9Vjw4rGC/YAklM122y7dTeLuRCihf8OLB0W8+me8+W/ctjlo64OBx3szzMyLUikMuu63s7a+sbm1Xdop7+7tHxxWjo7bJsk04y2WyER3I2q4FDFvoUDJu6nmVEWSd6Lx7czvPHFtRBI/4CTloaLDWAwEo2ilIBhRzNW09+iPw16l6tbcOcgq8QpShQLNXuUr6CcsUzxGJqkxvuemGOZUo2CST8tBZnhK2ZgOuW9pTBU3YT6/eUrOrdIng0TbipHM1d8TOVXGTFRkOxXFkVn2ZuJ/np/h4CbMRZxmyGO2WDTIJMGEzAIgfaE5QzmxhDIt7K2EjaimDG1MZRuCt/zyKmnXa95Vzbu/rDbqRRwlOIUzuAAPrqEBd9CEFjBI4Rle4c3JnBfn3flYtK45xcwJ/IHz+QNc35HZ</latexit>
-
Predictor m̂q [k]

I The problem with this is that quantization errors can build up


I This can lead to larger errors.
I We can do much better!
Differential PCM
However, we can do better with this encoder
<latexit sha1_base64="42gXfy6wP0BckHyvAUkhX/w8mgw=">AAAB63icbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWw2m3bp7ibsboQS+he8eFDEq3/Im//GTZuDtj4YeLw3w8y8MOVMG9f9diobm1vbO9Xd2t7+weFR/fikp5NMEdolCU/UIMSaciZp1zDD6SBVFIuQ0344vSv8/hNVmiXy0cxSGgg8lixmBJtCivxpMKo33Ka7AFonXkkaUKIzqn8No4RkgkpDONba99zUBDlWhhFO57VhpmmKyRSPqW+pxILqIF/cOkcXVolQnChb0qCF+nsix0LrmQhtp8Bmole9QvzP8zMT3wY5k2lmqCTLRXHGkUlQ8TiKmKLE8JklmChmb0VkghUmxsZTsyF4qy+vk16r6V03vYerRrtVxlGFMziHS/DgBtpwDx3oAoEJPMMrvDnCeXHenY9la8UpZ07hD5zPH+86jh8=</latexit>

<latexit sha1_base64="aO789MA/gNUEOlj3CoM5Fvh4NIc=">AAAB63icbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWy2m3bp7ibsboQS+he8eFDEq3/Im//GTZqDtj4YeLw3w8y8MOFMG9f9diobm1vbO9Xd2t7+weFR/fikp+NUEdolMY/VIMSaciZp1zDD6SBRFIuQ0344u8v9/hNVmsXy0cwTGgg8kSxiBJtcEv4sGNUbbtMtgNaJV5IGlOiM6l/DcUxSQaUhHGvte25iggwrwwini9ow1TTBZIYn1LdUYkF1kBW3LtCFVcYoipUtaVCh/p7IsNB6LkLbKbCZ6lUvF//z/NREt0HGZJIaKslyUZRyZGKUP47GTFFi+NwSTBSztyIyxQoTY+Op2RC81ZfXSa/V9K6b3sNVo90q46jCGZzDJXhwA224hw50gcAUnuEV3hzhvDjvzseyteKUM6fwB87nD/z5jig=</latexit>

m[k] + d[k] <latexit sha1_base64="U6P7OMGWLS7HVxin2mSblHvYpEw=">AAAB7XicbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWw2m3btZjfuboQS+h+8eFDEq//Hm//GbZuDtj4YeLw3w8y8MOVMG9f9dkpr6xubW+Xtys7u3v5B9fCoo2WmCG0TyaXqhVhTzgRtG2Y47aWK4iTktBuOb2Z+94kqzaS4N5OUBgkeChYzgo2VOtHg0R8Hg2rNrbtzoFXiFaQGBVqD6lc/kiRLqDCEY619z01NkGNlGOF0WulnmqaYjPGQ+pYKnFAd5PNrp+jMKhGKpbIlDJqrvydynGg9SULbmWAz0sveTPzP8zMTXwc5E2lmqCCLRXHGkZFo9jqKmKLE8IklmChmb0VkhBUmxgZUsSF4yy+vkk6j7l3WvbuLWrNRxFGGEziFc/DgCppwCy1oA4EHeIZXeHOk8+K8Ox+L1pJTzBzDHzifP3gFjwM=</latexit>

dq [k]
+ Quantizer
- + +
<latexit sha1_base64="S/MVswN104LVFyQ3bbijvXL0y5Q=">AAAB83icbVBNS8NAEJ34WetX1aOXxSJ4KkkR9Vjw4rGC/YAklM122y7dTeLuRCihf8OLB0W8+me8+W/ctjlo64OBx3szzMyLUikMuu63s7a+sbm1Xdop7+7tHxxWjo7bJsk04y2WyER3I2q4FDFvoUDJu6nmVEWSd6Lx7czvPHFtRBI/4CTloaLDWAwEo2ilIBhRzNW09+iPw16l6tbcOcgq8QpShQLNXuUr6CcsUzxGJqkxvuemGOZUo2CST8tBZnhK2ZgOuW9pTBU3YT6/eUrOrdIng0TbipHM1d8TOVXGTFRkOxXFkVn2ZuJ/np/h4CbMRZxmyGO2WDTIJMGEzAIgfaE5QzmxhDIt7K2EjaimDG1MZRuCt/zyKmnXa95Vzbu/rDbqRRwlOIUzuAAPrqEBd9CEFjBI4Rle4c3JnBfn3flYtK45xcwJ/IHz+QNc35HZ</latexit>
+
m̂q [k] <latexit sha1_base64="xsjev+pcrDIaa8pjijqUoS6f8a4=">AAAB7XicbVDLSgNBEOyNrxhfUY9eBoPgKewGUY8BLx4jmAdsljA7mU3GzGOdmRVCyD948aCIV//Hm3/jJNmDJhY0FFXddHfFKWfG+v63V1hb39jcKm6Xdnb39g/Kh0ctozJNaJMornQnxoZyJmnTMstpJ9UUi5jTdjy6mfntJ6oNU/LejlMaCTyQLGEEWye1RO8xHEW9csWv+nOgVRLkpAI5Gr3yV7evSCaotIRjY8LAT200wdoywum01M0MTTEZ4QENHZVYUBNN5tdO0ZlT+ihR2pW0aK7+nphgYcxYxK5TYDs0y95M/M8LM5tcRxMm08xSSRaLkowjq9DsddRnmhLLx45gopm7FZEh1phYF1DJhRAsv7xKWrVqcFkN7i4q9VoeRxFO4BTOIYArqMMtNKAJBB7gGV7hzVPei/fufSxaC14+cwx/4H3+AIXWjww=</latexit>

mq [k]
Predictor
Decoder
Encoder

I This uses the actual decoder to compute the prediction


I It computes the difference between the unquantized signal and the
quantized prediction.
Differential PCM
In the simplest case, the predictor is just the previous value of the signal

m̂[k] = m[k − 1]

This works pretty well, and can greatly improve the dynamic range. This is
called Delta Modulation, and we’ll come back to this shortly.
The next version uses a locally linear approximation using the first
difference as an approximation to the derivative

m̂[k] = m[k − 1] + (m[k − 1] − m[k − 2])

In general, for any expected signal spectra, we can solve for an FIR filter
N
X
m̂[k] = an m[k − n]
n=1

that minimizes the prediction error, and the amount of data we need to
transmit.
Adaptive Differential PCM (ADPCM)
I The DPCM signal will be much lower amplitude if it is a good model
I The number of quantization levels L is fixed
I ADPCM adaptively adjusts the channel gain, so that the quantization
levels best represent the signal.

The combination of DPCM and ADPCM can reduce the number of bits
required by a factor of two,
This can be used to reduce the bandwidth required by a factor of two, or
improve the SNR for a fixed bandwidth.
Delta Modulation
DPCM is much simpler if we just use the previous sample for the predictor.
The predictor is just a delay.
<latexit sha1_base64="42gXfy6wP0BckHyvAUkhX/w8mgw=">AAAB63icbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWw2m3bp7ibsboQS+he8eFDEq3/Im//GTZuDtj4YeLw3w8y8MOVMG9f9diobm1vbO9Xd2t7+weFR/fikp5NMEdolCU/UIMSaciZp1zDD6SBVFIuQ0344vSv8/hNVmiXy0cxSGgg8lixmBJtCivxpMKo33Ka7AFonXkkaUKIzqn8No4RkgkpDONba99zUBDlWhhFO57VhpmmKyRSPqW+pxILqIF/cOkcXVolQnChb0qCF+nsix0LrmQhtp8Bmole9QvzP8zMT3wY5k2lmqCTLRXHGkUlQ8TiKmKLE8JklmChmb0VkghUmxsZTsyF4qy+vk16r6V03vYerRrtVxlGFMziHS/DgBtpwDx3oAoEJPMMrvDnCeXHenY9la8UpZ07hD5zPH+86jh8=</latexit>

m[k] + d[k]
<latexit sha1_base64="U6P7OMGWLS7HVxin2mSblHvYpEw=">AAAB7XicbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWw2m3btZjfuboQS+h+8eFDEq//Hm//GbZuDtj4YeLw3w8y8MOVMG9f9dkpr6xubW+Xtys7u3v5B9fCoo2WmCG0TyaXqhVhTzgRtG2Y47aWK4iTktBuOb2Z+94kqzaS4N5OUBgkeChYzgo2VOtHg0R8Hg2rNrbtzoFXiFaQGBVqD6lc/kiRLqDCEY619z01NkGNlGOF0WulnmqaYjPGQ+pYKnFAd5PNrp+jMKhGKpbIlDJqrvydynGg9SULbmWAz0sveTPzP8zMTXwc5E2lmqCCLRXHGkZFo9jqKmKLE8IklmChmb0VkhBUmxgZUsSF4yy+vkk6j7l3WvbuLWrNRxFGGEziFc/DgCppwCy1oA4EHeIZXeHOk8+K8Ox+L1pJTzBzDHzifP3gFjwM=</latexit> <latexit sha1_base64="xsjev+pcrDIaa8pjijqUoS6f8a4=">AAAB7XicbVDLSgNBEOyNrxhfUY9eBoPgKewGUY8BLx4jmAdsljA7mU3GzGOdmRVCyD948aCIV//Hm3/jJNmDJhY0FFXddHfFKWfG+v63V1hb39jcKm6Xdnb39g/Kh0ctozJNaJMornQnxoZyJmnTMstpJ9UUi5jTdjy6mfntJ6oNU/LejlMaCTyQLGEEWye1RO8xHEW9csWv+nOgVRLkpAI5Gr3yV7evSCaotIRjY8LAT200wdoywum01M0MTTEZ4QENHZVYUBNN5tdO0ZlT+ihR2pW0aK7+nphgYcxYxK5TYDs0y95M/M8LM5tcRxMm08xSSRaLkowjq9DsddRnmhLLx45gopm7FZEh1phYF1DJhRAsv7xKWrVqcFkN7i4q9VoeRxFO4BTOIYArqMMtNKAJBB7gGV7hzVPei/fufSxaC14+cwx/4H3+AIXWjww=</latexit>

dq [k] + mq [k]
<latexit sha1_base64="aO789MA/gNUEOlj3CoM5Fvh4NIc=">AAAB63icbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWy2m3bp7ibsboQS+he8eFDEq3/Im//GTZqDtj4YeLw3w8y8MOFMG9f9diobm1vbO9Xd2t7+weFR/fikp+NUEdolMY/VIMSaciZp1zDD6SBRFIuQ0344u8v9/hNVmsXy0cwTGgg8kSxiBJtcEv4sGNUbbtMtgNaJV5IGlOiM6l/DcUxSQaUhHGvte25iggwrwwini9ow1TTBZIYn1LdUYkF1kBW3LtCFVcYoipUtaVCh/p7IsNB6LkLbKbCZ6lUvF//z/NREt0HGZJIaKslyUZRyZGKUP47GTFFi+NwSTBSztyIyxQoTY+Op2RC81ZfXSa/V9K6b3sNVo90q46jCGZzDJXhwA224hw50gcAUnuEV3hzhvDjvzseyteKUM6fwB87nD/z5jig=</latexit> <latexit sha1_base64="U6P7OMGWLS7HVxin2mSblHvYpEw=">AAAB7XicbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWw2m3btZjfuboQS+h+8eFDEq//Hm//GbZuDtj4YeLw3w8y8MOVMG9f9dkpr6xubW+Xtys7u3v5B9fCoo2WmCG0TyaXqhVhTzgRtG2Y47aWK4iTktBuOb2Z+94kqzaS4N5OUBgkeChYzgo2VOtHg0R8Hg2rNrbtzoFXiFaQGBVqD6lc/kiRLqDCEY619z01NkGNlGOF0WulnmqaYjPGQ+pYKnFAd5PNrp+jMKhGKpbIlDJqrvydynGg9SULbmWAz0sveTPzP8zMTXwc5E2lmqCCLRXHGkZFo9jqKmKLE8IklmChmb0VkhBUmxgZUsSF4yy+vkk6j7l3WvbuLWrNRxFGGEziFc/DgCppwCy1oA4EHeIZXeHOk8+K8Ox+L1pJTzBzDHzifP3gFjwM=</latexit>

dq [k]
+ Quantizer +
- + + +
+ Delay
<latexit sha1_base64="/WILumvugzsGT3HCiU0k4YpleJM=">AAAB73icbVBNSwMxEJ2tX7V+VT16CRbBi2W3FPVY8OKxgv2A7VKyabYNTbLbJCuUpX/CiwdFvPp3vPlvTNs9aOuDgcd7M8zMCxPOtHHdb6ewsbm1vVPcLe3tHxwelY9P2jpOFaEtEvNYdUOsKWeStgwznHYTRbEIOe2E47u533miSrNYPpppQgOBh5JFjGBjpa7oT/zxlRf0yxW36i6A1omXkwrkaPbLX71BTFJBpSEca+17bmKCDCvDCKezUi/VNMFkjIfUt1RiQXWQLe6doQurDFAUK1vSoIX6eyLDQuupCG2nwGakV725+J/npya6DTImk9RQSZaLopQjE6P582jAFCWGTy3BRDF7KyIjrDAxNqKSDcFbfXmdtGtV77rqPdQrjVoeRxHO4BwuwYMbaMA9NKEFBDg8wyu8ORPnxXl3PpatBSefOYU/cD5/AGLMj34=</latexit>

<latexit sha1_base64="xsjev+pcrDIaa8pjijqUoS6f8a4=">AAAB7XicbVDLSgNBEOyNrxhfUY9eBoPgKewGUY8BLx4jmAdsljA7mU3GzGOdmRVCyD948aCIV//Hm3/jJNmDJhY0FFXddHfFKWfG+v63V1hb39jcKm6Xdnb39g/Kh0ctozJNaJMornQnxoZyJmnTMstpJ9UUi5jTdjy6mfntJ6oNU/LejlMaCTyQLGEEWye1RO8xHEW9csWv+nOgVRLkpAI5Gr3yV7evSCaotIRjY8LAT200wdoywum01M0MTTEZ4QENHZVYUBNN5tdO0ZlT+ihR2pW0aK7+nphgYcxYxK5TYDs0y95M/M8LM5tcRxMm08xSSRaLkowjq9DsddRnmhLLx45gopm7FZEh1phYF1DJhRAsv7xKWrVqcFkN7i4q9VoeRxFO4BTOIYArqMMtNKAJBB7gGV7hzVPei/fufSxaC14+cwx/4H3+AIXWjww=</latexit>

mq [k] mq [k 1]
Delay Decoder
<latexit sha1_base64="/WILumvugzsGT3HCiU0k4YpleJM=">AAAB73icbVBNSwMxEJ2tX7V+VT16CRbBi2W3FPVY8OKxgv2A7VKyabYNTbLbJCuUpX/CiwdFvPp3vPlvTNs9aOuDgcd7M8zMCxPOtHHdb6ewsbm1vVPcLe3tHxwelY9P2jpOFaEtEvNYdUOsKWeStgwznHYTRbEIOe2E47u533miSrNYPpppQgOBh5JFjGBjpa7oT/zxlRf0yxW36i6A1omXkwrkaPbLX71BTFJBpSEca+17bmKCDCvDCKezUi/VNMFkjIfUt1RiQXWQLe6doQurDFAUK1vSoIX6eyLDQuupCG2nwGakV725+J/npya6DTImk9RQSZaLopQjE6P582jAFCWGTy3BRDF7KyIjrDAxNqKSDcFbfXmdtGtV77rqPdQrjVoeRxHO4BwuwYMbaMA9NKEFBDg8wyu8ORPnxXl3PpatBSefOYU/cD5/AGLMj34=</latexit>

mq [k 1] Decoder
Encoder

We can make up for the simple predictor by increasing the sampling rate.
This increases the similarity between adjacent samples, and reduces the
number of bits we need for dq [k].
Sigma-Delta Modulation
If the predictor for DPCM is sufficiently accurate, we only need one bit for
the error.

The waveform we need to transmit 0, 1, and -1,

I The output waveform is simple the sum of the transmitted errors.


Fidelity is limited by the derivative of the signal.
I We can improve fidelity with faster sampling rate, so that adjacent
samples are highly correlated.
I Typical numbers might be 8 times the Nyquist rate, or more.
Sigma-Delta Modulation
The encoder and decoder are particularly simple
Comparitor <latexit sha1_base64="U6P7OMGWLS7HVxin2mSblHvYpEw=">AAAB7XicbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWw2m3btZjfuboQS+h+8eFDEq//Hm//GbZuDtj4YeLw3w8y8MOVMG9f9dkpr6xubW+Xtys7u3v5B9fCoo2WmCG0TyaXqhVhTzgRtG2Y47aWK4iTktBuOb2Z+94kqzaS4N5OUBgkeChYzgo2VOtHg0R8Hg2rNrbtzoFXiFaQGBVqD6lc/kiRLqDCEY619z01NkGNlGOF0WulnmqaYjPGQ+pYKnFAd5PNrp+jMKhGKpbIlDJqrvydynGg9SULbmWAz0sveTPzP8zMTXwc5E2lmqCCLRXHGkZFo9jqKmKLE8IklmChmb0VkhBUmxgZUsSF4yy+vkk6j7l3WvbuLWrNRxFGGEziFc/DgCppwCy1oA4EHeIZXeHOk8+K8Ox+L1pJTzBzDHzifP3gFjwM=</latexit>

dq [k]
<latexit sha1_base64="6m8YMn19bqsnU+S1OVeXxpJLPws=">AAAB63icbVBNS8NAEJ3Ur1q/qh69BItQLyUpoh4LXjxWsB/QhrLZbtqlu5uwOxFK6V/w4kERr/4hb/4bN20O2vpg4PHeDDPzwkRwg5737RQ2Nre2d4q7pb39g8Oj8vFJ28SppqxFYxHrbkgME1yxFnIUrJtoRmQoWCec3GV+54lpw2P1iNOEBZKMFI84JZhJsoqXg3LFq3kLuOvEz0kFcjQH5a/+MKapZAqpIMb0fC/BYEY0cirYvNRPDUsInZAR61mqiGQmmC1unbsXVhm6UaxtKXQX6u+JGZHGTGVoOyXBsVn1MvE/r5didBvMuEpSZIouF0WpcDF2s8fdIdeMophaQqjm9laXjokmFG08JRuCv/ryOmnXa/51zX+4qjTqeRxFOINzqIIPN9CAe2hCCyiM4Rle4c2Rzovz7nwsWwtOPnMKf+B8/gBuJI3K</latexit> <latexit sha1_base64="U6P7OMGWLS7HVxin2mSblHvYpEw=">AAAB7XicbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWw2m3btZjfuboQS+h+8eFDEq//Hm//GbZuDtj4YeLw3w8y8MOVMG9f9dkpr6xubW+Xtys7u3v5B9fCoo2WmCG0TyaXqhVhTzgRtG2Y47aWK4iTktBuOb2Z+94kqzaS4N5OUBgkeChYzgo2VOtHg0R8Hg2rNrbtzoFXiFaQGBVqD6lc/kiRLqDCEY619z01NkGNlGOF0WulnmqaYjPGQ+pYKnFAd5PNrp+jMKhGKpbIlDJqrvydynGg9SULbmWAz0sveTPzP8zMTXwc5E2lmqCCLRXHGkZFo9jqKmKLE8IklmChmb0VkhBUmxgZUsSF4yy+vkk6j7l3WvbuLWrNRxFGGEziFc/DgCppwCy1oA4EHeIZXeHOk8+K8Ox+L1pJTzBzDHzifP3gFjwM=</latexit> <latexit sha1_base64="6m8YMn19bqsnU+S1OVeXxpJLPws=">AAAB63icbVBNS8NAEJ3Ur1q/qh69BItQLyUpoh4LXjxWsB/QhrLZbtqlu5uwOxFK6V/w4kERr/4hb/4bN20O2vpg4PHeDDPzwkRwg5737RQ2Nre2d4q7pb39g8Oj8vFJ28SppqxFYxHrbkgME1yxFnIUrJtoRmQoWCec3GV+54lpw2P1iNOEBZKMFI84JZhJsoqXg3LFq3kLuOvEz0kFcjQH5a/+MKapZAqpIMb0fC/BYEY0cirYvNRPDUsInZAR61mqiGQmmC1unbsXVhm6UaxtKXQX6u+JGZHGTGVoOyXBsVn1MvE/r5didBvMuEpSZIouF0WpcDF2s8fdIdeMophaQqjm9laXjokmFG08JRuCv/ryOmnXa/51zX+4qjTqeRxFOINzqIIPN9CAe2hCCyiM4Rle4c2Rzovz7nwsWwtOPnMKf+B8/gBuJI3K</latexit>

m(t) + dq [k] Z
<latexit sha1_base64="7NdMPQf+GAXXprThKTCO0/1zsD4=">AAAB63icbVA9SwNBEJ2LXzF+RS1tFoNgFe5E1DJgYxnBxEByhL3NJlmyu3fszgnhyF+wsVDE1j9k579xL7lCEx8MPN6bYWZelEhh0fe/vdLa+sbmVnm7srO7t39QPTxq2zg1jLdYLGPTiajlUmjeQoGSdxLDqYokf4wmt7n/+MSNFbF+wGnCQ0VHWgwFo5hLPaGxX635dX8OskqCgtSgQLNf/eoNYpYqrpFJam038BMMM2pQMMlnlV5qeULZhI5411FNFbdhNr91Rs6cMiDD2LjSSObq74mMKmunKnKdiuLYLnu5+J/XTXF4E2ZCJylyzRaLhqkkGJP8cTIQhjOUU0coM8LdStiYGsrQxVNxIQTLL6+S9kU9uKoH95e1hl/EUYYTOIVzCOAaGnAHTWgBgzE8wyu8ecp78d69j0VryStmjuEPvM8fHzaOPQ==</latexit>
<latexit sha1_base64="hmjPiQR80jOscEOHjtiUlQIphuw=">AAAB83icbVBNS8NAEJ3Ur1q/qh69LBahXkpSRD0WvHisYFuhCWWz3bZLd5O4OxFK6N/w4kERr/4Zb/4bt20O2vpg4PHeDDPzwkQKg6777RTW1jc2t4rbpZ3dvf2D8uFR28SpZrzFYhnrh5AaLkXEWyhQ8odEc6pCyTvh+Gbmd564NiKO7nGS8EDRYSQGglG0ku+PKGZq2nus4nmvXHFr7hxklXg5qUCOZq/85fdjlioeIZPUmK7nJhhkVKNgkk9Lfmp4QtmYDnnX0ogqboJsfvOUnFmlTwaxthUhmau/JzKqjJmo0HYqiiOz7M3E/7xuioPrIBNRkiKP2GLRIJUEYzILgPSF5gzlxBLKtLC3EjaimjK0MZVsCN7yy6ukXa95lzXv7qLSqOdxFOEETqEKHlxBA26hCS1gkMAzvMKbkzovzrvzsWgtOPnMMfyB8/kDzfuRew==</latexit>

m̂q (t) m(t)


+
+ Z
<latexit sha1_base64="U6P7OMGWLS7HVxin2mSblHvYpEw=">AAAB7XicbVBNS8NAEJ3Ur1q/qh69LBbBU0mKqMeCF48V7AekoWw2m3btZjfuboQS+h+8eFDEq//Hm//GbZuDtj4YeLw3w8y8MOVMG9f9dkpr6xubW+Xtys7u3v5B9fCoo2WmCG0TyaXqhVhTzgRtG2Y47aWK4iTktBuOb2Z+94kqzaS4N5OUBgkeChYzgo2VOtHg0R8Hg2rNrbtzoFXiFaQGBVqD6lc/kiRLqDCEY619z01NkGNlGOF0WulnmqaYjPGQ+pYKnFAd5PNrp+jMKhGKpbIlDJqrvydynGg9SULbmWAz0sveTPzP8zMTXwc5E2lmqCCLRXHGkZFo9jqKmKLE8IklmChmb0VkhBUmxgZUsSF4yy+vkk6j7l3WvbuLWrNRxFGGEziFc/DgCppwCy1oA4EHeIZXeHOk8+K8Ox+L1pJTzBzDHzifP3gFjwM=</latexit>

<latexit sha1_base64="7NdMPQf+GAXXprThKTCO0/1zsD4=">AAAB63icbVA9SwNBEJ2LXzF+RS1tFoNgFe5E1DJgYxnBxEByhL3NJlmyu3fszgnhyF+wsVDE1j9k579xL7lCEx8MPN6bYWZelEhh0fe/vdLa+sbmVnm7srO7t39QPTxq2zg1jLdYLGPTiajlUmjeQoGSdxLDqYokf4wmt7n/+MSNFbF+wGnCQ0VHWgwFo5hLPaGxX635dX8OskqCgtSgQLNf/eoNYpYqrpFJam038BMMM2pQMMlnlV5qeULZhI5411FNFbdhNr91Rs6cMiDD2LjSSObq74mMKmunKnKdiuLYLnu5+J/XTXF4E2ZCJylyzRaLhqkkGJP8cTIQhjOUU0coM8LdStiYGsrQxVNxIQTLL6+S9kU9uKoH95e1hl/EUYYTOIVzCOAaGnAHTWgBgzE8wyu8ecp78d69j0VryStmjuEPvM8fHzaOPQ==</latexit>

dq [k]
<latexit sha1_base64="x4X3d7kP2qj/aVawHPK9MnAyHpc=">AAAB8XicbVBNS8NAEJ3Ur1q/qh69LBahXkpSRD0WvHisYFuxDWWz3bRLN5uwOxFK6L/w4kERr/4bb/4bt20O2vpg4PHeDDPzgkQKg6777RTW1jc2t4rbpZ3dvf2D8uFR28SpZrzFYhnrh4AaLoXiLRQo+UOiOY0CyTvB+Gbmd564NiJW9zhJuB/RoRKhYBSt9NgbUcyiaRXP++WKW3PnIKvEy0kFcjT75a/eIGZpxBUySY3pem6CfkY1Cib5tNRLDU8oG9Mh71qqaMSNn80vnpIzqwxIGGtbCslc/T2R0ciYSRTYzojiyCx7M/E/r5tieO1nQiUpcsUWi8JUEozJ7H0yEJozlBNLKNPC3krYiGrK0IZUsiF4yy+vkna95l3WvLuLSqOex1GEEziFKnhwBQ24hSa0gIGCZ3iFN8c4L86787FoLTj5zDH8gfP5Az/zkJc=</latexit>
Integrator Lowpass
m̂(t)
Encoder Integrator Decoder

I Result can be very high fidelity if the sampling rate is high enough
I Widely used in consumer electronics, and elsewhere
I This is why you see ”1 bit A/D” stickers on products, and it is actually a
good thing.
I Similar number of bits per second, but much simpler hardware
PCM Extensions
I PCM does not efficiently use the signal bandwidth or quantization levels.
I DPCM exploits the redundancies in the signal to reduce the amount of
information that needs to be transmitted
I ADPCM adjusts the quantization level to best use the quantizer
dynamic range.
I If the sampling time is fast enough, the ADPCM signal is only ± one bit.
This reduces to the very simple sigma-delta modulation,
I More detailed models of the vocal tract (vocoders) further reduce the
amount of data we need to transmit. These currently used in every cell
phone and digital radio today.
Next Time
I Friday : On-Off Keying Packet Decoding for ADSB
I Monday : Line Coding

You might also like