首页> 中国专利> 优先化时间敏感的应用的短距离无线分组

优先化时间敏感的应用的短距离无线分组

摘要

本公开涉及优先化时间敏感的应用的短距离无线分组。在实施例中,在拥塞的无线环境中,客户端站操作以识别和优先化时间敏感的短距离无线分组,诸如时间敏感的蓝牙低能耗(BTLE)分组。客户端站可利用例如提供分组的设备的类型、提供分组的设备的状态和/或包括在分组中的数据的类型来识别时间敏感的分组。客户端站可以以各种方式优先化时间敏感的分组,包括通过对时间敏感的分组提供优先级调度;暂停其它类型蓝牙分组(诸如A2DP分组)的通信;降低其它类型蓝牙分组(诸如A2DP分组)的数据速率;和/或扩展时间敏感的BTLE分组的数据分组大小。因此时间敏感的分组可相对与相同无线协议和/或不同无线协议关联的分组被优先化。

著录项

  • 公开/公告号CN106559738A

    专利类型发明专利

  • 公开/公告日2017-04-05

    原文格式PDF

  • 申请/专利权人 苹果公司;

    申请/专利号CN201610626272.1

  • 发明设计人 C·陈;S·莱曼;陈欣瑶;娄文平;

    申请日2016-08-02

  • 分类号H04W4/00;H04W72/12;

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人周磊

  • 地址 美国加利福尼亚

  • 入库时间 2023-06-19 01:55:21

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-03-27

    授权

    授权

  • 2017-05-03

    实质审查的生效 IPC(主分类):H04W4/00 申请日:20160802

    实质审查的生效

  • 2017-04-05

    公开

    公开

说明书

技术领域

本申请涉及无线通信,包括用于无线联网系统中无线站和附属设备之间的无线通信的技术。

背景技术

无线通信系统的使用正迅速增长。而且,无线通信技术已从仅语音通信演变为还包括数据(诸如互联网和多媒体内容)的传输。流行的短/中等距离无线通信标准是无线局域网(WLAN)。最现代的WLAN是基于IEEE 802.11标准(或简称为802.11)的并且以Wi-Fi品牌名称被销售。WLAN网络将一个或多个设备链接到无线接入点,无线接入点又提供到更广区域互联网的连接性。

在802.11系统中,彼此无线连接的设备被称为“无线站”、“站”、“移动站”、“用户设备”或简称为STA或UE。无线站可以是无线接入点或无线客户端(或移动站)。也被称为无线路由器的接入点(AP)为无线网络充当基站。AP发送和接收用于与无线客户端设备通信的射频信号。AP典型地还可以以有线方式耦合到互联网。在802.11网络上操作的无线客户端可以是任何的各种设备,诸如笔记本电脑、平板设备、智能电话、或诸如台式计算机的固定设备、视频游戏系统、或者其它娱乐设备。

另一种流行的短距离无线通信标准是蓝牙(“BT”),包括蓝牙低能耗(“BTLE”)协议。蓝牙通信对于将无线设备连接到各种附属设备特别受欢迎,这些附属设备诸如头戴式耳机、耳机、扬声器、键盘、鼠标、跟踪板、触控笔、遥控器、游戏控制器、可穿戴设备(例如,智能手表或智能眼镜)、家庭自动化设备,等等。蓝牙还可被用来提供无线设备之间的通信,诸如用来从移动设备到智能电视、数字媒体播放器或其它娱乐设备流传输音频/视频内容以供显示;或者用来直接在无线设备之间传送用户文件或其它数据。

Wi-Fi和蓝牙都占据2.4GHz ISM频带的一部分。随着启用蓝牙的附属设备在与启用Wi-Fi的无线站的通信中变得越来越多产,这个频带的拥塞也随之增加。这会导致增加的通信等待时间,因为调度约束和干扰导致通信分组被延迟或重传。

发明内容

本文所描述的实施例涉及使时间敏感的蓝牙通信优先的系统和方法。

一些实施例涉及用于在附属设备和客户端站之间传送数据分组的方法。客户端站可以与多个附属设备建立通信,确定与多个附属设备中的第一附属设备的通信是时间敏感的通信,以及响应于确定与第一附属设备的通信是时间敏感的通信而优先化与第一附属设备的通信。与第一附属设备的通信可以包括蓝牙低能耗(BTLE)通信。

通过确定第一附属设备是被配置为控制客户端站的遥控器,客户端站可以确定与第一附属设备的通信是时间敏感的。客户端站可以进一步确定遥控器的麦克风处于活动,用于接收语音命令。客户端站还可以确定与第一附属设备的通信包括音频数据。

通过确定第一附属设备是触控笔,客户端站可以确定与第一附属设备的通信是时间敏感的。客户端站还可以确定触控笔处于低等待时间模式。

客户端站可以确定多个附属设备包括至少阈值数量的附属设备。优先化与第一附属设备的通信还可以响应于确定多个附属设备包括至少阈值数量的附属设备。

优先化与第一附属设备的通信还可以包括在连续的连接间隔期间调度与第一附属设备的通信的一个或多个分组,其中与多个附属设备中的另一附属设备的通信的一个或多个分组被延迟,以允许调度与第一附属设备的通信的一个或多个分组。

客户端站可以确定与多个附属设备中的另一附属设备的通信包括高级音频分发规范(A2DP)分组,其中优先化与第一附属设备的通信包括暂停A2DP分组,直到第一附属设备已完成发送其可用数据。作为替代或附加地,优先化与第一附属设备的通信包括降低A2DP分组的数据速率。

优先化与第一附属设备的通信可以包括对于与第一附属设备的通信的一个或多个BTLE分组扩展数据分组大小。

客户端站可以从第一附属设备接收通信分组。作为响应,客户端站可以发送应答分组。第一附属设备可被配置为保持在活跃状态,直到接收到应答分组。

一些实施例涉及被配置为执行本文所描述的任何步骤或动作的无线站,诸如上述的客户端站。

一些实施例涉及存储由无线通信设备的一个或多个处理器执行以使无线通信设备执行本文所描述的任何步骤或动作的软件指令的计算机可读介质。

本发明内容是为了提供在本文档中描述的一些主题的简要概述。因此,应当认识到的是,上述特征仅仅是示例并且不应当被认为是以任何方式缩小本文所描述的主题的范围或精神。本文所描述的主题的其它特征、方面以及优点将从下面的具体实施方式、附图说明和权利要求书变得明晰。

附图说明

当实施例的以下详细描述结合附图考虑时,可以获得本主题的更好理解。

图1示出了根据一些实施例的示例WLAN通信系统;

图2示出了根据一些实施例的WLAN接入点(AP)的示例简化框图;

图3示出了根据一些实施例的客户端站的示例简化框图;

图4示出了根据一些实施例的附属设备的示例简化框图;

图5示出了根据一些实施例的其中在拥塞的无线环境中无线客户端站可要求与附属设备的低等待时间通信的示例场景;

图6-9提供了根据一些实施例的用于客户端站和遥控器之间的通信的示例时序图;

图10示出了根据一些实施例的其中在拥塞的无线环境中无线客户端站可要求与附属设备的低等待时间通信的示例场景;

图11示出了根据一些实施例的用于由示例触控笔执行的示例状态图;

图12示出了根据一些实施例的包括一系列数据帧但没有帧聚合的Wi-Fi信号的例子;

图13示出了根据一些实施例的包括一系列数据帧且具有帧聚合的Wi-Fi信号的例子;

图14示出了根据一些实施例的实现用于优先化时间敏感的分组的特征的Wi-Fi站的实验性能特性;

图15A和15B示出了根据一些实施例的其中在拥塞的无线环境中BTLE分组作为低优先级分组和作为高优先级分组被处理的情况;以及

