Chapter 4 Digital Transmission
4.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 4-1 DIGITAL-TO-DIGITAL CONVERSION
In this section, we see how we can represent digital data by using digital signals. The conversion involves three techniques: line coding, block coding, and scrambling. Line coding is always needed; block coding and scrambling may or may not be needed.
Topics discussed in this section: Line Coding Line Coding Schemes Block Coding Scrambling
4.2 Line Coding
Line coding is the process of converting digital data to digital signals
At the sender, data elements are encoded into signal elements
At the receiver, signal elements are decoded into data elements
4.3 Figure 4.1 Line coding and decoding
4.4 Characteristics of line coding
Data Element vs. Signal Element
Data Rate vs. Signal Rate
Bandwidth
Baseline Wandering
DC Components
Self-Synchronization
Built-in Error Detection
Immunity to noise and interference
Complexity 4.5 Signal Elements vs. Data Elements
A data element is the smallest entity that can represent a piece of information (a bit) A signal element is the shortest unit in time of a digital signal (a baud) Data elements are what we need to send Signals elements are what we can send The ratio, r, is defined as the number of data elements carried by each signal element
4.6 Figure 4.2 Signal element versus data element
4.7 Data Rate vs. Signal Rate
The data rate (or bit rate), N, is the number of data elements (bits) sent in one second The signal rate (or baud rate or pulse rate or modulation rate), S, is the number of signal elements (bauds) sent in one second The goal is to increase the data rate (and hence the speed of transmission) while decreasing the signal rate (and hence the required bandwidth)
Where c is the case factor that depends on the case
4.8 Example 4.1
A signal is carrying data in which one data element is encoded as one signal element (r = 1). If the bit rate is 100 kbps, what is the average value of the baud rate if c is between 0 and 1?
Solution We assume that the average value of c is 1/2 . The baud rate is then
4.9 The Bandwidth
As learned previously, a digital signal that carries information is nonperiodic and its bandwidth is continuous and infinite
Also, many of its components have very small amplitude that can be ignored
Therefore, the “effective bandwidth” of the real- life digital signal is finite
The bandwidth is proportional to the signal rate 1 Given N: B = c × N × min r 1 Given B: N = × B × r max c 4.10 Example 4.2
The maximum data rate of a channel (see Chapter 3) is
Nmax = 2 × B × log2 L (defined by the Nyquist formula). Does this agree with the previous formula for Nmax?
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.11 Note
Although the actual bandwidth of a digital signal is infinite, the effective bandwidth is finite.
4.12 Baseline Wandering
While decoding the received signal, the receiver, calculates the running average of the received signal power, called the “baseline” The incoming signal power is evaluated against the baseline in order to determine the value of the data element Long strings of 0’s or 1’s can cause a drift of the baseline, called “baseline wandering”, which makes it hard for the receiver to correctly decode the signal A good line coding scheme should prevent baseline wandering
4.13 DC Components
Long constant voltage levels (DC) in digital signals create low-frequency components
DC components are mostly filtered out in systems that can’t pass low frequencies
A good line coding scheme should have no DC components
4.14 Self-synchronization
The sender and receiver must be exactly synchronized in order for the received signals to be interpreted correctly Bit duration, the start, and the end of the bits should be exactly identified by the receiver If the sender and the receiver are running at different clock rates, the bit intervals will not match and the receiver may misinterpret the signals A good “self-synchronized” line coding scheme should keep the receiver well-synchronized
4.15 Figure 4.3 Effect of lack of synchronization
4.16 Example 4.3
In a digital transmission, the receiver clock is 0.1 percent faster than the sender clock. How many extra bits per second does the receiver receive if the data rate is 1 kbps? How many if the data rate is 1 Mbps? Solution At 1 kbps, the receiver receives 1001 bps instead of 1000 bps.
At 1 Mbps, the receiver receives 1,001,000 bps instead of 1,000,000 bps.
4.17 Figure 4.4 Line coding schemes
4.18 Figure 4.5 Unipolar NRZ (Non-Return to Zero) scheme
Unipolar: All signal levels at one side of the time axis
NRZ since the signal does not return to zero in the middle of the bit
Relatively very costly scheme in terms of normalized power
Hence, not a popular scheme nowadays
4.19 Figure 4.6 Polar NRZ-L (NRZ-Level) and NRZ-I (NRZ-Invert) schemes
Polar: The signal levels are on both sides of the time axis
NRZ-L: the voltage level determines the value of the bit
NRZ-I: the change or lack of change determines the value
Baseline Wandering and Synchronization problems: in both, but twice as severe in NRZ-L
Both have the DC Component problem 4.20 Note
NRZ-L and NRZ-I both have an average signal rate of N/2 Bd.
4.21 Note
NRZ-L and NRZ-I both have a DC component problem.
4.22 Example 4.4
A system is using NRZ-I to transfer 1 Mbps data. What are the average signal rate and minimum bandwidth?
Solution The average signal rate is S = N/2 = 500 kbaud. The minimum bandwidth for this average baud rate is Bmin = S = 500 kHz.
4.23 Figure 4.7 Polar RZ (Return-to-Zero) scheme
RZ: the signal changes at the beginning and in middle of bit
Solves the synchronization problem in NRZ schemes
No DC Component problem
Needs two signal levels to encode a bit more bandwidth
Uses 3 signal levels more complex
Not a popular scheme 4.24 Figure 4.8 Polar biphase: Manchester and differential Manchester schemes
Overcome the problems of NRZ-L & NRZ-I
The cost is doubling the signal rate and hence the minimum bandwidth
4.25 Note
In Manchester and differential Manchester encoding, the transition at the middle of the bit is used for synchronization.
4.26 Note
The minimum bandwidth of Manchester and differential Manchester is 2 times that of NRZ.
4.27 Note
In bipolar encoding, we use three levels: positive, zero, and negative.
4.28 Figure 4.9 Bipolar schemes: AMI and pseudoternary
AMI (Alternate Mark Inversion) = Alternate 1 Inversion
AMI: 0 = zero volt, 1 = alternating positive and negative
Pseudoternary: 1 = zero volt, 0 = alter. pos. and neg.
No DC component. Why?
What about synchronization? 4.29 Multi-Level Line Encoding Schemes (mBnL)
The goal is to increase the number of bits per baud by encoding a pattern of m DE’s into a pattern of n SE’s m Binary data elements 2 data patterns n L signal levels L signal patterns m n If 2 = L each data pattern has a signal pattern m n If 2 < L data patterns form a subset of the signal patterns Extra signal patterns can be used for better synch. and error detection m n If 2 > L not enough signal patterns (not allowed) mBnL Binary patterns of length m, signal patterns of length n with L signal levels L can be replaced by: B (Binary) L=2 (e.g.; 2B2B) T (Ternary) L=3 (e.g.; 8B6T) Q (Quaternary) L=4 (e.g.; 2B1Q)
4.30 Note
In mBnL schemes, a pattern of m data elements is encoded as a pattern of n signal elements in which 2m ≤ Ln.
4.31 Figure 4.10 Multilevel: 2B1Q (2 Binary 1 Quaternary) scheme
2
Faster data rate. Why? 2 1 L = 4 complex receiver & 2 = 4 no extra signal patterns
What about the DC Comp.? Not balanced (scrambling used to help)
What about synchronization and baseline wandering? (same) 4.32 Figure 4.11 Multilevel: 8B6T (Eight Binary 6 Ternary) scheme
6 8 3 - 2 = 473 extra signal patterns good synchronization and error detection
Each pattern has a weight of either 0 or +1 DC values
If two consecutive patterns with +1 weight, the sender inverts the second pattern. Why?
How does the receiver recognize the inverted pattern?
Savg = ½ x N x 6/8 = 3N/8
4.33 Figure 4.12 Multilevel: 4D-PAM5 scheme
4-dimentional five-level pulse amplitude modulation
Level-0 is only used for error-correction
Equivalent to 8B4Q scheme with Smax = N x 4/8 = N/2 Four signal are sent simultaneously over four different wires
Smax = N/8 Used in Gigabit LANs over 4 copper cables 4.34 Figure 4.13 Multi-transition: MLT-3 scheme
If next bit is 0 no transition (problematic long string of 0’s)
If next bit is 1 and current level is not zero next level is 0
If next bit is 1 and current level is zero alternate the nonzero level
The worst case is a periodic signal with period of 4/N
Smax = N/4 4.35 Tab le 4.1 Summary of line coding schemes
4.36 Block Coding
The process of stuffing the bit stream with redundant bits in order to:
Ensure synchronization
Detect errors
The bit stream is divided into groups of m bits (called blocks)
Each group is substituted with a different (usually larger) group of n bits (a code)
This is referred to as mB/nB coding
4.37 Note
Block coding is normally referred to as mB/nB coding; it replaces each m-bit group with an n-bit group.
4.38 Steps in Block Coding Transformation
Step 1: Division
The bit stream is divided into groups of m bits Step 2: Substitution
The m-bit groups are substituted with n-bit codes, where n>m
A number of n-bit codes are carefully chosen to ensure that the synchronization and error detection are achieved
Notice that at most only one half of the n-bit codes are needed. Why? Step 4: Combination
The n-bit groups are combined together to form a new bit stream Step 3: Line Coding
A simple line coding scheme is used to convert the new bit stream into signals
No need for a complex line coding scheme since block coding ensures at least the synchronization
4.39 Figure 4.14 Block coding concept
4.40 Common Block Codes
4B/5B Code Every 4-bit block of data is substituted with a 5-bit codes The 5-bit codes are line encoded with NRZ-I Each code has no more than one leading 0 and no more than two trailing 0’s (i.e.; no more than 3 consecutive 0’s will ever be transmitted) What about consecutive 1’s? Why is it not handled? 20% more bauds on NRZ-I due to using redundant bits Unused codes provide a kind of error detection. How? What about the DC component problem with NRZ-I?
8B/10B Code Same as 4B/5B except for the number of bits substituted More codes are available for better error detection capability 4.41 Figure 4.15 Using block coding 4B/5B with NRZ-I line coding scheme
4.42 Figure 4.16 Substitution in 4B/5B block coding
4.43 Tab le 4.2 4B/5B mapping codes
4.44 Example 4.5
We need to send data at a 1-Mbps rate. What is the minimum required bandwidth, using a combination of 4B/5B and NRZ-I or Manchester coding?
Solution First 4B/5B block coding increases the bit rate to 1.25 Mbps. The minimum bandwidth using NRZ-I is N/2 or 625 kHz. The Manchester scheme needs a minimum bandwidth of 1 MHz. The first choice needs a lower bandwidth, but has a DC component problem; the second choice needs a higher bandwidth, but does not have a DC component problem. 4.45 Figure 4.17 8B/10B block encoding
It is a combination of 5B/6B and 3B/4B encoding for simpler mapping
The disparity controller is used prevent long consecutive 0’s or 1’s
If the bits in the current block creates a disparity that contributes to the previous disparity, the bits in the current block are complemented 10 8 The coding has 2 – 2 = 768 redundant code that can be used for disparity checking and error detection
4.46 4-2 ANALOG-TO-DIGITAL CONVERSION
We have seen in Chapter 3 that a digital signal is superior to an analog signal. 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.
Topics discussed in this section: Pulse Code Modulation (PCM) Delta Modulation (DM)
4.47 Figure 4.21 Components of PCM encoder
1. The analog signal is sampled 2. The sampled signal is quantized 3. The quantized values are encoded as streams of bits
4.48 Sampling: Definition and Background
Sampling is converting analog signals into digital by taking samples at certain uniform intervals called sampling interval (or sampling period), Ts The inverse of the sampling interval is called sampling rate (or sampling frequency), fs = 1/Ts Sampling is also called Pulse Amplitude Modulation (PAM) The idea started by telephone carriers to provide long distance services
The analog voice signal loses power on long distance cables and therefore require amplifiers
Amplifiers distort the signal due to their own frequency spectrum and phase changes and they also add noise
Since digital signals are more immune to noise and distortion, digitization is used
4.49 Figure 4.22 Three different sampling methods for PCM
4.50 Sampling Rate: Nyquist Theorem
Question: How many samples are needed to digitally reproduce the analog signal accurately?
Ideally, infinite number of samples
Nyquist Theorem: the sampling rate should be at least twice the highest frequency component in the original analog signal
4.51 Note
According to the Nyquist theorem, the sampling rate must be at least 2 times the highest frequency contained in the signal.
4.52 Figure 4.23 Nyquist sampling rate for low-pass and bandpass signals
4.53 Example 4.6
For an intuitive example of the Nyquist theorem, let us sample
a simple sine wave at three sampling rates: fs = 4f (2 times the Nyquist rate), fs=2f (Nyquist rate), and fs = 4f/3 (a little more than one-half the Nyquist rate). Figure 4.24 shows the sampling and the subsequent recovery of the signal.
It can be seen that sampling at the Nyquist rate can create a good approximation of the original sine wave (part a). Oversampling in part b can also create the same approximation, but it is redundant and unnecessary. Sampling below the Nyquist rate (part c) does not produce a signal that looks like the original sine wave.
4.54 Figure 4.24 Recovery of a sampled sine wave for different sampling rates
4.55 Example 4.9
Telephone companies digitize voice by assuming a maximum frequency of 4000 Hz. The sampling rate therefore is 8000 samples per second.
4.56 Example 4.10
A complex low-pass signal has a bandwidth of 200 kHz. What is the minimum sampling rate for this signal?
Solution The bandwidth of a low-pass signal is between 0 and f, where f is the maximum frequency in the signal. Therefore, we can sample this signal at 2 times the highest frequency (200 kHz). The sampling rate is therefore 400,000 samples per second.
4.57 Example 4.11
A complex bandpass signal has a bandwidth of 200 kHz. What is the minimum sampling rate for this signal?
Solution We cannot find the minimum sampling rate in this case because we do not know where the bandwidth starts or ends. We do not know the maximum frequency in the signal.
4.58 Quantization
Quantization: assigning values in a specific range of sampled instances Each value is translated into a binary equivalent number (i.e.; Binary Encoding) The binary digits are converted into digital signal using line coding Steps of quantization:
1. Assume that the analog signal ranges between Vmin and Vmax 2. Divide the range into L zones each of height (delta) V −V ∆ = max min L
3. Assign quantized values of 0 to L-1 to the midpoint of the zone
4. Approximate the sample amplitude to the quantized value
4.59 Figure 4.26 Quantization and encoding of a sampled signal
Vmin = -20 v
Vmax = +20 v L = 8 = 5 v
4.60 Quantization Levels and Error
The number of levels, L, depends on:
The amplitude range of the analog signal
The accuracy needed in recovering the signal Choosing low values of L may increase the quantization error if the signal changes a lot The quantization error for each sample is less than /2 (- /2 ≤ error ≤ /2)
The contribution of the quantization error to the SNRdB of the signal depends on L or nb (the number of bits per sample)
SNRdB = 6.02 nb + 1.76 dB
4.61 Example 4.12
What is the SNRdB in the example of Figure 4.26?
Solution We can use the formula to find the quantization. We have eight levels and 3 bits per sample, so
SNRdB = 6.02(3) + 1.76 = 19.82 dB
Increasing the number of levels increases the SNR. 4.62 Example 4.13
A telephone subscriber line must have an SNRdB above 40. What is the minimum number of bits per sample?
Solution We can calculate the number of bits as
Telephone companies usually assign 7 or 8 bits per sample.
4.63 PCM Bandwidth
Consider a low-pass analog signal
Bit Rate = Sampling Rate x bits per sample
= fs x nb
= 2 x Banalog x log2 L (Nyquist Data Rate)
Bmin = c x N x 1/r = c x fs x nb x 1/r
= c x 2 x Banalog x nb x 1/r When r=1 (for NRZ or Bipolar) and c=1/2,
Bmin = nb x Banalog 4.64 Example 4.14
We want to digitize the human voice. What is the bit rate, assuming 8 bits per sample?
Solution The human voice normally contains frequencies from 0 to 4000 Hz. So the sampling rate and bit rate are calculated as follows:
Sampling Rate = 4000 x 2 = 8000 samples per second Bit Rate = 8000 x 8 = 64,000 bps = 64 kbps
4.65 Example 4.15
We have a low-pass analog signal of 4 kHz. If we send the analog signal, we need a channel with a minimum bandwidth of 4 kHz. If we digitize the signal and send 8 bits per sample, we need a channel with a minimum bandwidth of 8 × 4 kHz = 32 kHz.
4.66 Figure 4.27 Components of a PCM decoder
4.67 Delta Modulation (DM)
PCM is a relatively complex A-to-D technique DM is a much simpler technique than PCM:
Finds the delta change of the current sample compared to the previous sample
If the current sample is larger, it sends a 1. Otherwise, it sends a 0
Figure 4.28 The process of delta modulation
4.68 Figure 4.29 Delta modulation components
4.69 Figure 4.30 Delta demodulation components
4.70 4-3 TRANSMISSION MODES
The transmission of binary data across a link can be accomplished in either parallel or serial mode. In parallel mode, multiple bits are sent with each clock tick. In serial mode, 1 bit is sent with each clock tick. While there is only one way to send parallel data, there are three subclasses of serial transmission: asynchronous, synchronous, and isochronous.
Topics discussed in this section: Parallel Transmission Serial Transmission
4.71 Figure 4.31 Data transmission and modes
4.72 Parallel Transmission
Principle: use n wires to send n bits simultaneously
Advantage: speed (n times faster than serial transmission)
Disadvantage: cost and complexity due to the extra wiring
Usually limited to short distances
Devices: older Centronics printers, internal data & address buses
Adapters: PIA (Par. Interface Adapter), PPI (Par. Peripheral. Interface)
Figure 4.32 Parallel transmission
4.73 Serial Transmission
Principle: use 1 wire to send 1 bit at a time
Advantage: cost and simplicity (almost a factor of n less than parallel)
Requires serial-to-parallel and parallel-to-serial conversion
Devices: Peripheral devices (e.g. mouse & keyboard), modems, etc.
Adapters: ACIA (Asynchronous Comm. Interface Adapter), UART (Universal Asynchronous Receiver Transmitter) Figure 4.33 Serial transmission
4.74 Asynchronous Serial Transmission
The information is received and translated by agreed-upon patterns
Usually, patterns are based on grouping the bits into bytes
The sender handles each group independently
Each group is sent whenever it is ready without regard to a timer
To alert the receiver to the arrival of a new group, a “start bit” (usually a 0 bit) is added to the beginning of the group
To let the receiver know that the byte has finished, 1 or more “stop bits” are appended to the end of the group
Each group may be followed by a gap of random duration
The gap can be an idle channel or a stream of stop bits
The start and stop bits allow the receiver to synchronize with the data stream within the group
“Asynchronous” means that the sender and receiver do not have to be synchronized at the group level, but at the bit level within the group
The receiver counts n bits after the start bit and looks for the stop bit
4.75 Note
In asynchronous transmission, we send 1 start bit (0) at the beginning and 1 or more stop bits (1s) at the end of each byte. There may be a gap between each byte.
4.76 Note
Asynchronous here means “asynchronous at the byte level,” but the bits are still synchronized; their durations are the same.
4.77 Figure 4.34 Asynchronous transmission
4.78 Synchronous Serial Transmission
The bit stream is combined into longer “frames”
Each frame may contain multiple bytes without gaps
Mainly, the data is sent as a continuous stream of bits
The receiver decides how to group them (e.g.; into bytes, characters, numbers, etc.) for decoding purposes
If the sender sends the data in bursts, the gap must be filled with a special sequence of 0’s & 1’s (i.e.; idle)
Without start and stop bits, the receiver can’t adjust its bit-level synchronization
Therefore, strict timing between the sender and the receiver is required in order to receive the bits correctly
The advantage of synchronous transmission is speed as there is no overhead of synchronization bits 4.79 Note
In synchronous transmission, we send bits one after another without start or stop bits or gaps. It is the responsibility of the receiver to group the bits.
4.80 Figure 4.35 Synchronous transmission
4.81 Isochronous Serial Transmission
Used for real-time applications, where:
The synchronization between characters or bytes is not enough but rather the synchronization of the entire stream
The delay between frames must be equal or none
The data is received at a fixed rate
Examples: real-time audio and video streaming
4.82