NR UE capability FeatureSetCombination的查看方法

下面是UEcapability中根据协议中的描述总结的NR CA和EN-DC组合的查看方法,主要内容在38.331/36.331中。比较关键的IE就是FeatureSetCombination。

3bbc3e4480014ca8b00ae0c67f0256e8.png

 FeatureSetCombination对应的是FeatureSet entries的二维矩阵。

每个FeatureSetsPerBand 包含适用于相关band combination carrier的featureset list的entries。 在相关频段上,UE 应支持 FeatureSetsPerBand 中相同位置的 FeatureSets 组合。 一个 FeatureSetCombination 中的所有 FeatureSetsPerBand必须具有相同数量的条目。

FeatureSetCombination 中的 FeatureSetsPerBand 数必须等于关联band combination中的band 数目; 第一个FeatureSetPerBand 适用于band combination的第一个band ,依此类推。

每个FeatureSet 包含一对用于UL和DL的NR或E-UTRA feature set ID。

在 NR 的情况下,UL 和 DL 的实际feature sets在 FeatureSets IE 中定义,并通过其ID进行引用,代表的是它们在 FeatureSets IE 的 featureSetsUplink / featureSetsDownlink 列表中的位置。在完全不清楚CA band combination结构的情况下,上面这段内容真读不懂,无所谓,先放在这。

751144617b2f4fccbe449d3ba69ff171.png

 但是有一点是真读懂了,针对这点举个例子,如上图,假如bandList中只有一个band 25,那其featureSetCombination=0关联的featureSetCombinations中的信息也只能有一对UL/DL feature set ID 信息;如果bandlist 对应的是CA 组合 band 25 和41 ,那featureSetCombination=1关联的featureSetCombinations中的信息就要有2对UL/DL feature set ID 信息,对应关系如上图左侧。

bc12fc994fc442bea23c6523d70d5c76.png

 从FeatureSet中引用的FeatureSetUplink和FeatureSetDownlink包括一组FeatureSetUplinkPerCC-Id和FeatureSetDownlinkPerCC-Id以及其他信息。 每个 CC ID 的数量决定了 UE 能够在相应频带的频域中连续聚合的载波数量。 UE 支持的载波数量也受相关 BandCombination(如果存在)中指示的带宽类别的限制。

在feature set combinations中,UE 应排除具有相同或较低能力的条目,因为网络可以通过高级能力,推断UE也支持对应的低级能力,比如N25支持 4 layers传输,UE就只上报支持N25 4 layers, 不用上报还支持N25 2 layers传输。

有时候可能UE需要上报fallback band-combinations信息,这时候UE可以通过2种方式告知网络侧fallback band-combinations信息,一种是通过将FeatureSet ID 设置为零(带间和带内非连续回退场景),FeatureSet id =0代表这个band combination下不支持对应的UL/DL 载波;第二种方式是降低FeatureSet-PerCC id的个数(针对的是intra-band contiuous fallback场景),比如原本CA-Bandwidthclass支持2cc,在上报能力时对应的FeatureSet-PerCC id只有1个;不采取上述方式的话,还可以通过将BandCombination与单独的BandCombinations信息关联的方式实现,反正想干啥总有能搞定的方法。另外UE可以report一个FeatureSetCombination,只包含fallback band combinations的信息,也就是说,在一个FeatureSetCombination中,每组跨band的FeatureSets可能至少包含一对FeatureSetUplinkId和FeatureSetDownlinkId,此时它们可以设置为0(代表不支持对应的UL/DL 载波)。

上面这段话的内容和主要和下面的几个相关IE有关系,下面分别看看其含义。

2f1eb96a2adc4777acf3b316f30b86e8.png

 featureSetCombinationId 用于确定featureSetCombinations中的featureSetCombination的位置,featureSetCombinationId=0代表featureSetCombinations中的第一个配置信息。

f85242e3426749e89e26d6e7d48b5bed.png

 例如上图featureSetCombination=0,要去featureSetCombinations中对应位置去查看featureSet信息,具体的 0对应的是上图中的第一个位置的信息;featureSetCombination=1,对应的就是第二个位置的信息。

961e853a92aa44879813fcd970bf230f.png

 FeatureSetUplinkId 用于确定featureSetsUplink中的关联FeatureSetUplink的位置;FeatureSetUplinkId=1代表featureSetsUplink中第一个位置的信息,依次类推。其中要注意的是FeatureSetUplinkId=0 不会在实际的FeatureSetUplink中用,但是如果配置FeatureSetUplinkId=0的话,代表在实际这个band combination下不支持这个band的UL 载波。

