Keysight Pathwave 89600 VSA .NET API
GetResourceAllocations Method
See Also 
Agilent.SA.Vsa.CustomOfdm.Interfaces Assembly > Agilent.SA.Vsa.CustomOfdm Namespace > MeasurementExtension Class : GetResourceAllocations Method


Glossary Item Box

Gets an array specifying the allocation ID value mapped to each subcarrier and symbol OFDM Resource Unit (RU) in the signal. If N is the number of active TransmitterAntennas, the SetResourceAllocations array contains N sets of "per RU" (Resource Unit) associated values. Each set of "per RU" values is applied successively to each of the active TransmitterAntennas.

Syntax

Visual Basic (Declaration) 
Public Overridable Function GetResourceAllocations() As Integer()
C# 
public virtual int[] GetResourceAllocations()
C++/CLI 
public:
virtual array<int>^ GetResourceAllocations(); 

Return Value

The array specifying the allocation ID value mapped to each subcarrier and symbol OFDM Resource Unit (RU) in the signal.

Remarks

An OFDM "Resource Unit" (RU) is a single subcarrier at a single symbol time. The SetResourceAllocations array specifies the allocation ID mapped to each of RU comprising the defined signal. If N is the number of active TransmitterAntennas, the number of entries in the SetResourceAllocations array should be equal to N times the number of subcarriers (FftLength - GuardUpperSubcarriers - GuardLowerSubcarriers) times the number of symbols to analyze.

Each value in the array represents the allocation ID mapped to a specific resource unit (RU) on a specific active TransmitterAntennas.

The allocation ID value can then be used to index into each of the following associated "per Alloc" property arrays to determine the per allocation configuration properties associated with each RU allocation: SetFramePartIdPerAllocation, SetUserIdPerAllocation, SetActivePortsPerAllocation, SetResourceTypePerAllocation, SetModulationPerAllocation, SetPowerBoostLevelPerAllocation.

The frame part ID value can also be used to index into each of the following associated "per Frame Part" property arrays to determine the per frame part configuration properties associated with each RU allocation: SetCdmGroupSubcarrierCountPerFramePart, SetCdmGroupSymbolCountPerFramePart.

Each data subcarrier type (SetResourceTypePerAllocation) is detected based on the modulation (SetModulationPerAllocation) format assigned to that subcarrier. Each pilot subcarrier is assumed to have a value specified in the PilotValues array. Each unknown pilot subcarrier is detected, like a data subcarrier, based on the modulation (SetModulationPerAllocation) format assigned to that subcarrier. Both pilot and unknown pilot subcarriers are used for pilot tracking.

Each preamble subcarrier is assumed to have a value specified in the PreambleValues array.

Each null subcarrier is assumed to be unused and have a nominal signal level of zero.

Each unspecified subcarrier is assumed to be completely unknown - it could have some other signal on it so the analyzer makes no assumptions about what value it may have.

The user ID (SetUserIdPerAllocation) allows the subcarriers to be split into logically separate groups for reporting of DataBurstInfo "per User" results. For subcarriers that have a QamLevel of 0 (meaning unknown), each user ID separately determines the modulation format. EVM and power levels are computed separately for each user ID.

The RU allocation's associated active antenna port (SetActivePortsPerAllocation) mappings are used when doing MIMO analysis. Valid port index range is between 0 and TransmitterAntennas - 1. The data and idle subcarrier type (SetResourceTypePerAllocation) can be mapped to any subset range of the available antenna ports. The preamble and pilot subcarrier type (SetResourceTypePerAllocation) can only be mapped to a single antenna port per allocation.

For pilot, unknown pilot, and preamble subcarrier types, if they are mapped to 2 or more unique active ports (SetActivePortsPerAllocation) for a given RU mapping, then it is assumed that these reference signals are broadcast simultaneously on all antennas using the associated FramePart's configured Code Domain Multiplex (CDM) pattern (defined by SetCdmGroupSubcarrierCountPerFramePart and SetCdmGroupSymbolCountPerFramePart property combination). For pilot subcarriers, the PilotValues array can contain values for the pilots on the first antenna, followed by values for the pilots on the second antenna, and so on. Alternatively, if all pilots broadcast the same value on all antennas, then the PilotValues array need not contain values after the first antenna. Similarly, for preamble subcarriers, the PreambleValues array can contain values for the preambles on the first antenna, followed by values for preambles on the second antenna, and so on. Alternatively, if all preambles broadcast the same value on all antennas, then the PreambleValues array need not contain values after the first antenna.

For pilot, unknown pilot, and preamble subcarrier types, if they are mapped to only 1 unique active ports (SetActivePortsPerAllocation) for a given RU mapping, then it is assumed that only one transmitter antenna broadcasts this pilot or preamble. For that specific RU, it is assumed that all other antennas broadcast nothing.

If the SetResourceAllocations array is shorter than the number of used subcarriers times the ResultLength, the analyzer will loop back and re-use entries in the array. The ResourceRepeatIndex property specifies the number of symbols from the start of the array to loop back to.

Requirements

Target Platforms: Windows 11 Professional or Enterprise; Windows 10 Professional, Enterprise, or Education (64-bit)

Minimum Software Version Requirement: Keysight PathWave 89600 VSA Ver 29.00

See Also