目录

  • 概述
  • 1、MIMO和OFDM简介
    • 1.1、MIMO简介
    • 1.2、OFDM简介
  • 2、MIMO和OFDM联合实现
    • 2.1、MIMO实现过程
      • 2.1.1 发送:编码和调制
      • 2.1.2 接收:解调和解码
    • 2.2、OFDM实现过程
      • 2.2.1 发送
      • 2.2.2 接收
  • 总结

概述

MIMO和OFDM是无线通信里的两个关键技术,这两项技术是4G相对3G的大突破,目前5G也沿用了这两项关键技术,预估未来6G也是这两项技术的天下。
目前大多数网上博客孤立地讲解MIMO和OFDM,没有讲清楚二者如何联合工作,本文根据自己理解来解释这二者工作过程,以两串数据123456789和abcdefghijk为具体例子解释MIMO-OFDM实现过程。

1、MIMO和OFDM简介

简介中只简要提及MIMO和OFDM,大家需要先大致了解MIMO和OFDM相关知识后再来看下面的内容。给大家推荐一本书,元泉的《LTE轻松进阶》,书中的第5章和第7章分别详细讲解了OFDMA和MIMO。在了解了MIMO和OFDM相关知识例如什么是编码、加扰、正交、子载波、CP、多径、自干扰等概念后再看下面的内容。

1.1、MIMO简介

MIMO指的是多天线技术。以往发射端和接收端都各只有一个天线,称为SISO;现在的通信系统里,接收端和发射端都具有多根天线,例如MIMO 4x4指的是接收端和发射端各有4根天线。至于为什么多天线,那当然是为了提升通信容量,毕竟多根天线比1根天线传输的数据多。MIMO2x2示意图如下图所示。

根据香农公式,MIMO是通过提升信噪比来提升通信速率。

1.2、OFDM简介

OFDM(Orthogonal Frequency Division Multiplexing)即正交频分复用技术,而3G时代使用的是CDMA复用技术。OFDM通过各个子载波正交,大大提高了频带利用率。OFDM示意图如下图所示。

2、MIMO和OFDM联合实现

以下图为例介绍MIMO4x4系统联合OFDM技术的实现过程。
假设要传送两串数据,分别是数据123456789和abcdefghijk,先对两串数据进行编码,例如将数据1分解成了两个传输块12345和6789,分别从天线1和天线2发送出去,将数据2作为同一数据流的不同版本分别从天线3和天线4发出去。再在每个天线通道里对分配到本通道的数据进行OFDM调制。调制完成后发送出去,在无线信道中传送。接收端进行联合解调和解码,恢复原数据。

从上图可以看出,各个天线发送的多个信号流可以是不同的数据流,也可以是同一个数据流的不同版本。
从数据1来看,将一个数据分成了两个数据流,不同的数据流就是不同的信息。不同的信息同时发射,意味着信息传送效率的提升,也就是提高了无线通信的效率。在通信中称为MIMO的复用模式
从数据2来看,两个天线发送同一个数据,同一个数据流的不同版本,并行发射出去,提高信息传送的可靠性。在通信中称为MIMO的分集模式

2.1、MIMO实现过程

上文提到将上层的两串数据编码后分配给不同天线进行OFDM调制再发送出去,就实现了MIMO多天线和OFDM联合使用,估计好多人还是会疑惑,不明白其中原理,下面进一步的深挖。

2.1.1 发送:编码和调制

根据TCP/IP四层模型中提到,与数据通信相关的主要是MAC层和物理层。整个发送过程总体分为两个环节:编码和调制,具体步骤如下图所示,下面分别进行解释。

