ngapp_build20190320放出后,陆续收到反馈:app总是报错,不容易找到valid configuraiton能让工具顺利导出excel。

为方便调试验证,新增下列feature:

(1) 如果options/enable debug勾选,不会再执行excel导出操作,即使configuration是正确的。如果需要导出excel,请去勾选options/enable debug。

(2)针对工具中存在的四处随机操作,新增‘advanced settings' tab用于指定对应参数配置:

这四处随机操作分别是:

(1)recvSSB之后侦听SIB1调度PDCCH occasion时:

*bestSsb为随机选取

*与bestSsb对应的PDCCH slot为随机选取

*与bestSSB对应的PDCCH slot的PDCCH candidate为随机选取

(2)PRACH发送过程中:

*与bestSsb对应的PRACH occasion为随机选取

(3)侦听Msg2调度的PDCCH occasion时:

*pdcch occasion为随机选取;

*与pdcch occasion对应的pdcch candidate为随机选取

'advanced settings'中与上述对应的6个配置参数,用于直接指定相应的配置值。对于invalid configuration,可以通过’advanced settings‘配置来逐步调整为valid configuration。

(3)举例如下:

n41,100M,all scs=30k,ul/dl configuration is align to LTE sa2+ssp7(3:1+10:2:2) with 3ms offset.

Invalid configuration example:
[5GNR SIM]Prepare configurations
-->inside prepNrGrid
contents of ["freqBand"]: {'opBand': 'n41', 'duplexMode': 'TDD', 'maxDlFreq': 2690, 'freqRange': 'FR1'}
contents of ["ssbGrid"]: {'scs': '30KHz', 'pattern': 'Case C', 'minGuardBand240k': 'NA', 'kSsb': '0', 'nCrbSsb': '38'}
contents of ["ssbBurst"]: {'maxL': 8, 'inOneGroup': '11111111', 'groupPresence': 'NA', 'period': '20ms'}
contents of ["mib"]: {'sfn': '0', 'hrf': '0', 'dmrsTypeAPos': 'pos2', 'commonScs': '30KHz', 'rmsiCoreset0': '12', 'rmsiCss0': '0', 'coreset0MultiplexingPat': 1, 'coreset0NumRbs': 48, 'coreset0NumSymbs': 1, 'coreset0OffsetList': (16,), 'coreset0Offset': 16, 'coreset0StartRb': 0}
contents of ["carrierGrid"]: {'scs': '30KHz', 'bw': '100MHz', 'numRbs': '273', 'minGuardBand': '3'}
contents of ["pci"]: 0
contents of ["numUeAp"]: 4Tx
contents of ["tddCfg"]: {'refScs': '30KHz', 'pat1Period': '5ms', 'pat1NumDlSlots': '7', 'pat1NumDlSymbs': '6', 'pat1NumUlSymbs': '4', 'pat1NumUlSlots': '2', 'pat2Period': 'not used', 'pat2NumDlSlots': '', 'pat2NumDlSymbs': '', 'pat2NumUlSymbs': '', 'pat2NumUlSlots': ''}
contents of ["css0"]: {'aggLevel': '4', 'numCandidates': 'n4'}
contents of ["dci10Sib1"]: {'rnti': '0xFFFF', 'muPdcch': '1', 'muPdsch': '1', 'tdRa': '2', 'tdMappingType': 'Type A', 'tdK0': '0', 'tdSliv': '95', 'tdStartSymb': '2', 'tdNumSymbs': '9', 'fdRaType': 'RA Type1', 'fdRa': '00001011111', 'fdStartRb': '0', 'fdNumRbs': '48', 'fdVrbPrbMappingType': 'interleaved', 'fdBundleSize': 'n2', 'mcsCw0': '1', 'tbs': '1480'}
contents of ["dci10Msg2"]: {'rnti': '0x0001', 'muPdcch': '1', 'muPdsch': '1', 'tdRa': '3', 'tdMappingType': 'Type A', 'tdK0': '0', 'tdSliv': '86', 'tdStartSymb': '2', 'tdNumSymbs': '7', 'fdRaType': 'RA Type1', 'fdRa': '00001011111', 'fdStartRb': '0', 'fdNumRbs': '48', 'fdVrbPrbMappingType': 'interleaved', 'fdBundleSize': 'n2', 'mcsCw0': '1', 'tbScaling': '0', 'tbs': '1192'}
contents of ["dmrsSib1"]: {'dmrsType': 'Type 1', 'dmrsAddPos': 'pos2', 'maxLength': 'len1', 'dmrsPorts': '0', 'cdmGroupsWoData': '2', 'numFrontLoadSymbs': '1', 'tdL': [2, 6, 9], 'fdK': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}
contents of ["dmrsMsg2"]: {'dmrsType': 'Type 1', 'dmrsAddPos': 'pos2', 'maxLength': 'len1', 'dmrsPorts': '0', 'cdmGroupsWoData': '2', 'numFrontLoadSymbs': '1', 'tdL': [2, 7], 'fdK': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}
contents of ["iniUlBwp"]: {'bwpId': '0', 'scs': '30KHz', 'cp': 'normal', 'locAndBw': '1099', 'startRb': '0', 'numRbs': '273'}
contents of ["rach"]: {'prachConfId': '98', 'raFormat': 'A2', 'raX': 2, 'raY': (1,), 'raSubfNumFr1SlotNumFr2': (9,), 'raStartingSymb': 0, 'raNumSlotsPerSubfFr1Per60KSlotFr2': 1, 'raNumOccasionsPerSlot': 3, 'raDuration': 4, 'scs': '30KHz', 'msg1Fdm': '1', 'msg1FreqStart': '0', 'raRespWin': 'sl20', 'totNumPreambs': '64', 'ssbPerRachOccasion': 'one', 'cbPreambsPerSsb': '4', 'msg3Tp': 'disabled', 'raLen': 139, 'raNumRbs': 12, 'raKBar': 2}
contents of ["advanced"]: {'bestSsb': 'NA', 'sib1PdcchSlot': 'NA', 'sib1PdcchCand': 'NA', 'prachOccasion': 'NA', 'msg2PdcchSlot': 'NA', 'msg2PdcchCand': 'NA'}

