AFF3CT - это симулятор и библиотека , посвященная коррекции прямого ошибки (FEC или CHANALE CODING ). Он написан в C ++ и поддерживает большой диапазон кодов: от хорошо разбросанных турбодов до новых полярных кодов, включая коды проверки паритета с низкой плотностью (LDPC) . AFF3CT может использоваться в качестве программы командной строки, и он имитирует цепочки связи на основе метода Монте -Карло.
Например, очень легко использовать оценку декодирования BER/FER полярного кода (2048,1723) от 1,0 до 4,0 дБ:
aff3ct -C " POLAR " -K 1723 -N 2048 -m 1.0 -M 4.0 -s 1.0И выход будет:
# ----------------------------------------------------
# ---- 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. Симулятор нацелен на высокоскоростные моделирования и широко использует параллельные методы, такие как SIMD, многопоточно-прочтения и многоодельные модели программирования. Ниже список функций, которые мотивировали создание симулятора:
AFF3CT был впервые предназначен для того, чтобы быть симулятором, но по мере его развития необходимость повторного использования подразделений кода усилилась: библиотека родилась. Ниже приведен список возможных приложений для библиотеки:
Если вы хотите использовать AFF3CT в качестве библиотеки, обратитесь к специальной странице документации.
Сначала убедитесь, что установили C++11 compiler , CMake и Git . Затем установите Aff3ct , работая:
git clone --recursive https://github.com/aff3ct/aff3ct.git
mkdir aff3ct/build
cd aff3ct/build
cmake .. -DCMAKE_BUILD_TYPE= " Release "
make -j4Если у вас есть проблемы, пожалуйста, сообщите нам об этом в нашем трекере.
Проект лицензирован по лицензии MIT.
Мы рекомендуем вам сослаться на статью в журнале SoftwareX: A. Cassagne et al.