LTE - Aperiodic CSI
The purpose of this tutorial is to show you how to configure Aperiodic CQI report in LTE for single carrier and multi carrier environment. When mutiple carriers are being used (especially the number of component carrier is large), to perform the measurement and report for every cell at every reporting occasion can be a big overhead. Aperiodic trigger is a mechanism by which you can select a specific cells to make the report. eNB can define a table with multiple rows in which a specific combination of component carriers for the report are defined in the form of a bitmap. Each of the rows in the table is called 'trigger' in RRC message. Once this trigger is configured, eNB can select a specific trigger when it sends DCI to request aperiodic report.
Overall procedure / mechanism for Aperiodic CSI report can be summarized as follows :
Step 1 : eNB configures the requirement (e.g, type of report item (CQI, PMI, RI) and the list of cells to report)for the report in RRC message
Step 2 : eNB triggers the report using DCI 0 when it wants the report (in DCI, eNB configurethe field 'csi_request' to tell UE to perform the report as specified in RRC message)
Step 3 : UE perform the measurement and send the report via PUSCH
Table of Contents
- LTE - Aperiodic CSI
- Introduction
- Summary of the Tutorial
- Test Setup
- Key Configuration Parameters
- Test 1 : 1 CC
- Test 2: 2CC CA - with Aperiodic CQI
- Configuration
- Perform the Test
- Log Analysis
- Sub Test 1 : 2 Trigger - Same
- Sub Test 2: 2 Trigger - Different
- Test 3: 6CC CA - with Aperiodic CQI
- Configuration
- Perform the Test
- Log Analysis
- Sub Test 1 : 6Trigger - 2 CCs per Trigger
- Sub Test 2: 6 Trigger - Arbitrary CCs per Trigger
- RRC / NAS Signaling
- FAQ
Introduction
Aperiodic Channel Quality Indicator (CQI) reporting is a critical feature within the Long Term Evolution (LTE) radio access network, designed to optimize the efficiency and accuracy of link adaptation in both single carrier and carrier aggregation (multi-carrier) environments. In LTE, CQI reports enable the evolved NodeB (eNB) to obtain real-time feedback on the downlink channel conditions from the User Equipment (UE), facilitating dynamic selection of modulation and coding schemes. While periodic CQI reporting provides regular channel state information, aperiodic CQI reporting is initiated by the eNB only when necessary, allowing targeted and flexible measurements that significantly reduce signaling overhead, especially when multiple component carriers are employed. In scenarios involving extensive carrier aggregation, the overhead of simultaneous reporting across all cells can be substantial. To address this, the aperiodic trigger mechanism allows the eNB to configure and select specific subsets of component carriers for reporting, utilizing bitmap-defined trigger tables within the Radio Resource Control (RRC) signaling. Each row in this table, referred to as a 'trigger,' specifies a unique combination of carriers for which the UE should report CQI, Precoding Matrix Indicator (PMI), and Rank Indicator (RI). The eNB, through Downlink Control Information (DCI), signals the UE to generate an aperiodic report based on a selected trigger, thereby achieving granular control over measurement and reporting activities. This mechanism not only streamlines resource utilization but also enhances throughput and reliability in complex carrier aggregation scenarios, playing a pivotal role in the LTE ecosystem's support for high-capacity, high-throughput communication.
-
Context of Aperiodic CQI Reporting in LTE
- Technology Overview: LTE employs link adaptation techniques based on real-time channel feedback, with CQI reporting being key for optimal downlink scheduling.
- Single vs. Multi-Carrier Environments: With carrier aggregation, multiple component carriers are managed simultaneously, increasing complexity in channel state reporting.
- Aperiodic Reporting: Unlike periodic reporting, aperiodic CQI reporting is triggered by the eNB as needed, reducing unnecessary signaling and allowing focused measurements.
-
Relevance and Importance of the Tutorial
- Significance in Network Optimization: Proper configuration of aperiodic CQI reporting is essential for efficient spectrum utilization and maintaining high data throughput, particularly in environments with extensive carrier aggregation.
- Resource Efficiency: The aperiodic trigger mechanism minimizes reporting overhead, preserving uplink resources, and enabling scalable performance as the number of component carriers grows.
- Critical for Advanced LTE Deployments: Mastery of aperiodic CQI configuration supports advanced features in LTE-Advanced and is foundational for transitioning to 5G NR.
-
Learning Outcomes
- Understand the architectural flow of aperiodic CQI reporting in LTE, including interactions between eNB and UE.
- Gain hands-on experience configuring aperiodic CQI triggers for both single and multi-carrier scenarios using RRC signaling.
- Learn how to interpret and apply DCI messages to selectively trigger aperiodic CQI reports.
- Acquire troubleshooting skills for common issues in CQI reporting configuration and operation.
-
Prerequisite Knowledge and Skills
- Familiarity with LTE architecture, including the roles of eNB and UE.
- Understanding of LTE physical layer concepts such as CQI, PMI, RI, and carrier aggregation.
- Basic knowledge of RRC signaling and DCI formats in LTE specifications.
- Experience with radio network configuration and analysis tools is beneficial but not mandatory.
Summary of the Tutorial
This tutorial outlines procedures for testing LTE Carrier Aggregation (CA) and Aperiodic Channel Quality Indicator (CQI) reporting using Amarisoft eNB and multiple SDR cards. The document describes several test scenarios with varying configurations of component carriers (CC), focusing on enabling and verifying aperiodic CQI reports across different CA setups.
-
Test 1: 1 CC – Aperiodic CQI Reporting
- Configure the system with a single LTE cell, using the enb_1cc_ap_cqi.cfg without modifications and mme-ims.cfg as is.
- Set up only one SDR card with an antenna.
- Periodic CSI report is disabled (set cqi_period and m_ri to 0); enable aperiodic CSI report via ap_cqi_period and ap_cqi_rm.
- Verify cell configuration using 'cell phy' and 'cell' commands.
- Check logs for proper CQI report settings in the RRC Connection Reconfiguration message.
- Identify DCI 0 with csi_request set to a non-zero value, ensuring UE sends PUSCH with aperiodic CQI report as configured.
-
Test 2: 2CC CA – Aperiodic CQI with Multiple Triggers
- Configure two LTE FDD cells for carrier aggregation, using enb-2cc-ap-cqi-trigger.cfg (modified from enb-2cc.cfg).
- Each cell’s scell_list includes the other as an SCC.
- Enable aperiodic CSI reporting; periodic CSI is disabled by omitting cqi_period and m_ri.
- Verify cell setup with 'cell phy' and 'cell' commands.
- Analyze logs for aperiodic trigger configuration in RRC, including trigger interpretation from aperiodicCSI-Trigger IE.
- Check establishment of carrier aggregation and that PUSCH transmissions contain requested CSI reports per DCI 0 triggers.
-
Sub Test 1: 2 Triggers – Same Configuration
- Configure two triggers with identical settings using ap_cqi_trigger_list.
- Confirm correct trigger application through log analysis, ensuring PUSCH reporting matches trigger requests.
-
Sub Test 2: 2 Triggers – Different Configuration
- Set two triggers with different configurations in ap_cqi_trigger_list.
- Verify through logs that each DCI 0 uses the appropriate trigger and that UE responds with correct CSI reports.
-
Test 3: 6CC CA – Aperiodic CQI with Advanced Triggering
- Configure six LTE FDD cells using enb-6cc-ap-cqi.cfg (derived from gnb-nsa.cfg), ensuring all six SDR cards are connected and configured.
- Each cell’s scell_list includes all other cells for full CA.
- Enable aperiodic CSI reporting by setting ap_cqi_period and ap_cqi_rm, leaving ap_cqi_trigger_list at defaults unless otherwise specified.
- Verify all six cells are correctly configured using 'cell phy' and 'cell' commands.
- Analyze logs for correct aperiodic trigger settings in RRC, and observe round-robin trigger use in DCI 0 scheduling (only triggers with non-all-zero values are used).
-
Sub Test 1: 6 Triggers – 2 CCs per Trigger
- Use enb-6cc-ap-cqi_trigger_2perTrigger.cfg to configure six triggers, each activating two component carriers.
- Confirm via logs that triggers are utilized in round-robin fashion and that the UE sends CSI reports as required by each DCI 0 trigger.
-
Sub Test 2: 6 Triggers – Arbitrary CCs per Trigger
- Use enb-6cc-ap-cqi_trigger_arbTrigger.cfg to define six triggers, each with a different number of enabled component carriers.
- Verify correct mapping and utilization of triggers in DCI 0 and monitor that the CSI reporting by UE aligns with each trigger configuration.
General Log Analysis and Verification Steps:
- Convert trigger values in aperiodicCSI-Trigger IE from hex to binary to determine exact trigger settings for each component carrier.
- Ensure correct establishment of carrier aggregation by inspecting sCellToAddModList in RRC messages.
- Match DCI 0 csi_request values with the expected triggers and verify that PUSCH transmissions from the UE contain the requested CQI/RI reports.
- Interpret ap_cqi_trigger_list configuration and its RRC mapping as described in the tutorial FAQ.
Summary: The tutorial provides clear methodologies for configuring and verifying aperiodic CQI reporting in single and multi-carrier LTE deployments, with step-by-step procedures for system setup, configuration, test execution, and log analysis. Special attention is paid to the translation of configuration parameters to RRC signaling and the correct operation of multiple triggers in carrier aggregation scenarios.
Test Setup
Test setup for this tutorial is as shown below. In this setup, it shows 4 SDR cards are connected with Antenna but not all the test in this tuturial requires the 4 sdr cards. You only have to connect antenna to the number of sdr cards that you need for each test.

