This module utilizes a parallel simulator submodule. To run the experiment, specify the experiment
section in the experiment JSON file.
Required parameters are:
src_dir
source dir containing code descriptioncode
JSON filename specifying codemodulation
in text format. In accordance with simulation submodue implementations, supported values areBPSK
,QPSK
,PAM-4
, andQAM-16
.algorithm
is the decoding algorithm. Supported values aresum_product
,min_sum
, andlayered_min_sum
,llr_scale
is applicable to the min-sum decoding algorithms.n_iterations
is the number of decoding iterations
The JSON file specifying code contains the following parameters:
pcm
is a parity check matrix (alist format)generator
is a text file containing the generator matrix (in space-separated format, seenumpy.savetxt
). If the generator matrix is not specified, then simulations will use zero-codewordspunc_idx
a list of punctured indices in the string format, like0:15
. If this parameter is absent, no puncturing is assumed.inf_bits
specifies indices of information bits. If this parameter is missing, then the output bit error rate will be evaluated using a whole codeword.
See main.py for more details.
See ldpc_5g.py script.
This software was tested on Ubuntu Linux and MacOS