物理层和上层的同步方法与流程

文档序号:12630845阅读:467来源:国知局
物理层和上层的同步方法与流程

本申请涉及通信技术领域,尤其涉及一种物理层和上层的同步方法。



背景技术:

功耗对于移动终端而言是十分重要的评估指标,功耗越低,终端的待机时间越长,终端性能越好。为了省电考虑,通常在无线通信协议中都定义了不连续接收,允许终端按照一定的周期和规律进行睡眠。

无线通信终端的睡眠涉及到上层和物理层的设计和实现。物理层会根据不连续接收的特点以及接收寻呼和测量的需要来决定何时睡眠及何时唤醒,并根据不同的接收情况和测量上报要求决定是否唤醒上层;上层会根据不连续接收的特点以及应用的需要来决定何时睡眠及何时唤醒,并根据需要决定是否唤醒物理层;物理层和上层是两个独立的子系统,可以独立控制自身的睡眠或者唤醒,以及是否唤醒对方。同时,物理层和上层之间也需要根据协议要求和应用需要给对方发送消息,这些消息都是需要对方实时处理的,否则会影响终端的移动性、业务的响应时间等性能指标。

根据上述的上层和物理层两个独立子系统的睡眠、唤醒特点以及之间消息发送的需要,终端系统可能存在如下的问题:一方正在启动睡眠,另一方正在发消息,消息可能无法正常写入,导致丢消息或写入的消息不完整,最后导致系统挂死;即使消息正常写入,睡眠方也无法实时处理,影响终端性能。

现有技术中,为了解决A方正在睡眠和B方向A方发消息的冲突,设置一个状态变量,在A方启动睡眠之前,设置状态变量为睡眠状态,B方每次发消息前都查询这个状态变量,如果为睡眠状态,则启动对A方的唤醒流程,A方唤醒后改变状态变量为非睡眠状态,B方查询A方为非睡眠状态后启动给A方 发消息的流程,A方在非睡眠状态可以实时处理消息。A方和B方可以是物理层和上层子系统之一。

然而,B方每次发消息查询状态变量的时间,可能刚好在A方决定睡眠设置状态变量之前,在这种情况下,B方依然认为可以发送消息,而A方依然会启动睡眠,由于双方睡眠和发消息没有做到同步,还是会存在丢消息或消息无法实时处理的问题。



技术实现要素:

本申请的目的是提供一种物理层和上层的同步方法,以解决物理层和上层之间由于其中一方处于睡眠状态而导致的消息丢失或消息无法实时处理的问题。

为了实现上述目的,一方面,本申请提供了一种物理层和上层的同步方法,所述方法包括:

当所述物理层向所述上层发送消息时,所述物理层获取睡眠管理单元中的第一信号量,利用所述第一信号量向所述上层发送消息,待消息发送完成后,释放所述第一信号量;

当所述上层向所述物理层发送消息时,所述上层获取睡眠管理单元中的第二信号量,利用所述第二信号量向所述物理层发送消息,待消息发送完成后,释放所述第二信号量。

另一方面,本申请提供了一种物理层和上层的同步方法,所述方法包括:

当所述上层需要进入睡眠状态时,所述上层获取睡眠管理单元中的第一信号量,利用所述第一信号量进入睡眠状态,待睡眠状态结束后,释放所述第一信号量;

当所述物理层需要进入睡眠状态时,所述物理层获取睡眠管理单元中的第二信号量,利用所述第二信号量进入睡眠状态,待睡眠状态结束后,释放所述第二信号量。

本申请提供的物理层和上层的同步方法,通过在睡眠管理单元中增加两个信号量,物理层和上层利用两个信号量进行消息发送和睡眠,从而实现了物理层和上层之间工作同步和睡眠同步,避免了由于物理层和上层一方睡眠而导致的消息丢失或消息无法实时处理。

附图说明

图1为本申请中的上层、物理层和睡眠管理单元之间的交互过程示意图;

图2为本申请实施例一提供的物理层和上层的同步方法流程图;

图3为本申请实施例二提供的物理层和上层的同步方法流程图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请技术方案应用于无线通信终端(如,手机,平板电脑以及笔记本电脑等)内部的物理层和上层之间的通信,睡眠管理单元为终端内部控制物理层和上层进入睡眠和唤醒状态的单元,本申请在睡眠管理单元中增加了两个信号量,第一信号量和第二信号量,第一信号量用于上层睡眠和物理层向上层发送消息,第二信号量用于物理层睡眠和上层向物理层发送消息。上层、物理层和睡眠管理单元之间的交互过程如图1所示。

图2为本申请实施例一提供的物理层和上层的同步方法流程图。如图2所示,所述方法具体包括:

步骤201,当所述物理层向所述上层发送消息时,所述物理层获取睡眠管理单元中的第一信号量,利用所述第一信号量向所述上层发送消息,待消息 发送完成后,释放所述第一信号量。

具体地,当物理层向上层发送消息时,物理层判断第一信号量是否空闲,如果是,则利用第一信号量向上层发送消息。待消息发送完成后,释放第一信号量。如果否,则唤醒上层,上层释放第一信号量,物理层利用第一信号量向所述上层发送消息。待消息发送完成后,释放第一信号量。

