热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

深入解析数字通信系统中的IQ信号与正交调制技术:相同频率信号的相乘分析

本文旨在深入解析数字通信系统中“IQ”信号的应用及其优势,特别是在射频(RF)系统中的关键作用。文章不仅探讨了IQ信号的基本概念和使用方法,还详细分析了其在相同频率信号相乘中的应用,为理解正交调制和解调技术提供了坚实的基础。

本文的目的:了解“ I / Q”信号,如何使用以及为什么它们在RF系统中具有优势。

如果没有有关正交解调方面的文章,则本文将不完整。但是,在探讨正交解调之前,我们至少需要简要地讨论一下正交调制。而在讨论正交调制之前,我们需要了解I / Q信号。


同相和正交

术语“ I / Q”是“同相(“in-phase”)”和“正交”(“quadrature”)的缩写。不幸的是,我们已经遇到了术语上的问题。首先,“同相”和“正交”本身没有意义。相位是相对的,相对于另一个信号或已建立的参考点,某些东西只能是“同相”或“异相”。此外,我们现在将“正交”一词应用于某种信号以及与该信号相关的调制/解调技术。

无论如何,“同相”和“正交”是指两个具有相同频率并且相差90°的正弦波。按照惯例,I信号是余弦波形,而Q信号是正弦波形。如您所知,正弦波(没有任何附加相位)相对于余弦波偏移90°。另一种表达方式是正弦波和余弦波相互正交。

了解I / Q信号的第一件事是它们始终是幅度调制的,而不是频率或相位调制的。但是,I / Q幅度调制与之前我们在文章中讨论的AM技术不同:在I / Q调制器中,调制I / Q正弦波的信号不会移位,因此它们始终为正。换句话说,I / Q调制涉及通过调制可能具有负电压值的信号来倍增I / Q波形,因此“幅度”调制可能会导致180°相移。在本文的后面,我们将更详细地探讨此问题。

对两个相位相差90°的正弦波进行幅度调制有什么好处?为什么I / Q调制和解调在数字通信系统中应用如此普遍?请继续阅读。


I/Q信号的求和

I和Q信号本身并不是很有趣,但是当I和Q波形相加时,就会发生有趣的事情。事实证明,只要改变I和Q信号的幅度,对的,没错,仅仅是幅度,然后将它们加在一起,就可以执行任何形式的调制。

如果取等幅的I和Q信号并将其相加,其结果则是一个正弦波,其相位恰好是在I信号的相位和Q信号的相位之间,如下图所示:

等幅的I和Q信号相加之后的结果

换句话说,如果您将I波形的相位设为0°,将Q波形的相位设为90°,则求和信号的相位将变为45°。 如果要使用这些I和Q信号创建幅度调制的波形,只需对单个I和Q信号进行幅度调制。 显然,如果信号是通过将两个幅度都增大或都减小的信号相加而创建的,则合成之后的信号幅度将相应地增大或者减小。 但是,必须确保应用于I信号的幅度调制与应用于Q信号的幅度调制相同,因为如果它们不相同,则将发生相移。 这将为我们引入I / Q信号的下一个特性。


从幅度到相位

以相移键控形式出现的相位调制是现代RF系统中的一项重要技术,并且可以通过改变I / Q信号的幅度方便地实现相位调制。 考虑下面的图示:

改变I / Q信号的幅度方便地实现相位调制

改变I / Q信号的幅度方便地实现相位调制

如您所见,增大其中一个波形相对于另一个波形的幅度会导致求和信号向更高幅度的波形偏移。这具有直观的意义:例如,如果消除了Q波形,则求和将一直移到I波形的相位,因为(显然)将I波形加到零将导致求和信号成为与I波形相同的信号。

从上面的讨论中可以看出,I / Q信令只能用于将信号移位90°(即,每个方向上为45°):如果Q信号的幅度减小到零,则求和信号直接到I相位;如果将I信号的幅值减小到零,则求和信号直接到Q相位。那么,我们如何使用I / Q信号来创建(例如)正交相移键控(QPSK),同时让它覆盖270°范围的相位值?我们将在下一部分中对此进行讨论。


正交调制

术语“正交调制”是指基于正交的两个信号之和的调制。换句话说,它是基于I / Q信号的调制。我们将以QPSK为例来说明正交调制的工作原理,在此过程中,我们将了解I / Q信号的幅度调制如何产生超过90°的相移。

正交调制

上图是QPSK调制器的基本框图。首先,对数字数据流进行处理,以使两个串行的bits位变为两个并行的bit位。这两个bit位将同时发送。换句话说,如本文中所述,QPSK允许一个符号同时传输两个bits位。本地振荡器生成载波正弦波。本地振荡器信号本身成为I载波,并且施加90°相移以创建Q载​​波。 I和Q载波与I和Q数据流相乘,并且将这些相乘所得的两个信号相加,以生成QPSK调制波形。

