NCTU OpInConnect

parent e0712dd8
......@@ -24,6 +24,15 @@
# brief OAI automated build tool that can be used to install, compile, run OAI.
# author Navid Nikaein, Lionel GAUTHIER, Laurent Thomas
# file build_oai
# brief Adjust simlist
# author Terngyin, NY, GK, KM (ISIP)
# email tyhsu@cs.nctu.edu.tw
# date 07-04-2020
# version 1.0
# note
# warning
set -e
# Include helper functions
......@@ -661,7 +670,7 @@ function main() {
if [ "$SIMUS_PHY" = "1" ] ; then
echo_info "Compiling physical unitary tests simulators"
# TODO: fix: dlsim_tm4 pucchsim prachsim pdcchsim pbchsim mbmssim
simlist="nr_dlsim "
simlist="nr_dlsim ldpctest"
#simlist="dlsim ulsim ldpctest polartest smallblocktest nr_pbchsim nr_dlschsim nr_ulschsim nr_dlsim nr_ulsim nr_pucchsim"
for f in $simlist ; do
compilations \
......
......@@ -31,6 +31,16 @@
* \warning
*/
/*!\file vcd_signal_dumper.c
* \brief Add some VCD signals of multi_ldpc_encoder
* \author Terngyin, NY, GK, KM (ISIP)
* \email tyhsu@cs.nctu.edu.tw
* \date 07-04-2020
* \version 1.0
* \note
* \warning
*/
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
......@@ -63,6 +73,7 @@ struct vcd_module_s {
const char* eurecomVariablesNames[] = {
"frame_number_TX0_eNB",
"multi_enc_finish",
"mask_ru",
"mask_tx_ru",
"frame_number_TX1_eNB",
......@@ -254,6 +265,15 @@ const char* eurecomVariablesNames[] = {
const char* eurecomFunctionsNames[] = {
/* softmodem signals */
"rt_sleep",
"multi_enc",
"multi_enc_0",
"multi_enc_1",
"multi_enc_2",
"multi_enc_3",
"multi_enc_4",
"multi_enc_5",
"multi_enc_6",
"multi_enc_7",
"trx_read",
"trx_write",
"trx_read_ue",
......
......@@ -32,6 +32,16 @@
* \warning
*/
/*!\file vcd_signal_dumper.h
* \brief Add some VCD signals of multi_ldpc_encoder
* \author Terngyin, NY, GK, KM (ISIP)
* \email tyhsu@cs.nctu.edu.tw
* \date 07-04-2020
* \version 1.0
* \note
* \warning
*/
#ifndef VCD_SIGNAL_DUMPER_H_
#define VCD_SIGNAL_DUMPER_H_
......@@ -40,6 +50,7 @@
/* WARNING: if you edit the enums below, update also string definitions in vcd_signal_dumper.c */
typedef enum {
VCD_SIGNAL_DUMPER_VARIABLES_FRAME_NUMBER_TX0_ENB=0,
VCD_SIGNAL_DUMPER_VARIABLES_MULTI_ENC_FINISH,
VCD_SIGNAL_DUMPER_VARIABLES_MASK_RU,
VCD_SIGNAL_DUMPER_VARIABLES_MASK_TX_RU,
VCD_SIGNAL_DUMPER_VARIABLES_FRAME_NUMBER_TX1_ENB,
......@@ -234,6 +245,15 @@ typedef enum {
typedef enum {
/* softmodem signals */
VCD_SIGNAL_DUMPER_FUNCTIONS_RT_SLEEP=0,
VCD_SIGNAL_DUMPER_FUNCTIONS_MULTI_ENC,
VCD_SIGNAL_DUMPER_FUNCTIONS_MULTI_ENC_0,
VCD_SIGNAL_DUMPER_FUNCTIONS_MULTI_ENC_1,
VCD_SIGNAL_DUMPER_FUNCTIONS_MULTI_ENC_2,
VCD_SIGNAL_DUMPER_FUNCTIONS_MULTI_ENC_3,
VCD_SIGNAL_DUMPER_FUNCTIONS_MULTI_ENC_4,
VCD_SIGNAL_DUMPER_FUNCTIONS_MULTI_ENC_5,
VCD_SIGNAL_DUMPER_FUNCTIONS_MULTI_ENC_6,
VCD_SIGNAL_DUMPER_FUNCTIONS_MULTI_ENC_7,
VCD_SIGNAL_DUMPER_FUNCTIONS_TRX_READ,
VCD_SIGNAL_DUMPER_FUNCTIONS_TRX_WRITE,
VCD_SIGNAL_DUMPER_FUNCTIONS_TRX_READ_UE,
......
......@@ -19,16 +19,15 @@
* contact@openairinterface.org
*/
/*!\file common/utils/T/T_defs.h
* \brief
* \author
* \date
* \version
* \company EURECOM
* \email
/*!\file T_defs.h
* \brief Update VCD_NUM_FUNCTIONS and VCD_NUM_VARIABLES
* \author Terngyin, NY, GK, KM (ISIP)
* \email tyhsu@cs.nctu.edu.tw
* \date 07-04-2020
* \version 1.0
* \note
* \warning
*/
*/
#ifndef _T_defs_H_
#define _T_defs_H_
......@@ -73,10 +72,10 @@ typedef struct {
} T_cache_t;
/* number of VCD functions (to be kept up to date! see in T_messages.txt) */
#define VCD_NUM_FUNCTIONS (247)
#define VCD_NUM_FUNCTIONS (256) //origin : 247
/* number of VCD variables (to be kept up to date! see in T_messages.txt) */
#define VCD_NUM_VARIABLES (186)
#define VCD_NUM_VARIABLES (187) //origin : 186
/* first VCD function (to be kept up to date! see in T_messages.txt) */
#define VCD_FIRST_FUNCTION ((uintptr_t)T_VCD_FUNCTION_RT_SLEEP)
......
#general logs
ID = ENB_MASTER_TICK
DESC = eNodeB master tick - one tick per ms, to be used as "reference clock", mostly for ticktime view
......@@ -1211,6 +1212,11 @@ ID = VCD_VARIABLE_FRAME_NUMBER_TX0_ENB
GROUP = ALL:VCD:ENB:VCD_VARIABLE
FORMAT = ulong,value
VCD_NAME = frame_number_TX0_eNB
ID = VCD_VARIABLE_MULTI_ENC_FINISH
DESC = VCD variable MULTI_ENC_FINISH
GROUP = ALL:VCD:ENB:VCD_VARIABLE
FORMAT = ulong,value
VCD_NAME = multi_enc_finish
ID = VCD_VARIABLE_MASK_RU
DESC = VCD variable MASK_RU
GROUP = ALL:VCD:ENB:VCD_VARIABLE
......@@ -2146,6 +2152,51 @@ ID = VCD_FUNCTION_RT_SLEEP
GROUP = ALL:VCD:ENB:VCD_FUNCTION
FORMAT = int,value
VCD_NAME = rt_sleep
ID = VCD_FUNCTION_MULTI_ENC
DESC = VCD function MULTI_ENC
GROUP = ALL:VCD:ENB:VCD_FUNCTION
FORMAT = int,value
VCD_NAME = multi_enc
ID = VCD_FUNCTION_MULTI_ENC_0
DESC = VCD function MULTI_ENC_0
GROUP = ALL:VCD:ENB:VCD_FUNCTION
FORMAT = int,value
VCD_NAME = multi_enc_0
ID = VCD_FUNCTION_MULTI_ENC_1
DESC = VCD function MULTI_ENC_1
GROUP = ALL:VCD:ENB:VCD_FUNCTION
FORMAT = int,value
VCD_NAME = multi_enc_1
ID = VCD_FUNCTION_MULTI_ENC_2
DESC = VCD function MULTI_ENC_2
GROUP = ALL:VCD:ENB:VCD_FUNCTION
FORMAT = int,value
VCD_NAME = multi_enc_2
ID = VCD_FUNCTION_MULTI_ENC_3
DESC = VCD function MULTI_ENC_3
GROUP = ALL:VCD:ENB:VCD_FUNCTION
FORMAT = int,value
VCD_NAME = multi_enc_3
ID = VCD_FUNCTION_MULTI_ENC_4
DESC = VCD function MULTI_ENC_4
GROUP = ALL:VCD:ENB:VCD_FUNCTION
FORMAT = int,value
VCD_NAME = multi_enc_4
ID = VCD_FUNCTION_MULTI_ENC_5
DESC = VCD function MULTI_ENC_5
GROUP = ALL:VCD:ENB:VCD_FUNCTION
FORMAT = int,value
VCD_NAME = multi_enc_5
ID = VCD_FUNCTION_MULTI_ENC_6
DESC = VCD function MULTI_ENC_6
GROUP = ALL:VCD:ENB:VCD_FUNCTION
FORMAT = int,value
VCD_NAME = multi_enc_6
ID = VCD_FUNCTION_MULTI_ENC_7
DESC = VCD function MULTI_ENC_7
GROUP = ALL:VCD:ENB:VCD_FUNCTION
FORMAT = int,value
VCD_NAME = multi_enc_7
ID = VCD_FUNCTION_TRX_READ
DESC = VCD function TRX_READ
GROUP = ALL:VCD:ENB:VCD_FUNCTION
......
This diff is collapsed.
......@@ -29,8 +29,40 @@
* \warning
*/
/*!\file defs.h
* \brief Declarations of parameters of multi_ldpc_encoder
* \author Terngyin, NY, GK, KM (ISIP)
* \email tyhsu@cs.nctu.edu.tw
* \date 07-04-2020
* \version 1.0
* \note
* \warning
*/
#include "PHY/TOOLS/time_meas.h"
// ==[START]multi_ldpc_encoder
//#define thread_num 2 // ==Change thread_num here ==
#define thread_num_max 8 // ==Change max tread_num here ==
typedef struct{
int id;
volatile int flag_wait;
pthread_t pthread;
pthread_cond_t cond;
pthread_mutex_t mutex;
pthread_attr_t attr;
volatile uint8_t complete;
unsigned char **test_input;
unsigned char **channel_input_optim;
int Zc;
int Kb;
short block_length;
short BG;
int n_segments;
//unsigned int macro_num; //Not necessary to do
}multi_ldpc_encoder;
// ==[END]multi_ldpc_encoder
/*ldpc_encoder.c*/
int encode_parity_check_part_orig(unsigned char *c,unsigned char *d, short BG,short Zc,short Kb,short block_length);
......
......@@ -125,16 +125,6 @@ for (int i=0; i<encoded_length>>3; i++) {
printf("\t");
}
printf("\n");
/*! \file openair1/PHY/NR_TRANSPORT/nr_dlsch.c
* \brief parallel_architecture of 5G NR V2
* \author Terng-Yin Hsu, WEI-YING,LIN (OpInConnect_NCTU)
* \email tyhsu@cs.nctu.edu.tw
* \date 13-05-2020
* \version 1.3
* \note
* \warning
*/
#endif
long sum = 0;
#ifdef thread_for_scrambling_modulation
......
......@@ -284,18 +284,6 @@ static void *dlsch_encoding_proc(void *ptr){
static void *scrambling_proc(void *ptr){
/*! \file openair1/SIMULATION/NR_PHY/dlsim.c
* \brief parallel_architecture of 5G NR V2
* \author Terng-Yin Hsu, WEI-YING,LIN (OpInConnect_NCTU)
* \email tyhsu@cs.nctu.edu.tw
* \date 13-05-2020
* \version 1.3
* \note
* \warning
*/
scrambling_channel *test =(scrambling_channel*) ptr;
int q_id = test->q_id;
struct timespec tt1, tt2, tt3, tt4;
......@@ -420,15 +408,6 @@ static void *modulation_proc(void *ptr){
struct timespec tt1, tt2;
PHY_VARS_gNB *gNB = RC.gNB[0][0];
NR_gNB_DLSCH_t *dlsch = gNB->dlsch[0][0];
/*! \file openair1/SIMULATION/NR_PHY/dlsim.c
* \brief parallel_architecture of 5G NR V2
* \author Terng-Yin Hsu, WEI-YING,LIN (OpInConnect_NCTU)
* \email tyhsu@cs.nctu.edu.tw
* \date 13-05-2020
* \version 1.3
* \note
* \warning
*/
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment