This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

利用Bcp实现td-scdma上行解码的一些问题



各位大牛:

      我现在想利用BCP实现TD-SCDMA中rach的上行解码,用到的模块是ssl+dnt+rd。具体情况如下:

SSL模块内配置:

   wcdma_num_slots=1,q_format=0,mod_type_sel=QPSK,fdd_tdd_select=1,wcdma_size_slot_0=176,UVA_0以及scale_c0_0根据输入信号大小以及确保输出不溢出进行配置

dnt模块配置:

NUM_DATA_VALUES=352,ENUM_DATA._FORMAT_0=BPSK,NUM_R2_LENGTH_0=ceil((double)352/30)=12,NUM_DUMMY_0=12*30-352=8

RD略

输入数据

     输入数据是经过matlab生成的rach编码后的数据,并且按照16bit I + 16bit Q这个顺序组成输入数据。

    现在出现的情况是只有当编码端生成的数据经过0->-1 1->1这样一种调制方式生成的IQ数据输入到BCP中,并适当调整UVA以及scale的值,才能正确译码。

而若按照TD标准规定的00->j,  01->1,  10->-1  11->-j这个映射关系去生成IQ数据译码不正确。请问:

1、SSL中若按照上述配置实现对TD的解码,QPSK映射的规则和td-scdma标准中规定的规则是不是一样的?

2、SSL中UVA以及scale与输入输出信号的关系是什么?有没有一个大致的计算公式?

3、若需要解调QPSK调制的TD-SCDMA,dnt模块的ENUM_DATA._FORMAT_0是配置为qpsk还是BPSK?(实际测试时若配置为QPSK,NUM_R2_LENGTH_0=ceil((double)352/2/30))=6, NUM_DUMMY_0=6*30-352/2=4,按照此参数译码永远不对)

注:TD中rach经过编码后的数据长度为352,经过QPSK调制后的复数符号数为352/2=176.

     各位大牛们,麻烦帮忙解答下,困扰已久。

  • 1 SSL输出结果的编码映射关系是与TCP3D对应的,可以直接送到TCP3D进行译码,而TCP3D对输入的编码映射关系要求是1->1, 0->-1,所以在SSL在解调时有进行取反操作满足TCP3D的要求。所以SSL的输出结果若是直接给TCP3D译码是ok的。

    2 UVA的值取决于输入解调前IQ信号的定标幅度,scale是噪声缩放因子,可以用于决定解调输出有效bit的幅度范围。

    3 TI pdk例程中配置的是bpsk。