星链上行信号分析(2),好消息和坏消息先听哪个?
http://t.cn/AXXImDss
坏消息:上一篇分析文章翻车了(正如我直播当中提到的)。
好消息:采用了正确方法后,本篇文章可信度99%。
基本确定星链上行信号完全在AD9361的射程之内。(为了阅读本文,你需要先对下行信号结构有所了解,传送门:5G NTN还在实验,星链早已商用卫星OFDM波形!马斯克星链出奇招,章北海再虐老航天)
相比下行240M基带采样率,上行采用60M采样率。上行OFDM符号时间变为下行的4倍,即子载波宽度变为下行的1/4,因为采样率也变为1/4,FFT点数保持不变,省去了基带里FFT点数切换的麻烦。星链终端虽然是FDD,但仍然是半双工的,收发基带可以时分复用。上行的PSS/STF、SSS/LTF等同步结构和下行类似。上行帧间隔最小13.333ms,看起来里面可以包含10个1.333ms的下行基本帧。上行基本帧长度是否仍是1.333ms,上下行配比是否会动态调配,有待进一步分析。
上篇文章反复提到的约26us,其实来自于1024个采样点(40MHz采样率下)。信号总是1024点和它的整数倍,这个过于巧合了。于是我怀疑那个BladeRF gen1的USB块传输会随机丢帧,因为一般这些块大小都是1024相关的,如果是1024相关的随机丢帧,可能会造成信号边界也与1024有关。后来使用命令行在40M采样率下采集一定数量的采样点,掐秒表看时间是否符合预期,明显比预期时间长,问题得到确认。
可能是BladeRF gen1太古老了,已经没什么人使用、报bug和维护了。那个硬件还是大概2013、2014年前后BladeRF公司免费送给我用的。
于是改用HackRF和antsdr,20MHz采样率来测试。掐秒表,命令行汇报的实际采样率,以及uhd报告均符合不丢帧的预期。
采集到星链上行信号后,很容易就分析出PSS那个重复8次的相关峰(类似于Wi-Fi STF),以及后面的SSS训练序列相关峰(类似于Wi-Fi LTF),以及包长分布、各种包长时间的差值、包/帧起始时间的差值。综上得到开头的结论。
更详细的分析过程,请留意后续公众号文章,以及到小破站预约“知乎纸飞机”每周日晚的直播,会有详细讲解。(直播完全公开免费,但是看直播回放需要充电,所以还是踊跃参与一手直播好哇)
