关于高通平台搜网注册相关内容整理

时间:2024-03-04 10:10:33

开通博客园很久了,一直没来写点东西,最近在看5G协议,顺便也理一理之前的一点点积累。(如果没有特别指明,本博客都是基于高通平台而言)

1、概述

UE在开机上电后搜网,并注册到网络的过程。

开机之后,相应模块会进行各自的初始化动作以及状态转换。涉及到搜网注网相关的模块(比较关注的)有MMOC、SD、REG、MM、CM等。

经过这几个模块对AP和底层上报的消息进行处理,并最终成功注上网络。

2、涉及模块简介

 

 

CM(Call Manager):提供给AP端一系列的API,这些API让AP端不用再关注AMSS具体是怎么操作的,只需调用相关接口即可。

MMOC(Multimode Controller):多模控制器,是用来控制处理网络模式的选择、网络模式切换、开关机、低电模式等请求的。

SD(System Determination):SD通过自身存储的数据及算法,确认一个最合适的网络模式提供给手机做注册使用。

REG:负责PLMN的选择并且负责不同网络的注册。

MM:(Mobility Management):主要作用是支持用户终端的移动性,如通知网络 MS 的当前位置,提供用户身份安全性管理,以及向CM 层提供连接管理服务。主要业务流程有位置区更新、连接管理、TMSI重新分配等。

架构图暂时省略,不确定会不会违反规定。

在以上五个模块除SD以外其他均采用Task的工作机制,每个模块均自己维护一个独立的task消息队列,而SD则是一个独立的库,其他模块可以直接调用相关接口。感兴趣的可以搜索相关高通文档以及阅读高通代码(主要是看代码)。

3、完整的流程梳理

暂时用语言描述,后续会整理出流程图。先用网上的一张图,大致差不多。

 

 

开机之后,首先会进行一些初始化相关的动作,我们关注的是SIM卡以及搜网相关的NV项。(SIM卡的识别可以参考3GPP TS31.102)

得到sim卡available状态之后,会进行PLMN的选择。(这里可以参考3GPP TS23.122)

这里有一点区别的就是,UE是否首次开机,即是否有先验信息。

如果是有先验信息的情况下,则NAS层指示AS层按照先验信息的参数来进行PLMN搜索,并把结果上报给NAS层。

如果没有先验信息,UE会进行全频段搜索,在每一个频点上搜索最强的小区报告给UE NAS层,由NAS层来决定PLMN搜索是否继续进行。(关于扫频LTE有system scan 和 band scan,WCDMA分粗扫和细扫,待详细整理)

PLMN选择结束以后,会进行小区的搜索。(小区搜索可以参考3GPP TS36.213 4.1Cell search)

没有先验信息的情况下,全频段搜索,在每个频点上搜索最强小区,满足S准则的情况下进行小区驻留。

在有先验信息的情况下,UE只需要在存储信息中的小区进行搜索,当满足S准则时进行小区驻留。(小区选择和小区驻留可以参考3GPP TS36.304)

camp上小区之后,就是RRC的建立以及空口信令流程了,待完善,也不确定能不能贴图。

4、具体log分析

暂时没整理,待完善