Abstract

Random linear network coding (RLNC) can greatly aid data transmission in lossy wireless networks. However, RLNC requires computationally complex matrix multiplications and inversions in finite fields (Galois fields). These computations are highly demanding for energy-constrained mobile devices. The presented case study evaluates hardware acceleration strategies for RLNC in the context of the Tensilica Xtensa LX5 processor with the tensilica instruction set extension (TIE). More specifically, we develop TIEs for multiply-accumulate (MAC) operations for accelerating matrix multiplications in Galois fields, single instruction multiple data (SIMD) instructions operating on consecutive memory locations, as well as the flexible-length instruction extension (FLIX). We evaluate the number of clock cycles required for RLNC encoding and decoding without and with the MAC, SIMD, and FLIX acceleration strategies. We also evaluate the RLNC encoding and decoding throughput and energy consumption for a range of RLNC generation and code word sizes. We find that for GF ( 2 8 ) and GF ( 2 16 ) RLNC encoding, the SIMD and FLIX acceleration strategies achieve speedups of approximately four hundred fold compared to a benchmark C code implementation without TIE. We also find that the unicore Xtensa LX5 with SIMD has seven to thirty times higher RLNC encoding and decoding throughput than the state-of-the-art ODROID XU3 system-on-a-chip (SoC) operating with a single core; the Xtensa LX5 with FLIX, in turn, increases the throughput by roughly 25% compared to utilizing only SIMD. Furthermore, the Xtensa LX5 with FLIX consumes roughly four orders of magnitude less energy than the ODROID XU3 SoC.

Highlights

  • Random linear network coding (RLNC) [1,2,3] is an increasingly popular coding method for complex, chaotic, or lossy communication networks

  • The gate count of the tensilica instruction-set extension (TIE) is measured as the number of NAND-2 equivalents as every logical equation can be expressed with only NAND gates [101]

  • This case study investigated the use of an application-specific instruction-set processor (ASIP) for random linear network coding (RLNC)

Read more

Summary

Introduction

Random linear network coding (RLNC) [1,2,3] is an increasingly popular coding method for complex, chaotic, or lossy communication networks. We thoroughly evaluate the performance of the developed ASIP system with the range of TIEs. In particular, we compare the Tensilica Xtensa LX5 with the range of TIEs in terms of hardware area (die size) as well as the number of compute cycles required for the RLNC encoding and decoding and the corresponding achieved throughput levels. The performance comparisons with a state-of-the-art fixed instruction set processor indicate roughly tenfold throughput increases while reducing the consumed energy by roughly three orders of magnitude with the studied ASIP system.

Mathematics of RLNC
Computation of RLNC
Xtensa LX5 Processor and TIE Design Flow
Hardware Acceleration for RLNC through TIEs
Matrix Inversion
Evaluation
Evaluation Metrics
Fixed Instruction-Set Processor Benchmark
Die Size and Gate Count
Clock Cycles and Speedup
RLNC Encoding and Decoding Throughput
Energy Consumption
Conclusions
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call