fix array lenght errors, k variable wrapping threshold. Make the code smaller and more efficient
generate_nr_prach() has several errors coming from replace int16_t by c16_t, and also older error in k wrapping at the end of the symbol
the code is also ridiculously complex, wasting memory and cpu time in intermediate useless buffers and headache usage of memmove()
Then, i have another issue not fixed in this MR: when i try to perform rach to SFR cell in France, i reach:
PRACH [UE 0] generate PRACH in frame.slot 795.18 for RootSeqIndex 340, Preamble Index 3, PRACH Format 0, NCS 167 (N_ZC 839): Preamble_offset 0, Preamble_shift 501 msg1 frequency start 48
p ue->prach_vars[gNB_id]->prach_pdu
$14 = {phys_cell_id = 210, num_prach_ocas = 1 '\001', prach_format = 0 '\000', num_ra = 0 '\000', prach_slot = 18 '\022',
prach_start_symbol = 0 '\000', num_cs = 167, root_seq_id = 340, restricted_set = 0 '\000', freq_msg1 = 48, ra_PreambleIndex = 11 '\v',
prach_tx_power = 23}
p nrUE_config->prach_config
$2 = {prach_sequence_length = 0 '\000', prach_sub_c_spacing = 4 '\004', restricted_set_config = 0 '\000', num_prach_fd_occasions = 1 '\001',
num_prach_fd_occasions_list = 0x7fffc816d8d0, ssb_per_rach = 3 '\003', prach_multiple_carriers_in_a_band = 0 '\000',
root_seq_computed = 0 '\000'}
fp->samples_per_subframe is 184320 because i use 100MHz, normal sampling (still develop code is the reverse -E is 184MS/s while not -E is 122.88MS/s)
dft len is 24576 * 6
dft of 147456 is not implemented in OAI
is there another algorithmic solution instead of these huge DFTs ?