举例来说,当物理层向上层发送消息时,物理层访问睡眠管理单元中的寄存器,如果返回值为1,则表示第一信号量空闲,物理层利用第一信号量向上层发送消息,待消息发送完成后,物理层通过在寄存器中写入1的方式释放第一信号量。如果寄存器返回值为0,则表示上层在睡眠状态,占用了第一信号量,物理层通过唤醒机制唤醒上层,上层被唤醒后,通过在寄存器中写入1的方式释放第一信号量,以便于物理层利用第一信号量向上层发送消息,上层接收到物理层发送的消息后进行处理,避免了由于上层睡眠导致的消息丢失以及无法实时处理。

当上层向物理层发送消息时,步骤201替换为以下步骤:

上层获取睡眠管理单元中的第二信号量,利用第二信号量向物理层发送消息,待消息发送完成后,释放第二信号量。

具体地,上层判断第二信号量是否空闲,如果是,则利用第二信号量向物理层发送消息。如果否,则唤醒物理层,物理层释放第二信号量,上层利用第二信号量向物理层发送消息。

举例来说,当上层向物理层发送消息时,上层访问睡眠管理单元中的寄存器,如果返回值为1,则表示第二信号量空闲,上层利用第二信号量向物理层发送消息,待消息发送完成后,上层通过在寄存器中写入1的方式释放第二信号量。如果寄存器返回值为0,则表示物理层在睡眠状态,占用了第二信号量,上层通过唤醒机制唤醒物理层,物理层被唤醒后,通过在寄存器中写入1的方式释放第二信号量,以便于上层利用第二信号量向物理层发送消息,物理层接收到上层发送的消息后进行处理,避免了由于物理层睡眠导致的消 息丢失以及无法实时处理。

本实施例提供的物理层和上层的同步方法,通过在睡眠管理单元中增加两个信号量,物理层和上层利用两个信号量进行消息发送和睡眠,从而实现了物理层和上层之间工作同步和睡眠同步,避免了由于物理层和上层一方睡眠而导致的消息丢失或消息无法实时处理。

图3为本申请实施例二提供的物理层和上层的同步方法流程图。如图3所示,所述方法具体包括:

步骤301,当所述上层需要进入睡眠状态时,所述上层获取睡眠管理单元中的第一信号量,利用所述第一信号量进入睡眠状态,待睡眠状态结束后,释放所述第一信号量。

具体地,当上层需要进入睡眠状态时,上层判断第一信号量是否空闲,如果是,则利用第一信号量进入睡眠状态。如果否,则接收物理层发送的消息,待消息接收完成后,物理层释放第一信号量,上层处理完接收到的消息后,利用第一信号量进入睡眠状态。

举例来说,通常在无线通信协议中都定义了不连续接收,允许终端按照一定的周期和规律进行睡眠。当上层需要进入睡眠状态时,上层访问睡眠管理单元中的寄存器,如果返回值为1,则表示第一信号量空闲,此时物理层没有向上层发送消息,则上层利用第一信号量进入睡眠状态,待睡眠状态结束后,上层通过在寄存器中写入1的方式释放第一信号量。如果寄存器返回值为0,则表示物理层正在向上层发送消息,占用了第一信号量,则上层接收物理层发送的消息,待消息接收完成后,物理层通过在寄存器中写入1的方式释放第一信号量,上层处理完接收到的消息后,利用第一信号量进入睡眠状态,避免了由于上层睡眠导致的消息丢失以及无法实时处理。

当物理层需要进入睡眠状态时,步骤301替换为以下步骤:

所述物理层获取所述睡眠管理单元中的第二信号量,利用所述第二信号量进入睡眠状态,待睡眠状态结束后,释放所述第二信号量。

具体地,当物理层需要进入睡眠状态时,物理层判断第二信号量是否空闲,如果是,则利用第二信号量进入睡眠状态。如果否,则接收上层发送的消息,待消息接收完成后,上层释放第二信号量,物理层处理完接收到的消息后,利用第二信号量进入睡眠状态。

举例来说,通常在无线通信协议中都定义了不连续接收,允许终端按照一定的周期和规律进行睡眠。当物理层需要进入睡眠状态时,物理层访问睡眠管理单元中的寄存器,如果返回值为1,则表示第二信号量空闲,此时上层没有向物理层发送消息,则物理层利用第二信号量进入睡眠状态,待睡眠状态结束后,物理层通过在寄存器中写入1的方式释放第二信号量。如果寄存器返回值为0,则表示上层正在向物理层发送消息,占用了第二信号量,则物理层接收上层发送的消息,待消息接收完成后,上层通过在寄存器中写入1的方式释放第二信号量,物理层处理完接收到的消息后,利用第二信号量进入睡眠状态,避免了由于物理层睡眠导致的消息丢失以及无法实时处理。

本实施例提供的物理层和上层的同步方法,通过在睡眠管理单元中增加两个信号量,物理层和上层利用两个信号量进行消息发送和睡眠,从而实现了物理层和上层之间工作同步和睡眠同步,避免了由于物理层和上层一方睡眠而导致的消息丢失或消息无法实时处理。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的对象及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器 (RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1