Key Configuration Parameters
Followings are important configuration parameters for this tutorial. You may click on the items for the descriptions from Amarisoft documents.
- scell_list: In this link, you will get the descriptions for all the items listed below.
- cell_id
- cross_carrier_scheduling
- scheduling_cell_id
- ul_allowed
- rrc_configuration
- individual_offset
- ap_cqi_period
- ap_cqi_trigger_list
- ap_cqi_rm
- ap_cqi_rm_opt
Test 1 : 1 CC
This test configures 1 LTE Cell with the configuration of Aperiodic CQI Report
Configuration
In this test, I used enb_1cc_ap_cqi.cfg without modification.

I used the mme-ims.cfg config as it is.

The configuration in enb_1cc_ap_cqi.cfg is as shown below.
Only one LTE cell is included in cell_list, so no carrier-aggregation-specific configuration is required in this section. Configure the PLMN, operating mode, frequency, LTE band, cell identity, TAC, and PRACH root sequence according to the DUT and test environment.
The example selects either Band 41 for TDD operation or Band 7 for FDD operation through the conditional configuration. The cell is configured with n_id_cell set to 1, cell_id set to 0x01, tac set to 0x0001, and root_sequence_index set to 204.

In cell_default, periodic CSI reporting is disabled by setting cqi_period and m_ri to 0. This ensures that the UE does not transmit CSI reports at regularly configured intervals.
Aperiodic CSI reporting is enabled by configuring ap_cqi_period and ap_cqi_rm. In this example, ap_cqi_period is set to 40 ms, which controls how frequently the eNB may trigger the aperiodic report, and ap_cqi_rm is set to rm31, which specifies the requested CQI reporting mode. The UE sends the report only when it receives a corresponding CSI request through DCI.

Perform the Test
Before starting the test, verify the active LTE cell configuration using the cell phy and cell commands.
The cell phy output confirms the RF and PHY parameters, including Band 7 operation, 5 MHz bandwidth, DL EARFCN 3350, UL EARFCN 21350, two downlink antennas, two uplink antennas, 15 kHz subcarrier spacing, and the configured modulation limits.
The cell output confirms the main cell identity parameters, including cell ID 0x001, TAC 0x0001, PCI 1, PRACH root sequence index 204, and PLMN 00101. Check that these values match the intended test configuration before connecting the UE.

Run the t command to monitor the UE trace after connection. The cc column identifies the CSI request value included in the uplink scheduling grant. When cc is shown as 2, the eNB has triggered the configured aperiodic CSI report, and the UE returns the requested CQI and RI information on PUSCH.
The trace output is sampled or averaged, so the cc value may not be visible in every displayed line. In particular, cc=1 may not always appear. The test can be considered successful as long as cc=2 is observed, confirming that the aperiodic CSI request was issued and processed.

