From 4012f63b094ebaa66ae8c0bbe2ab4c28509da938 Mon Sep 17 00:00:00 2001 From: sebastian Date: Mon, 30 Sep 2019 17:47:03 +0200 Subject: [PATCH] More documentation, Matlab BLER results to be updated. --- .../nrLDPC_decoder/doc/nrLDPC/nrLDPC.pdf | Bin 274029 -> 275258 bytes .../nrLDPC_decoder/doc/nrLDPC/nrLDPC.tex | 15 +++++---- .../CODING/nrLDPC_decoder/nrLDPC_decoder.c | 2 +- .../PHY/CODING/nrLDPC_decoder/nrLDPC_init.h | 2 +- .../PHY/CODING/nrLDPC_decoder/nrLDPC_mPass.h | 29 ++++++++++++++++++ 5 files changed, 40 insertions(+), 8 deletions(-) diff --git a/openair1/PHY/CODING/nrLDPC_decoder/doc/nrLDPC/nrLDPC.pdf b/openair1/PHY/CODING/nrLDPC_decoder/doc/nrLDPC/nrLDPC.pdf index a8e5eb85292f1325001335b0df9f9cc060519c81..beae2810dbacda7344608625a87465d9989c4d2a 100644 GIT binary patch delta 46834 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 E0qKc^sQ>@~ delta 45721 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 k^M0>pdxmx@6BGH*dy - * \date 27-03-2018 + * \date 30-09-2019 * \version 1.0 * \note * \warning diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_mPass.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_mPass.h index f477058e46..66715618d0 100644 --- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_mPass.h +++ b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_mPass.h @@ -77,6 +77,20 @@ static inline void *nrLDPC_circ_memcpy(int8_t *str1, const int8_t *str2, uint16_ /** \brief Copies the input LLRs to their corresponding place in the LLR processing buffer. + Example: BG2 + | 0| 0| LLRs --> | + BN Groups |22|23|10| 5| 5|14| 7|13| 6| 8| 9|16| 9|12|1|1|...|1| + ^---------------------------------------/---- / + _________________________/ | / + / ____________________________|___/ + / / \ + LLR Proc Buffer (BNG) | 1| 5| 6| 7| 8| 9|10|12|13|14|16|22|23| + Number BN in BNG(R15) |38| 2| 1| 1| 1| 2| 1| 1| 1| 1| 1| 1| 1| + Idx: 0 ^ ^ ^ + 38*384=14592 _____| ... | | + 50*384=19200 ----------------------------------- | + 51*384=19584 -------------------------------------- + \param p_lut Pointer to decoder LUTs \param llr Pointer to input LLRs \param p_procBuf Pointer the processing buffers @@ -308,6 +322,21 @@ static inline void nrLDPC_llr2CnProcBuf_BG1(t_nrLDPC_lut* p_lut, int8_t* llr, t_ /** \brief Copies the input LLRs to their corresponding place in the CN processing buffer for BG2. + Example: BG2 + | 0| 0| LLRs --> | + BN Groups |22|23|10| 5| 5|14| 7|13| 6| 8| 9|16| 9|12|1|1|...|1| + + + CN Processing Buffer (CNGs) | 3| 4| 5| 6| 8|10| + Number of CN per CNG (R15) | 6|20| 9| 3| 2| 2| + 0 ^ ^\ \ + 3*6*384=6912 _________| || \_____________ + (3*6+4*20+5*9)*384=54912____|| \ + Bit | 1| 2| 3| 4| 5| 6| + 3*Z CNs>| |< + ^ + 54912 + 3*384______| + \param p_lut Pointer to decoder LUTs \param llr Pointer to input LLRs \param p_procBuf Pointer to the processing buffers