发明内容
本申请实施例提供了一种接收信标帧的方法、装置、芯片及计算机可读存储介质。所述技术方案如下:
根据本申请实施例的一个方面,提供了一种接收信标帧的方法,该方法包括:
确定接收第一信标帧对应的第一接收时刻以及接入点AP发送所述第一信标帧的对应的第一发送时刻;
确定所述AP计划发送所述第一信标帧的第一计划发送时刻以及第二信标帧的第二计划发送时刻,所述第二信标帧为所述第一信标帧的下一个信标帧;
确定所述第一发送时刻分别与所述第一计划发送时刻和所述第二计划发送时刻间的第一时间间隔和第二时间间隔;
根据所述第一接收时刻、信标帧发送周期以及目标时间间隔,确定接收所述第二信标帧的第二接收时刻,所述目标时间间隔为所述第一时间间隔和所述第二时间间隔中的较小值。
在一个可能的实现方式中,根据所述第一接收时刻、信标帧发送周期以及所述目标时间间隔,确定接收所述第二信标帧的第二接收时刻,包括:
将所述第一接收时刻与所述信标帧发送周期相加,确定接收所述第二信标帧的待接收时刻;
若所述目标时间间隔为所述第一时间间隔,则将所述待接收时刻后所述第一时间间隔的时刻作为所述第二接收时刻。
在一个可能的实现方式中,若所述目标时间间隔为所述第二时间间隔,则将所述待接收时刻前所述第二时间间隔的时刻作为所述第二接收时刻。
在一个可能的实现方式中,所述确定接收第一信标帧对应的第一接收时刻,还包括:控制站点STA在接收到所述第一信标帧后的睡眠时刻进入睡眠状态;
所述确定接收所述第二信标帧的第二接收时刻之后,包括:
设置所述STA的唤醒时段,所述第二接收时刻位于所述唤醒时段内;
当确定所述STA处于所述唤醒时段,控制所述STA由睡眠状态进入唤醒姿态,以接收所述第二信标帧,并在所述唤醒时段结束后再次进入睡眠状态。
在一个可能的实现方式中,所述确定所述STA处于所述唤醒时段,包括:
从已接收的信标帧中确定候选信标帧;
分别确定所述AP发送所述候选信标帧和所述第一信标帧的第三时间间隔以及第四时间间隔;
确定所述STA在接收到所述第二信标帧之前的睡眠时长,结合所述第三时间间隔和第四时间间隔,确定以实时时钟表示的所述睡眠时长;
根据所述实时时钟表示的睡眠时长确定所述STA处于所述唤醒时段的起始时刻;
其中,所述第四时间间隔为所述第一信标帧对应的实时时钟计数与所述候选信标帧对应的实时时钟计数的差值。
在另一个可能的实现方式中,所述确定所述STA在接收到所述下一个信标帧之前的睡眠时长,结合所述第三时间间隔和所述第四时间间隔,确定以实时时钟表示的所述睡眠时长,包括:
确定所述睡眠时长与所述第三时间间隔的比值;
将所述比值与所述第四时间间隔相乘,确定以实时时钟表示的所述睡眠时长。
在又一个可能的实现方式中,所述从已接收的信标帧中确定候选信标帧,包括:
将所述已接收的信标帧中,与所述第一信标帧相差预设数目的信标帧作为所述候选信标帧。
根据本申请实施例的另一个方面,提供了一种通信装置,该装置包括:
第一确定模块,用于确定接收第一信标帧对应的第一接收时刻以及接入点AP发送所述第一信标帧的对应的第一发送时刻;
第二确定模块,用于确定所述AP计划发送所述第一信标帧的第一计划发送时刻以及第二信标帧的第二计划发送时刻,所述第二信标帧为所述第一信标帧的下一个信标帧;
第三确定模块,用于确定所述第一发送时刻分别与所述第一计划发送时刻和所述第二计划发送时刻间的第一时间间隔和第二时间间隔;
第四确定模块,用于根据所述第一接收时刻、信标帧发送周期以及目标时间间隔,确定接收所述第二信标帧的第二接收时刻,所述目标时间间隔为所述第一时间间隔和所述第二时间间隔中的较小值。
根据本申请实施例的另一个方面,提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现任一项所述接收信标帧方法的步骤。
根据本申请实施例的另一个方面,提供了一种通信装置,包括处理器和存储器,所述存储器用于存储程序、代码或指令,所述处理器用于执行所述存储器中的所述程序、代码或指令,以使得任一项接收信标帧方法被实现。
根据本申请实施例的另一个方面,本申请提供了一种芯片,包括处理器和存储器,所述存储器用于存储程序、代码或指令,所述处理器用于执行所述存储器中的所述程序、代码或指令,以使得方法任一项所述接收信标帧方法被实现。
根据本申请实施例的再一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现任一项所述接收信标帧方法的步骤。
本申请实施例提供的技术方案带来的有益效果是:准确预估接收beacon的位置,减少定时器误差带来的影响,进而可以通过设置更短的唤醒时段来接收beacon,以降低STA的功耗。
具体实施方式
下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”可以实现为“A”,或者实现为“B”,或者实现为“A和B”。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先对本申请涉及的几个名词进行介绍和解释:
AP:通常为无线访问节点或接入点,它是提供无线工作站对有线局域网和从有线局域网对无线工作站的访问,在访问接入点覆盖范围内的无线工作站可以通过它进行相互通信。
STA:在无线局域网(WirelessLocalAreaNetworks,WLAN)中一般为客户端,可以是装有无线网卡的计算机,也可以是有WiFi模块的智能手机,可以是移动的,也可以是固定的,可以与无线访问节点或接入点AP进行连接。
本申请提供的接收信标帧方法、装置、芯片以及计算机可读存储介质,旨在解决现有技术中存在的技术问题。
下面通过对几个示例性实施方式的描述,对本申请实施例的技术方案以及本申请的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
本申请实施例中提供了一种接收信标帧的方法,如图1所示,该方法包括:
S101、确定接收第一信标帧对应的第一接收时刻以及接入点AP发送所述第一信标帧的对应的第一发送时刻。
在本申请实施例中,WiFi网络中,STA与指定的无线访问节点或接入点(AccessPoint,以下简称为AP)相关联之后,可以定期接收到AP发送的信标帧(以下简称为beacon)。其中STA可以为智能终端或无线客户端。STA可以确定第一信标帧,即最近一次接收到的当前信标帧对应的第一接收时刻,该第一接收时刻可以是STA接收到当前信标帧的时刻,其时间单位可以是微秒;同时,在接收当前信标帧时,可以解析当前信标帧,并确定出AP发送当前信标帧的实际发送时刻,其时间单位可以是微秒。
S102、确定所述AP计划发送所述第一信标帧的第一计划发送时刻以及第二信标帧的第二计划发送时刻,所述第二信标帧为所述第一信标帧的下一个信标帧。
在本申请实施例中,由于AP本身的定时器存在误差以及其它管理帧或数据帧与beacon的冲突,需要进一步确定出AP计划发送第一信标帧,即当前信标帧的第一计划发送时刻,同时并计算出发送第二信标帧,即下一个信标帧的第二计划发送时刻。其中,计划发送时刻为AP根据预设的beacon周期,定时发送beacon时对应的AP侧的时刻,计划发送时刻也可以被称为约定发送时刻或预定发送时刻等,该时刻对应的具体名称,本申请不做具体限定,只要使得本领域技术人员可以确定AP是根据预设的beacon周期,来计划发送beacon即可。
S103、确定所述第一发送时刻分别与所述第一计划发送时刻和所述第二计划发送时刻间的第一时间间隔和第二时间间隔。
在本申请实施例中,可以分别确定出当前第一发送时刻,即实际发送时刻与第一计划发送时刻的第一时间间隔,以及第二计划发送时刻与实际发送时刻的第二时间间隔。
S104、根据所述第一接收时刻、信标帧发送周期以及目标时间间隔,确定接收所述第二信标帧的第二接收时刻,所述目标时间间隔为所述第一时间间隔和所述第二时间间隔中的较小值。
在本申请实施例中,可以将第一时间间隔和第二时间间隔中较小的时间间隔作为目标时间间隔,并可以根据第一接收时刻、beacon发送周期以及目标差值,来确定出STA接收第二beacon,即接收第一beacon之后的下一个beacon的第二接收时刻。其中,STA接收beacon时,可以解析并获得beacon的发送周期以及dtim的周期。其中,dtim(DeliveryTraffic Indication Message)用于传统节电模式中,多点的应用,即由AP通过设置DTIM的间隔/周期,根据这个间隔发送组播流量。
可选的,根据所述第一接收时刻、信标帧发送周期以及所述目标时间间隔,确定接收所述第二信标帧的第二接收时刻,可以包括:
将所述第一接收时刻与所述信标帧发送周期相加,确定接收所述第二信标帧的待接收时刻。
在本申请实施例中,将第一接收时刻与beacon的发送周期相加,以确定出STA接收第二beacon,即接收第一beacon之后的下一个beacon的待接收时刻。
若所述目标时间间隔为所述第一时间间隔,则将所述待接收时刻后所述第一时间间隔的时刻作为所述第二接收时刻。
在本申请实施例中,若目标时间间隔为第一时间间隔,则可以确定出AP实际发送当前beacon的第一发送时刻比第一计划发送时刻相对延迟,需要在待接收时刻的基础上补偿这一部分时长,即将待接收时刻后第一时间间隔对应的时刻作为第二接收时刻。
可选的,若所述目标时间间隔为所述第二时间间隔,则将所述待接收时刻前所述第二时间间隔的时刻作为所述第二接收时刻。
在本申请实施例中,若目标时间间隔为第二时间间隔,则可以确定出AP实际发送当前beacon的第一发送时刻比第一计划发送时刻相对提前,需要在待接收时刻的基础上补偿这一部分时长,即将待接收时刻前第二时间间隔对应的时刻作为第二接收时刻。
在上述各实施例的基础上,作为一种可选的实施例,AP发送当前信标帧的实际发送时刻可以记为T1,通过beacon发送周期以及T1可以计算出AP发送当前beacon的第一计划发送时刻T2=(T1/beacon周期)*beacon周期,其中,T1/beacon周期可以是对T1的向下取整,beacon周期的时间单位可以是微秒。比较第一时间间隔off_T1=(T1-T2)以及第二时间间隔off_T2=(T2+beacon周期-T1),如果off_T1较小,则可以认为AP是在第一计划时刻之后发送的当前信标帧,反之则认为是在第一计划时刻之前发送的当前信标帧。
在上述各实施例的基础上,作为一种可选的实施例,在计算T2以及off_T2时可以将beacon周期替换为dtim周期,即T2=(T1/dtim周期)*dtim周期,off_T2=(T2+dtim周期-T1)。
在上述各实施例的基础上,作为一种可选的实施例,本申请可以确定出STA在接收到当前beacon后,即将进入睡眠时的睡眠时刻,并可以计算出睡眠时刻与第一接收时刻的时间差值offset,可以根据off_T1以及off_T2适当补偿offset,具体可以是,当off_T1较小时,补偿后的offset’=offset-off_T1;当off_T2较小时,补偿后的offset’=offset+off_T2。
在上述各实施例的基础上,确定出补偿后的offset’之后,可以根据睡眠时刻以及beacon发送周期计算出STA接收下一个beacon的第二接收时刻:睡眠时刻-offset’+beacon周期。
具体的,所述确定接收第一信标帧对应的第一接收时刻,还包括:控制站点STA在接收到所述第一信标帧后的睡眠时刻进入睡眠状态。
在本申请实施例中,STA在接收到第一beacon,即当前beacon后,会在睡眠时刻时进入睡眠状态,以降低STA的功耗。
所述确定接收所述第二信标帧的第二接收时刻之后,包括:
设置所述STA的唤醒时段,所述第二接收时刻位于所述唤醒时段内。
在本申请实施例中,可以设置STA唤醒时段,由于AP的定时器存在误差以及STA本身的睡眠定时器也存在一定误差,所以无法确定STA一定会在第二接收时刻接收到第二beacon,即接收到第一beacon之后的下一个beacon,需要设置唤醒时段,并在唤醒时段内一直保持接收下一个beacon的状态,其中,唤醒时段可以包括STA硬件恢复时间,该时间是有STA本身的硬件决定的,用户可以根据自身需要设置唤醒时段的时间长度,以提高接受到beacon的接收率。由于,本申请实施例可以通过上述方式,计算出更加精准的接收下一个信标帧的第二接收时刻,所以在设置唤醒时段时,可以时间间隔设置相对较短的唤醒时段,进而延长STA的睡眠时长,减少STA的功耗。
在上述各实施例的基础上,作为一种可选的实施例,本申请的STA在接收beacon时,可以解析beacon并获得beacon发送周期以及dtim周期,其中dtim周期可以决定STA的睡眠周期,dtim为1时,则表明dtim周期为1个beacon周期,dtim为2时,则表明dtim周期为2个beacon周期…,若确定出dtim大于1时,则可以适当增加唤醒时段的时长,以增加接收到beacon的概率,其中,dtim大小与唤醒时段的时长关系,可以根据用户自身需要进行设置,本申请对此不做具体限定。
在上述各实施例的基础上,作为一种可选的实施例,STA若能正确解析接收到的beacon,则表明STA可以正确接收到beacon,并确定相应的接收时刻。若不能正确解析,则无法接收beacon,并记录未正确接收到的beacon数。当未正确接收到的beacon数达到一定阈值,则根据未正确接收到的beacon数量,增加唤醒时段的时长,以增加接收到beacon的概率,其中未正确接收到beacon的数量与唤醒时段的时长关系,本申请对此不做具体限定,可以根据实际情况自行进行设置,本申请对比不做具体限定。
当确定所述STA处于所述唤醒时段,控制所述STA由睡眠状态进入唤醒姿态,以接收所述第二信标帧,并在所述唤醒时段结束后再次进入睡眠状态。
在本申请实施例中,若确定STA处于唤醒时段,则控制STA由睡眠状态进入至唤醒状态,以接收下一个beacon,并在唤醒时段结束后,再次进入到睡眠状态。
可选的,所述确定所述STA处于所述唤醒时段,可以包括:
从已接收的信标帧中确定候选信标帧。
在本申请实施例中,STA可以从已接收到的多个beacon中确定出候选beacon。
分别确定所述AP发送所述候选信标帧和所述第一信标帧的第三时间间隔以及第四时间间隔。
在本申请实施例中,分别需要确定出AP发送候选beacon的候选发送时刻,以及STA接收到候选beacon的候选实时时钟(Real_Time Clock,以下简称为rtc)时刻;同时,确定出STA接收第一beacon,即接收当前beacon时的当前rtc时刻。根据确定出的候选发送时刻以及第一发送时刻(AP侧实际发送第一信标帧的时刻),确定出第三时间间隔;根据确定出的候选rtc时刻以及当前rtc时刻,确定出第四时间间隔(以实时时钟表示的时间间隔)。
实时时钟可以运行于STA上,实时时钟的计数单位是cnt值。rtc的频率通常是32768HZ/s,因此一个cnt值对应1/32768秒。
确定所述STA在接收到所述下一个信标帧之前的睡眠时长,结合所述第三时间间隔和第四时间间隔,确定以rtc时钟表示的所述睡眠时长。
在本申请实施例中,可以根据STA的睡眠时刻以及唤醒时段的起始时刻,即唤醒时刻,确定出STA的睡眠时长,该时长的时间单位可以是微秒,由于STA在进入睡眠状态时,只有rtc在工作,所以需要将睡眠时长转换为以rtc(实时时钟)表示的睡眠时长。
根据所述实时时钟表示的睡眠时长确定STA处于所述唤醒时段的rtc起始时刻;其中,所述第四时间间隔为所述第一信标帧对应的实时时钟时钟计数与所述候选信标帧对应的实时时钟计数的差值。
在本申请实施例中,根据以rtc时钟表示的睡眠时长确定出STA处于唤醒时段的rtc起始时刻,即在以rtc时钟表示的睡眠时长之后,设置rtc唤醒中断,以唤醒STA。
具体的,所述确定所述STA在接收到所述第二信标帧之前的睡眠时长,结合所述第三时间间隔和所述第四时间间隔,确定以实时时钟表示的所述睡眠时长,包括:
确定所述睡眠时长与所述第三时间间隔的比值;将所述比值与所述第四时间间隔相乘,确定以实时时钟表示的所述睡眠时长。
在本申请实施例中,STA在接收AP发送的beacon时,可以从beacon中获取相应的AP侧时间戳(timestamp)信息,通过AP侧时间戳信息,可以确定出AP发送beacon时对应的实际发送时刻。可以预先获取已接收到的m个beacon对应的AP侧时间戳信息,具体可以将接收到的第一个beacon对应的AP侧的时间戳信息记为timestamp_1,第m个beacon的时间戳信息记为timestamp_m,可以以off_timestamp表示第三时间间隔,则off_timestamp=timestamp_m-timestamp_1。同时,STA可以在接收每一个beacon时记录其内部安装的实时时钟对应的rtc_时刻,例如,第一个beacon对应的rtc时间为rtc_1,第m个beacon对应的rtc时间为rtc_m,以off_rtc表示第四时间间隔,则off_rtc=rtc_m-rtc_1。以len表示睡眠时长,len’表示以rtc(实时时钟)表示的睡眠时长。即,len’=len*off_rtc/off_timestamp。在上述各实施例的基础上,如图2所示,其中t1为STA接收到当前beacon的第一接收时刻,t2为STA即将进入睡眠的时刻,t3为STA唤醒时段的起始rtc时刻,t4为STA硬件恢复的时刻,t5为接收下一个信标帧的第二接收时刻,t6为STA下一次进入睡眠的时刻。根据t1、t2以及beacon周期,预估出接收下一个信标帧的第二接收时刻-t5,并根据设置好的唤醒时段,确定出STA唤醒时刻t3’(图中未示出),鉴于t3’的时刻对应的时间单位为STA本地时间戳对应的时间单位,需要进一步对其进行转换,转换为rtc时刻-t3,并根据以实时时钟表示的睡眠时长,为STA设置rtc中断,使其在t3时刻进入唤醒时段。
具体的,所述从已接收的信标帧中确定候选信标帧,包括:
将所述已接收的信标帧中,与所述第一信标帧相差预设数目的信标帧作为所述候选信标帧。
在本申请实施例中,可以按照接收beacon的时间顺序,确定出与第一beacon相差预设数目的beacon作为候选beacon。通过上述方式,可以在一定程度上减少AP的定时波动对数据的影响。
在上述实施例的基础上,作为一种可选的实施例,本申请若在确定AP的定时波动较小时,或者AP的定时波动幅度对后续数据的收集不会造成显著影响时,可以在STA已接收的beacon中,选取相邻预设数目的beacon,并根据AP发送它们的实际发送时刻以及STA接收它们的rtc时刻,确定出off_timestamp以及off_rtc。
在上述各实施例的基础上,作为一种可选的实施例,参见图3,其中,B-1,B-2,B-m,B-m+1,分别表示STA按照时间顺序,第一个正确接收到的beacon(B-1),第二个正确接收到的beacon(B-2),第m个正确接收到的beacon(B-m)以及第m+1个接收到的beacon(B-m+1)。其中,m是可以预先设置好的正整数值,若当前接收到beacon为第m+1个,则可以获取第二个beacon(B-2)的实际发送时刻以及STA接收时对应的rtc时刻,并计算出相应的第三时间间隔以及rtc时间间隔;若AP定时波动较小时,即便当前接收的beacon为第m+1个,也可以确定出第m个beacon(B-m)以及第一个beacon(B-1)的实际发送时刻以及rtc时刻,并由此计算出第三时间间隔以及第四时间间隔。
本申请实施例提供了一种接收信标帧的装置,如图4所示,该接收信标帧装置40可以包括:第一确定模块401、第二确定模块402、第三确定模块403以及第四确定模块404,其中,
第一确定模块401,用于确定接收第一信标帧对应的第一接收时刻以及接入点AP发送所述第一信标帧的对应的第一发送时刻;
第二确定模块402,用于确定所述AP计划发送所述第一信标帧的第一计划发送时刻以及第二信标帧的第二计划发送时刻,所述第二信标帧为所述第一信标帧的下一个信标帧;
第三确定模块403,用于确定所述第一发送时刻分别与所述第一计划发送时刻和所述第二计划发送时刻间的第一时间间隔和第二时间间隔;
第四确定模块404,用于根据所述第一接收时刻、信标帧发送周期以及目标时间间隔,确定接收所述第二信标帧的第二接收时刻,所述目标时间间隔为所述第一时间间隔和所述第二时间间隔中的较小值。
具体的,第四确定模块404可以包括:计算模块、第一判断模块以及第二判断模块,其中,
计算模块,用于将所述第一接收时刻与所述信标帧发送周期相加,确定接收所述第二信标帧的待接收时刻;
第一判断模块,用于若所述目标时间间隔为所述第一时间间隔,则将所述待接收时刻后所述第一时间间隔的时刻作为所述第二接收时刻;
第二判断模块,用于若所述目标时间间隔为所述第二时间间隔,则将所述待接收时刻前所述第二时间间隔的时刻作为所述第二接收时刻。
第一确定模块401可以包括:睡眠模块、设置模块以及唤醒模块,其中,
睡眠模块,用于控制站点STA在接收到所述第一信标帧后的睡眠时刻进入睡眠状态;
设置模块,用于设置所述STA的唤醒时段,所述第二接收时刻位于所述唤醒时段内;
唤醒模块,用于当确定所述STA处于所述唤醒时段,控制所述STA由睡眠状态进入唤醒姿态,以接收所述第二信标帧,并在所述唤醒时段结束后再次进入睡眠状态。
进一步的,唤醒模块可以包括:选取模块、第一确定子模块、第二确定子模块以及第三确定子模块,其中,
选取模块,用于从已接收的信标帧中确定候选信标帧;
第一确定子模块,用于分别确定所述AP发送候选信标帧和所述第一信标帧的第三时间间隔以及第四时间间隔;
第二确定子模块,用于确定所述STA在接收到所述第二信标帧之前的睡眠时长,结合所述第三时间间隔和第四时间间隔,确定以实时时钟表示的所述睡眠时长;
第三确定子模块,用于根据所述实时时钟表示的睡眠时长确定STA处于所述唤醒时段的起始时刻。
具体的,选取模块可以包括:选取子模块,其中,
选取子模块,用于将所述已接收的信标帧中,与所述第一信标帧相差预设数目的信标帧作为所述候选信标帧。
第二确定子模块可以包括:第一计算子模块和第二计算子模块,其中,
第一计算子模块,用于确定所述睡眠时长与所述第三时间间隔的比值;
第二计算子模块,用于将所述比值与所述第四时间间隔相乘,确定以实时时钟表示的所述睡眠时长。
通信装置40,可以准确预估接收beacon的位置,减少定时器误差带来的影响,进而可以通过设置更短的唤醒时段来接收beacon,以降低STA的功耗。
通信装置40还可以执行上述方法实施例中的其他方法和步骤,在此不予赘述。
本申请实施例的装置可执行本申请实施例所提供的方法,其实现原理相类似,本申请各实施例的装置中的各模块所执行的动作是与本申请各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述具体可以参见前文中所示的对应方法中的描述,此处不再赘述。
本申请实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行上述计算机程序以实现接收信标帧方法的步骤,与相关技术相比可实现:准确预估接收beacon的位置,减少定时器误差带来的影响,进而可以通过设置更短的唤醒时段来接收beacon,以降低STA的功耗。
在一个可选实施例中提供了一种电子设备,如图5所示,图5所示的电子设备5000包括:处理器5001和存储器5003。其中,处理器5001和存储器5003相连,如通过总线5002相连。可选地,电子设备5000还可以包括收发器5004,收发器5004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器5004不限于一个,也可能不存在收发器5004,该电子设备5000的结构并不构成对本申请实施例的限定。
处理器5001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器5001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线5002可包括一通路,在上述组件之间传送信息。总线5002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线5002可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器5003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。
存储器5003用于存储执行本申请实施例的计算机程序,并由处理器5001来控制执行。处理器5001用于执行存储器5003中存储的计算机程序,以实现前述方法实施例所示的步骤。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
本申请实施例还提供了一种芯片,包括处理器和存储器,所述存储器用于存储程序、代码或指令,所述处理器用于执行所述存储器中的所述程序、代码或指令,以使得前述方法实施例的步骤及相应内容被实现。
根据本申请实施例的另一个方面,提供了一种通信装置,包括处理器和存储器,所述存储器用于存储程序、代码或指令,所述处理器用于执行所述存储器中的所述程序、代码或指令,以使得任一项接收信标帧方法被实现。
根据本申请实施例的另一个方面,本申请提供了一种芯片,包括处理器和存储器,所述存储器用于存储程序、代码或指令,所述处理器用于执行所述存储器中的所述程序、代码或指令,以使得方法任一项所述接收信标帧方法被实现。
根据本申请实施例的另一个方面,所述芯片处理器用于:
确定接收第一信标帧对应的第一接收时刻以及接入点AP发送所述第一信标帧对应的第一发送时刻;
确定所述AP计划发送所述第一信标帧的第一计划发送时刻以及第二信标帧的第二计划发送时刻,所述第二信标帧为所述第一信标帧的下一个信标帧;
确定所述第一发送时刻分别与所述第一计划发送时刻和所述第二计划发送时刻间的第一时间间隔和第二时间间隔;
根据所述第一接收时刻、信标帧发送周期以及目标时间间隔,确定接收所述第二信标帧的第二接收时刻,所述目标时间间隔为所述第一时间间隔和所述第二时间间隔中的较小值。
根据本申请实施例的另一个方面,所述芯片的处理器用于:
将所述第一接收时刻与所述信标帧发送周期相加,确定接收所述第二信标帧的待接收时刻;
若所述目标时间间隔为所述第一时间间隔,则将所述待接收时刻后所述第一时间间隔的时刻作为所述第二接收时刻;
若所述目标时间间隔为所述第二时间间隔,则将所述待接收时刻前所述第二时间间隔的时刻作为所述第二接收时刻。
根据本申请实施例的另一个方面,所述芯片的处理器用于:
控制站点STA在接收到所述第一信标帧后的睡眠时刻进入睡眠状态;
设置所述STA的唤醒时段,所述第二接收时刻位于所述唤醒时段内;
当确定所述STA处于所述唤醒时段,控制所述STA由睡眠状态进入唤醒姿态,以接收所述第二信标帧,并在所述唤醒时段结束后再次进入睡眠状态。
根据本申请实施例的又一个方面,所述芯片的处理器还用于:
从已接收的信标帧中确定候选信标帧;
分别确定所述AP发送所述候选信标帧和所述第一信标帧的第三时间间隔以及第四时间间隔;
确定所述STA在接收到所述第二信标帧之前的睡眠时长,结合所述第三时间间隔和所述第四时间间隔,确定以实时时钟表示的所述睡眠时长;
根据所述实时时钟表示的睡眠时长确定所述STA处于所述唤醒时段的起始时刻;
其中,所述第四时间间隔为所述第一信标帧对应的实时时钟计数与所述候选信标帧对应的实时时钟计数的差值。
根据本申请实施例的又一个方面,所述芯片的处理器还用于:
确定所述睡眠时长与所述第三时间间隔的比值;
将所述比值与所述第四时间间隔相乘,确定以实时时钟表示的所述睡眠时长。
根据本申请实施例的再一个方面,所述芯片的处理器还用于:
将所述已接收的信标帧中,与所述第一信标帧相差预设数目的信标帧作为所述候选信标帧。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除图示或文字描述以外的顺序实施。
应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。
以上所述仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。