AFF3CT est un simulateur et une bibliothèque dédiée à la correction d'erreur directe (FEC ou codage de canal ). Il est écrit en C ++ et prend en charge une large gamme de codes: des codes turbo bien répandus aux nouveaux codes polaires, y compris les codes de vérification de parité basse densité (LDPC) . AFF3CT peut être utilisé comme programme de ligne de commande et simule les chaînes de communication basées sur une méthode Monte Carlo.
Il est très facile à utiliser, par exemple, d'estimer les performances de décodage BER / Fer du code polaire (2048,1723) de 1,0 à 4,0 dB:
aff3ct -C " POLAR " -K 1723 -N 2048 -m 1.0 -M 4.0 -s 1.0Et la sortie sera:
# ----------------------------------------------------
# ---- A FAST FORWARD ERROR CORRECTION TOOLBOX >> ----
# ----------------------------------------------------
# Parameters :
# [...]
#
# The simulation is running...
# ---------------------||------------------------------------------------------||---------------------
# Signal Noise Ratio || Bit Error Rate (BER) and Frame Error Rate (FER) || Global throughput
# (SNR) || || and elapsed time
# ---------------------||------------------------------------------------------||---------------------
# ----------|----------||----------|----------|----------|----------|----------||----------|----------
# Es/N0 | Eb/N0 || FRA | BE | FE | BER | FER || SIM_THR | ET/RT
# (dB) | (dB) || | | | | || (Mb/s) | (hhmmss)
# ----------|----------||----------|----------|----------|----------|----------||----------|----------
0.25 | 1.00 || 104 | 16425 | 104 | 9.17e-02 | 1.00e+00 || 4.995 | 00h00 ' 00
1.25 | 2.00 || 104 | 12285 | 104 | 6.86e-02 | 1.00e+00 || 13.678 | 00h00 ' 00
2.25 | 3.00 || 147 | 5600 | 102 | 2.21e-02 | 6.94e-01 || 14.301 | 00h00 ' 00
3.25 | 4.00 || 5055 | 2769 | 100 | 3.18e-04 | 1.98e-02 || 30.382 | 00h00 ' 00
# End of the simulation. Le simulateur cible des simulations à grande vitesse et utilise largement des techniques parallèles comme les modèles de programmation SIMD, multi-threading et multi-nodes. Ci-dessous, une liste des fonctionnalités qui a motivé la création du simulateur:
AFF3CT était d'abord destiné à être un simulateur mais au fur et à mesure de son développement, la nécessité de réutiliser les sous-parties du code s'est intensifiée: la bibliothèque est née. Vous trouverez ci-dessous une liste des applications possibles pour la bibliothèque:
Si vous cherchez à utiliser AFF3CT en tant que bibliothèque, veuillez vous référer à la page de documentation dédiée.
Assurez-vous d'abord d'avoir installé un C++11 compiler , CMake et Git . Puis installez AFF3CT en fonctionnant:
git clone --recursive https://github.com/aff3ct/aff3ct.git
mkdir aff3ct/build
cd aff3ct/build
cmake .. -DCMAKE_BUILD_TYPE= " Release "
make -j4Si vous rencontrez des problèmes, veuillez nous en informer sur notre tracker de problèmes.
Le projet est autorisé sous la licence du MIT.
Nous vous recommandons de citer l'article du logiciel Softwarex: A. Cassagne et al., «AFF3CT: une boîte à outils de correction d'erreurs rapide!,« Elsevier SoftwareX, 2019 [entrée Bibtex].