Commit c15fb8c7 authored by adk's avatar adk

PUSCH DMRS mapping type B start symbol fix

parent e7c5bc55
......@@ -111,6 +111,7 @@ int32_t get_l_prime(uint8_t duration_in_symbols, uint8_t mapping_type, pusch_dmr
* n index starting 0,1,...
* delta see Table 6.4.1.1.3
* duration_in_symbols number of scheduled PUSCH ofdm symbols
* start_symbol first symbol index in PUSCH allocation
* dmrs_UplinkConfig DMRS uplink configuration
* mapping_type PUSCH mapping type (A or B)
* ofdm_symbol_size IFFT size
......@@ -128,6 +129,7 @@ uint8_t is_dmrs_symbol(uint8_t l,
uint16_t n,
uint8_t delta,
uint8_t duration_in_symbols,
uint8_t start_symbol,
dmrs_UplinkConfig_t *dmrs_UplinkConfig,
uint8_t mapping_type,
uint16_t ofdm_symbol_size) {
......@@ -141,6 +143,11 @@ uint8_t is_dmrs_symbol(uint8_t l,
dmrs_type = dmrs_UplinkConfig->pusch_dmrs_type;
additional_pos = dmrs_UplinkConfig->pusch_dmrs_AdditionalPosition;
if (mapping_type==typeB)
l -= start_symbol;
AssertFatal(l >= 0,"Check DMRS configuration (start_symbol) !\n");
l0 = get_l0_ul(mapping_type, 2);
l_prime_mask = get_l_prime(duration_in_symbols, mapping_type, additional_pos, dmrs_UplinkConfig->pusch_maxLength);
......@@ -370,7 +377,7 @@ void lte_gold_new(LTE_DL_FRAME_PARMS *frame_parms, uint32_t lte_gold_table[20][2
*
* NAME : get_l0_ul
*
* PARAMETERS : mapping_type : PUSCH mapping type
* PARAMETERS : mapping_type : PUSCH mapping type
* dmrs_typeA_position : higher layer parameter
*
* RETURN : demodulation reference signal for PUSCH
......
......@@ -66,6 +66,7 @@ uint8_t is_dmrs_symbol(uint8_t l,
uint16_t n,
uint8_t delta,
uint8_t duration_in_symbols,
uint8_t start_symbol,
dmrs_UplinkConfig_t *dmrs_UplinkConfig,
uint8_t mapping_type,
uint16_t ofdm_symbol_size);
......
......@@ -136,6 +136,7 @@ void nr_ue_ulsch_procedures(PHY_VARS_NR_UE *UE,
0,
0,
harq_process_ul_ue->number_of_symbols,
start_symbol,
&UE->dmrs_UplinkConfig,
mapping_type,
frame_parms->ofdm_symbol_size);
......@@ -273,6 +274,7 @@ void nr_ue_ulsch_procedures(PHY_VARS_NR_UE *UE,
0,
0,
harq_process_ul_ue->number_of_symbols,
start_symbol,
&UE->dmrs_UplinkConfig,
mapping_type,
frame_parms->ofdm_symbol_size);
......@@ -359,6 +361,7 @@ void nr_ue_ulsch_procedures(PHY_VARS_NR_UE *UE,
n,
delta,
harq_process_ul_ue->number_of_symbols,
start_symbol,
&UE->dmrs_UplinkConfig,
mapping_type,
frame_parms->ofdm_symbol_size);
......
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