Presentation on theme: "3F4 Line Coding Dr. I. J. Wassell. Introduction Line coding is the procedure used to convert an incoming bit stream, b k to symbols a k which are then."— Presentation transcript:
Introduction Line coding is the procedure used to convert an incoming bit stream, b k to symbols a k which are then sent as pulses a k h T (t-kT) on to the channel The line coding technique affect the properties of the transmitted signal Desirable properties are –Self Synchronisation. There should be sufficient information in the transitions and zero-crossings to permit symbol timing clock regeneration
Introduction –Spectrum suited to the channel. The PSD of the transmitted signal should be compatible with the channel frequency response H c ( ), eg, Many channels cannot pass dc (zero frequency) owing to ac coupling Lowpass response limits the ability to carry high frequencies
Line Codes for Copper Cables Following a qualitative introduction to some practical line codes, we will look at a framework for their quantitative analysis Unipolar Binary –binary symbols transmitted –pulse weightings, a k =0 or A Volts, eg, ‘0’ and ‘1’ –no guarantee of transitions (for timing regeneration) –transmitted signal has non-zero mean, so the channel must be able to pass dc. If not, errors will occur with long runs of ‘1’s in the data
Line Codes for Copper Cables Polar Binary (do not confuse with bipolar) –binary symbols transmitted –pulse weightings, a k =-A or A Volts, eg, ‘0’ and ‘1’ –no guarantee of transitions (for timing regeneration) –transmitted signal is zero mean (provided data is equiprobable), but there is still a high PSD at low frequencies, therefore still a problem with channels which do not pass dc
Line Codes for Copper Cables Bipolar (or Alternate Mark Inversion (AMI)) –ternary (3 level) symbols transmitted –pulse weightings, a k =0 or either -A or +A Volts, eg, ‘0’ or ‘1’, that is, ‘0’ sent as a k =0 ‘1’ sent as a k =-A or +A alternately – no guarantee of transitions (for timing regeneration) –signal mean is always zero (independent of data) –Spectral null at dc means there is no longer a problem if channel does not pass dc –1 binary symbol sent as 1 ternary symbol, 1B1T code
Line Codes for Copper Cables High Density Bipolar (HDBn) –modified bipolar codes which guarantee transitions despite runs of zeros. –thus substitute runs of more than n zeros –an alternative name is BnZS in this case substitute runs of n or more zeros –HDB3 is a popular code note HDB3 is equivalent to B4ZS
HDB3 Any run of 4 zeros is replaced by the special pattern: B00D –D is sent as +/- A, such that successive D’s have alternating polarity (1st D is arbitrary) –B is sent as 0 or +/- A. Select B such that the next D violates the AMI alternating polarity result, ie send B as 0 if D violates the polarity rule. Otherwise send B=D to force a violation of the alternating polarity rule
HDB3 Equivalently, –B is sent as 0 if there has been an odd number of input ‘1’s since the last special sequence B00D –B is sent as +/- A if there has been an even number of input ‘1’s since the last special sequence B00D All other symbols obey the AMI rules The scheme allows the unique detection of the special sequences, since polarity violations correspond with the D symbols. An overall mean of zero is achieved
HDB3 There are never more than 3 consecutive zeros, so plenty of edges for timing regeneration The channel is not required to pass dc The transmit power requirement is a little greater than AMI (about 10%)
Power Spectra for Line Codes We can use the earlier results concerning power spectra to derive the PSD for PAM schemes Initially we will consider the case where the symbols are transmitted as weighted impulses. We will then generalise to arbitrary pulse shapes
Signal TX as impulse train A PAM signal sent as a weighted impulse train is, Where T s is the symbol period. We will show that the PSD of x(t) is given by, and Which is the discrete Autocorrelation function (ACF). Also note that R(m) = R(-m) for real valued a n
Proof Using direct method, ie, The truncated signal x T (t) is, Now, And substituting for x T (t) gives,
Proof Remembering that R(m) = R(-m) for real valued a n
Proof Note that for R(m)=0 for all m except zero, the PSD reduces to e.g., for polar binary line coding.
For Arbitrary Pulse Shapes Recall that a PAM signal with a desired pulse shape h(t) may be generated by filtering (actually convolving) the weighted impulse train with a filter whose impulse response is h(t) From the power spectra results we obtain,
PSD of Specific Schemes Given a particular line coding scheme which generates symbols a k, the transmitted PSD is calculated as follows: –Determine the discrete ACF Where, M is the number of possible values that a k a k+m can take on R i is the ith value of a k a k+m p i is the probability that R i occurs
PSD of Specific Schemes Evaluate impulse train PSD –Substitute R(m) into the PSD formula, Evaluate PSD with pulse shaping –Multiply S x ( ) by |H( )| 2,
Example- Polar Binary Now extend to pulses with a rectangular shape and duration T s. To do this we convolve the impulse stream with a filter h(t) with a rectangular impulse response, i.e., from the E and I Data Book, t b -b aFT h(t)h(t)
Example- Polar Binary In our example, b=T s and a=1, so the filter frequency response is, This response has an amplitude of T s at = 0 and zero crossings at multiples of 2 /T s rad/s or 1/T s Hz.
Example- Polar Binary Now the PSD at the output of the filter H( ) is, This response has an amplitude of T s at = 0 and zero crossings at multiples of 2 /T s rad/s or 1/T s Hz. This is consistent with the PSD plot for polar binary signalling with rectangular pulses.
Example- Polar Binary Impulse Train PSDRectangular Pulse PSD f *T s PSD*T s
Example- Bipolar (AMI) Note that if rectangular pulses are employed as in the previous Polar example, the resulting PSD is given by, Where, Note the zero crossings at multiples of 2 /T s rad/s or 1/T s Hz and the lowering of the frequency sidelobes evident in the PSD plot.
Example- Bipolar (AMI) Impulse Train PSDRectangular Pulse PSD f *T s PSD*T s
ACF With Non-Zero Mean Data Sometimes the line coded data will have a non-zero mean value. This could be due to –The line coding scheme, e.g., unipolar –The probability distribution of the data –Incorrect signalling voltages owing to faults The result is that the R(m) will have finite values for m in the range +/- infinity
ACF With Non-Zero Mean Data The result for S x ( ) is valid but is hard to interpret physically The solution is to express R(m) as the sum of two parts –The first part has a constant value of R over the range of m from + to - infinity –The second part has non-zero values of R over a finite range of m
ACF With Non-Zero Mean Data The advantage of this approach is that the first term can be represented in a format that is consistent with physical observations. We will now show that this representation comprises a sequence of spikes (impulses) in the frequency domain, occurring at multiples of the bit rate.
ACF With Non-Zero Mean Data Suppose that R(m)=R for all m, then we can express the PSD as follows Note the similarity in form to the Fourier series representation of an impulse train, Note in time domain
ACF With Non-Zero Mean Data Reminder, the Fourier Series (FS) for a periodic function is, i.e., a weighted (complex) sum of phasors. We now wish to find the FS of the rectangular pulse train x(t), ToTo t 0 x(t) A
ACF With Non-Zero Mean Data Now the coefficients are given by, For the case where goes to zero and A = 1 (i.e., a unit impulse train),
ACF With Non-Zero Mean Data So we know, Remembering that c k =1/T 0 when x(t) is a sequence of unit impulses we can write,
ACF With Non-Zero Mean Data If we substitute, =t, m=k and T 0 =2 /T s, to get the equivalent relation in the frequency domain, And hence we may express S x ( ) as a series of impulses in the frequency domain,
ACF With Non-Zero Mean Data The PSD due to a constant R for all m consists of spikes, known as line spectral components, at multiples of o =2 /T s This result enables simplified calculation of PSDs when R(i) can be written in the form, First calculate the PSD for R(i)=C(i), then add on the line spectrum for R(i)=R
So, The second term is known as a line spectrum
Example- Unipolar Binary Impulse Train PSDRectangular Pulse PSD f *T s PSD*T s
Scrambling Some components of a transmission system work better if the bit sequence b k is random, ie, independent and uncorrelated –Timing regeneration not possible with some line codes if long sequences of ‘0’s or ‘1’s occur –Equalisers (see next section) rely on random bit sequences for successful operation A common solution is to randomise (or scramble) the input bit sequences (in a known manner) prior to line coding
The received signals then appear as if they come from a random source Unscrambling after detection restores the correct bit sequence A simple way to generate scramblers is to XOR the data with the output of a feedback shift register arrangement. Scrambling
For example we may utilise the so called frame-synchronised scrambler (also called a cryptographic scrambler XOR PRBS XOR PRBS S TTR PRBS- Pseudo Random Binary Sequence generator. Usually a Maximal Length (ML) linear feedback shift register arrangement. A BXOR 0 0 1 1 0 1 0 1 1 0 PRBS at TX and RX must be synchronised
Scrambling XOR S RTT An alternative is the Self-Synchronised scrambler. Is susceptible to error propagation. Similar arrangements used for error rate testing.
Summary In this section we have –Examined the need for line codes and looked at some practical examples –Seen how to calculate the power spectra for various line codes –Briefly looked at scrambling to randomise data