GH

Principles of Digital Data Transmission

Digital Communication Systems

  • By the end of 1990s, digital format was dominating.
  • Examples: CD, MP3, HDTV, DVD, Blu Ray, VoIP, 4k, 8k etc.
  • This chapter is concerned with transmitting digital data over a channel.
  • We begin with binary data, i.e., symbols 0 and 1.
  • We assign a waveform or pulse to each of the two symbols.
  • At the receiver, the received pulses are detected and converted back to binary data.

Digital Communication System Block Diagram

  • The diagram includes components like the message signal, baseband modulation, digital carrier, multiplexer, channel, and regenerative repeater.

Source

  • The input takes the form of a data set, digital audio (PCM, DM, LPC), digital video, telemetry data, etc.
  • Discussion is confined to binary data (two symbols).
  • M-ary communication (M symbols) is discussed in Section 7.7 in the textbook.

Line Coder

  • Converts digital input into electrical pulses or waveforms.
  • This process is called line coding or transmission coding.
  • There are many ways to encode binary data.

Types of Line Codes

  • Examples include on-off (RZ), polar (RZ), bipolar (RZ), on-off (NRZ), and polar (NRZ).

Multiplexer

  • Channels typically have much wider bandwidths than individual sources.
  • To utilize capacity effectively, multiplex several sources on one channel.
  • Digital multiplexing can be time division or frequency division multiplexing.
  • Code division multiplexing can also be used by using a set of orthogonal codes.

Regenerative Repeater

  • Spaced at regular intervals on a transmission line to detect incoming signals and generate “clean” pulses for further transmission.
  • This effectively eliminates noise.
  • The bit rate R_b needs to be estimated from the incoming signal.
  • Return to zero (RZ) line codes allow for the extraction of R_b (clock recovery) by rectifying the signal.
  • A line code is transparent in which the bit pattern does not affect timing accuracy (such as RZ).

RZ Clock Recovery

  • An on-off signal (a) is a sum of a random polar signal (b) and a clock frequency periodic signal (c).

Why Line Coding?

  • Transmission bandwidth as small as possible.
  • Power efficiency: For a given bandwidth, power must be as low as possible.
  • Error detection and correction capability: Some line codes allow for error detection.
  • PSD properties that fit channel: Some channels do not pass DC, and then DC-free codes are needed.

PAM Line Code

  • A generic pulse p(t) is considered, where P(f) is its Fourier transform.
  • The line code symbol at time k is ak starting at time t = kTb.
  • The k^{th} symbol is transmitted as akp(t - kTb).
  • The baseband signal in a pulse train is of the form y(t) = \sum akp(t - kTb).
  • The line coder determines the symbol set \left{ a_k \right}.
  • The values of a_k are random and depend on the line coder input.
  • y(t) is a pulse-amplitude-modulated (PAM) signal.
  • Sy(f) = |P(f)|^2 Sx(f)

PSD of a Line Code

  • On-off, polar, and bi-polar are special cases of PAM modulation, where a_k takes values 1, 0, and -1 randomly.
  • PSD of y(t) depends on a_k and p(t), so if the pulse shape changes, the PSD changes.
  • Can be overcome by having signal x(t) with Tb spaced impulses with area ak passed through a filter with impulse response p(t) and transfer function P(f): Sy(f) = |P(f)|^2 Sx(f).

PSD of a Line Code (Continued)

  • We need to determine the autocorrelation function R_x(\tau) of the impulse train x(t).
  • This can be achieved by considering the impulses as limiting forms of the rectangular function.
  • For a pulse width \epsilon \rightarrow 0, the pulse height is given by hk = \frac{ak}{\epsilon} \rightarrow \infty.
  • The strength or area of the k^{th} impulse is ak = \epsilon hk.
  • The autocorrelation of the rectangular pulse train \hat{x}(t) is given by R{\hat{x}}(\tau) = \lim{T \rightarrow \infty} \frac{1}{T} \int_{-T/2}^{T/2} \hat{x}(t)\hat{x}(t - \tau) dt.

PSD of a Line Code (Continued)

