ulsim: enable CSI part 1 in unit test
Update matlab script too.
This commit is contained in:
committed by
francescomani
parent
bea7afcbd3
commit
b464ff6bd7
@@ -1349,8 +1349,8 @@ int main(int argc, char *argv[])
|
|||||||
.beta_offset_harq_ack = 11,
|
.beta_offset_harq_ack = 11,
|
||||||
.harq_ack_bit_length = 3,
|
.harq_ack_bit_length = 3,
|
||||||
.harq_payload = 3,
|
.harq_payload = 3,
|
||||||
//.csi_part1_bit_length = 4,
|
.csi_part1_bit_length = 4,
|
||||||
//.csi_part1_payload = 15
|
.csi_part1_payload = 15
|
||||||
};
|
};
|
||||||
pusch_config_pdu->pusch_uci = pusch_uci;
|
pusch_config_pdu->pusch_uci = pusch_uci;
|
||||||
prepare_ue_pusch_pdu_from_matlab_vector(uci_on_pusch, uci_ulsch_matlab_vec, pusch_config_pdu, cw_buf);
|
prepare_ue_pusch_pdu_from_matlab_vector(uci_on_pusch, uci_ulsch_matlab_vec, pusch_config_pdu, cw_buf);
|
||||||
@@ -1603,7 +1603,6 @@ int main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
round++;
|
|
||||||
if (uci_on_pusch && uci_ulsch_matlab_vec && (errors_scrambling[round] == 0)) {
|
if (uci_on_pusch && uci_ulsch_matlab_vec && (errors_scrambling[round] == 0)) {
|
||||||
ret = 0;
|
ret = 0;
|
||||||
printf("*************\n");
|
printf("*************\n");
|
||||||
@@ -1611,6 +1610,7 @@ int main(int argc, char *argv[])
|
|||||||
printf("*************\n");
|
printf("*************\n");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
round++;
|
||||||
} // round
|
} // round
|
||||||
|
|
||||||
if (n_trials == 1 && errors_scrambling[0] > 0) {
|
if (n_trials == 1 && errors_scrambling[0] > 0) {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
% ulsim command for same pusch config
|
% ulsim command for same pusch config
|
||||||
% ./nr_ulsim -m 27 -u 1 -R 51 -r 51 -s 300 -o uci_on_pusch_7.bin
|
% ./nr_ulsim -m 27 -u 1 -R 51 -r 51 -s 300 -ouci_on_pusch_oack3_ocsi14_ocsi20.bin
|
||||||
|
|
||||||
carrier = nrCarrierConfig;
|
carrier = nrCarrierConfig;
|
||||||
carrier.NSizeGrid = 51;
|
carrier.NSizeGrid = 51;
|
||||||
@@ -41,8 +41,8 @@ rv = 0;
|
|||||||
modulation = pusch.Modulation;
|
modulation = pusch.Modulation;
|
||||||
nlayers = pusch.NumLayers; % Number of layers for decoding
|
nlayers = pusch.NumLayers; % Number of layers for decoding
|
||||||
|
|
||||||
oack = 7;
|
oack = 3;
|
||||||
ocsi1 = 0;
|
ocsi1 = 4;
|
||||||
ocsi2 = 0;
|
ocsi2 = 0;
|
||||||
cbsInfo = nrULSCHInfo(pusch, rate, A, oack, ocsi1, ocsi2); % Get ULSCH information
|
cbsInfo = nrULSCHInfo(pusch, rate, A, oack, ocsi1, ocsi2); % Get ULSCH information
|
||||||
|
|
||||||
@@ -50,7 +50,7 @@ ack = randi([0 1],oack,1);
|
|||||||
csi1 = randi([0 1],ocsi1,1);
|
csi1 = randi([0 1],ocsi1,1);
|
||||||
csi2 = randi([0 1],ocsi2,1);
|
csi2 = randi([0 1],ocsi2,1);
|
||||||
cack = nrUCIEncode(ack,cbsInfo.GACK,pusch.Modulation);
|
cack = nrUCIEncode(ack,cbsInfo.GACK,pusch.Modulation);
|
||||||
ccsi1 = [];
|
ccsi1 = nrUCIEncode(csi1,cbsInfo.GCSI1,pusch.Modulation);
|
||||||
ccsi2 = [];
|
ccsi2 = [];
|
||||||
|
|
||||||
tb_data = randi([0 1],A,1);
|
tb_data = randi([0 1],A,1);
|
||||||
@@ -73,7 +73,8 @@ culsch = chIn;
|
|||||||
cw_scr = nrPUSCHScramble(cw,pusch.NID,pusch.RNTI);
|
cw_scr = nrPUSCHScramble(cw,pusch.NID,pusch.RNTI);
|
||||||
|
|
||||||
% Write to bin file
|
% Write to bin file
|
||||||
fid = fopen('uci_on_pusch_7.bin', 'wb');
|
file_name = sprintf('uci_on_pusch_oack%d_ocsi1%d_ocsi2%d.bin', oack, ocsi1, ocsi2);
|
||||||
|
fid = fopen(file_name, 'wb');
|
||||||
to_write = [A,oack,ocsi1,ocsi2,length(cw),length(cw_scr)];
|
to_write = [A,oack,ocsi1,ocsi2,length(cw),length(cw_scr)];
|
||||||
fwrite(fid, to_write, 'uint32'); % Write the data to the binary file
|
fwrite(fid, to_write, 'uint32'); % Write the data to the binary file
|
||||||
fwrite(fid, tb_data, "uint8");
|
fwrite(fid, tb_data, "uint8");
|
||||||
|
|||||||
Reference in New Issue
Block a user