Channel Decoding in Wireless Communication Systems using Deep Learning

Similar documents
T325 Summary T305 T325 B BLOCK 4 T325. Session 3. Dr. Saatchi, Seyed Mohsen. Prepared by:

MATLAB is working with vectors and matrices, using different operators and functions.

The Data Link Layer. CS158a Chris Pollett Feb 26, 2007.

BER Evaluation of LDPC Decoder with BPSK Scheme in AWGN Fading Channel

Comparative Performance Analysis of Block and Convolution Codes

Convolutional Codes. COS 463: Wireless Networks Lecture 9 Kyle Jamieson. [Parts adapted from H. Balakrishnan]

Quantized Iterative Message Passing Decoders with Low Error Floor for LDPC Codes

On combining chase-2 and sum-product algorithms for LDPC codes

Polar Codes for Noncoherent MIMO Signalling

ELEC 691X/498X Broadcast Signal Transmission Winter 2018

Performance Evaluation of Transcoding and FEC Schemes for 100 Gb/s Backplane and Copper Cable

The Lekha 3GPP LTE Turbo Decoder IP Core meets 3GPP LTE specification 3GPP TS V Release 10[1].

IEEE 802.3ap Codes Comparison for 10G Backplane System

Low complexity FEC Systems for Satellite Communication

Non-Binary Turbo Codes Interleavers

Distributed Decoding in Cooperative Communications

Layered Decoding With A Early Stopping Criterion For LDPC Codes

Lowering the Error Floors of Irregular High-Rate LDPC Codes by Graph Conditioning

TURBO codes, [1], [2], have attracted much interest due

Quasi-Cyclic Low-Density Parity-Check (QC-LDPC) Codes for Deep Space and High Data Rate Applications

Capacity-approaching Codes for Solid State Storages

ACM for OTN Advantages and Enabling Technologies ECOC, Chandra Raj ViaSat Inc

Hardware Implementation

An FPGA Based Adaptive Viterbi Decoder

Perceptron: This is convolution!

Modulation and Coding. Laboratory. Channel Coding Hamming code

Performance analysis of LDPC Decoder using OpenMP

Search for Improvements in Low Density Parity Check Codes for WiMAX (802.16e) Applications

ITERATIVE decoders have gained widespread attention

Reduced Complexity of Decoding Algorithm for Irregular LDPC Codes Using a Split Row Method

Evaluating the Impact of Signal to Noise Ratio on IEEE PHY-Level Packet Loss Rate

Research Article Cooperative Signaling with Soft Information Combining

Arithmetic Coding for Joint Source-Channel Coding

Viterbi Algorithm for error detection and correction

CMSC 2833 Lecture 18. Parity Add a bit to make the number of ones (1s) transmitted odd.

Due dates are as mentioned above. Checkoff interviews for PS2 and PS3 will be held together and will happen between October 4 and 8.

CSEP 561 Error detection & correction. David Wetherall

Piecewise Linear Approximation Based on Taylor Series of LDPC Codes Decoding Algorithm and Implemented in FPGA

ENEE x Digital Logic Design. Lecture 3

Implementation of Novel BP Algorithm for LDPC Decoding on a General Purpose Mobile ARM11 CPU

Neural Offset Min-Sum Decoding

Performance Analysis of Min-Sum LDPC Decoding Algorithm S. V. Viraktamath 1, Girish Attimarad 2

IMPLEMENTATION OF A BIT ERROR RATE TESTER OF A WIRELESS COMMUNICATION SYSTEM ON AN FPGA

International Journal of Research Available at

Multi-Megabit Channel Decoder

Machine Intelligence in Decoding of Forward Error Correction Codes.

VHDL Implementation of different Turbo Encoder using Log-MAP Decoder

Non-recursive complexity reduction encoding scheme for performance enhancement of polar codes

CRC Error Correction for Energy-Constrained Transmission

Design of a Low Density Parity Check Iterative Decoder

International Journal of Science Engineering and Advance Technology, IJSEAT, Vol 2, Issue 11, November ISSN

Adaptive Linear Programming Decoding of Polar Codes

LDPC Codes a brief Tutorial

PROPOSED DETERMINISTIC INTERLEAVERS FOR CCSDS TURBO CODE STANDARD

IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 53, NO. 2, FEBRUARY /$ IEEE

LOW-DENSITY PARITY-CHECK (LDPC) codes [1] can

Alternatives to Direct Supervision

Error-Correcting Codes

Performance of the Sum-Product Decoding Algorithm on Factor Graphs With Short Cycles

Multi-Rate Reconfigurable LDPC Decoder Architectures for QC-LDPC codes in High Throughput Applications

Convergence Analysis of Iterative Threshold Decoding Process

Error Resilience: A Distinct Approach for Comparative Analysis of Error Correcting Codes

Investigation of Error Floors of Structured Low- Density Parity-Check Codes by Hardware Emulation

Submission Title: Preliminary Performance of FEC Schemes in TG3d Channels

Graph-based Framework for Flexible Baseband Function Splitting and Placement in C-RAN

THE DESIGN OF STRUCTURED REGULAR LDPC CODES WITH LARGE GIRTH. Haotian Zhang and José M. F. Moura

Error Control Coding for MLC Flash Memories

The BICM Capacity of Coherent Continuous-Phase Frequency Shift Keying

On the construction of Tanner graphs

Communication Systems, 5e Chapter 13: Channel Coding

Capacity-Approaching Low-Density Parity- Check Codes: Recent Developments and Applications

Kevin Buckley

Introduction. Communication Systems Simulation - I. Monte Carlo method. Simulation methods

LDPC Simulation With CUDA GPU

An MSE Based Transfer Chart to Analyze Iterative Decoding Schemes

Implementation of a Turbo Encoder and Turbo Decoder on DSP Processor-TMS320C6713

