320 likes | 521 Views
UCLA Electrical Engineering Department-Communication Systems Laboratory. Interleaver-Division Multiple Access on the OR Channel. Miguel Griot, Andres Vila Casado, Wen-Yen Weng, Herwin Chan, Juthika Basak, Eli Yablanovitch, Ingrid Verbauwhede, Bahram Jalali, Rick Wesel.
E N D
UCLA Electrical Engineering Department-Communication Systems Laboratory Interleaver-Division Multiple Access on the OR Channel Miguel Griot, Andres Vila Casado, Wen-Yen Weng, Herwin Chan, Juthika Basak, Eli Yablanovitch, Ingrid Verbauwhede, Bahram Jalali, Rick Wesel
The OR Multiple Access Channel (OR-MAC) User 1 0 0 User 2 0 Receiver • If all users transmit zeros, receiver sees a zero. 0 User N Communication Systems Laboratory
The OR Multiple Access Channel (OR-MAC) User 1 1 0 User 2 1 Receiver • If any user transmits a one, receiver sees a one. 0 User N Communication Systems Laboratory
1 1 OR-MAC Capacity Region • Can achieve with joint decoding using random codes. • Successive decoding is also optimal if rate-splitting is used at the encoders with jointly optimized ones densities [Grant 01]. Rate of User 2 • All n-tuples with sum-rate ≤1 form the capacity region. Rate of User 1 Communication Systems Laboratory
Interleaver Division Multiple Access(IDMA) User 1 Encoder Interleaver 1 User 2 Same Encoder Interleaver 2 Still Same Encoder Interleaver N User N • Interleaver-Division Multiple Access [Ping 02] allows a single encoder/decoder pair to work for all users. • Introduced for CDMA channels, but easily generalizes to most memoryless MAC channels. Communication Systems Laboratory
Ways to use IDMA... • IDMA plus an optimal code (or codes if we have various rates) can achieve optimal sum-rate with joint decoding. • IDMA plus optimal codes and jointly optimized ones densities can achieve the optimal sum-rate with successive decoding. • IDMA plus a short block length code and single-user decoding treating all other users as noise is pretty silly… • No, it’s very practical for gigabit decoding rates. Communication Systems Laboratory
1 1 0 0 Single-User Decoding produces a Z-Channel • N users, all transmitting with the same ones density p: • P(X=1)=p • P(X=0)=1-p • Focus on a desired user • If desired user transmits a 1, a 1 will be received. • A 0 will be received only if all users transmit a 0 Communication Systems Laboratory
To maximize H(Y) Output should Have 50% ones Theoretical Sum-Rate Comparison Optimal ones densities: Communication Systems Laboratory
What can I achieve with a latency of 35 bits? User 1 Trellis Encoder Interleaver 1 User 2 Interleaver 2 Viterbi Decoder Trellis Encoder Trellis Encoder Interleaver N User N • The required trellis code needs to be nonlinear at the binary level to achieve a very low ones density. • A new definition of distance is required. • A design approach is needed. Communication Systems Laboratory
Trellis Code Parameters State at time (t+1): Input 0 State at time t: Input 1 • Density of ones p. • Rate-1/n (1 input bit, n output bits). • S=2v states (represented by v bits). • 2S branches. Communication Systems Laboratory
Input 0 1 0 Input 1 Controlling the ones density • There are S/2 of these sub-graphs. • In this subgraph of four branches, assign a Hamming weight of w+1 to i branches, and a Hamming weight of w to (4-i) branches. Communication Systems Laboratory
Example Hamming Weight Assignments • 6-user Rate-1/20 Trellis Code • n=20, desired p=0.125 • Two branches with weight 2 • Two branches with weight 3 • 100-user rate-1/400 Trellis Code • n=400, desired p=0.0069 • One branch with weight 2 • Three branches with weight 3 Communication Systems Laboratory
Directional Distance • Define the directional Hamming distance as the number of ones that have to be added to a codeword so that all ones of the other codeword are present in the received word. • For two codewords with different Hamming weights, if the received word contains all ones from both codewords, the one with larger Hamming weight will be more likely than the codeword with smaller Hamming weight. Communication Systems Laboratory
Trellis Code Design • A trellis branch belongs to many codewords, so we don’t know which direction is the important one. • Code design branch metric chooses the smaller of the two directional distances: Communication Systems Laboratory
split merge merge split Ungerboeck’s Rule • Maximize distance between all splits and merges. • All output values have Hamming distance of w or w+1. • There are at least v+1 branches in an error event. Communication Systems Laboratory
Extending Ungerboeck’s rule • One can extend Ungerboeck’s rule into the trellis. 0 1 Maximize split Communication Systems Laboratory
Extending Ungerboeck’s rule • One can extend Ungerboeck’s rule into the trellis. 0 0 1 1 0 1 Maximize Communication Systems Laboratory
Extending Ungerboeck’s rule • One can extend Ungerboeck’s rule into the trellis. Note that by maximizing the distance between the 8 branches, coming from a split 2 trellis section before, we are maximizing all groups of 4 branches coming from a split in the previous trellis section, and all splits. 0 0 1 1 Maximize 0 1 Communication Systems Laboratory
Designing for a very low desired ones density • For a low enough desired ones density, all the branches can be chosen to have maximum distance. The design becomes straight-forward. • It is possible to choose all branches so that there is at most 1 branch that has a 1 in a given position. • Straight-forward design: • Assign Hamming weights to branches • For each branch, add ones in positions that aren’t used in previous branches • Example: 100-user OR-MAC, Communication Systems Laboratory
6-user BER 10-5 Trellis Code Simulations, Bounds, FPGA Results Communication Systems Laboratory
Results: observations • An error floor can observed for the FPGA rate-1/20 NL-TCM. • This is mainly due to the fact that, while theoretically a 1-to-0 transition means an infinite distance, for implementation constraints those transitions are given a value of 20. • Trace-back depth of 35. • Additional coding required to lower BER to below 10-9. Communication Systems Laboratory
6-user BER 10-5 C-Simulation Performance Results: 6-user OR-MAC Communication Systems Laboratory
Could do Joint Decoding… Results for Rate-1/20 p=0.125 code. Communication Systems Laboratory
C-Simulation Performance Results: NL-TCM only, 100-user OR-MAC Communication Systems Laboratory
Reed-Solomon + NL-TCM : Results • A concatenation of the rate-1/20 NL-TCM code with (255 bytes,247 bytes) Reed-Solomon code has been tested for the 6-user OR-MAC scenario. • This RS-code corrects up to 8 erred bits. • The resulting rate for each user is (247/255).(1/20) • The results were obtained using a C program to apply the RS-code to the FPGA NL-TCM output. Communication Systems Laboratory
Optical MAC Coding Architecture 2 Gbps Reed Solomon (255, 237) Trellis Code 1/20 int OR channel 93 Mbps 5 other tx Correct extra errors Separate different transmitters Asychronous Access code Communication Systems Laboratory
Demonstration FPGA with both Transmitter and Receiver (slide 29) FPGA Transmitters Communication Systems Laboratory
Conclusions • We presented an Interleaver Division Multiple Access system for the OR-MAC. • A relatively low ones density is essential for the OR-MAC channel. • We presented a single-user trellis coded solution. • An arbitrary number of users is supported, maintaining relatively the same efficiency (around 30%). • Joint decoding for six-users increases efficiency to 50-60%. • Although these codes are not capacity achieving,a good part of the capacity is achieved, with a suitable BER for optical needs, and a complexity feasible for optical speeds with today’s technology. An FPGA implementation has been built to prove this fact. • Turbo coded single-user implementation (week supports) 60%. Communication Systems Laboratory
Future work: Capacity achieving codes • Capacity achieving codes. • Although they may not be feasible for optical speeds, with today’s technology, Turbo codes and LDPC codes will be feasible in the near future • Part of my immediate future’s work will be the design Turbo-Like codes, with an arbitrary ones density. • Most common Turbo-like codes are • Parallel concatenation of convolutional codes • Serially concatenated convolutional codes. • The convolutional codes will be replaced by properly designed NL-TCMs. Communication Systems Laboratory
Non-linear Turbo Like codes • Serial concatenation CC + NL-TCM: • Parallel concatenated NL-TCMs: CC Interleaver NL-TCM NL-TCM Interleaver NL-TCM Communication Systems Laboratory
Code details • For all implementations, states were used. • 6-user OR-MAC • n=20 : Sum-rate = 0.30 • 2 branches with Hw=2, 2 with Hw=3 (p=1/8). • h=3, g=2 : • n = 18 : Sum-rate = 1/3 • 3 branches with Hw=2, 1 with Hw=3 (p=1/8). • h=2,g=2 : • n = 17 : Sum-rate = 0.353 • all with Hw=2 (p=2/17=0.118). • h=2,g=2 : • 100-user OR-MAC, • n = 400 : w=2, i=3 (p = 0.006875) • n = 360 : w=2, i=2 (p = 0.006944) • for both cases Communication Systems Laboratory