# ltePDSCHIndices

Physical downlink shared channel (PDSCH) resource element indices

## Description

[ind,info] = ltePDSCHIndices(enb,chs,prbset) returns a matrix, ind, containing physical downlink shared channel (PDSCH) resource element (RE) indices and a structure, info, containing information related to the PDSCH indices. By default, the output indices are a one-based linear indexed 3D array representing the subframe resource element grid for all antenna ports. You can use ind to index elements of the subframe resource grid directly for all antenna ports. This function is initialized with cell-wide settings, enb, channel transmission configuration, chs, and physical resource block indices, prbset.

prbset contains the physical resource block (PRB) indices corresponding to the resource allocation for this PDSCH transmission. You can specify prbset as either a column vector or a two-column matrix. If you specify a column vector, the resource allocation is the same in both slots of the subframe. If the PRBs in the first and second slots of the subframe differ, you can use the two-column matrix to specify PRBs. The PRB indices are zero-based.

Each column of the returned N-by-P matrix, ind, contains the per-antenna indices for the N resource elements in each of the P resource array planes. For the 'Port0', 'TxDiversity', 'CDD', 'SpatialMux', and 'MultiUser' transmission schemes, P = enb.CellRefP. For the other transmission schemes, P = chs.NTxAnts. If chs.NTxAnts = 0 or is absent, ind is an N-by-NU matrix containing the per-layer indices for the N resource elements in each of NU resource array planes. The planes are associated with the layers, where NU = chs.NLayers.

The info structure contains parameter fields G and Gd. info.G provides the appropriate size of the DL-SCH coder output, which is required as the parameter outlen provided to the lteDLSCH function. info.Gd is the number of coded and rate-matched DL-SCH data symbols per layer, equal to the number of rows in the PDSCH indices. To provide accurate information in info, the Modulation, TxScheme, and Nlayers fields are required in chs.

Note

The Modulation and Nlayers fields are required only if the info output is assigned when you call the function.

example

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

## Examples

collapse all

This example generates the 0-based PDSCH resource element (RE) indices mapping in linear index form for the 4-antenna case.

Create the cell-wide settings structure, enb.

enb = lteRMCDL('R.14');
enb.NDLRB = 6;
enb.CFI = 1;
enb.PDSCH.PRBSet = (1:enb.NDLRB-1).';

Generate PDSCH RE indices, specifying the 0-based and linear options.

ind = ltePDSCHIndices(enb,enb.PDSCH, ...
enb.PDSCH.PRBSet,{'0based','ind'});
ind(1:10,:)
ans = 10x4 uint32 matrix

156   1164   2172   3180
157   1165   2173   3181
158   1166   2174   3182
159   1167   2175   3183
160   1168   2176   3184
161   1169   2177   3185
162   1170   2178   3186
163   1171   2179   3187
164   1172   2180   3188
165   1173   2181   3189

The result, ind, is a matrix of 0-based mapping indices in linear index form. Since this is example is for the 4-antenna case, ind, has 4 columns.

## 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. (${N}_{\text{RB}}^{\text{DL}}$)

NCellIDRequired

Integer from 0 to 503

Physical layer cell identity

CyclicPrefixOptional

'Normal' (default), 'Extended'

Cyclic prefix length

CellRefPRequired

1, 2, 4

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

NSubframeRequired

0 (default), nonnegative scalar integer

Subframe number

CFIRequired

1, 2, or 3
Scalar or if the CFI varies per subframe, a vector of length 10 (corresponding to a frame).

Control format indicator (CFI) value. In TDD mode, CFI varies per subframe for the RMCs ('R.0', 'R.5', 'R.6', 'R.6-27RB', 'R.12-9RB')

DuplexModeOptional

'FDD' (default), 'TDD'

Duplexing mode, specified as one of the following:

• 'FDD' — Frequency division duplex (default)

• 'TDD' — Time division duplex

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

TDDConfigOptional

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

SSCOptional

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

Special subframe configuration (SSC)

The following table shows enb structure fields only required when the transmission scheme chs.TxScheme is set to 'Port7-14'.

Parameter FieldRequired or OptionalValuesDescription
NFrameOptional

