技术标签: 5g
1.genericParameters:
(1)locationAndBandwidth:用RIV形式表示BWP的PRB的起始位置和占用的PRB个数;关于RIV参考[《5G NR资源分配中RIV指示的具体原理》](https://blog.csdn.net/m0_45416816/article/details/103970366);
(2) subcarrierSpacing:子载波间隔,4G固定为15Hz,5G有很多,一般低频fr1(sub6g)是15Hz和30Hz两种.
2. frequencyInfoDL:
(1) freqBandIndicatorNR:
(2) offsetToPointA:
(3) offsetToCarrier:
(2)(3)可以参考此图
(4) carrierBandwidth: 整个载波带宽;
(5) kssb: 子载波偏移,具体参见下图:
摘抄网上一句话再解释下kssb: 再来看上图,由于同步栅格和频率栅格的不对齐,SSB的第0号RB的第0号子载波与和SSB有重叠的BWP中的RB中的最低RB的第0号子载波之间的频率偏差叫做kssb。这句话听起来可能有些拗口,图中蓝色的部分表示BWP中与SSB有重叠的RB,那么这些RB中的最低的一个,也就是图中箭头指向的那一个RB,它的0号子载波与SSB的频率最低点,也就是SSB的0号RB的0号子载波,之间的频率偏差叫做kssb。
原文链接:5G NR SSB(SS/PBCH Block)详解
3. BWP (bandwidth Part):BWP是5G新引入的概念,因为5G带宽为400M远远大于4G的20M,为了减少手机端的功耗,设置了BWP的概念。BWP (Bandwidth Part)
(1)BWP是UE级别的,区别于SSB是小区级别参数;
(2)5G规定一个载波可以最多有4个bwp,而同时只有一个bwp处于激活状态;
(3)一般BWP信息在sib1中表示,为initialbwp,包括上下行;
(4)carrier bandwidth part是一个bwp的带宽,而carrier bandwidth 是整个载波的带宽;
(5)一个bwp最少占用24个rb;
(6)一个ssb有20个rb;
(7)pointA就是crb0,作为载波带宽的基准;
(8)offsetToPointA就是pointA到kssb的带宽;
(9) kSSB, 低4个bits来源于 ssb-SubcarrierOffset, 而 ssb-SubcarrierOffset 来自于MIB;
(10)位于同一载波上的不同bwp其子载波间隔可以不同;
(11)offsetcarrier是bwp到pointA的带宽;
4. rach-ConfigCommon:
(1) msg1-FDM:的取值为{1,2,4,8},它确定频域PRACH occasion的个数;参考5G/NR 随机接入过程之PRACH频域资源
(2)PRACH occasion和ssb-perRACH-OccasionAndCB-PreamblesPerSSB:参考5G/NR PRACH和preamble如何与SSB进行映射?;
(3)msg1-FrequencyStart确定PRACH occasion 0的RB起始位置相对于上行公共BWP的频域起始位置(即BWP 0)的偏移,即确定PRACH的频域起始位置;参考5G/NR 随机接入过程之PRACH频域资源
(4) ssb-perRACH-OccasionAndCB-PreamblesPerSSB one: 高层通过参数ssb-perRACH-OccasionAndCB-PreamblesPerSSB配置N(L1参数:SSB-per-rach-occasion)个SSB关联一个PRACH occasion(频域),和每个SSB在每个有效PRACH occasion上基于竞争的preamble数(L1参数:CB-preambles-per-SSB)。其中对于N的配置有如下两种:N<1和N>=1;
原文链接:https://blog.csdn.net/qq_33206497/article/details/89980529
对于N<1,比如N = 1/4:
对于N>1,比如N = 2:
(5) prach-ConfigurationIndex:主要用来确定preambleformat;
参考:5G/NR 随机接入过程之PRACH时域资源
(6) ra-ContentionResolutionTimer:竞争解决定时器时长
参考:每发送完MSG3(包括重传),UE就启动定时器mac- ContentionResolutionTimer来监听MSG4。如果此时间段内按收到MSG4且冲突解决完成,则UE停止定时器mac-ContentionResolutionTimer;如果mac-ContentionResolutionTimer超时,则竞争解决过程失败。
如果MSG3中携带了MAC控制单元C-RNTI,则在竞争解决完成后,UE丢弃临时C-RNTI,完成随机接入;如果MSG3中携带CCCH SDU,则在竞争解决完成后,将临时C-RNTI升级为C-RNTI,完成随机接入。
所在协议:3GPP TS 36.311,36.321。
影响范围:小区。
取值范围:sf8(8)、sf16(16)、sf24(24)、sf32(32)、sf40(40)、sf48(48)、sf56(56)、sf64(64),单位子帧。
优化建议:此值设置越大越有助于提高接入成功率。
3.PDCCH:
(1)DCI(Downlink Control Information):
(2)在NR系统中,UE要知道PDCCH在频域上的位置和时域上的位置才能成功解码PDCCH。为了方便,NR系统将PDCCH频域上占据的频段&时域上占用的OFDM符号数等信息封装在CORESET中;将PDCCH 起始OFDM符号编号以及PDCCH监测周期等信息封装在Search Space中;
(3)通过CORESET和SearchSpce可以确定出PDCCH可能所在的位置。PDCCH即下行控制信道,主要用来承载上行调度信息和下行调度信息;
PDCCH
4.PUSCH/PUSCH
PUSCH/PDSCH
linux驱动与应用程序进行交互linux驱动里面的中断程序,里面可能需要通知应用程序,通常的做法是,使用fasync和netlink。使用fasync比较简单,是file_operation本来就支持的机制。一下,两篇博客有详细介绍,简单来说就是:在应用程序中,指定进程,和回调函数,在内核中断服务函数中,向应用程序发送SINGIO,通知应用程序。以下两篇博客介绍非常详细:https://blog.csdn.net/kingdragonfly120/article/details/10858647
JVM性能优化原则:代码运算性能、内存回收、应用配置(影响Java程序主要原因是垃圾回收机制)代码层优化:避免过多循环嵌套、调用和复杂逻辑。Tomcat调优主要内容1、增加最大连接数2、调整工作模式3、启用gzip压缩4、调整JVM内存大小5、作为web服务器时、无Apache整合或者nginx6、合理选择垃圾回收算法7、尽量使用较新的JDK版本生产配置实例<Connectorport="8080"protocol="org.apache.coyote.http11....
数据库数据库就是一种特殊的文件,其中存储着需要的数据。关系型数据库的核心元素数据行(记录)数据列(字段)数据表(数据行的集合)数据库(数据表的集合)RDBMSRelational Database Management System通过表来表示关系型...
uva508 紫书上描述有问题,如果有多个精确匹配的, 要输出字典序最小的, 这里因为他给的序列就是按字典序排好的, 所以输出第一个精确匹配的。这道题,wa了两次在算模糊匹配的时候,考虑不周全,代码注释部分就是,模糊匹配,要么增加编码,要么减少编码,不够的话就算匹配...
1.建立两个activity分别时MainActivity和Main2Activity布局页面的代码如下MainActivity:<?xml version="1.0" encoding="utf-8"?><Button android:id="@+id/btn_open" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_
版本:java1.6, mybatis 3.2.8, weblogic 10.3 64bit在mybatis的数据源配置文件中进行如下配置 :" />t3://:是weblogic的一个协议在使用时,需要引入weblogic.jarjava.naming.factory.initial = javax.naming.Context.INITIAL_CONTEXT_FACTORY
Windows 窗体上的菜单是使用 MainMenu 对象创建的,该对象是一个 MenuItem 对象集合。可以在设计时向 Windows 窗体添加菜单,方法是添加MainMenu 组件然后使用菜单设计器向其追加菜单项。还可以用编程方法添加菜单,方法是向 Windows 窗体添加一个或多个 MainMenu 对象并向该集合中添加 MenuItem 对象。本主题中的过程说明如何使用菜单设计器或代码创
1、之前jupyter lab的密码设置是,每次启动以后 都需要 设置,然后重新启动服务,管理起来很困难。所以想着如何在 docker run 的时候,就把 jupyter lab 的密码设置了。想法就是,设置docker run --env 的环境变量,传递到容器内部,容器的启动脚本自动执行设置命令,设置密码,而脚本的书写是重点,现在开源如下,需要的伙伴可以自己拿。docker run 需要设置环境变量 JUPYTER_PASSWORD 。。 。。 把如下的脚本写在startup.sh 中。 ..
<body> <canvas></canvas></body>在chrome浏览器里,<canvas>的默认尺寸是300*150,display值是inline。要想在canvas这块画布上绘图,首先需要取得绘图上下文,即调用API getContext。getContext('2d')可获得2D上下文对象。2D上下文坐标系以canvas画布左上角为原点。属性fillStyle填充样式strokeStyle描边样式
题目:求n的阶乘n!解题思路,构造函数,运用递归的方式,函数一定要声明!C代码:#include<stdio.h>long fun(int n);void main(){ int n; long m; scanf("%d",&n); m=fun(n); printf("%d!=%ld",n,m);}long fun(int n){ ...
工具介绍stress 是一个 Linux系统压力测试工具,用作异常进程模拟平均负载升高的场景。安装yum install -y epel-releaseyum install stress -y下载:wget -c stress:https://fossies.org/linux/privat/stress-1.0.4.tar.gz/tar -xzvf stress-1.0.4.tar.gzcd stress-1.0.4/./configuremakemake installs
https://blog.wpjam.com/function_reference/add_post_meta/add_post_meta 添加一个一个自定义字段(Custom Field)到指定的日志,页面或者 post type 中。如果 $unique 参数设置为 true,并且指定的 meta key 已存在,那么这个函数返回 false 并且不对现有的字段做任何修改,否则添加字段并返回 true。用法<?php add_post_meta($post_id, $met.