R{\hat{x}}(\tau) = \lim{T \rightarrow \infty} \frac{1}{T} \int_{-T/2}^{T/2} \hat{x}(t)\hat{x}(t - \tau) dt (1)

  • R_x(\tau) is an even function of \tau, as such we only consider \tau > 0.
  • To start, consider the case of \tau < \epsilon, where (1) is the area under the signal \hat{x}(t), multiplied by \hat{x}(t) delayed by \tau for \tau < \epsilon.
  • As can be seen, the area associated with the k^{th} pulse is (\epsilon - \tau)hk^2, where R{\hat{x}}(\tau < \epsilon) = \lim{T \rightarrow \infty} \frac{1}{T} \sumk (\epsilon - \tau)hk^2 = \lim{T \rightarrow \infty} \frac{1}{T} \sumk ak^2 \frac{(\epsilon - \tau)}{\epsilon^2} = \frac{R0}{\epsilon Tb} (1 - \frac{\tau}{\epsilon}),
    and R0 = \lim{T \rightarrow \infty} \frac{Tb}{T} \sumk a_k^2.

Line Code PSD Signals

  • Illustrations showing impulse trains and pulse shapes for autocorrelation calculations.

PSD of a Line Code (Continued)

  • Recall R0 = \lim{T \rightarrow \infty} \frac{Tb}{T} \sumk a_k^2.
  • During the averaging interval T where T \rightarrow \infty, there are N pulses where N \rightarrow \infty, where N = \frac{T}{T_b}.
  • Hence R0 = \lim{N \rightarrow \infty} \frac{1}{N} \sumk ak^2 = \langle ak^2 \rangle , where the summation is over N pulses; as such, R0 is the time average of the squared pulse amplitude.
  • Since Rx(\tau) is an even function, we have R{\hat{x}}(\tau) = \frac{R0}{\epsilon Tb} (1 - \frac{|\tau|}{\epsilon}) , |\tau| < \epsilon

PSD of a Line Code (Continued)

  • What happens for \tau > \epsilon?
  • The next overlap will happen at the (k + 1)^{th} pulse and \tau approaches T_b.
  • Repeating previous argument, we have R1 = \lim{T \rightarrow \infty} \frac{Tb}{T} \sumk aka{k+1} = \lim{N \rightarrow \infty} \frac{1}{N} \sumk aka{k+1} = \langle aka{k+1} \rangle .
  • For multiples of \pm nTb, we have that the height of the pulses centered \pm nTb is \frac{Rn}{(\epsilon Tb)}, where
    Rn = \lim{T \rightarrow \infty} \frac{Tb}{T} \sumk aka{k+n} = \lim{N \rightarrow \infty} \frac{1}{N} \sumk aka{k+n} = \langle aka{k+n} \rangle

Line Code PSD Signals

  • Illustrations detailing pulse amplitude and autocorrelation for calculating PSD.

PSD of a Line Code (Continued)

  • To find R_x(\tau), let \epsilon \rightarrow 0, and each triangular pulse becomes an impulse function with the same area as before.

  • The n^{th} pulse has height \frac{Rn}{(\epsilon Tb)} and area \frac{Rn}{Tb}.

  • Hence, from Fig 7.5e, we have Rx(\tau) = \frac{1}{Tb} \sum{n=-\infty}^{\infty} Rn \delta(\tau - nT_b).

  • Hence, the PSD Sx(f) is the Fourier transform of Rx(\tau), i.e.,

    Sx(f) = \frac{1}{Tb} \sum{n=-\infty}^{\infty} Rn e^{-jn2\pi fT_b}.

  • Recognising that R{-n} = Rn, because R_x(\tau) is an even function of \tau, we have

    Sx(f) = \frac{1}{Tb} \left[ R0 + 2 \sum{n=1}^{\infty} Rn \cos(n2\pi fTb) \right] (2)

PSD of a Line Code (Continued)

Finally! We can now determine the PSD of the line code as

Sy(f) = |P(f)|^2 Sx(f) = \frac{|P(f)|^2}{Tb} \left[ \sum{n=-\infty}^{\infty} Rn e^{-jn2\pi fTb} \right] = \frac{|P(f)|^2}{Tb} \left[ R0 + \sum{n=1}^{\infty} Rn \cos(n2\pi fTb) \right] Thus, the PSD of the line code is fully characterised by its Rn and the pulse shaping transfer function P(f).