0 (default), nonnegative scalar integer

Frame number

CSIRSPeriodOptional

'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.

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.

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 only required if one or more of the above zero power subframe configurations is 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.

See [1].

Data Types: struct

PDSCH-specific channel transmission configuration, specified as a structure that can contain the following parameter fields.

Parameter FieldRequired or OptionalValuesDescription
TxSchemeOptional

'Port0' (default), 'TxDiversity', 'CDD', 'SpatialMux', 'MultiUser', 'Port5', 'Port7-8', 'Port8', 'Port7-14'.

PDSCH transmission scheme, specified as one of the following options.

Transmission schemeDescription
'Port0'Single antenna port, port 0
'TxDiversity'Transmit diversity
'CDD'Large delay cyclic delay diversity scheme
'SpatialMux'Closed loop spatial multiplexing
'MultiUser'Multi-user MIMO
'Port5'Single-antenna port, port 5
'Port7-8'Single-antenna port, port 7, when NLayers = 1. Dual layer transmission, ports 7 and 8, when NLayers = 2.
'Port8'Single-antenna port, port 8
'Port7-14'Up to eight layer transmission, ports 7–14

The following parameters apply when TxScheme is set to 'Port5', 'Port7-8', 'Port8', or 'Port7-14'.
NTxAntsOptional

Nonnegative integer, 0 (default)

Number of transmission antenna ports. This argument is only present for UE-specific demodulation reference symbols.

To provide accurate information in info, you are required to define TxScheme and the following additional parameters. These fields are only required when info is output.
ModulationOptional

'QPSK' (default), '16QAM', '64QAM', '256QAM', '1024QAM'

Codeword modulation format, specified as a character vector or string scalar for one codeword, or as cell array or string array for two codewords.

NLayersOptional

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

Number of transmission layers.

The number of layers is dependent on TxScheme.

Data Types: struct

Physical resource block indices, specified as a column vector or a two-column numeric matrix. This argument contains the Physical Resource Block (PRB) indices corresponding to the resource allocation for this PDSCH transmission. If you specify a column vector, the resource allocation is the same in both slots of the subframe. If the PRBs in the first and second slots of the subframe differ, you can use the two-column matrix to specify PRBs. The PRB indices are zero-based.

Data Types: double

Output format options for resource element indices, 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) :

Category Options Description

Indexing style

'ind' (default)

The returned indices are in linear index style.

'sub'

The returned indices are in [subcarrier,symbol,port] subscript row style.

Index base

'1based' (default)

The returned indices are one-based.

'0based'

The returned indices are zero-based.

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

Data Types: char | string | cell

## Output Arguments

collapse all

Physical downlink shared channel (PDSCH) resource element (RE) indices, specified as a matrix. Each column of the N-by-P matrix, ind, contains the per-antenna indices for the N resource elements in each of the P resource array planes. For the 'Port0', 'TxDiversity', 'CDD', 'SpatialMux', and 'MultiUser' transmission schemes, P = enb.CellRefP. For the other transmissions schemes, P = chs.NTxAnts. If chs.NTxAnts = 0 or is absent, the ind matrix is of size N-by-NU. In this case, indcontains the per-layer indices for the N resource elements in each of NU resource array planes associated with the layers, where NU = chs.NLayers. You can return the indices in alternative indexing formats using the argument opts.

Note

The active or zero-power CSI-RS resource elements are excluded from the output indices only for the Release 10/11, 'Port7-14' transmission scheme. For all other schemes, the CSI-RS resource element indices are not avoided, which results in a Release 8/9 compatible PDSCH. Any active or zero-power CSI-RS would overwrite the associated PDSCH REs later in the subframe construction.

Information related to PDSCH indices, returned as a structure. To provide accurate information in info, the channel transmission configuration structure, chs, must contain the fields TxScheme, Modulation, and NLayers. The structure info has the following fields.

Parameter FieldDescriptionValuesData Type
G

Number of coded and rate-matched DL-SCH data bits for each codeword.

one or two element vector

uint32

Gd

Number of coded and rate-matched DL-SCH data symbols per layer.

Integer equal to the number of rows in the PDSCH indices

uint32

## 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.