Main Content

nrPUCCH2

Generate PUCCH format 2 modulation symbols

Description

sym = nrPUCCH2(uciCW,nid,rnti) returns the physical uplink control channel (PUCCH) format 2 modulation symbols, as defined in TS 38.211 Section 6.3.2.5 [1]. uciCW is the encoded uplink control information (UCI) codeword, as defined in TS 38.212 Section 6.3.1 [2]. The encoding consists of scrambling using scrambling identity nid and QPSK modulation. rnti specifies the radio network temporary identifier (RNTI) of the user equipment (UE).

example

sym = nrPUCCH2(___,'OutputDataType',datatype) specifies the PUCCH symbol data type in addition to the input arguments in the previous syntax.

example

Examples

collapse all

Create a random sequence of binary values corresponding to a UCI codeword of 100 bits.

uciCW = randi([0 1],100,1);

Generate PUCCH format 2 modulation symbols for the specified scrambling identity and RNTI.

nid = 148;
rnti = 160;
sym = nrPUCCH2(uciCW,nid,rnti)
sym = 50×1 complex

  -0.7071 + 0.7071i
   0.7071 - 0.7071i
  -0.7071 - 0.7071i
  -0.7071 - 0.7071i
  -0.7071 - 0.7071i
  -0.7071 + 0.7071i
   0.7071 - 0.7071i
  -0.7071 - 0.7071i
  -0.7071 + 0.7071i
  -0.7071 + 0.7071i
      ⋮

Create a random sequence of binary values corresponding to a UCI codeword of 100 bits.

uciCW = randi([0 1],100,1);

Generate PUCCH format 2 modulation symbols of single data type for the specified scrambling identity and RNTI.

nid = 512;
rnti = 2563;
sym = nrPUCCH2(uciCW,nid,rnti,'OutputDataType','single')
sym = 50x1 single column vector

   0.7071 - 0.7071i
   0.7071 - 0.7071i
  -0.7071 - 0.7071i
  -0.7071 + 0.7071i
   0.7071 - 0.7071i
  -0.7071 + 0.7071i
   0.7071 + 0.7071i
   0.7071 + 0.7071i
   0.7071 - 0.7071i
   0.7071 + 0.7071i
      ⋮

Input Arguments

collapse all

Encoded UCI codeword, specified as a logical column vector. For more information, see TS 38.212 Section 6.3.1 [2].

Data Types: int8 | double | logical

Scrambling identity, specified as an integer from 0 to 1023. nid is higher layer parameter dataScramblingIdentityPUSCH, ranging from 0 to 1023, if the higher layer parameter is configured. Otherwise, nid is the physical layer cell identity number NCellID, ranging from 0 to 1007.

For more information, see TS 38.211 Section 6.3.2.5.1.

Data Types: double

RNTI of the UE, specified as an integer from 0 to 65,535.

Data Types: double

Data type of the output symbols, specified as 'double' or 'single'.

Data Types: char | string

Output Arguments

collapse all

PUCCH format 2 modulation symbols, returned as a complex column vector.

Data Types: single | double
Complex Number Support: Yes

References

[1] 3GPP TS 38.211. “NR; Physical channels and modulation.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

[2] 3GPP TS 38.212. “NR; Multiplexing and channel coding.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

Extended Capabilities

Version History

Introduced in R2019a