e4fd4c5262454274bb425ce7e4cecebc.png

 例如上图N25 对应的FeatureSetUplinkId=2(uplinkSetNR =2),下一步要去featureSetUplink中去找第二个位置的信息;N41 对应的FeatureSetUplinkId=0(uplinkSetNR =0),代表N41不支持UL 载波,通过上图左侧的N41 ca bandwidthClass信息也可以看出,N41 没有UL cc能力。

ab4c1a2afea24d5d89a73f1bf65befca.png

 FeatureSetDownlinkId用于确定featureSetsDownlink中的关联FeatureSetDownlink的位置;FeatureSetDownlinkId=1代表featureSetsDownlink中第一个位置的信息,依次类推。其中要注意的是FeatureSetDownlinkId=0 不会在实际的FeatureSetUplink中用,当如果配置FeatureSetDownlinkId=0的话,代表在这个band combination下不支持这个band的DL载波。

1c23d893a6414969a8e0dbb446ba6ac4.png

 例如上图N25 对应的FeatureSetDownlinkId=1(downlinkSetNR =1),下一步要去featureSetDownlink中去找第一个位置的信息;N41 对应的FeatureSetDownlinkId=2(downlinkSetNR =2),下一步要去featureSetDownlink中去找第二个位置的信息。

28cc559e58cd47a0a94a0c00fe90f2bd.png

 featureSetListPerDownlinkCC指示UE在feature set的各个DL 载波上支持哪些功能。 因此,应根据UE ca-BandwidthClassDL在此list中包含至少与其支持的carrier数量一样多的 FeatureSetDownlinkPerCC-Id,比如N25 ca-BandwidthClassDL-NR a代表只支持1cc,这时候FeatureSetDownlinkPerCC只能有一个id,如果N25 ca-BandwidthClassDL-NR b代表支持2cc,此时FeatureSetDownlinkPerCC要有2个id。FeatureSetDownlinkPerCC中元素的顺序无关紧要,网络可以根据FeatureSetDownlinkPerCC中的任何 FeatureSetDownlinkPerCC-Id 配置任何载波,但是fallback场景除外。如果UE针对的是intra-band contiuous fallback场景,要采用fallback 上报的方式,那比如ca-BandwidthClass支持2cc,在上报能力时对应的FeatureSet-PerCC id可以只有1个。

6126f04525a8471197e47e5c9ceab4ab.png

 featureSetListPeruplinkCC和featureSetListPerDownlinkCC 类似,不再赘述。

03842f2b1e1e471ea109fd948d935ba5.png

 featureSetDownlinkPerCC-id用于在FeatureSetDownlinkPerCC确定关联信息的位置索引,featureSetDownlinkPerCC-id=1代表的就是第一个位置。

4b2ec61c22fe416d8a97b2903b53e95c.png

 如上图绿色箭头,featureSetDownlinkPerCC-id=1/2/3与FeatureSetDownlinkPerCC中的对应关系。

317314e3a68941f6acd30e855bf095eb.png

 featureSetUplinkPerCC-id与featureSetDownlinkPerCC-id类似,对应关系如上图绿色箭头。

到这里NR CA能力的关联关系就基本清楚了,刚开始那段上报fallback band-combinations信息的话,应该也差不多能对应上了。 下面综合起来看几个NR CA能力映射关系的例子。

单band 能力

139f72725e8e4fd68395d49d2ba890a9.png

上图是N25 DL 能力映射关系图,N25 支持DL SCS 15khz DL 带宽 40khz,最大支持DL 4 layers 传输等等。

4982c18abce74f2b88ddc361435372eb.png

这是N25 UL能力映射图,可以看到N25 UL 支持UL SCS 15khz UL 带宽 40khz,最大支持UL 1layers 传输等等。

CA能力 N25(pcell)+N41(Scell) 

8956bad112c5466db9743a6dea0792c3.png

 如上路径 可以看出N25+N41 支持DL N25(2*2) +n41(4*4) 传输,其他信息如上图。

