# ltePUCCH2

Physical uplink control channel format 2

## Syntax

• ``sym = ltePUCCH2(ue,chs,bits)``
example
• ``````[sym,info] = ltePUCCH2(ue,chs,bits)``````
example

## Description

example

````sym = ltePUCCH2(ue,chs,bits)` returns a matrix containing physical uplink control channel (PUCCH) format 2 symbols given a structure of UE-specific settings, a structure with channel transmission configuration settings, and a vector of coded CQI/PMI or RI `bits`.```

example

``````[sym,info] = ltePUCCH2(ue,chs,bits)``` also returns a PUCCH information structure array, `info`.```

## Examples

collapse all

### Generate PUCCH Format2 symbols

Generate PUCCH format 2 symbol values, using `NCellID` set to 1 and `NSubframe` set to 0.

Initialize `ue` and `chs` configuration structures. Generate symbols.

```ue.NCellID = 1; ue.NSubframe = 0; ue.RNTI = 1; ue.CyclicPrefixUL = 'Normal'; ue.Hopping = 'Off'; chs.ResourceIdx = 0; chs.ResourceSize = 0; chs.CyclicShifts = 0; sym = ltePUCCH2(ue,chs,ones(20,1)); sym(1:5) ```
```ans = 0.0000 + 1.0000i -0.5000 - 0.8660i -0.5000 + 0.8660i -0.0000 - 1.0000i 0.5000 + 0.8660i ```

### Generate PUCCH Format 2 Symbols for Two Antennas

Generate the physical uplink control channel (PUCCH) format 2 symbols for two transmit antenna paths.

Initialize parameters for a UE-specific configuration structure and a channel configuration structure. Generate PUCCH 2 symbols and the information structure.

```ue.NCellID = 1; ue.NSubframe = 0; ue.RNTI = 1; ue.CyclicPrefixUL = 'Normal'; ue.Hopping = 'Off'; chs.ResourceIdx = [0 3]; chs.ResourceSize = 0; chs.CyclicShifts = 0; [pucch2Sym,info] = ltePUCCH2(ue,chs,[]); ```

Because there are two antennas, the symbols are output as a two-column vector, and the `info` output structure contains two elements.

```pucch2Sym(1:10,:) size(info) ```
```ans = 0.5000 + 0.5000i 0.5000 + 0.5000i -0.6830 - 0.1830i 0.1830 - 0.6830i 0.1830 + 0.6830i -0.1830 - 0.6830i -0.5000 - 0.5000i -0.5000 + 0.5000i 0.6830 + 0.1830i 0.6830 + 0.1830i 0.6830 - 0.1830i 0.1830 + 0.6830i -0.5000 - 0.5000i 0.5000 + 0.5000i -0.6830 - 0.1830i -0.1830 + 0.6830i 0.6830 - 0.1830i 0.6830 - 0.1830i 0.5000 - 0.5000i 0.5000 + 0.5000i ans = 1 2 ```

View the contents of the second `info` structure element.

```info(2) ```
```ans = Alpha: [1x10 double] SeqGroup: [1 1] SeqIdx: [0 0] NResourceIdx: [4 7] NCellCyclicShift: [64 192 46 212 191 71 91 84 25 105] Symbols: [1x10 double] ```

## Input Arguments

collapse all

### `ue` — UE-specific settingsstructure

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

Parameter FieldRequired or OptionalValuesDescription
`NCellID`Required

Integer from 0 to 503

Physical layer cell identity.

`NSubframe`Required

Nonnegative integer

Subframe number.

`RNTI`Required

Scalar integer

Radio network temporary identifier (RNTI) value (16 bits)

`CyclicPrefixUL`Optional

`'Normal'` (default), `'Extended'`

Cyclic prefix length

`Hopping`Optional

`'Off'` (default), `'Group'`

Frequency hopping method.

### `chs` — Channel transmission configurationstructure

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

Parameter FieldRequired or OptionalValuesDescription
`ResourceIdx`Optional

0 (default), integer from 0 to 1185 or vector of integers.

PUCCH resource indices which determine the physical resource blocks, cyclic shift, and orthogonal cover used for transmission. (${n}_{PUCCH}^{\left(2\right)}$). Define one index for each transmission antenna.

`ResourceSize`Optional

0 (default), integer from 0 to 98.

Size of resource allocated to PUCCH Format 2 (${N}_{RB}^{\left(2\right)}$)

`CyclicShifts`Optional

0 (default), integer from 0 to 7

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)}$)

### `bits` — Coded CQI/PMI or RI bitsvector

Coded CQI/PMI or RI bits (coded UCI), specified as a vector that is formed by performing UCI encoding of a bit vector representing the CQI/PMI or RI information fields described in TS 36.212 [2], Section 5.2.3.3. This 20 bit long coded bit vector is denoted block of bits b(0),...,b(19) in TS 36.211 [1], Section 5.4.2. If Mbit is 21 or 22, corresponding to PUCCH format 2a or 2b, respectively, as described in TS 36.211 [1], Table 5.4-1, the further bits, b(20),...,b(Mbit–1), should be provided as input to the `ltePUCCH2DRS` function for transmission. An Mbit value of 20 corresponds to PUCCH format 2, with no additional bits being transmitted on the PUCCH format 2 DRS.

Data Types: `logical` | `double`

## Output Arguments

collapse all

### `sym` — PUCCH format 2 symbolsnumeric column vector

PUCCH format 2 symbols, returned as numeric column vector. The symbols for each antenna are in the columns of `sym`, with the number of columns determined by the number of PUCCH resource indices specified in `chs``.``ResourceIdx`.

Example: 0.7071 + 0.7071i

Data Types: `double`
Complex Number Support: Yes

### `info` — PUCCH format 2 informationstructure array

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

### `Alpha` — Reference signal cyclic shift for each OFDM symboltwo-column vector

Reference signal cyclic shift for each OFDM symbol, returned as a two-column vector. (α)

### `SeqGroup` — PUCCH base sequence group number for each slottwo-column vector

PUCCH base sequence group number for each slot, returned as a two-column vector. (u)

### `SeqIdx` — PUCCH base sequence group number indices two-column vector

PUCCH base sequence group number indices for each slot, returned as a two-column vector. (v)

### `NResourceIdx` — PUCCH resource indices for each slottwo-column vector

PUCCH resource indices for each slot, returned as a two-column vector. (n')

### `NCellCyclicShift` — Cell-specific cyclic shift for each OFDM symbolvector

Cell-specific cyclic shift for each OFDM symbol, returned as a vector. (${n}_{cs}^{cell}$)

### `Symbols` — Modulated data symbols for each OFDM symbolvector

Modulated data symbols for each OFDM symbol, returned as a vector. (d(0))

Example: [0.7071 + 0.7071i,...]

## References

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

[2] 3GPP TS 36.212. "Multiplexing and channel coding." 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Evolved Universal Terrestrial Radio Access (E-UTRA). URL: http://www.3gpp.org.