specviewer.org TS 38.331 ASN.1 index CodebookConfig

CodebookConfig

RRC IE · TS 38.331 v19.4.0 (2026-09) · clause 6.3.2

CodebookConfig is an RRC information element of 3GPP TS 38.331 (38331), the 5G NR Radio Resource Control (RRC) protocol.

First seen v15.0.0 (2018-01) · Last changed v15.3.0 (2018-09)

Definition

The IE CodebookConfig is used to configure codebooks of Type-I and Type-II (see TS 38.214 [19], clause 5.2.2.2)

CodebookConfig ::=                                  SEQUENCE {
    codebookType                                        CHOICE {
        type1                                               SEQUENCE {
            subType                                             CHOICE {
                typeI-SinglePanel                                   SEQUENCE {
                    nrOfAntennaPorts                                    CHOICE {
                        two                                                 SEQUENCE {
                            twoTX-CodebookSubsetRestriction                     BIT STRING (SIZE (6))
                        },
                        moreThanTwo                                         SEQUENCE {
                            n1-n2                                               CHOICE {
                                two-one-TypeI-SinglePanel-Restriction               BIT STRING (SIZE (8)),
                                two-two-TypeI-SinglePanel-Restriction               BIT STRING (SIZE (64)),
                                four-one-TypeI-SinglePanel-Restriction              BIT STRING (SIZE (16)),
                                three-two-TypeI-SinglePanel-Restriction             BIT STRING (SIZE (96)),
                                six-one-TypeI-SinglePanel-Restriction               BIT STRING (SIZE (24)),
                                four-two-TypeI-SinglePanel-Restriction              BIT STRING (SIZE (128)),
                                eight-one-TypeI-SinglePanel-Restriction             BIT STRING (SIZE (32)),
                                four-three-TypeI-SinglePanel-Restriction            BIT STRING (SIZE (192)),
                                six-two-TypeI-SinglePanel-Restriction               BIT STRING (SIZE (192)),
                                twelve-one-TypeI-SinglePanel-Restriction            BIT STRING (SIZE (48)),
                                four-four-TypeI-SinglePanel-Restriction             BIT STRING (SIZE (256)),
                                eight-two-TypeI-SinglePanel-Restriction             BIT STRING (SIZE (256)),
                                sixteen-one-TypeI-SinglePanel-Restriction           BIT STRING (SIZE (64))
                            },
                            typeI-SinglePanel-codebookSubsetRestriction-i2      BIT STRING (SIZE (16))        OPTIONAL    -- Need R
                        }
                    },
                    typeI-SinglePanel-ri-Restriction                    BIT STRING (SIZE (8))
                },
                typeI-MultiPanel                                    SEQUENCE {
                    ng-n1-n2                                                CHOICE {
                        two-two-one-TypeI-MultiPanel-Restriction                BIT STRING (SIZE (8)),
                        two-four-one-TypeI-MultiPanel-Restriction               BIT STRING (SIZE (16)),
                        four-two-one-TypeI-MultiPanel-Restriction               BIT STRING (SIZE (8)),
                        two-two-two-TypeI-MultiPanel-Restriction                BIT STRING (SIZE (64)),
                        two-eight-one-TypeI-MultiPanel-Restriction              BIT STRING (SIZE (32)),
                        four-four-one-TypeI-MultiPanel-Restriction              BIT STRING (SIZE (16)),
                        two-four-two-TypeI-MultiPanel-Restriction               BIT STRING (SIZE (128)),
                        four-two-two-TypeI-MultiPanel-Restriction               BIT STRING (SIZE (64))
                    },
                    ri-Restriction                          BIT STRING (SIZE (4))
                }
            },
            codebookMode                                        INTEGER (1..2)
        },
        type2                                   SEQUENCE {
            subType                                 CHOICE {
                typeII                                  SEQUENCE {
                    n1-n2-codebookSubsetRestriction         CHOICE {
                        two-one                                 BIT STRING (SIZE (16)),
                        two-two                                 BIT STRING (SIZE (43)),
                        four-one                                BIT STRING (SIZE (32)),
                        three-two                               BIT STRING (SIZE (59)),
                        six-one                                 BIT STRING (SIZE (48)),
                        four-two                                BIT STRING (SIZE (75)),
                        eight-one                               BIT STRING (SIZE (64)),
                        four-three                              BIT STRING (SIZE (107)),
                        six-two                                 BIT STRING (SIZE (107)),
                        twelve-one                              BIT STRING (SIZE (96)),
                        four-four                               BIT STRING (SIZE (139)),
                        eight-two                               BIT STRING (SIZE (139)),
                        sixteen-one                             BIT STRING (SIZE (128))
                    },
                    typeII-RI-Restriction                   BIT STRING (SIZE (2))
                },
                typeII-PortSelection                    SEQUENCE {
                    portSelectionSamplingSize               ENUMERATED {n1, n2, n3, n4}                   OPTIONAL,       -- Need R
                    typeII-PortSelectionRI-Restriction      BIT STRING (SIZE (2))
                }
            },
            phaseAlphabetSize                       ENUMERATED {n4, n8},
            subbandAmplitude                        BOOLEAN,
            numberOfBeams                           ENUMERATED {two, three, four}
        }
    }
}