图16A至16C示出了根据一些实施例的在主设备和从设备之间的示例蓝牙通信场景。

虽然本文所描述的特征易于有各种修改和备选形式,但是其具体实施例在附图中作为例子示出并且在本文中被详细描述。但是,应当理解,附图以及详细描述不是要限定到所公开的特定形式,而是相反,意图是要涵盖属于由权利要求定义的主题的精神和范围内的所有修改、等效物和备选方案。

具体实施方式

缩略语

各种缩略语贯穿本申请被使用。以下提供贯穿本申请可能出现的最主要使用的缩略语的定义:

AP:接入点

A2DP:高级音频分发规范

BT:蓝牙

BTLE:蓝牙低能耗

MAC:媒体访问控制

TX:发送

RX:接收

LAN:局域网

WLAN:无线局域网

RAT:无线电接入技术

术语

以下是在本公开内容中使用的术语的术语表:

存储介质——任何的各种类型的非暂态存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的非暂态存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。在后面的例子中,第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可存储可由一个或多个处理器执行的程序指令(例如,体现为计算机程序)。

载体介质——上文所描述的存储介质以及诸如总线、网络的物理传输介质和/或传达信号(诸如电、电磁或数字信号)的其它物理传输介质。

计算机系统——各种类型的计算或处理系统中的任何类型,这些计算或处理系统包括个人计算机系统(PC)、大型计算机系统、工作站、网络家电(network appliance)、因特网家电(Internet appliance)、个人数字助理(PDA)、电视系统、网格计算系统或者其它设备或设备的组合。一般来说,术语“计算机系统”可以广义地定义为包括具有至少一个执行来自存储介质的指令的处理器的任何设备(或设备组合)。

移动设备(或移动站)——任何的各种类型的计算机系统设备,它们是移动或便携式的并且利用WLAN通信执行无线通信。移动设备的例子包括移动电话或智能电话(例如,基于iPhoneTM、AndroidTM的电话),以及诸如iPadTM、三星GalaxyTM等的平板电脑。如果各种其它类型的设备包括Wi-Fi或者包括蜂窝和Wi-Fi通信功能这两者,则它们将属于这一类,诸如笔记本电脑(例如,MacBookTM)、便携式游戏设备(例如,Nintendo>TM、PlayStationPortableTM、Gameboy>TM、iPhoneTM)、便携式互联网设备和其它手持设备,以及诸如智能手表、智能眼镜、耳机、吊坠、听筒的可穿戴设备,等等。一般而言,术语“移动设备”可被广义地定义为包括容易由用户运输并能够利用WLAN或Wi-Fi进行无线通信的任何电子、计算和/或电信设备(或设备的组合)。

无线设备(或无线站)——任何的各种不同类型的计算机系统设备,它们利用WLAN执行无线通信。如本文所使用的,术语“无线设备”可以指移动设备,如以上所定义的,或者指固定设备,诸如固定无线客户端或无线基站。例如,无线设备可以是任何类型的802.11系统的无线站,诸如接入点(AP)或客户端站(STA或UE)。进一步的例子包括电视机、媒体播放器(例如,AppleTVTM、RokuTM、Amazon>TM、Google>TM,等等)、冰箱、洗衣机、自动调温器,等等。

附属设备——被配置为利用短或中等距离无线通信协议与如上定义的无线设备进行通信以增强无线设备的能力的各种类型的电子设备中的任何一种。附属设备可以利用各种通信协议中的任意一种(诸如Wi-Fi或蓝牙)与无线设备进行通信。附属设备的例子包括头戴式耳机、耳机、扬声器、键盘、鼠标、触控板、触控笔、遥控器、游戏控制器、可穿戴设备(例如,智能手表或智能眼镜)、家庭自动化设备,等等。

WLAN——术语“WLAN”具有其普通含义的全部范围,并且至少包括由WLAN接入点服务并通过这些接入点提供到互联网的连接性的无线通信网络或RAT。大多数现代WLAN是基于IEEE802.11标准并以名称“Wi-Fi”被销售。WLAN网络与蜂窝网络不同。

处理元件——是指在计算机系统中执行功能的数字电路系统的各种实现。此外,处理元件可以指在计算机或计算机系统中执行功能(或者多个功能)的模拟或混合信号(模拟和数字的组合)电路系统的各种实现。处理元件包括例如诸如集成电路(IC)、ASIC(专用集成电路)这样的电路、单独处理器核心的部分或电路、整个处理器核心、单独的处理器、诸如现场可编程门阵列(FPGA)的可编程硬件设备、和/或包括多个处理器的系统的更大部分。

自动——指的是动作或操作由计算机系统(例如由计算机系统执行的软件)或设备(例如电路系统、可编程硬件元件、ASIC等)执行,而不需要直接指定或执行该动作或操作的用户输入。因此术语“自动”与由用户手动执行或指定的操作(其中用户提供直接执行该操作的输入)形成对照。自动的过程可以由用户所提供的输入启动,但随后“自动”执行的动作不由用户指定,即不是“手动”执行(“手动”执行中用户指定每个要执行的操作)。例如,用户通过选择每个字段并提供指定信息的输入(例如通过键入信息、选择复选框、单选等)来填写电子表格是手动填写所述电子表格,即便计算机系统必须响应于用户动作来更新所述表格。所述表格可以由计算机系统自动填写,其中计算机系统(例如在计算机系统上执行的软件)分析表格的字段并填写表格而不需要指定字段的答案的任何用户输入。如上面所指示的,用户可以调用表格的自动填写,但并不参与表格的实际填写(例如用户不手动指定字段的答案,相反字段的答案自动完成)。本说明书提供响应于用户已经采取的动作而自动被执行的操作的各种例子。

被配置为——各种组件可以被描述为“被配置为”执行一个或多个任务。在这种语境下,“被配置为”是一种宽泛记载,一般是指“具有”在操作期间执行一个或多个任务的“结构”。如此,组件可以被配置为执行任务,即使当组件当前没有执行该任务时(例如,一组电导体可以被配置为将模块电连接到另一个模块,即使当这两个模块没有被连接时)。在一些语境下,“被配置为”可以是结构的宽泛记载,一般是指“具有”在操作期间执行一个或多个任务的“电路系统”。如此,组件可以被配置为执行任务,即使当组件当前没有开启时。通常,形成与“被配置为”相对应的结构的电路系统可以包括硬件电路。

为了描述中方便,各种组件可以被描述为执行一个或多个任务。这种描述应当解释为包括短语“被配置为”。记载组件被配置为执行一个或多个任务,明确地旨在不对该组件援引35U.S.C.§112第六段解释。

图1——WLAN系统

图1示出了根据一些实施例的示例WLAN系统。如图所示,示例性WLAN系统包括被配置成经无线通信信道142与接入点(AP)112(诸如Wi-Fi接入点)通信的一个或多个无线客户端站或设备、或用户装备(UE)106A-106N,诸如移动设备、机顶盒、媒体设备、游戏控制台,等等。这一个或多个无线客户端站106可以根据各种通信标准中的任何标准(诸如各种IEEE802.11标准)与AP 112通信。AP 112可以经由有线或无线通信信道150与一个或多个其它电子设备(未示出)和/或网络152(诸如互联网)通信。附加的电子设备(诸如远程设备154)可以经由网络152与WLAN系统的组件通信。例如,远程设备154可以是另一无线客户端站。

在一些实施例中,至少一个客户站106(例如106N)被配置为直接与一个或多个邻近的客户端站(例如106B)通信,而不使用接入点112。

如图所示,示例性WLAN系统还包括被配置为经无线通信信道144与无线客户端站106中的一个或多个通信的一个或多个附属设备108。这一个或多个附属设备可以利用各种通信标准中的任何标准(诸如各种IEEE 802.11标准或蓝牙标准)与客户端站106通信。