I和Q数据流正在对I和Q载波进行幅度调制,并且如上所述,这些单独的幅度调制可用于在最终信号中产生相位调制。如果I和Q数据流是从地电平延伸到某个正电压的典型数字信号,则我们将对I和Q载波应用开关键控调制,并且我们在任一方向上的相移都将限制为45°。但是,如果I和Q数据流是双极性信号(即,如果它们在负电压和正电压之间摆动),则只要输入数据为逻辑低(由于负输入电压),我们的“幅度调制”实际上会使反相乘以载波会导致载波翻转。这意味着我们将具有四个I / Q状态:

I正常,Q正常

I正常,Q翻转

I翻转,Q正常

I翻转,Q翻转

在每种情况下,求和后会产生什么信号呢? (请注意,在下面的图中,选择了波形的频率,使得x轴上的秒数与以度为单位的相移相同。)

I正常,Q正常

I正常,Q翻转

I翻转,Q正常

I翻转,Q翻转

如您所见,上面图中所示的这四种情况下的求和恰好产生了我们想要的QPSK信号:45°,135°,225°和315°的相移。


总结

  • I / Q信号是指使用两个具有相同频率和90°相对相移的正弦波。

  • 幅度,相位和频率调制可以通过对幅度调制的I / Q信号求和来实现。

  • 正交调制是指涉及I / Q信号的调制。

  • 正交相移键控可以通过将根据输入数字数据分别乘以+1或–1的I和Q载波相加来实现。



推荐阅读
  • 非公版RTX 3080显卡的革新与亮点
    本文深入探讨了图形显卡的进化历程,重点介绍了非公版RTX 3080显卡的技术特点和创新设计。 ... [详细]
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文探讨了如何在模运算下高效计算组合数C(n, m),并详细介绍了乘法逆元的应用。通过扩展欧几里得算法求解乘法逆元,从而实现除法取余的计算。 ... [详细]
  • 本文探讨了如何在给定整数N的情况下,找到两个不同的整数a和b,使得它们的和最大,并且满足特定的数学条件。 ... [详细]
  • This document outlines the recommended naming conventions for HTML attributes in Fast Components, focusing on readability and consistency with existing standards. ... [详细]
  • Splay Tree 区间操作优化
    本文详细介绍了使用Splay Tree进行区间操作的实现方法,包括插入、删除、修改、翻转和求和等操作。通过这些操作,可以高效地处理动态序列问题,并且代码实现具有一定的挑战性,有助于编程能力的提升。 ... [详细]
  • 本文讨论了如何根据特定条件动态显示或隐藏文件上传控件中的默认文本(如“未选择文件”)。通过结合CSS和JavaScript,可以实现更灵活的用户界面。 ... [详细]
  • 本教程涵盖OpenGL基础操作及直线光栅化技术,包括点的绘制、简单图形绘制、直线绘制以及DDA和中点画线算法。通过逐步实践,帮助读者掌握OpenGL的基本使用方法。 ... [详细]
  • 基因组浏览器中的Wig格式解析
    本文详细介绍了Wiggle(Wig)格式及其在基因组浏览器中的应用,涵盖variableStep和fixedStep两种主要格式的特点、适用场景及具体使用方法。同时,还提供了关于数据值和自定义参数的补充信息。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • Codeforces Round #566 (Div. 2) A~F个人题解
    Dashboard-CodeforcesRound#566(Div.2)-CodeforcesA.FillingShapes题意:给你一个的表格,你 ... [详细]
  • 如何彻底清除顽固软件如360
    本文详细介绍了如何彻底卸载难以删除的软件,如360安全卫士。这类软件不仅难以卸载,还会在开机时启动多个应用,影响系统性能。我们将提供两种有效的方法来帮助您彻底清理这些顽固软件。 ... [详细]
  • 本文介绍如何使用 Python 获取文件和图片的创建、修改及拍摄日期。通过多种方法,如 PIL 库的 _getexif() 函数和 os 模块的 getmtime() 和 stat() 方法,详细讲解了这些技术的应用场景和注意事项。 ... [详细]
  • 深入理解Redis的数据结构与对象系统
    本文详细探讨了Redis中的数据结构和对象系统的实现,包括字符串、列表、集合、哈希表和有序集合等五种核心对象类型,以及它们所使用的底层数据结构。通过分析源码和相关文献,帮助读者更好地理解Redis的设计原理。 ... [详细]
  • 探讨在Visual Studio (VS) 和 Qt 环境下,如何通过正确设置编码方式来解决控制台输出中文时出现的乱码问题。 ... [详细]
author-avatar
jessiemiumiu_956
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有