Data Communication Chapter-4 by Foruzan
Data Communication Chapter-4 by Foruzan
Digital Transmission
4.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
4-1 DIGITAL-TO-DIGITAL CONVERSION
4.3
Figure 4.1 Line coding and decoding
4.4
Relationship between
data rate and signal
rate
The data rate defines the number of
4.5
Figure 4.2 Signal element versus data element
4.6
Data rate and Baud
rate
Data Rate:
The number of bits(data elements) sent in 1s
The unit is bps
Signal Rate:
The number of bits(data elements) sent in 1s
The unit is baud
The baud or signal rate can be expressed as:
S = c x N x 1/r bauds
where N is data rate, c is the case factor (worst,
best & avg.)
r is the ratio between data element & signal element
4.7
Example 4.1
Solution
We assume that the average value of c
is 1/2 . The baud rate is then
4.8
Note
4.9
Example 4.2
Solution
A signal with L levels actually can
carry log2L bits per level. If each
level corresponds to one signal element
and we assume the average case (c =
1/2), then we have
4.10
Considerations for choosing
a good signal element
referred to as line
encoding
Baseline wandering - a receiver will
4.12
Line encoding C/Cs
Self synchronization - the
clocks at the sender and the
receiver must have the same
bit interval.
If the receiver clock is
faster or slower it will
misinterpret the incoming bit
stream.
4.13
Figure 4.3 Effect of lack of synchronization
4.14
Example 4.3
4.15
Line encoding C/Cs
Error detection - errors occur
during transmission due to line
impairments.
Some codes are constructed such
that when an error occurs it can be
detected. For example: a particular
signal transition is not part of
the code. When it occurs, the
receiver will know that a symbol
error has occurred.
4.16
Line encoding C/Cs
Noise and interference - there
are line encoding techniques
that make the transmitted
signal “immune” to noise and
interference.
This means that the signal
cannot be corrupted, it is
stronger than error detection.
4.17
Line encoding C/Cs
Complexity - the more robust
and resilient the code, the
more complex it is to
implement and the price is
often paid in baud rate or
required bandwidth.
4.18
Figure 4.4 Line coding schemes
4.19
Unipolar
All signal levels are on one side of
the time axis - either above or below
NRZ - Non Return to Zero scheme is an
example of this code. The signal
level does not return to zero during
a symbol transmission.
Scheme is prone to baseline wandering
and DC components. It has no
synchronization or any error
detection. It is simple but costly in
power consumption.
4.20
Figure 4.5 Unipolar NRZ scheme
4.21
Polar - NRZ
The voltages are on both sides of the
time axis.
Polar NRZ scheme can be implemented
with two voltages. E.g. +V for 1 and
-V for 0.
There are two versions:
NZR - Level (NRZ-L) - positive voltage
for one symbol and negative for the other
NRZ - Inversion (NRZ-I) - the change or
lack of change in polarity determines the
value of a symbol. E.g. a “1” symbol
inverts the polarity a “0” does not.
4.22
Figure 4.6 Polar NRZ-L and NRZ-I schemes
4.23
Note
4.24
Note
4.25
Note
4.26
Example 4.4
Solution
The average signal rate is S= c x N x R
= 1/2 x N x 1 = 500 kbaud. The minimum
bandwidth for this average baud rate is
Bmin = S = 500 kHz.
4.29
Polar - Biphase:
Manchester and
Differential
Manchester
Manchester coding consists
the NRZ-L and RZ schemes.
of combining
4.30
Figure 4.8 Polar biphase: Manchester and differential Manchester schemes
4.31
Note
4.32
Note
4.33
Bipolar - AMI and
Pseudoternary
Code uses 3 voltage levels: - +, 0,
-, to represent the symbols (note not
transitions to zero as in RZ).
Voltage level for one symbol is at
“0” and the other alternates between
+ & -.
Bipolar Alternate Mark Inversion
(AMI) - the “0” symbol is represented
by zero voltage and the “1” symbol
alternates between +V and -V.
Pseudoternary is the reverse of AMI.
4.34
Figure 4.9 Bipolar schemes: AMI and pseudoternary
4.35
Bipolar C/Cs
It is a better alternative to
NRZ.
Has no DC component or baseline
wandering.
Has no self synchronization
because long runs of “0”s results
in no signal transitions.
No error detection.
4.36
Multilevel Schemes
In these schemes we increase the
number of data bits per symbol
thereby increasing the bit rate.
Since we are dealing with binary data
we only have 2 types of data element
a 1 or a 0.
We can combine the 2 data elements
into a pattern of “m” elements to
create “2m” symbols.
If we have L signal levels, we can
use “n” signal elements to create Ln
signal elements.
4.37
Code C/Cs
Now we have 2m symbols and Ln signals.
If 2m > Ln then we cannot represent the
data elements, we don’t have enough
signals.
If 2m = Ln then we have an exact mapping
of one symbol on one signal.
If 2m < Ln then we have more signals than
symbols and we can choose the signals
that are more distinct to represent the
symbols and therefore have better noise
immunity and error detection as some
signals are not valid.
4.38
Note
4.39
Representing
Multilevel Codes
We use the notation mBnL, where
m is the length of the binary
pattern, B represents binary
data, n represents the length of
the signal pattern and L the
number of levels.
L = B binary, L = T for 3
ternary, L = Q for 4 quaternary.
4.40
Figure 4.10 Multilevel: 2B1Q scheme
4.41
Redundancy
In the 2B1Q scheme we have no redundancy
and we see that a DC component is
present.
If we use a code with redundancy we can
decide to use only “0” or “+” weighted
codes (more +’s than -’s in the signal
element) and invert any code that would
create a DC component. E.g. ‘+00++-’ ->
‘-00--+’
Receiver will know when it receives a “-”
weighted code that it should invert it as
it doesn’t represent any valid symbol.
4.42
Multitransition Coding
Because of synchronization requirements we
force transitions. This can result in very
high bandwidth requirements -> more
transitions than are bits (e.g. mid bit
transition with inversion).
Codes can be created that are differential
at the bit level forcing transitions at bit
boundaries. This results in a bandwidth
requirement that is equivalent to the bit
rate.
In some instances, the bandwidth requirement
may even be lower, due to repetitive
patterns resulting in a periodic signal.
4.43
Figure 4.13 Multitransition: MLT-3 scheme
4.44
MLT-3
Signal rate is same as NRZ-I
But because of the resulting
bit pattern, we have a
periodic signal for worst
case bit pattern: 1111
This can be approximated as
an analog signal a frequency
1/4 the bit rate!
4.45
Scrambling
The best code is one that does not
increase the bandwidth for
synchronization and has no DC components.
Scrambling is a technique used to create
a sequence of bits that has the required
c/c’s for transmission - self clocking,
no low frequencies, no wide bandwidth.
It is implemented at the same time as
encoding, the bit stream is created on
the fly.
It replaces ‘unfriendly’ runs of bits
with a violation code that is easy to
recognize and removes the unfriendly c/c.
4.46
Figure 4.18 AMI used with scrambling
4.47
For example: B8ZS substitutes eight
consecutive zeros with 000VB0VB.
The V stands for violation, it violates the
line encoding rule
B stands for bipolar, it implements the
bipolar line encoding rule
4.48
Figure 4.19 Two cases of B8ZS scrambling technique
4.49
HDB3 substitutes four consecutive
zeros with 000V or B00V depending
on the number of nonzero pulses after
the last substitution.
If # of non zero pulses is even the
substitution is B00V to make total # of
non zero pulse even.
If # of non zero pulses is odd the
substitution is 000V to make total # of
non zero pulses even.
4.50
Figure 4.20 Different situations in HDB3 scrambling technique
4.51