客户端站106、接入点112和/或附属设备108中的一个或多个可以被配置为如以下进一步描述地优先化与一个或多个其它无线通信设备的时间敏感的通信。

图2——接入点框图

图2示出了接入点(AP)112的示例性框图。应当指出的是,图2的AP的框图仅仅是可能的系统的一个例子。如图所示,AP 112可以包括可执行用于AP 112的程序指令的(一个或多个)处理器204。(一个或多个)处理器204还可以耦合到存储器管理单元(MMU)240或者到其它电路或设备,MMU 240可被配置为从(一个或多个)处理器204接收地址并将那些地址转换为存储器(例如,存储器260和只读存储器(ROM)250)中的位置。要注意,(一个或多个)处理器204可以包括一个或多个处理元件。因此,(一个或多个)处理器204可以包括被配置为执行(一个或多个)处理器204的功能的一个或多个集成电路(IC)。此外,每个集成电路可以包括被配置为执行(一个或多个)处理器204的功能的电路系统(例如第一电路系统、第二电路系统,等等)。

AP 112可以包括至少一个网络端口270。网络端口270可以被配置为耦合到有线网络并为多个设备(诸如客户端站106)提供到互联网的访问。例如,网络端口270(或附加的网络端口)可被配置为耦合到本地网络,诸如家庭网络或企业网络。例如,端口270可以是以太网端口。本地网络可以提供到附加网络(诸如互联网)的连接性。

AP 112可以包括至少一个天线234。这至少一个天线234可被配置为作为无线收发器来操作并且可以进一步被配置为经由无线通信电路系统(或无线电装置)230与客户端站106通信。天线234经由通信链232与无线通信电路系统230通信。通信链232可以包括一个或多个接收链、一个或多个发送链或者两者兼有。无线通信电路系统230可被配置为经由Wi-Fi或WLAN(例如802.11)通信。可以使用任何802.11协议,包括802.11a、b、g、n、ac和ax。无线通信电路系统230还可以被配置为或者作为替代被配置为经由各种其它无线通信技术通信——这些技术包括但不限于长期演进(LTE)、高级LTE(LTE-A)、全球移动通信系统(GSM)、宽带码分多址(WCDMA)、CDMA2000等等,例如在小小区的情况下当AP与基站共同定位时,或者在当可能期望AP 112经由各种不同的无线通信技术进行通信时的其它情况下。

AP 112可以包括用于如下进一步描述的优先化时间敏感的通信的硬件和软件组件。

图3——客户端站框图

图3示出了客户端站106的示例简化框图。根据各种实施例,客户端站106可以是用户装备设备(UE)、移动设备或移动站,和/或无线设备或无线站。如图所示,客户端站106可以包括片上系统(SOC)300,该片上系统300可以包括用于各种目的的部分。SOC 300可以耦合到客户端站106的各种其它电路。例如,客户端站106可以包括各种类型的存储器(例如,包括NAND闪存310)、连接器接口(或扩展坞接口)320(例如,用于耦合到计算机系统、扩展坞、充电站、电视、以太网等等)、显示器360、诸如用于LTE、GSM等的蜂窝通信电路系统330,以及/或者短到中等距离无线通信电路系统329(例如,蓝牙和/或WLAN电路系统)。客户端站106可以进一步包括一个或多个包括SIM(订户身份模块)功能的智能卡370,诸如一个或多个UICC(通用集成电路卡)卡370。蜂窝通信电路系统330可以耦合到一个或多个天线,诸如所示出的天线335和336。短到中等距离无线通信电路系统329可以也耦合到一个或多个天线,诸如所示出的天线337和338。作为替代,作为耦合到天线337和338的附加或代替,短到中等距离无线通信电路系统329还可以耦合到天线335和336。短到中等距离无线通信电路系统329可以包括多个接收链和/或多个发送链,用于接收和/或发送多个空间流,诸如在多输入多输出(MIMO)配置中。

如图所示,SOC 300可以包括可执行用于客户端站106的程序指令的(一个或多个)处理器302以及可以执行图形处理并向显示器360提供显示信号的显示电路系统304。(一个或多个)处理器302还可以耦合到可被配置为从(一个或多个)处理器302接收地址并把那些地址转换为存储器(例如,存储器306、只读存储器(ROM)350、NAND闪存存储器310)中的位置的存储器管理单元(MMU)340,和/或可以耦合到其它电路或设备,诸如显示电路系统304、蜂窝通信电路系统330、短距离无线通信电路系统329、连接器接口(I/F)320和/或显示器360。MMU 340可被配置为执行存储器保护和页表转换或建立。在一些实施例中,MMU 340可以作为(一个或多个)处理器302的一部分被包括。

如以上所指出的,客户端站106可被配置为与一个或多个附属设备无线地通信。例如,客户端站106可被配置为根据蓝牙RAT与一个或多个附属设备通信,如图1中所示。

如本文所描述的,客户端站106可以包括用于实现本文所描述特征的硬件和软件组件。具体而言,客户端站106可以包括如以下进一步描述的用于优先化时间敏感的通信的硬件和软件组件。例如,客户端站106的处理器302可被配置为实现本文所描述的特征的部分或全部,例如通过执行存储在存储介质(例如,非临时性计算机可读存储介质)上的程序指令。作为替代(或者附加地),处理器302可被配置作为可编程硬件元件,诸如FPGA(现场可编程门阵列),或者配置作为ASIC(专用集成电路)。作为替代(或者附加地),客户端站106的处理器302结合其它组件300、304、306、310、320、329、330、335、336、337、338、340、350、360和370中的一个或多个一起可被配置为实现本文所描述的特征的部分或全部。

此外,如本文所描述的,处理器302可以包括一个或多个处理元件。因此,处理器302可以包括被配置为执行处理器302的功能的一个或多个集成电路(IC)。此外,每个集成电路可以包括被配置为执行(一个或多个)处理器304的功能的电路系统(例如第一电路系统、第二电路系统,等等)。

另外,如本文所描述的,蜂窝通信电路系统330和短距离无线通信电路系统329各自可以包括一个或多个处理元件。因此,蜂窝通信电路系统330和短距离无线通信电路系统329中的每一个可以分别包括被配置为执行蜂窝通信电路系统330和短距离无线通信电路系统329的功能的一个或多个集成电路(IC)。此外,每个集成电路可以包括被配置为执行蜂窝通信电路系统330和短距离无线通信电路系统329的功能的电路系统(例如第一电路系统、第二电路系统等)。

图4——附属设备框图

图4示出了附属设备108的示例简化框图。如图所示,附属设备108可以包括片上系统(SOC)400,其可以包括用于各种目的的部分。SOC 400可以耦合到附属设备108的各种其它电路。例如,附属设备108可以包括各种类型的存储器(例如,包括NAND闪存410)、连接器接口(或扩展坞I/F)420(例如,用于耦合到计算机系统、扩展坞、充电站、电视、以太网,等等)、输入/输出(I/F)接口460、短到中等距离无线通信电路系统429(例如,蓝牙和/或WLAN电路系统)和/或传感器470。短到中等距离无线通信电路系统429可以耦合到一个或多个天线,诸如示出的天线437和438。短到中等距离无线通信电路系统429可以包括多个接收链和/或多个发送链,用于接收和/或发送多个空间流,诸如在多输入多输出(MIMO)配置中。

如图所示,SOC 400可以包括可执行用于附属设备108的程序指令的(一个或多个)处理器402。(一个或多个)处理器402还可以耦合到可被配置为从(一个或多个)处理器402接收地址并把那些地址转换为存储器(例如,存储器406、只读存储器(ROM)450、NAND闪存存储器410)中的位置的存储器管理单元(MMU)440,和/或耦合到其它电路或设备,诸如短距离无线通信电路系统429、连接器接口(I/F)420和/或I/O接口460。MMU 440可被配置为执行存储器保护和页表转换或建立。在一些实施例中,MMU 440可以作为(一个或多个)处理器402的一部分被包括。