Polar Signalling PSD

  • For a polar line code, R0 = 1 and Rn = 0 for n \ge 1 (see textbook for derivation). As such, Sy(f) = \frac{|P(f)|^2}{Tb} R0 = \frac{|P(f)|^2}{Tb}.

  • Assume rectangular pulses of width Tb/2, i.e. p(t) = \Pi \left( \frac{t}{Tb/2} \right) = \Pi \left( \frac{2t}{Tb} \right), and P(f) = \frac{Tb}{2} \text{sinc} \left( \frac{\pi fT_b}{2} \right).

  • Therefore, Sy(f) = \frac{Tb}{4} \text{sinc}^2 \left( \frac{\pi fT_b}{2} \right).

Polar Signalling PSD (Continued)

  • Clear that most power density situated at DC.

  • Essential bandwidth - first non-DC null (2R_b) Hz for polar line code.

  • This is 4x the theoretical bandwidth (Nyquist BW) required to transmit R_b pulses per second.

  • For a full-width pulse, the essential BW is still twice the theoretical BW.

Polar Signalling PSD (Continued)

  • Power density at DC is a problem for repeaters.
  • Polar signaling does not allow for error correction.
  • Polar signaling is the most efficient in terms of power (lowest detection error probability amongst all line codes ).
  • Polar signaling is transparent - except when using full-width pulses.

Constructing DC Null Using Pulse Shaping

  • Since Sy(f) = |P(f)|^2 Sx(f), we can select p(t) such that P(f) has a DC null.
  • Because P(f) = \int{-\infty}^{\infty} p(t)e^{-j2\pi ft} dt, we have P(0) = \int{-\infty}^{\infty} p(t) dt.
  • Hence, if a pulse p(t) integrates to zero, P(0) = 0.
  • Consider a Manchester code aka split-phase code aka twinned binary code.

DC-Free Manchester Code

  • Illustrations showing the basic pulse p(t) and the transmitted waveform for binary data sequence using Manchester signaling.

On-Off Signalling PSD

  • 1 - pulse transmitted, 0 - no pulse transmitted.

  • a_k assumed equally probable to be a 0 or 1.

  • Hence, R0 = \lim{N \rightarrow \infty} \frac{1}{N} \left[ \frac{N}{2}(1)^2 + \frac{N}{2}(0)^2 \right] = \frac{1}{2}.

  • To calculate Rn, we consider the product aka{k+n}, where both ak and a_{k+n} are equally probable to be a 0 or 1.

  • Therefore, the product aka{k+n} will be 1, one in four times and zero three in four times, i.e.

    Rn = \lim{N \rightarrow \infty} \frac{1}{N} \left[ \frac{N}{4}(1)^2 + \frac{3N}{4}(0)^2 \right] = \frac{1}{4}, n \ge 1.

  • Using the calculated values for Rn, Sx(f) can be obtained:

    Sx(f) = \frac{1}{4Tb} + \frac{1}{4Tb^2} \sum{n=-\infty}^{\infty} e^{-jn2\pi fTb} = \frac{1}{4Tb} + \frac{1}{4Tb^2} \sum{n=-\infty}^{\infty} \delta \left( f - \frac{n}{T_b} \right).

On-Off Signalling PSD (2)

  • The spectrum of the on-off waveform is given by

    Sy(f) = \frac{|P(f)|^2}{4Tb} \left[ 1 + \frac{1}{Tb} \sum{n=-\infty}^{\infty} \delta \left( f - \frac{n}{T_b} \right) \right].

  • NOTE: the spectrum contains a continuous part due to P(f) and a discrete part owing to the pulse train

  • The discrete part can be nullified if the pulse shape p(t) is chosen such that P \left( \frac{n}{T_b} \right) = 0, for n = \pm 1, \pm 2, . . . .

  • In the case of a half-width rectangular pulse, we have

    Sy(f) = \frac{Tb}{16} \text{sinc}^2 \left( \frac{\pi fTb}{2} \right) \left[ 1 + \frac{1}{Tb} \sum{n=-\infty}^{\infty} \delta \left( f - \frac{n}{Tb} \right) \right].

On-Off Signalling PSD

  • A graph illustrating the power spectral density (PSD) of an on-off signal.

