Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LDPC on BSC channel - zero BE, FE #166

Open
ronzhin-dmitry opened this issue Feb 17, 2023 · 1 comment
Open

LDPC on BSC channel - zero BE, FE #166

ronzhin-dmitry opened this issue Feb 17, 2023 · 1 comment

Comments

@ronzhin-dmitry
Copy link

Hello!

I've installed AFF3CT via cmake, no problems were encountered.
However, when I try to simulate LDPC over BSC using provided example matrix, I get zero BE. Here is the command I launch:
./aff3ct -C "LDPC" --dec-h-path conf/dec/LDPC/AR4JA_4096_8192.qc -m 0.5 -M 0.5 --sim-stop-time 120 --chn-type BSC

Here is the output:

# ----------------------------------------------------
# ---- A FAST FORWARD ERROR CORRECTION TOOLBOX >> ----
# ----------------------------------------------------
# Parameters:
# * Simulation ------------------------------------
#    ** Type                      = BFER
#    ** Type of bits              = int32
#    ** Type of reals             = float32
#    ** Date (UTC)                = 2023-02-17 12:09:14
#    ** Git version               = v3.0.2
#    ** Code type (C)             = LDPC
#    ** Noise range               = 0.5 -> 0.5 dB
#    ** Noise type (E)            = EP
#    ** Seed                      = 0
#    ** Statistics                = off
#    ** Debug mode                = off
#    ** Inter frame level         = 1
#    ** Multi-threading (t)       = 8 thread(s)
#    ** Coset approach (c)        = no
#    ** Coded monitoring          = no
#    ** Bad frames tracking       = off
#    ** Bad frames replay         = off
#    ** Bit rate                  = 0.4 (2/5)
# * Source ----------------------------------------
#    ** Type                      = AZCW
#    ** Implementation            = STD
#    ** Info. bits (K_info)       = 4096
# * Codec -----------------------------------------
#    ** Type                      = LDPC
#    ** Info. bits (K)            = 4096
#    ** Codeword size (N_cw)      = 10240
#    ** Frame size (N)            = 10240
#    ** Code rate                 = 0.4 (2/5)
# * Encoder ---------------------------------------
#    ** Type                      = AZCW
#    ** Systematic                = yes
# * Decoder ---------------------------------------
#    ** Type (D)                  = BP_FLOODING
#    ** Implementation            = SPA
#    ** Systematic                = yes
#    ** H matrix path             = /mnt/d/Work/GitHub/aff3ct/build/bin/../../conf/dec/LDPC/AR4JA_4096_8192.qc
#    ** H matrix reordering       = NONE
#    ** Num. of iterations (i)    = 10
#    ** Stop criterion (syndrome) = on
#    ** Stop criterion depth      = 1
# * Modem -----------------------------------------
#    ** Type                      = BPSK
#    ** Implementation            = STD
#    ** Bits per symbol           = 1
#    ** Sigma square              = on
# * Channel ---------------------------------------
#    ** Type                      = BSC
#    ** Implementation            = STD
#    ** Complex                   = off
#    ** Add users                 = off
# * Monitor ---------------------------------------
#    ** Lazy reduction            = off
#    ** Frame error count (e)     = 100
#    ** Compute mutual info       = no
# * Terminal --------------------------------------
#    ** Enabled                   = yes
#    ** Frequency (ms)            = 500
#
# The simulation is running...
# -----------------||------------------------------------------------------||---------------------
# Event Probability||   Bit Error Rate (BER) and Frame Error Rate (FER)    ||  Global throughput
#       (EP)       ||                                                      ||  and elapsed time
# -----------------||------------------------------------------------------||---------------------
# -----------------||----------|----------|----------|----------|----------||----------|----------
#               EP ||      FRA |       BE |       FE |      BER |      FER ||  SIM_THR |    ET/RT
#                  ||          |          |          |          |          ||   (Mb/s) | (hhmmss)
# -----------------||----------|----------|----------|----------|----------||----------|----------
            0.5000 ||   326351 |        0 |        0 | 7.48e-10 | 3.06e-06 ||   11.139 | 00h02'00
# End of the simulation.

Using -m=-M=1.0 and -m=-M=0.0 changes nothing (although I supposed 1.0 means constant error in BSC).

Do I understand something wrong, what is the reason for zero BE, FE?
Thank you in advance.

@Alex-Xiaoyu-Ai
Copy link

Have you tried a larger code rate (say 0.75) instead of 0.4? There is a chance that for the rate-0.4 code used in your simulation is capable of correcting all the errors at a noise level of 0.5dB.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants