150 likes | 374 Views
Achieving Full Rate Network Coding with Constellation Compatible Modulation & Coding. Suhua Tang Hiroyuki YOMO, Tetsuro UEDA, Ryu MIURA, Sadao OBANA ATR Adaptive Communications Research Laboratories, Japan Dec. 7, 2010 GlobeCom 2010, Miami, Florida, USA. Outline.
E N D
Achieving Full Rate Network Coding with Constellation Compatible Modulation & Coding Suhua Tang Hiroyuki YOMO, Tetsuro UEDA, Ryu MIURA, Sadao OBANA ATR Adaptive Communications Research Laboratories, Japan Dec. 7, 2010 GlobeCom 2010, Miami, Florida, USA
Outline • Relay with network coding (NC) • Rate-mismatch problem • Re-interpretation of network coding • Proposed scheme • FRNC: full-rate network coding • Simulation evaluation • Conclusion
T1:X T2:Y T1:X T2:Y T3:X T4:Y T2:Y T1:X T3:X㊉Y Relay with Network Coding • Wireless access network (Wireless LAN, cellular network) • Network coding improves relay efficiency: Larsson’06 [3], Popovski’06 [4] • Exploiting broadcast nature and a priori information M2 (AP) content server M1 Internet • Direct transmission High outage prob. (w/o RA) or low rate (w/ RA) RA: rate adaptation Direct transmission 2 packets exchanged within 2 slots M1 M2 • Decode and forward improves system reliability Plain decode-and-forward 2 packets exchanged within 4 slots M1 R M2 M1 R M2 Relay with network coding 2 packets exchanged within 3 slots (X㊉Y) ㊉ X → Y (X㊉Y) ㊉ Y → X
What Limits NC’s Performance? • Factors affecting performance of network coding • Rate mismatch • RM1/M2, NC (min rate): min(r1,r2) • NC is not beneficial if min(r1,r2) is much less than max(r1, r2) • min(r1,r2, …, rn) gets smaller as n increases • When does rate mismatch occur? • R is not in the middle Different average gains • R is in the middle Different instantaneous gains (fading) Packet length mismatch Lack of a priori information Rate mismatch M1 R M2 T2:Y M2 r2=54Mbps r1=6Mbps T3:X㊉Y T1:X M1 R M2 Y X 1000byte M1 R T3:X㊉Y, 6Mbps Y M3 500byte T3:X㊉Y M1 R M2 M1 R M2 M1 R M2 r2=54Mbps r2=24Mbps r1=6Mbps r1=36Mbps
r2=54Mbps r1=6Mbps M1 R M2 Y X T3:X㊉Y, 6Mbps r2=54Mbps r1=6Mbps M1 R M2 Y X T3:X㊉Y 6Mbps 54Mbps Efforts to Solve Rate Mismatch min-rate • Previous works • Two-way-relay • Larsson’08 [9] Constant envelope modulation (PSK) • Koike-Akino’08 [10] QPSK, 5-ary PSK • Alimi’08 (iPack) [12] Superposition coding + network coding • Multiple-way-relay • Yomo’09(NCSched) [8] • Opportunistic scheduling • Our aim: a complete solution • Dirty paper coding [Costa’83] tells us this is possible • Policy: constellation compatible modulation & coding (nesting constellation & retain min-distance) Full rate: broadcast the network coded packet, using the highest rate on each link
Re-interpretation of Network Coding T1:b1b0 T2:a1a0 • Relay transmits network coded message • With a priori info, each node has different interpretation • Rate is mainly limited by constellation size • Same constellation size rate mismatch • Remove rate mismatch by using different levels of constellation together, e.g., QPSK+16QAM? M1 R M2 r1 (QPSK) r2 (16QAM) T3:b1b0㊉a1a0, QPSK b1b0=11: M1RM2 a1a0=01: M2RM1 0x 1x 1x 0x 0x 1x S1: 01 S3: 11 SA2: 10 SA0: 00 SB0: 00 SB2: 10 x1 x0 x0 x0 x1 x1 S0: 00 S2: 10 SA3: 11 SA1: 01 SB1: 01 SB3: 11 R transmits XORed sum a1a0㊉b1b0=10 At receiver M2 Constellation for b1b0 (a1a0=01 known a priori) 01 ㊉ 00 = 01 => SB0 01 ㊉ 01 = 00 => SB1 01 ㊉ 10 = 11 => SB2 01 ㊉11= 10 => SB3 At receiver M1 Constellation for a1a0 (b1b0=11 known a priori) 00 ㊉ 11 = 11 => SA0 01㊉ 11 = 10 => SA1 10 ㊉ 11 = 01 => SA2 11 ㊉ 11 = 00 => SA3 a1a0 b1b0 b1b0 a1a0
… Mn M1 Mk R M2 Mj … … Mi System Model (FRNC) • A network with a relay R and n nodes Mi • n flows: each node starts a flow with another node • Packets of each flow are forwarded by R • Two stages: Multiple access stage; Broadcast stage(NC) • This paper: realize full-rate in the broadcast stage • Use the highest rate of all links simultaneously • Assumption • (i) There are enough data for each flow to transfer • (ii) The a priori information is available (each node overhears all necessary packets) • (iii) the relay node knows the CSI of all links M2 M2 P2 P2 P1 P1 M1 R M3 M1 R M2 P3 R P2 P3 P4 M1 M3 Special case: n=2 P1 M4 Special case: n=3 Special case: n=4 A network with a relay and n nodes
NC Transmission At Relay • Transmit a number of symbols • r1≤r2 ≤ … ≤rn • Re-framing (N*ri) • Use different constellations together • Post-COD is added to nest low level constellation inside high level constellation E.g., QPSK inside 16QAM • Select a subset of high level constellation points as the low level constellation E.g, 4 16QAM points for QPSK • Key point 1: retain min-distance of low-level constellation • Key point 2: demodulate the signal (modulated with high level constellation) using low level constellation c2=1/2, m2=4 (16QAM) r2= c2*m2=2bit/sym N*r2=4bits/frame c1=1/2, m1=2 (QPSK) r1= c1*m1=1bit/sym N* r1=2bits/frame M1 R M2 Frame Length: N = 2 symbols for M1 for Mn Frame Frame P1,U=10 Pn,U=1101 CH-COD CH-COD P1,C=1101 … Pn,C=11100010 QPSK 16QAM Post-COD Post-COD P1=11110011 Pn=11100010 ㊉ 16QAM P∑=P1㊉…㊉Pn=00010001 MOD At relay R x∑=(S1S1)16QAM
Nesting QPSK inside 16QAM P1,C P2,C QPSK constellation under given a priori info (a3a2a1a0=1110) M1 R M2 r1 (QPSK) r2 (16QAM) T3:P1㊉P2 00xx (-0.948) 01xx (-0.316) 11xx (0.316) 10xx (0.948) 00xx (-0.948) 01xx (-0.316) 11xx (0.316) 10xx (0.948) xx10 (0.948) xx10 (0.948) SB2: 10 SB0: 00 S2: 0010 S6: 0110 S14: 1110 S10: 1010 xx11 (0.316) xx11 (0.316) S3: 0011 S7: 0111 S15: 1111 S11: 1011 xx01 (-0.316) xx01 (-0.316) SB3: 11 SB1: 01 S1: 0001 S5: 0101 S13: 1101 S9: 1001 xx00 (-0.948) xx00 (-0.948) S0: 0000 S4: 0100 S12: 1100 S8: 1000 At relay R At receiver M1, constellation for b1b0 (a3a2a1a0=1110 known a priori) 0000 ㊉ 1110 = 1110 => SB0 0011 ㊉ 1110 = 1101 => SB1 1100 ㊉ 1110 = 0010 => SB2 1111㊉ 1110 = 0001 => SB3 P1,C=1101 P2,C=11100010 P1 =11110011 P2 =11100010 00 01 10 11 P∑=P1㊉P2=00010001 x∑=(S1S1)16QAM b1b0 b1b1b0b0 a3a2a1a0 Post-COD: simple repetition for this example P1,C P1 P2
Network decoding is realized by modulation constellation conversion NC Reception At Node b1b0: (00, 01,10, 11) (S0, S1, S2, S3)QPSK c2=1/2, m2=4 (16QAM) r2= c2*m2=2bit/sym N*r2=4bits/frame c1=1/2, m1=2 (QPSK) r1= c1*m1=1bit/sym N* r1=2bits/frame M1 R M2 P1,U=10 Pn,U=1101 a priori info a priori info for M1 P1, …, Pn-1 P2, …, Pn for Mn CH-DEC CH-DEC ㊉ ㊉ P1,C=1101 Pn,C=11100010 P1㊉…㊉Pn-1 P2㊉…㊉Pn DEMOD … NC-DEC =11110011 =11100010 x1=(S3S1)QPSK P∑=00010001 NC-DEC DEMOD s1(t) x∑=(S1S1)16QAM sn(t)
Discussion 0x (-0.707) 1x (0.707) • What is the min-distance of low level constellation, when nested inside a high level constellation? • Remain the same or decrease a little S1: 01 S3: 11 x1 (0.707) dstd x0 (-0.707) S0:00 S2: 10 Potential SNR loss in constellation conversion. 00xx (-0.948) 01xx (-0.316) 11xx (0.316) 10xx (0.948) xx10 (0.948) SB2: 10 SB0: 00 dderived xx11 (0.316) xx01 (-0.316) SB3: 11 SB1: 01 xx00 (-0.948)
A Simple Comparison • Comparison over the broadcast channel • DecFwd: r1/2+r2/2 • NetCod (min rate): min(r1,r2)*2 • FRNC (full rate): r1+r2 • #transmitted bits calculated with frame length N=2 c2=1/2, m2=4 (16QAM) r2= c2*m2=2bit/sym N*r2=4bits/frame c1=1/2, m1=2 (QPSK) r1= c1*m1=1bit/sym N* r1=2bits/frame M1 R M2
Simulation Evaluation • Evaluating performance of the broadcast channel (forwarding) • Frame length: N=4800 symbols • 10 rates (#modulation level * 2 coding rate) • Coding rate: 1/2, 2/3, 3/4; 4-state RSC (1, 5/7) • Modulation: BPSK, QPSK, 16QAM, 64QAM, 256QAM (802.11a except last one) • Independent block Rayleigh fading • Comparison: DecFwd, NetCod [3], NCSched [8], iPack [12], FRNC dM1R Two-way relay M1 R M2 • NetCod: total throughput reaches maximum when R lies in the middle, and decreases otherwise • iPack: has similar throughput as NetCod when R lies in the middle • FRNC: outperforms iPack/NetCod even when R lies in the middle due to the effect of fading • Throughput gain of FRNC against iPack reaches the max value 24% when the normalized distance equals 0.3 dM1M2 dM1R /dM1M2
Simulation Evaluation • General relay scenario with multiple nodes • Same setting as two way relay except the topology M2 M2 P2 P2 P1 P1 M1 R M3 M1 R M2 P3 R P2 P3 P4 M1 M3 Special case: n=2 P1 M4 Special case: n=3 Special case: n=4 • DecFwd transmits in a TDMA manner. Therefore, it cannot benefit from the increase in flows • NetCod, NCSched and FRNC all benefit from the increase in flows more or less. • Due to the different capability in handling rate mismatch, the slopes of three curves differ greatly.
Conclusion • Re-interpretation of network coding in the modulation level • Get the reason of rate mismatch • Our proposal: full rate network coding (FRNC) • Use the highest rate of all links simultaneously • Simulation evaluation • The proposal outperforms the state-of-the-art works, like NCSched [8], iPack [12], • In the future we will consider the limitation of constellation size & general post-coding