Page 265 - Anatomy of a Robot
P. 265
09_200256_CH09/Bergren 4/17/03 11:24 AM Page 250
250 CHAPTER NINE
The compressed signal is sent into an RS encoder that adds check-
RS encoder
sum data as discussed previously.
Interleaver An interleaver is a data shuffler that takes adjacent bytes and sepa-
rates them. It does not expand the data block it receives, but it rearranges the order
of the bytes in the data block. The goal of an interleaver is to arrange the data so
the deinterleaver can separate adjacent errors, making them stand alone. We’ll see
how that works later.
Convolutional codes The convolutional encoder effectively adds extra data to
each data symbol. A couple of different types of convolutional codes exist, the
most popular of which are Viterbi and Turbo codes. These codes tend to expand
the data more than the RS encoding does, except the data is added almost byte by
byte. We’ll discuss these codes shortly.
Modulator As discussed previously, the data modulator alters carrier wave-
forms according to the data transmitted. Even after the data is modulated once,
the resulting waveform may be modulated a second time to step it up in frequency
for specific communication frequency bands.
Channel The data communications channel is taken to be a standard commu-
nications link (such as a satellite link) with errors added as the result of interfer-
ence and noise.
Demodulator A demodulator basically has the reverse function of a modulator.
Often, the frequency will be stepped back down once with a first demodulator
stage. The data will then be separated from the carrier wave in the final demodu-
lation step. The demodulator data output should be identical to the modulator’s
data input, save for the errors introduced by the channel noise.
Convolutional decoder The convolutional decoder effectively strips off the
extra data the convolutional encoder added to each data symbol. The decoder must
match the convolutional encoder. The output of the decoder should be identical to
the input to the convolutional encoder, save for the errors introduced by the chan-
nel noise.
Deinterleaver The deinterleaver is a data shuffler that takes adjacent bytes and
separates them. It does not expand the data block it receives, but it rearranges the
order of the bytes in the data block. The goal of a deinterleaver is to separate adja-
cent errors (bursts of errors) coming out of the decoder. This makes each bit error
stand alone. We’ll see how that works later.
RS decoder The RS decoder, as discussed previously, strips off the checksum
data and corrects errors as discussed previously. The output of the RS decoder,
assuming all channel errors are corrected, is identical to the data output from the
MPEG compressor.