在BCP中,mod及ssl模块有相应的输入配置参数UVA来指定定输出调制解调的幅度定标。
我看了6670的BCP例子的prepare_modhdr_cfg函数中,配置的是LTEPUSCH信道,其中对于UVA寄存器存在以下定义如下:
if (opera
tionMode == 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,不是二分之根号二的倍数啊。是不是除了这个移位的因子还存在别的参数会影响输出的?
0