主要内容

使用USRP E3xx接收QPSK波形

这个例子展示了如何使用USRP™嵌入式系列无线电支持包和通信工具箱™软件在Simulink®中实现QPSK接收器。金宝app金宝app该接收器解决了无线通信中的实际问题,如载波频率和相位偏移、定时偏移和帧同步。该模型接收由使用USRP E3xx传输QPSK波形模型。接收器解调接收的符号,并输出一个简单的消息到MATLAB®命令行。

指的是指导主机-无线电硬件设置有关配置主机以使用USRP嵌入式系列无线电的支持包的详细信息的文档。金宝app

介绍

本例使用SDR硬件在空中接收QPSK信号。它有两个主要目标:

  • 在Simulink中使用USRP嵌入式系列无线电支持包实现一个基于qpsk的接收机原型。金宝app金宝app

  • 说明使用密钥通信工具箱系统对象进行QPSK系统设计。

在这个例子中E3xx接收器块接收一个被无线传输削弱的信号,并输出在Simulink中处理的复杂基带信号。金宝app这个例子提供了一个实用的数字接收机的设计样本,可以应付无线信道的损害。接收方包括:

  • 基于FFT的粗频补偿

  • 基于PLL的细频补偿

  • 定时恢复,固定速率重采样

  • 位填充/跳过

  • 帧同步

  • 相位模糊校正

设置

执行本示例前,请确保已完成以下操作:

1.配置您的主机与USRP嵌入式系列无线电的支持包一起工作。金宝app看指导主机-无线电硬件设置求助。

2.确保有合适的信号可供接收。这个例子是为了配合以下信号源而设计的:

运行该示例

在运行模型之前先启动发射机。当您运行模型时,接收到的消息将被解码并在Diagnostic Viewer中打印出来。要打开诊断查看器,请选择调试- >诊断>诊断观众从菜单栏。如果接收的信号被正确解码,您应该在Diagnostic Viewer中看到类似于下面所示的“Hello world 0##”消息。

Hello world 031 Hello world 032 Hello world 033 Hello world 034 Hello world 035 Hello world 036 Hello world 037 Hello world 038 Hello world 039 Hello world 040

可以配置各种接收器算法参数模型参数堵塞。

接收器设计:系统架构

模型的顶级结构如下图所示。

信号规范块用于在接收块数据输出上传递一个采样率。

详细的结构QPSK接收机子系统如下图所示。

组件在以下部分中进一步描述:

  • 自动增益控制应用可变增益来保持信号振幅为1 / Upsampling因素

  • 凸起余弦接收过滤器-使用0.5的滚动因子,向下采样输入信号2

  • 粗频率补偿- 估计接收信号的近似频率偏移并校正它

  • 细频率补偿—补偿剩余的频率偏移和相位偏移

  • 时序恢复-根据恢复的定时频闪对输入信号进行重新采样,以便在最佳采样时刻做出符号决策

  • 数据解码- 对齐帧边界,解析由细频补偿子系统引起的相位模糊,解调信号,并解码文本消息

自动增益控制

相位误差检测器增益$ k_p $相位和定时误差检测器与接收的信号幅度和平均符号能量成比例。为了确保最佳回路设计,载波恢复和定时恢复回收的输入处的信号幅度必须稳定。AGC将其输出电源设置为1 / Upsampling因素(0.25),使得相位和定时误差检测器的等效增益随时间保持不变。AGC被放置在凸起余弦接收过滤器这样就可以用过采样因子4来测量信号的幅值,从而提高了估计的精度。这自动增益控制子系统在10个QPSK符号的每个块之后更新补偿增益,以平滑信号幅度的变化。你可参阅[的第7.2.2章及8.4.1章。1],以了解如何设计鉴相器增益$ k_p $

凸起余弦接收过滤器

凸起余弦接收过滤器将输入信号缩小到两个倍数,滚动因子为0.5。它为传输的波形提供匹配的过滤。

粗频率补偿