I/O接口460可以包括任何的多种输入和/或输出接口中的一个或多个,诸如显示屏、触摸屏、按钮、开关、拨号盘、扬声器、麦克风、触觉反馈发生器、相机,等等。传感器470可以包括任何的多种传感器中的一个或多个,诸如力传感器、压力传感器、运动传感器、陀螺仪、加速度计、罗盘、温度计、气压计、光电探测器、化学传感器、接近度检测器,等等。

如上面所指出的,附属设备108可被配置为与一个或多个客户端站无线地通信。例如,附属设备108可被配置为根据蓝牙RAT与一个或多个客户端站进行通信,如图1中所示。

各种附属设备可以在形式和功能上与其它附属设备显著不同。但是应当理解的是,附属设备108可以包括图4中所示的特征的任意组合或子集。

如本文中所描述的,附属设备108可以包括用于实现本文所描述的特征的硬件和软件组件。具体而言,附属设备108可以包括如下面进一步描述的用于优先化时间敏感的通信的硬件和软件组件。例如,附属设备108的处理器402可被配置为实现本文所描述的特征的部分或全部,例如通过执行存储在存储介质(例如,非临时性计算机可读存储介质)上的程序指令。作为替代(或者附加地),处理器402可被配置作为可编程硬件元件,诸如FPGA(现场可编程门阵列),或者配置作为ASIC(专用集成电路)。作为替代(或者附加地),附属设备108的处理器402结合所示出的一个或多个其它组件一起可被配置为实现本文描述为由附属设备执行的特征的部分或全部。

此外,如本文所描述的,处理器402可以包括一个或多个处理元件。因此,处理器402可以包括被配置为执行处理器402的功能的一个或多个集成电路(IC)。此外,每个集成电路可以包括被配置为执行(一个或多个)处理器404的功能的电路系统(例如第一电路系统、第二电路系统等等)。

另外,如本文所描述的,短距离无线通信电路系统429可以包括一个或多个处理元件。因此,短距离无线通信电路系统429可以包括被配置为执行短距离无线通信电路系统429的功能的一个或多个集成电路(IC)。此外,每个集成电路可以包括被配置为执行短距离无线通信电路系统429的功能的电路系统(例如第一电路系统、第二电路系统等等)。每个集成电路可以进一步包括存储要由处理元件执行的软件指令的存储器。

蓝牙/Wi-Fi用例

利用蓝牙与无线站进行通信的附属设备的数量和种类不断增加。这对于在由蓝牙和Wi-Fi使用的2.4GHz ISM频带中的通信导致增加的拥塞和等待时间。与此同时,许多较新的附属设备要求比前几代附属设备高的性能。

之前,当设计无线环境和无线站时,下面的假设是典型的:

无线站通常用于Wi-Fi和蓝牙这两者的一个共享天线,因此Wi-Fi和蓝牙必须实现时间共享(TDD)。

无线站通常在任何给定时间都尝试与仅一个蓝牙设备连接。

无线站在它连接到蓝牙头戴式耳机时充当蓝牙从设备(受控设备),如果是该蓝牙头戴式耳机启动连接的话。移动设备典型地将不请求角色切换。

蓝牙头戴式耳机应当保持最高优先级以最小化等待时间。不管头戴式耳机的操作条件,都假设有保持高数据速率的需求。

BTLE使用尽力而为的方法,因为数据不是以固定的时间表发送的。

最小可用信道对于BTLE不像对经典蓝牙那样严格,因为BTLE设备有可能是在远程区域。

BTLE分组小,因为它只包括少量数据。典型的例子可以是来自传感器的分组,该传感器诸如健康传感器。

前面的假设有时导致无线环境中的折中(compromised)的性能。而且,这些假设不适应关于移动站和附属设备的功能和性能的日益增加的需求。例如,用例正在开发中,其中无线站(甚至移动站)可以同时维持多个蓝牙连接。此外,BTLE不再局限于小分组,诸如来自传感器的分组。取而代之,BTLE正被用于更高数据速率的应用(例如,具有或不具有长度扩展特征),诸如从附属设备发送实时语音命令。此外,BTLE正被用来发送极为时间敏感的数据,诸如前面提到的语音指令、触控笔输入和/或游戏控制器输入。

表1示出了可利用BTLE的各种配置实现的数据速率。

表1:BTLE(1Msps和2Msps)分组大小

图5示出了一个示例场景,其中数字媒体播放器502(例如,Apple公司的AppleTVTM)或者其它计算或娱乐设备可以在拥塞的环境中要求与附属设备的低等待时间通信。数字媒体播放器502可以是或者包括客户端站106的例子。数字媒体播放器502可被配置为从各种源向电视机504提供音频/视频数据,例如经由有线或无线连接。作为一个例子,数字媒体播放器502可以从互联网,例如经由AP>

数字媒体播放器502可以附加地或作为替代地与一个或多个附属设备无线地通信,例如利用蓝牙。如图5中所示,除了其它可能的附属设备之外,数字媒体播放器502还可以与遥控器514、键盘516、耳机518和/或游戏控制器520无线地通信。

用户可以预期或要求在与一个或多个这些附属设备的通信中的低等待时间。例如,游戏控制器520可以向数字媒体播放器502发送表示用于控制在数字媒体播放器502上运行的游戏的用户输入(例如,按钮按压)的信号。这种通信中的高等待时间会导致游戏中降级的用户体验,因为输入被接收晚了。

作为另一个例子,遥控器514可以向数字媒体播放器502发送表示用于控制数字媒体播放器502的物理用户输入(例如按钮按压、触控板姿势、运动姿势)和/或语音命令的信号。例如,遥控器514可以包括用于接受来自用户的语音的麦克风。遥控器514可以向数字媒体播放器502发送语音,数字媒体播放器502可以解释该语音或可以将该语音发送到远程服务器(未示出)供解释,例如经由AP 506。数字媒体播放器502和/或远程服务器可以包括被配置为响应所解释的语音的数字助理功能(例如,Apple公司的Siri),诸如通过在数字媒体播放器502处执行命令(例如重放控制命令、内容搜索命令)、执行互联网搜索、与基于网络的功能(例如通信功能、家庭自动化功能)相接口,等等。用户可以预期或要求对口头命令的这种响应没有显著延迟地发生。因此,在遥控器514和数字媒体播放器502之间的通信中的高等待时间会导致不令人满意的用户体验。

图6-9提供了涉及诸如上述遥控器514的遥控器的通信定时的例子。图6示出了数字媒体播放器502的BTLE和Wi-Fi通信的调度。如图所示,遥控器514和数字媒体播放器502之间的BTLE连接间隔可以是15ms。两个设备之间的BTLE通信可以包括一个或多个BTLE TX/RX对。例如,数字媒体播放器502可以发送第一BTLE分组602,包括轮询和/或先前接收到的BTLE分组的应答(ACK)。第一BTLE分组可以由遥控器514接收。如图所示,第一BTLE分组可以具有80us的持续时间。在可具有150us的持续时间的帧间间隔(IFS)之后,遥控器514可以发送第二BTLE分组604,包括数据。第二BTLE分组可以由数字媒体播放器502接收。如图所示,第二BTLE分组可以包括27字节的数据,并且可以具有328us的持续时间。第二BTLE分组后面可以跟着另一个IFS,其可以具有150us的持续时间。因此,BTLE TX/RX对可以具有708us的总持续时间。

