Main Content

nrSRSConfig

SRS configuration parameters

Since R2020a

Description

The nrSRSConfig object sets sounding reference signal (SRS) configuration parameters, as defined in TS 38.211 Section 6.4.1.4 [1].

The default nrSRSConfig object specifies a single-port, single-symbol, narrowband configuration without frequency hopping and places the SRS at the end of the slot.

Creation

Description

example

srs = nrSRSConfig creates an SRS configuration object with default properties.

example

srs = nrSRSConfig(Name,Value) specifies properties using one or more name-value pair arguments. Enclose each property in quotes. For example, 'NumSRSPorts',2,'NumSRSSymbols',4 specifies a two-port SRS transmission of 4 OFDM symbols. Unspecified properties take their default values.

Properties

expand all

Configurable SRS Properties

Number of SRS antenna ports, specified as 1, 2, or 4.

Data Types: double

0-based index of first OFDM symbol in the SRS within a slot, specified as one of these options:

  • Integer from 0 to 13 — Use this option for normal cyclic prefix.

  • Integer from 0 to 11 — Use this option for extended cyclic prefix.

For the SRS symbols and index generation, set the cyclic prefix of the carrier by using the CyclicPrefix property of the nrCarrierConfig object.

Data Types: double

Number of OFDM symbols allocated to the SRS in a slot, specified as 1, 2, 4, 8, 10, 12, or 14. Property values 10 and 14 are only valid when you set the SRSPositioning property to 0 (false).

When you set the SRSPositioning property to 1 (true), to display valid configurations of this property and the KTC property, use the SubcarrierOffsetTable property.

Data Types: double

Time-domain behavior of the SRS, specified as 'periodic', 'semi-persistent', or 'aperiodic'. Downlink control information (DCI) triggers aperiodic SRS transmissions. When the resource type is aperiodic, the SRSPeriod property determines the periodicity and offset of the DCI-triggering signal. An aperiodic resource type also disables interslot frequency hopping.

Data Types: char | string

Slot periodicity and offset, specified as one of these values:

  • 'on' — The SRS is present in all slots.

  • 'off' — The SRS is absent in all slots.

  • [TSRS Toffset] — The presence of the SRS in a given slot depends on the specified slot periodicity, TSRS, and the offset, Toffset, based on TS 38.211 Section 6.4.1.4.4. Specify TSRS as 1, 2, 4, 5, 8, 10, 16, 20, 32, 40, 64, 80, 160, 320, 640, 1280, or 2560. Specify Toffset as a nonnegative integer such that Toffset < TSRS.

The SRSPeriod values [1 0] and 'on' are equivalent.

Data Types: char | string | double

Frequency-domain offset of the SRS, in terms of a physical resource block (PRB) index relative to the carrier, specified as an integer from 0 to 271. FrequencyStart is analogous to parameter nshift from TS 38.211 Section 6.4.1.4.3.

This property, the additional circular frequency-domain offset property NRRC, and the bandwidth configuration parameters in TS 38.211 Table 6.4.1.4.3-1 determine the actual frequency-domain location of the SRS. For more information, see NR SRS Configuration.

Data Types: double

Additional circular frequency-domain offset of the SRS, as a multiple of 4 PRBs, specified as an integer from 0 to 67.

This property, the frequency domain offset property FrequencyStart, and the bandwidth configuration parameters in TS 38.211 Table 6.4.1.4.3-1 determine the actual frequency-domain location of the SRS. For more information, see NR SRS Configuration.

Data Types: double

Row index of the bandwidth configuration table from TS 38.211 Table 6.4.1.4.3-1, specified as an integer from 0 to 63. Use this property with the BSRS property to control the bandwidth allocated to the SRS and the frequency hopping pattern. Increasing the CSRS value increases the SRS bandwidth. The default value of 0 results in a bandwidth of 4 PRBs.

Data Types: double

Column index of the bandwidth configuration table from TS 38.211 Table 6.4.1.4.3-1, specified as an integer from 0 to 3. Use this property with the CSRS property to control the bandwidth allocated to the SRS and the frequency hopping pattern. Increasing the BSRS value decreases the SRS bandwidth.

Data Types: double

Frequency hopping index, specified as an integer from 0 to 3. Setting this property to a value greater than or equal to the column index of the bandwidth configuration table property, BSRS, disables frequency hopping. Increasing the BHop value decreases the hopping bandwidth.

Data Types: double

Repetition factor of OFDM symbols, specified as 1, 2, 4, 5, 6, 7, 8, 10, 12, or 14.

  • When frequency hopping is enabled, Repetition specifies the number of consecutive OFDM symbols in a slot occupied by the SRS in the same frequency resource. Set Repetition such that RepetitionNumSRSSymbols.

  • When frequency hopping is disabled, this property is ignored.

Data Types: double

Transmission comb number, in subcarriers, specified as 2, 4, or 8. This property specifies the minimum frequency separation between two subcarriers that allocate SRS.

When you set the SRSPositioning property to 1 (true), to display valid configurations of this property and the NumSRSSymbols property, use the SubcarrierOffsetTable property.

Data Types: double

Transmission comb offset, in subcarriers, specified as an integer from 0 to (KTC – 1). This property specifies a frequency offset within the comb.

Data Types: double

Frequency scaling factor, specified as 1, 2, or 4. Use this property to reduce the SRS transmission bandwidth for partial frequency sounding. This property corresponds to the parameter PF in Release 17 of TS 38.211 Section 6.4.1.4.3. The default value 1 disables frequency scaling.

Data Types: double

Partial frequency sounding block index, specified as a nonnegative integer in the range [0, FrequencyScalingFactor–1].