粗频率补偿子系统纠正输入信号,粗略估计频率偏移。下图显示了找到频率偏移子系统的粗频率补偿子系统。该分系统使用具有指定相位指数的基带QPSK信号$ n $、频率偏移量$ \δf $和相位偏移φδ\ \ $美元表示为$ e ^ {(j (n \ \δπ/ 2 +英尺+φδ\ \))}$$ n = 0,1,2,3 $.首先,子系统将输入信号提高到4的幂来获得$ e ^ {(j(4 \英尺+ 4 \δ\φ))}$,这不是QPSK调制的函数。然后对调制无关信号进行FFT,以估计四倍频偏的音调。将估计值除以4后,阶段/频率偏移库块校正频率偏移。即使在粗略频率补偿之后,通常存在剩余频率偏移,这将导致星座的慢速旋转。这细频率补偿子系统补偿了这种剩余频率。

细频率补偿

细频补偿子系统实现锁相环(PLL),在[1],跟踪输入信号中的剩余频率偏移和相位偏移,如下图所示。PLL使用一个直接数字合成器产生补偿相位,补偿剩余频率和相位的偏移量。相位偏移估计DDS是相位误差的积分输出循环过滤器

一个最大似然相位误差检测器的第7.2.2章所述。1,产生相位误差。一个可调比例积分循环过滤器的附录C.2所述1]过滤错误信号,然后将其送入DDS.这环路带宽(按采样率标准化)和环阻尼因子可调的循环过滤器.默认归一化环路带宽设置为0.06,默认阻尼系数设置为2.5(超过阻尼),因此锁相环在引入最小相位噪声的同时快速锁定到目标相位。

时序恢复

时序恢复子系统实现锁相环,在[1,以纠正接收信号中的定时错误。输入时序恢复子系统被过采样两次。平均的时序恢复子系统为每两个输入示例生成一个输出示例。这NCO控制子系统实现了一个自减的模-1计数器,在[1的控制信号修改缓冲区的插值函数插值过滤器.这个控制信号也使定时误差检测器(TED),以便在正确的计时时刻计算计时误差。这NCO控制子系统更新时间差插值过滤器,在最佳采样速度下产生内嵌剂。这插值过滤器法罗抛物线滤波器是什么$ \ alpha = 0.5 $如[8.4.2)所述1].过滤器使用\α美元0.5,使得所有滤波器系数仅为1,-1 / 2和3/2,这显着简化了内插器结构。基于插值,定时误差由过零点生成定时误差检测器的第8.4.1章所述。1,通过可调的比例加积分过滤循环过滤器的附录C.2所述1],并喂入了NCO控制用于定时差异更新。这环路带宽(由抽样率标准化)和环阻尼因子可调的循环过滤器.默认归一化环带宽设置为0.01,默认阻尼因子被设置为Unity(临界阻尼),以便PLL快速锁定在引入小相位噪声的同时锁定正确的时序。

当计时错误(延迟)达到符号边界时,输出中将有一个额外的或丢失的插值。TED实现了位填充/跳过来处理额外/缺失的插入。你可参阅[的第8.4.4章1]以了解比特填充/跳过的细节。

定时恢复循环通常每帧产生100个QPSK符号,每两个输入样本一个输出符号。它还输出一个运行在输入采样率的定时频闪灯。在一般情况下,频闪器的值只是一串交替的1和0。然而,这只发生在Tx和Rx之间的相对延迟包含一个符号周期的小数部分,而延迟的整数部分(符号)保持不变的情况下。如果相对延迟的整数部分发生变化,则频闪值可以有两个连续的零或两个连续的1。在这种情况下,定时恢复循环每帧产生99或101个QPSK输出符号。然而,下游处理必须使用100个符号的帧大小,这是由修改缓冲区子系统。

修改缓冲区子系统使用频闪器用适当采样的QPSK符号填充延迟线。当每一个QPSK符号被添加到延迟线时,计数器将增加该线中的符号数。在每个采样瞬间,延迟线输出尺寸为100的帧数据解码子系统。然而数据解码子系统只在启用信号变高时在接收的数据上运行。这发生在计数器值达到100和频闪器是高的时候,即每次正好100有效的QPSK符号出现在修改缓冲区

数据解码

数据解码子系统执行帧同步、相位模糊分辨、解调和文本信息解码。该子系统使用qpsk调制的巴克码,由比特生成与接收到的QPSK符号相关联,实现帧同步。这计算延迟子系统将输入的数据与QPSK调制的巴克码相关联,并使用峰值幅度的指标来查找延迟。