Log Analysis
Check the physicalConfigDedicated section of the RRC Connection Reconfiguration message to confirm the CSI reporting configuration delivered to the UE.
In cqi-ReportConfig-r10, cqi-ReportAperiodic-r10 is set to setup and cqi-ReportModeAperiodic-r10 is configured as rm31, confirming that aperiodic CSI reporting is enabled with reporting mode 3-1.
The cqi-ReportPeriodic-r10 field is set to release, confirming that periodic CSI reporting is disabled.

Find a DCI Format 0 message in which csi_request is set to a non-zero value. In this example, csi_request=1 instructs the UE to transmit an aperiodic CSI report for the configured serving cell.
The DCI also provides the uplink grant for the corresponding PUSCH transmission. The UE uses this PUSCH occasion to send the requested CSI information together with any scheduled uplink data. The meaning of the csi_request value depends on the CSI reporting configuration delivered through RRC. In this single-carrier test, the non-zero value selects the CSI report associated with the serving cell.

Verify the triggered aperiodic CSI report in the PUSCH message immediately following the DCI trigger.
The PUSCH trace includes the reported RI and CQI values. In this example, ri=0 represents rank 1, while the cqi bit string contains the CQI report generated according to aperiodic reporting mode rm31. The presence of RI and CQI in this scheduled PUSCH transmission confirms that the UE received the non-zero CSI request, performed the requested measurement, and returned the aperiodic CSI report.

Test 2: 2CC CA - with Aperiodic CQI
This test configures 2cells as follows.
- 2 LTE FDD Cells
It performs following procedure
Step 1 : Initial Attach to LTE
Step 2: Establish 2CC CA in LTE with Aperiodic CQI
Configuration
In this testI used the enb-2cc-ap-cqi-trigger.cfg which is copied and modified from enb-2cc.cfg


Followings are the configurations in enb-2cc-ap-cqi-trigger.cfg
Set CQI_CONFIG to 1 to enable aperiodic CSI reporting for the two-carrier test.
The remaining parameters define two LTE FDD cells with 5 MHz bandwidth and one downlink and one uplink antenna. CHANNEL_SIM is set to 0, so the internal channel simulator is disabled.
CQI_CONFIG values: 0: Enable periodic CQI reporting. 1: Enable aperiodic CQI reporting.

Two LTE cells are configured in cell_list for carrier aggregation. Each cell includes an scell_list that identifies the other cell as an available secondary component carrier.
This block defines the first cell with cell_id set to 0x01, PCI set to 1, TAC set to 0x0001, and PRACH root sequence index set to 204. The operating frequency is selected according to the configured duplex mode.
Within scell_list, the second cell with cell_id 0x02 is registered as an available SCell. cross_carrier_scheduling is set to false, so scheduling for this SCell is carried on its own PDCCH rather than through the other component carrier.

This block defines the second cell with cell_id set to 0x02, PCI set to 2, TAC set to 0x0001, and PRACH root sequence index set to 28. The downlink frequency is selected according to the configured duplex mode: Band 40 for TDD or Band 3 for FDD.
cell_barred is set to true, preventing the UE from selecting or initially attaching to this cell as a standalone serving cell. The cell is instead intended to operate as an SCell after carrier aggregation is established. Within scell_list, the first cell with cell_id 0x01 is registered as the available secondary cell. cross_carrier_scheduling is disabled, so each component carrier uses its own PDCCH for scheduling.

In cell_default, aperiodic CSI reporting is selected when CQI_CONFIG is set to 1. In this case, the periodic parameter cqi_period is not included, while ap_cqi_period is set to 40 ms and ap_cqi_rm is set to rm30.
The ap_cqi_period parameter controls how often the eNB scheduler may generate an aperiodic CSI request, while ap_cqi_rm defines the reporting mode used by the UE. The csi_trigger parameter is not explicitly configured, so the default trigger mapping is applied. With the default mapping, the first non-zero trigger requests CSI for all configured serving cells, while the remaining trigger values do not request CSI for any cell.

Perform the Test
Before starting the test, verify both LTE cells using the cell phy and cell commands.
The cell phy output confirms two 5 MHz FDD carriers. Cell 0x001 operates on Band 7 with DL EARFCN 3350 and UL EARFCN 21350, while cell 0x002 operates on Band 3 with DL EARFCN 1575 and UL EARFCN 19575. Both cells use one downlink antenna, one uplink antenna, and 15 kHz subcarrier spacing.
The cell output confirms the corresponding cell identities and radio parameters. Cell 0x001 uses PCI 1 and PRACH root sequence index 204, while cell 0x002 uses PCI 2 and PRACH root sequence index 28. Both cells use TAC 0x0001 and PLMN 00101. Verify that all values match the intended 2CC carrier-aggregation configuration before connecting the UE.

Run the t command and verify that carrier aggregation has been established. The cc column shows 2, indicating that the UE is operating with two component carriers.
Because the trace output is sampled or averaged, cc=1 may not always be displayed. The test can be considered successful as long as cc=2 is observed, confirming that the secondary cell has been added and 2CC carrier aggregation is active.

Log Analysis
Check the aperiodic CSI trigger configuration in the RRC Connection Reconfiguration message under cqi-ReportAperiodic-r10.
In this example, aperiodicCSI-Trigger-r10 contains:
trigger1-r10 = C0 hex = 11000000 binary
trigger2-r10 = 00 hex = 00000000 binary
Each bit represents whether the corresponding serving cell is included in that trigger. The two leading 1 bits in trigger1 indicate that CSI is requested for both configured component carriers. All bits in trigger2 are 0, so this trigger does not request CSI for any serving cell.
This matches the default trigger configuration: the first non-zero CSI request triggers aperiodic CSI reporting for both the PCell and SCell, while the other trigger value is unused.