2152ee682c8a472bbb2a4a6cd82b1010.png

 如上路径 可以看出N25+N41 只支持UL N25 one layer传输 ,n41不支持UL 载波,正如bandNR 25 有配置ca-BandwidthClassUL-NR,而bandNR 41 却没有ca-BandwidthClassUL-NR, 代表只能N25做Pcell(因为可以配置UL 载波),N41 只能有DL 载波,其他信息如上图。

紧接着看下EN-DC的能力如何查看,主要还是几个类似的IE,简单看下。

91ee252fe87341a88470eba31a79ac94.png

 ENDC Feature set Combination结构如上,对于eutra部分会有FeatureSetEUTRA-UplinkId 和FeatureSetEUTRA-DownlinkId 用于指定festure set的位置,例如FeatureSetEUTRA-DownlinkId=1代表featureSetsEUTRA-r15->featureSetsDL第一个位置的信息,FeatureSetEUTRA-DownlinkId=0代表不支持对应的配置,即没有DL载波信息。

44385dadf33943499b70a3f11e0f160e.png

对于featureSetDL-PerCC中包含的FeatureSetDL-PerCC-Id的数目要与ca-bandwidthClassDL相匹配,例如ca-bandwidthClassDL c代表DL 2CC,这2cc的要求如上图中的Table 5.6A-1,ca-bandwidthClassDL c 对应到featureSetUL-PerCC中就要有2个FeatureSetUL-PerCC-Id;featureSetUL-PerCC也是相同的原理。

最后需要根据FeatureSetUL-PerCC-Id和FeatureSetDL-PerCC-Id 确定最后的具体能力信息,例如FeatureSetDL-PerCC-Id=0代表的是featureSetsDL-PerCC-r15中的第一个位置的信息,FeatureSetDL-PerCC-Id=1代表的是第二个位置的信息。这部分对应的ENDC组合的UL和DL能力映射关系图如下。

