Skip to content

NI RFmx NR Advanced Attributes

Ryan Eckenrode edited this page Mar 1, 2022 · 3 revisions

Advanced Attributes

RFMXNR_ATTR_ACQUISITION_BANDWIDTH_OPTIMIZATION_ENABLED

Data Type: int32
Access: read/write
Functions: RFmxNR_SetAttributeI32
RFmxNR_GetAttributeI32
Description: Specifies whether RFmx optimizes the acquisition bandwidth. This may cause acquisition center frequency or local oscillator (LO) to be placed at different position than you configured.

You do not need to use a selector string to configure or read this attribute for the default signal instance. Refer to the Selector Strings topic for information about the string syntax for named signals.

The default value is RFMXNR_VAL_ACQUISITION_BANDWIDTH_OPTIMIZATION_ENABLED_FALSE.

Get Function: RFmxNR_GetAcquisitionBandwidthOptimizationEnabled
Set Function: RFmxNR_SetAcquisitionBandwidthOptimizationEnabled
Values:
RFMXNR_VAL_ACQUISITION_BANDWIDTH_OPTIMIZATION_ENABLED_FALSE (0) RFmx does not optimize acquisition bandwidth and will be based on the Nyquist criterion. The value of the acquisition center frequency is the same as the value of the Center Frequency that you configure.
RFMXNR_VAL_ACQUISITION_BANDWIDTH_OPTIMIZATION_ENABLED_TRUE (1) RFmx positions the acquisition center frequency to acquire the least bandwidth based on the configuration and span needed for the measurement. This helps in reducing the amount of data to process for the measurement, thus improving the speed. However this might cause the LO to be positioned at a non-dc subcarrier position, hence the measurement sensitive to it should have this attribute disabled.

RFMXNR_ATTR_TRANSMITTER_ARCHITECTURE

Data Type: int32
Access: read/write
Functions: RFmxNR_SetAttributeI32
RFmxNR_GetAttributeI32
Description: Specifies the RF architecture at the transmitter, whether each component carriers have a separate LO or one common LO for the entire subblock.

You do not need to use a selector string to configure or read this attribute for the default signal instance. Refer to the Selector Strings topic for information about the string syntax for named signals.

The default value is RFMXNR_VAL_TRANSMITTER_ARCHITECTURE_LO_PER_SUBBLOCK.

Get Function: RFmxNR_GetTransmitterArchitecture
Set Function: RFmxNR_SetTransmitterArchitecture
Values:
RFMXNR_VAL_TRANSMITTER_ARCHITECTURE_LO_PER_COMPONENT_CARRIER (0) The Carrier IQ Origin Offset Mean (dBc) and the In-Band Emission Margin (dB) are calculated as the LO per Component Carrier, the Subblock IQ Origin Offset Mean (dBc) and the Subblock In-Band Emission Margin (dB) will not be returned.
RFMXNR_VAL_TRANSMITTER_ARCHITECTURE_LO_PER_SUBBLOCK (1) The Subblock IQ Origin Offset Mean (dBc) and the Subblock In-Band Emission Margin (dB) are calculated as the LO per Subblock, the Carrier IQ Origin Offset Mean (dBc), and the In-Band Emission Margin (dB) will be NaN. In the case of a single carrier, the measurement returns the same value of IQ Origin Offset and In-Band Emission Margin for both components carrier and subblock results.

RFMXNR_ATTR_PHASE_COMPENSATION

Data Type: int32
Access: read/write
Functions: RFmxNR_SetAttributeI32
RFmxNR_GetAttributeI32
Description: Specifies whether phase compensation is disabled, auto-set by the measurement or set by the you.

You do not need to use a selector string to configure or read this attribute for the default signal instance. Refer to the Selector Strings topic for information about the string syntax for the named signals.

The default value is RFMXNR_VAL_PHASE_COMPENSATION_DISABLED.

Get Function: RFmxNR_GetPhaseCompensation
Set Function: RFmxNR_SetPhaseCompensation
Values:
RFMXNR_VAL_PHASE_COMPENSATION_DISABLED (0) No phase compensation is applied on the signal.
RFMXNR_VAL_PHASE_COMPENSATION_AUTO (1) Phase compensation is applied on the signal using value of Center Frequency attribute as the phase compensation frequency.
RFMXNR_VAL_PHASE_COMPENSATION_USER_DEFINED (2) Phase compensation is applied on the signal using value of RFMXNR_ATTR_PHASE_COMPENSATION_FREQUENCY attribute.

