通信中的MCS:Modulation and Coding Scheme,意思为调制编码方案/调制编码策略,其内涵可分为两个部分:Modulation  和  Coding。

在基带的信号处理流程中,一般先进行编码(信道编码),再进行调制。

(1) Coding

MCS里的Coding特指信道编码,信道编码的目的是改善信号传输质量、降低误码率等。当前有多种信道编码方法,应用在LTE中的就有Turbo码和LDPC码等,5G中更是引入了Polar码。不同的编码方案性能各不相同,通信协议在选择编码方案时往往需要在复杂度和性能上做出权衡。

信道编码需要在原始比特信息上加上冗余信息实现检错、纠错功能,码率指的就是编码前后的比特数量比:

码率(rate)= 编码前比特数/编码后比特数;例如256bits的信息经过1/2Turbo编码后生成的是512个bits。

这里附上百度百科关于信道编码的解释https://baike.baidu.com/item/%E4%BF%A1%E9%81%93%E7%BC%96%E7%A0%81/9968814?fr=aladdin

(2) Modulation

调制的真实意义是:信号源控制载波的某些特征以方便在信道传输。载波包含频率、相位、幅度等信息,针对不同的特征进行调制的方法就是众所周知的FSK、PSK、AM等,之所以要调制到载波上是为了满足天线的限制。

MCS的Modulation是特指调制过程中的映射过程,严谨的说法:调制包含了符号映射和载波调制的过程。将调制简单得理解为映射关系是不全面的。

基带信号处理因为还不触及到载波调制过程,所以一般说的调制其实是指符号映射。LTE中的调制方法包括QPSK、16Qam和64Qam,是否有256Qam笔者暂不确定。5G势必是要实现256Qam的。

下图是表示QPSK,两个bit信息映射成一个符号,比图比特"11" 映射成了符号“0.717+i*0.717”。

调制阶数:QPSK的调制阶数是2,16Qam就是4,满足log2(M)的关系。以下是LTE的一张调制阶数表格。每个阶数都有几个对应的MCS,例如阶数等于2的MCS范围是0~9,这说明QPSK里就有10中对应的码率。

(注:笔者的第一篇博文,如有错误,烦请指正。)

(1)从通信中的MCS含义开始讲起的更多相关文章

  1. Oracle Statspack报告中各项指标含义详解~~学习性能必看!!!

    Oracle Statspack报告中各项指标含义详解~~学习性能必看!!! Data Buffer Hit Ratio#<#90# 数据块在数据缓冲区中的命中率,通常应该在90%以上,否则考虑 ...

  2. Netty 中ChannelOption的含义以及使用的场景

    Netty 中ChannelOption的含义以及使用的场景 转自:http://www.cnblogs.com/googlemeoften/p/6082785.html 1.ChannelOptio ...

  3. ASCII中的控制字符含义

    十进制 十六进制 控制字符 转义字符 说明 Ctrl + 下列字母 0 00 NUL \0 Null character(空字符) @ 1 01 SOH   Start of Header(标题開始) ...

  4. if [ "$变量1"x = "$变量2"x ]中x的含义

    问题:if [ "$变量1"x = "$变量2"x ]中x的含义是? 答:“x”字符可以为任意字符,用于防止变量为空时,某些版本的bash中会产生错误: 在一个 ...

  5. Android IOS WebRTC 音视频开发总结(七五)-- WebRTC视频通信中的错误恢复机制

    本文主要介绍WebRTC视频通信中的错误恢复机制(我们翻译和整理的,译者:jiangpeng),最早发表在[这里] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blac ...

  6. sturct stat 结构体中 st_mode 的含义

    工作中遇到 else if( (s_buf.st_mode&S_IFMT) == S_IFDIR) return 2; else if( !(s_buf.st_mode&S_IFREG ...

  7. TortoiseSVN中图标的含义

    今天在使用svn时发现有好多不认识了,所以查了下svn帮助手册.借此总结了下 svn 中图标的含义 一个新检出的工作复本使用绿色的勾做重载.表示Subversion状态 正常. 在开始编辑一个文件后, ...

  8. 使用SSL确保通信中的数据安全

    #region Server /// <summary> /// 用于保存非对称加密(数字证书)的公钥 /// </summary> private string public ...

  9. C++中extern “C”含义深层探索

    C++中extern “C”含义深层探索 extern “C” 是一个双向都需要用到的语法表示,就是说在cpp引用c头文件,或者c引用cpp文件时都需要用到.但extern “C” 永远只能在cpp引 ...

随机推荐

  1. reactnavigation 5.x简单例子

    随着RN和reactnavigation的版本更新,网上很多老版的例子都不能用了. 自己摸索着跑通了一些简单的功能. 使用的是最新的    "react-native": &quo ...

  2. Git敏捷开发--rebase命令

    git rebase是git下比较常用的命令,以下记录自己遇到较多的使用场景. 合并分支 在多人协作的项目中,拉分支是很常见的事情,经常需要同步自己的分支与远端master分支一致,有两种方式: gi ...

  3. vue2.x学习笔记(十三)

    接着前面的内容:https://www.cnblogs.com/yanggb/p/12595860.html. 组件的注册 注册组件有一些规范约定与注意事项. 组件名的命名规范 在注册一个组件的时候, ...

  4. sublime查看项目代码多少行

    ---------------------sublime   0.右击要查找的文件; 1.勾选正则( .* ); 3.输入正则表达式 ^[ \t]*[^ \t\n\r]+.*$ 0:搜索 \n 是不是 ...

  5. testNG 常用的注解

    常用注解介绍: @BeforeSuite 在该套件的所有测试都运行在注释的方法之前,仅运行一次 @AftereSuite 在该套件的所有测试都运行在注释方法之后,仅运行一次 @BeforeClass  ...

  6. [PHP][thinkphp5] 学习三:函数助手实例说明

    来源:http://blog.csdn.net/lunsunhuan1825/article/details/71086487 load_trait:快速导入Traits,PHP5.5以上无需调用 / ...

  7. pytorch 中序列化容器nn.Sequential

    按下图顺序搭建以及执行

  8. TensorFlow命令行参数FLAGS使用

    import os os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' import tensorflow as tf #tensorboard --logdir=&qu ...

  9. python学习笔记(三)---字典

    字典 在Python中,字典 字典 是一系列键 键-值对 值对 .每个键 键 都与一个值相关联,你可以使用键来访问与之相关联的值.与键相关联的值可以是数字.字符串.列表乃至字典.事实上,可将 任何Py ...

  10. 前端基础-HTML(2)

    1. 什么是标签以及标签的分类: 在HTML页面中,带有“< >”符号的元素被称为HTML标签,如上节提到的 <HTML>.<head>.<body>都 ...