在BCP中,mod及ssl模块有相应的输入配置参数UVA来指定定输出调制解调的幅度定标。
我看了6670的BCP例子的prepare_modhdr_cfg函数中,配置的是LTEPUSCH信道,其中对于UVA寄存器存在以下定义如下:
if (operationMode == 2 || operationMode == 3) // soft modulator
{
pModHdrCfg->uva_val = (rms * 5056 + 0x4000) >> 15;
}
else
{
if (operationMode == 0) // uncompressed mode hard modulator
{
if (mod == 1 || mod == 2) // BPSK
pModHdrCfg->uva_val = (rms * 23170 + 0x4000) >> 15; else if (mod == 4) //16 QAM
pModHdrCfg->uva_val = (rms * 10362 + 0x4000) >> 15; else if (mod == 6) //64 QAM pModHdrCfg->uva_val = (rms * 5056 + 0x4000) >> 15; else //256 QAM
pModHdrCfg->uva_val = (rms * 2513 + 0x4000) >> 15;
}
else //compressed mode hard modulator
{
pModHdrCfg->uva_val = 0;
}
}
那么我的问题是:
1. 可以看出其中变量rms决定了输出的移位,那这个rms如果是1024的话,我可以理解是做的是Q10的量化么?
2. 如果按照以上的理解,我用的是QPSK。但是输出值的绝对值是158,不是二分之根号二的倍数啊。是不是除了这个移位的因子还存在别的参数会影响输出的?
rui sun4:
回复 Adam Yao94020:
但是我是发射端的配置啊。发射端没有噪声因子的影响的。还有别的变量么???
Adam Yao94020:
回复 rui sun4:
你使用的是hard modulator么?
选择的是压缩模式还是非压缩模式?压缩模式下输出的是一个Index,而不是IQ的值。