On-Off Signalling - Advantages/Disadvantages

  • It is less immune to noise interference than polar signaling
  • Noise immunity depends on amplitude difference 0 to 1 (on-off) vs. -1 to 1 (polar)
  • Could consider 0 to 2, but that would consume more power
  • Average power for on-off signalling is P{\text{on-off}} = \frac{2E}{Tb}, where E is the pulse energy. P_{\text{on-off}} is twice the value required for the polar signal
  • A long string of zeros causes a lack of signal, which leads to synchronization loss.

Bipolar Signalling - Alternate Mark Inversion (AMI)

  • 0 - no pulse, 1 - pulse p(t) = -p(t - T_b)

  • Bi-polar signalling actually uses three symbols: \left[ -p(t), 0, p(t) \right]

  • Half aks are 0, the other half are either 1 or -1, with ak^2 = 1, hence

    R0 = \lim{N \rightarrow \infty} \frac{1}{N} \sumk ak^2 = \lim_{N \rightarrow \infty} \frac{1}{N} \left[ \frac{N}{2} (\pm 1)^2 + \frac{N}{2} (0)^2 \right] = \frac{1}{2}.

Bipolar Signalling - Alternate Mark Inversion (AMI) (2)

  • Now consider aka{k+1} for R1. There are four possibilities: 11, 10, 01, 00. The product aka{k+1} will be zero for the last three cases. As such, 3N/4 combinations have aka{k+1} = 0 and N/4 combinations have aka{k+1} = 1. Since 11 always alternate, the product aka_{k+1} = -1 when 11 occurs. Hence

    R1 = \lim{N \rightarrow \infty} \frac{1}{N} \left[ \frac{N}{4} (-1) + \frac{3N}{4} (0) \right] = -\frac{1}{4}.

  • Now consider aka{k+2} for R_2. Similar reasoning can be used, but now there are eight possible input bit combinations, in that case

    R2 = \lim{N \rightarrow \infty} \frac{1}{N} \left[ \frac{N}{8} (1) + \frac{N}{8} (-1) + \frac{6N}{8} (0) \right] = 0. NOTE: There is an error in the textbook.

Bipolar Signalling - Alternate Mark Inversion (AMI) (3)

  • In general Rn = \lim{N \rightarrow \infty} \frac{1}{N} \sumk aka_{k+n}.

  • Now consider aka{k+2} for R_2. Similar reasoning can be used, but now there are eight possible input bit combinations, in that case :

    R2 = \lim{N \rightarrow \infty} \frac{1}{N} \left[ \frac{N}{8} (1) + \frac{N}{8} (-1) + \frac{6N}{8} (0) \right] = 0.

  • For n > 2, the product aka{k+n} can be 1, -1 or 0. Moreover an equal number of combinations have values 1 and -1, hence R_n = 0

  • Therefore, R_n = 0, for n > 1.

Bipolar Signalling - Alternate Mark Inversion (AMI) PSD

  • Hence, from eq. (2), the PSD of a bipolar signal is

    Sy(f) = \frac{|P(f)|^2}{2Tb} \left[ 1 - \cos(2\pi fTb) \right] = \frac{|P(f)|^2}{2Tb} \sin^2(\pi fT_b).

  • A DC null will be present because of the squared sine factor

  • In the case of a half-width rectangular pulse, we have Sy(f) = \frac{Tb}{4} \text{sinc}^2 \left( \frac{\pi fTb}{2} \right) \sin^2(\pi fTb).

Bipolar Signalling - Alternate Mark Inversion (AMI) PSD (2)

  • Essential bandwidth is Rb = 1/Tb - half that of polar signalling using same half-width pulse.

Bipolar Signalling - Advantages/Disadvantages

  • Spectrum has a DC null
  • It is bandwidth-efficient
  • It has single-error detection capability (alternating pulse rule)
  • Requires twice as much power as a polar signal
  • Bipolar signalling is not transparent
  • Two versions of bipolar signalling that are transparent:
    • High-density bipolar (HDB) signalling
    • Binary with N zero substitution (BNZS) signalling.

Pulse Shaping

  • The PSD S_y(f) can be controlled by the choice of line code or pulse shape
  • Previously, we considered controlling S_y(f) through the choice of line code
  • Now, p(t) will be manipulated to influence Sy(f) through Sy(f) = |P(f)|^2 S_x(f).