第一次执行(注意勾选enable debug)报错:即SIB1与SSB重叠。

tdOverlapped = {32~39, 44~49};而symbol32~39对应issb=2,symbol 44~49对应issb=3 (注意baseScsTd=60k, ssbScs=30k,所以scaleTd=2;tdOverlapped以及ssbFirstSymb都是以baseScsTd定义的)

sib1时域调度为sfn=0,slot=1,startSymb=2,numSymbs=9

从下面图示可以看出,sib1与ssb时域重叠情况。

为避开ssb,可以将sib1时域调度信息配置为:sfn=0,slot=1,startSymb=12,numSymbs=2

part of debug output:
[5GNR SIM]recv SSB
---->inside recvSsb(hsfn=0,sfn=0, scaleFd=2, scaleTd=2)
issb=0, ssbFirstSc=456, v=0, ssbFirstSymb=4
issb=1, ssbFirstSc=456, v=0, ssbFirstSymb=16
issb=2, ssbFirstSc=456, v=0, ssbFirstSymb=32
issb=3, ssbFirstSc=456, v=0, ssbFirstSymb=44
issb=4, ssbFirstSc=456, v=0, ssbFirstSymb=60
issb=5, ssbFirstSc=456, v=0, ssbFirstSymb=72
issb=6, ssbFirstSc=456, v=0, ssbFirstSymb=88
issb=7, ssbFirstSc=456, v=0, ssbFirstSymb=100selecting pdcch candidate: bestSsb=0(hrf=0,issb=0), pdcchSlot=1, pdcchCandidate=0[5GNR SIM]recv SIB1
---->inside recvSib1(hsfn=0,sfn=0,dci slot=1)
contents of sib1DmrsSymbs(w.r.t to slivS): [0, 4, 7]
[2019-03-26 14:15:44]Error: When receiving the PDSCH scheduled with SI-RNTI and the system information indicator in DCI is set to 0, the UE shall assume that no SS/PBCH block is transmitted in REs used by the UE for a reception of the PDSCH. tdOverlapped={32, 33, 34, 35, 36, 37, 38, 39, 44, 45, 46, 47, 48, 49} fdOverlapped={456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,....(omitted)

为了实现在上述配置的基础之上,规避上述ssb/sib1重叠错误,可以在'advanced settings'配置:

并将DCI 1_0(SIB1)时域调度从2调整为10:

再次执行时,又提示msg2与ssb冲突:

tdOverlapped={4~11, 16~17},其中symbol4~11对应issb=0,symbol 16~17对应issb=1

Msg2时域调度信息为:sfn=2,slot=0,startSymb=2,numSymbs=7

同理如果将Msg2时域调度从3调整为10也可以解决冲突:此时startSymb=12,numSymbs=2。

part of debug output:
[5GNR SIM]recv PDCCH(DCI 1_0, SI-RNTI)
selecting pdcch candidate: bestSsb=0(hrf=0,issb=0), pdcchSlot=1, pdcchCandidate=0[5GNR SIM]recv SIB1
contents of ssb2RachOccasionMap:
issb=0: rachOccasion=[[[0, 1, 19], 0, 0]], cbPreambs=[0, 1, 2, 3]
issb=1: rachOccasion=[[[0, 1, 19], 1, 0]], cbPreambs=[0, 1, 2, 3]
issb=2: rachOccasion=[[[0, 1, 19], 2, 0]], cbPreambs=[0, 1, 2, 3]
issb=3: rachOccasion=[[[0, 3, 19], 0, 0]], cbPreambs=[0, 1, 2, 3]
issb=4: rachOccasion=[[[0, 3, 19], 1, 0]], cbPreambs=[0, 1, 2, 3]
issb=5: rachOccasion=[[[0, 3, 19], 2, 0]], cbPreambs=[0, 1, 2, 3]
issb=6: rachOccasion=[[[0, 5, 19], 0, 0]], cbPreambs=[0, 1, 2, 3]
issb=7: rachOccasion=[[[0, 5, 19], 1, 0]], cbPreambs=[0, 1, 2, 3]
selecting prach occasion(=[[0, 1, 19], 0, 0]) with cbPreambs=[0, 1, 2, 3] corresponding to best SSB(with issb=0)[5GNR SIM]recv PDCCH(DCI 1_0, RA-RNTI)
contents of validCss0Msg2(raRespWin=20 slots):
PDCCH occasion #0: [0, 2, 0, 0]
PDCCH occasion #1: [0, 2, 1, 0]
PDCCH occasion #2: [0, 2, 2, 0]
PDCCH occasion #3: [0, 2, 3, 0]
PDCCH occasion #4: [0, 2, 4, 0]
PDCCH occasion #5: [0, 2, 5, 0]
PDCCH occasion #6: [0, 2, 6, 0]
PDCCH occasion #7: [0, 2, 7, 0]
selecting pdcch candidate: pdcchOccasion=0(numPdcchOccasions=8), pdcchCandidate=0(numPdcchCandidates=2)[5GNR SIM]recv RAR(Msg2)
---->inside recvMsg2(hsfn=0,sfn=2,dci slot=0)
contents of msg2DmrsSymbs(w.r.t to slivS): [0, 5]
[2019-03-26 14:47:01]Error: When receiving the PDSCH scheduled with SI-RNTI and the system information indicator in DCI is set to 1, RA-RNTI, P-RNTI or TC-RNTI, the UE assumes SS/PBCH block transmission according to ssb-PositionsInBurst, and if the PDSCH resource allocation overlaps with PRBs containing SS/PBCH block transmission resources the UE shall assume that the PRBs containing SS/PBCH block transmission resources are not available for PDSCH in the OFDM symbols where SS/PBCH block is transmitted. tdOverlapped={4, 5, 6, 7, 8, 9, 10, 11, 16, 17} fdOverlapped={456, 457, 458, 459, 460, 461,

为进一步规避msg2/ssb冲突问题,将'advanced settings'配置为:

并将DCI 1_0(Msg2)的时域调度从3调整为10:

此时配置已ok:

output of final valid configurations:
<...omited...>[5GNR SIM]recv RAR(Msg2)
---->inside recvMsg2(hsfn=0,sfn=2,dci slot=0)
contents of msg2DmrsSymbs(w.r.t to slivS): [0]
[5GNR SIM]Exporting to excel skipped

最终的valid configuration为:

Valid configuration example:contents of ["freqBand"]: {'opBand': 'n41', 'duplexMode': 'TDD', 'maxDlFreq': 2690, 'freqRange': 'FR1'}
contents of ["ssbGrid"]: {'scs': '30KHz', 'pattern': 'Case C', 'minGuardBand240k': 'NA', 'kSsb': '0', 'nCrbSsb': '38'}
contents of ["ssbBurst"]: {'maxL': 8, 'inOneGroup': '11111111', 'groupPresence': 'NA', 'period': '20ms'}
contents of ["mib"]: {'sfn': '0', 'hrf': '0', 'dmrsTypeAPos': 'pos2', 'commonScs': '30KHz', 'rmsiCoreset0': '12', 'rmsiCss0': '0', 'coreset0MultiplexingPat': 1, 'coreset0NumRbs': 48, 'coreset0NumSymbs': 1, 'coreset0OffsetList': (16,), 'coreset0Offset': 16, 'coreset0StartRb': 0}
contents of ["carrierGrid"]: {'scs': '30KHz', 'bw': '100MHz', 'numRbs': '273', 'minGuardBand': '3'}
contents of ["pci"]: 0
contents of ["numUeAp"]: 4Tx
contents of ["tddCfg"]: {'refScs': '30KHz', 'pat1Period': '5ms', 'pat1NumDlSlots': '7', 'pat1NumDlSymbs': '6', 'pat1NumUlSymbs': '4', 'pat1NumUlSlots': '2', 'pat2Period': 'not used', 'pat2NumDlSlots': '', 'pat2NumDlSymbs': '', 'pat2NumUlSymbs': '', 'pat2NumUlSlots': ''}
contents of ["css0"]: {'aggLevel': '4', 'numCandidates': 'n4'}
contents of ["dci10Sib1"]: {'rnti': '0xFFFF', 'muPdcch': '1', 'muPdsch': '1', 'tdRa': '10', 'tdMappingType': 'Type B', 'tdK0': '0', 'tdSliv': '26', 'tdStartSymb': '12', 'tdNumSymbs': '2', 'fdRaType': 'RA Type1', 'fdRa': '00001011111', 'fdStartRb': '0', 'fdNumRbs': '48', 'fdVrbPrbMappingType': 'interleaved', 'fdBundleSize': 'n2', 'mcsCw0': '1', 'tbs': '320'}
contents of ["dci10Msg2"]: {'rnti': '0x0001', 'muPdcch': '1', 'muPdsch': '1', 'tdRa': '10', 'tdMappingType': 'Type B', 'tdK0': '0', 'tdSliv': '26', 'tdStartSymb': '12', 'tdNumSymbs': '2', 'fdRaType': 'RA Type1', 'fdRa': '00001011111', 'fdStartRb': '0', 'fdNumRbs': '48', 'fdVrbPrbMappingType': 'interleaved', 'fdBundleSize': 'n2', 'mcsCw0': '1', 'tbScaling': '0', 'tbs': '320'}
contents of ["dmrsSib1"]: {'dmrsType': 'Type 1', 'dmrsAddPos': 'pos0', 'maxLength': 'len1', 'dmrsPorts': '0', 'cdmGroupsWoData': '1', 'numFrontLoadSymbs': '1', 'tdL': [0], 'fdK': [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0]}
contents of ["dmrsMsg2"]: {'dmrsType': 'Type 1', 'dmrsAddPos': 'pos0', 'maxLength': 'len1', 'dmrsPorts': '0', 'cdmGroupsWoData': '1', 'numFrontLoadSymbs': '1', 'tdL': [0], 'fdK': [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0]}
contents of ["iniUlBwp"]: {'bwpId': '0', 'scs': '30KHz', 'cp': 'normal', 'locAndBw': '1099', 'startRb': '0', 'numRbs': '273'}
contents of ["rach"]: {'prachConfId': '98', 'raFormat': 'A2', 'raX': 2, 'raY': (1,), 'raSubfNumFr1SlotNumFr2': (9,), 'raStartingSymb': 0, 'raNumSlotsPerSubfFr1Per60KSlotFr2': 1, 'raNumOccasionsPerSlot': 3, 'raDuration': 4, 'scs': '30KHz', 'msg1Fdm': '1', 'msg1FreqStart': '0', 'raRespWin': 'sl20', 'totNumPreambs': '64', 'ssbPerRachOccasion': 'one', 'cbPreambsPerSsb': '4', 'msg3Tp': 'disabled', 'raLen': 139, 'raNumRbs': 12, 'raKBar': 2}
contents of ["advanced"]: {'bestSsb': '0', 'sib1PdcchSlot': '1', 'sib1PdcchCand': '0', 'prachOccasion': '0', 'msg2PdcchSlot': '0', 'msg2PdcchCand': '0'}

(4)ngapp_build20190326下载链接:

链接: https://pan.baidu.com/s/1A2YD8z_vCtXGMDTSLQD_TQ

提取码: m4xq

NG Toolset开发笔记--5GNR Resource Grid(50)相关推荐

  1. NG Toolset开发笔记--5GNR Resource Grid(1)

    5GNR Resource Grid的开发目前基于3GPP Rel-15(2018-03)规范文本.主要参考的标准文本有:38.104, 38.211/212/213/214,38.321,38.33 ...

  2. NG Toolset开发笔记--5GNR Resource Grid(10)

    PUCCH Requirement Analysis Part II PUCCH资源确定: 如果UE没有dedicated PUCCH资源配置,则使用SIB1---PUCCH-Resource-Com ...

  3. NG Toolset开发笔记--5GNR Resource Grid(21)

    8/14~8/16号完成PDSCH需求分析:(refer to 38.211/38.212/38.214/38.321/38.331) Note: 依旧采用截图方式 下行antenna port: P ...

  4. NG Toolset开发笔记--5GNR Resource Grid(11)

    6/19号完成CSI Report Framework分析:(refer to 38.212/38.214/38.321/38.331) CSI包括: l  CQI l  PMI l  CRI(CSI ...

  5. NG Toolset开发笔记--5GNR Resource Grid(9)

    6/9~6/10号完成PUCCH需求分析:(refer to 38.211/38.212/38.213/38.331) PUCCH Requirement Analysis Part I PUCCH支 ...

  6. NG Toolset开发笔记--5GNR Resource Grid(29)

    10/14~10/15完成: *ui design(parameters analysis) part II (三)UI Design Part II 3, Carrier/BWP settings ...

  7. 【Python】开发笔记

    [Python]开发笔记 1. 开发工具篇 1)前言 2)VScode VScode搭建Python环境 简明教程 3)Pycharm 4)Visual Studio 5)Jupyter Lab/Ju ...

  8. iphone开发笔记和技巧总结

    在iphone程序中实现截屏的一种方法: //导入头文件   #importQuartzCore/QuartzCore.h //将整个self.view大小的图层形式创建一张图片imageUIGrap ...

  9. Linux高并发服务器开发---笔记1(环境搭建、系统编程、多进程)

    0613 第4章 项目制作与技能提升 4.0 视频课链接 4.1 项目介绍与环境搭建 4.1.1 项目介绍 4.1.2 开发环境搭建 ①安装Linux系统.XSHELL.XFTP.Visual Stu ...

