Documentation

This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.

ltePUCCH3PRBS

PUCCH format 3 pseudorandom scrambling sequence

Syntax

  • seq = ltePUCCH3PRBS(ue,n)
    example
  • seq = ltePUCCH3PRBS(ue,n,mapping)
    example

Description

example

seq = ltePUCCH3PRBS(ue,n) returns a column vector containing the first n outputs of the Physical Uplink Control Channel (PUCCH) format 3 scrambling sequence when initialized according to UE-specific settings, ue, which must be a structure.

example

seq = ltePUCCH3PRBS(ue,n,mapping) allows control over the format of the returned sequence, seq, with the input mapping.

Examples

collapse all

Scramble a random PUCCH3 codeword.

Create a ue-specific configuration structure. Generate a codeword. Generate a PUCCH3 pseudorandom scrambling sequence the same length as the codeword.

ue.NCellID = 1;
ue.NSubframe = 0;
ue.RNTI = 1;
cw = randi([0 1],48,1);
seq = ltePUCCH3PRBS(ue,length(cw));

Scramble codeword with PDCCH PRBS.

scrambled = xor(seq,cw);

Scramble a UCI3 codeword with a PUCCH3 pseudorandom scrambling sequence.

Create a ue-specific configuration structure. Generate a UCI3 codeword. The UCI3 codeword is 48 bits long.

ue.NCellID = 1;
ue.NSubframe = 0;
ue.RNTI = 1;

txAck = [1;0;0;1];
cw = lteUCI3Encode(txAck);
cwLength = length(cw)
cwLength =

    48

Generate a PUCCH3 pseudorandom scrambling sequence the same length as the codeword. Scramble codeword with PDCCH PRBS.

seq = ltePUCCH3PRBS(ue,length(cw));
scrambled = xor(seq,cw);

This example shows the generation of unsigned and signed PUCCH format 3 pseudorandom scrambling sequences.

Initialize ue specific parameters.

ue = struct('NCellID',1,'NSubframe',0,'RNTI',1);

Generate a PUCCH format 3 pseudorandom scrambling sequence.

pucch3Seq = ltePUCCH3PRBS(ue,5)
pucch3Seq =

  5×1 logical array

   1
   1
   0
   0
   1

Generate a signed PUCCH format 3 pseudorandom scrambling sequence.

pucch3Seq = ltePUCCH3PRBS(ue,5,'signed')
pucch3Seq =

    -1
    -1
     1
     1
    -1

Input Arguments

collapse all

UE-specific settings, specified as a structure having the following fields.

Physical layer cell identity, specified as an integer between 0 and 503.

Data Types: double

Subframe number, specified as an integer.

Data Types: double

Radio Network Temporary Identifier (16-bit), specified as an integer.

Data Types: double

Data Types: struct

Length of PUCCH Format 3 scrambling sequence, specified as an integer. This parameter determines the length of the output argument vector, seq.

Example: 3

Data Types: double

Output sequence formatting, specified as 'binary' or 'signed'. mapping controls the format of the returned sequence, seq.

  • 'binary' maps true to 1 and false to 0.

  • 'signed' maps true to –1 and false to 1.

Data Types: char

Output Arguments

collapse all

PUCCH format 3 scrambling sequence, returned as a logical column vector or a numeric column vector of size n-by-1. The number of elements returned is determined by the argument n. If you set mapping to 'signed', the output data type is double. Otherwise, the output data type is logical.

Data Types: logical | double

Introduced in R2014a

Was this topic helpful?