Intersymbol Interference

  • In the last section, we considered the case where p(t) was a half-width rectangular pulse

  • Strictly speaking, a half-width rectangular pulse has infinite bandwidth, and therefore also S_y(f) (essential BW is finite though)

  • PSD power in range f > Rb is suppressed for transmission over the channel with BW Rb

  • Suppression of spectrum in f > Rb limits BW and causes time spreading beyond the allotted time interval Tb

  • This causes interference with neighboring pulses - known as intersymbol interference (ISI)

  • ISI is not noise, but distortion

Apparent Impasse

  • Bandlimited signals require infinite time duration
  • Time-limited signals require infinite bandwidth
  • How can we transmit finite pulses over a bandlimited channel without introducing ISI??
  • We can relax the ISI constraint - that is, no ISI only at the sample instances
  • Nyquist proposed three criteria for pulse shaping, where pulses are allowed to overlap
  • We will consider the first criterion

Nyquist Criterion for Zero-ISI - First Criterion

  • Choose a pulse shape that has nonzero amplitude at its center and zero amplitude at t = \pm nTb, (n = 1, 2, 3, . . .), where Tb is the separation between transmitted pulses, i.e.

    p(t) = \begin{cases} 1 & t = 0 \ 0 & t = \pm nTb, \text{where } Tb = 1/R_b \end{cases} (3)

    *Do we know of such a pulse?

Zero-ISI Pulse Example

p(t) = \text{sinc}(\pi Rb t), \quad P(f) = \frac{1}{Rb} \Pi \left( \frac{f}{R_b} \right)

  • Has BW of Rb/2 - can transmit Rb pulses per second over BW R_b/2
  • This is the theoretical maximum transmission rate

Practical Challenges of Using a Sinc Pulse

  • The sinc pulse is of infinite duration
  • A truncation would increase its bandwidth
  • Signal decays too slowly, at a rate of 1/t
  • What would happen in the case of timing deviations/jitter?

Nyquist’s First Criterion for Zero ISI

  • Consider a pulse p(t) \Longleftrightarrow P(f) where the bandwidth of P(f) is on the interval (Rb/2, Rb)

  • We sample the pulse p(t) every Tb seconds by multiplying p(t) by \delta{Tb}(t), where \delta{Tb}(t) is a Tb spaced impulse train

  • Since p(t) satisfies (3), the sampled signal \bar{p}(t) is given by

    \bar{p}(t) = p(t) \delta{Tb}(t) = \delta(t)

  • Take the Fourier transform on both sides of the second equality, we obtain

    \frac{1}{Tb} \sum{n=-\infty}^{\infty} P(f - nRb) = 1, where Rb = 1/T_b, or

    \sum{n=-\infty}^{\infty} P(f - nRb) = T_b

Nyquist's First Criterion for Zero ISI - Example

  • Over the range 0 < f < Rb: P(f) + P(f - Rb) = Tb \quad 0 < f < Rb

  • Letting x = f - R_b/2, we have

    P \left( x + \frac{Rb}{2} \right) + P \left( x - \frac{Rb}{2} \right) = Tb \quad |x| < 0.5Rb

  • Using the conjugate symmetry property, we have

    P \left( \frac{Rb}{2} + x \right) + P^* \left( \frac{Rb}{2} - x \right) = Tb \quad |x| < 0.5Rb

  • Let us choose P(f) to be real-valued and positive, then only |P(f)| needs to satisfy the above equation

    |P \left( \frac{Rb}{2} + x \right)| + |P^* \left( \frac{Rb}{2} - x \right)| = Tb \quad |x| < 0.5Rb

|P(f)| Properties for Zero ISI

  • Note that p(0.5R_b) = 0.5P(0)

Bandwidth of Zero ISI |P(f)| - Vestigial Spectrum

  • The bandwidth in Hz of P(f) is 0.5Rb + fx.
  • Let r be the ratio of the excess bandwidth fx to the theoretical minimum bandwidth Rb/2, i.e.
    r= excess bandwidth/ theoretical minimum bandwidth = fx/0.5Rb = 2fxTb.
  • Therefore, the bandwidth of P(f) is BT = \frac{Rb}{2} + r\frac{Rb}{2} = \frac{(1 + r)Rb}{2}
  • r is known as the roll-off factor - also specified as a percentage (for example, for a bandwidth of 1.5R_b, r = 0.5 or 50 %)

