ltePMISelect

PDSCH precoder matrix indicator calculation

Description

example

[pmiset,info,sinrs,subbandsinrs] = ltePMISelect(enb,chs,hest,noiseest) performs PDSCH precoder matrix indication (PMI) set calculation for the given cell-wide settings, enb, channel configuration structure, chs, channel estimate resource array, hest, and receiver noise variance, noiseest. For more information, see PMI Selection.

Examples

collapse all

This example shows PMI selection and configuration of a downlink transmission with the selected PMI set.

Populate an empty resource grid for RMC R.13 with cell specific reference signal symbols. OFDM modulate the grid to create txWaveform. Initialize channel configuration structure. Pass txWaveform through channel and demodulate rxWaveform to recover rxSubframe

enb = lteRMCDL('R.13');
enb.PDSCH.PMIMode = 'Subband';
reGrid = lteResourceGrid(enb);
reGrid(lteCellRSIndices(enb)) = lteCellRS(enb);

[txWaveform,info] = lteOFDMModulate(enb,reGrid);

chcfg.SamplingRate = info.SamplingRate;
chcfg.DelayProfile = 'EPA';
chcfg.NRxAnts = 4;
chcfg.DopplerFreq = 5;
chcfg.MIMOCorrelation = 'Low';
chcfg.InitTime = 0;
chcfg.Seed = 1;

rxSubframe = lteOFDMDemodulate(enb,rxWaveform);

Initialize channel estimation structure. Perform channel estimation. Use estimates of the channel and noise power spectral density for PMI selection. This PMI set is then used to configure a downlink transmission.

cec.FreqWindow = 1;
cec.TimeWindow = 31;
cec.InterpType = 'cubic';
cec.PilotAverage = 'UserDefined';
cec.InterpWinSize = 1;
cec.InterpWindow = 'Centered';

[hest, noiseEst] = lteDLChannelEstimate(enb,cec,rxSubframe);

pmi = ltePMISelect(enb,enb.PDSCH,hest,noiseEst)
pmi = 9×1

1
1
6
2
12
12
12
12
12

enb.PDSCH.PMISet = pmi;
txWaveform = lteRMCDLTool(enb,[1;0;0;1]);

Input Arguments

collapse all

Cell-wide settings, specified as a structure containing the following 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

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 parameters 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 parameters apply when DuplexMode is set to 'TDD' or chs.TxScheme is set to 'Port7-14'

NSubframeRequired

0 (default), nonnegative scalar integer

Subframe number

The following parameters apply when chs.TxScheme is set to 'Port7-14' transmission scheme.

CSIRefPRequired

1, 2, 4

Array of number of CSI-RS antenna ports

CSIRSConfigRequired

Scalar integer

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

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.

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.

NframeOptional

0 (default), nonnegative scalar integer

Frame number

Data Types: struct

Channel transmission configuration, specified as a structure containing the following fields:

Parameter FieldRequired or OptionalValuesDescription
NLayersRequired

Integer from 1 to 8

Number of transmission layers.

PMIModeOptional

'Wideband' (default), 'Subband'

PMI reporting mode. PMIMode='Wideband' corresponds to PUSCH reporting Mode 1-2 or PUCCH reporting Mode 1-1 (PUCCH Report Type 2) and PMIMode='Subband' corresponds to PUSCH reporting Mode 3-1.

TxSchemeOptional

'Port0', 'TxDiversity', 'CDD', 'SpatialMux' (default), '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

CodebookSubsetOptional

Character vector, string scalar, or integer vector, all ones (default)

Codebook subset restriction, specified as a character vector or string scalar bitmap. The default values are all ones, permitting all PMI values. This parameter is configured by higher layers and indicates the values of PMI that can be reported. The bitmap, defined in TS 36.213, Section 7.2, is arranged a_A-1,a_A-2,...a_0. For example, the element CodebookSubset(1) corresponds to a_A-1 and the element CodebookSubset(end) corresponds to a_0. The length of the bitmap is given by the info.CodebookSubsetSize field returned by ltePMIInfo. You can also specify the bitmap in a hexadecimal form by adding the prefix '0x'. Alternatively, you can specify a numeric array identical to the pmiset output, indicating to restrict the selection to only those pmiset values. Specifying the parameter in this way enables you to obtain SINR estimates against an existing reported PMI for RI and CQI selection. If this parameter field is defined but is empty, no codebook subset restriction is applied. (codebookSubsetRestriction)

The following parameter applies for 'Port7-14' transmission scheme with CSIRefP equal to 4, or for 'Port7-8' or 'Port8' transmission scheme with CellRefP equal to 4.

AltCodebook4Tx Optional

'Off' (default), 'On'

If set to 'On', enables the alternative codebook for CSI reporting with four antennas defined in TS 36.213, Tables 7.2.4-0A to 7.2.4-0D. The default is 'Off'. (alternativeCodeBookEnabledFor4TX-r12)

Data Types: struct

Channel estimate, specified as a multidimensional array of size K-by-L-by-NRxAnts-by-P where:

• K is the number of subcarriers.

• L is the number of OFDM symbols.

• NRxAnts is the number of received antennas.

• P is the number of planes.

Data Types: double
Complex Number Support: Yes