Use this property to control the SRS frequency position when you set the FrequencyScalingFactor property to 2 or 4.

Data Types: double

Enable frequency hopping of the first RB in the SRS transmission for partial frequency sounding, specified as one of these logical values.

  • 0 (false) — Disable frequency hopping of the first RB.

  • 1 (true) — Enable frequency hopping of the first RB.

Use this property to control the frequency hopping of the first RB when you set the FrequencyScalingFactor property to 2 or 4.

Data Types: logical | double

Cyclic shift offset, specified as an integer from 0 to 11. This property determines the cyclic shift applied to the SRS sequence for each antenna port. This property corresponds to parameter nSRScs in TS 38.211 Section 6.4.1.4.2.

Set the cyclic shift offset in relation to the transmission comb property, KTC:

  • If you set KTC to 2, set CyclicShift to an integer from 0 to 7.

  • If you set KTC to 4, set CyclicShift to an integer from 0 to 11.

  • If you set KTC to 8, set CyclicShift to an integer from 0 to 5.

For multiport SRS transmissions, consecutive cyclic shift numbers are used for each port, modulo 6, 8, or 12, depending on the KTC property.

Data Types: double

Type of SRS symbol hopping, specified as 'neither', 'groupHopping', or 'sequenceHopping'. When either group or sequence hopping is enabled, the group or sequence hopping numbers per OFDM symbol in the SRS transmission are based on a pseudo-random binary sequence (PRBS). Set the scrambling identity for the PRBS by using the NSRSID property.

Data Types: char | string

SRS scrambling identity, specified as an integer from 0 to 65,535.

  • When you set the GroupSeqHopping property to 'neither', this property determines the group number.

  • When you set the GroupSeqHopping property to 'groupHopping' or 'sequenceHopping', this property initializes the PRBS.

Data Types: double

SRS for user positioning, as defined in Release 16 of TS 38.211 Section 6.4.1.4, specified as one of these values.

  • 0 (false) — Disable SRS for user positioning. This option corresponds to the higher-layer parameter SRS-Resource.

  • 1 (true) — Enable SRS for user positioning. This option corresponds to the higher-layer parameter SRS-PosResource-r16.

This property affects the valid range of the NumSRSSymbols and KTC properties.

Data Types: logical | double

Nonconfigurable SRS Properties

The object automatically sets these properties based on configurable SRS property values by using the configuration tables from TS 38.211 Section 6.4.1.4.

This property is read-only.

Number of RBs allocated for SRS transmission, returned as a positive integer. When frequency hopping is enabled, this property denotes the hopping bandwidth or number of RBs over which the SRS signal hops across multiple time slots.

Data Types: double

This property is read-only.

Number of RBs allocated per SRS OFDM symbol, returned as a positive integer. When frequency hopping is enabled, this property specifies the allocated bandwidth at each SRS OFDM symbol. When frequency hopping is disabled, this property is equal to the NRB property.

Data Types: double

SRS Lookup Tables

This property is read-only.

SRS bandwidth configuration, as defined in TS 38.211 Table 6.4.1.4.3-1, returned as a constant 64-by-9 table. To display this table, type nrSRSConfig.BandwidthConfigurationTable at the command line.

This property is read-only.

Subcarrier offset configuration, as defined in TS 38.211 Table 6.4.1.4.3-2, returned as a constant 3-by-6 table. Use this property to determine the SRS subcarrier offset for each OFDM symbol and to obtain valid combinations of the number of OFDM symbols and the transmission comb number. To display this table, type nrSRSConfig.SubcarrierOffsetTable at the command line.

This property is read-only.

Frequency hopping offset indices for partial frequency sounding, as defined in TS 38.211 Table 6.4.1.4.3-3, returned as a constant 4-by-4 table. To display this table, type nrSRSConfig.StartRBHoppingTable at the command line.

Examples

collapse all

Configure the SRS and the carrier with default configuration parameters.

carrier = nrCarrierConfig;
srs = nrSRSConfig;

Generate SRS symbols and indices using the specified carrier and SRS configuration parameters.

srsSym = nrSRS(carrier,srs);
srsInd = nrSRSIndices(carrier,srs);

Create a carrier grid corresponding to the number of subcarriers, OFDM symbols, and number of antenna ports specified in the configuration objects.

K = carrier.NSizeGrid*12;       % Number of subcarriers
L = carrier.SymbolsPerSlot;     % Number of OFDM symbols per slot
P = srs.NumSRSPorts;  % Number of antenna ports
gridSize = [K L P];

Initialize the carrier grid for one slot with all zeros.

slotGrid = complex(zeros(gridSize));

Map the SRS symbols to the carrier grid using the indices.

slotGrid(srsInd) = srsSym;

Configure the carrier with default configuration parameters.

carrier = nrCarrierConfig;

Configure a two-port SRS transmission of 4 OFDM symbols.

srs = nrSRSConfig;
srs.NumSRSPorts = 2;
srs.NumSRSSymbols = 4;

The SRS must be located in the last six symbols of the slot. Set the time-domain starting position of the SRS to 8 and the bandwidth configuration index to 5.

srs.SymbolStart = 8;
srs.CSRS = 5; 

Generate SRS symbols for the specified carrier and SRS configuration parameters.

[sym,info] = nrSRS(carrier,srs);

Verify that the symbols vector contains two columns corresponding to the two-port transmission.

size(sym)
ans = 1×2

   480     2

Verify the number of SRS symbols per port.

isequal(info.SeqLength*srs.NumSRSSymbols,size(sym,1))
ans = logical
   1

References

[1] 3GPP TS 38.211. “NR; Physical channels and modulation.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Version History

Introduced in R2020a

expand all