Main Content

nrPUCCH3Config

PUCCH format 3 configuration parameters

Since R2021a

    Description

    The nrPUCCH3Config object sets physical uplink control channel (PUCCH) configuration parameters for format 3, as defined in TS 38.211 Sections 6.3.2.1, 6.3.2.2, 6.3.2.6, and 6.4.1.3.3 [1]. The object also configures the bandwidth part (BWP) containing the PUCCH and the number of resource blocks (RBs) that the PUCCH occupies within the BWP.

    The default nrPUCCH3Config object allocates a PUCCH format 3 in the first RB in the BWP and in all OFDM symbols in a slot.

    For operation with shared spectrum channel access for frequency range 1 (FR1), set the Interlacing property to true, then use the RBSetIndex and InterlaceIndex object properties to specify the allocated frequency resources. In addition, you can use the SpreadingFactor and OCCI properties to specify single-interlace configurations. (since R2023b)

    Creation

    Description

    pucch = nrPUCCH3Config creates a default PUCCH configuration object for format 3.

    pucch = nrPUCCH3Config(Name,Value) specifies properties using one or more name-value pairs. Enclose each property in quotes. For example, 'NSizeBWP',200 specifies 200 physical resource blocks (PRB) in the BWP.

    example

    Properties

    expand all

    Number of PRBs in the BWP, specified as [] or an integer from 1 to 275. To set this property to the NSizeGrid property of the nrCarrierConfig object, use [].

    Data Types: double

    Starting PRB index of the BWP relative to the common resource block 0 (CRB 0), specified as [] or an integer from 0 to 2473. To set this property to the NStartGrid property of the nrCarrierConfig object, use [].

    Data Types: double

    Modulation scheme, specified as 'QPSK' or 'pi/2-BPSK'.

    Modulation SchemeNumber of Bits Per Symbol
    'pi/2-BPSK'1
    'QPSK'2

    Data Types: char | string

    OFDM symbol allocation of the PUCCH within a slot, specified as [] or a two-element vector of nonnegative integers. The first element of this property represents the start of symbol allocation. The second element represents the number of consecutively allocated OFDM symbols and must be in the range [4, 14]. To indicate that no OFDM symbols are allocated for the PUCCH, use [] or specify the second element of the vector as 0.

    Data Types: double

    PRB allocation of the PUCCH within the BWP, specified as a vector of integers from 0 to 274. To indicate that no resource blocks are allocated for the PUCCH, use [].

    Dependencies

    To enable this property, set the Interlacing property to 0 (false).

    Data Types: double

    Frequency hopping configuration for the PUCCH, specified as one of these values.

    • 'neither' — Indicates no frequency hopping

    • 'intraSlot' — Enables intraslot frequency hopping

    • 'interSlot' — Enables interslot frequency hopping

    When you enable interslot frequency hopping, the slot number determines the starting resource block for the allocated OFDM symbols. For even-numbered slots, the resource block starts from the minimum resource block allocated in the PRBSet property. For odd-numbered slots, the resource block starts from the resource block provided in the SecondHopStartPRB property.

    Dependencies

    To enable this property, set the Interlacing property to 0 (false).

    Data Types: char | string

    Starting PRB index of the second hop relative to the BWP, specified as an integer from 0 to 274.

    Dependencies

    To enable this property, set the FrequencyHopping property to 'intraSlot' or 'interSlot' and set the Interlacing property to 0 (false).

    Data Types: double

    Since R2023b

    Interlaced resource allocation, specified as one of these values.

    • 0 (false) — Disable interlaced resource allocation.

    • 1 (true) — Enable interlaced resource allocation. Use the RBSetIndex and InterlaceIndex properties to configure the frequency resource allocation.

    This property implements the useInterlacePUCCH-PUSCH higher-layer parameter.

    Data Types: double | logical

    Since R2023b

    Indices of RB sets between intracell guard bands (0-based), specified as a vector of nonnegative integers. Use this property to specify the indices of the RB sets in an interlaced resource allocation.

    Dependencies

    To enable this property, set the Interlacing property to 1 (true).

    Data Types: double

    Since R2023b

    Interlace indices in the interlaced resource allocation, specified as a vector of nonnegative integers with up to M elements. The vector element must be in the range [0, M – 1). M = 10 for 15 kHz subcarrier spacing and M = 5 for 30 kHz subcarrier spacing.

    Dependencies

    To enable this property, set the Interlacing property to 1 (true).

    Data Types: double

    Group hopping configuration for the PUCCH, specified as one of these values.

    • 'neither' — Disables group hopping and sequence hopping

    • 'enable' — Enables group hopping and disables sequence hopping

    • 'disable' — Disables group hopping and enables sequence hopping

    This property is the higher-layer parameter pucch-GroupHopping.

    Data Types: char | string

    Hopping identity of the PUCCH, specified as [] or an integer from 0 to 1023.

    • If the higher-layer parameter hoppingId is configured, this property must be in the range from 0 to 1023.

    • If the higher-layer parameter hoppingId is not configured, this property must be equal to the physical layer cell identity and be in the range from 0 to 1007.

    When you specify this property as [], the object sets the PUCCH hopping identity to the physical layer cell identity specified by the NCellID property of the nrCarrierConfig object.

    Data Types: double

    Spreading factor, specified as 1, 2, or 4.

    Dependencies

    To enable this property, set the InterlaceIndex property to a scalar.

    Data Types: double

    Orthogonal cover code index (OCCI), specified as an integer from 0 to 3. The OCCI value must be less than the SpreadingFactor property.

    Dependencies

    To enable this property, set the InterlaceIndex property to a scalar.

    Data Types: double

    PUCCH scrambling identity, specified as [] or an integer from 0 to 1023.

    • If the higher-layer parameter dataScramblingIdentityPUSCH is configured, this property must be in the range from 0 to 1023.

    • If the higher-layer parameter dataScramblingIdentityPUSCH is not configured, this property must be equal to the physical layer cell identity and be in the range from 0 to 1007.

    When you specify this property as [], the object sets the PUCCH scrambling identity to the physical layer cell identity specified by the NCellID property of the nrCarrierConfig object.

    Data Types: double

    Radio network temporary identifier of the user equipment (UE), specified as an integer from 0 to 65,535.

    Data Types: double

    Demodulation reference signal (DM-RS) scrambling identity, specified as [] or an integer from 0 to 65,535.

    • If the higher-layer parameter scramblingID0 is configured, this property must be in the range from 0 to 65,535.

    • If the higher-layer parameter scramblingID0 is not configured, this property must be equal to the physical layer cell identity and be in the range from 0 to 1007.

    When you specify this property as [], the object sets the DM-RS scrambling identity to the physical layer cell identity specified by the NCellID property of the nrCarrierConfig object.

    Data Types: double

    Since R2023b

    Release 16 low peak-to-average-power (PAPR) DM-RS sequence for DFT-s-OFDM, specified as one of these logical values.

    • 0 (false) — Disable the use of low PAPR DM-RS for DFT-s-OFDM. The DM-RS sequence generation uses type 1 low PAPR sequences.

    • 1 (true) — Enable the use of low PAPR DM-RS for DFT-s-OFDM. The DM-RS sequence generation uses type 2 low PAPR sequences.

    Dependencies

    To enable this property, set the Modulation property to 'pi/2-BPSK'.

    Data Types: double

    Option to enable additional demodulation reference signal (DM-RS), provided by the higher-layer parameter additionalDMRS, specified as one of these numeric or logical values.

    • 0 (false) — Disable additional DM-RS. When the number of the PUCCH OFDM symbols is greater than 9, two DM-RS symbols are present.

    • 1 (true) — Enable additional DM-RS. When the number of the PUCCH OFDM symbols is greater than 9, four DM-RS symbols are present.

    Data Types: double | logical

    Examples

    collapse all

    Create a default PUCCH configuration object for format 3.

    pucch = nrPUCCH3Config;

    Specify the number of PRBs in the BWP as 150, the modulation scheme as pi/2-BPSK, the PRB allocation of the PUCCH to range from 90 to 97, and the data scrambling identity as 650. Enable group hopping and the additional DM-RS configuration flag. Display the object properties.

    pucch.NSizeBWP = 150;
    pucch.Modulation = 'pi/2-BPSK';
    pucch.PRBSet = 90:97;
    pucch.GroupHopping = 'enable';
    pucch.NID = 650;
    pucch.AdditionalDMRS = 1;
    disp(pucch)
      nrPUCCH3Config with properties:
    
                               NSizeBWP: 150
                              NStartBWP: []
                             Modulation: 'pi/2-BPSK'
                       SymbolAllocation: [0 14]
                                 PRBSet: [90 91 92 93 94 95 96 97]
                       FrequencyHopping: 'neither'
                      SecondHopStartPRB: 1
                            Interlacing: 0
                           GroupHopping: 'enable'
                              HoppingID: []
                                    NID: 650
                                   RNTI: 1
                                   NID0: []
        DMRSUplinkTransformPrecodingR16: 0
                         AdditionalDMRS: 1
    

    References

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

    Extended Capabilities

    C/C++ Code Generation
    Generate C and C++ code using MATLAB® Coder™.

    Version History

    Introduced in R2021a

    expand all