Nyquist Zero ISI Filter

One family of spectra satisfies Nyquist’s first criterion:

P(f) = \begin{cases} 1, & |f| < Rb/2 - fx \ \frac{1}{2} \left[ 1 - \sin \pi \left( \frac{f - Rb/2}{2fx} \right) \right] & |f - Rb/2| < fx \ 0, & |f| > Rb/2 + fx \end{cases}

Raised Cosine Filter

In the maximum bandwidth case, where fx = Rb/2 (i.e., r = 1), we have
P(f) = 1/2 (1+cos(πfTb)Πf /2Rb (4)
= cos2(πfTb/2) Π (fTb/2) (5)

  • This is known as the raised cosine or full-cosine roll-off filter/characteristic.

  • The inverse Fourier transform of eq (4) gives us the pulse p(t), i.e.

    p(t) = \frac{Rb \cos \pi Rb t}{1 - 4Rb^2 t^2} \text{sinc}(\pi Rb t)

Raised Cosine Filter Observations

  • Zero at multiples of Tb AND 0.5Tb
  • Decays rapidly, at a rate of 1/t^3
  • Raised cosine-based pulse insensitive to timing inaccuracies
  • Pulse generating filter is closely realisable

Controlled ISI - Partial Response Signalling

  • Nyquist first criterion requires bandwidth larger than the theoretical minimum

  • Possible to further reduce bandwidth by widening the pulse p(t)

  • However - this WILL introduce ISI

  • Since transmission is binary, with only two possible symbols, it will be possible to remove the interference - limited number of interference patterns

  • Consider a pulse p(t) which satisfies the following:

    p(nT_b) = \begin{cases} 1, & n = 0, 1 \ 0, & \text{for all other } n \end{cases} (6)

  • This leads to controlled ISI from the k^{th} to the next pulse only

Possibilities in Controlled ISI Signalling

  • Decision rule at the receiver:

    • If the sample value is positive (present bit, previous bit) = (1,1)
    • If the sample value is negative (present bit, previous bit) = (0,0)
    • If the sample value is zero, then present bit = NOT previous bit - knowledge of the previous bit allows us to know the present bit
  • This is known as partial response signalling

  • A pulse satisfying eq (6) is called a duobinary pulse

Example: Duobinary Pulse

  • Question: What pulse would meet the requirements of eq (57)?

  • Solution: From Problem 7.3-9 - only the following pulse p(t) meets the requirements:

    p(t) = \frac{\sin(\pi Rb t)}{\pi Rb t (1 - R_b t)}

  • The Fourier transform P(f) of the pulse p(t) is given by

    P(f) = \frac{2}{Rb} \cos \left( \frac{\pi f}{Rb} \right) \Pi \left( \frac{f}{Rb} \right) e^{-j\pi f/Rb}

Example: Duobinary Pulse (Plots)

  • Illustrations of the minimum bandwidth pulse that satisfies the duobinary pulse criterion and its spectrum.

Duobinary Pulse - Properties

  • Pulse not ideally realisable – noncausal with infinite duration
  • However, it decays rapidly with t at a rate 1/t^2

Relationship Between Zero-ISI, Duobinary, and Modified Duobinary

  • Let p_a(t) satisfy the first Nyquist criterion.
  • Let p_b(t) be a duobinary pulse.
  • It is clear that pa(kTb) and pb(kTb) only differ at k = 1
  • One can construct pb(t) from pa(t) via pb(t) = pa(t) + pa(t - Tb).
  • Taking the Fourier transform allows us to inspect duobinary signalling in terms of spectral bandwidth:
    $$Pb(f) = Pa(f)[1 + e^{-j2πfTb} ]
    |Pb(f)| = 2|Pa(f)|√2(1 + cos(2πfTb)) · | cos(πfTb)|$$
    *Spectral null at 2\pi f Tb = \pi, or equivalently at f = 0.5/Tb shows how duobinary signalling reshapes the PSD to reduce the essential BW to the minimum theoretical BW

Modified Duobinary