(c) 2013 R. Newman University of Florida HomePlug 1.0 PHY (c) 2013 R. Newman University of Florida
What is HomePlug 1.0? Broadband PLC for home networking Open industry standard 4 manufacturers (including Intellon) Developed in 2000 by Homeplug Powerline Alliance (HPA) Consortium of chip designers, OEMs, PLC users Products shipped in 2001 First Ethernet class PLC, most widely available 11 Mbps coded PHY data rate 0ver 10 million units shipped ca. 2010 Comprises PHY – modulation, coupling, FEC, etc. MAC – medium access, ARQ, etc. Bridging – to other PLC networks or to 802.3/11/etc.
HP1.0 PHY Orthogonal Frequency Division Modulation Cyclic prefix Channel adaptation FEC Turbo product code RS/CC concatenated code Frames Preamble Delimiter PHY body Physical Carrier Sense (PCS)
HP1.0 Transmitter
HP1.0 Receiver
HP1.0 OFDM 128 evenly spaced carriers 0-25 MHz 5.12 us raw symbol time = 128 cycles 25MHz 256 IFFT samples at 50 MHz clock Cyclic prefix set to typical delay spread Reduces ISI 172 IFFT samples, with 8 samples roll-off 3.28 us guard interval 8.4 us total symbol time
Transmit Spectrum Mask Band used by HomePlug 1.0 FCC part 15 rules in North America restricts PSD Depends on frequency (other uses)
HP1.0 OFDM Band used is 4.49-20.7 MHz 84 carriers fall in that band (23-106) 8 carriers unused (FCC amateur bands) 76 usable carriers FCC Part 15 rules limit power spectral density -50dBm/Hz PSD Much lower than WiFi OFDM (and high data rates) possible due to improved processing speeds/capabilities Good coupling across all power phases Need only couple to one hot line + neutral
HP1.0 Carrier Modulation 76 usable carriers All modulated with same method Method depends on channel adaptation Modulation per carrier Coherent BPSK (FC) Differential BPSK (PHY payload) Differential QPSK (PHY payload) Up to 14 Mbps raw PHY rate Physical Carrier Sense (PCS) based on sync detection
HP1.0 PHY Frame Format
HP1.0 FEC Turbo product code/copy code Used in Frame Control (FC) RS/CC concatenated code Used in PHY Payload Rate 1/2 and 3/4 code – adapted to channel Up to 10 Mbps after coding Robust Performance in presence of noise/jammers ROBO mode for broadcast/multicast
HP1.0 Frame Control FEC Rate ¼ Turbo Product code Derived from (10,5,4) shortened extended Hamming Code Redundant Interleaver 4 symbols 1 bit per carrier Repeat codeword with offsets 0,25,50,75 over the 4 symbols
HP1.0 Frame Control Interleaver 0 1 2 … … … … ... … … … … 74 75 … ... 98 99 25 26 27… … … … … 74 75 … … 99 0 1 … … 24 50 51 52… … … … … 99 0 … … 24 25 … … … 49 75 76… … 99 0 … … 24 25 … … 49 50 … … … 74 Cutoff for coded bits for 76 carriers Make table with S rows (one row per symbol) S = 4 symbols in FC Fill each row with coded bits Start row R with bit 25R for R=0,1,…,S Step T = N/S, N = total coded bits Fill bits of symbol R with bits from row R Since BPSK, use first K bits, K = # carriers
HP1.0 Data FEC Reed-Solomon Code over GF(28) 23/39 – 238/254 for DBPSK, DQPSK 31/39 – 42/51 ROBO Derived from systematic (255,239,t=8) or (255,247,t=4) code Concatenated with Convolutional Code Constraint length 7 Rate ½ or ¾
HP1.0 Convolutional Encoder Convolutional Code K=7 Puncture rate ½ code to get ¾ rate code
HP1.0 ROBO Mode Used for broadcast/multicast, or for unicast when conditions are severe Coherent BPSK on all unmasked carriers 31/39 – 43/51 Reed-Solomon Code Rate depends on # unmasked carriers Derived from same codes as DPSK Convolutional Code Same as for DPSK Rate ½ only Redundant Interleaver makes 4x copy code
HP1.0 Channel Adaptation Decide modulation and FEC rate Determine channel characteristics – Sounding DBPSK or DQPSK Convolutional Code Rate (½ or ¾) Tone Map specifies these, plus Which carriers to drop (SNR too low) RS rate adapted to # bits/PHY Tx block Function of #carriers, bits/carrier, CC rate PHY transmission block 20 or 40 symbols 139 distinct rates achievable – nearly continuous 1Mbps-14.1 Mbps Use ROBO if rate is better
HP1.0 Channel Adaptation QPSK- ¾ QPSK-½ BPSK-¾ BPSK-½ First determine highest rate R = CM each carrier’s SNR can support For each combination of coding C and modulation M rate, determine the number N of carriers that can support it Then find combination that maximizes the product NR = bits/symbol e.g., QPSK ¾ has NR = 5x¾x2=7.5 QPSK ½ has NR = 15x½x2=15 BPSK ¾ has NR = 22x¾x1=16.5 , BPSK, ½ has NR = 25x½x1=12.5 QPSK
HP1.0 PHY PDU Preamble Set pattern of symbols Allows AGC, synch Frame Control (FC) Heavily coded, BPSK (low rate) Very robust Very few information bits (25) FC holds info for PHY Tone Map Index- for demodulation of body Frame duration (how long to demodulate)
HP1.0 Preamble Preamble Sync symbols lack cyclic prefix (repeated) + and – forms (– is inverted +) 6 SYNC + symbols (give signal power, phase) 1 ½ SYNC – symbols (give time reference) Detection used for PCS
HP1.0 PHY Frame Format Detect delimiter from preamble, correct FC SOF FC indicates symbol count, tone map Pad Frame Body to PHY Tx block boundary EOF FC delimits end of data frame
HP1.0 PHY Transmit Blocks Basic unit of data transmission 20-symbol and 40-symbol PHY Tx Blocks Frame Length field in SOF FC gives length In multiples of 20 symbols Start with as many 40 symbol PTBs as possible End with zero or one 20 symbol PTB Note that PHY Transmit Blocks are not numbered or acknowledged individually Whole MPDU is acknowledged
HP1.0 Priority Resolution Slots Two Priority Resolution Slots (PRS0 and PRS1) Follow end of a complete transmission (PPDU plus response, if expected) and gap (CIFS) Signal form is 6 SYNC– symbols These symbols have no CP, 30.72 usec. total Same as preamble, but inverted and shorter Multiple senders will constructively interfere Acts like “OR” of priority bits Priorities CA3=11, CA2=10,CA1=01,CA0=00 Start with MSB If “1” assert bit, else listen if other STA asserts If hear a “1” stop process, wait until next PRS0 Slot duration 35.84 usec to allow processing time
HP1.0 PHY Performance