NR SA Coreset and Search Space
The purpose of this tutorial is to show you how to configure Coreset and Search Space and how those configurations are mapped to RRC message. In addition, this tutorial will explain how each of those search spaces are used throughout the call processing.
Table of Contents
- NR SA Coreset and Search Space
- Test Procedure Summary
- Test Setup
- Key Configuration Parameters
- Test 1 : Single Dedicated Coreset / Single Search Space
- Configuration
- Perform the Test
- Log Analysis
- Sub Test 1 : Single Dedicated Coreset / Single Search Space - Explicit Configurations
- Sub Test 2 : Single Dedicated Coreset / Single Search Space - Explicit Configurations : Assigning css to all transactions
- Sub Test 3 : Single Dedicated Coreset / Single Search Space - Explicit Configurations : Assigning both css and uss
- Test 2 : Multiple Dedicated Coreset / Multiple Search Space - Explicit Configurations : Assigning both css and uss
- RRC / NAS Signaling
Test Procedure Summary
This test requires gNB configuration change only and you can keep mme, ims configuration as in default.
Step 1 : Set TDD/FDD(NR_TDD). number of DL Antenna(N_ANTENNA_DL), Band(band) and Frequency(dl_nr_arfcn) and Bandwidth(NR_BANDWIDTH) as you want
Step 2 : Configure pdcch parameter as per your requirement. search_space0_index, dedicated_coreset, css, uss, rar_al_index,si_al_index and al_index are the detailed parameters you need to configure. css is the parameter for common search space and uss is the parameter for user specific search space where you can specify the number of candidates for each aggregation level. rar_al_index, si_al_index and al_index are parameters indicating the specific aggregation level and number of candidates for RAR, SIB and user data respectively.
Step 3 : Run the test
Step 4 : Verify the result with Log. Check SIB for verifying the configuration on CSS (Common Search Space) and RRC Setup message for USS. Check PDCCH log to see which specific search space are applied for each PDCCH.
Test Setup
Test setup for this tutorial is as shown below. This is just for low layer testing, you may not need any complicated IP layer setup.
- SIM Card used in this tutorial is the one delivered with the system as it is.
- If you want to change the configuration, The tutorial Configuration Guide would help
Key Configuration Parameters
Followings are important configuration parameters for this tutorial. You may click on the items for the descriptions from Amarisoft documents.
- pdcch
- common_coreset
- coreset_id
- rb_start
- l_crb
- rb_list
- duration
- interleaved
- reg_bundle_size
- interleaver_size
- shift_index
- precoder_granularity
- dmrs_scid
- tci_states_pdcch
- dedicated_coreset
- css
- uss
- search_space_id
- n_candidates
- start_symb
- coreset_id
- css
- dci_0_1_and_1_1
- slot_period
- slot_duration
- force_cce0
- force_dci_0_0
- rar_search_space
- dl_search_space
- ul_search_space
- coreset0_index
- search_space0_index
- n_rb_coreset0
- n_symb_coreset0
- offset_rbs_coreset0
- rar_al_index
- al_index
- si_al_index
- paging_al_index
- pei_al_index
Test 1 : Single Dedicated Coreset / Single Search Space
In this test, I am trying to show you how to interpret each of the configuration parameters from default setting(gnb-sa.cfg) and how to correlate the configuration with IE(information elements) in RRC messages. Then I will add multiple subtests. In the subtest, I will add some additional configuration parameters to have more controll over the coreset/searchspace mapping or control on which search space is supposed to be when.
Configuration
The configuration shown here is common configuration for all the subtests belonging to Test 1 and I will not show this configuration repeatedly for every subtest.
I have used gnb-sa-coreset-ss-test1.cfg which is copied and modified from gnb-sa.cfg
I am using the default mme, ims config as shown below.
In gnb-sa-coreset-ss-test1.cfg, it is configured as follows.
In the configuration file, you can select any specific tdd pattern with the parameter NR_TDD_CONFIG. To apply TDD configuration, you first need to configure the duplex mode (NR_TDD) to 1 (TDD). And then I set NR_TDD_CONFIG to 2 which is one of default sample configuration provided by Amarisoft sample configuration. And I set the channel bandwidth (NR_BANDWIDTH) to 20Mhz and 2x2 MIMO (N_ANTENNA_DL = 2)
Here the band is set to n78 which is a TDD band. The important part is ssb_pos_bitmap. In this test, only ssb 0 is enabled and all the csi-rs is configured not to collide with the ssb 0 symbols. If you want to change this part, you may need to change CSI-RS symbols accordingly not to collide the changed ssb burst position.
Here comes the tricky and confusing part. Sorry for spaghetti like arrows, but this is the best I can do for now. Flow through each of the lines and arrows whenever you are confused with which parameters are mapped to which IE(information elements) in RRC. Just as high level descriptions :
- css maps to pdcch-ComfigCommon in SIB1
- uss maps to pdcch-Config in RRC Setup or RRC Reconfiguration
- n_candiates maps to nrofCanadiates in searchSpacesToAddModList
- You can explicitely specify which aggregation level(AL) should be used for which specific transactions in protocol sequence (e.g, rar_al_index for RAR, si_al_index for SIBs(Other SIBs), al_index for other general user traffcis etc)
Perform the Test
Check cell configurations with cell phy and cell command to confirm that cell configuration is properly configured as you intended.
Power on UE and make it sure the attach is complete and some traffic goes on.
Log Analysis
This is just for showing the association between the configuration shown above and IE (Information Elements) in RRC.
First you would check out how search_space0_index is mapped to RRC. It is mapped to searchSpaceZero IE in pdcch-ConfigSIB1 of MIB.
Now let's take a look at how css parameter is mapped to RRC. It is mapped to pdcch-ConfigCommon in SIB1. css parameter (object) has many child paramters in it, but by default we usually specify agrregation level with the parameter n_candidates. n_candidates is mapped to nrofCandiates IE and each of the elements in n_candidates array maps to each elements of nrofCandidates IE.
Another important thing worth paying attention to are searchSpaceOtherSystempInformation, pagingSearchSpace and ra-SearchSpace in RRC. In the configuration file of this test, I haven't specified these value. In this case, those IEs uses the seachSpaceID specified in commonSearchSpaceList.
Now let's confirm how each of these search spaces are applied to each of the transactions in protocol sequence.
You can confirm that PDCCH for SIB1 uses ss_id configured by search_space0_index.
You can confirm that PDCCH for RAR uses ss_id configured in ra-SearchSpace IE in SIB. (
Now let's take a look at how dedicated coreset and uss are configured and how they are mapped to RRC. High level mappings are as follows :
- rb_start and l_crb in configuration file are mapped to frequencyDomainResources in controlResourceSetToAddModList (
NOTE : 6 consecutive RBs corresponds to single bit '1' in frequencyDomainResources) - duration in configuration file maps to duration in controlResourceSetToAddModList
- precoder_granularity in configuration file maps to precoderGranularity in controlResourceSetToAddModList
You will notice that RRC setup message is scheduled by PDCCH in ss_id configured in ra-SearchSpace which is a css (
Other traffics (i.e, any traffic except SIB, RAR, RRC with PHY config) uses uss.
This shows a long sequence of transactions in a single shot showing which search space is used by each transaction. Just try to get familiar with the mapping and search space selection logic.
Sub Test 1 : Single Dedicated Coreset / Single Search Space - Explicit Configurations
The purpose of this Sub Test is basically same as the previous test but specified coreset_id, search_space_id explicitely. In this way, you can assign these ids as you like instead of getting them assigned automatically by gNB.
Just as high level descriptions :
- css maps to pdcch-ComfigCommon in SIB1
- uss maps to pdcch-Config in RRC Setup or RRC Reconfiguration
- n_candiates maps to nrofCanadiates in searchSpacesToAddModList
- You can explicitely specify which aggregation level(AL) should be used for which specific transactions in protocol sequence (e.g, rar_al_index for RAR, si_al_index for SIBs(Other SIBs), al_index for other general user traffcis etc)
I have used gnb-sa-coreset-ss-test1-subtest1.cfg which is copied and modified from gnb-sa-coreset-ss-test1.cfg
Then perform the test and look into the logs.
Frist let's take a look at how css parameter is mapped to RRC. It is mapped to pdcch-ConfigCommon in SIB1. css parameter (object) has many child paramters in it, but by default we usually specify agrregation level with the parameter n_candidates. n_candidates is mapped to nrofCandiates IE and each of the elements in n_candidates array maps to each elements of nrofCandidates IE.
Another important thing worth paying attention to are searchSpaceOtherSystempInformation, pagingSearchSpace and ra-SearchSpace in RRC. In the configuration file of this test, I haven't specified these value. In this case, those IEs uses the seachSpaceID specified in commonSearchSpaceList.
Now you can confirm that PDCCH for RAR uses ss_id configured in ra-SearchSpace IE in SIB. (
Now let's take a look at how dedicated coreset and uss are configured and how they are mapped to RRC. High level mappings are as follows :
- rb_start and l_crb in configuration file are mapped to frequencyDomainResources in controlResourceSetToAddModList (
NOTE : 6 consecutive RBs corresponds to single bit '1' in frequencyDomainResources) - duration in configuration file maps to duration in controlResourceSetToAddModList
- precoder_granularity in configuration file maps to precoderGranularity in controlResourceSetToAddModList
This shows a long sequence of transactions in a single shot showing which search space is used by each transaction. Just try to get familiar with the mapping and search space selection logic.
Sub Test 2 : Single Dedicated Coreset / Single Search Space - Explicit Configurations : Assigning css to all transactions
The purpose of this Sub Test is basically same as the previous test but specified coreset_id, search_space_id explicitely. In this way, you can assign these ids as you like instead of getting them assigned automatically by gNB.
Just as high level descriptions :
- css maps to pdcch-ComfigCommon in SIB1
- uss maps to pdcch-Config in RRC Setup or RRC Reconfiguration
- n_candiates maps to nrofCanadiates in searchSpacesToAddModList
- You can explicitely specify which aggregation level(AL) should be used for which specific transactions in protocol sequence (e.g, rar_al_index for RAR, si_al_index for SIBs(Other SIBs), al_index for other general user traffcis etc)
I have used gnb-sa-coreset-ss-test1-subtest2.cfg which is copied and modified from gnb-sa-coreset-ss-test1-subtest1.cfg
Then perform the test and look into the logs.
Frist let's take a look at how css parameter is mapped to RRC. It is mapped to pdcch-ConfigCommon in SIB1. css parameter (object) has many child paramters in it, but by default we usually specify agrregation level with the parameter n_candidates. n_candidates is mapped to nrofCandiates IE and each of the elements in n_candidates array maps to each elements of nrofCandidates IE.
Another important thing worth paying attention to are searchSpaceOtherSystempInformation, pagingSearchSpace and ra-SearchSpace in RRC. In the configuration file of this test, I haven't specified these value. In this case, those IEs uses the seachSpaceID specified in commonSearchSpaceList.
Now you can confirm that PDCCH for RAR uses ss_id configured in ra-SearchSpace IE in SIB. (
Now let's take a look at how dedicated coreset and uss are configured and how they are mapped to RRC. High level mappings are as follows :
- rb_start and l_crb in configuration file are mapped to frequencyDomainResources in controlResourceSetToAddModList (
NOTE : 6 consecutive RBs corresponds to single bit '1' in frequencyDomainResources) - duration in configuration file maps to duration in controlResourceSetToAddModList
- precoder_granularity in configuration file maps to precoderGranularity in controlResourceSetToAddModList
This shows a long sequence of transactions in a single shot showing which search space is used by each transaction. Just try to get familiar with the mapping and search space selection logic.
Sub Test 3 : Single Dedicated Coreset / Single Search Space - Explicit Configurations : Assigning both css and uss
The purpose of this Sub Test is basically same as the previous test but specified coreset_id, search_space_id explicitely. In this way, you can assign these ids as you like instead of getting them assigned automatically by gNB.
Just as high level descriptions :
- css maps to pdcch-ComfigCommon in SIB1
- uss maps to pdcch-Config in RRC Setup or RRC Reconfiguration
- n_candiates maps to nrofCanadiates in searchSpacesToAddModList
- You can explicitely specify which aggregation level(AL) should be used for which specific transactions in protocol sequence (e.g, rar_al_index for RAR, si_al_index for SIBs(Other SIBs), al_index for other general user traffcis etc)
I have used gnb-sa-coreset-ss-test1-subtest3.cfg which is copied and modified from gnb-sa-coreset-ss-test1-subtest2.cfg
Then perform the test and look into the logs.
Frist let's take a look at how css parameter is mapped to RRC. It is mapped to pdcch-ConfigCommon in SIB1. css parameter (object) has many child paramters in it, but by default we usually specify agrregation level with the parameter n_candidates. n_candidates is mapped to nrofCandiates IE and each of the elements in n_candidates array maps to each elements of nrofCandidates IE.
Another important thing worth paying attention to are searchSpaceOtherSystempInformation, pagingSearchSpace and ra-SearchSpace in RRC. In the configuration file of this test, I haven't specified these value. In this case, those IEs uses the seachSpaceID specified in commonSearchSpaceList.
Now you can confirm that PDCCH for RAR uses ss_id configured in ra-SearchSpace IE in SIB. (
Now let's take a look at how dedicated coreset and uss are configured and how they are mapped to RRC. High level mappings are as follows :
- rb_start and l_crb in configuration file are mapped to frequencyDomainResources in controlResourceSetToAddModList (
NOTE : 6 consecutive RBs corresponds to single bit '1' in frequencyDomainResources) - duration in configuration file maps to duration in controlResourceSetToAddModList
- precoder_granularity in configuration file maps to precoderGranularity in controlResourceSetToAddModList
This shows a long sequence of transactions in a single shot showing which search space is used by each transaction. Just try to get familiar with the mapping and search space selection logic.
Test 2 : Multiple Dedicated Coreset / Multiple Search Space - Explicit Configurations : Assigning both css and uss
The purpose of this Sub Test is basically similar to previous test. Main difference is that I configured multiple dedicated and common coresents and search space. In this case, gNB can have more choices to select different search spaces depending on situations
Just as high level descriptions :
- css maps to pdcch-ComfigCommon in SIB1
- uss maps to pdcch-Config in RRC Setup or RRC Reconfiguration
- n_candiates maps to nrofCanadiates in searchSpacesToAddModList
- You can explicitely specify which aggregation level(AL) should be used for which specific transactions in protocol sequence (e.g, rar_al_index for RAR, si_al_index for SIBs(Other SIBs), al_index for other general user traffcis etc)
I have used gnb-sa-coreset-ss-test2.cfg which is copied and modified from gnb-sa-coreset-ss-test1-subtest3.cfg
In previous test, we used coreset 0 for all the css, but you can add another coresets for css as shown here. common_coreset is configured in pdcch-ConfigCommon.commonControlResourceSet IE.
You can also configure multiple dedicated coresets. These dedicated_coreset is populated into pdcch-Config.controlResourceSetToAddModList in RRC Setup message.
css configuration is same as in previous test and it is mapped to pdcch-ConfigCommon.commonSearchSpaceList in SIB1.
You can also configure multiple uss and these uss are populated into RRC Setup message.
Then perform the test and look into the logs.
Frist let's take a look at how css parameter is mapped to RRC. It is mapped to pdcch-ConfigCommon in SIB1. css parameter (object) has many child paramters in it, but by default we usually specify agrregation level with the parameter n_candidates. n_candidates is mapped to nrofCandiates IE and each of the elements in n_candidates array maps to each elements of nrofCandidates IE.
Another important thing worth paying attention to are searchSpaceOtherSystempInformation, pagingSearchSpace and ra-SearchSpace in RRC. In the configuration file of this test, I haven't specified these value. In this case, those IEs uses the seachSpaceID specified in commonSearchSpaceList.
Now you can confirm that PDCCH for RAR uses ss_id configured in ra-SearchSpace IE in SIB. (
Now let's take a look at how dedicated coreset and uss are configured and how they are mapped to RRC. High level mappings are as follows :
- rb_start and l_crb in configuration file are mapped to frequencyDomainResources in controlResourceSetToAddModList (
NOTE : 6 consecutive RBs corresponds to single bit '1' in frequencyDomainResources) - duration in configuration file maps to duration in controlResourceSetToAddModList
- precoder_granularity in configuration file maps to precoderGranularity in controlResourceSetToAddModList
- The main point in this log is to show that multiple coreset and search spaces are configured.
You see that the PDCCH for RRC Setup message is still using the css configured by ra-SearchSpace because this message carries PHY configurations.
This shows a long sequence of transactions in a single shot showing which search space is used by each transaction. Just try to get familiar with the mapping and search space selection logic.
RRC / NAS Signaling
SIB1 (SA)
: This is the SIB1 message sent by gNB to configure NR SA. (
{
message c1: systemInformationBlockType1: {
cellSelectionInfo {
q-RxLevMin -70,
q-QualMin -20
},
cellAccessRelatedInfo {
plmn-IdentityInfoList {
{
plmn-IdentityList {
{
mcc {
0,
0,
1
},
mnc {
0,
1
}
}
},
trackingAreaCode '000064'H,
cellIdentity '001234501'H,
cellReservedForOperatorUse notReserved
}
}
},
servingCellConfigCommon {
downlinkConfigCommon {
frequencyInfoDL {
frequencyBandList {
{
freqBandIndicatorNR 78
}
},
offsetToPointA 30,
scs-SpecificCarrierList {
{
offsetToCarrier 0,
subcarrierSpacing kHz30,
carrierBandwidth 106
}
}
},
initialDownlinkBWP {
genericParameters {
locationAndBandwidth 28875,
subcarrierSpacing kHz30
},
pdcch-ConfigCommon setup: {
commonControlResourceSet {
controlResourceSetId 1,
frequencyDomainResources '011111110000000000000000000000000000000000000'B,
duration 2,
cce-REG-MappingType nonInterleaved: NULL,
precoderGranularity sameAsREG-bundle
},
commonSearchSpaceList {
{
searchSpaceId 1,
controlResourceSetId 1,
monitoringSlotPeriodicityAndOffset sl1: NULL,
monitoringSymbolsWithinSlot '10000000000000'B,
nrofCandidates {
aggregationLevel1 n0,
aggregationLevel2 n0,
aggregationLevel4 n4,
aggregationLevel8 n0,
aggregationLevel16 n0
},
searchSpaceType common: {
dci-Format0-0-AndFormat1-0 {
}
}
}
},
searchSpaceSIB1 0,
searchSpaceOtherSystemInformation 1,
pagingSearchSpace 1,
ra-SearchSpace 1
},
pdsch-ConfigCommon setup: {
pdsch-TimeDomainAllocationList {
{
mappingType typeA,
startSymbolAndLength 53
},
{
mappingType typeA,
startSymbolAndLength 44
}
}
}
},
bcch-Config {
modificationPeriodCoeff n4
},
pcch-Config {
defaultPagingCycle rf128,
nAndPagingFrameOffset oneT: NULL,
ns one
}
},
uplinkConfigCommon {
frequencyInfoUL {
scs-SpecificCarrierList {
{
offsetToCarrier 0,
subcarrierSpacing kHz30,
carrierBandwidth 106
}
}
},
initialUplinkBWP {
genericParameters {
locationAndBandwidth 28875,
subcarrierSpacing kHz30
},
rach-ConfigCommon setup: {
rach-ConfigGeneric {
prach-ConfigurationIndex 160,
msg1-FDM one,
msg1-FrequencyStart 7,
zeroCorrelationZoneConfig 15,
preambleReceivedTargetPower -110,
preambleTransMax n7,
powerRampingStep dB4,
ra-ResponseWindow sl20
},
ssb-perRACH-OccasionAndCB-PreamblesPerSSB one: n8,
ra-ContentionResolutionTimer sf64,
prach-RootSequenceIndex l139: 1,
msg1-SubcarrierSpacing kHz30,
restrictedSetConfig unrestrictedSet
},
pusch-ConfigCommon setup: {
pusch-TimeDomainAllocationList {
{
k2 7,
mappingType typeA,
startSymbolAndLength 27
},
{
k2 4,
mappingType typeA,
startSymbolAndLength 27
},
{
k2 2,
mappingType typeA,
startSymbolAndLength 27
}
},
p0-NominalWithGrant -84
},
pucch-ConfigCommon setup: {
pucch-ResourceCommon 11,
pucch-GroupHopping neither,
p0-nominal -96
}
},
timeAlignmentTimerCommon infinity
},
ssb-PositionsInBurst {
inOneGroup '80'H
},
ssb-PeriodicityServingCell ms20,
tdd-UL-DL-ConfigurationCommon {
referenceSubcarrierSpacing kHz30,
pattern1 {
dl-UL-TransmissionPeriodicity ms5,
nrofDownlinkSlots 7,
nrofDownlinkSymbols 6,
nrofUplinkSlots 2,
nrofUplinkSymbols 4
}
},
ss-PBCH-BlockPower -40
},
ue-TimersAndConstants {
t300 ms1000,
t301 ms1000,
t310 ms1000,
n310 n1,
t311 ms30000,
n311 n1,
t319 ms1000
}
}
}
RRC Setup (SA)
: This is the RRC Setup message sent by gNB to configure NR SA. (
{
message c1: rrcSetup: {
rrc-TransactionIdentifier 0,
criticalExtensions rrcSetup: {
radioBearerConfig {
srb-ToAddModList {
{
srb-Identity 1
}
}
},
masterCellGroup {
cellGroupId 0,
rlc-BearerToAddModList {
{
logicalChannelIdentity 1,
servedRadioBearer srb-Identity: 1,
mac-LogicalChannelConfig {
ul-SpecificParameters {
priority 1,
prioritisedBitRate infinity,
bucketSizeDuration ms5,
logicalChannelGroup 0,
schedulingRequestID 0,
logicalChannelSR-Mask FALSE,
logicalChannelSR-DelayTimerApplied FALSE
}
}
}
},
mac-CellGroupConfig {
schedulingRequestConfig {
schedulingRequestToAddModList {
{
schedulingRequestId 0,
sr-TransMax n64
}
}
},
bsr-Config {
periodicBSR-Timer sf20,
retxBSR-Timer sf320
},
tag-Config {
tag-ToAddModList {
{
tag-Id 0,
timeAlignmentTimer infinity
}
}
},
phr-Config setup: {
phr-PeriodicTimer sf500,
phr-ProhibitTimer sf200,
phr-Tx-PowerFactorChange dB3,
multiplePHR FALSE,
dummy FALSE,
phr-Type2OtherCell FALSE,
phr-ModeOtherCG real
},
skipUplinkTxDynamic FALSE
},
physicalCellGroupConfig {
pdsch-HARQ-ACK-Codebook dynamic
},
spCellConfig {
spCellConfigDedicated {
initialDownlinkBWP {
pdcch-Config setup: {
controlResourceSetToAddModList {
{
controlResourceSetId 3,
frequencyDomainResources '111111110000000000000000000000000000000000000'B,
duration 1,
cce-REG-MappingType nonInterleaved: NULL,
precoderGranularity sameAsREG-bundle
},
{
controlResourceSetId 4,
frequencyDomainResources '000011110000000000000000000000000000000000000'B,
duration 1,
cce-REG-MappingType nonInterleaved: NULL,
precoderGranularity sameAsREG-bundle
}
},
searchSpacesToAddModList {
{
searchSpaceId 2,
controlResourceSetId 3,
monitoringSlotPeriodicityAndOffset sl1: NULL,
monitoringSymbolsWithinSlot '10000000000000'B,
nrofCandidates {
aggregationLevel1 n0,
aggregationLevel2 n4,
aggregationLevel4 n2,
aggregationLevel8 n1,
aggregationLevel16 n0
},
searchSpaceType ue-Specific: {
dci-Formats formats0-1-And-1-1
}
},
{
searchSpaceId 3,
controlResourceSetId 4,
monitoringSlotPeriodicityAndOffset sl1: NULL,
monitoringSymbolsWithinSlot '10000000000000'B,
nrofCandidates {
aggregationLevel1 n0,
aggregationLevel2 n4,
aggregationLevel4 n2,
aggregationLevel8 n1,
aggregationLevel16 n0
},
searchSpaceType ue-Specific: {
dci-Formats formats0-1-And-1-1
}
}
}
},
pdsch-Config setup: {
dmrs-DownlinkForPDSCH-MappingTypeA setup: {
dmrs-AdditionalPosition pos1
},
tci-StatesToAddModList {
{
tci-StateId 0,
qcl-Type1 {
referenceSignal ssb: 0,
qcl-Type typeD
}
}
},
resourceAllocation resourceAllocationType1,
rbg-Size config1,
prb-BundlingType staticBundling: {
bundleSize wideband
},
zp-CSI-RS-ResourceToAddModList {
{
zp-CSI-RS-ResourceId 0,
resourceMapping {
frequencyDomainAllocation row4: '100'B,
nrofPorts p4,
firstOFDMSymbolInTimeDomain 4,
cdm-Type fd-CDM2,
density one: NULL,
freqBand {
startingRB 0,
nrofRBs 108
}
},
periodicityAndOffset slots80: 1
}
},
p-ZP-CSI-RS-ResourceSet setup: {
zp-CSI-RS-ResourceSetId 0,
zp-CSI-RS-ResourceIdList {
0
}
}
}
},
firstActiveDownlinkBWP-Id 0,
uplinkConfig {
initialUplinkBWP {
pucch-Config setup: {
resourceSetToAddModList {
{
pucch-ResourceSetId 0,
resourceList {
0,
1,
2,
3,
4,
5,
6,
7
}
},
{
pucch-ResourceSetId 1,
resourceList {
8,
9,
10,
11
}
}
},
resourceToAddModList {
{
pucch-ResourceId 0,
startingPRB 105,
intraSlotFrequencyHopping enabled,
secondHopPRB 0,
format format1: {
initialCyclicShift 1,
nrofSymbols 14,
startingSymbolIndex 0,
timeDomainOCC 0
}
},
{
pucch-ResourceId 1,
startingPRB 105,
intraSlotFrequencyHopping enabled,
secondHopPRB 0,
format format1: {
initialCyclicShift 5,
nrofSymbols 14,
startingSymbolIndex 0,
timeDomainOCC 0
}
},
{
pucch-ResourceId 2,
startingPRB 105,
intraSlotFrequencyHopping enabled,
secondHopPRB 0,
format format1: {
initialCyclicShift 9,
nrofSymbols 14,
startingSymbolIndex 0,
timeDomainOCC 0
}
},
{
pucch-ResourceId 3,
startingPRB 105,
intraSlotFrequencyHopping enabled,
secondHopPRB 0,
format format1: {
initialCyclicShift 1,
nrofSymbols 14,
startingSymbolIndex 0,
timeDomainOCC 1
}
},
{
pucch-ResourceId 4,
startingPRB 105,
intraSlotFrequencyHopping enabled,
secondHopPRB 0,
format format1: {
initialCyclicShift 5,
nrofSymbols 14,
startingSymbolIndex 0,
timeDomainOCC 1
}
},
{
pucch-ResourceId 5,
startingPRB 105,
intraSlotFrequencyHopping enabled,
secondHopPRB 0,
format format1: {
initialCyclicShift 9,
nrofSymbols 14,
startingSymbolIndex 0,
timeDomainOCC 1
}
},
{
pucch-ResourceId 6,
startingPRB 105,
intraSlotFrequencyHopping enabled,
secondHopPRB 0,
format format1: {
initialCyclicShift 1,
nrofSymbols 14,
startingSymbolIndex 0,
timeDomainOCC 2
}
},
{
pucch-ResourceId 7,
startingPRB 105,
intraSlotFrequencyHopping enabled,
secondHopPRB 0,
format format1: {
initialCyclicShift 5,
nrofSymbols 14,
startingSymbolIndex 0,
timeDomainOCC 2
}
},
{
pucch-ResourceId 8,
startingPRB 1,
intraSlotFrequencyHopping enabled,
secondHopPRB 104,
format format2: {
nrofPRBs 1,
nrofSymbols 2,
startingSymbolIndex 0
}
},
{
pucch-ResourceId 9,
startingPRB 1,
intraSlotFrequencyHopping enabled,
secondHopPRB 104,
format format2: {
nrofPRBs 1,
nrofSymbols 2,
startingSymbolIndex 2
}
},
{
pucch-ResourceId 10,
startingPRB 1,
intraSlotFrequencyHopping enabled,
secondHopPRB 104,
format format2: {
nrofPRBs 1,
nrofSymbols 2,
startingSymbolIndex 4
}
},
{
pucch-ResourceId 11,
startingPRB 1,
intraSlotFrequencyHopping enabled,
secondHopPRB 104,
format format2: {
nrofPRBs 1,
nrofSymbols 2,
startingSymbolIndex 6
}
},
{
pucch-ResourceId 12,
startingPRB 105,
intraSlotFrequencyHopping enabled,
secondHopPRB 0,
format format1: {
initialCyclicShift 9,
nrofSymbols 14,
startingSymbolIndex 0,
timeDomainOCC 2
}
},
{
pucch-ResourceId 13,
startingPRB 1,
intraSlotFrequencyHopping enabled,
secondHopPRB 104,
format format2: {
nrofPRBs 1,
nrofSymbols 2,
startingSymbolIndex 8
}
}
},
format1 setup: {
},
format2 setup: {
maxCodeRate zeroDot25
},
schedulingRequestResourceToAddModList {
{
schedulingRequestResourceId 1,
schedulingRequestID 0,
periodicityAndOffset sl40: 8,
resource 12
}
},
dl-DataToUL-ACK {
8,
7,
6,
5,
4,
12,
11
}
},
pusch-Config setup: {
txConfig codebook,
dmrs-UplinkForPUSCH-MappingTypeA setup: {
dmrs-AdditionalPosition pos1,
transformPrecodingDisabled {
}
},
pusch-PowerControl {
msg3-Alpha alpha1,
p0-AlphaSets {
{
p0-PUSCH-AlphaSetId 0,
p0 0,
alpha alpha1
}
},
pathlossReferenceRSToAddModList {
{
pusch-PathlossReferenceRS-Id 0,
referenceSignal ssb-Index: 0
}
},
sri-PUSCH-MappingToAddModList {
{
sri-PUSCH-PowerControlId 0,
sri-PUSCH-PathlossReferenceRS-Id 0,
sri-P0-PUSCH-AlphaSetId 0,
sri-PUSCH-ClosedLoopIndex i0
}
}
},
resourceAllocation resourceAllocationType1,
codebookSubset nonCoherent,
maxRank 1,
uci-OnPUSCH setup: {
betaOffsets semiStatic: {
betaOffsetACK-Index1 9,
betaOffsetACK-Index2 9,
betaOffsetACK-Index3 9,
betaOffsetCSI-Part1-Index1 7,
betaOffsetCSI-Part1-Index2 7,
betaOffsetCSI-Part2-Index1 7,
betaOffsetCSI-Part2-Index2 7
},
scaling f1
}
},
srs-Config setup: {
srs-ResourceSetToAddModList {
{
srs-ResourceSetId 0,
srs-ResourceIdList {
0
},
resourceType aperiodic: {
aperiodicSRS-ResourceTrigger 1,
slotOffset 7
},
usage codebook,
p0 -84,
pathlossReferenceRS ssb-Index: 0
}
},
srs-ResourceToAddModList {
{
srs-ResourceId 0,
nrofSRS-Ports port1,
transmissionComb n2: {
combOffset-n2 0,
cyclicShift-n2 0
},
resourceMapping {
startPosition 0,
nrofSymbols n1,
repetitionFactor n1
},
freqDomainPosition 0,
freqDomainShift 9,
freqHopping {
c-SRS 22,
b-SRS 3,
b-hop 0
},
groupOrSequenceHopping neither,
resourceType aperiodic: {
},
sequenceId 500
}
}
}
},
firstActiveUplinkBWP-Id 0,
pusch-ServingCellConfig setup: {
}
},
pdcch-ServingCellConfig setup: {
},
pdsch-ServingCellConfig setup: {
nrofHARQ-ProcessesForPDSCH n16
},
csi-MeasConfig setup: {
nzp-CSI-RS-ResourceToAddModList {
{
nzp-CSI-RS-ResourceId 0,
resourceMapping {
frequencyDomainAllocation row2: '100'H,
nrofPorts p1,
firstOFDMSymbolInTimeDomain 3,
cdm-Type noCDM,
density one: NULL,
freqBand {
startingRB 0,
nrofRBs 108
}
},
powerControlOffset 0,
scramblingID 500,
periodicityAndOffset slots80: 1,
qcl-InfoPeriodicCSI-RS 0
},
{
nzp-CSI-RS-ResourceId 1,
resourceMapping {
frequencyDomainAllocation row1: '4'H,
nrofPorts p1,
firstOFDMSymbolInTimeDomain 5,
cdm-Type noCDM,
density three: NULL,
freqBand {
startingRB 0,
nrofRBs 108
}
},
powerControlOffset 0,
scramblingID 500,
periodicityAndOffset slots80: 1,
qcl-InfoPeriodicCSI-RS 0
},
{
nzp-CSI-RS-ResourceId 2,
resourceMapping {
frequencyDomainAllocation row1: '4'H,
nrofPorts p1,
firstOFDMSymbolInTimeDomain 9,
cdm-Type noCDM,
density three: NULL,
freqBand {
startingRB 0,
nrofRBs 108
}
},
powerControlOffset 0,
scramblingID 500,
periodicityAndOffset slots80: 1,
qcl-InfoPeriodicCSI-RS 0
},
{
nzp-CSI-RS-ResourceId 3,
resourceMapping {
frequencyDomainAllocation row1: '4'H,
nrofPorts p1,
firstOFDMSymbolInTimeDomain 5,
cdm-Type noCDM,
density three: NULL,
freqBand {
startingRB 0,
nrofRBs 108
}
},
powerControlOffset 0,
scramblingID 500,
periodicityAndOffset slots80: 2,
qcl-InfoPeriodicCSI-RS 0
},
{
nzp-CSI-RS-ResourceId 4,
resourceMapping {
frequencyDomainAllocation row1: '4'H,
nrofPorts p1,
firstOFDMSymbolInTimeDomain 9,
cdm-Type noCDM,
density three: NULL,
freqBand {
startingRB 0,
nrofRBs 108
}
},
powerControlOffset 0,
scramblingID 500,
periodicityAndOffset slots80: 2,
qcl-InfoPeriodicCSI-RS 0
}
},
nzp-CSI-RS-ResourceSetToAddModList {
{
nzp-CSI-ResourceSetId 0,
nzp-CSI-RS-Resources {
0
}
},
{
nzp-CSI-ResourceSetId 1,
nzp-CSI-RS-Resources {
1,
2,
3,
4
},
trs-Info true
}
},
csi-IM-ResourceToAddModList {
{
csi-IM-ResourceId 0,
csi-IM-ResourceElementPattern pattern1: {
subcarrierLocation-p1 s8,
symbolLocation-p1 4
},
freqBand {
startingRB 0,
nrofRBs 108
},
periodicityAndOffset slots80: 1
}
},
csi-IM-ResourceSetToAddModList {
{
csi-IM-ResourceSetId 0,
csi-IM-Resources {
0
}
}
},
csi-ResourceConfigToAddModList {
{
csi-ResourceConfigId 0,
csi-RS-ResourceSetList nzp-CSI-RS-SSB: {
nzp-CSI-RS-ResourceSetList {
0
}
},
bwp-Id 0,
resourceType periodic
},
{
csi-ResourceConfigId 1,
csi-RS-ResourceSetList csi-IM-ResourceSetList: {
0
},
bwp-Id 0,
resourceType periodic
},
{
csi-ResourceConfigId 2,
csi-RS-ResourceSetList nzp-CSI-RS-SSB: {
nzp-CSI-RS-ResourceSetList {
1
}
},
bwp-Id 0,
resourceType periodic
}
},
csi-ReportConfigToAddModList {
{
reportConfigId 0,
resourcesForChannelMeasurement 0,
csi-IM-ResourcesForInterference 1,
reportConfigType periodic: {
reportSlotConfig slots80: 9,
pucch-CSI-ResourceList {
{
uplinkBandwidthPartId 0,
pucch-Resource 13
}
}
},
reportQuantity cri-RI-PMI-CQI: NULL,
reportFreqConfiguration {
cqi-FormatIndicator widebandCQI,
pmi-FormatIndicator widebandPMI
},
timeRestrictionForChannelMeasurements notConfigured,
timeRestrictionForInterferenceMeasurements notConfigured,
groupBasedBeamReporting disabled: {
},
cqi-Table table2,
subbandSize value1
}
}
},
tag-Id 0
}
}
}
}
}
}