3F4 Pulse Amplitude Modulation (PAM) Dr. I. J. Wassell Introduction • The purpose of the modulator is to convert discrete amplitude serial symbols (bits in a binary system) ak to analogue output pulses which are sent over the channel. • The demodulator reverses this process ak Modulator Serial data symbols Channel ‘analogue’ channel pulses Demodulator Recovered data symbols Introduction • Possible approaches include – Pulse width modulation (PWM) – Pulse position modulation (PPM) – Pulse amplitude modulation (PAM) • We will only be considering PAM in these lectures PAM • PAM is a general signalling technique whereby pulse amplitude is used to convey the message • For example, the PAM pulses could be the sampled amplitude values of an analogue signal • We are interested in digital PAM, where the pulse amplitudes are constrained to chosen from a specific alphabet at the transmitter PAM Scheme Modulator xs (t ) ak x(t ) a (t kT ) k k Pulse generator a h (t kT ) k k T Transmit filter HT(w) hT(t) Symbol clock Recovered symbols Demodulator y (t ) a h(t kT ) v(t ) k Data slicer Recovered clock Channel hC(t) k Receive filter HR(w), hR(t) HC(w) + Noise N(w) PAM • In binary PAM, each symbol ak takes only two values, say {A1 and A2} • In a multilevel, i.e., M-ary system, symbols may take M values {A1, A2 ,... AM} • Signalling period, T • Each transmitted pulse is given by ak hT (t kT ) Where hT(t) is the time domain pulse shape PAM • To generate the PAM output signal, we may choose to represent the input to the transmit filter hT(t) as a train of weighted impulse functions xs (t ) ak (t kT ) k • Consequently, the filter output x(t) is a train of pulses, each with the required shape hT(t) x(t ) a h (t kT ) k k T xs (t ) PAM a (t kT ) k x(t ) k a h (t kT ) k k T x(t ) xs (t ) Transmit Filter hT (t ) • Filtering of impulse train in transmit filter PAM • Clearly not a practical technique so – Use a practical input pulse shape, then filter to realise the desired output pulse shape – Store a sampled pulse shape in a ROM and read out through a D/A converter • The transmitted signal x(t) passes through the channel HC(w) and the receive filter HR(w). • The overall frequency response is H(w) = HT(w) HC(w) HR(w) PAM • Hence the signal at the receiver filter output is y (t ) a h(t kT ) v(t ) k k Where h(t) is the inverse Fourier transform of H(w) and v(t) is the noise signal at the receive filter output • Data detection is now performed by the Data Slicer PAM- Data Detection • Sampling y(t), usually at the optimum instant t=nT+td when the pulse magnitude is the greatest yields yn y (nT td ) a h((n k )T t ) v k k d n Where vn=v(nT+td) is the sampled noise and td is the time delay required for optimum sampling • yn is then compared with threshold(s) to determine the recovered data symbols PAM- Data Detection ‘1’ ‘0’ ‘0’ ‘1’ ‘0’ +A -A -A +A -A TX data TX symbol, ak Signal at data slicer input, y(t) T 0 td Sample clock Ideal sample instants at t = nT+td Sampled signal, 0 yn= y(nT+td) Data Slicer decision threshold = 0V Detected data ‘1’ ‘0’ ‘0’ ‘1’ ‘0’ Synchronisation • We need to derive an accurate clock signal at the receiver in order that y(t) may be sampled at the correct instant • Such a signal may be available directly (usually not because of the waste involved in sending a signal with no information content) • Usually, the sample clock has to be derived directly from the received signal. Synchronisation • The ability to extract a symbol timing clock usually depends upon the presence of transitions or zero crossings in the received signal. • Line coding aims to raise the number of such occurrences to help the extraction process. • Unfortunately, simple line coding schemes often do not give rise to transitions when long runs of constant symbols are received. Synchronisation • Some line coding schemes give rise to a spectral component at the symbol rate • A BPF or PLL can be used to extract this component directly • Sometimes the received data has to be nonlinearly processed eg, squaring, to yield a component of the correct frequency. Intersymbol Interference • If the system impulse response h(t) extends over more than 1 symbol period, symbols become smeared into adjacent symbol periods • Known as intersymbol interference (ISI) • The signal at the slicer input may be rewritten as yn an h(td ) ak h((n k )T td ) vn k n – The first term depends only on the current symbol an – The summation is an interference term which depends upon the surrounding symbols Intersymbol Interference • Example Modulator input Binary ‘1’ 1.0 0.5 0 2 4 6 Time (bit periods) Slicer input amplitude amplitude – Response h(t) is Resistor-Capacitor (R-C) first order arrangement- Bit duration is T Binary ‘1’ 1.0 0.5 0 2 4 6 Time (bit periods) • For this example we will assume that a binary ‘0’ is sent as 0V. Intersymbol Interference amplitude • The received pulse at the slicer now extends over 4 bit periods giving rise to ISI. 1.0 ‘1’ ‘1’ ‘0’ ‘0’ ‘1’ ‘0’ ‘0’ ‘1’ 0.5 0 2 4 6 time (bit periods) • The actual received signal is the superposition of the individual pulses Intersymbol Interference amplitude • For the assumed data the signal at the slicer input is, 1.0 ‘1’ ‘1’ ‘0’ ‘0’ ‘1’ ‘0’ ‘0’ ‘1’ 0.5 Decision threshold 0 2 4 6 time (bit periods) Note non-zero values at ideal sample instants corresponding with the transmission of binary ‘0’s • Clearly the ease in making decisions is data dependant Intersymbol Interference • Matlab generated plot showing pulse superposition (accurately) 0.9 0.8 amplitude 0.7 Decision threshold 0.6 0.5 0.4 0.3 0.2 0.1 0 0 1 2 3 4 Received signal 5 6 7 8 time (bit periods) Individual pulses Intersymbol Interference • Sending a longer data sequence yields the following received waveform at the slicer input 1 0.9 0.8 0.7 Decision threshold 0.6 0.5 0.4 0.3 0.2 0.1 0 0 10 20 30 40 50 60 70 (Also showing individual pulses) 1 0.9 0.8 0.7 Decision threshold 0.6 0.5 0.4 0.3 0.2 0.1 0 0 10 20 30 40 50 60 70 Eye Diagrams • Worst case error performance in noise can be obtained by calculating the worst case ISI over all possible combinations of input symbols. • A convenient way of measuring ISI is the eye diagram • Practically, this is done by displaying y(t) on a scope, which is triggered using the symbol clock • The overlaid pulses from all the different symbol periods will lead to a criss-crossed display, with an eye in the middle Example R-C response Eye Diagram 1 0.9 0.8 h = eye height 0.7 0.6 h 0.5 Decision threshold 0.4 0.3 0.2 0.1 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 Optimum sample instant Eye Diagrams • The size of the eye opening, h (eye height) determines the probability of making incorrect decisions • The instant at which the max eye opening occurs gives the sampling time td • The width of the eye indicates the resilience to symbol timing errors • For M-ary transmission, there will be M-1 eyes Eye Diagrams • The generation of a representative eye assumes the use of random data symbols • For simple channel pulse shapes with binary symbols, the eye diagram may be constructed manually by finding the worst case ‘1’ and worst case ‘0’ and superimposing the two Nyquist Pulse Shaping • It is possible to eliminate ISI at the sampling instants by ensuring that the received pulses satisfy the Nyquist pulse shaping criterion • We will assume that td=0, so the slicer input is yn an h(0) ak h((n k )T ) vn k n • If the received pulse is such that 1 h(nT ) 0 for n 0 for n 0 Nyquist Pulse Shaping • Then yn an vn and so ISI is avoided • This condition is only achieved if k H f T T k • That is the pulse spectrum, repeated at intervals of the symbol rate sums to a constant value T for all frequencies Nyquist Pulse Shaping H(f) T 0 f T 2/T 1/T 0 1/T 2/T f Why? • Sample h(t) with a train of pulses at times kT hs (t ) h(t ) (t kT ) k • Consequently the spectrum of hs(t) is 1 H s (w ) H (w k 2 T ) T k • Remember for zero ISI 1 h(nT ) 0 for n 0 for n 0 Why? • Consequently hs(t)=(t) • The spectrum of (t)=1, therefore 1 H s (w ) H (w k 2 T ) 1 T k • Substituting f=w/2 gives the Nyquist pulse shaping criterion H( f k T) T k Nyquist Pulse Shaping • No pulse bandwidth less than 1/2T can satisfy the criterion, eg, T 2/T 1/T 0 1/T 2/T f Clearly, the repeated spectra do not sum to a constant value Nyquist Pulse Shaping • The minimum bandwidth pulse spectrum H(f), ie, a rectangular spectral shape, has a sinc pulse response in the time domain, T H( f ) 0 for - 1 2T f 1 2T elsewhere • The sinc pulse shape is very sensitive to errors in the sample timing, owing to its low rate of sidelobe decay Nyquist Pulse Shaping • Hard to design practical ‘brick-wall’ filters, consequently filters with smooth spectral roll-off are preferred • Pulses may take values for t<0 (ie noncausal). No problem in a practical system because delays can be introduced to enable approximate realisation. Causal Response Non-causal response T=1s Causal response T = 1s Delay, td = 10s Raised Cosine (RC) Fall-Off Pulse Shaping • Practically important pulse shapes which satisfy the criterion are those with Raised Cosine (RC) roll-off • The pulse spectrum is given by T f 1 2T H ( f ) T cos 2 ( f 1 2T ) 4 f 1 2T 0 With, 0<<1/2T 1 2T f 1 2T RC Pulse Shaping • The general RC function is as follows, H(f) T 0 T f 1 2T H ( f ) T cos 2 ( f 1 2T ) 4 f 1 2T 0 1 2T 1 2T 1 2T 1 T f (Hz) 1 2T f 1 2T RC Pulse Shaping • The corresponding time domain pulse shape is given by, sin t T cos 2t h(t ) 1 4 t 2 t T • Now allows a trade-off between bandwidth and the pulse decay rate • Sometimes is normalised as follows, x 12T RC Pulse Shaping • With =0 (i.e., x = 0) the spectrum of the filter is rectangular and the time domain response is a sinc pulse, that is, H( f ) T f 1 2T sin t T h (t ) t T • The time domain pulse has zero crossings at intervals of nT as desired (See plots for x = 0). RC Pulse Shaping • With =(1/2T), (i.e., x = 1) the spectrum of the filter is full RC and the time domain response is a pulse with low sidelobe levels, that is, Tf H ( f ) T cos 2 2 f 1 T 1 2 h(t ) sinc t 4 2 T 1 2 t T • The time domain pulse has zero crossings at intervals of nT/2, with the exception at T/2 where there is no zero crossing. See plots for x = 1. RC Pulse Shaping Normalised Spectrum H(f)/T Pulse Shape h(t) x0 x 0.5 x1 f *T t/T RC Pulse Shaping- Example 1 • Pulse shape and received signal, x = 0 ( = 0) 1.4 1.2 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 0 1 2 3 4 5 6 7 8 • Eye diagram 2 1.5 1 0.5 0 -0.5 -1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 RC Pulse Shaping- Example 2 • Pulse shape and received signal, x = 1 ( = 1/2T) 1.2 1 0.8 0.6 0.4 0.2 0 -0.2 0 1 2 3 4 5 6 7 8 • Eye diagram 1.2 1 0.8 0.6 0.4 0.2 0 -0.2 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 RC Pulse Shaping- Example • The much wider eye opening for x = 1 gives a much greater tolerance to inaccurate sample clock timing • The penalty is the much wider transmitted bandwidth Probability of Error • In the presence of noise, there will be a finite chance of decision errors at the slicer output • The smaller the eye, the higher the chance that the noise will cause an error. For a binary system a transmitted ‘1’ could be detected as a ‘0’ and viceversa • In a PAM system, the probability of error is, Pe=Pr{A received symbol is incorrectly detected} • For a binary system, Pe is known as the bit error probability, or the bit error rate (BER) BER • The received signal at the slicer is yn Vi vn Where Vi is the received signal voltage and Vi=Vo for a transmitted ‘0’ or Vi=V1 for a transmitted ‘1’ • With zero ISI and an overall unity gain, Vi=an, the current transmitted binary symbol • Suppose the noise is Gaussian, with zero mean and variance v2 BER f (vn ) 1 2 v2 vn2 e 2 v2 Where f(vn) denotes the probability density function (pdf), that is, Pr{x vn x dx} f ( x)dx and b Pr{a vn b} f ( x)dx a BER f(vn) 0 dx a b vn BER • The slicer detects the received signal using a threshold voltage VT • For a binary system the decision is Decide ‘1’ if yn VT Decide ‘0’ if yn<VT For equiprobable symbols, the optimum threshold is in the centre of V0 and V1, ie VT=(V0+V1)/2 BER f(yn|‘0’ sent) 0 V0 P(error|‘1’) f(yn|‘1’ sent) VT V1 P(error|‘0’) yn BER • The probability of error for a binary system can be written as: Pe=Pr(‘0’sent and error occurs)+Pr(‘1’sent and error occurs) Pe P(error | 0) Po P(error | 1) P1 • For ‘0’ sent: an error occurs when yn VT – let vn=yn-Vo, so when yn=Vo, vn=0 and when yn=VT, vn=VT-Vo. – So equivalently, we get an error when vn VT-V0 P(error | 0) P(vn VT Vo ) BER f(yn|‘0’ sent) 0 V0 VT P(error|‘0’) yn f(vn) 0 VT - V0 P(error|‘0’) vn BER P(error | 0) VT Vo VT Vo f (vn )dvn Q v Where, Q( z ) z x2 1 e 2 dx 2 • The Q function is one of a number of tabulated functions for the Gaussian cumulative distribution function (cdf) ie the integral of the Gaussian pdf. BER • Similarly for ‘1’ sent: an error occurs when yn<VT – let vn=yn-V1, so when yn=V1, vn=0 and when yn=VT, vn=VT-V1. – So equivalently, we get an error when vn < VT-V1 P(error | 1) P(vn VT V1 ) P(vn V1 VT ) P(error | 1) V1 VT V1 VT f (vn )dvn Q v BER 0 P(error|‘1’) P(error|‘1’) f(yn|‘1’ sent) VT V1 f(vn) yn 0 vn VT -V1 -(VT -V1) V1-VT BER • Hence the total error probability is Pe=Pr(‘0’sent and error occurs)+Pr(‘1’sent and error occurs) Pe P(error | 0) Po P(error | 1) P1 VT Vo V1 VT P1 Pe Q Po Q v v Where Po is the probability that a ‘0’ was sent and P1 is the probability that a ‘1’ was sent • For Po=P1=0.5, the min error rate is obtained when, Vo V1 VT 2 BER • Consequently, min e P V1 Vo h Q Q 2 v 2 v where, h V1 Vo • Notes: – Q(.) is a monotonically decreasing function of its argument, hence the BER falls as h increases – For received pulses satisfying Nyquist criterion, ie zero ISI, Vo=Ao and V1=A1. Assuming unity overall gain. – More complex with ISI. Worst case performance if h is taken to be the eye opening BER Example • The received pulse h(t) in response to a single transmitted binary ‘1’ is as shown, 1.0 0.8 h(t) 0.6 (V) 0.4 0.2 0 0.2 Where, Bit period = T 0 T 2T 3T 4T 5T t h(0) = 0, h(T) = 0.3, h(2T) = 1, h(3T) = 0, h(4T) = -0.2, h(5T) =0 BER Example • What is the worst case BER if a ‘1’ is received as h(t) and a ‘0’ as -h(t) (this is known as a polar binary scheme)? Assume the data are equally likely to be ‘0’ and ‘1’ and that the optimum threshold (OV) is used at the slicer. • By inspection, the pulse has only 2 non-zero amplitude values (at T and 4T) away from the ideal sample point (at 2T). BER Example • Consequently the worst case ‘1’ occurs when the data bits conspire to give negative non-zero pulse amplitudes at the sampling instant. • The worst case ‘1’ eye opening is thus, 1 - 0.3 - 0.2 = 0.5 as indicated in the following diagram. BER Example 1.0 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1.0 ‘X’ ‘1’ ‘X’ ‘1’ ‘0’ ‘X’ 0.3 0.2 Optimum sample point for circled bit, amplitude = 1-0.3-0.2 = 0.5 0 T 2T 3T 4T 5T 6T 7T 8T t • The indicated data gives rise to the worst case ‘1’ eye opening. Don’t care about data marked ‘X’ as their pulses are zero at the indicated sample instant BER Example • Similarly the worst case ‘0’ eye opening is -1 + 0.3 + 0.2 = -0.5 • So, worst case eye opening h = 0.5-(-0.5) = 1V • Giving the BER as, min e P h 1 Q Q 2 v 2 v Where v is the rms noise at the slicer input Summary • For PAM systems we have – Looked at ISI and its assessment using eye diagrams – Nyquist pulse shaping to eliminate ISI at the optimum sampling instants – Seen how to calculate the worst case BER in the presence of Gaussian noise and ISI