RFMXNR_ATTR_REFERENCE_GRID_ALIGNMENT_MODE

Data Type: int32
Access: read/write
Functions: RFmxNR_SetAttributeI32
RFmxNR_GetAttributeI32
Description: Specifies whether to align the bandwidthparts and the SSB in a component carrier to a reference resource grid automatically or manually.

You do not need to use a selector string to configure or read this attribute for the default signal instance. Refer to the Selector Strings topic for information about the string syntax for the named signals.

The default value is RFMXNR_VAL_REFERENCE_GRID_ALIGNMENT_MODE_AUTO.

Get Function: RFmxNR_GetReferenceGridAlignmentMode
Set Function: RFmxNR_SetReferenceGridAlignmentMode
Values:
RFMXNR_VAL_REFERENCE_GRID_ALIGNMENT_MODE_MANUAL (0) The subcarrier spacing of the reference resource grid and the grid start of each bandwidthpart is user specified. Center of subcarrier 0 in common resource block 0 of the reference resource grid is considered as Reference Point A.
RFMXNR_VAL_REFERENCE_GRID_ALIGNMENT_MODE_AUTO (1) The subcarrier spacing of the reference resource grid is determined by the largest subcarrier spacing among the configured bandwidthparts and the SSB. The grid start of each bandwidthpart and the SSB is computed by minimizing k0 to {0, +6} subcarriers.

RFMXNR_ATTR_GRID_SIZE_MODE

Data Type: int32
Access: read/write
Functions: RFmxNR_SetAttributeI32
RFmxNR_GetAttributeI32
Description: Specifies whether to set the grid size of all BWPs and SSB in a component carrier automatically or manually.

When you set this attribute to Auto, the grid size is set equal to the maximum transmission bandwidth specified in the 3GPP specification.

You do not need to use a selector string to configure or read this attribute for the default signal instance. Refer to the Selector Strings topic for information about the string syntax for the named signals.

The default value is RFMXNR_VAL_GRID_SIZE_MODE_AUTO.

Get Function: RFmxNR_GetGridSizeMode
Set Function: RFmxNR_SetGridSizeMode
Values:
RFMXNR_VAL_GRID_SIZE_MODE_MANUAL (0) The grid size is user specified.
RFMXNR_VAL_GRID_SIZE_MODE_AUTO (1) The grid size is set equal to the maximum transmission bandwidth specified by the 3GPP specification.

RFMXNR_ATTR_LIMITED_CONFIGURATION_CHANGE

Data Type: int32
Access: read/write
Functions: RFmxNR_SetAttributeI32
RFmxNR_GetAttributeI32
Description: Specifies the set of attributes that are considered by RFmx in the locked signal configuration state.

If your test system performs the same measurement at different selected ports, multiple frequencies and/or power levels repeatedly, enabling this attribute can help achieve faster measurements. When you set this attribute to a value other than Disabled, the RFmx driver will use an optimized code path and skip some checks. Because RFmx skips some checks when you use this attribute, you need to be aware of the limitations of this feature, which are listed in the Limitations of the RFMXNR_ATTR_LIMITED_CONFIGURATION_CHANGE Attribute topic.

You can also use this attribute to lock a specific instrument configuration for a signal so that every time that you initiate the signal, RFmx applies the RFmxInstr attributes from a locked configuration.

NI recommends you use this attribute in conjunction with named signal configurations. Create named signal configurations for each measurement configuration in your test program and set this attribute to a value other than Disabled for one or more of the named signal configurations. This allows RFmx to precompute the acquisition settings for your measurement configurations and re-use the precomputed settings each time you initiate the measurement. You do not need to use this attribute if you create named signals for all the measurement configurations in your test program during test sequence initialization and do not change any RFInstr or personality attributes while testing each device under test. RFmx automatically optimizes that use case.

Specify the named signal configuration you are setting this attribute in the selector string input. You do not need to use a selector string to configure or read this attribute for the default signal instance. Refer to the Selector Strings topic for information about the string syntax for named signals.

The default value is RFMXNR_VAL_LIMITED_CONFIGURATION_CHANGE_DISABLED.

