I don't believe there is any table in that case. The SINR is used to calculate the Shannon-Hartley limit, which yields a maximum spectral efficiency that can be supported, and then the code selects the highest MCS that does not exceed that spectral efficiency. I briefly looked at the implementation (nr-amc.cc) and that is what it appears to me to be doing.
The other error model available is based on link simulations, as described in this paper: https://arxiv.org/abs/2001.10309
--
You received this message because you are subscribed to the Google Groups "5G-LENA-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to 5g-lena-user...@googlegroups.com.
To view this discussion, visit https://groups.google.com/d/msgid/5g-lena-users/13f7496e-a34f-4977-8b87-dddd50b3e1f2n%40googlegroups.com.
I believe that it does; see line 17501 of nr-eesm-t1.cc, or line 893 of nr-lte-mi-error-model.cc. Both of these map MCS index 15 to a modulation order of 4. As for which one gets called during simulation using the shannon model, I'm not sure since I haven't run simulations using that model, but perhaps you can inspect further from here.
- Tom
To view this discussion, visit https://groups.google.com/d/msgid/5g-lena-users/0d65dc09-c1fd-44b5-9c94-ec33104ec940n%40googlegroups.com.
cmd.AddValue("errorModel", "Error model: ns3::NrEesmCcT1, ns3::NrEesmCcT2, ns3::NrEesmIrT1, ns3::NrEesmIrT2, ns3::NrLteMiErrorModel", errorModel);
nrHelper->SetDlErrorModel(errorModel);
nrHelper->SetUlErrorModel(errorModel);
The SINR-BLER mapping depends on the MCS and CB size, and as Tom said, we used link-level simulators to obtain the such SINR-BLER look-up tables, for specific MCSs. We did that for MCS table 1 and MCS table 2 from NR (i.e., 5.1.3.1-1/2 from TS 38.214-j10), and not for MCS table 3 (intended for urllc), nor the latest MCS table 4 that includes up to MO=10. It is important to note that the ns3::NrLteMiErrorModel however uses the MCS table that was available for LTE.
2) You can see the mentioned Tables (5.1.3.1-1/2), and how each MCS index is mapped to the MO, code rate and SE, in the respective files: https://cttc-lena.gitlab.io/nr/html/nr-eesm-t1_8cc_source.html and https://cttc-lena.gitlab.io/nr/html/nr-eesm-t2_8cc_source.html --> McsEcrTable, McsMTable1, SpectralEfficiencyForMcs1...
3) The error model is used to determine the probability of successfully decoding a packet, at the receiver node. However, it can also be used for link adaptation, i.e. Adaptive Modulation and Coding (AMC) in NrAmc. In 5G-LENA, we support two methods for AMC: the ShannonModel and the ErrorModel. The objective is to select the MCS index for a given SINR and a given MCS table configured. In case of ShannonModel, the MCS is selected as Tom said. In case of the ErrorModel, the error model is also used for link adaptation, and the highest MCS is selected so that the resulting TBLER is below a 10%. THis can be configured also through the NrHelper, e.g.
Hope it helps!
BR,
Sandra