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

5/3 update:

aotCsiRs is ok, including:

*transmission of periodic NZP-CSI-RS

*transmission of periodic CSI-IM

*transmission of periodic Tracking-RS(or TRS)

5/5 update:

*TRS periodicity should be slots40.

 

7/28 update:

*bugfix for NZP-CSI-RS row determination (thanks to @gmg2719)

add 'row' and 'bit string' to UI, rational is specified in 38.331--frequencyDomainAllocation IE:

frequencyDomainAllocation

Frequency domain allocation within a physical resource block in accordance with TS 38.211 [16], clause 7.4.1.5.3. The applicable row number in table 7.4.1.5.3-1 is determined by the frequencyDomainAllocation for rows 1, 2 and 4, and for other rows by matching the values in the column Ports, Density and CDMtype in table 7.4.1.5.3-1 with the values of nrofPorts, cdm-Type and density below and, when more than one row has the 3 values matching, by selecting the row where the column (k bar, l bar) in table 7.4.1.5.3-1 has indexes for k ranging from 0 to 2*n-1 where n is the number of bits set to 1 in frequencyDomainAllocation.

and now debug log will include validateNzpCsiRs status:

part of debug output for NZP-CSI-RS row selection:

#select 'row4'
-->inside validateNzpCsiRs
validateNzpCsiRsKiLi succeed: expectedRow="row4", bit-string="001", key="4_1_fd-CDM2", actualRow=4

#select 'row2'
-->inside validateNzpCsiRs
validateNzpCsiRsKiLi succeed: expectedRow="row2", bit-string="000000000001", key="1_1_noCDM", actualRow=2

#select 'row1'
-->inside validateNzpCsiRs
validateNzpCsiRsKiLi succeed: expectedRow="row1", bit-string="0001", key="1_3_noCDM", actualRow=1

#select 'other' and row=3
-->inside validateNzpCsiRs
validateNzpCsiRsKiLi succeed: expectedRow="other", bit-string="000001", key="2_1_fd-CDM2", actualRow=3

#select 'other' and row=5
-->inside onNzpCsiRsNumPortsCombCurIndChanged, index=2
-->inside validateNzpCsiRs
Warning: Row does not match! (expectedRow="other", actualRow=4, key="4_1_fd-CDM2")
validateNzpCsiRsKiLi succeed: expectedRow="other", bit-string="000001", key="4_1_fd-CDM2", actualRow=5

#select 'other' and row=6/7
-->inside validateNzpCsiRs
[2019-07-28 07:32:17]Warning: Invalid configuration: numKi=4 but numKiConf(frequencyDomainAllocation)=1!
validateNzpCsiRsKiLi failed: expectedRow="other", bit-string="000001", key="8_1_fd-CDM2", actualRow=6
[2019-07-28 07:32:17]Warning: Invalid configuration: numKi=2 but numKiConf(frequencyDomainAllocation)=1!
validateNzpCsiRsKiLi failed: expectedRow="other", bit-string="000001", key="8_1_fd-CDM2", actualRow=7

-->inside validateNzpCsiRs
validateNzpCsiRsKiLi failed: expectedRow="other", bit-string="000011", key="8_1_fd-CDM2", actualRow=6
validateNzpCsiRsKiLi succeed: expectedRow="other", bit-string="000011", key="8_1_fd-CDM2", actualRow=7

-->inside validateNzpCsiRs
validateNzpCsiRsKiLi succeed: expectedRow="other", bit-string="001111", key="8_1_fd-CDM2", actualRow=6

 

(1) aotCsiRs is added to alwaysOnTr:

if self.msg4Recved:
            if not self.error:
                self.aotCsirs(hsfn, sfn, slot)

            if not self.error:
                self.aotSrs(hsfn, sfn, slot)

(2) Transmission of NZP-CSI-RS and TRS

TRS is kind of nzp-csi-rs except that TRS always uses: single port with no CDM and density=3 and periodic TRS doesn't need CSI report.

Procedure to determine :

#refer to 3GPP 38.211 vf40
            #Table 7.4.1.5.3-1: CSI-RS locations within a slot.
            #determine ki (k0, k1 etc)
            ki = []
            pos = -1
            while True:
                try:
                    pos = self.nrNzpCsiRsFreqAll
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 12
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值