在这一个或多个BTLE TX/RX对之后,BTLE连接间隔中剩余的一些或全部时间可以被Wi-Fi通信占用。例如,图6中所示的BTLE连接间隔包括四个BTLE TX/RX对,占用总共2.8ms,之后是Wi-Fi通信,占用连接间隔的剩余12.2ms。遥控器514和/或数字媒体播放器502中的蓝牙收发器可以在连接间隔的这部分期间过渡到睡眠状态,例如以降低功耗。应当理解的是,图6中所示的定时是示例性的,并且可以使用其它的定时。

图7示出了其中遥控器514不通过语音数据被使用的几个BTLE连接间隔的调度。在这种场景下,在每个连接间隔中包括一个BTLE TX/RX对(诸如TX/RX对702)可以足够来传送表示物理用户输入(例如按钮按压、触控板姿势、运动姿势)的数据。但是,音频输入,诸如语音命令,可以包括多得多的数据。图8示出了其中遥控器514通过语音输入被使用的几个BTLE连接间隔的调度。如图8中所示,这种场景可以在一些连接间隔期间传送四个BTLE TX/RX对,以容纳表示语音输入的附加数据。在一些场景下,一些连接间隔可以包括较少的BTLETX/RX对。例如,如图8中所示,每隔三个分组是空分组。图9示出了其中遥控器通过物理用户输入和语音输入两者被使用的几个BTLE连接间隔的调度。如图9中所示,这种场景可以每个连接间隔传送多达六个BTLE TX/RX对,以容纳总输入数据。在图7-9的每个场景中,BTLE连接间隔中剩余的一些或全部时间可以被Wi-Fi通信(未示出)占用。

图10示出了其中平板计算机1002(例如,iPadTM)或其它接触设备可以在拥塞的环境中要求(或需要)与一个或多个附属设备的低等待时间通信的另一示例场景。如图10中所示,平板计算机1002可以是或包括无线客户端站106的例子。平板计算机1002可以与WLAN中的一个或多个其它无线站进行通信。例如,平板计算机1002可以与AP>

平板计算机1002可以附加地或作为替代地与一个或多个附属设备无线地通信,例如利用蓝牙。如图10中所示,除了其它可能的附属设备之外,平板计算机1002还可以与iBeaconTM设备1010、耳机1012、可穿戴设备1014(例如智能手表、智能眼镜)、家庭自动化传感器1016、健康和健身传感器1018、键盘1020和/或触控笔1022(诸如Apple公司的ApplePencilTM)无线地通信。

用户可以预期或要求与一个或多个这些附属设备的通信中的低等待时间。例如,用户可以预期触控笔1022在平板计算机1002的触摸屏上绘画,而没有明显的滞后;即,在触控笔1022相对于触摸表面移动的时候,在触控笔1022的尖端和所绘制的线之间没有显著的间隙。在触控笔1022的各种例子中,除了其它数据之外,触控笔还可以产生力数据(例如,来自其尖端的力传感器)、朝向数据(例如,来自陀螺仪)和/或运动数据(例如,来自加速计)。在一些场景下,触控笔1022可以向平板计算机1002发送该数据中的一些或全部,例如经由蓝牙。此外,相关的数据可以由平板计算机1002产生,诸如表示触控笔1022在哪里接触平板计算机1002的触摸屏的位置数据。平板计算机1002和触控笔1022之间的通信还可以包括同步信号,用于同步由触控笔1022产生的数据和由平板计算机1002产生的对应的数据。在一些场景下,响应于接收和处理由触控笔1022产生的数据,平板计算机1002可以在平板计算机1002的图形用户接口(GUI)上显示实时绘制的线。因此,传送这种数据的高等待时间可以引起绘制线时的延迟,从而导致降级的用户体验。

图11示出了用于由诸如触控笔1022的示例触控笔执行的状态图。图11的状态机被设计为提升触控笔1022中的功率节省,同时保持对用户输入的响应。在活动状态1110中,触控笔1022可以经由BTLE以例如15ms的连接间隔与平板计算机1002进行通信。触控笔1022可以在每个连接间隔期间与平板计算机1002通信,或者作为替代在其中触控笔1022和/或平板计算机1002具有要传送的数据的任何连接间隔期间与平板计算机1002通信,从而导致0连接间隔的等待时间。例如,在一些场景下,平板计算机1002可以在每个连接间隔期间发送同步信号。类似地,触控笔1022可以在每个连接间隔期间发送包括表示力数据的数据的一个或多个分组。

在处于活动状态1110时,触控笔1022可以在1112处检测触控笔1022的尖端已被抬起,例如从平板计算机1002的触摸表面。例如,触控笔1022的力传感器可以指示没有施加力。响应于确定触控笔1022的尖端已被抬起,触控笔1022可以过渡到就绪状态1120。在就绪状态1120中,触控笔1022可以与平板计算机1002不太频繁地通信,例如以降低功耗。例如,平板计算机1002可以在每隔三个连接间隔期间(即,每60ms)发送同步信号,而不是在活动状态1110中那样每个连接间隔期间发送同步信号。在就绪状态1120中,触控笔1022可以没有数据要发送到平板计算机1002。

在处于就绪状态1120时,触控笔1022可以在1122处检测触控笔1022的尖端已被放在平板计算机1002的触摸表面上或者以别的方式定向在书写位置。例如,触控笔1022的力传感器可以指示正在施加力。响应于确定触控笔1022的尖端已被放在触摸表面上或以其它方式“尖端落下(tip down)”,触控笔1022可以过渡到活动状态1110。因此,从检测到触控笔1022的尖端已被放在触摸表面上或以其它方式“尖端向下”,触控笔1022可以在60ms或更少时间内从就绪状态1120过渡到活动状态1110。

在处于就绪状态1120时,触控笔1022可以在1124处确定已发生空闲触发。例如,空闲触发可以包括触控笔1022已保持在就绪状态1120达第一预先确定的时间量,诸如5分钟。作为另一个例子,空闲触发可以包括触控笔1022已固定达第一预先确定的时间量,例如,如由陀螺仪和/或加速计确定的。作为另一个例子,空闲触发可以包括平板计算机1002的触摸屏被关闭。在一些场景中,触摸屏的状态可以由平板计算机1002发送,以允许触控笔1022做出这样的确定。响应于确定已发生空闲触发,触控笔1022可以过渡到空闲状态1130。在空闲状态1130中,触控笔1022可以与平板计算机1002甚至比就绪状态1120更不频繁地通信。例如,连接间隔的长度可以增加,例如增加到112.5ms。平板计算机1002可以在每个连接间隔期间(即,每112.5ms)发送同步信号。在空闲状态1130中,触控笔可以没有数据要发送到平板电脑1002。

在处于空闲状态1130时,触控笔1022可以在1132处检测触控笔1022已被移动,例如通过使用陀螺仪和/或加速计。响应于确定触控笔1022已被移动,触控笔1022可以过渡到就绪状态1120。

在处于空闲状态1130时,触控笔1022可以在1134处确定已发生待机触发。例如,待机触发可以包括触控笔1022已保持在空闲状态1130达第二预先确定的时间量,诸如10分钟。作为另一个例子,待机触发可以包括触控笔1022已固定达第二预先确定的时间量,例如,如由陀螺仪和/或加速计确定的。响应于确定已发生待机触发,触控笔1022可以过渡到待机模式1140。在待机模式1140中,触控笔1022可以从平板计算机1002断开。例如,触控笔1022可以终止与平板计算机1002的BTLE会话。

在处于待机模式1140时,触控笔1022可以在1142处检测触控笔1022已被移动,例如通过使用陀螺仪和/或加速计。响应于确定触控笔1022已被移动,触控笔1022可以过渡到就绪状态1120。

应当理解的是,图11中所示的定时是示例性的,并且可以使用其它定时。

