I: in-phase 表示同相
Q: quadrature 表示正交,与I 相位差90 度。

现在来解释IQ信号的来源:

  最早通讯是模拟通讯,假设载波为cos(a),信号为cos(b),那么通过相位频谱搬移,就得到了

cos(a)*cos(b)=1/2[cos(a+b)-cos(a-b)]

  这样在a 载波下产生了两个信号,a+b 和a-b, 而对于传输来说, 其实只需要一个信号即可,也就是说两者选择一个即可,另外一个没用,需要滤掉。但实际上滤波器是不理想的,很难完全滤掉另外一个,所以因为另外一个频带的存在,浪费了很多频带资源。

  进入数字时代后,在某一个时刻传输的只有一个信号频率,比如 :0,假设位900MHz;1,假设为901MHz,一直这两个频率在变化而已,并且不可能同时出现。这个不同于模拟通讯信号,比如电视机,信号的频带就是6.5MHz。还有一个严重的问题,就是信号频带资源越来越宝贵,不能再像模拟一样这么简单的载波与信号相乘,导致双边带信号。

大家最希望得到的就是输入a信号和b信号,得到单一的a+b或a-b即可。基于此目的,我们就把这个公式展开:

cos(a-b)=cos(a)cos(b)+sin(a)sin(b)

这个公式清楚的表明,只要把载波a和信号b相乘,之后他们各自都相移90度相乘,再相加,就能得到a-b信号了。这个在数字通讯,当前的半导体工艺完全可以做到:

1.数字通讯,单一时间只有一个频点,所以可以相移90度。

2.相加器、相乘器技术很容易实现。

接下来就很好办了,大家知道I 就是cos(b),Q 就是sin(b)

对这两个信号进行组合:

cos(b), sin(b);cos(b), -sin(b);-cos(b), sin(b);-cos(b), -sin(b)

这个就是IQ 信号的四相调制了。

在通信系统中,语音信号就是调变(即调制)和解调所要传达的信息。而在数字通信系统中,传送的信息是数据。数字调变是将数据载在射频载波的过程,而解调则是将数据从射频信号中取出的过程。

射频载波信号Acos(2πfct+θ)可供改变的参数只有振幅、频率和相位三种。

改变载波振幅的调变方式称为调幅(AM);改变载波频率方式称为调频(FM);改变载波相位方式称为相位调变(PM)

由于相位的微分即是频率,所以载波信号的振幅和相位可以说是两个主要的调变变量。如果把调变中载波振幅和相位的信息记录下来,并以二维空间的两个变量分别代表振幅和相位,那么极坐标上任意点到原点的距离和相角,正好可以代表载波的振幅和相位,也可以说是代表载波的调变情况。

极坐标方式的调变表示方法可转化为直角坐标方式,也就是I-Q 图。载波振幅和相位可记录为二维空间上的一点,而这一点所代表的向量,在横轴和纵轴上的投影分别为I 值和Q 值。I 为同相位(In-phase )分量,代表向量在横轴上的投影;Q 为90度相移( Quadrate )分量,代表向量在纵轴上的投影。

I-Q 的调变信号可由同相载波和90度相移的载波相加合成,在电路上下直接牵涩到载波相位的改变,所以比较好实现.其次,通常I-Q 图上只有几个固定点,简单的数字电路就足以腾任编码的工作。而且不同调变技术的差异只在于I-Q 图上点的分布不同而已,所以只要改变I-Q 编码器,利用同样的调变器,便可得到不同的调变结果。

I-Q 解调变的过程也很容易, 只要取得和发射机相同的载波信号,解调器的方块图基本上只是调变器的反向而已。从硬件的开点而言,调变器和解调器的方块图上,没有会因为I-Q 值的不同(不同的I-Q 调变技术)而必须改变的部份,所以这两个方块图可以应用在所有的I-Q 调变技术中。

参考:https://wenku.baidu.com/view/020c6c5aa21614791711287f.html

IQ调制原理 参考:https://www.cnblogs.com/ylsm-kb/p/8854983.html

参考:https://www.mobibrw.com/2018/12118

