Main Content

lteCSIRSIndices

CSI-RS resource element indices

Description

example

ind = lteCSIRSIndices(enb) returns the indices of the channel state information reference signal (CSI-RS) resource elements (RE) for the specified subframe. See lteCSIRSIndices Processing.

example

ind = lteCSIRSIndices(enb,opts) formats the returned indices using options specified by opts.

Examples

collapse all

Generate a column vector of CSI-RS resource element linear indices for ports 15 to 22 of a 10 MHz downlink subframe 0 resource grid.

Create a 10 MHz, downlink, subframe 0 configuration parameter structure. Set the number of antenna ports to 8, the CSI-RS configuration to 0, and Icsi-rs to 5.

rmc = lteRMCDL('R.2');
rmc.CSIRefP = 8;
rmc.CSIRSConfig = 0;
rmc.CSIRSPeriod = 5;

The 8 antenna ports are ports 15 to 22. The variable Icsi-rs = 5 is equivalent to a [Tcsi-rs Dcsi-rs] setting of [10 0].

csirs1 = lteCSIRSIndices(rmc);
csirs1(1:5)
ans = 5x1 uint32 column vector

   3010
   3022
   3034
   3046
   3058

This example shows how to generate a matrix of CSI-RS RE linear indices for ports 15 to 22 of a 10 MHz downlink subframe 0 resource grid.

Create a 10 MHz, downlink, subframe 0 configuration parameter structure. Set the number of antenna ports to 8, the CSI-RS configuration to 0, and Icsi-rs to 5.

rmc = lteRMCDL('R.2');
rmc.CSIRefP = 8;
rmc.CSIRSConfig = 0;
rmc.CSIRSPeriod = 5;

Generate a matrix of linear indices with eight columns.

csirs2 = lteCSIRSIndices(rmc,'mat');
size(csirs2)
ans = 1×2

    88     8

This example shows how to generate both used and unused CSI-RS RE linear indices for ports 15 to 22 of a 10 MHz downlink subframe 0 resource grid.

Create a 10 MHz, downlink, subframe 0 configuration parameter structure. Set the number of antenna ports to 8, the CSI-RS configuration to 0, and Icsi-rs to 5.

rmc = lteRMCDL('R.2');
rmc.CSIRefP = 8;
rmc.CSIRSConfig = 0;
rmc.CSIRSPeriod = 5;

The 8 antenna ports are ports 15 to 22. The variable Icsi-rs = 5 is equivalent to a [Tcsi-rs Dcsi-rs] setting of [10 0].

Generate both used and unused CSI-RS RE in all ports.

csirs3 = lteCSIRSIndices(rmc,'rs+unused');
csirs3(1:5)
ans = 5x1 uint32 column vector

   3010
   3022
   3034
   3046
   3058

Input Arguments

collapse all

eNodeB cell-wide settings, specified as a structure containing these parameter fields.

Parameter FieldRequired or OptionalValuesDescription
NDLRBRequired

Scalar integer from 6 to 110

Number of downlink resource blocks (NRBDL)

NSubframeRequired

0 (default), nonnegative scalar integer

Subframe number

NFrameOptional

0 (default), nonnegative scalar integer

Frame number

CellRefP is only used when the Indexing format option for indexing generation is'rs+unused'
  CellRefPOptional

1 (default), 2, 4

Number of cell-specific reference signal (CRS) antenna ports

CyclicPrefixOptional

'Normal' (default), 'Extended'

Cyclic prefix length

DuplexModeOptional

'FDD' (default), 'TDD'

Duplexing mode, specified as either:

  • 'FDD' for Frequency Division Duplex

  • 'TDD' for Time Division Duplex

The following apply when DuplexMode is set to 'TDD'.

  TDDConfigOptional

0, 1 (default), 2, 3, 4, 5, 6

Uplink–downlink configuration

  SSCOptional

0 (default), 1, 2, 3, 4, 5, 6, 7, 8, 9

Special subframe configuration (SSC)

CSIRSPeriodOptional

'On' (default), 'Off', Icsi-rs (0,...,154), [Tcsi-rs Dcsi-rs]. You can also specify values in a cell array of configurations for each resource.

See note.

CSI-RS subframe configurations for one or more CSI-RS resources. Multiple CSI-RS resources can be configured from a single common subframe configuration or from a cell array of configurations for each resource.

The following CSI-RS resource parameters apply only when CSIRSPeriod sets one, or more CSI-RS subframe configurations to any value other than 'Off'. Each parameter length must be equal to the number of CSI-RS resources required.

  CSIRSConfigRequired

Nonnegative scalar integer

Array CSI-RS configuration indices. See TS 36.211, Table 6.10.5.2-1.

  CSIRefPRequired

1 (default), 2, 4, 8

Array of number of CSI-RS antenna ports

ZeroPowerCSIRSPeriodOptional

