ltePUCCH1DRSIndices

PUCCH format 1 DRS resource element indices

Syntax

• ``ind = ltePUCCH1DRSIndices(ue,chs)``
example
• ``````[ind,info] = ltePUCCH1DRSIndices(ue,chs)``````
example
• ``[___] = ltePUCCH1DRSIndices(ue,chs,opts)``
example

Description

example

````ind = ltePUCCH1DRSIndices(ue,chs)` returns a matrix of resource element indices for the demodulation reference signal (DRS) associated with PUCCH format 1 transmission given structures containing the UE-specific settings, and the channel transmission configuration settings.```

example

``````[ind,info] = ltePUCCH1DRSIndices(ue,chs)``` also returns a PUCCH information structure array, `info`.```

example

````[___] = ltePUCCH1DRSIndices(ue,chs,opts)` formats the returned indices using the option strings defined in a cell array, `opts`. This syntax supports output options from prior syntaxes.```

Examples

collapse all

Generate PUCCH Format 1 DM-RS Indices

Generate PUCCH format 1 DM-RS RE indices for a 1.4 MHz bandwidth and PUCCH resource index 0. Use default values for all other parameters.

Initialize UE-specific and channel configuration structures. Generate PUCCH format 1 DM-RS indices.

```ue.NULRB = 6; ue.CyclicPrefixUL = 'Normal'; chs.ResourceIdx = 0; chs.DeltaShift = 1; chs.CyclicShifts = 0; chs.ResourceSize = 0; ind = ltePUCCH1DRSIndices(ue,chs); ind(1:4) ```
```ans = 145 146 147 148 ```

Generate PUCCH Format 1 DM-RS Indices for Two Antennas

Generate the PUCCH format 1 DM-RS indices for two transmit antenna paths.

Initialize UE-specific and channel configuration structures. Generate PUCCH1 DRS indices and information outputs.

```ue.NULRB = 6; ue.CyclicPrefixUL = 'Normal'; chs.ResourceIdx = [0 4]; chs.ResourceSize = 0; chs.DeltaShift = 1; chs.CyclicShifts = 0; [ind,info] = ltePUCCH1DRSIndices(ue,chs); ```

Becasue there are two antennas, the DM-RS indices are output as a two-column vector, and the `info` output structure contains two elements. View `ind` and the size of `info` to confirm this.

```ind(1:6,:) size(info) ```
```ans = 145 1153 146 1154 147 1155 148 1156 149 1157 150 1158 ans = 1 2 ```

View the contents of the two `info` structure elements.

```info(1) info(2) ```
```ans = PRBSet: [0 5] RBIdx: 0 ans = PRBSet: [0 5] RBIdx: 0 ```

Generate PUCCH Format 1 DM-RS Indices for Two Antennas Varying Indexing Style

Generate the PUCCH format 1 DM-RS indices for two transmit antenna paths, and output in subscript indexing form.

Initialize UE-specific and channel configuration structures, and the indexing option parameter. Generate PUCCH1 DM-RS indices and information outputs.

```ue.NULRB = 6; ue.CyclicPrefixUL = 'Normal'; chs.ResourceIdx = [0 4]; chs.ResourceSize = 0; chs.DeltaShift = 1; chs.CyclicShifts = 0; opts = {'sub'}; [ind,info] = ltePUCCH1DRSIndices(ue,chs,opts); ```

Using 'sub' indexing style, the indices are output in [subcarrier, symbol, antenna] subscript form. View the midpoint of ind and observe the antenna index change.

```size(ind) ind(70:74,:) size(info) ```
```ans = 144 3 ans = 70 12 1 71 12 1 72 12 1 1 3 2 2 3 2 ans = 1 2 ```

Because there are two antennas, the info output structure contains two elements. View one of the `info` structure elements.

```info(1) ```
```ans = PRBSet: [0 5] RBIdx: 0 ```

Input Arguments

collapse all

`ue` — UE-specific settingsstructure

UE-specific settings, specified as a structure containing these fields.

`NULRB` — Number of uplink resource blocksnonnegative integer

Number of uplink resource blocks, specified as a nonnegative integer.

`CyclicPrefixUL` — Cyclic prefix length for uplink channels`'Normal'` (default) | optional | `'Extended'`

Cyclic prefix length for uplink channels, specified as `'Normal'` or `'Extended'`.

Data Types: `char`

`chs` — Channel transmission configurationstructure

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

`ResourceIdx` — PUCCH resource indices0 (default) | optional | 0,...,2047 | integer | vector of integers

PUCCH resource indices, specified as an integer or a vector of integers. Values range from 0 to 2047. These indices determine the physical resource blocks, cyclic shift and orthogonal cover used for transmission. (${n}_{PUCCH}^{\left(1\right)}$). Define one index for each transmission antenna.

`ResourceSize` — Size of resources allocated to PUCCH format 20 (default) | optional | 0,...,98 | integer

Size of resources allocated to PUCCH format 2, specified as an integer from 0 to 98. This parameter affects the location of this transmission. (${N}_{RB}^{\left(2\right)}$)

`DeltaShift` — Delta shift1 (default) | optional | 2 | 3

Delta shift, specified as 1, 2, or 3. (Δshift)

`CyclicShifts` — Number of cyclic shifts used for format 10 (default) | optional | 0,...,7 | integer

Number of cyclic shifts used for format 1 in resource blocks (RBs) with a mixture of format 1 and format 2 PUCCH, specified as an integer from 0 to 7. (${N}_{cs}^{\left(1\right)}$)

Data Types: `struct`

`opts` — Output format options for element resource indices{`'ind'`, `'1based'`} (default) | optional | string | cell array of strings

Output format options for element resource indices, specified as a string or a cell array of strings. You can specify a format for the Indexing style and Index base.

Category Options Description

Indexing style

`'ind' (default)`

The returned indices are in linear index form.

`'sub'`

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

Index base

`'1based' (default)`

Indices returned are one-based.

`'0based'`

Indices returned are zero-based.

Example: `{'sub','0based'}` returns zero-based indices in subscript row form.

Output Arguments

collapse all

`ind` — Resource element indicesinteger column vector | three-column integer matrix

Resource element indices, returned as an integer column vector or a three-column integer matrix. By default the indices are returned in one-based linear indexing form that can directly index elements of a resource matrix. These indices are ordered according to PUCCH format 1 DRS modulation symbol mapping. The `opts` input offers alternative indexing formats. The indices for each antenna are in the columns of `ind`, with the number of columns determined by the number of PUCCH resource indices specified in `chs``.``ResourceIdx`.

Example: [145,146,147,...]

`info` — PUCCH format 1 DRS informationstructure array

PUCCH format 1 DRS information, returned as a structure array with elements corresponding to each transmit antenna and containing these fields.

`PRBSet` — Indices occupied by PRB in each slot of subframenonnegative integer vector

Indices occupied by PRB in each slot of the subframe, returned as a nonnegative integer vector. The indices are zero-based.

Example: [0,5]

`RBIdx` — PUCCH logical resource block indexnonnegative integer

PUCCH logical resource block index, returned as a nonnegative integer. (m)

Data Types: `struct`