10-IEEE802.16 and WiMax Applications: various Area Networks According to the applications, we define three “Area Networks”: • Personal Area Network (PAN), for communications within a few meters. This is the typical Bluetooth or Zigbee application between between personal devices such as your cell phone, desktop, earpiece and so on; • Local Area Network (LAN), for communications up 300 meters. Access points at the airport, coffee shops, wireless networking at home. Typical standard is IEEE802.11 (WiFi) or HyperLan in Europe. It is implemented by access points, but it does not support mobility; • Wide Area Network (WAN), for cellular communications, implemented by towers. Mobility is fully supported, so you can move from one cell to the next without interruption. Currently it is implemented by Spread Spectrum Technology via CDMA, CDMA-2000, TD-SCDMA, EDGE and so on. The current technology, 3G, supports voice and data on separate networks. For current developments, 4G technology will be supporting both data and voice on the same network and the standard IEEE802.16 (WiMax) and Long Term Evolution (LTE) are the candidates More Applications 1. WLAN (Wireless Local Area Network) standards and WiFi. In particular: • IEEE 802.11a in Europe and North America • HiperLAN /2 (High Performance LAN type 2) in Europe and North America • MMAC (Mobile Multimedia Access Communication) in Japan 2. WMAN (Wireless Metropolitan Network) and WiMax • IEEE 802.16 3. Digital Broadcasting • Digital Audio and Video Broadcasting (DAB, DVB) in Europe 4. Ultra Wide Band (UWB) Modulation • a very large bandwidth for a very short time. 5. Proposed for IEEE 802.20 (to come) for high mobility communications (cars, trains …) IEEE 802.16 Standard IEEE 802.16 2004 ( http://www.ieee802.org/16/ ): Part 16: Air Interface for Fixed Broadband Wireless Access Systems From the Abstract: • It specifies air interface for fixed Broadband Wireless Access (BWA) systems supporting multimedia services; • MAC supports point to multipoint with optional mesh topology; • multiple physical layer (PHY) each suited to a particular operational environment: IEEE 802.16-2004 Standard Table 1 (Section 1.3.4) Air Interface Nomenclature: • WirelessMAN-SC, Single Carrier (SC), Line of Sight (LOS), 10-66GHz, TDD/FDD • WirelessMAN-SCa, SC, 2-11GHz licensed bands,TDD/FDD • WirelessMAN OFDM, 2-11GHZ licensed bands,TDD/FDD • WirelessMAN-OFDMA, 2-11GHz licensed bands,TDD/FDD • WirelessHUMAN 2-11GHz, unlicensed,TDD MAN: Metropolitan Area Network HUMAN: High Speed Unlicensed MAN IEEE 802.16e 2005: Part 16: Air Interface for Fixed and Mobile Broadband Wireless Access Systems Amendment 2: Physical and Medium Access Control Layers for Combined Fixed and Mobile Operation in Licensed Bands and Corrigendum 1 Scope (Section 1.1): • it enhances IEEE 802.16-2004 to support mobility at vehicular speed, for combined fixed and mobile Broadband Wireless Access; • higher level handover between base stations; • licensed bands below 6GHz. IEEE 802.16-2004: Reference Model (Section 1.4), Figure 1 External Data By Layers: CS-SAP Service Specific Convergence Sublayer (CS) SAP=Service Access Point Section 5 MAC-SAP MAC MAC Common Part Convergence Sublayer (CS) Security Sublayer Section 6 Section 7 PHY-SAP PHY Physical Layer Section 8 Parameters for IEEE 802.16 (OFDM only) 802.16-2004 802.16e-2005 Frequency Band 2GHz-11GHz 2GHz-11GHz fixed 2GHz-6GHz mobile OFDM carriers OFDM: 256 OFDMA: 2048 OFDM: 256 OFDMA: 128, 256, 512,1024, 2048 Modulation QPSK, 16QAM, 64QAM QPSK, 16QAM, 64QAM Transmission Rate 1Mbps-75Mbps 1Mbps-75Mbps Duplexing TDD or FDD TDD or FDD Channel Bandwidth (1,2,4,8)x1.75MHz (1,4,8,12)x1.25MHz 8.75MHz (1,2,4,8)x1.75MHz (1,4,8,12)x1.25MHz 8.75MHz IEEE802.16 Structure data randomization data De-rand. Error Correction Coding Error Correction Decoding M-QAM mod OFDM mod M-QAM dem OFDM dem TX RX Choices: Coding rates M-QAM 1/2 2 2/3 4 3/4 16 5/6 64 OFDM carriers Channel B/width 256 1.25 MHz 512 5 MHz 1024 10 MHz 2048 … OFDM and OFDMA (Orthogonal Frequency Division Multiple Access) • Mobile WiMax is based on OFDMA; • OFDMA allows for subchannellization of data in both uplink and downlink; • Subchannels are just subsets of the OFDM carriers: they can use contiguous or randomly allocated frequencies; • FUSC: Full Use of Subcarriers. Each subchannel has up to 48 subcarriers evenly distributed through the entire band; • PUSC: Partial Use of Subcarriers. Each subchannel has subcarriers randomly allocated within clusters (14 subcarriers per cluster) . Section 8.3.2: OFDM Symbol Parameters and Transmitted Signal OFDM Symbol Ts Tg guard Tb data (CP) Tg 1 1 1 1 , , , Tb 4 8 16 32 An OFDM Symbol is made of • Data Carriers: data • Pilot Carriers: synchronization and estimation • Null Carriers: guard frequency bands and DC (at the modulating carrier) pilots data frequency Guard channel Guard band band N guards to provide frequency guards betw een cha nnels N nulls N guards 1 (D C subcarrier is alw ays zero) N pilots pilots for channel tracking and synchronization N data data subcarriers N used N pilots N dat a OFDM Subcarrier Parameters: FFT size 256 128 512 1024 2048 N_used 200 108 426 850 1702 N_nulls 56 20 86 174 346 N_pilots 8 12 42 82 166 N_data 192 96 384 768 1536 Fixed WiMax Fixed and Mobile WiMax IEEE 802.16, with N=256 Data (192) Pilots (8) Nulls (56) X [k ] k n 0 12 x[ n L ] 0 13 24 38 24 24 12 63 88 100 101 12 24 IFFT 155 156 168 193 24 218 24 12 243 255 255 IEEE802.16 Implementation In addition to OFDM Modulator/Demodulator and Coding we need • Time Synchronization: to detect when the packet begins • Channel Estimation: needed in OFDM demodulator • Channel Tracking: to track the time varying channel (for mobile only) In addition we need • Frequency Offset Estimation: to compensate for phase errors and noise in the oscillators • Offset tracking: to track synchronization errors Basic Structure of the Receiver Channel Estimation: estimate the frequency response of the channel Time Synchronization: detect the beginning of the packet and OFDM symbol Received Signal Demodulated Data WiMax Demodulator Time Synchronization In IEEE802.16 (256 carriers, 64 CP) Time and Frequency Synchronization are performed by the Preamble. Long Preamble: composed of 2 OFDM Symbols Short Preamble: only the Second OFDM Symbol First OFDM Symbol Second OFDM Symbol 320 samples 320 samples 2 repetitions of a long pulse + CP 4 repetitions of a short pulse+CP 64 Tg 64 64 Td 64 64 64 Tg 128 128 Td The standard specifies the Down Link preamble as QPSK for subcarriers between -100 and +100: 1 j, PALL [ k ] 0, k 100 ,..., 1, 1,..., 100 otherwise Using the periodicity of the FFT: PALL [ k ], k 1,..., 100 1 PALL [ k ] PALL [ 256 k ], k 100 ,..., 1 100 156 255 • Short Preamble, to obtain the 4 repetitions, choose only subcarriers multiple of 4: * 2 PALL [ k ], if k mod 4 0 P4 [ k ] otherwise 0, P4 [ k ] p4[n] FFT 0 4 8 64 252 64 64 255 0 255 p4[n] Add Cyclic Prefix: 64 0 64 64 64 64 64 255 319 • Long Preamble: to obtain the 2 repetitions, choose only subcarriers multiple of 2 : 2 PALL [ k ], if k mod 2 0 P2 [ k ] otherwise 0, P2 [ k ] p2[n] FFT 0 2 4 6 8 128 252 255 0 255 254 128 p2[n] Add Cyclic Prefix: 64 128 128 0 CP 319 Several combinations for Up Link, Down Link and Multiple Antennas. We can generate a number of preambles as follows: With 2 Transmitting Antennas: 2 PALL [ k ], if k mod 2 0 P [k ] otherwise 0, 0 2 2 PALL [ k ], if k mod 2 1 P [k ] otherwise 0, 1 2 With 4 Transmitting Antennas: m 0 m 1, 2 ,3 * 2 P [ k ], if k mod 4 0 0 ALL P4 [ k ] otherwise 0, * P [ k 2 m ], if k mod 4 m m ALL P4 [ k ] otherwise 0, Time Synchronization from Long Preamble 1. Coarse Time Synchronization using Signal Autocorrelation Received signal: preamble 64 128 OFDM Symbols 128 n0 Compute Crosscorrelation Coefficient: 2 127 ry [ n ] 2 y [n ] xcorr z 128 y [ n ] y [ n 128 ] * 0 127 127 2 2 y [ n ] y [ n 128 ] 0 0 Effect of Periodicity on Autocorrelation (no Multi Path). Let L=64. Max starts at n n 0 64 …. Same signal y [n ] 64 128 data 128 n n0 y [ n 128 ] 64 128 data 128 n 2 ry [ n ] MAX when y [ n ] y [ n 128 ] 1 n 0 64 n0 n Effect of Periodicity on Autocorrelation (no Multi Path): … and ends at n n 0 Same signal y [n ] 64 128 data 128 n n0 y [ n 128 ] 64 128 data 128 n 2 ry [ n ] MAX when y [ n ] y [ n 128 ] 1 n n 0 64 n0 Effect of Periodicity on Autocorrelation (with Multi Path of max length LC L 64 ): Max starts at n n 0 64 LC LC L Same signal y [n ] 64 …. 128 data 128 n n0 y [ n 128 ] 64 128 data 128 n 2 ry [ n ] MAX when y [ n ] y [ n 128 ] 1 n 0 64 LC n0 n Effect of Periodicity on Autocorrelation (with Multi Path of max length L C L ): and ends at n n 0 LC L Same signal y [n ] 64 128 data 128 n n0 y [ n 128 ] 64 128 data 128 n 2 ry [ n ] MAX when y [ n ] y [ n 128 ] 1 n n 0 64 LC n0 With Noise: y [ n ] y R [ n ] w [ n ] Then, at the maximum: 2 127 ry [ n 0 ] y [ n 0 ] y [ n 0 128 ] * 0 2 127 127 2 2 ] 128 n [ y ] n [ y 0 0 0 0 2 127 y R [ n0 ] 2 0 2 127 2 y R [ n 0 ] w[ n 0 ] 0 1 R SN SN R 2 2 Information from Crosscorrelation coefficient: Estimate of SNR SN R rM AX 1 rM AX r y [n ] Estimate of Beginning of Data n 0 Estimate of Channel Length L C L 2. Fine Time Synchronization using Cross Correlation with Preamble y [n ] 127 ryp [ n ] xcorr y[ n ] p [ ] * l0 p[ n ] Since the preamble is random (almost like white noise), it has a short autocorrelation: y [n ] 64 128 128 ryp [ n ] n n0 p[ n ] 128 0 127 n n 0 256 n 0 128 … with dispersive channel y [n ] 127 ryp [ n ] xcorr y[ n ] p [ ] * l0 p[ n ] Since the preamble is random, almost white, recall that the crosscorrelation yields the impulse response of the channel | h[ n ] | y [n ] 64 128 128 ryp [ n ] n n0 p[ n ] 128 0 127 n n 0 256 n 0 128 However this expression is non causal. It can be written as (change index 127 ): 127 ryp [ n ] y[ n ] p [ ] * l0 127 y [ n 127 ] p [127 ] * l0 ryp [ n 127 ] Which van be computed as the output of an FIR Filter with impulse response: * * ~ p [ n ] p [127 n ], y [n ] * p [n] n 0 ,..., 127 * r yp [ n ] y [ n ] * ~ p [n] Taking the time delay into account we obtain: * ryp [ n ] p [n] y [n ] Since the preamble is random, almost white, recall that the crosscorrelation yields the impulse response of the channel | h[ n ] | y [n ] 64 128 128 ryp [ n ] n n0 p[ n ] 128 0 127 n n 0 129 n0 1 Compare the two (non dispersive channel): Autocorrelation of received data ry Crosscorrelation with preamble r yp n 0 128 n0 n 0 64 Synchronization with Dispersive Channel Autocorrelation of received data ry Crosscorrelation with preamble r yp Channel impulse response n0 Start of Data Synchronization with Dispersive Channel Let LC L be the length of the channel impulse response 64 LC Channel impulse response In order to determine the starting point, compute the energy on a sliding window and choose the point of maximum energy y [n ] xcorr p[ n ] c [n ] r yp [ n ] c [n ] r yp [ n ] 1 n L 1 n L=max length of channel = length of CP L 1 c[ n ] r k 0 yp [n k ] Maximum energy Example y [n ] xcorr p[ n ] r yp [ n ] Impulse response of channel c [n ] Auto correlation y [n ] max Cross correlation p[ n ] c [n ] Channel Estimation Recall that, at the receiver, we need the frequency response of the channel: X m [0] m-th data block X m [k ] X m [ N 1] w[ n ] Ym [ 0 ] OFDM TX h[n ] OFDM RX Y m [k ] Y m [ N 1] Transmitted: Received: Ym [ k ] H [ k ] X m [ k ] W [ k ] X m [k ] H [k ] channel freq. response W [k ] From the Preamble: at the beginning of the received packet. The transmitted signal in the preamble is known at the receiver: after time synchronization, we take the FFT of the received preamble Estimated initial time n0 Received Preamble: 64 128 128 256 samples FFT Y [0] Y [ k ] H [ k ] X p [ k ] W [ k ], k 0 ,..., 255 Y [k ] Y [ 255 ] Y [ k ] H [ k ] X p [ k ] W [ k ], k 0 ,..., 255 Solve for H [k ] using a Wiener Filter (due to noise): * Hˆ [ k ] Y [k ] X P [k ] | X p [ k ] | w 2 2 noise covariance Problem: when X p [k ] 0 we cannot compute the corresponding frequency response H [k ] X p [k ] 1 j Fact: by definition, X p [k ] 0 if k 2 , 4 ,..., 100 k 156 ,158 ,..., 254 otherwise (ie DC, odd values, frequency guards) Two solutions: 1. Compute the channel estimate Hˆ [ k ] Y [k ] X * preamble [k ] | X p [ k ] | w 2 2 only for the frequencies k such that X p [k ] 0 and interpolate for the other frequencies. This might not yield good results and the channel estimate might be unreliable; known interpolate k 2. Recall the FFT and use the fact that we know the maximum length L of the channel impulse response Y [k ] H [k ] X p [k ] W [k ] Since the preamble is such that either for the indices where | X p [ k ] | * Y [k ] X p [k ] 2 2 jk n L 1 N h [ n ]e n0 | X p [ k ] | 0 or | X p [ k ] | 2 2 we can write: X p [k ] W [k ] 2 * so that we have 100 equations and L=64 unknowns. for k 2 , 4 ,..., 100 k 156 ,158 ,..., 254 This can be written in matrix form: * Y [k ] X p [k ] 2 * vk h W [k ] X p [k ] 2 , k 2 , 4 ,..., 100 k 156 ,158 ,..., 254 where v k 1 jk e 2 256 jk e 2 256 ( L 1) , h[ 0 ] h [1] h h [ L 1 ] Write it in matrix form: 12 Y [2] X *p [2] v 2 h[0] 12 W [2] X *p [2] 1 Y [200] X * [200] v h[63] 1 W [200] X * [200] p 200 p 2 2 100 1 100 64 64 1 z Vh e 100 1 *T ˆ h V V Least Squares solution 1 V *T z this is ill conditioned. eigenvalues 5 10 128 0 10 -5 10 -10 10 -15 10 0 10 1 20 *T ˆ h V V I V z , *T 30 40 10 50 3 60 70 Channel Frequency Response Estimation: 1 1. Generate matrix M V *T V I V *T kF=[2,4,6,…,100, 156, …, 254]’; n=[0,…,63]; non-null frequencies (data and pilots) time index for channel impulse response V=exp(-j*(2*pi/256)*kF*n); M=inv(V’*V+0.001*eye(64))*V’; 2. Generate vector z from received data y[n]: Let n0 be the estimated beginning of the data, from time synchronization. Then y0=y(n0-256:n0-1); received preamble Y0=fft(y0); decoded preamble z=Y0(kF+1).*conj(Xp256(kF+1))/2; h=M*z; multiply by transmitted preamble channel impulse response 3. Channel Frequency Response: H=fft(h, 256); Simulink Implementation Trigger when preamble is detected Y [k ] h[n ] Channel Estimate out Data in y [n ] H [k ] * X p [k ] Example: Spectrum of Received Signal NOT TO SCALE As expected, it does not match in the Frequency Guards Estimated Frequency Response of Channel Start after processing preamble WiMax-2004 Demodulator WiMax256.mdl Standard OFDM Demod (256 carriers) data Error Correction Decoding Ch. Channel Tracking In mobile applications, the channel changes and we need to track it. IEEE802.16-2005 tracks the channel by embedding pilots within the data. In the FUSC (Full Use of Sub Carriers) scheme, the pilots subcarriers are chosen within the non-null subcarriers as 9 k 3m 1 with m symbol_ind ex mod 3 0 ,1, 2 0 ,..., 191 for N FFT 2048 0 ,..., 95 for N FFT 1024 k 0 ,..., 47 for N FFT 512 0 ,..., 11 for N 128 FFT subcarrier 0 1 4 7 OFDM Symbol m k nulls DC (null) pilots data nulls