可以理解,在前述的使用场景中,对于包含时间敏感的数据的蓝牙分组,在预期的时间表之外传送分组(例如,将分组碰撞(bump)到后面的连接间隔)会导致降级的用户体验。随着2.4GHz频带变得越来越拥塞,诸如根据前述的使用场景,调度这种时间敏感的分组变得更加困难。

同时的蓝牙/Wi-Fi通信

在一些场景中,诸如客户端站106的无线客户端站可以通过降低无线拥塞、通过调度Wi-Fi通信和蓝牙通信同时发生来改善用户体验。

作为第一个例子,客户端站106可以调度Wi-Fi RX操作与蓝牙RX操作一致。在许多使用场景中,客户端站106可以接收比其发送的显著更多的数据。因此,同时接收Wi-Fi信号和蓝牙信号可以明显降低调度冲突。在一些情况下,客户端站106可以响应于确定Wi-Fi RX信号和蓝牙RX信号都足够强(例如,每个都具有满足指定阈值的RSSI值)而调度Wi-Fi RX操作和蓝牙RX操作使一致。

作为第二个例子,客户端站106可以响应于确定蓝牙带宽低于某个阈值而实现Wi-Fi帧聚合。图12-13示出了Wi-Fi帧聚合的优势。

图12示出了包括没有帧聚合的一系列数据帧的Wi-Fi信号的例子。如图所示,发送方(例如AP,诸如AP 112)可以发送请求发送(Request-to-Send)帧(RTS),接下来是该一系列数据帧(例如,MAC帧)。在每个数据帧之后,在发送下一个数据帧之前发送方等待接收确认收到该数据帧的应答帧(ACK)。接收方(例如客户端站,诸如客户端站106)可以通过发送清除发送(Clear-to-Send)帧(CTS)对RTS做出响应。接收方可以通过发送ACK对每个数据帧做出响应。因此,每个设备在发送和接收之间以相对短的间隔过渡。在一些场景中,诸如当蓝牙带宽满足或超过某个阈值时,发送方和接收方可以在没有帧聚合的情况下执行Wi-Fi通信,如图12中所示,不会不可接受地影响蓝牙等待时间。

图13示出了包括具有帧聚合的一系列数据帧的Wi-Fi信号的例子。如图所示,发送方可以发送RTS,接下来是一系列聚合帧,其可以各自都包括多个数据帧。因此,每个聚合帧可以包括与图12的多个数据帧等量的数据。在每个聚合帧之后,在发送下一个聚合帧之前发送方等待接收确认收到包括在聚合帧中的每个数据帧的块应答帧(B-ACK)。接收方可以通过发送CTS对RTS做出响应。接收方可以通过发送B-ACK对每个聚合帧做出响应。因此,接收方可以比图12的场景中较不频繁地发送,并且数据可以更高效地被传送,因为较少的时间被浪费在TX和RX状态之间的过渡中。

在一些场景中,客户端站106可以仅响应于确定蓝牙带宽低于某个阈值而实现Wi-Fi帧聚合,以确保每个蓝牙连接间隔都包含足够的开放时间(即,没有蓝牙通信发生的时间),以允许Wi-Fi聚合帧。

作为第三个例子,客户端站106可以响应于确定蓝牙通信正在发生而动态地修改Wi-Fi发送功率。例如,在其中客户端站106已调度Wi-Fi RX操作与蓝牙RX操作一致的场景中,发送Wi-Fi站(例如AP,诸如AP 112)可以预期客户端站106响应于由客户端站106接收到的一个或多个数据帧而发送ACK或B-ACK,同时客户端站106仍在接收蓝牙通信。客户端站106可以确定可被用来与发送Wi-Fi站可靠地通信的减小的(例如,最小的)功率水平,并且可以以所确定的降低的功率水平发送ACK或B-ACK。这可以减少对正在进行的蓝牙通信的干扰。

作为第四个例子,客户端站106可以在Wi-Fi通信和并发的蓝牙通信之间协调信道使用。例如,客户端站106内(例如,无线通信电路系统329内)的Wi-Fi无线电装置可以向客户端站106内(例如,无线通信电路系统329内)的蓝牙无线电装置提供当前和/或即将到来的Wi-Fi通信的定时和/或信道信息。例如,Wi-Fi无线电装置可以识别将在识别出的时间窗口期间被占用的一组信道。响应于接收到该定时和/或信道信息,蓝牙无线电装置可以实现被配置为跳过被Wi-Fi通信占用的信道的信道跳跃时间表。例如,所实现的信道跳跃时间表可以排除在识别出的时间窗口内的识别出的信道集合。这可以保持Wi-Fi通信和蓝牙通信之间的实时频率分集,这可以减少二者之间的干扰。

图14示出了实现前述四个例子中所描述的特征的Wi-Fi站的实验性能特性。具体而言,图14示出了跨一范围的信号衰减在Wi-Fi站处接收的吞吐量(单位为Mbps)。曲线1402示出了在没有蓝牙信号的情况下由Wi-Fi站接收的Wi-Fi吞吐量。曲线1404示出了在Wi-Fi站经由蓝牙与BTLE遥控器、蓝牙头戴式耳机和蓝牙游戏控制器并发地通信的同时由Wi-Fi站接收的Wi-Fi吞吐量。图14示出在与蓝牙通信拥塞的环境中,前述四个例子较之现有技术改善了Wi-Fi性能,该蓝牙通信原本会大大降低Wi-Fi吞吐量。

减小的BTLE延迟

当分组可用于在客户端站(诸如客户端站106)和一个或多个其它无线设备之间被接收或发送时,客户端站106可以至少部分地基于分组类型或来源的优先化来调度分组的传输。例如,在蓝牙连接间隔内,客户端站可以向每个附属设备分配用于TX和RX通信的一个或多个时隙。如果高优先级的附属设备需要附件的通信时间,则客户端站可以从较低优先级的附属设备重新分配一个或多个时隙。

在过去,一些类型的蓝牙分组已被视为是低优先级分组。例如,BTLE分组在历史上被视为低优先级分组,因为它们典型地用于非时间敏感的应用,诸如传感器数据。但是,如果BTLE分组包括时间敏感的数据,诸如语音命令或触控笔输入,则这会导致不可接受的等待时间。

在一些场景中,无线客户端站(诸如客户端站106)可以通过一般而言减小BTLE分组的延迟或者特别地是高优先级BTLE分组的延迟来改善用户体验。客户端站106可以以多种多样的方式中的任何一种将分组识别为是高优先级的分组。在一些场景中,客户端站106可以将来自某一附属设备或某一类附属设备的所有分组视为高优先级。例如,客户端站106可将来自遥控器、触控笔或游戏控制器的分组视为高优先级。在其它场景中,如果满足某些条件,则客户端站106可以将来自某一附属设备或某一类附属设备的分组视为高优先级。例如,客户端站106可以在触控笔处于低等待时间模式——诸如以上关于图11定义的活动状态和/或就绪状态——时将来自触控笔的分组视为高优先级。类似地,当遥控器的麦克风为活动以用于接收语音命令时,客户端站106可以将来自遥控器的分组视为高优先级。在其它场景中,如果分组包括指定类型的数据(诸如语音数据),或者如果分组是根据指定的蓝牙规范配置的,则客户端站106可以将分组视为高优先级。在还有的其它场景中,客户端站106可以将所有BTLE分组都视为高优先级。

在一些实施例中,如果满足前述标准中指定的一个或前述标准的任意指定组合,则客户端站可以将分组视为高优先级,并且,如果指定的标准未被满足,则可以不将分组视为高优先级(例如,可以将分组视为低优先级)。在一些实施例中,响应于确定2.4GHz频带拥塞,根据前述标准中任何一个或多个,客户端站106可以将分组视为高优先级。例如,客户端站可以响应于确定至少阈值数量的附属设备经由蓝牙与客户端站106通信或者在客户端站106的附近而将分组视为高优先级。

