Main Content


Generate NPSS RE indices for subframe


ind = lteNPSSIndices(enb) generates ind, the narrowband primary synchronization signal (NPSS) resource element (RE) indices for cell-wide settings enb.

ind = lteNPSSIndices(enb,port) generates NPSS RE indices for the antenna port corresponding to the port input.


ind = lteNPSSIndices(enb,port,opts) generates NPSS RE indices for the specified antenna port in the format specified by opts.


collapse all

Generate zero-based NPSS RE indices for antenna port 2000.

Initialize cell-wide settings by specifying the operation mode, number of cell-specific RS antenna ports, physical layer cell identity, and subframe number.

enb.OperationMode = 'Inband-SamePCI';    % Operation mode
enb.CellRefP = 1;                        % Number of cell-specific RS antenna ports
enb.NCellID = 2;                         % Physical layer cell identity
enb.NSubframe = 5;                       % Subframe number

Specify the antenna port and generate the zero-based NPSS RE indices.

port = 0;
ind = lteNPSSIndices(enb,port,'0based');

Input Arguments

collapse all

Cell-wide settings, specified as a structure containing these fields.

NameRequired or OptionalValuesDescriptionData Types
OperationModeOptional'Standalone' (default), 'Inband-SamePCI', 'Inband-DifferentPCI', 'Guardband'

NB-IoT operation mode, specified as one of these values:

  • 'Standalone' – NB-IoT standalone operation within any 180-kHz band outside any LTE carrier bandwidth

  • 'Inband-SamePCI' – NB-IoT in-band operation with the same physical layer cell identity (PCI) as an LTE carrier

  • 'Inband-DifferentPCI' – NB-IoT in-band operation with a different PCI to an LTE carrier

  • 'Guardband' – NB-IoT guard-band operation utilizing unused resource blocks within the guard-band of an LTE carrier

char, string
NSubframeOptional5 (default), integerSubframe number. Because the NPSS is defined only for subframe 5, the function returns an empty array for any value of this field other than 5. This behavior enables resource grid indexing for any subframe number.double
NCellIDRequired when you specify OperationMode as 'Inband-SamePCI' or 'Inband-DifferentPCI'Integer in the interval [0, 503]PCIdouble
CellRefPRequired when you specify OperationMode as 'Inband-SamePCI' or 'Inband-DifferentPCI'1, 2, 4Number of cell-specific antenna portsdouble


To exclude cell reference signal (RS) locations, specify the NCellID and CellRefP fields. If you do not specify the NCellID and CellRefP fields, the function assumes that the cell RS is absent and generates NPSS values for all cell RS locations.

Data Types: struct

Antenna port, specified as 0 or 1, corresponding to antenna port 2000 or 2001, respectively.

Data Types: double

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.

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

NPSS RE indices for a subframe, returned as a complex-valued array. The array dimensions depend on the format options you specify in opts. To return ind as a column vector, specify 'ind' in the opts input. To return ind as an NRE-by-3 matrix, specify 'sub' in the opts input. If you specify the NSubframe field of the enb input as a value other than 5, the function returns this output as an empty array.

Data Types: uint32

Version History

Introduced in R2019a