drx-inactivityTimer 是C-DRX中比较关键的一个timer,这里是其工作流程的总结。
inactivity-timer是UE等待成功解码PDCCH的持续时间,从PDCCH的最后一次成功解码开启,timer超时后UE可以返回sleep。 UE 应在一次成功解码PDCCH 后重新启动inactivity-timer,这个PDCCH data必须是第一次传输,重传的情况不会restart inactivity timer。
1 drx-inactivitytimer start
UE处于Active Time时,当UE收到一个PDCCH新传调度时,后续可能还有需要发送和接收的UL/DL data,UE需要启动DRX Inactivity定时器来等待一段时间,等待后续可能还有的DL/UL调度。
drx inactivity timer在PDCCH新传调度结束后的第一个symbol启动;drx-inactivitytimer与DRX的其他timer独立运行,没有关联。
2 drx-inactivitytimer expires
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。
3 drx-inactivitytimer stop
UE在收到long DRX Command MAC CE或DRX Command MAC CE时,UE要停止drx-onDurationTimer和drx-InactiveTimer。
此时会根据MAC CE的不同采取不同的措施:
(1)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。
(2)在short cycle期间UE收到long DRX Command MAC CE,就要stop drx-ShortCycleTimer,直接进入long DRX cycle。
结合上面的内容,配置short cycle时的一种DRX图示如下。