lteNPDSCHIndices

Get NPDSCH RE indices

Description

example

[ind,info] = lteNPDSCHIndices(enb,chs) returns ind, an array containing narrowband physical downlink shared channel (NPDSCH) resource element (RE) indices, and info, a structure containing information related to the indices. You can use ind to index elements of the subframe resource grid directly for all antenna ports in accordance with Section 10.2.3.4 of [1]. Initialize this function with cell-wide settings enb and channel transmission configuration chs.

example

[ind,info] = lteNPDSCHIndices(enb,chs,opts) formats the returned indices using options specified by opts.

Examples

collapse all

Generate the NPDSCH RE indices mapping for one antenna and display related information.

Create the eNodeB structure cell-wide settings for one antenna.

enb.NNCellID = 10;
enb.NBRefP = 1;
enb.OperationMode = 'Inband-SamePCI';

Create the channel transmission configuration. Specify the number of subframes (NSF). The NSF field is required for returning information related to the NPDSCH indices.

chs.NPDSCHDataType = 'BCCHNotSIB1NB';
chs.NSF = 2;

Generate the NPDSCH RE indices column vector. Display the first seven indices.

[ind,info] = lteNPDSCHIndices(enb,chs);
ind(1:7)
ans = 7×1

    37
    38
    39
    40
    41
    42
    43

Display the fields contained in the info structure.

info.G
ans = 472
info.Gd
ans = 236

Generate the NPDSCH RE 0-based indices mapping in linear index form for two antennas.

Create the eNodeB structure cell-wide settings for two antennas.

enb.NNCellID = 10;
enb.NBRefP = 2;
enb.OperationMode = 'Standalone';

Create the channel transmission configuration.

chs.NPDSCHDataType = 'SIB1NB';

Generate the 0-based NPDSCH RE indices in linear index form. The indices matrix has two columns, one for each antenna ports. Display the first seven indices.

ind = lteNPDSCHIndices(enb,chs,{'0based','ind'});
ind(1:7,:)
ans = 7×2

     0   168
     1   169
     2   170
     3   171
     4   172
     5   173
     6   174

Input Arguments

collapse all

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

NameRequired or OptionalValuesDescriptionDependenciesData Types
NNCellIDRequiredNonnegative integerNarrowband physical layer cell identity (PCI)double
NBRefPRequired1, 2Number of narrowband reference signal (NRS) antenna portsdouble
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 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
CellRefPOptional1, 2, 4Number of cell-specific reference signal (CRS) antenna ports. The value of this field must be either the value to which you set the NBRefP field (default) or 4.This field applies only when you specify the OperationMode field as 'Inband-SamePCI' or 'Inband-DifferentPCI'. When you specify the OperationMode field as 'Inband-SamePCI', the lteNPDSCHIndices function sets this field to the value of the NBRefP field.double
ControlRegionSizeSee Dependencies column3 (default), scalar in the interval [0, 13]LTE control region size. This field sets the starting OFDM symbol index (zero-based) in a subframe.
  • This field is required when you specify the OperationMode field as 'Inband-SamePCI' or 'Inband-DifferentPCI' and the NPDSCHDataType field of the chs input as a value other than 'SIB1NB'.

  • The lteNPDSCHIndices function sets this field to 3 when you specify the OperationMode field as 'Inband-SamePCI' or 'Inband-DifferentPCI' and the NPDSCHDataType field of the chs input as 'SIB1NB'.

  • The lteNPDSCHIndices function sets this field to 0 when you specify the OperationMode field as 'Standalone' or 'Guardband'.

double

Data Types: struct

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

NameRequired or OptionalValuesDescriptionDependenciesData Types
NPDSCHDataTypeOptional'NotBCCH', 'SIB1NB', 'BCCHNotSIB1NB'

Type of data carried by the NPDSCH, specified as one of these values:

  • 'NotBCCH' – The NPDSCH is not carrying the broadcast control channel (BCCH).

  • 'SIB1NB' – The NPDSCH is carrying system information block 1 narrowband (SIB1-NB).

  • 'BCCHNotSIB1NB' – The NPDSCH is carrying the BCCH but not SIB1-NB.

char, string
NSFSee Dependencies columnNonnegative integerNumber of subframes to which a codeword is mapped, not including repetitions

  • This field is required when you specify the NPDSCHDataType field as a value other than 'SIB1NB' and return the info output.

  • The lteNPDSCHIndices function sets this field to 8 when you specify the NPDSCHDataType field as 'SIB1NB' and return the info output.

  • If you do not return the info output, the lteNPDSCHIndices function ignores this field.

double

Data Types: struct

Output format and index base of generated indices, specified as a character vector, a cell array of character vectors, or a string array. You can specify these options as a single character vector or string scalar by a space-separated list of values placed inside quotation marks. This field can contain any of these values:

OptionValuesDescription
Output format'ind' (default), 'sub'Output format of generated indices, specified as 'ind' or 'sub'. The function returns the indices as a column vector when you specify 'ind'. The function returns the indices as an NRE-by-3 matrix when you specify 'sub', where NRE is the number of resource elements. Each row of the matrix contains the subcarrier, symbol, and antenna port as its first, second, and third entries, respectively.
Index base'1based' (default), '0based'Index base, specified as '1based' or '0based'. To generate indices whose first value is 1, specify '1based'. To generate indices whose first value is 0, specify '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

NPDSCH RE indices, returned as an NRE-by-P real-valued matrix, where NRE is the number of resource elements and P is the number of resource array planes. Each column of ind contains the per-antenna indices for the NRE resource elements in each of the P resource array planes.

Data Types: double

Information related to NPDSCH indices, returned as a structure containing these fields:

NameValuesDescriptionData Types
GscalarNumber of coded and rate-matched downlink shared channel (DL-SCH) data bits for a codeworddouble
GdintegerNumber of DL-SCH data symbols per layer. The lteNPDSCHIndices function returns Gd as the value of the NSF field of the chs input multiplied by the number of rows in the ind output.double

Data Types: struct

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). URL: https://www.3gpp.org.

Introduced in R2018a