There is a newer version of the record available.

Published June 14, 2021 | Version v3.0.0
Software Open

aff3ct/aff3ct: AFF3CT - Release 3.0.0

  • 1. Inria
  • 2. IMT Atlantique
  • 3. IMS Lab.
  • 4. Saint Petersburg Electrotechnical University "LETI"
  • 5. Thales Communication & Security
  • 6. BeTomorrow

Description

Changes listed below.

  • add tools::Sequence and tools::Pipeline
  • add 0-copy module::Adaptor for efficient tools::Pipeline implementation
  • add module::Binaryop, module::Unaryop, module::Reducer
  • add module::Switcher, module::Controller and module::Iterator to support loops and conditional structures (if, switch, ...)
  • add the hwloc dependency for thread pinning in tools::Sequence and tools::Pipeline
  • implement clonable modules (required for automated duplication in tools::Sequence)
  • add a status module::Socket for each task automatically
  • add a priority during the binding of a module::Socket
  • add an unbind method to module::Socket
  • add BCH and LDPC decoding status
  • add FRA, BE, FE, BER and FER as output sockets for monitor BFER
  • add Multi-kernel Polar encoders and decoders
  • add module::Extractor to extract information bits in a codeword
  • add module::Initializer, module::Incrementer, module::Sleeper and module::Finalizer
  • add module::Probe for very precise feedback
  • add module::Sink (write end of a communication system into a file)
  • add module::Subsequence to regroup multiple tasks in a single one
  • add tools::Interface (clone, reset, set_n_frames, is_done, set_seed, ...)
  • add the C++ API doc in Sphinx (Doxygen + Breathe + Sphinx)
  • add an inter-SIMD implementation of the BCH encoder
  • add new code rates to DVB-RCS2
  • add a set_n_frames method in the module::Module, tools::Sequence and tools::Pipeline
  • add native support of inter-frames (in the module::Task)
  • add a new socket CWD (codeword) to get the decoding status per frame
  • add the operator[] method for string in module::Module
  • add scripts (based on Clang AST) to simplify the automation of AFF3CT wrappers (Python, MATLAB)
  • add auto-stop feature in tools::Sequence and tools::Pipeline (based on the is_done interface)
  • add tools::Digraph (directed graph)
  • add a new operator= to module::Socket: sockets can be bound in both directions (SIN = SOUT or SOUT = SIN)

  • replace tools::Noise by a channel parameter (CP) socket in module::Channel and module::Modem

  • command Line Interface (CLI) has been externalized
  • split source code (src/) in public include/ and private src/ folders
  • simplify tools::Interleaver: no need to call the init method anymore
  • dockerize the CI/CD

  • fix a bug in the LDPC Gallager A decoder for irregular matrices

  • fix the bug on the majority vote of the LDPC Gallager B decoder
  • fix bug en the DVB-S2 constants (thx Ben Mathews)
  • fix Galois field segmentation fault

  • speedup the LDPC Gallager E (~x2)

  • remove SystemC/TLM interfaces

  • remove EXIT chart simulations
  • remove legacy simulation (without tools::Sequence)
  • remove SIN_SOUT socket type

Files

aff3ct/aff3ct-v3.0.0.zip

Files (3.3 MB)

Name Size Download all
md5:4f03a5785ce948636ebbeb10e588789b
3.3 MB Preview Download

Additional details

Related works