谢丫丫

如何在软件定义的RF接收器中处理I / Q信号?

0
阅读(88) 评论(0)

本文讨论了I / Q信号的数学意义,并介绍了用于解码频移键控基带信号的DSP算法的最后步骤。

在本文中,我们将讨论如何完成算法的开发(从之前的文章开始),包括如何找到数据可视化的DC偏移以及如何将I和Q偏移组合成单个值。

在继续之前,请查看我们的相关资源和文章,为您提供更多背景信息:

 

在前一篇关于设计鲁棒FSK解码器的文章中提出的最后一个计算是三个I / Q基带信号(表示二进制序列0101)与用于FSK解码的参考符号的乘法。结果如下:

 

相位对齐基带信号

图1

 

图1中的曲线用于相位对齐的基带信号。从I基带信号产生的乘法波形在左侧,而来自Q基带信号的乘法波形在右侧。用于解码二进制0的结果在顶行中,并且用于解码二进制1的结果在底行中。

 

相移为45°的基带信号

图2

 

图2中的曲线图用于相移为45°的基带信号。如图1所示,I在左侧,Q在右侧,二进制0解码在顶行,二进制1解码在底行。

 

相移为90°的基带信号

图3

 

图3中的曲线图用于相移为90°的基带信号。图的组织与前两个图中的相同。

 

评估情节

我们的目标是制造一个系统,当接收信号的频率与参考信号的频率非常相似时,无论这两个信号之间的相位关系如何,都会产生相对较大的DC偏移。

现在,让我们看一下左上图,它显示接收到的I信号的二进制0解码。

在图1中,存在对应于第一和第三符号的大DC偏移,其是二进制0符号。在图2中,接收信号和参考信号之间的45°相位差导致二进制0符号的DC偏移减小; 但是,偏移仍然相当大。在图3中,接收信号和参考信号之间的90°相位差消除了DC偏移。

如果您观察到右上图中的变化,则会看到相反的趋势:二进制0符号的偏移从零开始,在第二和第三个数字中增加。这是I / Q处理的“平衡”效果。通过产生具有90°相位差的两个基带信号,我们确保通过增加另一个基带信号中的相位对准来平衡增加一个基带信号中的相位对准

底行中的图表显示相同的行为,但是对于二进制1符号(即,第二和第四符号ICfans)。

 

I / Q信号为复数

理解I / Q信号处理的关键之一是在I / Q组件和复数之间建立连接。我使用“组件”这个词,因为从数学的角度来看,波形和Q波形本身并不是真正的信号。它们是原始信号的同相和正交分量,它们表示原始信号的方式与复数的实部和虚部表示由幅度和角度组成的矢量的方式相同。

 

图4

 

到目前为止,我们一直在处理I和Q信号,就好像它们是独立的一样,这会产生一些难以解释的结果 - 我们基本上看到矩形形式的复数,而 我们真正想知道的是幅度。

因此,为了使我们的基于I / Q的算法在数学上完整,我们需要将I和Q分量转换为幅度。

 

如何找到DC偏移

让我们通过生成与上面显示的三个图相对应的图来更容易地使我们的I / Q数据可视化,但是每个符号由其DC偏移代替(在数学上,它是平均值)。您可能还记得我们在前一篇关于解码FSK信号的文章末尾做了同样的事情  。

 

image.png

 

这个for循环是所有其余的模板。你总共需要12个,因为我们有12个阵列(对应于上面显示的12个图)。您需要更改的唯一内容是Decode ...数组和SymbolOffsets ...数组。例如:

 

image.png

 

我使用以下命令(根据需要修改其他数组)来绘制数据并改善外观。

 

image.png

 

结果如下。对于每组图,结果如下:

  • 左上角:解码零,我组件

  • 右上角:解码零,Q分量

  • 左下:解码一个,I组件

  • 右下角:解码一个Q分量。

 

相位对齐基带信号的DC偏移

图5

 

具有45°相移的基带信号的DC偏移

图6

 

具有90°相移的基带信号的DC偏移

图7

 

如何从I / Q转换为Magnitude

产生与相位无关的解码结果的过程的最后一步是将I和Q偏移组合成单个解码值。这可以按如下方式完成:

 

image.png


以下命令将绘制结果:

 

image.png


 

准确解码,无论相位关系如何

如您所见,I / Q信号处理消除了接收信号和参考信号之间的相位差的影响。无论发送器和接收器之间的相位关系如何,二进制0和二进制1符号现在都可以产生完整的DC偏移并且可以被精确地解码。

我希望作为半导体工程师的您现在了解基于DSP的FSK解码中正交调制的价值,并且您对如何在真实的软件定义 RF数据链路中实现频移键控有一些明确的想法。