技术标签: LTE
一般你问那些砖家UE Category N对应的速率是多大时,他会直接把协议里的一张表格发给你,你看到表格后,还是六神无主,因为这个表格只会提供几个你看不懂的非典型大小的bit数(典型数据一般类似1024/32768这类规律的数),然后你问那对应的速率到底是多少?他一般会轻描淡写地回复:自己计算。然后你也不好再问,因为你不想面对一个饱含这样意思的表情"这你都不会啊?!表格都已经写得这么清楚了!"
我也经历过无数次类似的情形,比如当时配置一个环境,涉及到交换机VLAN的配置时,我去请教一个老员工,她提到要如何如何配置汇聚链路时,我问汇聚链路是什么,她说“就是Trunk Link啊,Trunk Link你都不懂啊”。基于这样的经历,平时有同事问到我写的一些笔记里我认为非常基础从而一笔带过的配套知识时,我仍然愿意非常详细地讲解,并且讲解过程中,自己可能会有更深理解(教然后知困)。如果这篇文章有些一笔带过的点你觉得有疑问,欢迎私信交流。
1. 定义
UE Category定义在哪里?---- 36.306 - 4.1 ue-Category
以DL为例:
UE Category |
Maximum number of DL-SCH transport block bits received within a TTI (Note 1) |
Maximum number of bits of a DL-SCH transport block received within a TTI |
Total number of soft channel bits |
Maximum number of supported layers for spatial multiplexing in DL |
Category 1 |
10296 |
10296 |
250368 |
1 |
Category 2 |
51024 |
51024 |
1237248 |
2 |
Category 3 |
102048 |
75376 |
1237248 |
2 |
Category 4 |
150752 |
75376 |
1827072 |
2 |
Category 5 |
299552 |
149776 |
3667200 |
4 |
Category 6 |
301504 |
149776 (4 layers, 64QAM) 75376 (2 layers, 64QAM) |
3654144 |
2 or 4 |
………………………. |
Table 4.1-1: Downlink physical layerparameter values set by the field ue-Category
2. 字面意思
乍一看表格,首行的第2列和第3列的描述几乎一模一样。
我看了好几遍才看出区别,现在把这两列里的蓝色文字分别放到上下两行(如下)进行对比:
第2列:Maximum number of DL-SCH transport block bits received within a TTI
第3列:Maximum number of bits of a DL-SCH transport block received within a TTI
最大区别就是在红色部分,我们翻译一下就比较容易区分了:
第2列:一个TTI里接收到的所有DL-SCH TB的bit数的最大量(可能有多个DL-SCH TB -- TB Set)
第3列:一个TTI里接收到一个DL-SCH TB的bit数的最大量(只有一个TB -- TB)
3. MAC层速率计算
现在字面意思清楚了,我们根据字面意思来算一下速率(以比较具有代表性的DL CAT-4为例):
假设一个TTI(1ms)传输一个TB,那么速率是:
75376/(1/1000) =75.376Mbps
这个CAT里的最高速率是多少呢?
用第2列的150752/(1/1000) = 150.752Mbps
可以看到150752= 75376*2, 说明CAT-4最多包含2个TB.
4. TB数和layer的对应关系
注意,上面说的只是字面意思,真实的含义是什么?TB个数和layer数对应关系是怎样的?
我们注意到最后一列“Maximum number of supported layers for spatial multiplexing in DL”,是指空分复用支持的层数,层数与MIMO支持度对应起来,比如DL 2*2 MIMO, 就支持两层,下图比较清晰[1],跟CAT-4正好对应上:
2 Layers <=> 2 TBs
但是layer和TB是一一对应的吗?
不一定,最多支持2个TB,但是MIMO可以支持4×4或更大。
如上表:
CAT-2: 2Layers <=> 1 TB
CAT-6: 4Layers <=> 2 TBs
注意,这里只是讨论TB数和Layer数的对应关系,实际MAC层每个TB进入到PHY层后,到最终进入Layer mapper之前,还要经历:
TB CRC插入==> 码块分割+CRC插入 ==> 信道编码 ==> 速率匹配 ==> 码块级联(至此形成codeword,与TB一一对应) ==> 加扰 ==> 调制。
5. soft channel bits
到这里就完了吗?No, 第4列“Total numberof soft channel bits”还没讲呢。
“Total number of soft channel bits”字面意思是“软信道比特总数”,其实就是指HARQ缓存大小。
下行最多同时有8个HARQ进程,每个HARQ进程传输经过信道编码后的数据,信道编码采用码率为1/3的Turbo码,所以HARQ缓存的数据量要远大于传输数据(如下图[2])。
以Cat-4为例,表格里这个数是1827072.
同时8个HARQ进程,每个进程:1827072/8 = 228384.
如果信道编码采用1/3码率的Turbo码,则:22384/3 = 76128
我们看到76128大于75376,因为这之前还有CRC,码块分割等过程产生的一些bit.
CRC/码块分割/信道编码/速率匹配的细节是比较大的主题,在此先按下不表,需专门文章讨论。
Reference
[1] http://www.sharetechnote.com/
[2] 4G: LTE/LTE-Advanced for Mobile Broadband((Erik Dahlman, Stefan Parkvall, Johan Sko¨ld)
[3] 3GPP TS 36.306 UserEquipment (UE) radio access capabilities
[4] 3GPP TS 36.211 Physicalchannels and modulation
[5] 3GPP TS 36.212 Multiplexing and channel coding
[6] 3GPP TS 36.213 Physical layer procedures(s06-s07)
笔者在公众号“协议工程师笔记”定期发布5G/LTE/IMS...学习笔记, 敬请关注、订阅和分享,谢谢!
一起努力,蒸蒸日上
文章浏览阅读2k次。照样画葫芦,用python编写了一段小程序,可以使用ipad的web浏览器远程监控远端iMac主机界面(每秒截屏,非流控),与大家分享。1. 首先介绍一下需要下载的第三方工具:Flask,PyscreenshotFlask用来做web服务器,Pyscreenshot是用来截屏的。用pip install 分别安装即可2. 介绍程序文件架构如下,需要simplesvr_mac 监控截屏
文章浏览阅读4.7k次,点赞3次,收藏7次。安装完centos7后进入时一直不停出现pcieport 0000:00:1c.5字样,这个的具体原因尚不完全清楚,解决方法查到的都是一种,就是在/etc/default/grub中的GRUB_CMDLINE_LINUX的内容最后添加pci=nomsi或者pci=noaer或者pcie_aspm=off,这样的确可以,但是更新的步骤需要grub2-mkconfig -o /boot/efi/EFI..._dpc:error containment capabilities
文章浏览阅读735次。原文:http://colah.github.io/posts/2015-08-Understanding-LSTMs/Recurrent Neural NetworksHumans don’t start their thinking from scratch every second. As you read this essay, yo_humans don鈥檛 start their thinking from scratch every second.
文章浏览阅读1.4k次。<?xml version="1.0" encoding="UTF-8"?><!--Licensed to the Apache Software Foundation (ASF) under oneor more contributor license agreements. See the NOTICE filedistributed with this work for additional informationregarding copyright ownersh._apache-maven-3.9.2\conf\settings.xml
文章浏览阅读6.4k次。当解决复杂的逆向问题时,我们常使用radare2或IDA等成熟工具进行反汇编和调试。但有时也需要深入挖掘并了解它们是如何运作的。编写一些反汇编脚本对于自动化某些流程非常有用,并且可以形成自己的逆向工具链。至少,这是我现在正在尝试的事情。配置环境如标题所说的那样,你需要先安装Python 3。如果你无法确定是否安装了Python 3,可以运行如下命令:其中capstone是..._逆向工程 python
文章浏览阅读2.6k次。//先排序然后查找void FindNumsAppearOnce1(vector<int> data, int* num1, int *num2) { if (data.size() < 2) return; sort(data.begin(), data.end()); vector<int> res; for (int i = 0; i <..._一个数组中找出出现一次的2个数字
文章浏览阅读333次。本文是 Piasy 原创,发表于 https://blog.piasy.com,请阅读原文支持原创 https://blog.piasy.com/2017/06/17/out-of-the-box-webrtc-dev-env/在刚刚落幕的 WWDC17 上,苹果为我们带来了一个不小的惊喜 —— 其浏览器内核WebKit将正式支持 WebRTC,而未来基于 WebKit 内核的苹果浏览器,比如m..._xujianzhu webrtc开箱即用
文章浏览阅读3.3w次,点赞5次,收藏21次。一直用VGG训练,几天前想看下ResNet的效果如何,因为SSD源码中有python实现的ResNet网络结构实现代码,包含ResNet101和ResNet152,直接拿ResNet101来训练,GTX1060配置,batchsize竟然只降到2才跑的起来,果然一直收敛不了。看了下model_libs.py里面的实现代码:def ResNet101Body(net, from_layer, u_resnet50 使用什么代替
文章浏览阅读1.1w次,点赞12次,收藏131次。目录:1、在线逻辑分析仪简介2、HDL 实例化调试探针流程(实验-闪烁灯)3、Hardware Manager中观察调试信号4、网表插入调试探针流程(实验-闪烁灯)1、在线逻辑分析仪简介在线逻辑分析仪借用了传统逻辑分析仪的理念以及大部分的功能,并利用 FPGA 中的逻辑资源,将这些功能植入到 FPGA 的设计当中。一般地,在线逻辑分析仪的应用原理框图如下图所示: 待测设计(Design Under Test,DUT)就是用户逻辑,它和片内的在线逻辑分析仪都位于 FPGA中。在线逻辑分_vivado ila 下一触发沿
文章浏览阅读3.5k次。今天发现一个问题,问题大概是这样的,查询interface的信息,在本地使用本地的数据库访问没有问题,但是发布到服务器上以后访问速度就特别的忙,需要5分钟左右才能返回数据,这肯定是无法让人接受的,刚开始以为是服务器性能的问题,为了验证就把服务器上的数据库备份到本地,发现本地的速度也马上慢了下来,到底是什么问题的。看了一下查询interface的sql语句不禁吓了一跳: _db2数据库索引的使用
文章浏览阅读3.1k次。一 , 当前mysql的最新版本是5.5.25a。到http://dev.mysql.com/downloads/mysql/下载mysql安装文件 。我们这里下载mysql-5.5.25a-win32.msi就可以了,下载完,直接点击安装。mysql有好几个版本,稍微了解下各个版本之间的区别: MySQL Community Server :社区版本 不提供官方技术支持,是免费的_[root@gaojiao ~]# mysql -uroot error 1045 (28000): access denied for user 'r
文章浏览阅读2.3k次。群发消息接口订阅号:每天一条的群发权限服务号:每月(自然月)4条群发权限实例<?php/** * 群发接口 * PS:群发之前调用“预览接口”进行测试 * PS:通过第三方后台调用微信上传图片素材接口,获取图片url,如:{"url":"http:\/\/mmbiz.qpic.cn\/mmbiz_jpg\/BdxWN2kspVgJOFpRHJojlWmbl0pM..._微信公众号根据标签群发接口支持数组传参吗