通信中的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. M - Help Hanzo LightOJ - 1197 (大区间素数筛法)

    题解:素数区间问题.注意到a和b的范围是1<<31,所以直接暴力打表肯定不可以.如果一个数是合数,他的两个因子要么是两个sqrt(x),要么就分布在sqrt(x)两端,所以我们可以根据sq ...

  2. U - Obtain a Permutation CodeForces - 1294E 思维

    题解: 注意每一列与每一列之间互不影响,所以贪心地求出没一列的最小操作值,然后累加起来. 怎么求没一列的最小值呢?维护一个数组same表示其中same[i]=j表示将该序列向上翻滚i次有j个元素归位, ...

  3. 杭电 How far away ?

    There are n houses in the village and some bidirectional roads connecting them. Every day peole alwa ...

  4. mysql数据库深入学习

    mysql 数据库 一.数据库介绍 1.关系型数据库的特点 ​ 二维表 典型产品Oracle传统企业,MySQL是互联网企业 数据存取是通过SQL 最大特点,数据安全性方面强(ACID) 2.NoSQ ...

  5. JS Math&Date的方法 (下)

    Date - 时间日期对象 一:Date 时间对象 - 它是处理时间日期的 时间日期对象  - js提供了一个专门用来创建日期对象的构造函数 Date          new Date()  这是一 ...

  6. Matlab学习-(2)

    1. 文件读取 在编写一个matlab项目时候,通常要导入很多不同格式的数据,下面我们来学习不同的导入函数.(1) 保存工作区MATLAB支持工作区的保存.用户可以将工作区或工作区中的变量以文件的形式 ...

  7. MySQL不香吗,为什么还要有noSQL?

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是分布式专题的第14篇文章,我们一起来看看NoSQL数据库. 其实我很早就想写写分布式数据库相关的文章,既是我现在正在学习的,也是我很感 ...

  8. 新建MapReduce项目

    添加各种jar包 /usr/local/hadoop/share/hadoop/.. 这几个文件夹下的jar包以及它们子目录lib下的所有jar包 将/usr/local/hadoop/etc/had ...

  9. 模拟HTTP请求调用controller

    原文参考本人的简书:https://www.jianshu.com/p/0221edbe1598 MockMvc实现了对Http请求的模拟,能够直接使用网络的形式,转换到Controller调用,这样 ...

  10. 前端开发--ajax

    使用ajax,他是有两个模块的,一个是客户端,一个是服务端. 客户端负责发送数据,发送数据的方式有两种,一种是GET,另一种是POST. 服务端是用来接收,处理数据和发送请求的数据. 要想使用ajax ...