1、如上图所示,上层数据来到MAC层前得先编码,例如将一封邮件处理成一串数据比特流。这个过程在通信中称为信源编码
2、比特流数据到达MAC层后,MAC层将数据进行打包,上文中提到的数据123456789和数据abcdefghijk就是两个数据包。这两个数据包在通信中称为TB块
3、TB块到了物理层,首先要进行信道编码。信道编码的目的是使数据流具有纠错能力和抗干扰能力,提高了无线信道的免疫力,增加了信息传送的可靠性可极大地避免码流传送中误码的发生。信道编码是在源比特数据流中,按照一定规则,加入一些冗余比特,接收端可以用来判错或纠错。
4、接下来对数据块进行交织、加扰、复数调制,关于这三个步骤,大家查看书籍看下作用目的即可。
5、经过编码、复数调制后的数据没法直接发往天线,毕竟还不知道怎么发,是将数据分成两半从不同天线发出去还是将同一数据不同版本发出去都是未知的。这也是MIMO实现最关键的步骤了:层映射与预编码
毕竟数据流的数量和发送天线数量是不一致的,将数据流比特送到不同的发送天线、不同时隙、不同子载波上,是一个比较复杂的数学变换过程。增加层映射的目的就是为了将复杂的数学变换简单化。无线环境非常复杂,要根据无线环境选择MIMO的应用模式,有多种考虑,如复用还是分集?如何复用,如何分集?
层映射就是将编码调制后的数据流按一定规则重新排列,使得数据流数量和天线数量对应起来,例如将数据123456789分成了12345和6789两个数据流,将数据abcdefghijk分成两个相同版本,这样数据流就分配好了。
预编码过程是将层数据映射到不同的天线端口,不同的子载波上,不同的时隙上,以便实现分集或复用的目的。例如将12345映射到天线1,将6789映射到天线2,将abcdefghijk分别映射到天线3和天线4。
以上步骤1至5过程统称为编码
6、进入每个天线端口的数据分别进行OFDM调制,再从各个天线端口发送出去。这样发送端每个天线发送的数据可以发送给接收端的所有天线;同理接收端每个天线都可以接受所有发送端天线发送的数据。
其中每根天线均发送正交频率 OFDM通信信号,不同天线间也采用正交的频率保证天线间信号的正交性。也即不同天线使用的频率不一样,中间有保护频率间隔(但后来使用分层时空编码技术BLAST可以使得不同天线也使用同一频率)。

2.1.2 接收:解调和解码

而接收端则与发送端是逆过程,经过OFDM解调、去扰、去交织、解码等过程,恢复出原始数据123456789和数据abcdefghijk。接收端需要联合解码和解调,即每个接收端天线都收到了所有发射端天线发送的数据。

2.2、OFDM实现过程

上文提到经过预编码后的四个数据流分别到了四个天线端口。以天线端口3中的abcdefghijk数据为例进行讲解OFDM实现原理。OFDM实现过程原理图如下图所示。

2.2.1 发送

1、如上图所示,数据abcdefghijk来到天线3端口之后先进行串并转换,例如将串行数据变成abcd、ef、gh、i、jk这5个并行数据流。这5个数据分别用5个正交的子载波调制,每个子载波可以用QAM或者QPSK进行调制,各个子载波的调制方式可以不一样。OFDM系统这种将高速串传输变成低速并行传输的技术大大降低了码间串扰ISI
2、在每路子载波的OFDM符号增加保护间隔循环前缀CP,由于多径时延的问题,使得不同子载波到达接收端后,不能再保持绝对的正交性,导致了多载波间干扰ICI
3、并串转换,刚刚把1串数据分成了5路,现在得把这5路再合成回去。

以上三个步骤是从原理角度解释,真正实现过程中上面三个步骤都合并到了IFFT步骤中。
OFDM 系统使用IFFT (Inverse Fast Fourier Transform,逆快速傅里叶变换)模块来实现多载波映射叠加过程,经过FFT模块可将大量窄带子载波频域信号变换成时域信号。IFFT模块的功能相当于说:别麻烦发送N个子载波信号了,我直接算出你们在空中会叠加成啥样子吧;FFT模块的功能相当于说:别用老式的积分方法来去除其余的正交子载波了,我帮你一次把N个携带信号全算出来吧

4、经过IFFT变换后输出的就是合成波形,过程如下图所示。

这种合成波形一般不能直接在信道里传输,需要经过上变频调制再发送到信道中。

以上过程统称为调制

2.2.2 接收

在接收端则按逆过程来实现解调。发射端接收端整体如下图所示。

总结

以上为观看元泉的《LTE轻松进阶》一书后个人所得,这本书的第五章和第七章分别讲解OFDM和MIMO,但没有讲解二者联合工作实现过程,包括网上的大部分博客论文也没有讲解二者关系。本文重在讲解二者联合实现过程,并未详细讲解OFDM和MIMO相关知识,如若看不懂,希望大家先了解OFDM和MIMO相关知识后再来看一遍。