表2列出了对于高优先级分组可以如何减小延迟的几个例子,其中任何一个或全部可以单独或组合使用。

选项1BT遥控/语音命令分组对于所有BT分组具有最高优先级BT FW选项2当语音命令和A2DP同时处于活动时,暂停A2DPBT主机选项3降低A2DP数据速率BT主机选项4扩展BTLE的数据分组大小BT FW选项5从不拒绝任何BTLE遥控/语音命令分组Wi-Fi ucode选项6遥控将直到它从客户端站接收到ACK才进入睡眠遥控中的BT FW

表2:用于减小BTLE等待时间并提高连接健壮性的选项

作为第一个选项,客户端站106可以在调度分组的接收时优先化高优先级的蓝牙分组。在一些实施例中,优先化的蓝牙分组可以是BTLE分组。图15A-15B示出了第一个选项的效果。

图15A-15B示出了随着时间从左至右的推移由客户端站106接收的多种多样的通信。如图所示,一个或多个BTLE分组(1510至1518)可用于在每个蓝牙连接间隔期间被客户端站106接收或发送。所示出的场景与图8的场景一致,其中包括语音数据的四个BTLE TX/RX对可以在每个15ms的连接间隔期间从遥控器获得。多个Wi-Fi分组(1520-1522)和音频分组(1530至1532),诸如高级音频分发配置(A2DP)分组,也可用于在各个时间由客户端站106接收或发送。

图15A示出了其中BTLE分组作为低优先级分组被处理的场景。如图所示,客户端站106在第一蓝牙连接间隔期间接收或发送一个或多个BTLE分组1510。在第一连接间隔的结尾附近,一个或多个A2DP分组1530变得可用,并且由客户端站106发送,延伸到第二蓝牙连接间隔中。因此,BTLE分组1512不被调度以在第二连接间隔期间接收或发送,但是在没有较高优先级的A2DP分组1530的情况下它们此时本将被调度以被接收或发送。因为A2DP分组支持实时音频重放,所以A2DP分组通常被给予较高的优先级。在第二连接间隔的结尾附近,一个或多个Wi-Fi分组1522变得可用,并且由客户端站106接收或发送,延伸到第三蓝牙连接间隔中。因此,BTLE分组1514不在第三连接间隔期间被接收或发送,但是在没有较高优先级的Wi-Fi分组1522的情况下它们此时本将被调度以被接收或发送。在第四连接间隔期间,客户端站106接收或发送一个或多个BTLE分组1516。因此,客户端站106经历了45ms的有效BTLE连接间隔,而不是预期的15ms。本将包括在BTLE分组1512和/或1514中的数据可能被丢弃,或者可能被延迟用于包括在BTLE分组1516和/或BTLE分组1518中。这个延迟会造成时间敏感的输入(诸如语音命令或触控笔输入)的处理和执行的延迟,这会导致不可接受的用户体验。

图15B示出了其中BTLE分组作为高优先级分组被处理的场景。在一些场景中,所有BTLE分组都可以作为高优先级分组被处理,而在其它场景中,仅来自某些源(诸如来自触控笔)的那些BTLE分组,或者仅包括某些类型的数据(诸如语音命令或触控笔输入)的那些BTLE分组可以作为高优先级分组被处理。如图所示,客户端站106在第一蓝牙连接间隔期间接收或发送一个或多个BTLE分组1510。在第一连接间隔的结尾附近,A2DP分组1530变得可用。但是,客户端站106使BTLE分组优先于A2DP和Wi-Fi分组。因此,客户端站106延迟A2DP分组1530,直到BTLE分组1512被接收或发送之后。A2DP分组1530被调度以便在第二连接间隔的开放部分期间发送。一种类型的蓝牙分组相对另一种类型的蓝牙分组的这种优先化可以被执行,例如在客户端站106的蓝牙无线电装置的固件中。在第二连接间隔的结尾附近,一个或多个Wi-Fi分组1522变得可用,并且Wi-Fi分组1522的子集被客户端站106接收或发送。但是,因为BTLE分组1514优先于Wi-Fi分组1522,所以客户端站106在第三连接间隔的开始处调度BTLE分组1514的接收或发送,中断Wi-Fi分组1522的接收或发送。Wi-Fi分组1522的剩余部分被调度以便在第三连接间隔的开放部分期间被接收或发送。因此,BTLE分组无延迟地被接收或发送,而Wi-Fi分组或其它蓝牙分组被调度以便在剩余的时隙期间被接收或发送。这可以通过减少时间敏感的BTLE通信中的等待时间来改善用户体验。

蓝牙分组相对Wi-Fi分组的这种优先化可以包括蓝牙处理组件和Wi-Fi处理组件之间的通信。例如,蓝牙基带处理器可以向Wi-Fi基带处理器传送各种信息,诸如蓝牙连接间隔的定时和蓝牙分组是否被调度以便在特定的连接间隔期间发送。作为响应,Wi-Fi基带处理器可以中断Wi-Fi分组的接收或发送。

作为第二个选项,客户端站106可以通过在另一个蓝牙功能为活动时禁用一个或多个蓝牙功能来相对其它蓝牙分组优先化高优先级的蓝牙分组。例如,响应于确定高优先级的蓝牙分组可用,客户端站106可以暂时禁用一种或多种其它类型的蓝牙通信,诸如A2DP分组。因此,其它类型的蓝牙通信将不会与高优先级的分组冲突。在一些实施例中,在连接间隔内为被禁用的蓝牙通信之前调度的时隙可以被重新分配用于高优先级的分组。在一些实施例中,客户端站106可以附加地暂停充当被禁用的蓝牙通信的源的功能,诸如音乐播放器软件。

作为第三个选项,客户端站106可以通过降低其它蓝牙分组的数据速率来相对其它蓝牙分组优先化高优先级的蓝牙分组。例如,响应于确定高优先级的蓝牙分组可用,客户端站106可以暂时通过降低的数据速率来编码A2DP数据。

作为第四个选项,客户端站106可以为高优先级BTLE通信扩展分组大小。例如,对于某些类型的数据,诸如语音命令数据,数据可以被包括在具有长度扩展的BTLE分组中,如上面表1中所示。这可以导致与利用没有长度扩展的BTLE分组可实现的相比高的应用数据速率。长度扩展可以例如在客户端站106的蓝牙无线电装置的固件中执行。

作为第五个选项,客户端站106可被配置为避免拒绝任何高优先级的蓝牙分组。例如,如果客户端站106正在从低优先级分组到高优先级分组在连接间隔内重新分配时隙,则客户端站可被配置为不重新分配已分配给其它高优先级分组的时隙。作为具体的例子,如果时隙当前被分配给某一类型的附属设备,诸如触控笔或遥控器,则客户端站106不可重新分配该时隙例如以用于Wi-Fi分组或A2DP分组。作为另一个例子,客户端站106可被配置为不重新分配已分配给处于某些条件下的某一类型的附属设备的时隙,诸如分配给触控笔的时隙而触控笔处于低等待时间模式(诸如以上关于图11定义的活动状态和/或就绪状态),或者分配给遥控器的时隙而遥控器的麦克风处于活动状态用于接收语音命令。