Receiver noise variance, specified as a numeric scalar. This input argument specifies an estimate of the received noise power spectral density.

Data Types: double

Output Arguments

collapse all

Precoder matrix indications (PMI) set selected, returned as a column vector or an integer.

• For the 'Port7-14' transmission scheme with eight CSI-RS ports, or for CSI reporting with the alternative codebook for four antennas, pmiset has info.NSubbands + 1 rows. The first row indicates wideband codebook index i1. The subsequent info.NSubbands rows indicate the subband codebook indices i2 or if info.NSubbands = 1, the wideband codebook index i2.

• For other numbers of CSI-RS ports in the 'Port7-14' transmission scheme, and for other transmission schemes, pmiset has info.NSubbands rows. Each row gives the subband codebook index for that subband.

• For wideband reporting (info.NSubbands = 1), pmiset is a scalar specifying the selected wideband codebook index.

Note

pmiset is empty if the noise estimate, noiseest, is zero or NaN, or if the channel estimate, hest, contains any NaNs in the locations of the reference signal REs used for PMI estimation.

Information related to PMI reporting, returned as a scalar structure. info contains the following fields:

Parameter FieldDescriptionValues
k

Subband size, in resource blocks (equal to NRB for wideband PMI reporting or transmission schemes without PMI reporting).

numeric scalar
NSubbands

Number of subbands for PMI reporting (equal to 1 for wideband PMI reporting) or transmission schemes without PMI reporting.

numeric scalar
MaxPMI

Maximum permitted PMI value for the given configuration. Valid PMI values range from 0 to MaxPMI. For CSI reporting, when CSIRefP = 8, or for CSI reporting with the alternative codebook for four antennas,MaxPMI is a 2–element vector, indicating the maximum permissible values of i1 and i2, the first and second codebook indices. For transmission schemes without PMI reporting, MaxPMI = 0.

nonnegative numeric scalar
CodeBookSubsetSize

Size of the codebook subset restriction bitmap. For transmission schemes without PMI reporting, CodebookSubsetSize=0.

scalar

Signal to interference plus noise ratios, returned as a multidimensional array of size K-by-L-by-N1-by-N2, where:

• K is the number of subcarriers

• L is the number of OFDM symbols

• Definition of N1 and N2 depends on the CSI-RS ports:

• For the 'Port7-14' transmission scheme with eight CSI-RS ports, or for CSI reporting with the alternative codebook for four antennas, N1 and N2 are the number of possible first and second codebook indices:

• N1 is info.MaxPMI(1) + 1

• N2 is info.MaxPMI(2) + 1

• For other numbers of CSI-RS ports in the 'Port7-14' transmission scheme, and for other transmission schemes:

• N1 is 1

• N2 is info.MaxPMI + 1

The array contains non-NaN values in the time and frequency locations (first two dimensions) of the reference signal REs. This array is used for PMI estimation for all possible codebook indices (last two dimensions). These values are the calculated sinrs in the reference signal RE locations for each codebook index combination. You can obtain the values using a linear MMSE SINR metric. All locations not corresponding to a reference signal RE are set to NaN.

Subband signal-to-interference plus noise ratios (sinrs), returned as an info.NSubbands-by-N1-by-N2-by-chs.NLayers array. This array indicates the average linear SINR in the subband specified for each possible PMI value (N1 and N2 dimensions) and each layer. The sinrs output is formed by summing a 5–dimensional K-by-L-by-N1-by-N2-by-chs.NLayers estimate of the sinrs across all the layers. subbandsinrs is formed by averaging that same five-dimensional estimate across each subband that is in the appropriate region of the K dimension and across the L dimension. Dimensionality described in sinrs applies here.

collapse all

PMI Selection

PDSCH precoder matrix indication (PMI) selection calculates a PMI set, pmiset. Functions, such as lteRMCDLTool or ltePDSCH, can use the returned pmiset to configure the PMI for downlink transmissions they generate. PMI selection is performed using the PMI definitions specified in TS 36.213, Section 7.2.4.

• The CSI reporting codebook is used for:

• 'Port7-14' transmission scheme with eight CSI-RS ports

• CSI reporting with the alternative codebook for four antennas (alternativeCodeBookEnabledFor4TX -r12  = true).

• The codebook for closed-loop spatial multiplexing, defined in TS 36.211 Tables 6.3.4.2.3-1 and 6.3.4.2.3-2, is used for other cases.

The PMI feedback type associated with the PMI selection process can be wideband or subband:

• PMIMode = 'Wideband' corresponds to PUSCH reporting Mode 1-2 or PUCCH reporting Mode 1-1 (PUCCH Report Type 2).

• PMIMode = 'Subband' corresponds to PUSCH reporting Mode 3-1.

PMI selection is based on the rank indicated by chs.NLayers, except for 'TxDiversity' transmission scheme, where the rank is 1. In PUCCH reporting Mode 1-1, you can achieve codebook subsampling for submode 2, as specified in TS 36.213, Table 7.2.2-1D, with an appropriate chs.CodebookSubset.

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.

[2] 3GPP TS 36.213. “Evolved Universal Terrestrial Radio Access (E-UTRA); Physical layer procedures.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network. URL: https://www.3gpp.org.

Version History

Introduced in R2014a