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.

LAUNCHXL-CC1310: 在HSM模式下,接收速率TP(bps)和发送速率DR(bps)相差很多

Part Number: LAUNCHXL-CC1310
Other Parts Discussed in Thread: CC1310

我们今天在另外一对CC1310板子上,在跑rfPacketErrorRate例程(无间隔、包长254)时,看到得到如下的发送速率和接收速率。为什么接收端的TP(2126500bps),只有发送端的DR(4000000bps)一半呢?

如果包长选择更小值,TP值也会更小。

我本来的理解,应该是TP(bps)= 单位时长内接收到的bits数/单位时长(second),如果误码率为0的情况下,应该和DR是相等的。看了Rx.c里面的算法,挺复杂的,和我想的不一样。

例程中的算法如下:

********************************************************************************************

 nBitsDeltaTimeUs = 32UL - nFracBits;

            if(nBitsDeltaTimeUs >= LOG2_100MILLION)
            {
                // deltaTimeUs is two orders of magnitude larger that 10^6
                // Throughput_I = (N_bits * 2^nFracBits)/(delT_us/10^6))
                //              = Throughput_I / 2^nFracBits
                // Shift N_bits up to occupy the MSbs and then divide by
               

// (delT_us/10^6) which is at least 6 bits wide
                //   log2(1e8)-log2(1e6) = 6.643856189774724
                throughputI = (nBits << nFracBits)/ (deltaTimeUs / 1000000UL);
                throughputQ = throughputI & ((1 << nFracBits) - 1);
                throughputI = throughputI >> nFracBits;
            }
            else
            {
                // deltaTimeUs is smaller or comparable to 10^8
                // Throughput_I = (N_bits * 2^NFRAC)/(delT_us/10^6)
                //              = (N_bits)* (round(10^6*2^NFRAC)/delT_us)
                //

              = (N_bits)* ((10^6*2^NFRAC + delT_us/2)/delT_us)
                //              = Throughput_I / 2^nFracBits
                throughputI = nBits * (((1000000UL << NFRACBITS) + (deltaTimeUs >> 1))/deltaTimeUs);
                throughputQ = throughputI & ((1 << NFRACBITS) - 1);
                throughputI = throughputI >> NFRACBITS;
            }

************************************************************************************************

请问一下:

1. Rx的算法原理是什么?

2. 最理想的情况,在Tx的Dr为4Mbps时,Rx的TP能达到多少?