1 / 51

Introduction to x DSL Part II

Introduction to x DSL Part II. Yaakov J. Stein Chief Scientist RAD Data Communications. Introduction to xDSL. I Background history, theoretical limitations, applications II Modems line codes, duplexing, equalization, error correcting codes, trellis codes III xDSL - What is x?

lotus
Télécharger la présentation

Introduction to x DSL Part II

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IntroductiontoxDSL Part II Yaakov J. Stein Chief ScientistRAD Data Communications

  2. Introduction to xDSL I Background history, theoretical limitations, applications II Modems line codes, duplexing, equalization, error correcting codes, trellis codes III xDSL - What is x? x=I,A,S,V - specific DSL technologies competitive technologies

  3. Introduction to xDSL II How to make a modem PAM, FSK, PSK How to make a better modem QAM, CAP, TCM, V.34, V.90, DMT How to make a modem that works Equalizers, echo, timing, duplexing Why it doesn’t Noise, cross-talk

  4. The simplest modem - NRZ Our first attempt is to simply transmit 1 or 0 (volts?) (short serial cables, e.g. RS232) Information rate = number of bits transmitted per second (bps)

  5. The simplest modem - continued There are a few problems ... • DC • Bandwidth • Noise • Timing recovery • ISI Actually (except the DC) these problems plague all modems

  6. The simplest modem - DC What’s wrong with a little DC? • We want to transmit information - not power • DC heats things up, and is often purposely blocked • DC is used in telephony environment for powering

  7. The simplest modem - DC So what about transmitting -1/+1? This is better, but not perfect! • DC isn’t exactly zero • Still can have a long run of +1 OR -1 that will decay • Even without decay, long runs ruin timing recovery (see below)

  8. Bit scrambling We can get rid of long runs at the bit level • Bits randomized for better spectral properties • Self synchronizing • Original bits can be recovered by descrambler Still not perfect!(one to one transformation)

  9. The simplest modem - DC What about RZ? • No long +1 runs, so DC decay not important • Still there is DC • Half width pulses means twice bandwidth!

  10. The simplest modem - DC T1 uses AMI (Alternate Mark Inversion) • Absolutely no DC! • No bandwidth increase!

  11. The simplest modem - DC Even better - use OOK (On Off Keying) • Absolutely no DC! • Based on sinusoid (“carrier”) • Can hear it (morse code)

  12. NRZ - Bandwidth The PSD (Power Spectral Density) of NRZ is a sinc ( sinc(x) = sin(x) ) • The first zero is at the bit rate (uncertainty principle) • So channel bandwidth limits bit rate • DC depends on levels (may be zero or spike) x

  13. OOK - Bandwidth PSD of -1/+1 NRZ is the same, except there is no DC component If we use OOK the sinc is mixed up to the carrier frequency • (The spike helps in carrier recovery)

  14. +1 -1 1 1 1 0 0 1 0 +3 +1 -1 -3 11 10 01 01 00 11 01 From NRZ to n-PAM NRZ 4-PAM (2B1Q) 8-PAM • Each level is called a symbol or baud • Bit rate = number of bits per symbol * baud rate GRAY CODE 10 => +3 11 => +1 01 => -1 00 => -3 GRAY CODE 100 => +7 101 => +5 111 => +3 110 => +1 010 => -1 011 => -3 001 => -5 000 => -7 111 001 010 011 010 000 110

  15. PAM - Bandwidth BW (actually the entire PSD) doesn’t change with n ! So we should use many bits per symbol But then noise becomes more important (Shannon strikes again!) BAUD RATE

  16. Trellis coding Traditionally, noise robustness is increased by using an Error Correcting Code (ECC) But an ECC separate from the modem is not optimal ! Ungerboeck found how to integrate demodulation with ECC This technique is called a Trellis Coded PAM (TC-PAM) or Ungerboeck Coded PAM (UC-PAM) We will return to trellis codes later

  17. The simplest modem - Noise So what can we do about noise? If we use frequency diversity we can gain 3 dB Use two independent OOKs with the same information (no DC) • This is FSK - Frequency Shift Keying • Bell 103, V.21 2W full duplex 300 bps (used today in T.30) • Bell 202, V.23 4W full duplex 1200 bps (used today in CLI)

  18. ASK What about Amplitude Shift Keying - ASK ? 2 bits / symbol • Generalizes OOK like multilevel PAM did to NRZ • Not widely used since hard to differentiate between levels Is FSK better?

  19. FSK FSK is based on orthogonality of sinusoids of different frequencies • Make decision only if there is energy at f1 but not at f2 • Uncertainty theorem says this requires a long time • So FSK is robust but slow (Shannon strikes again!)

  20. PSK What about sinusoids of the same frequency but different phases? • Correlations reliable after a single cycle So let’s try BPSK 1 bit / symbol or QPSK 2 bits / symbol Bell 212 2W 1200 bps V.22

  21. PSK - Eye diagrams PSK demodulator extracts the phase as a function of time • Proper decisions when “eye is open” Eye will close because of • Timing errors • Channel distortion • Noise

  22. QAM Finally, we can combine PSK and ASK (but not FSK) 2 bits per symbol • V.22bis 2W full duplex 2400 bps used 16 QAM (4 bits/symbol) This is getting confusing

  23. The secret math behind it all The instantaneous representation • x(t) = A(t) cos ( 2p fc t + f(t) ) • A(t) is the instantaneous amplitude • f(t) is the instantaneous phase This obviously includes ASK and PSK as special cases • Actually all bandwidth limited signals can be written this way • Analog AM, FM and PM • FSK changes the derivative of f(t) The way we defined them A(t) and f(t) are not unique • The canonical pair (Hilbert transform)

  24. The secret math - continued How can we find the amplitude and phase? The Hilbert transform is a 90 degree phase shifterH sin(f(t) ) = cos(f(t) ) Hence • x(t) = A(t) cos ( 2p fc t + f(t) ) • y(t) = H x(t) = A(t) sin ( 2p fc t + f(t) ) • A(t) = x2(t) + y2(t) • f(t) = arctan(y(t)x(t))

  25. Star watching For QAM eye diagrams are not enough Instead, we can draw a diagram with • x and y as axes • A is the radius, f the angle For example, QPSK can be drawn (rotations are time shifts) Each point represents 2 bits!

  26. QAM constellations 16 QAMV.29 (4W 9600 bps) V.22bis 2400 bps Codex 9600 (V.29) 2W first non-Bell modem(Carterphone decision) Adaptive equalizer Reduced PAR constellation Today - 9600 fax! 8PSK V.27 4W 4800bps

  27. Voicegrade modem constellations

  28. QAM constellations - continued What is important in a constellation? • The number of points N • The minimum distance between points dmin • The average squared distance from the center E = <r2> • The maximum distance from the center R Usually • Maximum E and R are given • bits/symbol = log2 N • PAR = R/r • Perr is determined mainly by dmin

  29. QAM constellations - slicers How do we use the constellation plot? • Received point classified to nearest constellation point • Each point has associated bits (well that’s a lie, but hold on) • Sum of errors is the PDSNR

  30. Multidimensional constellations • PAM and PSK constellations are 1D • QAM constellations are 2D (use two parameters of signal) • By combining A and f of two time instants ... we can create a 4D constellation • From N times we can make 2N dimensional constellation! Why would we want to? There is more room in higher dimensions! 1D 2 nearest neighbors2D 4 nearest neighbors ND 2N nearest neighbors! How do I draw this?

  31. Duplexing How do we send information in BOTH directions? • Earliest modems used two UTPs, one for each direction (4W) • Next generation used 1/2 bandwidth for each direction (FDD) • Alternative is to use 1/2 the time (ping-pong) (TDD) Advances in DSP allowed 4W technology to be used in 2W • V.32 used V.33 modulation with adaptive echo canceling

  32. Multiplexing & Inverse multiplexing Duplexing = 2 data streams in 2 directions on 1 physical line Multiplexing = N data streams in 1 direction on 1 physical line Inverse multiplexing = 1 data stream in 1 direction on N physical lines Inverse multiplexing (bonding) can be performed at different layers data streams physical line data stream physical lines

  33. Modern Voice Grade (not DSL) Modems V.34 (<=33.6 Kbps) • Line probing and adaptive (water pouring?) spectral allocation • Multidimensional QAM • Huge constellations • Laroia precoding • Shell mapping (noninteger bits/symbol) V.90, V.92 (<= 56 Kbps) • Asymmetric rates (V.90 uses V.34 for upstream) • Downstream PCM(G.711) not analog modem • Spectral shaping to overcome effects of D/A, XMFRs, etc.

  34. The simplest modem - Timing • Proper timing Provided by separated transmission • … uses BW or another UTP Improper timing • causes extra or missed bits, and bit errors

  35. Timing recovery How do we recover timing (baud rate) for an NRZ signal? • For clean NRZ - find the GCF of observed time intervals • For noisy signals need to filter b = T / t t = a t + (1-a) T/b • PLL How can we recover the timing for a PSK signal? • The amplitude is NOT really constant (energy cut-off) • Contains a component at baud rate • Sharp filter and appropriate delay Similarly for QAM BUT as constellation gets rounder recovery gets harder

  36. Carrier recovery Need carrier recovery for PSK / QAM signals How can we recover the carrier of a PSK signal? X(t) = S(t) cos ( 2p fc t ) where S(t) = +/- 1 So X2(t) = cos2( 2p fc t ) For QPSK X4(t) eliminates the data and emphasizes the carrier! Old QAM saying “square for baud, to the fourth for carrier”

  37. 1 Constellation rotation recovery How can we recover the rotation of the constellation? Simply change phase for best match to the expected constellation! How do we get rid of 90 degree ambiguity? We can’t! We have to live with it! And the easiest way is to use differential coding! DPSK NPSK Gray code 000 100 110 010 011 111 101 001 000 QAM put the bits on the transitions! 00 10 01 11

  38. The simplest modem - ISI

  39. QAM ISI The symbols overlap and interfere Constellations become clouds Only previous symbol Moderate ISI Severe ISI

  40. channel modulator equalizer demodulator filter Equalizers ISI is caused by the channel acting like a low-pass filter • Can correct by filtering with inverse filter This is called a linear equalizer • Can use compromise (ideal low-pass) equalizer plus an adaptive equalizer • Usually assume the channel is all-pole so the equalizer is all-zero (FIR) How do we find the equalizer coefficients?

  41. Training equalizers Basically a system identification problem • Initialize during training using known data (can be reduced to solving linear algebraic equations) • Update using decision directed technique (e.g. LMS algorithm) once decisions are reliable • Sometimes can also use blind equalization e = e (ai) e

  42. Equalizers - continued Noise enhancement This is a basic consequence of using a linear filter But we want to get as close to the band edges as possible There are two different ways to fix this problem! noise channel demodulator equalizer modulator filter

  43. Equalizers - DFE ISI is previous symbols interfering with subsequent ones Once we know a symbol (decision directed) we can use it to directly subtract the ISI! Slicer is non-linear and so breaks the noise enchancement problem But, there is an error propogation problem! linear slicer out equalizer feedback filter

  44. Equalizers - Tomlinson precoding • Tomlinson equalizes before the noise is added • Needs nonlinear modulo operation • Needs results of channel probe or DFE coefficients to be forwarded noise Tomlinson precoder channel demodulator modulator filter

  45. Trellis coding Modems still make mistakes • Traditionally these were corrected by ECCs (e.g. Reed Solomon) • This separation is not optimal • Proof: incorrect hard decisions - not obvious where to correct soft decisions - correct symbols with largest error How can we efficiently integrate demodulation and ECC? • This was a hard problem since very few people were expert in ECCs and signal processing The key is set partitioning

  46. 4D 2D D Set Partitioning - 8PAM Final step First step Original Subset 0 Subset 1 00 01 10 11

  47. Set Partitioning - 8PSK

  48. Trellis coding - continued • If we knew which subset was transmitted, the decision would be easy • So we transmit the subset and the point in the subset • But we can’t afford to make a mistake as to the subset • So we “protect” the subset identifier bits with an ECC • To decode use the Viterbi algorithm

  49. Multicarrier Modulation • NRZ, RZ, etc. have NO carrier • PSK, QAM have ONE carrier • MCM has MANY carriers • Achieve maximum capacity by direct water pouring! • PROBLEM • Basic FDM requires guard frequencies • Squanders good bandwidth

  50. OFDM • Subsignals are orthogonal if spaced precisely by the baud rate • No guard frequencies are needed

More Related