AFF3CT ist ein Simulator und eine Bibliothek , die der Vorwärtsfehlerkorrektur gewidmet ist (FEC oder Kanalcodierung ). Es ist in C ++ geschrieben und unterstützt eine große Auswahl an Codes: Von den gut verbreiteten Turbodcodes bis hin zu neuen Polarcodes, einschließlich der LDPC-Codes mit niedriger Dichte Parity-Check (LDPC) . AFF3CT kann als Befehlszeilenprogramm verwendet werden und simuliert Kommunikationsketten basierend auf einer Monte -Carlo -Methode.
Es ist beispielsweise sehr einfach, die BER/FER -Dekodierungsleistungen des (2048.1723) Polarcode von 1,0 bis 4,0 dB abzuschätzen:
aff3ct -C " POLAR " -K 1723 -N 2048 -m 1.0 -M 4.0 -s 1.0Und die Ausgabe wird sein:
# ----------------------------------------------------
# ---- 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. Der Simulator zielt auf Hochgeschwindigkeitssimulationen und verwendet ausgiebig parallele Techniken wie SIMD-, Multi-Threading- und Multi-Nodes-Programmiermodelle. Nachfolgend eine Liste der Funktionen, die die Erstellung des Simulators motivierten:
AFF3CT sollte zuerst ein Simulator sein, aber wie er entwickelte, wurde die Notwendigkeit, die Unterparts des Codes wiederzuverwenden, intensiv: Die Bibliothek wurde geboren. Im Folgenden finden Sie eine Liste möglicher Anwendungen für die Bibliothek:
Wenn Sie AFF3CT als Bibliothek verwenden, finden Sie auf der speziellen Dokumentationsseite.
Stellen Sie zunächst sicher, dass Sie einen C++11 compiler , CMake und Git installiert haben. Installieren Sie dann AFF3CT durch Ausführen:
git clone --recursive https://github.com/aff3ct/aff3ct.git
mkdir aff3ct/build
cd aff3ct/build
cmake .. -DCMAKE_BUILD_TYPE= " Release "
make -j4Wenn Sie Probleme haben, teilen Sie uns dies bitte in unserem Ausgabe -Tracker mit.
Das Projekt ist unter der MIT -Lizenz lizenziert.
Wir empfehlen Ihnen, den Artikel von Softwarex Journal zu zitieren: A. Cassagne et al., „AFF3CT: Eine Fast -Forward -Fehlerkorrektur -Toolbox!,„ Elsevier Softwarex, 2019 [Bibtex -Eintrag].