resourcemapping.asv
来自「实现上行链路的程序怎样进行计算和下行链路的计算」· ASV 代码 · 共 21 行
ASV
21 行
function a = resourcemapping(dsymb,aRefSig,NDLRB,Ns) % 将经过调制的数据符号和MBSFN参考信号都映射至资源块上
if mod(Ns,2) == 0; % 如果是偶时隙,MBSFN参考信号占用的是第三个OFDM符号奇数载波,将数据符号依次映射至除MBSFN参考信号的资源元素上,映射时先从载波开始,然后再从OFDM符号开始;
aRefSig(1,:) = dsymb(1,1:12*NDLRB);
aRefSig(2,:) = dsymb(1,12*NDLRB+1 : 2*12*NDLRB);
aRefSig(3,2:2:12*NDLRB) = dsymb(1,2*12*NDLRB+1 : 2*12*NDLRB+6*NDLRB);
aRefSig(4,:) = dsymb(1,2*12*NDLRB+6*NDLRB+1 : 3*12*NDLRB+6*NDLRB);
aRefSig(5,:) = dsymb(1,3*12*NDLRB+6*NDLRB+1 : 4*12*NDLRB+6*NDLRB);
aRefSig(6,:) = dsymb(1,4*12*NDLRB+6*NDLRB+1 : 5*12*NDLRB+6*NDLRB);
a = aRefSig;
end
if mod(Ns,2) == 1 ; % % 如果是奇时隙,MBSFN参考信号占用的是第一个和第五个OFDM符号奇数载波,将数据符号依次映射至除MBSFN参考信号的资源元素上,映射时先从载波开始,然后再从OFDM符号开始;
aRefSig(1,1:2:12*NDLRB) = dsymb(1,1:6*NDLRB);
aRefSig(2,:) = dsymb(1,6*NDLRB+1 : 6*NDLRB+12*NDLRB);
aRefSig(3,:) = dsymb(1,6*NDLRB+12*NDLRB+1 : 6*NDLRB+2*12*NDLRB);
aRefSig(4,:) = dsymb(1,6*NDLRB+2*12*NDLRB+1 : 6*NDLRB+3*12*NDLRB);
aRefSig(5,2:2:12*NDLRB) = dsymb(1,6*NDLRB+3*12*NDLRB+1 : 4*12*NDLRB);
aRefSig(6,:) = dsymb(1,4*12*NDLRB+1 : 5*12*NDLRB);
a = aRefSig;
end
a = a.'; % 刚才生成的矩阵是横向表载波,纵向表OFDM符号,现在将其转置。横向表OFDM符号,纵向表载波
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?