TI中文支持网
TI专业的中文技术问题搜集分享网站

TCP3D例程中LTE输入输出数据排列顺序是啥样的?

我自己的理解是,llr数据顺序是先sys,放完后再放par1,最后par2. 尾比特顺序是三个交叉放置,即sys放第一个,par1放第一个,par2放第一个,sys放第二个,par1放第二个,par2放第二个,这样循环,输出顺序是从第一个32数据的最高位开始,依次向后。但按这种理解,导入自己的数据,译码结果不对。

后用例程中的输出结果进行turbo编码,输出结果光看尾比特就不对。

真实的排列顺序是咋样的呢?

Andy Yin1:

LLR的顺序是你说的那样,尾比特的是用来计算betastates,其排列顺序如Keystone_TCP3D.c中的Tcp3d_betaStates函数之前的输入参数注释,可以对照TCP3D计算betastates章节。

* \param[in] tailBits * Tail Bits buffer of size 12. The tail bits are expected to be * in the order Xt1[0],Pt1[0],Xt1[1],Pt1[1],Xt1[2],Pt1[2],Xt2[0], * Pt2[0],Xt2[1],Pt2[1],Xt2[2],Pt2[2].

如果使用带BCP的器件的好,BCP会输出betastates,不需要在core上使用tail bit计算,也就是说对于带BCP时可以直接将bcp输出的betastates copy到TCP3D IC寄存器上即可。

DaDong:

回复 Andy Yin1:

这样看我的理解是对的。但我导入自己的数据,出来结果总是不对。输出结果的排列顺序是从第一个32位数的最高位一直向下排吗?

或者有没有产生输入输出数据的代码,对着看一下是不是哪里有错?

Andy Yin1:

回复 DaDong:

尾比特排列顺序要求貌似跟你说的不一样吧,你看tcp手册中计算beta states章节对尾比特的要求确认一下。

Jianyong Wei:

回复 Andy Yin1:

TCP的例程中,LTE的*iirs.dat系统比特和*.dec.dat解码出来的系统比特不对应,WCDMA和WIMAX的都是一一对应的。

按照Turbo编码来说,IIR系统比特应该是解码出来的结果啊。开始怀疑是加入误码,把dec.dat中解码出来的结果替换掉*iirs.dat的系统比特,结果TCP3D校验不通过。这是什么原因呢?

赞(0)
未经允许不得转载:TI中文支持网 » TCP3D例程中LTE输入输出数据排列顺序是啥样的?
分享到: 更多 (0)