Lecture / The Data Link Layer: Framing and Error Detection

Link Layer: Error detection and correction

Project: IEEE P Working Group for Wireless Personal Area Networks (WPANs)

Modern Communications Chapter 5. Low-Density Parity-Check Codes

FPGA Implementation of Binary Quasi Cyclic LDPC Code with Rate 2/5

Using SystemView by ELANIX to Generate Bit Error Rate (BER) Curves Maurice L. Schiff, Ph.D., Chief Scientist, ELANIX, Inc.

Image coding using Cellular Automata based LDPC codes

Project 1. Implementation. Massachusetts Institute of Technology : Error Correcting Codes Laboratory March 4, 2004 Professor Daniel A.

Optimal Overlapped Message Passing Decoding of Quasi-Cyclic LDPC Codes

Viterbi Decoder Block Decoding - Trellis Termination and Tail Biting Author: Michael Francis

Design Single and Multiple Errors Correction Block Codes

CS321: Computer Networks Error Detection and Correction

On the Implementation of Long LDPC Codes for Optical Communications

Deep Learning-Aided Trainable Projected Gradient Decoding for LDPC Codes

ISSCC 2003 / SESSION 8 / COMMUNICATIONS SIGNAL PROCESSING / PAPER 8.7

Implementation of Multidirectional Parity Check Code Using Hamming Code for Error Detection and Correction

HIGH THROUGHPUT LOW POWER DECODER ARCHITECTURES FOR LOW DENSITY PARITY CHECK CODES

On the Design of Iterative Codes for Magnetic Recording Channel. Greg Burd, Panu Chaichanavong, Nitin Nangare, Nedeljko Varnica 12/07/2006

LOW-POWER FLOATING-POINT ENCODING FOR SIGNAL PROCESSING APPLICATIONS. Giuseppe Visalli and Francesco Pappalardo

An Implementation of a Soft-Input Stack Decoder For Tailbiting Convolutional Codes

The Automation of the Feature Selection Process. Ronen Meiri & Jacob Zahavi

LP Decoding. LP Decoding: - LP relaxation for the Maximum-Likelihood (ML) decoding problem. J. Feldman, D. Karger, M. Wainwright, LP Decoding p.

Semidefinite Relaxation-Based Soft MIMO. Demodulation via Efficient Dual Scaling

The design and implementation of TPC encoder and decoder

Transcription:

Channel Decoding in Wireless Communication Systems using Deep Learning Gaurang Naik 12/11/2017 Deep Learning Course Project Acknowledgements: Navneet Agrawal, TU Berlin

Error Control Coding Wireless Communication System Hamming/LDPC/Turbo BPSK/QPSK/QAM Source Sink Channel Encoder Channel Decoder Modulator Demodulator Noise added Wireless channel What is Error Control Coding? Redundancy is added at the transmitter in a controlled fashion Helps receiver in correcting errors introduced by the random channel

Performance metric Bit Error Rate Significance Bit Error Rate = Lower the BER, more robust the system # of bits received in error # of total bits transmitted Performance of a wireless system is usually expressed in terms of BER versus Signal to Noise Ratio (SNR) curves Desired Performance Uncoded system Good code Better code

Channel Coding State-of-the-art Focus is limited to Linear Block codes C(n,k) We consider only BPSK modulation scheme with Additive White Gaussian Noise (AWGN) Encoding Process Simple matrix multiplication in binary field G m = c Decoding Process Usually much more complicated Sum Product Algorithm One of the best known algorithms to decode error control codes Leverages the parity check matrix - H Source: Wikipedia, (7,4) Hamming codes

Sum-Product Algorithm Tanner Graph x1 x2 Sequence of messages exchanged between variable and check nodes Message Log Likelihood Ratio (l) Prob bit = 0 l = log Prob bit = 1 x3 x4 x5 x6 f1 f2 f3 s x7 Variable Nodes Advantage: Can learn on a single codeword

Sum-Product Algorithm: Known Issues x1 Trapping Sets x2 x3 f1 x4 f2 x5 x6 f3 s x7 Variable Nodes Why are Trapping sets a problem?

SPA: Connection to Neural Networks Input LLRs Output LLRs Unrolled Tanner Graph

SPA-NN: SPA with Neural Networks Input 1 Input Check Nodes 2 3

SPA-NN: SPA with Neural Networks Input 1 2 3

SPA-NN: SPA with Neural Networks Variable Node Input

SPA-NN: SPA with Neural Networks Variable Node Input

SPA-NN: SPA with Neural Networks Variable Node Input Output

SPA-NN: SPA with Neural Networks Variable Node Input Output Output Prob (bit = 0)

Operations SPA SPA-NN

BER Equivalence of SPA and SPA-NN SNR (db)

Neural Network Decoder (NND) Variable Node Input Output Output Prob (bit = 0)

Neural Network Decoder (NND) Variable Node Input Output Output Prob (bit = 0)

Neural Network Decoder (NND) Variable Node Input Output Output Prob (bit = 0) Ground Truth Loss

Dataset Training data was generated by sampling the noisy channel output New samples were generated for each epoch so that NND can train on as many error patterns as possible The training data samples corresponded to SNR = 2,4 db. It was observed that training with samples at this SNR can generalize at low as well as high SNRs. Validation and Test dataset consists of samples at all SNRs

Parameters

Results (7,4) Hamming code Coding gain ~ 1.5 db

Results (32,16) Polar code Coding gain ~ 1.5 db

Summary Scalable learning NND needs to be trained only for one codeword Improved performance Can overcome shortcomings of SPA due to Trapping Sets For desired BER, fewer iterations can be used Faster decoding Future Work Analysis on choice of different hyperparameters Extension to longer codes, and other channel models

Thank You