Working in matlab for 1/2/4 ports tx diversity

This commit is contained in:
Ismael Gomez 2017-02-07 19:10:48 +00:00
parent 0bd749aa29
commit 1d52f65528
2 changed files with 4 additions and 4 deletions

View File

@ -444,7 +444,7 @@ int srslte_pdsch_decode_multi(srslte_pdsch_t *q,
/* no need for layer demapping */
srslte_predecoding_single_multi(q->symbols, q->ce[0], q->d, q->nof_rx_antennas, cfg->nbits.nof_re, noise_estimate);
} else {
srslte_predecoding_diversity_multi(q->symbols, q->ce, x, q->cell.nof_ports, q->nof_rx_antennas, cfg->nbits.nof_re);
srslte_predecoding_diversity_multi(q->symbols, q->ce, x, q->nof_rx_antennas, q->cell.nof_ports, cfg->nbits.nof_re);
srslte_layerdemap_diversity(x, q->d, q->cell.nof_ports, cfg->nbits.nof_re / q->cell.nof_ports);
}

View File

@ -245,7 +245,7 @@ void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
cf_t *cearray = NULL;
mexutils_read_cf(prhs[NOF_INPUTS], &cearray);
cf_t *cearray_ptr = cearray;
for (int k=0;k<SRSLTE_MAX_RXANT;k++) {
for (int k=0;k<nof_antennas;k++) {
for (i=0;i<cell.nof_ports;i++) {
for (int j=0;j<SRSLTE_SF_LEN_RE(cell.nof_prb, cell.cp);j++) {
ce[i][k][j] = *cearray_ptr;
@ -293,8 +293,8 @@ void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
uint32_t len = nof_antennas*cell.nof_ports*SRSLTE_SF_LEN_RE(cell.nof_prb, cell.cp);
cf_t *cearray_ptr = srslte_vec_malloc(len*sizeof(cf_t));
int n=0;
for (int k=0;k<nof_antennas;k++) {
for (i=0;i<cell.nof_ports;i++) {
for (i=0;i<cell.nof_ports;i++) {
for (int k=0;k<nof_antennas;k++) {
for (int j=0;j<SRSLTE_SF_LEN_RE(cell.nof_prb, cell.cp);j++) {
cearray_ptr[n] = ce[i][k][j];
n++;