Contenuto principale

ltePSCCHDRSIndices

PSCCH DM-RS resource element indices

Description

ind = ltePSCCHDRSIndices(ue) returns a column vector of PSCCH demodulation reference signal (DM-RS) resource element indices for the specified UE settings structure. For more information, see PSCCH Demodulation Reference Signal Indexing.

example

ind = ltePSCCHDRSIndices(ue,opts) formats the returned indices using options specified by opts.

example

Examples

collapse all

Write the complex PSCCH DM-RS values into the PSCCH DM-RS resource elements in a PSCCH subframe for both D2D normal cyclic prefix and V2X. Display an image of their locations to compare both sidelink modes.

Create a user equipment settings structure and an empty resource grid subframe for 10 MHz bandwidth and D2D normal cyclic prefix. Assign a PRB set index of 5.

ue.NSLRB = 50;
ue.CyclicPrefixSL = 'Normal';
ue.NSLID = 1;
subframe_D2D = lteSLResourceGrid(ue);
ue.PRBSet = 5;

Generate PSCCH DM-RS indices and write PSCCH DM-RS values into subframe.

pscchdrs_indices = ltePSCCHDRSIndices(ue);
subframe_D2D(pscchdrs_indices) = ltePSCCHDRS();

Change user equipment settings to V2X sidelink mode. Assign a PRB set indices of 5 and 6.

ue.SidelinkMode = 'V2X';
subframe_V2X = lteSLResourceGrid(ue);
ue.PRBSet = [5 6]';

Generate PSCCH DM-RS indices and write PSCCH DM-RS values into subframe.

pscchdrs_indices = ltePSCCHDRSIndices(ue);
subframe_V2X(pscchdrs_indices) = ltePSCCHDRS(ue);

Display the PSCCH DM-RS locations for both sidelink modes.

subplot(2,1,1);
imagesc(100*abs(subframe_D2D))
axis xy
title('D2D');
subplot(2,1,2);
imagesc(100*abs(subframe_V2X)); 
axis xy; 
title(ue.SidelinkMode)

Figure contains 2 axes objects. Axes object 1 with title D2D contains an object of type image. Axes object 2 with title V2X contains an object of type image.

Compare PSCCH DM-RS resource element indexing formats.

Create a UE settings structure.

ue = struct('NSLRB',15,'CyclicPrefixSL','Normal','PRBSet',5);

One-based linear indexing, this is the default output style

Generate PSCCH DM-RS indices, using the default one-based linear indexing style.

ind1 = ltePSCCHDRSIndices(ue);
ind1(1)
ans = uint32

601

Zero-based linear indexing

Generate PSCCH DM-RS indices, using zero-based linear indexing style.

opts = '0based';
ind0 = ltePSCCHDRSIndices(ue,opts);
ind0(1)
ans = uint32

600

For zero-based indexing, the first assigned index is one lower than the one-based indexing.

One-based indexing in [subcarrier,symbol,port] subscript row style

Generate PSCCH DM-RS indices, one-based subscript row style.

opts = {'sub','1based'};
ind1sub = ltePSCCHDRSIndices(ue,opts);
size(ind1sub)
ans = 1×2

    24     3

ind1sub(1,:)
ans = 1×3 uint32 row vector

   61    4    1

The subscript row style outputs a 24-by-3 matrix. Viewing the first row you can see symbol number 4 is occupied.

Two PSCCH subframe symbols are reserved for transmission of the PSCCH DM-RS. Inspecting the output matrix for unique symbol values, shows that the PSCCH DM-RS occupy symbols 4 and 11 for one-based indexing.

unique(ind1sub(:,2,:))
ans = 2×1 uint32 column vector

    4
   11

Input Arguments

collapse all

User equipment settings, specified as a parameter structure containing these fields:

Sidelink mode, specified as 'D2D' or 'V2X'.

Data Types: char | string

Number of sidelink resource blocks, specified as an integer scalar from 6 to 110.

Example: 6, which corresponds to a channel bandwidth of 1.4 MHz.

Data Types: double

Cyclic prefix length, specified as 'Normal' or 'Extended'.

Data Types: char | string

Zero-based physical resource block (PRB) index, specified as an integer, an integer column vector, or a two-column integer matrix.

For D2D sidelink, the PSCCH is intended to be transmitted in a single PRB in a subframe and therefore, specifying PRBSet as a scalar PRB index is recommended. For V2X sidelink, the PSCCH is intended to be transmitted in a pair of consecutive PRB in a subframe, therefore PRBSet must be a column vector containing two consecutive indices. However, for a more general nonstandard multi-PRB allocation, PRBSet can be a set of indices specified as an integer column vector or as a two-column integer matrix corresponding to slot-wise resource allocations for PSCCH.

Data Types: double

Data Types: struct

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

PSCCH DM-RS resource element indices, returned as an integer column vector or a three-column integer matrix. For D2D sidelink, the returned vector or matrix has 24 PSCCH DM-RS resource element indices. For a V2X configured PSCCH, ind is a 96-by-1 vector with indices of the resource elements in the four DRS symbols in a subframe. For more information, see PSCCH Demodulation Reference Signal Indexing.

Data Types: uint32

More About

collapse all

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 R2016b