(1)从通信中的MCS含义开始讲起
通信中的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含义开始讲起的更多相关文章
- Oracle Statspack报告中各项指标含义详解~~学习性能必看!!!
Oracle Statspack报告中各项指标含义详解~~学习性能必看!!! Data Buffer Hit Ratio#<#90# 数据块在数据缓冲区中的命中率,通常应该在90%以上,否则考虑 ...
- Netty 中ChannelOption的含义以及使用的场景
Netty 中ChannelOption的含义以及使用的场景 转自:http://www.cnblogs.com/googlemeoften/p/6082785.html 1.ChannelOptio ...
- ASCII中的控制字符含义
十进制 十六进制 控制字符 转义字符 说明 Ctrl + 下列字母 0 00 NUL \0 Null character(空字符) @ 1 01 SOH Start of Header(标题開始) ...
- if [ "$变量1"x = "$变量2"x ]中x的含义
问题:if [ "$变量1"x = "$变量2"x ]中x的含义是? 答:“x”字符可以为任意字符,用于防止变量为空时,某些版本的bash中会产生错误: 在一个 ...
- Android IOS WebRTC 音视频开发总结(七五)-- WebRTC视频通信中的错误恢复机制
本文主要介绍WebRTC视频通信中的错误恢复机制(我们翻译和整理的,译者:jiangpeng),最早发表在[这里] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blac ...
- sturct stat 结构体中 st_mode 的含义
工作中遇到 else if( (s_buf.st_mode&S_IFMT) == S_IFDIR) return 2; else if( !(s_buf.st_mode&S_IFREG ...
- TortoiseSVN中图标的含义
今天在使用svn时发现有好多不认识了,所以查了下svn帮助手册.借此总结了下 svn 中图标的含义 一个新检出的工作复本使用绿色的勾做重载.表示Subversion状态 正常. 在开始编辑一个文件后, ...
- 使用SSL确保通信中的数据安全
#region Server /// <summary> /// 用于保存非对称加密(数字证书)的公钥 /// </summary> private string public ...
- C++中extern “C”含义深层探索
C++中extern “C”含义深层探索 extern “C” 是一个双向都需要用到的语法表示,就是说在cpp引用c头文件,或者c引用cpp文件时都需要用到.但extern “C” 永远只能在cpp引 ...
随机推荐
- Java优秀教程
1.java中局部变量是在栈上分配的: 2.数组是储存在堆上的对象,可以保存多个同类型变量: 3.在Java语言中,所有的变量在使用前必须声明. 4.局部变量没有默认值,所以局部变量被声明后,必须经过 ...
- css 样式中 margin padding和top类定位的区别
1 margin margin 是外边距的意思,是边框到外部另一元素之间的距离,允许使用负值 语法结构: margin:5px auto; 意思上下为5,左右平均居中 ...
- billu b0x2靶机渗透
实战渗透靶机billu b0x2 攻击kali :192.168.41.147 靶机b0x2: 192.168.41.148 起手先nmap扫了一下 扫到了四个开放的端口,有ssh,http,rpcb ...
- Couchdb 垂直权限绕过漏洞(CVE-2017-12635)漏洞复现
couchdb简介: Apache CouchDB是一个开源的NoSQL数据库,专注于易用性和成为“完全拥抱web的数据库”.它是一个使用JSON作为数据存储格式,javascript作为查询语言,M ...
- JDBC 工具类封装
每次使用jdbc 我们都要 加载驱动类 创建链接 创建Statement 接口对象执行sql 关闭资源 按照这样的套路可以封装一些重用代码方便在其他方法中调用 package com.xzlf.jdb ...
- PHP如何实现判断提交的是什么方式
function get_request_method() { // $_SERVER包含了诸多头信息.路径.以及脚本位置等等信息的数组,这个数组中的项目有web服务器创建. if (isset($_ ...
- thinkphp--create()方法
1.create方法可以对POST提交的数据进行处理(通过表中的字段名称与表单提交的名称对应关系自动封装数据实例),例如user表中有一个字段名叫"username",如果表单中有 ...
- 2019-2020-1 20199325《Linux内核原理与分析》第二周作业
冯诺依曼计算机硬件框图: 下面是一个简单的程序example.c. intadd_a_and_b(int a,int b){returna+b;}intmain(){returnadd_a_and_b ...
- 日志分析工具ELK(四)
Logstash收集TCP日志 #Input plugins TCP插件 所需的配置选项 tcp { port =>... } [root@linux-node1 ~]# cat tcp.con ...
- Element UI表格组件技巧:如何简洁实现跨页勾选、跨页统计功能
业务场景 在使用Element UI的Table组件时,常常面对这样的业务需求: 表格数据的每一项都要提供勾选框,当切换分页时,能够记忆所有页面勾选的数据,以实现批量提交不同页面勾选数据的功能.并且, ...