Check the sCellToAddModList in the RRC Connection Reconfiguration message to confirm that the secondary cell is added for carrier aggregation.
In this example, sCellIndex-r10 is set to 1, physCellId-r10 is set to 2, and dl-CarrierFreq-r10 is set to 1575, identifying the Band 3 cell as the SCell. The message also provides the common and dedicated radio-resource configuration required for the UE to operate on the added carrier.
The ul-Configuration-r10 section includes cqi-ReportConfigSCell-r10 with cqi-ReportModeAperiodic-r10 set to rm30 and cqi-ReportPeriodicSCell-r10 set to release. This confirms that aperiodic CSI reporting is configured for the SCell while periodic CSI reporting remains disabled.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=2 corresponds to the binary value 10 and selects Trigger 1 from the aperiodic CSI trigger configuration provided through RRC.
Trigger 1 is configured to request CSI for both the PCell and the SCell. The DCI therefore instructs the UE to generate the configured aperiodic CSI reports for both component carriers and transmit them on the granted PUSCH resource.
The mapping between the csi_request field and the trigger number depends on the field size and configured RRC trigger table; therefore, the raw DCI value should be interpreted together with aperiodicCSI-Trigger-r10. (Check out this notet o figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission scheduled by the DCI carrying the non-zero csi_request.
The PUSCH trace contains the requested CSI fields, including ri and cqi. Since Trigger 1 was configured for both component carriers, the CQI bit sequence contains CSI information for the PCell and SCell in the configured reporting order.
The presence of the CSI fields in this PUSCH confirms that the UE received the aperiodic trigger and returned the requested reports for the aggregated serving cells.

Sub Test 1 : 2 Trigger - Same
In this sub test, I will show you an example of setting two triggers of same configuration.
In cell_default, periodic CSI reporting is disabled by omitting cqi_period and m_ri when CQI_CONFIG is set to 1. Aperiodic CSI reporting is enabled with ap_cqi_period set to 40 ms and ap_cqi_rm set to rm30.
The ap_cqi_trigger_list explicitly defines the serving cells associated with each trigger:
Trigger 1: [0, 1] requests CSI for both CC1 and CC2.
Trigger 2: [0, 1] also requests CSI for both CC1 and CC2.
Therefore, either non-zero trigger value causes the UE to report aperiodic CSI for both component carriers.

Check the aperiodic CSI trigger configuration in the RRC Connection Reconfiguration message under aperiodicCSI-Trigger-r10.
In this example:
trigger1-r10 = C0 hex = 11000000 binary
trigger2-r10 = C0 hex = 11000000 binary
The two leading 1 bits indicate that both CC1 and CC2 are included in each trigger. Therefore, Trigger 1 and Trigger 2 have the same user-defined configuration, and either trigger requests aperiodic CSI reporting for both component carriers.

Check sCellToAddModList-r10 in the RRC Connection Reconfiguration message to confirm that carrier aggregation is configured as intended.
The message adds an SCell with sCellIndex-r10 set to 1, physCellId-r10 set to 2, and dl-CarrierFreq-r10 set to 1575. These values identify the Band 3 cell as the secondary component carrier.
The message also includes the common and dedicated SCell radio-resource configuration. Under cqi-ReportConfigSCell-r10, cqi-ReportModeAperiodic-r10 is set to rm30 and cqi-ReportPeriodicSCell-r10 is released, confirming that the SCell uses aperiodic CSI reporting while periodic CSI reporting is disabled.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=2 corresponds to binary 10 and selects Trigger 1 from the aperiodic CSI trigger configuration.
Trigger 1 is configured to request CSI for both CC1 and CC2. The DCI therefore provides an uplink grant and instructs the UE to transmit the corresponding aperiodic CSI reports on PUSCH. (Check out this noteto figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission scheduled by the DCI carrying csi_request=2.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Because Trigger 1 is configured as [0, 1], the reported CSI covers both CC1 and CC2. The presence of these CSI fields confirms that the UE received Trigger 1 and transmitted the corresponding aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=3 corresponds to binary 11 and selects Trigger 2 from the aperiodic CSI trigger configuration.
Trigger 2 is configured with the same serving-cell selection as Trigger 1, so it requests CSI for both CC1 and CC2. The DCI therefore grants PUSCH resources and instructs the UE to transmit the corresponding aperiodic CSI reports for both component carriers.. (Check out this noteto figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission scheduled by the DCI carrying csi_request=3.
The PUSCH trace contains the requested CSI information in the ri and cqi fields. Since Trigger 2 is also configured as [0, 1], the report includes CSI for both CC1 and CC2. The presence of these CSI fields confirms that the UE received Trigger 2 and transmitted the corresponding aperiodic CSI report on PUSCH.

Sub Test 2: 2 Trigger - Different
In this sub test, I will show you an example of setting two triggers with different configuration for each trigger.
In cell_default, aperiodic CSI reporting is enabled by setting ap_cqi_period to 40 ms and ap_cqi_rm to rm30. Periodic CSI reporting is not configured when CQI_CONFIG is set to 1.
The ap_cqi_trigger_list defines a different serving-cell selection for each trigger:
Trigger 1: [0, 1] requests CSI for both CC1 and CC2.
Trigger 2: [1] requests CSI only for CC2.
This allows the eNB to request either a combined CSI report for both component carriers or a report only for the secondary component carrier, depending on the csi_request value transmitted in DCI.

Check the aperiodic CSI trigger configuration in the RRC Connection Reconfiguration message under aperiodicCSI-Trigger-r10.
In this example:
trigger1-r10 = C0 hex = 11000000 binary
trigger2-r10 = 40 hex = 01000000 binary
For Trigger 1, the two leading 1 bits indicate that both CC1 and CC2 are included in the CSI request. For Trigger 2, only the second bit is set, indicating that CSI is requested only for CC2.
This confirms that the two user-defined triggers have different serving-cell selections: Trigger 1 requests CSI for both component carriers, while Trigger 2 requests CSI only for the second component carrier.

Check sCellToAddModList-r10 in the RRC Connection Reconfiguration message to verify that the secondary component carrier is configured correctly.
The message adds an SCell with sCellIndex-r10 set to 1, physCellId-r10 set to 2, and dl-CarrierFreq-r10 set to 1575. These parameters identify the Band 3 cell as the SCell.
The message also provides the common and dedicated radio-resource configuration for the SCell. Under cqi-ReportConfigSCell-r10, cqi-ReportModeAperiodic-r10 is set to rm30, while cqi-ReportPeriodicSCell-r10 is released. This confirms that carrier aggregation is established with aperiodic CSI reporting enabled for the SCell and periodic CSI reporting disabled.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=2 corresponds to binary 10 and selects Trigger 1 from the RRC-configured aperiodic CSI trigger table.
Trigger 1 is configured as [0, 1], so the request applies to both CC1 and CC2. The DCI also provides the uplink grant on which the UE transmits the requested aperiodic CSI report. (Check out this noteto figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission scheduled by the DCI carrying csi_request=2.
The PUSCH trace contains the requested CSI information in the ri and cqi fields. Since Trigger 1 is configured as [0, 1], the report includes CSI for both CC1 and CC2. The presence of these fields confirms that the UE received Trigger 1 and transmitted the requested aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=3 corresponds to binary 11 and selects Trigger 2 from the RRC-configured aperiodic CSI trigger table.
Trigger 2 is configured as [1], so the request applies only to CC2. The DCI also provides the uplink grant on which the UE transmits the requested aperiodic CSI report. (Check out this noteto figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission scheduled by the DCI carrying csi_request=3.
The PUSCH trace contains the requested CSI information in the ri and cqi fields. Since Trigger 2 is configured as [1], this report contains CSI only for CC2. The shorter CQI bit sequence compared with Trigger 1 is consistent with reporting for only one component carrier. This confirms that the UE received Trigger 2 and transmitted the requested aperiodic CSI report for CC2 on PUSCH.

Test 3: 6CC CA - with Aperiodic CQI
This test configures 6cells as follows.
- 6 LTE FDD Cells
It performs following procedure
Step 1 : Initial Attach to LTE
Step 2: Establish 6CC CA in LTE with Aperiodic CQI
Configuration
In this testI used the enb-6cc-ap-cqi.cfg which is copied and modified from gnb-nsa.cfg


Followings are the configurations in enb-6cc-ap-cqi.cfg
In rf_driver, the args parameter maps each carrier to a separate SDR device, from dev0=/dev/sdr0 through dev5=/dev/sdr5. dev0 operates as the master device, while the remaining SDRs are synchronized with it. Verify that all six SDR devices are installed, detected, and correctly mapped before starting the test.

Six LTE cells are configured in cell_list for carrier aggregation. Each cell includes an scell_list that identifies the other cells as available secondary component carriers.
This block defines the first cell using rf_port 0, DL EARFCN 300, PCI 1, cell ID 0x01, TAC 0x0001, and PRACH root sequence index 120.
The scell_list registers cells 0x02 through 0x06 as candidate SCells for the first cell. cross_carrier_scheduling is set to false for each entry, so every component carrier uses its own PDCCH for scheduling rather than being scheduled through another carrier.

This block defines the second LTE cell using rf_port 1, DL EARFCN 1476, PCI 2, cell ID 0x02, TAC 0x0001, and PRACH root sequence index 28.
The scell_list registers cells 0x01 and 0x03 through 0x06 as candidate SCells. This allows the second cell to operate as the primary serving cell while any of the other five cells can be added as secondary component carriers.
cross_carrier_scheduling is set to false for every SCell, so each component carrier carries its own scheduling information on its own PDCCH.

This block defines the third LTE cell using rf_port 2, DL EARFCN 1674, PCI 3, cell ID 0x03, TAC 0x0001, and PRACH root sequence index 202.
The scell_list registers cells 0x01, 0x02, and 0x04 through 0x06 as candidate SCells. This allows the third cell to serve as the primary cell while the other five cells can be added as secondary component carriers.
cross_carrier_scheduling is set to false for every entry, so each component carrier carries its own scheduling information on its own PDCCH.

This block defines the fourth LTE cell using rf_port 3, DL EARFCN 3001, PCI 4, cell ID 0x04, TAC 0x0001, and PRACH root sequence index 156.
The scell_list registers cells 0x01, 0x02, 0x03, 0x05, and 0x06 as candidate SCells. This allows the fourth cell to operate as the primary cell while the other five cells can be added as secondary component carriers.
cross_carrier_scheduling is set to false for all entries, so each component carrier carries its own scheduling information on its own PDCCH.

This block defines the fifth LTE cell using rf_port 4, DL EARFCN 3199, PCI 5, cell ID 0x05, TAC 0x0001, and PRACH root sequence index 86.
The scell_list registers cells 0x01, 0x02, 0x03, 0x04, and 0x06 as candidate SCells. This allows the fifth cell to operate as the primary cell while the other five cells can be added as secondary component carriers.
cross_carrier_scheduling is set to false for all entries, so each component carrier carries its own scheduling information on its own PDCCH.

This block defines the sixth LTE cell using rf_port 5, DL EARFCN 9435, PCI 6, cell ID 0x06, TAC 0x0001, and PRACH root sequence index 134.
The scell_list registers cells 0x01 through 0x05 as candidate SCells. This allows the sixth cell to operate as the primary cell while the other five cells can be added as secondary component carriers.
cross_carrier_scheduling is set to false for all entries, so each component carrier carries its own scheduling information on its own PDCCH.

In cell_default, periodic CQI and RI reporting are disabled by setting cqi_period and m_ri to 0. Aperiodic CSI reporting is enabled with ap_cqi_period set to 40 ms and ap_cqi_rm set to rm30. The ap_cqi_trigger_list parameter is not configured, so the default trigger mapping is applied. With this default mapping, Trigger 1 requests CSI for all six configured serving cells, while the remaining trigger values do not request CSI for any serving cell.

Perform the Test
Before starting the test, verify all six LTE carriers using the cell phy and cell commands.
The cell phy output confirms that cells 0x001 through 0x006 are active with the intended LTE bands, downlink and uplink EARFCNs, bandwidths, antenna configurations, 15 kHz subcarrier spacing, and modulation limits.
The cell output confirms the corresponding cell identities, TAC, DL EARFCN, PCI, PRACH root sequence index, and PLMN for each carrier. Make sure all six cells match the intended 6CC carrier-aggregation configuration before connecting the UE.


NOTE : Run the t command and confirm that the C column reaches 6, indicating that the UE is operating with six aggregated component carriers. Because the trace output is sampled or averaged, the initial C=1 state before carrier aggregation may not appear. The test can be considered successful as long as C=6 is observed, confirming that the PCell and five SCells are active in the 6CC CA configuration.

Log Analysis
Check the aperiodicCSI-Trigger-r13 field in the RRC Connection Reconfiguration message to verify the trigger-to-carrier mapping.
Because ap_cqi_trigger_list is not explicitly configured, the default mapping is applied:
trigger1-r13 = FC hex = 11111100 binary
The six leading 1 bits indicate that Trigger 1 requests CSI for all six configured component carriers.
trigger2-r13 through trigger6-r13 are all 00 hex = 00000000 binary, so these triggers do not request CSI for any component carrier.
This confirms that only Trigger 1 is used for the 6CC aperiodic CSI report, while the remaining trigger entries are disabled.

The Amarisoft eNB uses the configured non-zero aperiodic CSI triggers in a round-robin manner. Trigger entries whose bitmap is all zero are skipped.
In this example, the DCI contains csi_request=2, corresponding to binary 10 and selecting Trigger 1. Since Trigger 1 is configured to include all six component carriers, the UE is instructed to transmit an aperiodic CSI report for all six serving cells on the granted PUSCH resource. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=2.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Since Trigger 1 is configured for all six component carriers, the CQI bit sequence contains the combined aperiodic CSI reports for the PCell and all five SCells.
The presence of ri and the extended cqi payload confirms that the UE received Trigger 1 and returned the requested 6CC aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=3 corresponds to binary 11 and selects Trigger 2 from the RRC-configured aperiodic CSI trigger list.
The DCI provides the uplink grant and instructs the UE to transmit the CSI report associated with Trigger 2 on the scheduled PUSCH resource. The exact serving cells included in the report are determined by the Trigger 2 bitmap configured in the RRC Connection Reconfiguration message. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=3.
The PUSCH trace contains the requested CSI information in the ri and cqi fields. However, in the default 6CC trigger configuration shown earlier, Trigger 2 has an all-zero bitmap and does not select any component carrier. Therefore, csi_request=3 should normally not be used by the eNB for CSI triggering under that configuration.
This log should be interpreted together with the actual RRC trigger table active for this UE. If Trigger 2 was reconfigured with a non-zero bitmap, the displayed RI and CQI correspond to the carriers selected by that bitmap.

Sub Test 1 : 6Trigger - 2 CCs per Trigger
In this sub test, I will show you an example of setting 6 triggers with different configuration for each cells and each triggers has two component carriers enabled.
In this testI used the enb-6cc-ap-cqi_trigger_2perTrigger.cfg which is copied and modified from gnb-nsa.cfg

In enb-6cc-ap-cqi_trigger_2perTrigger.cfg, aperiodic triggers are configured as follows.
In cell_default, periodic CQI and RI reporting are disabled by setting cqi_period and m_ri to 0. Aperiodic CSI reporting is enabled with ap_cqi_period set to 40 ms and ap_cqi_rm set to rm30.
The ap_cqi_trigger_list defines six user-configured triggers, with each trigger selecting two component carriers:
Trigger 1: [0, 1] requests CSI for CC1 and CC2.
Trigger 2: [1, 2] requests CSI for CC2 and CC3.
Trigger 3: [2, 3] requests CSI for CC3 and CC4.
Trigger 4: [3, 4] requests CSI for CC4 and CC5.
Trigger 5: [4, 5] requests CSI for CC5 and CC6.
Trigger 6: [0, 5] requests CSI for CC1 and CC6.
This configuration distributes CSI reporting across multiple triggers, so each aperiodic request covers only two of the six serving cells.

In the log, check out how the aperiodic trigger list are configured in RRC and then how each of the items in the trigger list are used in DCI 0.
Check the aperiodicCSI-Trigger-r13 field in the RRC Connection Reconfiguration message and convert each hexadecimal bitmap into binary to verify the serving-cell selection:
Trigger 1: C0 hex = 11000000 → CC1 and CC2
Trigger 2: 60 hex = 01100000 → CC2 and CC3
Trigger 3: 30 hex = 00110000 → CC3 and CC4
Trigger 4: 18 hex = 00011000 → CC4 and CC5
Trigger 5: 0C hex = 00001100 → CC5 and CC6
Trigger 6: 84 hex = 10000100 → CC1 and CC6
The RRC configuration therefore matches the ap_cqi_trigger_list setting, with each trigger selecting a different pair of component carriers.

The Amarisoft eNB cycles through the configured non-zero aperiodic CSI triggers in a round-robin manner. Trigger entries with an all-zero carrier bitmap are skipped.
In this example, the DCI contains csi_request=2, corresponding to binary 10 and selecting Trigger 1. Trigger 1 is configured as [0, 1], so the UE is requested to report aperiodic CSI for CC1 and CC2. The same DCI also provides the uplink grant used by the UE to transmit the requested RI and CQI information on PUSCH. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=2.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Since Trigger 1 is configured as [0, 1], this report contains CSI for CC1 and CC2. The presence of the RI and CQI payload confirms that the UE received Trigger 1 and transmitted the corresponding aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=3 corresponds to binary 11 and selects Trigger 2 from the RRC-configured aperiodic CSI trigger list.
Trigger 2 is configured as [1, 2], so the UE is requested to report aperiodic CSI for CC2 and CC3. The DCI also provides the uplink grant used to transmit the requested RI and CQI information on PUSCH. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=3.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Since Trigger 2 is configured as [1, 2], this report contains CSI for CC2 and CC3. The presence of the RI and CQI payload confirms that the UE received Trigger 2 and transmitted the corresponding aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=4 corresponds to binary 100 and selects Trigger 3 from the RRC-configured aperiodic CSI trigger list.
Trigger 3 is configured as [2, 3], so the UE is requested to report aperiodic CSI for CC3 and CC4. The DCI also provides the uplink grant used to transmit the requested RI and CQI information on PUSCH. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=4.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Since Trigger 3 is configured as [2, 3], this report contains CSI for CC3 and CC4. The presence of the RI and CQI payload confirms that the UE received Trigger 3 and transmitted the corresponding aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=5 corresponds to binary 101 and selects Trigger 4 from the RRC-configured aperiodic CSI trigger list.
Trigger 4 is configured as [3, 4], so the UE is requested to report aperiodic CSI for CC4 and CC5. The DCI also provides the uplink grant used to transmit the requested RI and CQI information on PUSCH. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=5.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Since Trigger 4 is configured as [3, 4], this report contains CSI for CC4 and CC5. The presence of the RI and CQI payload confirms that the UE received Trigger 4 and transmitted the corresponding aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=6 corresponds to binary 110 and selects Trigger 5 from the RRC-configured aperiodic CSI trigger list.
Trigger 5 is configured as [4, 5], so the UE is requested to report aperiodic CSI for CC5 and CC6. The DCI also provides the uplink grant used to transmit the requested RI and CQI information on PUSCH. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=6.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Since Trigger 5 is configured as [4, 5], this report contains CSI for CC5 and CC6. The presence of the RI and CQI payload confirms that the UE received Trigger 5 and transmitted the corresponding aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=7 corresponds to binary 111 and selects Trigger 6 from the RRC-configured aperiodic CSI trigger list.
Trigger 6 is configured as [0, 5], so the UE is requested to report aperiodic CSI for CC1 and CC6. The DCI also provides the uplink grant used to transmit the requested RI and CQI information on PUSCH. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=7.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Since Trigger 6 is configured as [0, 5], this report contains CSI for CC1 and CC6. The presence of the RI and CQI payload confirms that the UE received Trigger 6 and transmitted the corresponding aperiodic CSI report on PUSCH.

Sub Test 2: 6 Trigger - Arbitrary CCs per Trigger
In this sub test, I will show you an example of setting 6 triggers with different configuration for each cells and each triggers has different number ofcomponent carriers enabled.
In this testI used the enb-6cc-ap-cqi_trigger_arbTrigger.cfg.cfg which is copied and modified from gnb-nsa.cfg

In enb-6cc-ap-cqi_trigger_arbTrigger.cfg.cfg , aperiodic cqi is configured as follows.
In cell_default, periodic CQI and RI reporting are disabled by setting cqi_period and m_ri to 0. Aperiodic CSI reporting is enabled by setting ap_cqi_period to 40 ms and ap_cqi_rm to rm30.
The ap_cqi_trigger_list defines six triggers with different serving-cell combinations:
Trigger 1: [0, 1, 2, 3, 4, 5] requests CSI for CC1 through CC6.
Trigger 2: [1, 3, 5] requests CSI for CC2, CC4, and CC6.
Trigger 3: [0, 2, 4] requests CSI for CC1, CC3, and CC5.
Trigger 4: [0, 1, 2, 3] requests CSI for CC1 through CC4.
Trigger 5: [2, 3, 4, 5] requests CSI for CC3 through CC6.
Trigger 6: [0, 5] requests CSI for CC1 and CC6.
This configuration allows each DCI CSI request value to trigger a different number and combination of component carriers.

In the log, check out how the aperiodic trigger list are configured in RRC and then how each of the items in the trigger list are used in DCI 0.
Check the aperiodicCSI-Trigger-r13 field in the RRC Connection Reconfiguration message and convert each hexadecimal bitmap into binary:
Trigger 1: FC hex = 11111100 → CC1, CC2, CC3, CC4, CC5, and CC6
Trigger 2: 54 hex = 01010100 → CC2, CC4, and CC6
Trigger 3: A8 hex = 10101000 → CC1, CC3, and CC5
Trigger 4: F0 hex = 11110000 → CC1, CC2, CC3, and CC4
Trigger 5: 3C hex = 00111100 → CC3, CC4, CC5, and CC6
Trigger 6: 84 hex = 10000100 → CC1 and CC6
The RRC trigger bitmaps therefore match the component-carrier combinations configured in ap_cqi_trigger_list.

The Amarisoft eNB cycles through the configured non-zero CSI triggers in a round-robin manner, while trigger entries with an all-zero bitmap are skipped.
In this example, the DCI contains csi_request=2, which selects Trigger 1. Trigger 1 is configured for all six component carriers, so the UE is instructed to report aperiodic CSI for CC1 through CC6 on the granted PUSCH resource. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=2.
The PUSCH trace includes ri and a long cqi bit sequence. Since Trigger 1 is configured for all six component carriers, the CSI payload contains the combined report for CC1 through CC6.
The much longer CQI field compared with triggers selecting fewer carriers is consistent with reporting CSI for all six component carriers. This confirms that the UE received Trigger 1 and transmitted the requested 6CC aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=3 corresponds to binary 11 and selects Trigger 2 from the RRC-configured aperiodic CSI trigger list.
Trigger 2 is configured as [1, 3, 5], so the UE is requested to report aperiodic CSI for CC2, CC4, and CC6. The DCI also provides the uplink grant used to transmit the requested RI and CQI information on PUSCH. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=3.
The PUSCH trace contains the requested CSI information in the ri and cqi fields. Since Trigger 2 is configured as [1, 3, 5], the report includes CSI for CC2, CC4, and CC6.
The CQI payload is shorter than the Trigger 1 report because only three of the six component carriers are included. This confirms that the UE received Trigger 2 and transmitted the corresponding aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=4 corresponds to binary 100 and selects Trigger 3 from the RRC-configured aperiodic CSI trigger list.
Trigger 3 is configured as [0, 2, 4], so the UE is requested to report aperiodic CSI for CC1, CC3, and CC5. The DCI also provides the uplink grant used to transmit the requested RI and CQI information on PUSCH. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=4.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Since Trigger 3 is configured as [0, 2, 4], this report contains CSI for CC1, CC3, and CC5. The presence of the RI and CQI payload confirms that the UE received Trigger 3 and transmitted the corresponding aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=5 corresponds to binary 101 and selects Trigger 4 from the RRC-configured aperiodic CSI trigger list.
Trigger 4 is configured as [0, 1, 2, 3], so the UE is requested to report aperiodic CSI for CC1, CC2, CC3, and CC4. The DCI also provides the uplink grant used to transmit the requested RI and CQI information on PUSCH. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=5.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Since Trigger 4 is configured as [0, 1, 2, 3], this report contains CSI for CC1, CC2, CC3, and CC4.
The CQI payload is longer than the three-carrier reports but shorter than the six-carrier report, which is consistent with CSI reporting for four component carriers. This confirms that the UE received Trigger 4 and transmitted the corresponding aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=6 corresponds to binary 110 and selects Trigger 5 from the RRC-configured aperiodic CSI trigger list.
Trigger 5 is configured as [2, 3, 4, 5], so the UE is requested to report aperiodic CSI for CC3, CC4, CC5, and CC6. The DCI also provides the uplink grant used to transmit the requested RI and CQI information on PUSCH.(Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=6.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Since Trigger 5 is configured as [2, 3, 4, 5], this report contains CSI for CC3, CC4, CC5, and CC6.
The CQI payload length is consistent with reporting four component carriers, confirming that the UE received Trigger 5 and transmitted the corresponding aperiodic CSI report on PUSCH.

Find a DCI Format 0 message with csi_request set to a non-zero value. In this example, csi_request=7 corresponds to binary 111 and selects Trigger 6 from the RRC-configured aperiodic CSI trigger list.
Trigger 6 is configured as [0, 5], so the UE is requested to report aperiodic CSI for CC1 and CC6. The DCI also provides the uplink grant used to transmit the requested RI and CQI information on PUSCH. (Check out FAQ to figure out how csi_request value is translated to trigger number)

Locate the PUSCH transmission immediately following the DCI carrying csi_request=7.
The PUSCH trace includes the requested CSI information in the ri and cqi fields. Since Trigger 6 is configured as [0, 5], this report contains CSI for CC1 and CC6.
The relatively short CQI payload is consistent with reporting only two component carriers. This confirms that the UE received Trigger 6 and transmitted the corresponding aperiodic CSI report on PUSCH.

RRC / NAS Signaling
RrcConnectionReconfiguration
: This is the RrcConnectionReconfigurationmessage sent by eNB to configure Aperiodic Trigger (
{
message c1: rrcConnectionReconfiguration: {
rrc-TransactionIdentifier 0,
criticalExtensions c1: rrcConnectionReconfiguration-r8: {
dedicatedInfoNASList {
'270FDC9A170107420......08'H
},
radioResourceConfigDedicated {
srb-ToAddModList {
{
srb-Identity 2,
rlc-Config explicitValue: am: {
ul-AM-RLC {
t-PollRetransmit ms60,
pollPDU pInfinity,
pollByte kBinfinity,
maxRetxThreshold t32
},
dl-AM-RLC {
t-Reordering ms45,
t-StatusProhibit ms0
}
},
logicalChannelConfig defaultValue: NULL
}
},
drb-ToAddModList {
{
eps-BearerIdentity 5,
drb-Identity 1,
pdcp-Config {
discardTimer infinity,
rlc-AM {
statusReportRequired TRUE
},
headerCompression notUsed: NULL
},
rlc-Config am: {
ul-AM-RLC {
t-PollRetransmit ms80,
pollPDU p64,
pollByte kB125,
maxRetxThreshold t32
},
dl-AM-RLC {
t-Reordering ms35,
t-StatusProhibit ms10
}
},
logicalChannelIdentity 3,
logicalChannelConfig {
ul-SpecificParameters {
priority 15,
prioritisedBitRate kBps8,
bucketSizeDuration ms100,
logicalChannelGroup 3
}
}
}
},
physicalConfigDedicated {
cqi-ReportConfig-r10 {
cqi-ReportAperiodic-r10 setup: {
cqi-ReportModeAperiodic-r10 rm30,
aperiodicCSI-Trigger-r10 {
trigger1-r10 'C0'H,
trigger2-r10 '40'H
}
},
nomPDSCH-RS-EPRE-Offset 0,
cqi-ReportPeriodic-r10 release: NULL
},
pucch-ConfigDedicated-v1020 {
pucch-Format-r10 channelSelection-r10: {
n1PUCCH-AN-CS-r10 setup: {
n1PUCCH-AN-CS-List-r10 {
{
0,
1,
2,
3
}
}
}
}
},
cqi-ReportConfigPCell-v1250 {
altCQI-Table-r12 allSubframes
}
}
},
nonCriticalExtension {
nonCriticalExtension {
nonCriticalExtension {
sCellToAddModList-r10 {
{
sCellIndex-r10 1,
cellIdentification-r10 {
physCellId-r10 2,
dl-CarrierFreq-r10 1575
},
radioResourceConfigCommonSCell-r10 {
nonUL-Configuration-r10 {
dl-Bandwidth-r10 n25,
antennaInfoCommon-r10 {
antennaPortsCount an1
},
phich-Config-r10 {
phich-Duration normal,
phich-Resource one
},
pdsch-ConfigCommon-r10 {
referenceSignalPower -29,
p-b 0
}
}
},
radioResourceConfigDedicatedSCell-r10 {
physicalConfigDedicatedSCell-r10 {
nonUL-Configuration-r10 {
antennaInfo-r10 {
transmissionMode-r10 tm1,
ue-TransmitAntennaSelection release: NULL
},
crossCarrierSchedulingConfig-r10 {
schedulingCellInfo-r10 own-r10: {
cif-Presence-r10 FALSE
}
},
pdsch-ConfigDedicated-r10 {
p-a dB0
}
},
ul-Configuration-r10 {
cqi-ReportConfigSCell-r10 {
cqi-ReportModeAperiodic-r10 rm30,
nomPDSCH-RS-EPRE-Offset-r10 0,
cqi-ReportPeriodicSCell-r10 release: NULL
}
},
cqi-ReportConfigSCell-v1250 {
altCQI-Table-r12 allSubframes
}
}
}
}
}
}
}
}
}
}
}
FAQ
[Q1] How can I interpret the ap_cqi_trigger_list[] in the configuration file and how it gets translated to RRC Configuration ?
[A1] Explained below.

This configuration is translated to RRC configuration as follows.

[Q2] How each of the trigger is selected by each triggering DCI 0 ?
[A2] The trigger is selected in round robin manner among the triggers which are NOT all 0.
hopping_flag=0
riv=0x451
mcs1=29
new_data_indicator1=0
tpc_command=0
cyclic_shift=0
rb_alloc_type=0
In case of 6CC as an example, the maning of csi_request value indicates differently depending on which specific 7.2.1-XX table is applied. The table selection algorithm is described in 36.213-7.2.1 which is very confusing. For the current Amarisoft configuration, you may assume that 7.2.1-1D is used. Given that, you can interpret the value of csi_request as follows :