'Off' (default), 'On', Icsi-rs (0,...,154), [Tcsi-rs Dcsi-rs]. You can also specify values in a cell array of configurations for each resource.

See note.

Zero power CSI-RS subframe configurations for one or more zero power CSI-RS resource configuration index lists. Multiple zero power CSI-RS resource lists can be configured from a single common subframe configuration or from a cell array of configurations for each resource list.

The following zero power CSI-RS resource parameter is required only if one, or more of the other zero power subframe configurations are set to any value other than 'Off'.

  ZeroPowerCSIRSConfigRequired

16-bit bitmap character vector or string scalar (truncated if not 16 bits or '0' MSB extended), or a numeric list of CSI-RS configuration indices. You can also specify values in a cell array of configurations for each resource.

Zero power CSI-RS resource configuration index lists (TS 36.211 Section 6.10.5.2). Specify each list as a 16-bit bitmap character vector or string scalar (if less than 16 bits, then '0' MSB extended), or as a numeric list of CSI-RS configuration indices from TS 36.211 Table 6.10.5.2-1 in the '4' CSI reference signal column. Multiple lists can be defined using a cell array of individual lists.

Note:

  1. The CSIRSPeriod and ZeroPowerCSIRSPeriod parameters control the downlink subframes in which the different CSI-RS resources are present. Valid settings include:

    • Always 'On'

    • Always 'Off'

    • Scalar subframe configuration index Icsi-rs from 0 through 154

    • Explicit subframe periodicity and offset pair [Tcsi-rs Dcsi-rs]

    To locate the subframes containing CSI-RS, use the NSubframe parameter and the optional NFrame parameter. NSubframe can be greater than 10. Thus NSubframe = 11 is equivalent to setting NSubframe to 1 and NFrame to 1.

    For more information, see TS 36.211 [1], Section 6.10.5.3.

Index generation options, specified as a character vector, cell array of character vectors, or string array. For convenience, you can specify several options as a single character vector or string scalar by a space-separated list of values placed inside the quotes. Values for opts when specified as a character vector include (use double quotes for string):

OptionValuesDescription
Indexing style

'ind' (default), 'mat', 'sub'

Style for the returned indices, specified as one of the following options.

  • 'ind' — returns the indices as an NRE-by-1 vector (default)

  • 'mat' — returns the indices as a matrix. If not precoded, each column contains indices for an individual layer/port. If precoded, each column contains symbols for a transmit antenna. To form a matrix, a column can contain duplicate entries.

  • 'sub' — returns the indices as an NRE-by-3 matrix. in [subcarrier, symbol, antenna] subscript row style.

NRE is the number of resource elements.

Index base

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

Base value of the returned indices. Specify '1based' to generate indices where the first value is 1. Specify '0based' to generate indices where the first value is 0.

Indexing format

'rsonly' (default), 'rs+unused'

Format for the returned locations, specified as one of the following options.

  • 'rsonly' — returns only defined CSI-RS locations (default), both zero and non-zero

  • 'rs+unused' — also includes zeros for the resource element (RE) locations that should be unused because they are reserved for CSI-RS on another port.

Note

Returned indices specify the CSI-RS resource values within an N-by-M-by-antennas array. Where the number of antennas is max(CSIRefP) or if zero power CSI-RS are also defined number of antennas is max(max(CSIRefP),4). In the case of the 'rs+unused' option, the number of antennas used to define the empty REs (either because they are zero power or they are unused in another port) is max(max(CSIRefP),CellRefP).

Example: 'ind rsonly', "ind rsonly", {'ind','rsonly'}, or ["ind","rsonly"] specify the same formatting options.

Data Types: char | string | cell

Output Arguments

collapse all

Channel state information reference signal (CSI-RS) indices, returned as a vector or matrix. See lteCSIRSIndices Processing.

Data Types: uint32

More About

collapse all

lteCSIRSIndices Processing

The lteCSIRSInidices function supports the creation of multiple non-zero power resources and zero power CSI-RS.

By default the output indices as re returned as a column vector in one-based linear indexing form, that can directly index elements in an N-by-M-by-max(CSIRefP) array. These indices represent the subframe grid across max(CSIRefP) antenna ports (p = 15,...,22). Other index representations can also be created as well as whether the output includes the RE that should be empty in a specific port because of CSI-RS transmissions in another port. These indices are ordered as the complex CSI-RS symbols should be mapped and do not include any elements allocated to PBCH, PSS, and SSS. You can define the CSI-RS subframe configuration schedule as required for the CSI-RS resources. If the subframe contains no CSI-RS, then an empty vector is returned. When multiple non-zero power and zero power CSI-RS are returned, the indices for the zero power CSI-RS appear first in the concatenated output, followed by the indices for the ordered set of CSI-RS resources.

References

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

Version History

Introduced in R2014a