Main Content

lteNPUSCHDRSIndices

Generate NPUSCH DRS RE indices

Since R2020a

Description

ind = lteNPUSCHDRSIndices(ue,chs) generates ind, a column vector of narrowband physical uplink shared channel (NPUSCH) demodulation reference signal (DRS) resource element (RE) indices. The function generates indices for mapping NPUSCH symbols to physical resources, as specified in section 10.1.4.2 of [1], for user equipment (UE) settings ue and channel transmission configuration chs.

example

ind = lteNPUSCHDRSIndices(ue,chs,opts) specifies opts, the format in which the function returns the NPUSCH DRS RE indices.

example

Examples

collapse all

Configure UE-specific settings.

ue = struct('NBULSubcarrierSpacing','15kHz');

Specify a channel transmission configuration.

chs =  struct('NPUSCHFormat','Data','NBULSubcarrierSet',0:11);

Generate and display the NPUSCH DRS RE indices for the specified settings.

ind = lteNPUSCHDRSIndices(ue,chs);
disp(ind')
    37    38    39    40    41    42    43    44    45    46    47    48

Configure UE-specific settings.

ue = struct('NBULSubcarrierSpacing','15kHz');

Specify a channel transmission configuration.

chs =  struct('NPUSCHFormat','Data','NBULSubcarrierSet',0:11);

Generate the NPUSCH DRS RE indices, specifying zero-based formatting.

ind = lteNPUSCHDRSIndices(ue,chs,'0based');

Input Arguments

collapse all

UE-specific settings, specified as a structure containing this field.

FieldValuesDescriptionData Types
NBULSubcarrierSpacing'3.75kHz', '15kHz'

NB-IoT uplink subcarrier spacing

To set a subcarrier spacing of 3.75 kHz, specify this field as '3.75kHz'. To set a subcarrier spacing of 15 kHz, specify this field as '15kHz'.

char, string

Data Types: struct

Channel transmission configuration, specified as a structure containing these fields.

FieldValuesDescriptionData Types
NPUSCHFormat'Data', 'Control'

NPUSCH format

To indicate that the NPUSCH carries narrowband uplink shared channel (UL-SCH) data, specify this field as 'Data'. To indicate that the NPUSCH carries uplink control information, specify this field as 'Control'.

char, string
NBULSubcarrierSetInteger in the interval [0, 47], vector of integers in the interval [0, 11]

NB-IoT uplink subcarrier indices, in zero-based form

If you specify the NPUSCHFormat field as 'Control', specify this field as an integer in the interval [0, 11].

If you specify the NPUSCHFormat field as 'Data' and the NBULSubcarrierSpacing field of the ue input as '3.75kHz', specify this field as an integer in the interval [0, 47].

If you specify the NPUSCHFormat field as 'Data' and the NBULSubcarrierSpacing field of the ue input as '15kHz', specify this field as a vector of integers in the interval [0, 11].

double

Data Types: struct

Output format and index base of generated indices, specified as one of these forms.

  • 'format base'

  • "format base"

  • {'format','base'}

  • ["format","base"]

Where format and base are defined in this table.

OptionValuesDescription
format'ind' (default), 'sub'

Output format of generated indices

To return the indices as a column vector, specify this option as 'ind'.

To return the indices as an NRE-by-3 matrix, where NRE is the number of REs, specify this option as 'sub'. Each row of the matrix contains the subcarrier, symbol, and antenna port as its first, second, and third element, respectively.

base'1based' (default), '0based'

Index base

To generate indices whose first value is 1, specify this option as '1based'. To generate indices whose first value is 0, specify this option as '0based'.

Example: 'ind 0based', "ind 0based", {'ind','0based'}, and ["ind","0based"] specify the same output options.

Data Types: char | string | cell

Output Arguments

collapse all

NPUSCH DRS RE indices, returned as an integer-valued column vector of length NRE equal to the number of REs.

Data Types: double

References

[1] 3GPP TS 36.211. “Physical channels and modulation.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Evolved Universal Terrestrial Radio Access (E-UTRA). https://www.3gpp.org.

Version History

Introduced in R2020a