载体相位PLL细频率补偿子系统可能会以0、90、180或270度的相移锁定未调制载波,这可能会导致相位模糊。关于相位模糊及其解决的详细信息,请参见[1].这相位偏移估计量子系统决定了这种相移。这相模糊校正&解调子系统根据估计的相位偏移量旋转输入信号并解调校正后的数据。有效负载位被解密,前105个有效负载位被提取并存储在工作空间变量中。所有存储的位被转换成字符并在MATLAB命令窗口中打印出来。

要尝试的事情

这个示例允许您试验多个系统功能,以检查它们对误码率性能的影响。属性可以更改接收方算法行为模型参数堵塞。

  • 你可以调整FFT的大小频谱平均值数目粗频率补偿子系统看到估计精度的效果和高噪声水平的容差。估计的分辨率是两个相邻的FFT点之间的频率间隔。选择值时,有一个速度与准确性权衡FFT的大小.为了得到更准确的频率估计,通常需要一个更大的FFT的大小.然而,更大的FFT的大小也会招致更高的计算负担。如果决议粗频率补偿子系统是低的,然后细频率补偿子系统必须具有更宽的频率跟踪范围。

  • 由于输入的噪声和零填充,FFT输出可能在估计结果中具有一些异常值。为了缓解这些不良估计的效果,您可以调整频谱平均值数目平均多帧的FFT结果。较大的频谱平均值数目提高了粗频率估计的鲁棒性,但也增加了计算量。而且,只有当偏移量满足以下不等式时,四次运算才能正确估计偏移量:

$ 4 * \ delta f _ {\ max} \ le f_s / 2 $, 或者

$4* R_{sym}/2$, 或者

$ R_{sym}/4$ . $ R_{sym}/4$ . $ R_{sym}/4$

  • 的FFT-based粗频率补偿子系统是为一个静态频率偏移的场景设计的。在实践中,频率偏移可能随时间而变化。该模型仍然可以跟踪时变频率漂移粗频率补偿子系统。然而,粗频率估计采用离散值,由子系统的频率分辨率分隔。您可能会观察到频率估计之间的跳跃。您还可以实现粗频补偿与滤波器,以获得更平滑的估计输出。

  • 您可以调整PLL设计参数,如环路带宽阻尼因子在这两个细频率补偿时序恢复观察其对拉入范围、收敛时间和估计精度的影响。有一个很大的环路带宽阻尼因子,锁相环可以获得更大的频率偏移范围。然而一个大环路带宽允许更多的噪声,导致较大的均方误差在相位估计。“欠阻尼系统(阻尼系数小于1)具有快速的稳定时间,但表现出超调和振荡;过阻尼系统(阻尼系数大于1)沉降时间较慢,但没有振荡。”[1].有关锁相环参数设计的更多细节,请参阅[1].

  • 时序恢复子系统依赖于一个不随时间旋转的稳定星座。这就需要精确的频率偏移补偿。在该模型中,当实际频率偏差超过电流粗补偿子系统可跟踪的最大频率偏差时,可以通过增大过采样系数来增大其跟踪范围。另一种调整跟踪距离的方法是实现一个旋转不变定时误差检测器(例如,在[的8.4.1章中描述的Gardner定时误差检测器)。1),然后纠正旋转。

替代实施方式

这个例子描述了基于SDR硬件的QPSK接收机的Simu金宝applink实现。

您还可以探索非硬件QPSK发射器和接收器示例,其使用AWGN通道和模拟通道损伤模拟一般无线通信系统Simulink中的QPSK发射机和接收机金宝app

故障诊断的例子

如果您未能成功接收任何“Hello world”消息,请尝试以下故障排除步骤:

  • 如果示例比实时速度慢,可以尝试使用突发模态

  • 解码接收信号的能力取决于接收信号的强度。如果接收系统不能正确解码信息,你可以通过改变增益来改变应用到接收信号的增益获得参数。

  • 发送和接收无线电之间较大的相对频率偏移会妨碍接收机正确解码信息。如果发生这种情况,可以通过将一个已知频率的音调从发射机发送到接收机,然后测量发射频率和接收频率之间的偏移量来确定偏移量。这个值可以用来补偿接收机块的中心频率。看到使用USRP E3xx进行频率偏移校准的例子。

如果您仍然没有收到任何消息,请参见常见问题及修复

帮助文件示例列表

此示例使用以下帮助程序文件:

参考文献

1.Michael Rice,“数字通讯—离散时间方法”,Prentice Hall, 2008年4月。