Commit 83149e51 authored by Robert Schmidt's avatar Robert Schmidt

Base graph selection: create function in nr_common.c

parent a8405595
...@@ -494,3 +494,10 @@ void SLIV2SL(int SLIV,int *S,int *L) { ...@@ -494,3 +494,10 @@ void SLIV2SL(int SLIV,int *S,int *L) {
*S=13-SLIVmod14; *S=13-SLIVmod14;
} }
} }
int get_BG(uint32_t A, float code_rate) {
if ((A <=292) || ((A<=3824) && (code_rate <= 0.6667)) || code_rate <= 0.25)
return 2;
else
return 1;
}
...@@ -76,6 +76,7 @@ uint16_t SL_to_bitmap(int startSymbolIndex, int nrOfSymbols); ...@@ -76,6 +76,7 @@ uint16_t SL_to_bitmap(int startSymbolIndex, int nrOfSymbols);
int get_nb_periods_per_frame(uint8_t tdd_period); int get_nb_periods_per_frame(uint8_t tdd_period);
int get_supported_band_index(int scs, int band, int n_rbs); int get_supported_band_index(int scs, int band, int n_rbs);
long rrc_get_max_nr_csrs(uint8_t max_rbs, long b_SRS); long rrc_get_max_nr_csrs(uint8_t max_rbs, long b_SRS);
int get_BG(uint32_t A, float code_rate);
#define CEILIDIV(a,b) ((a+b-1)/b) #define CEILIDIV(a,b) ((a+b-1)/b)
#define ROUNDIDIV(a,b) (((a<<1)+b)/(b<<1)) #define ROUNDIDIV(a,b) (((a<<1)+b)/(b<<1))
......
...@@ -380,10 +380,7 @@ int nr_dlsch_encoding(PHY_VARS_gNB *gNB, ...@@ -380,10 +380,7 @@ int nr_dlsch_encoding(PHY_VARS_gNB *gNB,
float Coderate = (float) rel15->targetCodeRate[0] / 10240.0f; float Coderate = (float) rel15->targetCodeRate[0] / 10240.0f;
LOG_D(PHY,"DLSCH Coderate %f\n",Coderate); LOG_D(PHY,"DLSCH Coderate %f\n",Coderate);
if ((A <=292) || ((A<=3824) && (Coderate <= 0.6667)) || Coderate <= 0.25) impp.BG = get_BG(A, Coderate);
impp.BG = 2;
else
impp.BG = 1;
start_meas(dlsch_segmentation_stats); start_meas(dlsch_segmentation_stats);
impp.Kb = nr_segmentation(harq->b, harq->c, harq->B, &impp.n_segments, &impp.K, impp.Zc, &impp.F, impp.BG); impp.Kb = nr_segmentation(harq->b, harq->c, harq->B, &impp.n_segments, &impp.K, impp.Zc, &impp.F, impp.BG);
......
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