Get Function: RFmxNR_GetLimitedConfigurationChange
Set Function: RFmxNR_SetLimitedConfigurationChange
Values:
RFMXNR_VAL_LIMITED_CONFIGURATION_CHANGE_DISABLED (0) This is the normal mode of RFmx operation. All configuration changes in RFmxInstr attributes or in personality attributes will be applied during RFmx Commit.
RFMXNR_VAL_LIMITED_CONFIGURATION_CHANGE_NO_CHANGE (1) Signal configuration is locked after the first Commit of the named signal configuration. Any configuration change thereafter either in RFmxInstr attributes or personality attributes will not be considered by subsequent RFmx Commits or Initiates of this signal. Use No Change if you have created named signal configurations for all measurement configurations but are setting some RFmxInstr attributes. Refer to the Limitations of the Limited Configuration Change Attribute topic for more details about the limitations of using this mode.
RFMXNR_VAL_LIMITED_CONFIGURATION_CHANGE_FREQUENCY (2) Signal configuration, other than center frequency and external attenuation, is locked after first Commit of the named signal configuration. Thereafter, only the Center Frequency and RFMXNR_ATTR_EXTERNAL_ATTENUATION attribute value changes will be considered by subsequent driver Commits or Initiates of this signal. Refer to the Limitations of the Limited Configuration Change Attribute topic for more details about the limitations of using this mode.
RFMXNR_VAL_LIMITED_CONFIGURATION_CHANGE_REFERENCE_LEVEL (3) Signal configuration, other than the reference level, is locked after first Commit of the named signal configuration. Thereafter only the RFMXNR_ATTR_REFERENCE_LEVEL attribute value change will be considered by subsequent driver Commits or Initiates of this signal. If you have configured this signal to use an IQ Power Edge Trigger, NI recommends that you set the RFMXNR_ATTR_IQ_POWER_EDGE_TRIGGER_LEVEL_TYPE to RFMXNR_VAL_IQ_POWER_EDGE_TRIGGER_LEVEL_TYPE_RELATIVE so that the trigger level is automatically adjusted as you adjust the reference level. Refer to the Limitations of the Limited Configuration Change Attribute topic for more details about the limitations of using this mode.
RFMXNR_VAL_LIMITED_CONFIGURATION_CHANGE_FREQUENCY_AND_REFERENCE_LEVEL (4) Signal configuration, other than center frequency, reference level, and external attenuation, is locked after first Commit of the named signal configuration. Thereafter only Center Frequency, RFMXNR_ATTR_REFERENCE_LEVEL, and RFMXNR_ATTR_EXTERNAL_ATTENUATION attribute value changes will be considered by subsequent driver Commits or Initiates of this signal. If you have configured this signal to use an IQ Power Edge Trigger, NI recommends you set the RFMXNR_ATTR_IQ_POWER_EDGE_TRIGGER_LEVEL_TYPE to RFMXNR_VAL_IQ_POWER_EDGE_TRIGGER_LEVEL_TYPE_RELATIVE so that the trigger level is automatically adjusted as you adjust the reference level. Refer to the Limitations of the Limited Configuration Change Attribute topic for more details about the limitations of using this mode.
RFMXNR_VAL_LIMITED_CONFIGURATION_CHANGE_SELECTED_PORTS_FREQUENCY_AND_REFERENCE_LEVEL (5) Signal configuration, other than selected ports, center frequency, reference level, external attenuation, and RFInstr configuration, is locked after first Commit or Initiate of the named signal configuration. Thereafter only Selected Ports, Center Frequency, RFMXNR_ATTR_REFERENCE_LEVEL, and RFMXNR_ATTR_EXTERNAL_ATTENUATION attribute value changes will be considered by subsequent driver Commits or Initiates of this signal. If you have configured this signal to use an IQ Power Edge Trigger, NI recommends you set the RFMXNR_ATTR_IQ_POWER_EDGE_TRIGGER_LEVEL_TYPE to Relative so that the trigger level is automatically adjusted as you adjust the reference level. Refer to the Limitations of the Limited Configuration Change Attribute topic for more details about the limitations of using this mode.

Table of Contents

Internal Development

Creating and Setting Up a gRPC Server

Server Security Support

Creating a gRPC Client

gRPC Client Examples

Session Utilities API Reference

Driver Documentation

gRPC API Differences From C API

Sharing Driver Sessions Between Clients

C API Docs
NI-DAQmx
NI-DCPOWER
NI-DIGITAL PATTERN DRIVER
NI-DMM
NI-FGEN
NI-FPGA
NI-RFmx Bluetooth
NI-RFmx NR
NI-RFmx WCDMA
NI-RFmx GSM
NI-RFmx CDMA2k
NI-RFmx Instr
NI-RFmx LTE
NI-RFmx SpecAn
NI-RFmx TD-SCDMA
NI-RFmx WLAN
NI-RFSA
NI-RFSG
NI-SCOPE
NI-SWITCH
NI-TCLK
NI-XNET
Clone this wiki locally