185c34d257b1468c86bf01b70b71d581.png

 ad2d6c08965a4c95ad28d54e6500d1c0.png

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
用python根据需求完成一个TXT解析器的简单开发 一 修改说明: 需求一: 一开始说要解析UECapabilityInfo 消息里的supportedBandCombination-r10 这个IE里的CA组合转化成易阅读的表现形式. 我以为一组CA组合就是一组: bandEUTRA-r10 ca-BandwidthClassUL-r10 ca-BandwidthClassDL-r10 supportedMIMO-CapabilityDL-r10 功能实现: 有效信息筛选:于是就用循环把UECapabilityInformation的数据里每一行作为一个元素放到list里面 然后用bandEUTRA-r10作为一组CA的识别信息、在筛选出同组ca-BandwidthClassUL-r10、ca-BandwidthClassDL-r10、supportedMIMO-CapabilityDL-r10的信息,添加保存到字符串中,然后再把字符串作为元素添加到list中去。最后遍历list的元素写入目标文件 需求二: 然后收到反馈CA组合的理解是错误的。一组CA组合应该是以大括号作为识别的,里面可能包含多组: bandEUTRA-r10: ca-BandwidthClassUL-r10 ca-BandwidthClassDL-r10 supportedMIMO-CapabilityDL-r10 CA组合识别原理:在查看UECapabilityInformation内的CA组合后 发现CA组合内第一个 bandEUTRA-r10因为比其他bandEUTRA-r10多了一层的CA组合的大括号,所以如果给每一行增加索引的话就会发现除了第一个bandEUTRA-r10,其他bandEUTRA-r10到上一个supportedMIMO-CapabilityDL-r10的距离都是一样的,为了减少复杂度,我删除了所有’{’,这样所有除了所有CA组合第一个bandEUTRA-r10往上第四行是’}’其他bandEUTRA-r10的往上第四行都是supportedMIMO-CapabilityDL-r10 功能实现: 添加索引:便利时用了for enumerate()循环,这样便利时可以在循环时,自动为每个元素生成索引 CA组合识别:在识别到bandEUTRA-r10时,增加一个判断if datalist1[index-4].startswith(),如果bandEUTRA-r10的往上第四行是supportedMIMO-CapabilityDL-r10说明同组CA未结束,把筛选的有效信息强制类型转换后添加在上个元素末尾,反之则说明是个新的CA组合,往列表里添加一个新的元素。 需求三: 之后收到反馈CA组合虽然识别了,但是排序不行,需要按照CA组合支持的band进行排序 功能实现: 排序:于是我在识别完CA组合后,增加了一个循环和count(),用CA组合里的’-’给它们归类 比如1AA,11A,21AA是一类;1A-1A,2A-1AA,3A-1A是一类 在用一个中间变量保存开头的band的数字,一个类中把开头支持band的数字字母相同的CA组合归为一行 比如1A-21A,1A-22A一类1AA-2AA 1AA-3AA为一类 需求四: 之后收到反馈,CA组合分类不能只按照开头比较分类,不然一但数据多了会对查阅带来极大不便,应该按照每组CA组合中bandEUTRA-r10的值进行判断,比如1AA-2AA,1A-2AA和1AA-2A应该归在同一行 实现原理:首先我想的是按位比较数字,但是因为字母的数量不稳定,数字的位置不一定对应,然后我就想把数字全部提取出来作为索引,在相应的索引后面添加同组元素,用dict来实现排序。难点就在于从字符串中提取数字。后来在python的正则表达式中找到相关的处理函数compile()(设置匹配对象类型)和findall()(找到所有匹配对象并以list返回)。 功能实现: 第二次排序:在上次的排序中我保留了分类和从小到大的排序。方便提取索引时,索引也是从小到大。每遍历一个元素(CA组合有效信息),就compile()和findall(),从该元素中提取数字组合(在compile()的参数中添加()就能够使提取的内容成为一组数据),然后通过dict自带函数setdefault()添加索引,并可以设置索引值为list类型(dict类型的索引的值不可变,但如果类型为list,list的内容可以进行改动),避免重复索引,在本次遍历中完成将元素添加到索引值对应的list中去 需求五: 之后对程序进行测试,在测试test2时发现layers增加了fourlayers类型后,用来代表layers的数字2和4会影响分类结果。比如1AA(2)-1AA(2)和1A(4)-1A(2)会被归为两类。 test1:当CA组合的格式为xx-xx-xx-xx-xx(最长可识别为五位元素的组合,再长就需要修改代码) test2:当CA组合包含fourLayers test3:当CA组合缺失某种格式比如xx-xx时发现layers增加了fourlayers 功能实现: : 解除layers对排序的影响:用II 和 IV替代2,4来表示layers,测试后不影响阅读与分类 二、整体程序架构: 1.通过循环和自带的startswith()先将每组CA组合的有效信息识别 2.通过sorted()函数将所有CA组合从小到大排列 3.通过count()函数将所有CA组合根据格式不同分类 4.通过循环和正则表达式的split()对所有CAlist数据进行处理(用split处理只是防止出现不必要的错误) 5.通过循环和正则表达式compile()和findall()识别所有CA组合中数字,并将同一组合中的数字合为一个元素(在同一循环,用这个数字的元素作为一个dict的索引),用dict自带的setdefault()进行Key的添加顺便设置Key的值为list,避免Key重复,在用append把当前Key的字符串,添加到Key对应值的list中去 6.最后对dict整体遍历,将每一个Key的值输出到文本中去。
CA-SDK ver.4.5是一种软件开发工具包,用于开发和集成数字证书认证应用程序。CA代表证书颁发机构(Certification Authority),SDK代表软件开发工具包(Software Development Kit)。 CA-SDK ver.4.5具有以下特点和功能: 1. 证书管理:它提供了证书的生成、签名、验证和撤销等功能。开发人员可以使用CA-SDK ver.4.5来生成和管理数字证书,保证证书的合法性和可靠性。 2. 安全性:它提供了安全的加密和解密算法,保证了数据的机密性和完整性。开发人员可以使用CA-SDK ver.4.5来保护敏感数据和通信,防止数据被篡改或窃取。 3. 多平台支持:它支持多种操作系统和开发语言,包括Windows、Linux、macOS和各种编程语言(如Java、C++、Python等)。开发人员可以在不同的平台上使用CA-SDK ver.4.5来开发和集成证书认证应用程序。 4. 跨平台集成:它提供了标准的API接口,方便与其他应用程序进行集成。开发人员可以使用CA-SDK ver.4.5将数字证书认证功能集成到他们的应用程序中,提供更安全和可靠的用户身份验证和数据保护。 总之,CA-SDK ver.4.5是一个强大的软件开发工具包,用于开发和集成数字证书认证应用程序。它提供了证书的生成、签名、验证和撤销等功能,保证了数据的安全性和可靠性。同时,它支持多平台和跨平台集成,方便开发人员在不同的环境下使用和部署。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

modem协议笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值