作为第六个选项,附属设备可以在发送分组后保持处于活动状态——该分组例如轮询响应分组,直到它从客户端站106接收到ACK。图16A-16C示出了这个选项的效果。图16A-16C示出了随着时间从左至右的推移主设备(例如,客户端站106)和从设备(例如,附属设备)之间的三个蓝牙通信场景。具体而言,图16A-16C示出了其中从设备当前没有数据要发送到主设备的场景。在这种场景中,从设备可以过渡到睡眠状态以降低功耗。但是,例如响应于来自主设备的轮询消息,如果经过了预先确定的时间长度(“超时时段”),在此期间主设备没有接收到来自从设备的通信,则主设备和从设备之间的蓝牙连接可以失效;即,主设备可以响应于确定预先确定的时间长度已到期而终止与从设备的蓝牙连接。在蓝牙连接终止之后,从从设备到主设备的进一步数据传送需要连接的重建,这会引入显著的延迟,因此降级用户体验。因此,从设备可以周期性地从睡眠状态过渡到活动状态,以向主设备发送一个或多个分组。从设备可以接着返回到睡眠状态。因此,这个轮询-响应过程可以防止蓝牙连接失效。

图16A示出了其中轮询-响应过程被成功执行的示例场景。如图所示,主设备发送ACK 1602。ACK 1602可以包括对先前由从设备发送的帧的接收的应答,和/或请求来自从设备的响应的轮询请求例如以防止蓝牙连接失效。响应于接收到ACK 1602,从设备发送响应分组(RSP)1604。RSP 1604可以向主设备指示从设备仍维持与主设备的蓝牙连接。在RSP1604的发送之后,从设备过渡到睡眠状态达预先确定的时间段(例如,1.2秒),而不等待来自主设备的附加通信。例如,ACK 1602和RSP 1604可以在蓝牙连接间隔期间被发送,并且从设备可以在该连接间隔之后立即过渡到睡眠状态,或者在被调度由从设备使用的连接间隔的一部分之后立即过渡到睡眠状态,或者在RSP 1604发送之后立即过渡到睡眠状态。

响应于接收到RSP 1604,主设备可以发送ACK 1606,以对RSP 1604的接收做出应答。但是,从设备没有接收到ACK 1606,因为从设备处于睡眠状态。主设备周期性地发送ACK帧,以对RSP 1604的接收做出应答和/或请求来自从设备的响应。

响应于确定预先确定的时间段已到期,从设备过渡到活动状态。在处于活动状态时,从设备接收由主设备发送的ACK 1608。响应于接收到ACK 1608,从设备发送另一个RSP1610。这个过程可以以同样的方式继续,直到被中断,例如如果主设备或者从设备发送数据分组,如果连接被终止,等等。

图16B示出了其中轮询-响应过程被尝试但是其中发生通信故障的示例场景。如图所示,主设备发送ACK 1622,类似于图16A的ACK 1602。响应于接收到ACK 1622,从设备发送RSP 1624,类似于图16A的RSP 1604。在RSP 1624的发送之后,从设备过渡到睡眠状态达预先确定的时间段(例如,1.2秒),而不等待来自主设备的附加通信,像在图16A的场景中那样。但是,在图16B的场景中,主设备没有接收到RSP 1624,例如由于干扰或不足的信号强度。

响应于没有在预期的时间窗口内接收到RSP 1624,主设备发送无应答分组(NAK)1626。但是,从设备没有接收到NAK 1626,因为从设备处于睡眠状态。主设备周期性地发送报告没有RSP被接收的NAK帧,和/或请求来自从设备的响应。

响应于确定预先确定的时间段已到期,从设备过渡到活动状态。在处于活动状态时,从设备接收到由主设备发送的NAK 1628。响应于接收到NAK 1628,从设备发送另一个RSP 1630,并过渡回睡眠状态。但是,主设备再次未能接收到RSP 1630,并且通过发送另一个NAK 1632做出响应。在差的无线环境中(例如拥塞、有噪声或长距离的环境),这个过程可以以同样的方式继续,直到主设备确定已经过超时时段而没有从从设备接收到通信,在这个时候主设备可以终止主设备和从设备之间的蓝牙连接。因此,轮询-响应过程可以未能防止在差的无线场景中蓝牙连接失效。

图16C示出了根据第六个选项的其中轮询-响应过程被尝试并接着响应于通信故障而被调整的示例场景。如图所示,类似于图16B,主设备发送ACK 1642,以促使从设备发送RSP 1644。类似于图16B的场景,在RSP 1644的发送之后,从设备过渡到睡眠状态达预先确定的时间段(例如,1.2秒),而不等待来自主设备的附加通信,但是主设备没有接收到RSP1644,例如由于干扰或不足的信号强度。类似于图16B的场景,当从设备过渡回到活动状态并且接收到NAK1648时,从设备发送RSP 1650,RSP 1650没有被主设备接收,从而促使另一个NAK 1652。

如图所示,响应于确定预先确定的时间段已再次到期,从设备过渡到活动状态。在处于活动状态时,从设备接收到第二个NAK 1654(即,NAK 1654是由从设备接收到的第二个NAK,但是其它NAK可以已被发送)。响应于接收到第二个NAK 1654(即,响应于连续接收到两个NAK),从设备可以发送RSP 1656,并且可以接着保持在活动状态以等待ACK,而不是过渡到睡眠状态,如图16B的场景。在图16C的场景中,主设备没有接收到RSP 1656,并且因此主设备发送另一个NAK 1658。响应于接收到NAK 1658,从设备再次发送RSP 1660,并保持在活动状态以等待ACK。因此,从设备响应于每个后续接收到的NAK而继续发送RSP,而不过渡回到睡眠状态。在图16C的场景中,主设备接收RSP 1660,并通过发送ACK1662做出响应。响应于接收到ACK 1662,从设备过渡到睡眠状态达预先确定的时间段(例如,1.2秒)。因此,即使在差的无线环境中,这个根据第六选项修改的轮询-响应过程也可以防止蓝牙连接失效。这可以避免在发送后续的时间敏感的分组时可能由于需要在主设备和从设备之间重建蓝牙连接而引起的延迟。

在其它场景中,从设备可被配置为响应于连续接收到某个其它数量的NAK(与图16C的例子中接收到两个NAK不同)而保持在活动状态(即,直到接收到ACK),诸如响应于接收到1个NAK或3个NAK。作为替代,从设备可被配置为在每个RSP之后保持在活动状态(即,直到接收到ACK),而无需先接收到NAK。包括第六选项的修改的轮询-响应过程可以被控制,例如在从设备(例如,附属设备)的蓝牙无线电装置的固件中。

通过应用表2的一个或多个选项,在传送时间敏感的蓝牙分组时的延迟可以减小到不让用户注意到的水平。

本公开内容的实施例可以以各种形式中的任何一种实现。例如,一些实施例可以被实现为计算机实现的方法、计算机可读的存储介质或者计算机系统。其它实施例可以利用一个或多个定制的硬件设备(诸如ASIC)来实现。其它实施例可以利用一个或多个可编程硬件元件(诸如FPGA)来实现。

在一些实施例中,非临时性计算机可读存储介质可被配置为使得其存储程序指令和/或数据,其中程序指令如果被计算机系统执行,则使计算机系统执行方法,例如本文所描述的任何方法实施例,或者本文所描述方法实施例的任意组合,或者本文所描述的任何方法实施例的任意子集,或者这种子集的任意组合。

在一些实施例中,无线设备(或无线站)可被配置为包括处理器(或一组处理器)和存储介质,其中存储介质存储程序指令,其中处理器被配置为从存储介质读取并执行程序指令,其中程序指令是可执行的以便使无线设备实现本文所描述的任何的各种方法实施例(或者本文所描述的方法实施例的任意组合,或者本文所描述的任何方法实施例的任意子集,或者这种子集的任意组合)。设备可以以任意的各种形式实现。

虽然以上已经相当详细地描述了实施例,但是,一旦以上公开内容被完全理解,各种变体和修改就将对本领域技术人员变得显然。权利要求旨在被解释为涵盖所有这种变体和修改。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号