最新文章

  1. 拼接的option会多出空行_液晶拼接屏与墙面安装技巧
  2. 使用 Firefox攻击Web2.0应用(二)
  3. c语言调用dll实例 结构体传参,C# 调用Dll 传递字符串指针参(转)
  4. python3精要(45)-exit
  5. Activity 与ListActivity的区别
  6. java内存模型概述_Java内存模型-快速概述和注意事项
  7. Leetcode每日一题:290.word-pattern(单词规律)
  8. UVA11152 Safe Salutations【计算几何】
  9. 什么是分布式系统,如何学习分布式系统
  10. 思想交锋:证券业数字化转型实践
  11. SoapUI接口测试——添加新的API接口——new rest service from uri
  12. 单片机c语言全解 pdf,单片机c语言程序.pdf
  13. TM1640驱动程序
  14. 微信浏览量服务器,微信uv和pv是什么?独立访客(UV)数据页面浏览数(PV)的关系
  15. windows 运行 自定义 命令 的实现
  16. ecshop 评价仿京东仿淘宝 中评率 好评率 差评率
  17. 既是回文数又是质数c语言,素数回文——输出两整数之间所有既是回文数又是素数的数 C++实现...
  18. 0ctf2018_heapstorm2_reproduce
  19. c语言数据结构之队列
  20. 【Open3D】人脸深度图转点云,点云表面重建

热门文章

  1. TCP/IP协议栈在Linux内核中的运行时序分析
  2. Tightly Coupled LiDAR Inertial Odometry and Mapping源码解析(四)
  3. 广告让你不自觉地掏钱?消费者行为背后的心理学
  4. opencv4.3 Stitcher图像拼接方法——学习笔记1
  5. python 控制有线网卡_用python写一些网络操作
  6. 计算机考试身份证和准考证号
  7. 华为nova5ipro的优缺点_三个原因告诉你 为何华为nova 5i Pro如此受追捧
  8. FTPClient.listFiles
  9. 邢福有老师 找准公文写作要点,避开这3种毛病
  10. Android 运行报错:Cause: java.lang.IllegalArgumentException