In the case of
Dynamic Scheduling, the UE can get scheduling assignments/grants in every
subframe. This gives the network full flexibility in assigning the resources to
the UE at the cost of transmission of resource allocation information on PDCCH
in every subframe. This also gives the flexibility of varying the resource
allocation based on the reported channel conditions
For services such as
VoIP, the packet size is small and the inter-arrival time of VoIP packets is
constant (i.e., AMR codec provides one packet every 20ms during active period and one silence indicator (SID) at 160ms). The control signaling overhead
(PDCCH) is too much for the E-UTRAN in order to support a large number of VoIP
users. So, the optimal solution is to allocate the resources at once and let the
UE use these resources instead of allocating the resources periodically.
How
does the eNB configure the UE with SPS?
The eNB can
configure the UE with SPS at any time but, typically this is done at the time
of dedicated bearer establishment for the VoIP service. SPS can be
configured/re-configured by RRC at any time using SPS-Config. This SPS-Config
includes the configuration for semiPersistSchedC-RNTI
(sps-CRNTI), sps-ConfigDL and sps-ConfigUL.
SPS can be configured
only in the uplink (sps-ConfigUL), or
in the downlink (sps-ConfigDL) or in
both directions. Configuration of SPS doesn’t mean that the UE can start using
SPS grants/assignments. The eNB has to explicitly activate SPS as explained below, in order for the UE to use SPS grants/assignments. So, SPS configuration and activation are two
different things, eNB first configures the UE with SPS and then activates the
same. The eNB can explicitly release SPS without release SPS RRC configuration
SPS
Activation/Release
When configuring SPS in
any direction either UL or DL, SPS C-RNTI
is mandatorily provided by the eNB. Soon after the UE is configured with SPS C-RNTI, the UE is configured by
higher layers to decode PDCCH with CRC scrambled by the SPS C-RNTI.
A UE shall monitor
PDCCH with CRC scrambled by the SPS
C-RNTI in every subframe as the eNB can activate/re-activate/release SPS at
any time using Downlink control information (DCI)
DCI Format 0 is used
to activate/release SPS in UL; DCI Format 1/1A/2/2A/2B/2C is used to activate SPS in
DL. In order to release SPS in DL, only DCI Format 1A can be used. The received DCI format on SPS C-RNTI
can be a grant/assignment for a retransmission or for activation/re-activation/release
of SPS. 3GPP TS 36213 has tabulated the validation procedure for activation/re-activation/release
of SPS. A UE shall validate a SPS assignment PDCCH only if all the following
conditions are met:
· the CRC parity bits obtained for the
PDCCH payload are scrambled with the SPS C-RNTI
· the new data indicator field is set to
‘0’. In case of DCI formats 2, 2A, 2B and 2C, the new data indicator field refers
to the one for the enabled transport block
Validation is achieved if all the
fields for the respective used DCI format are set according to Table 9.2-1 or
Table 9.2-1A. If validation is achieved, the UE shall consider the received DCI
information accordingly as a valid SPS activation or release. If validation is not achieved, the received
DCI format shall be considered by the UE as having been received with a non-matching
CRC
SPS Configuration details
The following high level IEs are
provided by RRC.
SPS-ConfigDL has the following IEs
(for the FDD mode of operation)
SPS-ConfigUL has the following IEs
(for the FDD mode of operation)
SPS Operation in Uplink direction
For UL SPS, SPS C-RNTI, semiPersistSchedIntervalUL,
implicitReleaseAfter and optionally p0-Persistent values are configured by
RRC. After configuring SPS in UL direction, the eNB can send DCI Format 0 on SPS C-RNTI to activate the SPS in UL
direction. After receiving activation command, the UE should consider that the uplink grant has
been configured and should consider sequentially that the Nth grant
occurs in the subframe for which the below condition satisfies:
(10 * SFN + subframe) = [(10 * SFNstart time + subframestart time) + N * semiPersistSchedIntervalUL] modulo 10240
Where SFNstart time and subframestart
time are the SFN and subframe, respectively, at the time the
configured uplink grant were (re-) initialized.
So, the UE shall use the grant provided in the SPS activation DCI Format 0 once every semiPersistSchedIntervalUL subframes and shall transmit PUSCH using this grant. If there is no data to be transmitted, the Multiplexing and Assembly entity shall provide MAC PDU containing zero MAC SDU to be transmitted on Semi-Persistent Scheduling resource. The UE shall clear the configured uplink grant immediately after implicitReleaseAfter number of consecutive new MAC PDUs each containing zero MAC SDUs, on the Semi-Persistent Scheduling resource. This is called as implicit release of UL SPS configured grant. After this the UE shall not use this configured grant for new transmissions at the occasions satisfying the above equation. Note that, retransmissions for Semi-Persistent Scheduling can continue after clearing the configured uplink grant
So, the UE shall use the grant provided in the SPS activation DCI Format 0 once every semiPersistSchedIntervalUL subframes and shall transmit PUSCH using this grant. If there is no data to be transmitted, the Multiplexing and Assembly entity shall provide MAC PDU containing zero MAC SDU to be transmitted on Semi-Persistent Scheduling resource. The UE shall clear the configured uplink grant immediately after implicitReleaseAfter number of consecutive new MAC PDUs each containing zero MAC SDUs, on the Semi-Persistent Scheduling resource. This is called as implicit release of UL SPS configured grant. After this the UE shall not use this configured grant for new transmissions at the occasions satisfying the above equation. Note that, retransmissions for Semi-Persistent Scheduling can continue after clearing the configured uplink grant
The eNB can explicitly send DCI Format
0 to indicate SPS release. Upon receiving DCI Format 0 which indicates SPS
release, the UE should clear the configured uplink grant
Optionally, the eNB can configure the
UE with p0-Persistent which is used
to calculate the transmit power of PUSCH using SPS C-RNTI if the eNB wants the
UE to use different power as compared to PUSCH on C-RNTI. Basically, in the
PUSCH Tx power calculation, the UE should use p0-NominalPUSCH-Persistent
and p0-UE-PUSCH-Persistent in place
of p0-NominalPUSCH and p0-UE-PUSCH respectively. If the IE p0-Persistent absent, the UE shall use p0-NominalPUSCH and p0-UE-PUSCH in PUSCH Tx power calculation
SPS Operation in
Downlink direction
For DL SPS, SPS C-RNTI, semiPersistSchedIntervalDL,
numberOfConfSPS-Processes and n1PUCCH-AN-PersistentList values are
configured by RRC. After configuring SPS in DL direction, the eNB can send DCI
Format 1/1A/2/2A/2B/2C on SPS C-RNTI
to activate the SPS in DL direction. From this point on the UE should consider
that the downlink assignment has been configured and should consider sequentially
that the Nth assignment occurs in the subframe for which the below
condition satisfies:
(10 * SFN + subframe) = [(10 * SFNstart
time + subframestart time) + N * semiPersistSchedIntervalDL]
modulo 10240
Where SFNstart time and subframestart
time are the SFN and subframe, respectively, at the time the
configured downlink assignments were (re-) initialised.
The UE shall use this configured
assignment once in every semiPersistSchedIntervalDL
subframes and decode PDSCH (no corresponding PDCCH).
In order to transmit HARQ response (Ack/Nack) on PUCCH, the UE would need to calculate frequency resources. In the dynamic scheduling case, a PDCCH (DCI) is present, so the UE calculates Ack/Nack resources based on nCCE. For the SPS case, from the DCI format indicating DL SPS activation, the TPC command for PUCCH field shall be used as an index to one of the four PUCCH resource values (n1PUCCH-AN-PersistentList) configured by RRC.
If the eNB wants to release configured
assignment without releasing RRC configuration, it would explicitly send DCI
Format 1A to indicate SPS release. Upon receiving DCI Format 1A which indicates
SPS release, the UE should clear the configured downlink assignment
Another important aspect is the HARQ
process ID calculation. In case of dynamic scheduling the corresponding DCI
format indicates the HARQ process ID, whereas in the case of SPS, there is no PDCCH corresponding to PDSCH. The HARQ process ID needs to be calculated based
on the below equation:
HARQ Process ID = [floor (CURRENT_TTI/semiPersistSchedIntervalDL)] modulo numberOfConfSPS-Processes
where CURRENT_TTI = [(SFN * 10) + subframe number]. Current TTI is the TTI in which PDSCH has been received on the configured assignment
Re-transmission
Handling
Re-transmission handling on SPS C-RNTI (UL or DL) is an important
aspect. When using dynamic scheduling, the eNB would use same NDI (New Data
Indicator) as was sent for initial (new) transmission to indicate the grant/assignment received is for a
re-transmission. When using SPS, the grant/assignment for new transmission is
not provided every time as it is configured already. It has been already explained
for SPS activation/release, that NDI is set to 0. If the eNB wants to send a
grant/assignment for a retransmission it would toggle NDI i.e., NDI is always
set to 1 for a re-transmission
Notes:
o When Semi-Persistent Scheduling for uplink or
downlink is disabled by RRC, the corresponding configured grant or configured
assignment shall be discarded
o
Semi-Persistent Scheduling is supported on the
PCell only
o
The UE should clear any configured downlink
assignments and uplink grants when timeAlignmentTimer
expires or during MAC reset or when UE has transmitted the scheduling request
for maximum number of times (dsr-TransMax)
o
Except for handover or releasing SPS, E-UTRAN
does not reconfigure sps-Config (RRC)
when there is a configured downlink assignment or a configured uplink grant
SPS Occasions can be calculated using the below tool!
SPS Occasions can be calculated using the below tool!
good work
ReplyDeleteits very good indeed...
ReplyDeleteBut then does it mean that Dynamic & SPS can occur at same subframe as UE will have to
decode using CRNTI also??
Yes
ReplyDeleteIn case of SPS, after the current scheduled resources are used up if the UE needs to send more UL data will it send a BSR?
ReplyDeleteYes, BSR will be sent indicating more UL data is pending at UE.
DeleteN/W would then give more UL grant
Thanks for providing this tutorial.
ReplyDeleteI've a question about retransmission.
36.321 - 5.3.2.2 mentions that "If the NDI, when provided, has been toggled compared to the value of the previous received transmission corresponding to this TB, UE shall consider this transmission to be a new transmission".
From your last paragraph, the sentence "When using dynamic scheduling, the eNB would toggle NDI (New Data Indicator) bit to indicate the grant/assignment received is for a re-transmission" seems to me that toggling the NDI bit indicates a re-transmission. This seems different to what the spec means.
Would you mind clarifying the difference?
Thanks a lot
CC
hi Good catch. I wrote it too fast...it was a typo. Correct now. Thanks
DeleteThanks for the tutorial.
ReplyDeleteI have a question.
How is the DL/UL SPS interval informed to the UE ?
I know its via RRC messages. But does it mean they go via DCI or DLSCH ?
Hi Sharan,
ReplyDeleteThe interval is configured by via RRC signalling only. The RRC message is of course go on DL-SCH (C-RNTI). I will be very soon posting a tool (in the same post) which calculates SPS interval and grant/assignment recurring subframe etc...
Thanks
DeleteIs it possible for eNB to reconfigure the DL SPS without relasing the existing configuration using the reconfiguration message. It sends a reconfiguration message again to the UE indicating a change in the SPSSchedulingInterval for example.
ReplyDeleteYes it is possible to reconfigure SPS without releasing but DL SPS should not be active.
ReplyDeleteExcept for handover or releasing SPS, E-UTRAN does not reconfigure sps-Config (RRC) when there is a configured downlink assignment or a configured uplink grant
Hi Kumar,
ReplyDeleteMay I know why only subframe 3/8 are allowed for DL SPS occasions in TDD UL/DL Config-2?
Thanks
CC
Hi,
DeleteThere was bug in the code...the warning message was intended for the uplink...I corrected it now...please check and let me know if it is correct now...Thanks
it's corrected now. thanks
DeleteNice tutorial.
ReplyDeleteI have confusion regarding retransmission for SPS DL data. Will retransmission will be done with SPS-CRNTI and will wait for SPS occasion for retransmission?
retransmission will happen without waiting for SPS DL occasion. Yes, the retransmission is done using SPS-CRNTI
DeleteAwsome tutorial, but why do we use sps crnti as 500 , and SPS scheduling takes advantage of the AMR codec rate, since the codec transmits once in 20 msec..
ReplyDeletethe only thing the scheduler has to be transmit every 20 msec?
can this not be done w/o sps scheduling?
How about UL SPS and measurement gap overlap?
ReplyDeleteWill UE send any data in SPS TTIs which is actually measurement gap?
No. The UE drops PUSCH when it falls in the measGAP. A re-transmission after measGAP would follow.
DeleteGreat!!
ReplyDeleteExcellent tutorial. One question: after activation in UL using activation DCI0, must the eNB send another DCI0 on PDCCH for assignment? Otherwise UE doesn't know about TB size, RB assignment and MCS? Thanks
ReplyDeleteActivation DCI0 itself has the required grant information. Note that only MSB of MCS (and RV) field is set to zero.
DeleteThanks for your response, that is clear now. One other question - If, say for UL SPS, new data arrives at the UE buffer for a different RB (QCI8 data bearer for example) and the existing SPS UL grant is insufficient to carry the new data, then the UE shall have to generate a SR/BSR for this data on PUCCH? And if so, can the eNB schedule UL resource for this data using normal C-RNTI scrambled DCI0 while SPS grant is still active, or does eNB have to release SPS grant and then schedule this data?
DeleteThanks once again.
I think in such cases, eNB would re-activate UL SPS with new assignment i.e More RBs etc
DeleteThere is a question: in TDD config 2 for uplink SPS, why will the non-adaptive re-transmission of packet n collide with the new-transmission of packet n+1? As we know, for TDD config 2, the uplink harq process is the same for subframe 2 (or 7). Provided that in SPS TTI, the packet n needs re-transmission, then the new transmission of packet n+1 will be delayed till the next SPS TTI, so I think the conflict doesn't happen. Could you explain this question for me?
ReplyDeleteI am sorry, I couldn't quite understand your question. The new transmission always take priority over re-transmission. I don't understand what you mean by "the new transmission of packet n+1 will be delayed"
Deletekindly provide Spec reference for following statement:
ReplyDelete"For the SPS case, from the DCI format indicating DL SPS activation, the TPC command for PUCCH field shall be used as an index to one of the four PUCCH resource values (n1PUCCH-AN-PersistentList) configured by RRC."
got it in 3GPP TS 36.213. nice write up on SPS..
DeleteHello Kumar, In Table 7.1-6 of 36.213 (Table 7.1-6: PDCCH and PDSCH configured by SPS C-RNTI), is it hinted that all SPS allocations are TX diversity?
ReplyDeleteYes, PDSCH transmission schemes are TxD except for single antenna port TMs as given in the table that you have mentioned.
DeleteYou can ignore the question above, I got the answer. Thank you.
DeleteThank you Kumar. This is good input.
DeleteThank you Kumar , as usual very good & informative explanation of topic
ReplyDeleteHow does UE find the SFN and subframe start times for UL SPS? Is that the actual SFN and subframe when the DCI0 is received or a different configured number?
ReplyDeleteUE calculates SFN and subframe number based on the below equation.
Delete(10 * SFN + subframe) = [(10 * SFNstart time + subframestart time) + N * semiPersistSchedIntervalUL] modulo 10240
The start SFN and subframe number is when DCI0 for SPS activation is received.
Kumar, i have a doubt.
Delete"The start SFN and subframe number is when DCI0 for SPS activation is received." Is this true for UL SPS in TDD also? Because, in TDD SPS activation in DCI0 would be in DL subframe and actual UL SPS allocation would in in UL subframe.
Thank you for very nice write up.
ReplyDeleteIs it possible to have multiple HARQ processes in UL SPS?
If yes, how they are mapped to PUSCH occasions?
Hi,
DeleteAnswer to your question is NO.
When SPS is activated, the PUSCH and HARQ process is calculated based on the activation TTI and as you are aware the HARQ process is tied to this TTI. To have multiple HARQ processes, multiple PUSCH transmissions on SPS-CRNTI needs to be supported, which means multiple SPS activations needs to be supported which is not the case actually.
Hi,
DeleteSince harq process is tied to TTI , and for activation harq process should be zero , does it mean that sps activation can be sent only in certain subframes?
Hi,
ReplyDeleteHow does eNB know, when to activate the SPS,is it like it should be used only for voip??. if not then what are all the parameters eNB should consider before activating SPS
Hello,
DeleteVoIP is the main and practical application that uses SPS. There could be other applications which periodically transmit/receive data with fixed amount of data which I am not aware of...
Hi, how do you activate a MCS-16 or greater when activation requires the msb(it) to be 0?
ReplyDeleteWhat is PDSCH SPS Power Control.? RRU Power Wastage? Pre Allocation? Timers related to drops and their working?
ReplyDeleteWhat is DL Enhanced Scheduling?
ReplyDeleteI want to know about implicit release of SPS in which if certain number of MAC PDUs have zero MAC SDUs then SPS releases. So is it possible to make a MAC PDU with zero MAC SDU and none Control Element. If yes, how? Can you give any example?
ReplyDeleteThanks broo....Really nice explanation ,Your note gives more clarity than 3GPP documents...Expect more on both LTE and 5G networks...
ReplyDeleteHi, is there any configuration send by eNB for Dynamic sceduling?
ReplyDeleteNo,it will not send. That's why its dynamic/
DeleteFor sps activation/release/re-activation on pdcch, does the UE send any ack/nack?
ReplyDeleteNo, It will not..These are the physical channel & doesn't have harq entity to transmit ACK/NACK..Yes, for the corresponding PDSCH data UE will send ack/nack in PUSCH/PUCCH .
DeleteSPS release is ACKed though, as described in 36.213-7.3.
DeleteIt produces an A/N bit, like any PDSCH.
Hi. For re transmission , in DL data: How UE knows about in which SF it will receive the PDSCH..
ReplyDeleteand for UL: How UE knows in which SF it will send the PUSCH? As for UL UE is clearing configured UL grant?? Kindly reply