IQ基础的更多相关文章

  1. Sybase IQ 的基础

    Sybase IQ 的基础   Sybase IQ的一些基础总结: 1.IQ跟其它的关系型数据库相比,它的主要特征是:查询快.数据压缩比高.Load快,但是插入更新慢,不太适应数据老是变化,它是按列存 ...

  2. SAP Sybase IQ 操作基础

    1.启动 source IQ-16_0.sh 命令行查看安装程序是否成功 start_iq -v2 2.数据库.表空间 start_iq -n utility_db dbisql -c 'uid=db ...

  3. HTML5移动开发学习笔记之CSS3基础学习

    CSS回顾 在学CSS3之前首先巩固下CSS的基础知识. 1.CSS框模型 举例子: #box { width: 70px; margin: 10px; padding: 5px; } 这个代码将出现 ...

  4. [Java入门笔记] 面向对象编程基础(一):类和对象

    什么是面向对象编程? 我们先来看看几个概念: 面向过程程序设计 面向过程,是根据事情发展的步骤,按进行的顺序过程划分,面向过程其实是最为实际的一种思考方式,可以说面向过程是一种基础的方法,它考虑的是实 ...

  5. Python之路【第三篇补充】:Python基础(三)

    参考老师:http://www.cnblogs.com/wupeiqi lambda表达式 学习条件运算时,对于简单的 if else 语句,可以使用三元运算来表示,即: # 普通条件语句 if 1 ...

  6. IQ一个人的智力和对科学知识的理解掌握程度。 EQ对环境和个人情绪的掌控和对团队关系的运作能力。 AQ挫折商 一个人面对困境时减除自己的压力、渡过难关的能力。

    IQ: Intelligence Quotient 智商 一个人的智力和对科学知识的理解掌握程度. EQ: Emotional Quotient 情商 一个人对环境和个人情绪的掌控和对团队关系的运作能 ...

  7. Spring学习笔记(二)Spring基础AOP、IOC

    Spring AOP 1. 代理模式 1.1. 静态代理 程序中经常需要为某些动作或事件作下记录,以便在事后检测或作为排错的依据,先看一个简单的例子: import java.util.logging ...

  8. 如何从零开始实现一个soa远程调用服务基础组件

    说起soa远程调用基础组件,最著名的莫过于淘宝的dubbo了,目前很多的大型互联网公司都有一套自己的远程服务调用分布式框架,或者是使用开源的(例如dubbo),或者是自己基于某种协议(例如hessia ...

  9. java.lang基础数据类型boolean、char、byte、short、int、long、float、double (JDK1.8)

    java.lang.Boolean public static int hashCode(boolean value) { return value ? 1231 : 1237; } JDK 1.8新 ...

随机推荐

  1. 【ARM-Linux开发】linux下Eclipse进行C编程时动态链接库的生成和使用

    linux下Eclipse进行C编程时动态链接库的生成和使用 引用 http://linux.chinaitlab.com/soft/864157.html 欢迎进入Linux社区论坛,与200万技术 ...

  2. Hbase标准配置文件 + 增删改查

    1.可用配置文件 <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href=&q ...

  3. QA 中的对抗攻击和防御

    攻击 supporting facts 的修改:字符调换,替换词(用空格embedding或近同义词,变形词等) 还有针对question的攻击. 梯度下降,在embediing上做攻击,如何deco ...

  4. day35 守护进程、互斥锁、IPC

    day35 守护进程.互斥锁.IPC 1.守护进程 # 守护进程:当父进程执行完毕后,设置的守护进程也会跟着结束# 当一个进程被设置为守护进程后,其不能再产生子进程​ from multiproces ...

  5. Linux下查看文件编码及批量修改编码

    查看文件编码在Linux中查看文件编码可以通过以下几种方式:1.在Vim中可以直接查看文件编码:set fileencoding即可显示文件编码格式.如果你只是想查看其它编码格式的文件或者想解决用Vi ...

  6. 生产环境Crontab专业实例

    1)书写Crontab定时任务多个基本要领 1.规范定时任务两例 例1:每分钟打印一次自己名字的全拼到 “/server/log/自己命名的文件” 中

  7. Linux正则表达式题型

    1.将下面的/etc/passwd所有行的第一列和最后一列相互调换位置. 解答: 1)使用sed的后向引用 2)awk -F ":" '{print $7":" ...

  8. 链表操作Java实现

    单链表 存储结构 public class ListNode { int i; ListNode next; ListNode(int i) { this.i = i; } public String ...

  9. PHP以星号隐藏用户名手机号码和邮箱实例

    一款简单实用的PHP以星号隐藏用户名手机号码和邮箱实例,将用户的一些文字信息隐藏一部分用星号代替,以便于保护用户隐私. 隐藏函数: function hideStar($str) { //用户名.邮箱 ...

  10. Codeforces 1237E. Balanced Binary Search Trees

    传送门 这一题是真的坑人,时间空间都在鼓励你用 $NTT$ 优化 $dp$...(但是我并不会 $NTT$) 看到题目然后考虑树形 $dp$ ,设 $f[i][0/1]$ 表示 $i$ 个节点的树,根 ...