在NR中降低UE功耗一直比較重要,如38.300 power saving 所述,NR 中UE power saving的機制有很多。
R16版本的CDRX相比于R15,增加了DCP WUS的內容,也對CSI/SRS部分進行了增強,更細化了CSI/SRS發送的場景,除此之外,UE還可以通過UEAssistanceInformation向網絡report perfer C-DRX cycle length。R17版本的CDRX 增加了NTN,sidelink的內容,也增加了MBS Broadcast/Multicast場景的CDRX。這篇主要看下R16版本的CDRX,算是承上啟下吧。
先看38.300中的描述,了解下DRX 的大概過程。
當配置了 DRX 時,UE 不必持續監視 PDCCH。 DRX具有以下特點:
on-duration:UE 醒來后等待接收 PDCCH 的持續時間。 如果 UE 成功解碼 PDCCH,則 UE 保持清醒并啟動inactivity timer;
inactivity-timer:UE等待成功解碼PDCCH的持續時間,從PDCCH的最后一次成功解碼開始,timer 超時后UE可以返回sleep。 UE 應在一次成功解碼 PDCCH 后重新啟動非活動定時器,這個PDCCH data必須是第一次傳輸,重傳的情況不會restart inactivity timer.
retransmission-timer:預計重傳之前的持續時間;
cycle:on duration+inactivity period 如下圖;
active-time:UE監聽PDCCH的總時長。 這包括 DRX cycle的 on-duration,在inactivity timer 未超時前 UE執行連續接收的時間以及 UE 在等待重傳時機執行連續接收的時間。
相應地,網絡側可以給UE在active BWP中配置DCP-config用于指示UE是否需要在下一個 long DRX cycle開啟drx-onDurationTimer,即可以使得UE保持DRX sleep狀態,達到進一步省電的功能,主要通過 ps-RNTI 加擾的DCI 2_6 中的 Wake-up indication實現。
UE 不會在active-time、measurement gaps、BWP switching期間或者當它監視用于BFR的CFRA preamble 傳輸的response等情況監聽DCP,轉而在next on-duration期間監聽PDCCH。 如果active BWP 中沒有配置 DCP,則 UE 遵循正常的 DRX 操作。配置CA時,僅在PCell上配置DCP。
接下來具體看下DRX 的具體工作原理,主要在38.321 5.7章節。下面是38.321 DRX相關的參數,直接摘抄過來,做記錄,后面再具體看每個參數的含義。
drx-onDurationTimer: the duration at the beginning of a DRX cycle;
drx-SlotOffset: the delay before starting the drx-onDurationTimer;
drx-InactivityTimer: the duration after the PDCCH occasion in which a PDCCH indicates a new UL or DL transmission for the MAC entity;
drx-RetransmissionTimerDL (per DL HARQ process except for the broadcast process): the maximum duration until a DL retransmission is received;
drx-RetransmissionTimerUL (per UL HARQ process): the maximum duration until a grant for UL retransmission is received;
drx-LongCycleStartOffset: the Long DRX cycle and drx-StartOffset which defines the subframe where the Long and Short DRX cycle starts;
drx-ShortCycle (optional): the Short DRX cycle;
drx-ShortCycleTimer (optional): the duration the UE shall follow the Short DRX cycle;
drx-HARQ-RTT-TimerDL (per DL HARQ process except for the broadcast process): the minimum duration before a DL assignment for HARQ retransmission is expected by the MAC entity;
drx-HARQ-RTT-TimerUL (per UL HARQ process): the minimum duration before a UL HARQ retransmission grant is expected by the MAC entity;
ps-Wakeup (optional): the configuration to start associated drx-onDurationTimer in case DCP is monitored but not detected;
ps-TransmitOtherPeriodicCSI (optional): the configuration to report periodic CSI that is not L1-RSRP on PUCCH during the time duration indicated by drx-onDurationTimer in case DCP is configured but associated drx-onDurationTimer is not started;
ps-TransmitPeriodicL1-RSRP (optional): the configuration to transmit periodic CSI that is L1-RSRP on PUCCH during the time duration indicated by drx-onDurationTimer in case DCP is configured but associated drx-onDurationTimer is not started.
DRX參數配置結構
R16版本可以對serving cells 分別配置在兩個DRX group中。主要是為了節能及更好的管理,因而提出將FR1和FR2 分別配置在不同的DRX group,每個DRX group采用各自的drx參數,具體引入原因可以看R2-2004855,38.321中對于兩個DRX group的描述,也就下面這一段,畢竟僅僅是某些參數要獨立配置,重要的還是DRX工作機制。
serving cell的MAC entity 可能會由 RRC 配置在兩個 DRX group中,每個DRX group具有單獨的 DRX 參數。 當RRC沒有配置secondary DRX group時,即只有一個DRX group,那所有的Serving Cell都屬于這個DRX group。 當配置了兩個 DRX group時,每個serving cell會被唯一地分配給兩個組中的任何一個。 每個DRX group單獨配置的DRX參數對應的是drx-ondurationTimer和drx-inactivityTimer。共同的參數是drx-SlotOffset, drx-RetransmissionTimerDL, drx-RetransmissionTimerUL, drx-LongCycleStartOffset, drx-ShortCycle (optional), drx-ShortCycleTimer (optional), drx-HARQ-RTT-TimerDL, and drx-HARQ-RTT-TimerUL。
DRX RRC層參數結構羅列在下面。
接下來按照38.321的內容,分別看下各個timer是如何工作的。
drx-onDurationTimer
DRX cycle開始對應的是一段on Duration ,在on duration期間UE是要監聽PDCCH的,即處于Active time。on duration的時間由drx-onDurationTimer控制,時間單位是1/32ms,即subMiliSeconds。
drx-Inactivitytimer
當UE收到一個PDCCH新傳調度時,后續可能還有需要發送和接收的UL/DL data,UE需要啟動DRX Inactivity定時器來等待一段時間,等待后續可能還有的DL/UL調度。
drx inactivity timer在PDCCH新傳調度結束后的第一個symbol啟動;drx-inactivitytimer與DRX的其他timer獨立運行,沒有關聯。
HARQ-RTT-Timer
對于同一個HARQ進程,當一次上行調度或下行調度,到下一次調度,需要一定的處理時間,這個時長就是HARQ RTT(Round Trip Timer)時間;
在NR 中上下行HARQ都是異步HARQ,即HARQ RTT時長不是固定的。
drx-HARQ-RTT-TimerDL和drx-HARQ-RTT-TimerUL的單位是BWP的symbol個數,最長56個symbol即4個slots。
因此也將上述兩個Timer描述為DL/UL調度重傳的最短時長。
如果不開啟DRX,就不會配置這兩個timer,因為UE總在監聽PDCCH;如果開啟DRX 才會配置這兩個 timer,對于同一個HARQ progress,在Timer運行期間,不會有相同HARQ 的PDCCH 調度。
DRX RetransmissionTimer
drx-RetransmissionTimerDL/UL 的單位是slot數,sl0對應 0個slots,sl1對應 1 slot....
更具體的 在DRX group處于Active Time期間時,
DL:
在UE收到DL data后,要針對對應的HARQ process開啟drx-HARQ-RTT-TimerDL,具體的開啟時間對應HARQ ACK/NACK發送后的第一個symbol,同時停止對應HARQ process 的drx-RetransmissionTimerDL。
值得注意的時上面的內容有一個non-numerical k1 的說法,這個場景對應的NR-U,具體討論可以查看R2-1909808和R2-1912101,大概意思是當DCI PDSH-to-HARQ_feedback timing對應的是一個non-numerical k1(即沒有指定HARQ ACK/NACK 所用的K1),那UE要在接收完當前bundle內最后一個PDSCH后的第一個符號啟動drx-RetransmissionTimerDL,等待下一個DCI 帶下來正確的k1,再進行HARQ ACK/NACK的動作。
當drx-HARQ-RTT-TimerDL超時后,對于同一個HARQ process,如果UE解碼PDSCH失敗時,UE必須要監聽PDCCH來獲取DL 重傳data,這時UE啟動drx-RetransmissionTimerDL來等待下行的重傳data; 如果UE解碼PDSCH成功,不需要啟動drx-RetransmissionTimerDL。
UL:
在UE收到UL grant時,要針對對應的HARQ process開啟drx-HARQ-RTT-TimerUL,具體的開啟時間對應當前bundle內第一個PUSCH發送后的第一個symbol,同時在相應 PUSCH 傳輸的第一次傳輸時就要停止對應HARQ process 的drx-RetransmissionTimerUL。
當drx-HARQ-RTT-TimerUL超時后,對于同一個HARQ進程,UE發送PUSCH后,UE不知道基站是否解碼成功,必須要監聽PDCCH來獲取可能的UL 重傳data,所以這時UE要開啟drx-RetransmissionTimerUL。
針對上述過程的圖示如下:
查看協議可以看到DL SPS 和configured UL grant的描述并沒有上面動態調度的那句"if a DRX group is in Active Time",也就是說DL SPS 和configured UL grant不受DRX active 和sleep機制的影響,按照各自的配置進行UL/DL操作,其他內容基本一樣,具體如下:
DL SPS
在UE收到DL data后,要針對對應的HARQ process開啟drx-HARQ-RTT-TimerDL,具體的開啟時間對應HARQ ACK/NACK發送后的第一個symbol,同時停止對應HARQ process 的drx-RetransmissionTimerDL。
configured UL grant:
在UE收到UL grant時,要針對對應的HARQ process開啟drx-HARQ-RTT-TimerUL,具體的開啟時間對應當前bundle內第一個PUSCH發送后的第一個symbol,同時在相應 PUSCH 傳輸的第一次傳輸時就要停止對應HARQ process 的drx-RetransmissionTimerUL。
DRX cycle
網絡側可以給UE配置drx long cycle或者short cycle,其中short cycle是可以不配置的。
drx-ShortCycle 單位是ms;drx-ShortCycleTimer 對應的是drx-ShortCycle的倍數,drx-ShortCycleTimer 對應的時間就是short cycle的確切時間。
對于long cycle,通過drx-LongCycleStartOffset ms160 : 5 的方式配置,對應drx-LongCycle=160ms drx-StartOffset=5ms。如果有配置drx-ShortCycle時,drx-LongCycle應該是drx-ShortCycle的倍數。
引入short cycle 主要原因是long cycle雖然有利于UE節能,但是可能會影響UE data 的收發。
兩種drx cycle的工作流程如下:
DRX group 的 drx-InactivityTimer 超時后,如果UE有收到Short DRX cycle的配置,就在drx-InactivityTimer超時后的第一個symbol start/restart drx-ShortCycleTimer,開始short DRX cycle;只有long DRX cycle的配置就直接開始long cycle。
drx-ShortCycleTimer 超時后,下面就要進入long DRX cycle。
除了上述方式還能通過MAC CE控制DRX cycle的開啟:
UE收到DRX Command MAC CE,如果UE有收到Short DRX cycle的配置,就在接收完DRX Command MAC CE后的第一個symbol start/restart drx-ShortCycleTimer,開始short DRX cycle;只有long DRX cycle的配置就直接開始long cycle。
另外在short cycle期間UE收到long DRX Command MAC CE,就要stop drx-ShortCycleTimer,直接進入long DRX cycle。
在收到long DRX Command MAC CE或DRX Command MAC CE時,UE要停止drx-onDurationTimer和drx-InactiveTimer,因為之后就要直接進入short cycle或long cycle了。
long DRX Command MAC CE和 DRX Command MAC CE分別通過MAC subheader LCID 59和60進行區分。
DRX 參數 slotOffset
DRX slot offset單位是ms,通過drx slotoffset可以配置On duration開始時間。
通過上述公式分別確定short/long Drx cycle要開始的subframe number,再經過drx-slotoffset后才start drx-onDurationTimer。
結合上面的內容,配置short cycle時的一種DRX圖示如下。
short cycle根據公式計算確定好subframe就好;long cycle的開啟還涉及DCP及其他相關內容。
WUS(wake up signal)
DCP 主要對long DRX cycle起作用,所以對于long DRX cycle,還要考慮DCP 的配置。
UE沒有收到DCP的配置,則按照正常的規則開始long DRX cycle。
UE有收到DCP的配置時要分情況考慮long DRX cycle的啟動:
(1)UE在Outside DRX ActiveTime 期間收到DCI 2_6,其中Wake-up indication =1 代表在下一個 long DRX cycle開啟drx-onDurationTimer;Wake-up indication =0 代表在下一個 long DRX cycle不開啟drx-onDurationTimer,即保持DRX sleep狀態,達到進一步省電的功能,這就是所謂的Wake-up signal,具體過程詳見Dormant BWP 中的DCP-config部分的描述。
(2)DCP-Config-r16的ps-WakeUp,在配置時只能是true,否則可以缺省;ps-WakeUp=true時,代表UE在DRX outside active time沒有檢測到DCI 2_6時,UE要在下一個long DRX cycle時開啟drx-OnDurationTimer,即醒過來;沒有配置ps-WakeUp時,UE也沒有堅持到DCI 2_6,則UE可以繼續處于sleep狀態。
(3)UE要在下一個DCP occasion開始的前4ms結合grants/assignments/DRX Command MAC CE/Long DRX Command MAC CE/SR 發送等情況 評估當前DRX cycle 是否會在Active Time,評估完在Active Time就按照long drx cycle的規則開啟drx-onDurationTimer,不用在下一個DCP occasion監聽DCI 2_6;
(4)在測量間隙期間或者UE正在SpCell的recoverySearchSpaceId指示的搜索空間上監聽PDCCH data時 ,也按照long drx cycle的規則開啟drx-onDurationTimer。
針對上面的(3)舉例說明下
如上圖示,假如在上圖的DCP occasion前4ms評估完,由于congfiured grant UL傳輸或者DL SPS傳輸或者SR的配置等等,DCP occasion那段時間UE要進入Active Time,那就按照對應的規則開啟drx-onDurationTimer。
那這里就引出一個容易被忽視的點,就是DRX Active Time不是由drx-onDurationTimer單獨控制的,在上圖中灰色的sleep狀態,如果有其他相關Timer在運行,也會使得UE進入Active Time。接下來就看下DRX active Time的描述。
DRX active Time
配置DRX后,UE在Active Time要監聽PDCCH 信道,其他時間為sleep時間。
當配置DRX時, DRX group中的serving cells的Active Time包含的時間如下:
-正在運行的DRX group配置的drx-onDurationTimer或drx-InactivityTimer;
- drx-RetransmissionTimerDL 或 drx-RetransmissionTimerUL 正在 DRX group中的任何服務小區上運行;
- ra-ContentionResolutionTimer或 msgB-ResponseWindow正在運行;
- 在 PUCCH 上發送的SR并處于pending狀態等待的時長由SR配置決定;
- 隨機接入成功后 UE等待C-RNTI加擾的PDCCH新傳的時間
即上面的情況都會使得UE進入Active 狀態。
DRX相關的各個timer是相互獨立工作,控制UE DRX 狀態的變化,下面是DRX 有關Timer的匯總。
針對這部分舉個例子
(1)UE只配置了drx long cycle,在 drx-onDurationTimer運行期間處于DRX Acitive Time,需要正常監聽PDCCH;
(2)UE收到UL PDCCH 新傳data時,開啟drx-InactivityTimer,該timer運行期間一直處于Active Time,超時后進入sleep狀態;
(3)UE在drx-InactivityTimer運行期間根據PDCCH的指示,發送了PUSCH 之后,開啟drx-HARQ-RTT-TimerUL;
(4)drx-HARQ-RTT-TimerUL超時后,UE開啟drx-RetransmissionTimerUL,該timer運行期間,UE處于Active Time
(5)橘色框部分,drx-RetransmissionTimerUL 超時后,UE重新進入sleep狀態
(6)紫色框部分,drx-RetransmissionTimerUL運行期間,UE收到網絡側的PDCCH UL重選指示,停止drx-RetransmissionTimerUL;待PUSCH法出去后,再次開啟drx-HARQ-RTT-TimerUL......
DRX 對CSI/SRS的影響
在NR 中,處于RRC connected mode的UE,一般會配置SRS和CSI相關的參數,當DRX 打開后,要考慮UE sleep 狀態和CSI上報及SRS 發送之間的關系。
假如SRS/CSI report 發送的symbol是n,UE有配置DCP-config,如果symbol n處于drx-onDurationTimer運行期間且相關的drx-onDurationTimer還沒有開始:UE要在symbol n提前4ms結合grants/assignments/DRX Command MAC CE/Long DRX Command MAC CE/SR 發送等情況 評估symbol n 時 的MAC entity 是否還會在Active Time,假如評估完MAC entity不在Active Time,即在sleep狀態,那UE就不能發送periodic SRS和semi-persistent SRS ,也不能通過PUSCH 發送semi-persistent CSI;另外如果ps-TransmitPeriodicL1-RSRP不等于true UE也不能在PUCCH上 report L1-RSRP相關的periodic CSI;如果ps-TransmitOtherPeriodicCSI不等于true,UE不能在PUCCH 上發送非L1-RSRP相關的periodic CSI。
ps-TransmitOtherPeriodicCSI和ps-TransmitPeriodicL1-RSRP的配置路徑如下。
除了上面提到的情況外,UE在symbol n提前4ms結合grants/assignments/DRX Command MAC CE/Long DRX Command MAC CE/SR 發送等情況 評估symbol n 時 的MAC entity 是在sleep狀態,那UE就不能發送periodic SRS和semi-persistent SRS ,也不能通過PUSCH 發送semi-persistent CSI 同時也不可以通過PUCCH report CSI;當RRC層有配置csi-Mask且DRX和CSI也有同時配置,UE如果在CSI發送symbol n提前4ms預估是否為on Duration狀態,如果不是On duration就不發送PUCCH 上的CSI report,言外之意是配置csi-Mask 時,UE可以發送PUSCH上的半持續CSI report。
csi-Mask的配置路徑如下。
UEAssistanceInformation
R16 UE還可以通過UEAssistanceInformation向網絡report perfer C-DRX cycle length,上報的drx-preference參數包含preferred drx-InactivityTimer/drx-longcycle/drx-shortcycle/drx-shortCycleTimer,結構如下。
如果UE具備上報perference DRX 參數的能力且網絡側有配置要求UE上報時,UE就可以將preference DRX 參數通過UEAssistanceInformation上報給網絡側。
更具體的,網絡會通過RRCReconfiguration配置otherConfig,其中包含drx-PreferenceConfig setup命令,UE就可以通過UEAssistanceInformation將preference DRX參數上報給網絡側,其中會配置drx-PreferenceProhibitTimer,T346a=drx-PreferenceProhibitTimer,結構圖如上。
在UE通過UEAssistanceInformation上報preference DRX參數后就要針對cell group開啟T346a,在T346a沒有運行的時候,才能再次通過UEAssistanceInformation上報preference DRX參數。
UE收到上述命令后,如果有preference DRX 參數且之前沒有發送過UEAssistanceInformation帶drx-Preference或者之前發送過,但是當前的prefer value與之前上報的不一樣且T346a沒有在運行,那UE針對cell group 開啟T346a 并發送對應的UEAssistanceInformation。
具體UEAssistanceInformation包含drx-Preference消息的生成原則就是UE自行決定上報的DRX參數,如上圖4個prefer 參數都是可許的,UE有就上報,沒有就不用包含該參數。
最后相關的capability IE羅列如下。
-
解碼器
+關注
關注
9文章
1144瀏覽量
40855 -
RRC
+關注
關注
0文章
28瀏覽量
11173 -
定時器
+關注
關注
23文章
3254瀏覽量
115148 -
DCP
+關注
關注
0文章
30瀏覽量
17258 -
SPS
+關注
關注
1文章
70瀏覽量
10404
發布評論請先 登錄
相關推薦
評論