Commit b1b62331 authored by Francesco Mani's avatar Francesco Mani

Revert "ENDC path switch S1-U: Bugfixes at gNB side"

This reverts commit 1462f0e659122afc68bdb320044a7f96fd0d62d2.
parent 99af77cf
......@@ -36,7 +36,6 @@ int nr_pusch_channel_estimation(PHY_VARS_gNB *gNB,
unsigned char symbol,
unsigned short bwp_start_subcarrier,
nfapi_nr_pusch_pdu_t *pusch_pdu) {
printf("nr_pusch_channel_estimation Ns %d p %d symbol %d\n", Ns, p, symbol);
int pilot[3280] __attribute__((aligned(16)));
unsigned char aarx;
......@@ -492,18 +491,5 @@ printf("nr_pusch_channel_estimation Ns %d p %d symbol %d\n", Ns, p, symbol);
fclose(debug_ch_est);
#endif
{
char name[128];
FILE *f;
sprintf(name, "ch_estimate.%d.%d.raw", gNB->proc.frame_rx, symbol);
f = fopen(name, "w"); if (f == NULL) exit(1);
fwrite(&ul_ch_estimates[0][symbol_offset], nb_rb_pusch*12*4, 1, f);
fclose(f);
sprintf(name, "ch_estimate_time.%d.%d.raw", gNB->proc.frame_rx, symbol);
f = fopen(name, "w"); if (f == NULL) exit(1);
fwrite(ul_ch_estimates_time[0], 1536*4, 1, f);
fclose(f);
}
return(0);
}
......@@ -238,8 +238,6 @@ uint8_t nr_generate_dci_top(nfapi_nr_dl_tti_pdcch_pdu *pdcch_pdu,
pdcch_pdu_rel15->dci_pdu.AggregationLevel[d],
0,NULL);
polar_encoder_fast((uint64_t*)pdcch_pdu_rel15->dci_pdu.Payload[d], encoder_output, n_RNTI,1,currentPtr);
printf("DCI PDU: [0]->0x%lx \t [1]->0x%lx %d bits aggreg %d\n",
((uint64_t*)pdcch_pdu_rel15->dci_pdu.Payload[d])[0], ((uint64_t*)pdcch_pdu_rel15->dci_pdu.Payload[d])[1], pdcch_pdu_rel15->dci_pdu.PayloadSizeBits[d], pdcch_pdu_rel15->dci_pdu.AggregationLevel[d]);
#ifdef DEBUG_CHANNEL_CODING
printf("polar rnti %x,length %d, L %d\n",n_RNTI, pdcch_pdu_rel15->dci_pdu.PayloadSizeBits[d],pdcch_pdu_rel15->dci_pdu.AggregationLevel[d]);
printf("DCI PDU: [0]->0x%lx \t [1]->0x%lx\n",
......
......@@ -82,8 +82,6 @@ void nr_fill_prach(PHY_VARS_gNB *gNB,
void init_prach_ru_list(RU_t *ru) {
//g_log->debug_mask |= PRACH;
AssertFatal(ru!=NULL,"ruis null\n");
for (int i=0; i<NUMBER_OF_NR_RU_PRACH_MAX; i++) ru->prach_list[i].frame=-1;
pthread_mutex_init(&ru->prach_list_mutex,NULL);
......@@ -384,17 +382,6 @@ void rx_nr_prach_ru(RU_t *ru,
for (int i=6;i<12;i++) dft1536(prach2+(3072*i),rxsigF[aa]+(3072*i),1);
reps+=6;
}
if (0){
char name[256];
sprintf(name, "time.%d.%d.raw", frame, slot);
FILE *f = fopen(name, "w"); if (f == NULL) exit(1);
fwrite(prach2-1536*4, 1536*4*4+1536*4, 1, f);
fclose(f);
sprintf(name, "freq.%d.%d.raw", frame, slot);
f = fopen(name, "w"); if (f == NULL) exit(1);
fwrite(rxsigF[aa], 1536*4*4, 1, f);
fclose(f);
}
}// mu==1
else if (mu==2) AssertFatal(1==0,"Shouldn't get here\n");
else if (mu==3) AssertFatal(1==0,"Shouldn't get here\n");
......@@ -528,13 +515,6 @@ if (0){
}
memcpy((void*)rxsigF2,(void *)rxsigF_tmp,N_ZC<<2);
if (0){
char name[256];
sprintf(name, "sum.%d.%d.raw", frame, slot);
FILE *f = fopen(name, "w"); if (f == NULL) exit(1);
fwrite(rxsigF_tmp, N_ZC*4, 1, f);
fclose(f);
}
}
}
......@@ -557,7 +537,7 @@ void rx_nr_prach(PHY_VARS_gNB *gNB,
uint16_t rootSequenceIndex;
int numrootSequenceIndex;
uint8_t restricted_set;
uint8_t n_ra_prb = 0;
uint8_t n_ra_prb;
int16_t *prachF=NULL;
int nb_rx;
......@@ -640,19 +620,7 @@ void rx_nr_prach(PHY_VARS_gNB *gNB,
*max_preamble_delay=0;
*max_preamble=0;
if (0){
char name[256];
sprintf(name, "sum2.%d.%d.raw", frame, subframe);
FILE *f = fopen(name, "w"); if (f == NULL) exit(1);
fwrite(rxsigF[0], N_ZC*4, 1, f);
fclose(f);
}
for (preamble_index=0 ; preamble_index<64 ; preamble_index++) {
{
int en = dB_fixed(signal_energy((int32_t*)&rxsigF[0][0],(N_ZC==839) ? 840: 140));
if (en>40 && preamble_index==0) LOG_I(PHY,"%d.%d: try preamble %d en %d\n",frame,subframe,preamble_index, en);
}
if (LOG_DEBUGFLAG(PRACH)){
int en = dB_fixed(signal_energy((int32_t*)&rxsigF[0][0],(N_ZC==839) ? 840: 140));
......@@ -733,9 +701,8 @@ if (en>40 && preamble_index==0) LOG_I(PHY,"%d.%d: try preamble %d en %d\n",frame
}
// Compute DFT of RX signal (conjugate input, results in conjugate output) for each new rootSequenceIndex
int en = dB_fixed(signal_energy((int32_t*)&rxsigF[0][0],140));
if (LOG_DEBUGFLAG(PRACH)) {
//int en = dB_fixed(signal_energy((int32_t*)&rxsigF[0][0],840));
int en = dB_fixed(signal_energy((int32_t*)&rxsigF[0][0],840));
if (en>60) LOG_I(PHY,"frame %d, subframe %d : preamble index %d, NCS %d, N_ZC/NCS %d: offset %d, preamble shift %d , en %d)\n",
frame,subframe,preamble_index,NCS,N_ZC/NCS,preamble_offset,preamble_shift,en);
}
......@@ -798,8 +765,6 @@ if (en>40 && preamble_index==0) LOG_I(PHY,"%d.%d: try preamble %d en %d\n",frame
for (i=0; i<NCS2; i++) {
lev = (int32_t)prach_ifft[(preamble_shift2+i)];
levdB = dB_fixed_times10(lev);
//if (en>60) LOG_I(PHY, "preamble_index %d NCS2 %d i %d lev %d levdB %d preamble_shift2 %d\n", preamble_index, NCS2, i, lev, levdB, preamble_shift2);
if (levdB>*max_preamble_energy) {
*max_preamble_energy = levdB;
*max_preamble_delay = i; // Note: This has to be normalized to the 30.72 Ms/s sampling rate
......
......@@ -94,6 +94,7 @@ void nr_fill_du(uint16_t N_ZC,uint16_t *prach_root_sequence_map)
nr_du[u] = ((p<(N_ZC>>1)) ? p : (N_ZC-p));
}
}
void compute_nr_prach_seq(uint8_t short_sequence,
......@@ -148,7 +149,6 @@ void compute_nr_prach_seq(uint8_t short_sequence,
for (k=0; k<N_ZC; k++) {
// multiply by inverse of 2 (required since ru is exp[j 2\pi n])
X_u[i][k] = ((uint32_t*)nr_ru)[(((k*(1+(inv_u*k)))%N_ZC)*nr_ZC_inv[2])%N_ZC];
if (k < 16) printf("u %d k %d I %d Q %d index %d\n", u, k, (short)(X_u[i][k]&65535), (short)((X_u[i][k] >> 16) & 65535), (((k*(1+(inv_u*k)))%N_ZC)*70)%N_ZC);
}
}
......
......@@ -87,6 +87,7 @@ void nr_ulsch_unscrambling(int16_t* llr,
uint8_t q,
uint32_t Nid,
uint32_t n_RNTI) {
uint8_t reset;
uint32_t x1, x2, s=0;
......
......@@ -1030,8 +1030,6 @@ void nr_rx_pusch(PHY_VARS_gNB *gNB,
nfapi_nr_pusch_pdu_t *rel15_ul = &gNB->ulsch[UE_id][0]->harq_processes[harq_pid]->ulsch_pdu;
uint8_t nodata_dmrs = 1; // FIXME to be properly configured from fapi
printf("nr_rx_pusch frame %d nr_tti_rx %d symbol %d rel15_ul->start_symbol_index %d rel15_ul->nr_of_symbols %d\n", frame, nr_tti_rx, symbol, rel15_ul->start_symbol_index, rel15_ul->nr_of_symbols);
dmrs_symbol_flag = 0;
ptrs_symbol_flag = 0;
gNB->pusch_vars[UE_id]->ptrs_sc_per_ofdm_symbol = 0;
......@@ -1107,15 +1105,6 @@ printf("nr_rx_pusch frame %d nr_tti_rx %d symbol %d rel15_ul->start_symbol_index
//--------------------- RBs extraction ---------------------
//----------------------------------------------------------
{
char name[128];
FILE *f;
sprintf(name, "rxdataF.%d.%d.raw", frame, symbol);
f = fopen(name, "w");
fwrite(&gNB->common_vars.rxdataF[0][symbol * frame_parms->ofdm_symbol_size], frame_parms->ofdm_symbol_size*4, 1, f);
fclose(f);
}
if (nb_re_pusch > 0) {
nr_ulsch_extract_rbs_single(gNB->common_vars.rxdataF,
......@@ -1166,20 +1155,6 @@ printf("nr_rx_pusch frame %d nr_tti_rx %d symbol %d rel15_ul->start_symbol_index
rel15_ul->rb_size,
gNB->pusch_vars[UE_id]->log2_maxh);
{
char name[128];
FILE *f;
sprintf(name, "rxdataF_ext.%d.%d.raw", frame, symbol);
f = fopen(name, "w");
int nb_re_pusch = NR_NB_SC_PER_RB * rel15_ul->rb_size;
fwrite(&gNB->pusch_vars[UE_id]->rxdataF_ext[0][symbol * nb_re_pusch], nb_re_pusch*4, 1, f);
fclose(f);
sprintf(name, "rxdataF_comp.%d.%d.raw", frame, symbol);
f = fopen(name, "w");
fwrite(&gNB->pusch_vars[UE_id]->rxdataF_comp[0][symbol * nb_re_pusch], nb_re_pusch*4, 1, f);
fclose(f);
}
#ifdef NR_SC_FDMA
nr_idft(&((uint32_t*)gNB->pusch_vars[UE_id]->rxdataF_ext[0])[symbol * rel15_ul->rb_size * NR_NB_SC_PER_RB], nb_re_pusch);
#endif
......
......@@ -77,8 +77,6 @@ void L1_nr_prach_procedures(PHY_VARS_gNB *gNB,int frame,int slot,
}
}
//ru = gNB->RU_list[0];
//rx_nr_prach_ru(ru, prach_pdu, frame, slot);
rx_nr_prach(gNB,
prach_pdu,
......@@ -88,8 +86,6 @@ void L1_nr_prach_procedures(PHY_VARS_gNB *gNB,int frame,int slot,
&max_preamble_energy[0],
&max_preamble_delay[0]
);
if (max_preamble_energy[0] > 200)
printf("ra %d.%d preamble %d energy %d delay %d gNB->measurements.prach_I0+100 %d\n", frame, slot, max_preamble[0], max_preamble_energy[0], max_preamble_delay[0], gNB->measurements.prach_I0+100);
LOG_D(PHY,"[RAPROC] Frame %d, slot %d : Most likely preamble %d, energy %d dB delay %d (prach_energy counter %d)\n",
frame,slot,
......
......@@ -512,16 +512,6 @@ void nr_fep0(RU_t *ru, int first_half) {
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_RU_FEPRX+proc->tti_rx, 1);
if(0){
//printf("nr_fep0 proc->tti_rx %d f %dd\n", proc->tti_rx, proc->frame_rx);
char name[128];
FILE *f;
sprintf(name, "rxdata.%d.%d.raw", proc->frame_rx, proc->tti_rx);
f = fopen(name, "w"); if (f == NULL) exit(1);
fwrite(&ru->common.rxdata[0][proc->tti_rx * 23040], 23040*4, 1, f);
fclose(f);
}
// remove_7_5_kHz(ru,(slot&1)+(proc->tti_rx<<1));
for (l = start_symbol; l < end_symbol; l++) {
for (aa = 0; aa < fp->nb_antennas_rx; aa++) {
......@@ -660,8 +650,6 @@ void nr_fep_full(RU_t *ru, int slot) {
// remove_7_5_kHz(ru,proc->tti_rx<<1);
// remove_7_5_kHz(ru,1+(proc->tti_rx<<1));
printf("nr_fep_full proc->tti_rx %d\n", proc->tti_rx);
for (l = 0; l < fp->symbols_per_slot; l++) {
for (aa = 0; aa < fp->nb_antennas_rx; aa++) {
nr_slot_fep_ul(fp,
......
......@@ -237,7 +237,6 @@ void fix_scc(NR_ServingCellConfigCommon_t *scc,uint64_t ssbmap) {
scc->ssb_PositionsInBurst->choice.mediumBitmap.buf[0] = 0;
for (int i=0; i<8; i++)
scc->ssb_PositionsInBurst->choice.mediumBitmap.buf[0] |= (((ssbmap>>(7-i))&0x01)<<i);
//scc->ssb_PositionsInBurst->choice.mediumBitmap.buf[0] = 0x80; //ssbmap;
}else {
scc->ssb_PositionsInBurst->choice.longBitmap.size = 8;
scc->ssb_PositionsInBurst->choice.longBitmap.bits_unused = 0;
......
......@@ -1434,7 +1434,7 @@ void nr_get_tbs_dl(nfapi_nr_dl_tti_pdsch_pdu *pdsch_pdu,
uint8_t N_sh_symb = pdsch_rel15->NrOfSymbols;
uint8_t Imcs = pdsch_rel15->mcsIndex[0];
uint16_t N_RE_prime = NR_NB_SC_PER_RB*N_sh_symb - N_PRB_DMRS - N_PRB_oh;
LOG_I(MAC, "N_RE_prime %d for %d symbols %d DMRS per PRB and %d overhead\n", N_RE_prime, N_sh_symb, N_PRB_DMRS, N_PRB_oh);
LOG_D(MAC, "N_RE_prime %d for %d symbols %d DMRS per PRB and %d overhead\n", N_RE_prime, N_sh_symb, N_PRB_DMRS, N_PRB_oh);
uint16_t R;
uint32_t TBS=0;
......
......@@ -295,7 +295,7 @@ void nr_initiate_ra_proc(module_id_t module_idP,
LOG_D(MAC, "%s() Msg2[%04d%d] SFN/SF:%04d%d\n", __FUNCTION__, ra->Msg2_frame, ra->Msg2_slot, frameP, slotP);
do {
ra->rnti = 666; //(taus() % 65518) + 1;
ra->rnti = (taus() % 65518) + 1;
loop++;
}
while (loop != 100 && !(find_nr_UE_id(module_idP, ra->rnti) == -1 && ra->rnti >= 1 && ra->rnti <= 65519));
......@@ -679,7 +679,7 @@ void nr_generate_Msg2(module_id_t module_idP,
dci_formats[0] = NR_DL_DCI_FORMAT_1_0;
rnti_types[0] = NR_RNTI_RA;
LOG_I(MAC, "[RAPROC] DCI params: rnti %d, rnti_type %d, dci_format %d coreset params: FreqDomainResource %llx, start_symbol %d n_symb %d\n",
LOG_D(MAC, "[RAPROC] DCI params: rnti %d, rnti_type %d, dci_format %d coreset params: FreqDomainResource %llx, start_symbol %d n_symb %d\n",
pdcch_pdu_rel15->dci_pdu.RNTI[0],
rnti_types[0],
dci_formats[0],
......@@ -812,8 +812,6 @@ void nr_fill_rar(uint8_t Mod_idP,
ul_grant = csi_req | (tpc_command << 1) | (pusch_pdu->mcs_index << 4) | (ra->Msg3_tda_id << 8) | (f_alloc << 12) | (pusch_pdu->frequency_hopping << 26);
printf("ul grant 0x%x mcs %d f_alloc %d tpc %d\n", ul_grant, pusch_pdu->mcs_index, f_alloc, tpc_command);
rar->UL_GRANT_1 = (uint8_t) (ul_grant >> 24) & 0x07;
rar->UL_GRANT_2 = (uint8_t) (ul_grant >> 16) & 0xff;
rar->UL_GRANT_3 = (uint8_t) (ul_grant >> 8) & 0xff;
......
......@@ -82,7 +82,7 @@ void schedule_nr_mib(module_id_t module_idP, frame_t frameP, sub_frame_t slotP){
if (mib_sdu_length > 0) {
LOG_D(MAC, "Frame %d, slot %d: Adding BCH PDU in position %d (length %d)\n", frameP, slotP, dl_req->nPDUs, mib_sdu_length);
LOG_I(MAC, "Frame %d, slot %d: Adding BCH PDU in position %d (length %d)\n", frameP, slotP, dl_req->nPDUs, mib_sdu_length);
if ((frameP & 1023) < 80){
LOG_I(MAC,"[gNB %d] Frame %d : MIB->BCH CC_id %d, Received %d bytes\n",module_idP, frameP, CC_id, mib_sdu_length);
......
......@@ -28,8 +28,6 @@
#include "common/utils/nr/nr_common.h"
#include <math.h>
#include "LOG/log.h"
//Table 5.1.2.2-2
uint16_t Tbstable_nr[INDEX_MAX_TBS_TABLE] = {24,32,40,48,56,64,72,80,88,96,104,112,120,128,136,144,152,160,168,176,184,192,208,224,240,256,272,288,304,320,336,352,368,384,408,432,456,480,504,528,552,576,608,640,672,704,736,768,808,848,888,928,984,1032,1064,1128,1160,1192,1224,1256,1288,1320,1352,1416,1480,1544,1608,1672,1736,1800,1864,1928,2024,2088,2152,2216,2280,2408,2472,2536,2600,2664,2728,2792,2856,2976,3104,3240,3368,3496,3624,3752,3824};
......@@ -90,8 +88,6 @@ uint32_t nr_compute_tbs(uint16_t Qm,
}
//printf("Ninfo %d nbp_re %d nb_re %d Qm %d, R %d, tbs %d\n", Ninfo, nbp_re, nb_re, Qm, R, nr_tbs);
LOG_I(PHY, "Ninfo %d nbp_re %d nb_re %d Qm %d, R %d, tbs %d nb_symb_sch %d nb_dmrs_prb %d nb_rb_oh %d tb_scaling %d Nl %d\n",
Ninfo, nbp_re, nb_re, Qm, R, nr_tbs, nb_symb_sch, nb_dmrs_prb, nb_rb_oh, tb_scaling, Nl);
return nr_tbs;
}
......
This diff is collapsed.
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