Corresponding author.; Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
Olivier Hartmann
Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
Mathieu Léonardon
Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
Kun He
Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
Camille Leroux
Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
Romain Tajan
Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
Olivier Aumage
Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
Denis Barthou
Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
Thibaud Tonnellier
Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
Vincent Pignoly
Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
Bertrand Le Gal
Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
Christophe Jégo
Inria, Bordeaux Institute of Technology, LaBRI/CNRS, Bordeaux, France; CNRS IMS Laboratory, Bordeaux INP, University of Bordeaux, France
AFF3CT is an open source toolbox dedicated to Forward Error Correction (FEC or channel coding). It supports a broad range of codes: from widespread turbo codes and Low-Density Parity-Check (LDPC) codes to more recent polar codes. The toolbox is written in C++ and can be used either as a simulator to quickly evaluate algorithms characteristics, or as a library in Software Defined Radio (SDR) systems or for other specific needs. Most of the decoding algorithm implementations aim at low latency and high throughput, targeting multiple Gb/s on modern CPUs. This is crucial in both simulation and SDR use cases: Monte Carlo simulations require high performance implementation as they commonly target the estimation of approximately 1012bits. On the other hand, the implementations in real systems have to be very efficient to be competitive against dedicated hardware ones. Finally, AFF3CT emphasizes the reproducibility of state-of-the-art results by providing public references and open, modular source code. Keywords: Communication chain, Channel coding, Monte Carlo simulation, Forward error correction library, Digital modulation, Reproducible science, Multi-node, Multi-thread, Vectorization