What is a
Bandwidth Part?
A
subset or a part of total carrier bandwidth is referred to as bandwidth part (BWP).
A
BWP forms a set of contiguous common resource blocks (CRBs) within
the full carrier bandwidth. In other words, within the carrier bandwidth, a BWP
starts at a CRB and spans over a set of consecutive CRBs.
Each
BWP is associated with its own numerology (SCS and CP).
A
UE can be configured with up to four downlink BWPs and up to four
uplink BWPs for each serving cell. In case of supplementary uplink (SUL),
there can be up to four additional uplink BWPs on the SUL
carrier.
To
enable reasonable UE battery consumption, only one BWP in the downlink
and one in the uplink are active at a given time on an active serving cell.
- The active BWP defines the UE's operating bandwidth within
the cell's operating bandwidth.
-
All other BWPs that the UE is configured with
being deactivated.
-
On deactivated BWPs, the UE does not transmit
or receive any data.
-
For TDD, a BWP-pair (active UL BWP and
active DL BWP) must have the same center frequency.
When
needed, the network can dynamically switch the UE to the desired BWP. BWP
switching is discussed in detail subsequently.
For
smaller carrier bandwidths, there could only be one BWP which may occupy
full carrier bandwidth.
Why Bandwidth
Parts?
LTE
maximum carrier bandwidth is much smaller to that of NR (20 MHz Vs 400 MHz). An
NR UE scanning full carrier bandwidth (e.g. 400 MHz) would be too ‘power’
costly.
Moreover,
with NR supporting multiple UE types and capabilities, not all devices capable
of receiving full carrier bandwidth.
Another
benefit of using BWPs is to reduce UE power consumption for UEs
capable of receiving maximum carrier bandwidth; a UE could be configured to use
a BWP with a wider bandwidth during large amounts of data transfer while
keeping the UE on a BWP with a narrow bandwidth during low data activity
periods.
Bandwidth
Adaptation
With
Bandwidth Adaptation (BA), the receive and transmit bandwidth of
a UE need not be as large as the bandwidth of the cell and can be adjusted. The
bandwidth can be ordered to change;
-
UE
can use a narrower BW for monitoring control channels and to receive
small/medium amount of data (to save power).
-
UE
can switch to full or large bandwidth when large amounts of data to be
scheduled.
The
location can move in the frequency domain (e.g. to increase scheduling flexibility)
and the subcarrier spacing can be ordered to change (e.g. to allow different
services).
BA
is achieved by configuring the UE with BWPs and telling the UE which one
of the configured BWPs is currently the active. Figure below describes an
example scenario where 3 different BWPs are configured;
To
enable BA on the PCell, the gNB configures the UE with UL and DL BWP(s). To
enable BA on SCells in case of CA, the gNB configures the UE with at least
DL BWP(s) i.e. there may or may not be any UL BWP for the SCell.
More information
on BWP
A
UE receives PDCCH and PDSCH in a DL BWP according to a configured SCS
and CP length for the DL BWP.
A
UE transmits PUCCH and PUSCH in an UL BWP according to a configured SCS
and CP length for the UL BWP.
A
UE is only assumed to receive/transmit within active DL/UL BWP using the
associated numerology.
- For
downlink, the UE is not expected to receive PDSCH, PDCCH, or CSI-RS (except for
RRM) outside an active BWP.
- For
uplink, the UE shall not transmit PUSCH or PUCCH outside an active BWP
and for an active cell, the UE shall not transmit SRS outside an active BWP.
For
each DL BWP or UL BWP in a set of DL BWPs or UL BWPs,
respectively, the UE is provided with the following parameters;
1. a SCS using the field subcarrierSpacing
2. a cyclic prefix using the field cyclicPrefix
3. an index in the set of DL BWPs or
UL BWPs by respective BWP-Id
4. a set of common and dedicated BWP
parameters
5. BWP’s starting PRB location and a
number of contiguous RBs which forms the BWP.
PRBs
are the resource blocks which are used for actual transmission/reception. A set
of PRBs belongs to and form a BWP. PRBs for a specific subcarrier
configuration defined within a BWP are numbered from 0 to (size of BWP
- 1). Each BWP has its own set of PRBs.
The
BWP’s starting PRB location relative to CRB0 is derived as
follows;
NBWP,i start
= Ocarrier + RBstart
- Ocarrier
is provided by offsetToCarrier for each SCS.
offsetToCarrier is the offset in frequency
domain between Point A and the lowest usable subcarrier on the carrier
in number of PRBs. This is configured per subcarrier spacing within SIB1
or via dedicated RRC signalling. For more details, refer to: 5G NR: Resource Blocks.
-
RBstart is
derived from locationAndBandwidth (part of BWP configuration). The value of this field shall be interpreted as
resource indicator value (RIV) as shown below.
The
example in figure below illustrates relation between PRBs in a BWP
and CRB0.
Dedicated RRC
configuration for a BWP
The
IE ServingCellConfig contains a dedicated (UE-specific) BWP
configuration. It also contains some cell-specific information which may be
useful for some cases e.g., handover.
It contains a list of
additional (not initial) uplink and downlink BWPs to be added or
deleted. This IE also contains initialDownlinkBWP, firstActiveDownlinkBWP-Id,
defaultDownlinkBWP-Id and other BWP configuration most of which are
explained in subsequent sections.
The following figure shows BWP
related configuration within ServingCellConfig IE
BWP Id
The
IE BWP-Id is used to refer to BWPs (in UL and DL independently). Other
parts of the RRC configuration use the BWP-Id to associate themselves
with a particular BWP.
BWP-Id | |
BWP-Id | INTEGER (0 … 4) |
The
initial BWP is referred to by BWP-Id 0. The other BWPs
are referred to by BWP-Id from 1 to 4.
For
TDD, the center frequencies for a DL BWP and UL BWP are same when
the BWP-Id of the DL BWP is same as the BWP-Id of the UL BWP.
Downlink BWP
The
IE BWP-Downlink is used to configure additional downlink BWP (not
for initial downlink BWP). The IE downlinkBWP-ToAddModList
contains a list of BWP configurations of type BWP-Downlink.
As
shown below, it contains bwp-Id, bwp-Common and bwp-Dedicated.
BWP-Downlink | |
bwp-Id | BWP-Id |
bwp-Common | BWP-DownlinkCommon |
bwp-Dedicated | BWP-DownlinkDedicated |
BWP Id is already discussed in the
previous section. Since the IE BWP-Downlink is not used for configuring initial
downlink BWP, value 0 is not used for BWP-Id when it is included
within BWP-Downlink.
BWP-DownlinkCommon is used to configure the
common parameters (cell-specific) of a downlink BWP. As discussed
already, the common parameters of the initial downlink BWP of the
PCell are provided via system information using this IE. For all other
serving cells, the network provides this IE via dedicated signalling. The
following table summarises the downlink BWP common parameters.
BWP-DownlinkCommon | ||
genericParameters | locationAndBandwidth | INTEGER (0 … 37949) |
subcarrierSpacing | ENUMERATED {kHz15, kHz30, kHz60, kHz120, kHz240, spare3, spare2, spare1} | |
cyclicPrefix | ENUMERATED { extended } | |
pdcch-ConfigCommon | SetupRelease { PDCCH-ConfigCommon } | |
pdsch-ConfigCommon | SetupRelease { PDSCH-ConfigCommon } |
BWP-DownlinkDedicated is used to configure the
dedicated (UE-specific) parameters of a downlink BWP. This is applicable
for both initial downlink BWP as well as additional downlink BWPs.
BWP-DownlinkDedicated | |
pdcch-Config | SetupRelease { PDCCH-Config } |
pdsch-Config | SetupRelease { PDSCH-Config } |
sps-Config | SetupRelease { SPS-Config } |
radioLinkMonitoringConfig | SetupRelease { RadioLinkMonitoringConfig } |
Uplink BWP
The
IE BWP-Uplink is used to configure additional uplink BWP (not for
initial uplink BWP). The IE uplinkBWP-ToAddModList
contains a list of BWP configurations of type BWP-Uplink.
As
shown below, it contains bwp-Id, bwp-Common and bwp-Dedicated.
BWP-Uplink | |
bwp-Id | BWP-Id |
bwp-Common | BWP-UplinkCommon |
bwp-Dedicated | BWP-UplinkDedicated |
BWP Id is already discussed in the
previous section. Since the IE BWP-Uplink is not used for configuring initial
uplink BWP, value 0 is not used for BWP-Id when included
within BWP-Uplink.
BWP-UplinkCommon is used to configure the
common parameters (cell-specific) of an uplink BWP. As discussed
already, the common parameters of the initial uplink BWP of the PCell
are provided via system information using this IE. For all other serving cells,
the network provides this IE via dedicated signalling. The following table
summarises the uplink BWP common parameters.
BWP-UplinkCommon | ||
genericParameters | locationAndBandwidth | INTEGER (0 … 37949) |
subcarrierSpacing | ENUMERATED {kHz15, kHz30, kHz60, kHz120, kHz240, spare3, spare2, spare1} | |
cyclicPrefix | ENUMERATED { extended } | |
rach-ConfigCommon | SetupRelease { RACH-ConfigCommon } | |
pusch-ConfigCommon | SetupRelease { PUSCH-ConfigCommon } | |
pucch-ConfigCommon | SetupRelease { PUCCH-ConfigCommon } |
BWP-UplinkDedicated is used to configure the
dedicated (UE-specific) parameters of an uplink BWP. This is applicable
for both initial uplink BWP as well as additional uplink BWPs.
BWP-UplinkDedicated | |
pucch-Config | SetupRelease { PUCCH-Config } |
pusch-Config | SetupRelease { PUSCH-Config } |
configuredGrantConfig | SetupRelease { configuredGrantConfig } |
srs-Config | SetupRelease { SRS-Config } |
beamFailureRecoveryConfig | SetupRelease { BeamFailureRecoveryConfig } |
Initial BWP
For
each serving cell the network configures at least an initial downlink BWP
and one (if the serving cell is configured with an uplink) or two (if using
SUL) initial uplink BWPs. Furthermore, the network may configure
additional uplink and downlink BWPs for a serving cell.
For
the PCell, the initial BWP is the BWP used for initial access i.e.,
for initial access and until the UE's configuration in a cell is received, the
UE uses the initial BWP which is detected from system information.
For
the SCell(s), the initial BWP is the BWP configured for the UE to
first operate at the time of SCell activation.
Initial
Downlink BWP:
The
network configures the IE initialDownlinkBWP either via SIB1 or via dedicated
RRC signalling. The common parameters of the initial downlink BWP of the
PCell are provided via system information. For all other serving cells, the
network provides the common parameters via dedicated signalling.
The
IE initialDownlinkBWP is carried within DownlinkConfigCommonSIB
when configured by SIB1.
When
sent by RRC signalling, the IE initialUplinkBWP is carried by DownlinkConfigCommon
within RRC (Re-) configuration. The IE initialDownlinkBWP is
mandatory present upon serving cell addition (for PSCell and SCell)
and upon handover from E-UTRA to NR.
If
a UE is not provided initialDownlinkBWP, then the CORESET
information carried by MIB configures and activates the initial
downlink BWP.
As
shown below, this IE provides information such as frequency domain location and
bandwidth of the BWP in the downlink, subcarrier spacing, cell-specific
PDCCH and PDSCH parameters for the concerned BWP.
initialDownlinkBWP => BWP-DownlinkCommon | ||
genericParameters | locationAndBandwidth | INTEGER (0 … 37949) |
subcarrierSpacing | ENUMERATED {kHz15, kHz30, kHz60, kHz120, kHz240, spare3, spare2, spare1} | |
cyclicPrefix | ENUMERATED { extended } | |
pdcch-ConfigCommon | SetupRelease { PDCCH-ConfigCommon } | |
pdsch-ConfigCommon | SetupRelease { PDSCH-ConfigCommon } |
subcarrierSpacing is the SCS to be used in this BWP for
all channels and reference signals unless explicitly configured elsewhere. For
the initial DL BWP, this field has the same value as the field subCarrierSpacingCommon
in MIB.
locationAndBandwidth defines the frequency domain location and bandwidth
of this BWP.
Initial Uplink
BWP:
The
network configures the initial uplink BWP using the IE initialUplinkBWP
either via SIB1
or via dedicated RRC signalling. This IE carries the initial uplink BWP
configuration for an SpCell (PCell of MCG or SCG) or SCell.
The
IE initialUplinkBWP is carried within UplinkConfigCommonSIB when
configured by SIB1.
When
sent by RRC signalling, the IE initialUplinkBWP is carried by UplinkConfigCommon
within RRC (Re-) configuration. The IE initialUplinkBWP is
mandatory present upon serving cell addition (for PSCell and SCell)
and upon handover from E-UTRA to NR.
As
shown below, this IE provides information such as frequency domain location and
bandwidth of the BWP in the uplink, subcarrier spacing, cell-specific
PUCCH, PUSCH and RACH parameters for the concerned BWP.
initialUplinkBWP => BWP-UplinkCommon | ||
genericParameters | locationAndBandwidth | INTEGER (0 … 37949) |
subcarrierSpacing | ENUMERATED {kHz15, kHz30, kHz60, kHz120, kHz240, spare3, spare2, spare1} | |
cyclicPrefix | ENUMERATED { extended } | |
rach-ConfigCommon | SetupRelease { RACH-ConfigCommon } | |
pusch-ConfigCommon | SetupRelease { PUSCH-ConfigCommon } | |
pucch-ConfigCommon | SetupRelease { PUCCH-ConfigCommon } |
First Active BWP
First
active BWP is the BWP to be activated for the
first time after an RRC (re-) configuration in cases for example handover,
SCell addition, or BWP switching.
For
downlink, the IE ServingCellConfig within RRC (re-) configuration
contains firstActiveDownlinkBWP-Id which points to the BWP id that
is already configured as part of downlinkBWP-ToAddModList.
For
uplink, the IE ServingCellConfig within RRC (re-) configuration
contains firstActiveUplinkBWP-Id which points to the BWP id which
is already configured as part of uplinkBWP-ToAddModList.
firstActiveUplinkBWP-Id
and firstActiveDownlinkBWP-Id:
These
two fields are mandatory present for an SpCell upon PCell change (handover) and
PSCell addition/change and upon RRCSetup/RRCResume. Upon PCell
change and PSCell addition/change, the network sets these two fields to
the same value.
For
SpCell, these fields could be used for BWP switching (discussed later).
These
fields are mandatory present for an SCell upon addition. When configured, these
fields contain the ID of the downlink/uplink BWP to be used upon
MAC-activation of an SCell.
Default Downlink
BWP
A
UE can be provided by a default DL BWP among the configured DL BWPs.
If the network doesn’t configure a default DL BWP, the default
DL BWP is the initial DL BWP.
The
network configures defaultDownlinkBWP-Id which is one of the BWP
id of already configured downlink BWPs. The UE will switch to this default
downlink BWP upon certain amount of inactivity on the current active
downlink BWP.
The
amount of inactivity is controlled by RRC using a timer field bwp-InactivityTimer which
range from 3 ms to 2.56 seconds. Upon expiry of this timer, the UE falls back
to the default downlink BWP (if configured)
BWP Switching
As
discussed already, there can only be one active BWP in the downlink
and one in the uplink at a given time, even though a UE can be configured with
up to four downlink BWPs and up to four uplink BWPs
for each serving cell.
The
BWP switching procedure for a serving sell is used to
activate an inactive BWP and deactivate an active BWP at the same
time.
In
FDD, downlink and uplink can switch BWP independently but for TDD, both
downlink and uplink should switch BWP simultaneously.
The
BWP switching is controlled by the following ways and each one of them
are discussed subsequently.
-
RRC signalling
-
The PDCCH indicating a downlink assignment or an
uplink grant
-
The inactivity timer (bwp-InactivityTimer)
-
the MAC entity itself upon initiation of Random Access procedure.
BWP switching by RRC signalling:
The
network can impose BWP switching using RRC (re-) configuration.
As
discussed already as part of first active BWP section, the network
includes firstActiveDownlinkBWP-Id and/or firstActiveUplinkBWP-Id for
SpCell or SCell within RRC (re-) configuration.
Upon
receiving RRC (re-) configuration of firstActiveDownlinkBWP-Id and/or
firstActiveUplinkBWP-Id for SpCell, the UE activates the downlink BWP
and/or uplink BWP indicated by firstActiveDownlinkBWP-Id and/or firstActiveUplinkBWP-Id
respectively.
For
an SCell, the UE doesn’t activate the downlink BWP and/or uplink BWP
immediately after receiving the RRCReconfiguration, instead, the
activation of the corresponding BWP is done at the time of SCell
activation.
If
the network doesn’t want to impose a BWP switch, the network does not
include the field firstActiveDownlinkBWP-Id/firstActiveUplinkBWP-Id in RRC
(re-) configuration.
BWP switching by PDCCH (DCI):
The
BWP switching can be controlled by the PDCCH indicating a downlink
assignment or an uplink grant.
As
discussed in the post LTE: DCIFormats in 5G NR, DCI formats 0_1 (uplink grant) and DCI format 1_1
(downlink assignment) are used to indicate BWP to be used.
The
field Bandwidth
Part Indicator indicates the BWP in which the frequency
resources provided via this DCI are located. This field if configured, can take
1 or 2 bits depending upon the number of UL/DL BWPs configured by RRC,
excluding the initial UL/DL BWP.
If
bandwidth part indicator field in DCI format 0_1 indicates an UL BWP
different from the currently active UL BWP, the UE shall set
the active UL BWP to the UL BWP indicated by this field in the
DCI format 0_1.
If
bandwidth part indicator field in DCI format 1_1 indicates a DL BWP
different from the currently active DL BWP, the UE shall set
the active DL BWP to the DL BWP indicated by this field in the
DCI format 1_1.
If a UE does not support active BWP
change via DCI, the UE ignores the bit field Bandwidth
Part Indicator.
BWP switching upon the expiry of ‘Inactivity
Timer’:
The
network may configure an inactivity timer (bwp-InactivityTimer), which
is used to switch the active downlink BWP after an amount of inactivity
specified by the timer field bwp-InactivityTimer.
The
expiry of the inactivity timer associated to a cell switches the active BWP
to a default BWP configured by the network (if configured). If the default
downlink BWP is not configured, the switching happens to initial
downlink BWP.
The
BWP switching mechanism in association with inactivity timer is
illustrated below;
The
value of bwp-InactivityTimer range from 3 ms to 2.56 seconds (as shown
below).
bwp-InactivityTimer | |
bwp-InactivityTimer | ENUMERATED {ms2, ms3, ms4, ms5, ms6, ms8, ms10, ms20, ms30, ms40, ms50, ms60, ms80,ms100, ms200,ms300, ms500, ms750, ms1280, ms1920, ms2560, spare10, spare9, spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1} |
When
the network releases the timer configuration, the UE stops the timer without
switching to the default BWP.
Note
that the inactivity timer is used to switch only the downlink BWP but
not the uplink BWP.
BWP switching by MAC entity upon initiation
of Random Access procedure:
The
MAC entity, upon initiation of an RA procedure on a serving cell, may perform BWP
switching as explained below.
The
procedure to be followed depends upon whether or not PRACH occasions are
configured for the active UL BWP.
Case1:
PRACH
occasions are not configured for the active UL BWP:
For
uplink, as PRACH occasions are not configured for active UL BWP, the MAC
layer switches the active UL BWP to initial uplink BWP.
For
downlink, switching will happen only if the serving cell is SpCell; in this
case, the active DL BWP should also be switched to initial downlink
BWP.
Case2:
PRACH
occasions are configured for the active UL BWP:
For
uplink, as PRACH occasions are configured for active UL BWP, no need to
switch active UL BWP.
For
downlink, switching will happen only if the serving cell is SpCell and only if
the bwp-id of active DL BWP is different from the bwp-id
of active UL BWP; in this case, the active DL BWP should also be
switched to same bwp-id as the active UL BWP. The ultimate goal
here is to bring both active UL BWP and active DL BWP on to the
same bwp-id.
The
following figure illustrates both Case1 and Case2;
After
performing appropriate BWP switching (Case1 or Case2), the
UE performs RA procedure on the activated DL BWP of the SpCell and activated
UL BWP of the serving cell on which RA procedure is triggered.
Reference: 3GPP TS 38.212, 38.213, 38.214, 38.321, 38.300, and
38.331