大话MIMO-OFDM联合工作实现过程相关推荐

  1. 人的思想的成长过程是一个潜意识不断成长并替代思维完成细节工作的过程

    人的思想的成长过程是一个潜意识不断成长并替代思维完成细节工作的过程 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文禁止转载 本文禁止转载. 潜意识和思维,是 ...

  2. 戴凌龙, MIMO, OFDM, 5G

     戴凌龙 其作为核心技术骨干参与的3G终端低功耗软硬件设计方案已获多项国家发明专利,并已大规模应用于三星.诺基亚等厂商的3G商用手机.作为技术骨干参与我国新一代地面数字电视标准DTMB-A的研发工 ...

  3. WIF(Windows Identity Foundation) 被动联合身份验证过程详解

    前面几篇文章介绍了下微软标识库WIF的基本概念,WIF目前支持两种验证方案,一个是 asp.net的被动联合身份验证,二是WCF的身份验证,因为前者需要用到浏览器,所以采用了一些技巧去实现,根据这些技 ...

  4. 多台服务器联合工作之samba+wordpress

    首先安装并配置samba 在日常工作中我们可能经常会遇到在Linux和Windows系统之间相互传递文件的事情,像这种情况我们可以使用类似于FileZila这种软件,但是如果我们有很多的Windows ...

  5. 在找工作的过程中,面试一定要经历的逻辑推理题...

    金三银四,估计现在应该有很多粉丝在找工作或者换工作的过程中,那么肯定是要经过面试这一关的.现在很多公司面试,都要求做笔试题.其中有软件测试的基本知识考察,也有不少逻辑推理题,不知道大家有没有遇到过,小 ...

  6. MIMO OFDM 系统常用信号检测算法

    ​ 新年都未有芳华, 二月初惊见草芽. 白雪却嫌春色晚, 故穿庭树作飞花. --韩愈 1. 前言 MIMO的空分复用技术可以使得系统在系统带宽和发射带宽不变的情况下容易地获得空间分集增益和信道的容量增 ...

  7. 大专生自学Java到找到工作的过程

    本人刚到大三时前面两年荒废了 什么都没学到所以打算自学个编程 自己对Java非常感兴趣 就打算自学Java 但是一开始看书 有很多看不懂 非常苦恼 也打算过去培训 但是培训太贵了 最后打算还是先自学一 ...

  8. 使用mit协议的编程语言_从使用诺基亚功能手机进行编程到如何为MIT初创公司工作的过程如何

    使用mit协议的编程语言 In 2012, I was just a village boy from Nigeria who had nothing but a dream and a Nokia ...

  9. 关于找工作的过程中需要注意的地方

    在辞职之后,我迅速的投入到找工作的大军中,很快,工作有了回应,我一直期待进入的两个公司给我了回信,但是都需要一段时间的报批Offer,第一个公司需要等待一周多的时间,第二个公司本来说要很快的把进度提前 ...

  10. 数据库查询速度极慢【个人工作问题解决过程记录】

    最近客户那边报了一个问题上来,问题:门店反馈JPOS界面查询"分类销售报表",查询一个月的数据一直卡在查询界面,查询一天的数据,至少要3分钟,据了解门店之前是没有问题的. 我拿到客 ...

最新文章

  1. JAVA String之contains方法使用
  2. 在oracle中怎么判断一个日期是否在一定时间范围内
  3. SVN文件库移植(转)
  4. 019_Jedis的List数据类型
  5. 01背包问题从简单到复杂
  6. html加入购物车的动画,vue实现加入购物车动画
  7. struts2默认action
  8. Testing a React+Redux web application
  9. 码农如何写好一封邮件/1
  10. Spring MVC 中集成 Apache Shiro 安全框架
  11. Jquery 取色器
  12. vivo android 刷机教程,vivo Xshot升级Android 4.4刷机教程
  13. B站粉丝计数软件(python开发)
  14. python文件seek_Python文件读取中:f.seek(0)和f.seek(0,0)有什么区别?
  15. 区块链 交易和区块数据存在哪儿
  16. 中国广电明年推进5G覆盖乡镇,用户:和中国移动相比信号有何优势?
  17. 数值分析快速复习(1)——Matlab数值积分
  18. Django项目 no signature found for builtin错误原因
  19. 物联网专业属于计算机的哪个门类,物联网工程专业属于什么门类
  20. 维乐VELO副总陈安荣:宽容对待美学,会让生活更幸福

热门文章

  1. APP抓包加密破解(hook)
  2. Spring学习资料
  3. 电路原理 邱关源 第五版 课后习题答案 课后习题详解
  4. fluent二维叶型仿真_【ICEPAK】手把手教你热仿真--认识ICEPAK
  5. ESP8266 WIFI 模块连接OneNet测试
  6. AD16创建元器件库步骤
  7. python 全国内地高风险地区数量查询与可视化(分省)
  8. 苹果怎么使用计算机,苹果系统电脑怎么用_超详细mac新手教程-win7之家
  9. 几种常用的PID控制算法
  10. 项目管理十大知识领域一——项目整体管理