Fields (60)

FieldDescription
codebookType
CHOICE {
CodebookType including possibly sub-types and the corresponding parameters for each (see TS 38.214 [19], clause 5.2.2.2).
type1
SEQUENCE {
subType
CHOICE {
typeI-SinglePanel
SEQUENCE {
since v15.1.0
nrOfAntennaPorts
CHOICE {
since v15.1.0
two
SEQUENCE {
since v15.1.0
twoTX-CodebookSubsetRestriction
BIT STRING (SIZE (6))
since v15.1.0
Codebook subset restriction for 2TX codebook (see TS 38.214 [19] clause 5.2.2.2.1).
moreThanTwo
SEQUENCE {
since v15.1.0
n1-n2
CHOICE {
since v15.1.0
Number of antenna ports in first (n1) and second (n2) dimension and codebook subset restriction (see TS 38.214 [19] clause 5.2.2.2).
two-one-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (8))
since v15.1.0
two-two-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (64))
since v15.1.0
four-one-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (16))
since v15.1.0
three-two-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (96))
since v15.1.0
six-one-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (24))
since v15.1.0
four-two-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (128))
since v15.1.0
eight-one-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (32))
since v15.1.0
four-three-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (192))
since v15.1.0
six-two-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (192))
since v15.1.0
twelve-one-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (48))
since v15.1.0
four-four-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (256))
since v15.1.0
eight-two-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (256))
since v15.1.0
sixteen-one-TypeI-SinglePanel-Restriction
BIT STRING (SIZE (64))
since v15.1.0
typeI-SinglePanel-codebookSubsetRestriction-i2
BIT STRING (SIZE (16)) · OPTIONAL Need R
since v15.1.0
i2 codebook subset restriction for Type I Single-panel codebook used when reportQuantity is CRI/Ri/i1/CQI (see TS 38.214 [19] clause 5.2.2.2.1).
typeI-SinglePanel-ri-Restriction
BIT STRING (SIZE (8))
since v15.1.0
Restriction for RI for TypeI-SinglePanel-RI-Restriction (see TS 38.214 [19], clause 5.2.2.2.1 and clause 5.2.2.2.1a).
typeI-MultiPanel
SEQUENCE {
since v15.1.0
ng-n1-n2
CHOICE {
since v15.1.0
Values of Ng, N1, N2 and codebook subset restriction for Type I Multi-panel codebook (see TS 38.214 [19], clause 5.2.2.2).
two-two-one-TypeI-MultiPanel-Restriction
BIT STRING (SIZE (8))
since v15.1.0
two-four-one-TypeI-MultiPanel-Restriction
BIT STRING (SIZE (16))
since v15.1.0
four-two-one-TypeI-MultiPanel-Restriction
BIT STRING (SIZE (8))
since v15.1.0
two-two-two-TypeI-MultiPanel-Restriction
BIT STRING (SIZE (64))
since v15.1.0
two-eight-one-TypeI-MultiPanel-Restriction
BIT STRING (SIZE (32))
since v15.1.0
four-four-one-TypeI-MultiPanel-Restriction
BIT STRING (SIZE (16))
since v15.1.0
two-four-two-TypeI-MultiPanel-Restriction
BIT STRING (SIZE (128))
since v15.1.0
four-two-two-TypeI-MultiPanel-Restriction
BIT STRING (SIZE (64))
since v15.1.0
ri-Restriction
BIT STRING (SIZE (4))
since v15.1.0
Restriction for RI for TypeI-MultiPanel-RI-Restriction (see TS 38.214 [19], clause 5.2.2.2).
codebookMode
INTEGER (1..2)
CodebookMode as specified in TS 38.214 [19], clause 5.2.2.2.
type2
SEQUENCE {
subType
CHOICE {
typeII
SEQUENCE {
since v15.1.0
n1-n2-codebookSubsetRestriction
CHOICE {
since v15.1.0
Number of antenna ports in first ( n1 ) and second ( n2 ) dimension and codebook subset restriction (see TS 38.214 [19] clause 5.2.2.2.3). Value no-cbsr means no codebook subset restriction is configured for the n1-n2 pair. If a codebook subset restriction is configured for the n1-n2 pair, the number of elements in cbsr-list in n1-n2-codebookSubSetRestrictionList is up to the number of elements of nzp-CSI-RS-Resources in NZP-CSI-RS-ResourceSet(s) indicated by nzp-CSI-RS-ResourceSetList in the CSI-ResourceConfig indicated by resourcesForChannelMeasurement in the CSI-ReportConfig in which the CodebookConfig is included. An element in the list corresponds to the element at the same position in nzp-CSI-RS-Resources .
two-one
BIT STRING (SIZE (16))
since v15.1.0
two-two
BIT STRING (SIZE (43))
since v15.1.0
four-one
BIT STRING (SIZE (32))
since v15.1.0
three-two
BIT STRING (SIZE (59))
since v15.1.0
six-one
BIT STRING (SIZE (48))
since v15.1.0
four-two
BIT STRING (SIZE (75))
since v15.1.0
eight-one
BIT STRING (SIZE (64))
since v15.1.0
four-three
BIT STRING (SIZE (107))
since v15.1.0
six-two
BIT STRING (SIZE (107))
since v15.1.0
twelve-one
BIT STRING (SIZE (96))
since v15.1.0
four-four
BIT STRING (SIZE (139))
since v15.1.0
eight-two
BIT STRING (SIZE (139))
since v15.1.0
sixteen-one
BIT STRING (SIZE (128))
since v15.1.0
typeII-RI-Restriction
BIT STRING (SIZE (2))
since v15.1.0
Restriction for RI for TypeII-RI-Restriction (see TS 38.214 [19], clause 5.2.2.2).
typeII-PortSelection
SEQUENCE {
since v15.1.0
portSelectionSamplingSize
ENUMERATED {n1, n2, n3, n4} · OPTIONAL Need R
since v15.1.0
The size of the port selection codebook (parameter d), see TS 38.214 [19] clause 5.2.2.2.6.
typeII-PortSelectionRI-Restriction
BIT STRING (SIZE (2))
since v15.1.0
Restriction for RI for TypeII-PortSelection-RI-Restriction (see TS 38.214 [19], clauses 5.2.2.2.4, 5.2.2.2.6 and 5.2.2.2.7).
phaseAlphabetSize
ENUMERATED {n4, n8}
The size of the PSK alphabet, QPSK or 8-PSK.
subbandAmplitude
BOOLEAN
If subband amplitude reporting is activated ( true ).
numberOfBeams
ENUMERATED {two, three, four}
Number of beams, L, used for linear combination.

Used by (4)

In the viewer