IQ调制原理
现代通信中,IQ调制基本上属于是标准配置,因为利用IQ调制可以做出所有的调制方式。
但是IQ调制到底是怎么工作的,为什么需要星座映射,成型滤波又是用来干嘛的。这个呢,讲通信原理的时候倒是都会泛泛的提到一下,但由于这部分不好出题,所以通常不会作为重点。但换句话说即使目前国内的大部分讲通信原理的老师,恐怕自己也就是从数学公式上理解了一下。真正的物理上的通信过程是怎么样的,恐怕他们也不理解。所以说到底国内的通信课程,大多都停留在“黑板通信”的程度,稍微好一点的呢,做到的“仿真通信”的程度。离实际的通信工程差距很大。这一方面是由于通信系统确实比较庞大,做真实的实验确实难以实施。另外一方面嘛,呵呵……
所以我决定还是要专门开贴来讲一下这个问题,因为我理解这个问题大概用了两年多的时间,到现在为止恐怕也不能算是完全搞明白了。每思至此,我总是会感慨通信博大精深,要做一名合格的通信工程师是非常不容易的。相反,想成为“专家”仿佛还要简单一点,因为只需要抓住一点穷追猛打,至于其它的么……谁愿意研究谁研究,反正老子不管……
首先从IQ调制讲起吧。所谓的IQ调制,冠冕堂皇的说法无法是什么正交信号如何如何……其实对于IQ调制可以从两个方面来直观的理解,一个是向量,一个是三角函数。首先说一说向量,对于通信的传输过程而言,其本质是完成了信息的传递。信息如何传递?信息本身是无法传递的,必须要以信号为载体,以物理世界中的信号某个特征来表示这个信息。那么有哪些特征可以表示呢,对于一个物理世界中存在的信号而已,无非就三个特征:相位、幅度、频率。其中频率和相位可以通过一定的关系等价出来。那么主要就是相位和幅度了。
好了,我们回到向量上面来。在一个二维平面里面,一个向量的信息同样可以转换为幅度(模)和相位(夹角)来表示。反过来时候,一个给定的向量,由于其模和夹角不同,可以通过该给定的向量表示一定的信息。如下图所示的QPSK调制:
四个向量由于和X轴正半轴的夹角不同,可以分别表示出4个值。
再来看另外一个问题,如何生成这样一个夹角不同的向量呢?这其实有时一个很简单的数学问题:正交分解。任何一个向量都可以投影到X轴和Y轴上面做出两个向量来。这样我们就只需要改变X轴和Y轴上面的分量大小,就可以生成任意的向量。如X=1,y=-1时,就可以生成和X轴夹角315°模为根号2的这个向量。这条性质有什么用呢?后面我会解释。
好了,到目前为止,这都是数学分析,所谓的正交分解,那首先是要找到两个正交向量。在我们真实的物理世界里面去哪里找这两个正交的向量呢。呵呵,还真有,而且是现成的。就是sin和cos。有性质cos(α+π/2)=sinα,二者正好相差九十度。至于这二者的正交性如何证明,我想这是数学老师的事情。反正现在已知有了这么两个正交的东西了。有这两个东西就太好了……为什么这么说呢,因为有了整个东西之后,抽象的正交分解就变成了高中都学过的三角函数了。
对于cos(wt+α)=cos(α)cos(wt)+sin(α)sin(wt),其中cos(α)和sin(α)都是常数,其实就变成了cos(wt)和sin(wt)的幅度了。换言之,改变cos(wt)和sin(wt)幅度,就可以得到任意的相位α。如果再狠一点,加一个系数Acos(wt+α)=Acos(α)cos(wt)+Asin(α)sin(wt),这其实还是改变的cos(wt)和sin(wt)幅度。就可以得到任意幅度、任意相位的cos函数,并可以利用这些函数去表示不同的信息。对此,通信原理上通常会用一种抽象的说法来约定表示方式,就是所谓的星座图。
一个常见的16点QAM星座图如下:
以I轴代表cos,而Q轴代表sin。从图上可以看出,如果现在Acos(wt)+Asin(wt)可以求得一个向量(由于QQ空间没有很好的数学编辑器支持,就不写表达式了)。那么此时这个向量表示的是0101。而如果I轴上的值变为3A,换言之就是cos(wt)的幅度由A变为3A。就求得另外一个向量,该向量表示的是0100。
在真实的电路中,我们是怎样做到这一点的呢。这就和正交调制器有关了。下图就是一个正交调制器的实例:
其核心是两个乘法器。从VCO中出来的高频余弦信号分别做0°和90°的相移,因此产生了cos(wt)和sin(wt),两路正交信号。基带信号通过I/Q两路基带信号进来,分别和cos(wt)和sin(wt)相乘,等效于调整了cos(wt)和sin(wt)的幅度值。最终等效成什么呢?就是控制I-DAC和Q-DAC的输入从而产生不同幅度的电平信号。
所以,最终从基带信号上面如何去控制产生已调信号,就变成了控制DA输出的不同幅度值的信号。因此,要让一个已调信号去表示某个信息,实际上就是把这个信息映射成I/Q两个DAC输出的幅度值。比如前面提到的那个星座图,对于0100这样一个数据实际上就是把它映射成I路的DAC输出3A而Q路上的DAC输出A。那么如何让I-DAC输出为3A而Q-DAC输出为A,这就是和DAC的输入输出特性有关了。比如,这是一个双极性4位的DAC,输入为00时输出为-3A,输入为01时输出为-A,输入为10时输出为A,输入为11时输出为3A。那么就如下图所示:
说到这里大家最终发现了,所谓的星座映射,其实就译码器而已……
但是上面那个图,是不对的。原因是什么呢?就是这样直接映射得到的都是方波信号。如果我们把中间的包括IQ调制解调、射频收发的整个过程都等效成一个信道的话,那么可以抽象出这样一个模型:
整个这个图又让我们回到了通信原理一开始就讲的最基本的内容——基带传输。对于基带信号而言,通过信道以后会产生诸多畸变。其中最重要的畸变之一是由于通过一个带限的信道,在频域上可近似等价于和一个门信号相乘,而时域上则等价于和一个Sa信号卷积。如下图所示左边为时域Sa函数,右边为等效低通的门信号:
其结果就是本来应该是脉冲的信号在时域上产生了延拓,也就是拖尾……这样相邻的信号的幅度值就会和这个信号的拖尾叠加发生改变。改变的后果就是原本我们可能在发端映射的是I路3A,Q路A,但在收端却变成了3A-x,和A+y。等效于引入了很大的噪声。好在我们在通信原理中引入了乃奎斯特准则,给出了如果要无码间串扰需要在发端加入成型滤波器,让DA出来的值不是直挺挺的脉冲而是变成了某个形状的波形。而这一过程是在星座映射之后,DA之前。
基带成型滤波器基本流程如下:
这样DA出来的波形就是一个类似于余弦样子的波形了。至于为什么这样就没有码间串扰了,公式太多,QQ也写不出来。
最后来说一下接收的问题。从上面的所谓发射的过程就是产生一个有特定幅度和相位的余弦信号的过程。而所谓的接收呢,其实本质就是反过来,是识别这个余弦信号的幅度和相位的过程。这个过程可以有很多办法,我这里还是介绍最常见的IQ正交解调过程。
这个过程本质上来说还是一个三角函数的变换过程。上面说了,有三角函数:
Acos(wt+α)=Acos(α)cos(wt)+Asin(α)sin(wt)
如果要识别A和α,其本质其实上是识别Acos(α)和Asin(α)即可。
而这如何识别呢,考虑Acos(wt+α)*cos(wt)=Acos(α)cos(wt)*cos(wt)+Asin(α)sin(wt)*cos(wt)=1/2*Acos(α)(cos(2wt)+1)+1/2*Asin(α)sin(2wt)。对于这样一个结果,我们很高兴的发现,有一个常数项1*1/2*Acos(α),而另外两个属于是高频项。对于此,任何学过信号与系统的同学都应该明白,只需要用一个低通滤波器就可以把1/2*Acos(α)提取出来。1/2*Asin(α)的提取方法类似。
当然这只是理想的过程,实际中接收机远比这个复杂,信号的识别过程也是有很多花样的。今天也写了很多了,就不再详细的说了。希望今天写的这些,对各位同学有所帮助
IQ调制原理的更多相关文章
- IQ调制、整形滤波器与星座映射
http://www.cnblogs.com/touchblue/archive/2013/01/15/2861952.html 现代通信中.IQ调制基本上属于是标准配置,由于利用IQ调制能够做出全部 ...
- 小小知识点(三十八)MPSK和MQAM调制的实现——利用IQ调制
IQ调制的原理 (一)调制基本原理 (二)调制基本原理 利用IQ调制实现MPSK(QPSK 8PSK BPSK)和MQAM(16QAM 64QAM)调制 (一)利用IQ调制实现QPSK调制 ...
- IQ基础
I: in-phase 表示同相Q: quadrature 表示正交,与I 相位差90 度. 现在来解释IQ信号的来源: 最早通讯是模拟通讯,假设载波为cos(a),信号为cos(b),那么通过相 ...
- AM调制的FPGA实现
一.说明: 功能:AM调制 平台:Vivado 2016.4 和 Matlab R2017a 二.原理: 1. AM调制原理 AM已调信号的时域表达式: 已调信号的频域表达式: 本质上AM调制就是频谱 ...
- 2.4G无线收发模块/射频RFM75调试总结/RF知识整理
射频RFM75通信是收发双方都需要编程的器件,收发双方的通道频率,空中传输速率设置一致,调试时必须先调通一块再调另一块,否则出现问题了就不知道是发送端有问题还是接收端有问题.调试必须理清思路.正确的方 ...
- RF相关知识
前言:下文中的总结都是来自于网络,有的来自与博客,有的来自于维基百科/百度百科,仅仅是为了方便查看. ASK: ASK:幅移键控调制的简写,例如二进制的,把二进制符号0和1分别用不同的幅度来表示, ...
- 华为5G空口新技术(2015年)
2015-03-24 长江后浪推前浪,4G建设方兴未艾,业界关于5G的讨论已如火如荼.对于每一代移动通信,空口技术都相当于王冠上的明珠. 在月初的世界移动通信大会上,华为发布了面向5G的新空口,并展出 ...
- 基于FPGA的通信系统实验
伪随机信号发生器 1.伪随机信号发生器原理 伪随机信号发生器又叫PN序列发生器或者是m序列发生器.m序列是一种线性反馈寄存器序列,m序列的产生可以利用r级寄存器产生长度为2^r-1的m序列,该实验中采 ...
- ISO/IEC 14443协议浅谈
一. 非接触IC卡简介 非接触IC卡又称射频卡,是射频识别技术和IC卡技术有机结合的产物.它解决了无源(卡中无电源)和免接触这一难题,具有更加方便.快捷的特点,广泛用于电子支付.通道控制.公交收费.停 ...
随机推荐
- Socket 相关资料(随笔)
由于项目上的 http 请求量较大,项目上性能跟不上.于是考虑把 短连接的 http 换成 长连接的tcp 形式 试试效果. 先 研究了一下 长连接方式.就是要用到 socket 方面的知识. pac ...
- Zoomit的用法总结
今天才发现Zoomit,相见恨晚.总结一下zoomit的使用方法,备用. Zoomit是一款超赞的演示辅助工具.具有屏幕缩放.屏幕画笔.倒计时功能.且无需安装,点开即用. 1. 屏幕缩放 Ctrl + ...
- 一、K3 Cloud 实施指导《K3 Cloud实施手册》
1.在BOS的单据体取不到序号字段 举例:单据体标识是FValueGrid,序号标识是FSeq,取到的序号标识要写成FValueGrid_FSeq才能识别到 2.k3 Cloud目前不支持在表头字段调 ...
- 腾讯云Badjs镜像使用入门
版权声明:本文由王少飞 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/498929001487125840 来源:腾云阁 ...
- sencha touch 在新版谷歌浏览器中painted事件无法触发解决方案以及carousel 控件、togglefield控件、滚动条失效
在2.3/2.4版本中,新版谷歌浏览器(43.44版本)里面painted事件是不会触发的,以及carousel 控件.togglefield控件.滚动条失效,官方的解决方案如下,测试可用 会出现这个 ...
- [转]openstack-kilo--issue(十四)Tunnel IP %(ip)s in use with host %(host)s'
bug: http://lists.openstack.org/pipermail/openstack-operators/2015-August/007924.html https://bugs.l ...
- Thinkphp 中的自动验证 上一篇有例子
说明,只要定义了Model,在任何地方调用,都会进行验证.很方便. 必须是D方法,才会有效.M方法不会触发自动验证. 说明:这里没练习静态自动验证:如果用到静态验证首先自定义一个控制器,再在Model ...
- ELK之使用filebeat收集java运行日志
安装filebeat修改配置文件/etc/filebeat/filebeat.yml filebeat.prospectors: - type: log enabled: true #日志路径 pat ...
- Echarts Map 值域为小数的原因
最近做一个项目用到了Echarts Map不知道怎么回事,有时多了一位小时,可这个意义不用小数表示(1.0个人似乎觉得有点奇怪嘞 {boolean}calculable false 是否启用值域漫游, ...
- class FrameHandlerMono : public FrameHandlerBase
单目视觉里程计流程图 class FrameHandlerMono : public FrameHandlerBase FrameHandlerMono::FrameHandlerMono(vk::A ...