蓝牙数据转发的制作方法

文档序号:20503006发布日期:2020-04-21 22:53阅读:517来源:国知局
蓝牙数据转发的制作方法

本发明通常涉及蓝牙网络通信中的蓝牙设备,并且更具体地涉及这种蓝牙设备之间的数据转发。



背景技术:

蓝牙(bt)是示例ad-hoc网络技术。bt技术是一种无线通信标准,通常当在不考虑速度的情况下彼此靠近的两个或更多个无线设备(包括电话、打印机、调制解调器和耳机)之间传输信息时使用。bt非常适合低带宽应用,包括用电话(例如,用bt耳机)传输声音数据或用手持计算机(传输文件)或键盘和鼠标传输字节数据。bt技术联盟(sig)规范可用于这些bt通信。

bt对于包括独立且不同步的微微网的分散网是有用的,其中微微网是bt网络的基本单元。微微网具有主设备和一个或更多个从设备,其中每个设备通常包括主机处理器(或“应用处理器”)和控制器(或“固件(fw)处理器”)。主设备确定(一个或更多个)从设备的信道和相位。分散网是一种包括两个或更多个微微网的自组织计算机网络。在分散网中,从设备可以与多于一个的微微网通信。结合分散网的操作,bt主设备可以将它们各自的微微网内的移动从设备的身份中继到其主机处理器,以跟踪移动从设备的位置或携带移动从设备的人的位置。

如图1所示,为了使用bt通过诸如分散网之类的bt网络转发数据,通信链中的每个bt设备需要执行几个步骤,其中示出为bt设备101、102和103的bt设备各自不在同一微微网中,因此各自具有不同的主设备。bt设备示出为包括通过主机控制器接口(hci)耦合在一起的主机处理器125a和bt控制器125b。通过向bt控制器125b的基带控制器和链路管理器提供命令接口以及对硬件状态和控制寄存器的访问,hci提供了用于访问bt硬件功能的统一命令方法。

当接收到数据时,除了第一bt设备101之外,如图1中示出的bt设备102和103的每个bt设备都将该数据发送到其主机处理器125a。主机处理器125a解析数据,对接收到的数据进行操作(诸如添加时间戳,操纵(改变数据),播放数据或执行其他数据功能),然后将数据重新发送回bt控制器125b,bt控制器125b然后才将数据发射到链中的下一个bt设备。因此,在转发数据时,bt设备102和103各自执行如图1所示的三(3)个步骤,包括仅通过主机处理器125a循环的两(2)个步骤,而链中的第一bt设备101总共执行两个步骤。



技术实现要素:

对于每个bt设备包括通过hci耦合在一起的主机处理器和bt控制器的bt应用,bt设备的常规数据转发唤醒主机处理器,以对于接收到的每个数据包相对于其bt控制器进行循环,包括将数据重新发送回其bt控制器,这浪费了电池电量并且还增加了等待时间。对于bt应用(例如,分散网应用),期望将数据发送到链中的下一个bt设备,而不涉及主机处理器,至少不通过主机处理器循环。这在高级音频分发配置文件(a2dp)使用情况下显著降低了系统功耗。

所有已知的基于bt的通信系统都涉及bt设备的主机处理器参与数据转发,在数据被转发到链中的下一个bt设备之前,通过主机处理器循环数据,包括对数据进行解析、操作以及将数据重新发送到bt控制器。描述的数据转发的优点包括使得诸如a2dp数据之类的数据能够从一个bt设备传输到几个其他bt设备而无需唤醒主机,或者至少不通过其主机处理器循环。

通常在bt设备的fw层中的新机制允许用户转发异步无连接(acl)数据,而无需主机处理器参与至少将接收到的数据重新发送回其bt控制器,这使数据延迟和设备功耗最小化。在主机处理器与bt控制器之间描述的一组新的hci命令使得用户能够定义网络拓扑结构,以配置链中的每个bt设备,包括配置bt设备从bt设备中的哪个接收数据,以及bt设备将接收的数据转发到bt设备中的哪个。描述的hci还可选地针对每个bt设备配置是否将接收到的数据发送到其主机处理器,以及如果发送到其主机处理器,是否向每个数据包添加时间戳(例如,以便在链中的各个bt设备之间进行时间同步)。

附图说明

图1描绘了在常规bt网络中通过bt进行的数据转发。

图2是根据一个示例实施例的示出在bt网络中btacl通信的示例方法中的步骤的流程图。

图3描绘了在使用所描述的btacl数据转发的所描述的bt网络布置中通过bt的数据转发。

图4a是使用所描述的btacl数据转发的示例bt设备的示意框图。

图4b是根据一个示例实施例的所描述的bt设备的示意框图,该bt设备包括通过hci彼此耦合的单独的主机处理器和bt控制器,其中hci包括hci固件,该固件包括存储的hci命令代码,该命令代码允许用户定义bt网络的拓扑结构,包括用于为当前链中的每个bt设备进行配置。

图5a示出在体育场中使用所描述的btacl数据转发的视频数据转发,图5b示出使用包括a2dp数据的所描述的btacl数据转发的音频数据转发。

具体实施方式

附图不一定按比例绘制。在附图中,相同的附图标记表示相似或等同的元件。动作或事件的图示顺序不是限制性的,因为一些动作或事件可以以不同的顺序和/或与其他动作或事件同时发生。此外,一些图示的动作或事件可以是可选的,以实现根据本说明书的方法。

在本说明书中,如本文所使用的,术语“耦合到(coupledto)”或“与…耦合(coupleswith)”(等等)没有进一步限定地描述间接或直接的电连接。因此,如果第一设备“耦合”到第二设备,则该连接可以通过仅寄生在路径中的直接电连接,或者通过经由包括其他设备和连接的介入物品的间接电连接。对于间接耦合,介入物品通常不修改信号的信息,但是可以调整其电流水平、电压水平和/或功率水平。

图2是示出根据一个示例实施例的在bt网络中btacl通信的示例方法200的步骤的流程图。通信网络可以包括符合蓝牙技术联盟(sig)的网络,并且数据可以包括音频数据(例如,a2dp数据)。然而,所描述的bt数据转发也可以应用于非音频数据诸如应用于一行灯,以确定打开哪些灯和关闭哪些灯。

步骤201包括在bt网络中的各个节点处提供bt设备,其中bt设备(参见下面描述的图4a和图4b中所示的bt设备)包括通过hci彼此耦合的主机处理器和bt控制器,hci包括主机控制器传输层和hci驱动器。主机处理器实现应用层,并且包括用于经由主机控制器传输层与其bt控制器通信的hci固件。

bt控制器包括耦合到存储器和收发器的处理器,以及用于驱动适于耦合到天线的收发器的rf驱动器。hci固件包括所描述的hci命令代码,该代码允许用户定义bt网络的拓扑结构,包括配置当前链中的每个bt设备,包括每个bt设备从bt设备中的哪个接收数据以及每个bt设备应向bt设备中的哪个转发数据。步骤202包括配置bt网络,包括配置当前链中的每个bt设备,包括配置每个bt设备从bt设备中的哪个接收包括至少一个数据包的数据以及每个bt设备向bt设备中的哪个转发数据。步骤203包括在bt网络上通信数据,bt设备在bt设备之间转发数据,而无需设备的主机处理器参与至少将数据重新发送回其bt控制器。

图3描绘了在所描述的bt网络布置中通过bt的数据转发,该bt网络布置使用可以与上述图1进行比较的所描述的btacl数据转发。链中的每个bt设备301、302和303包括通过hci430耦合在一起的主机处理器425a和bt控制器425b。如上所述,这种bt网络布置可以是包括独立且不同步的微微网的分散网,每个bt设备还包括用于实现基于bt的无线传感器网络的传感器。

在接收到数据时,除了第一bt设备301之外,如图3中示出的bt设备302和303的每个bt设备都将该数据发送到下一个bt设备,而无需它们的主机处理器425a参与至少将数据重新发送回它们的bt控制器425b。bt设备302在没有其主机处理器425a的任何参与的情况下转发数据,并且因此如图所示仅执行转发数据的1个步骤。bt设备303解析接收到的数据,对接收到的数据进行操作(诸如添加时间戳),但是无需主机处理器425a参与将数据重新发送回其bt控制器425b,因此示出了总共执行转发数据的2个步骤。

图4a示出通常符合bt通信标准的示例bt设备400的系统框图表示。bt设备400通常包括至少一个集成电路(ic),该集成电路示出为形成在具有用于bt控制器425b的半导体表面的衬底405a上,以及具有主机处理器425a的半导体表面的另一衬底405上。bt设备400可以是能够参与bt通信的任何设备。这种bt设备可以是、可以包括以下内容或可以是以下内容的一部分:移动电话(诸如智能电话)、平板电脑、计算机、个人数字助理以及具有通信功能的家用物品(诸如扬声器、遮光门和运动传感器)。运行中的bt设备400与其他bt设备一起在bt网络中通信。

bt设备400包括通过hci430彼此通信的主机处理器425a和bt控制器425b。主机处理器425a包括存储器432,存储器432存储包括所描述的hci命令代码的所描述的hcifw,hci命令代码允许用户定义bt网络的拓扑结构,包括配置当前链中的每个bt设备,包括配置每个bt设备从bt设备中的哪个接收包括至少一个数据包的数据以及每个bt设备应将数据转发到bt设备中的哪个。bt控制器425b包括处理器423、存储器422,存储器422包括软件源代码422a,用于解析、理解和操作从主机处理器425a接收的命令,以实现bt设备400的所描述的acl数据转发。bt设备400还包括收发器424,收发器424包括rf驱动器424a,rf驱动器424a适于耦合到通常在芯片外的天线418。处理器可以包括数字信号处理器(dsp)或微控制器。处理器共同实现用于bt操作的bt协议栈(参见下面描述的图4b)。

收发器424还示出为包括硬件,该硬件包括数字逻辑424b,该数字逻辑424b可以用作软件422a的替代物,以用于实现所描述的acl转发。收发器424包括发射器和接收器。发射器通常包括媒体访问控制(mac)模块、编码器、调制器、快速傅里叶逆变换(ifft)单元、数模转换(dac)/滤波器模块和rf/天线模块。接收器通常包括rf/天线单元、模数转换(adc)/滤波器单元、fft单元、解调器、解码器和mac模块。

存储器422更一般地被配置成存储包括数据、指令或这两者的信息。存储器422可以是处理器423可访问的任何存储介质,诸如只读存储器(rom)、随机存取存储器(ram)、寄存器、高速缓存存储器或磁介质设备,诸如内部硬盘和可移动磁盘。出于包括混合和频率合成的目的,还提供了锁相环(pll)432。

处理器423耦合到存储器422和收发器424。在一些实施方式中,收发器424包括基带单元(在图4a中未示出,但参见图4b)和模拟单元(未示出),以发射和接收rf信号。基带单元可以包括执行基带信号处理的硬件,基带信号处理包括数字信号处理、编码和解码、调制和解调。模拟单元可以包括执行模数转换(adc)、数模转换(dac)、滤波、增益调整、上变频和下变频的硬件。模拟单元可以从接入点接收rf信号,并将接收到的rf信号下变频成基带信号以由基带单元处理,或者从基带单元接收基带信号,并将接收到的基带信号上变频成rf无线信号以用于上行链路传输。模拟单元包括混频器,以使用在bt网络的射频下振荡的载波信号来上变频基带信号和下变频rf信号。bt设备400使用的数据速率可以在2.472ghz至2.479ghz的当前bt频带或者任何未来使用的bt频带中。

图4b是现在示出为400’的图4a所示的bt设备400的功能层描述,示出了主机处理器425a,其包括应用层440和逻辑链路控制和适配层协议(l2cap)层448,其中应用层440包括bt应用。bt协议rfcomm框441是一组简单的传输协议,制作在l2cap层448之上。电话控制协议规范(tcs)442定义了在bt设备之间发送音频呼叫的方式。服务发现协议(sdp)443是定义了以较短的形式表示一系列uuid(其标称值为128位)的方式的规范。点对点协议(ppp444)是用于在两个设备节点之间建立直接连接的数据链路(第二层)协议。传输控制协议/互联网协议(tcp/ip)445使bt设备能够承载tcp/ip流量,obex446是有助于在bt设备之间交换二进制对象的通信协议,at447是包括用于激活模拟调制解调器功能的一系列机器指令的命令接口。

bt控制器425b示出为包括链路管理协议(lmp)426、作为图4a所示收发器424的一部分的基带部分和rf部分。bt控制器425b还示出为包括基带电路427和rf电路428。lmp426控制并协商两个相邻bt设备之间的bt连接的操作的所有方面。

示例

所描述的实施例通过以下示例进一步说明,这些示例不以任何方式限制本说明书的范围或内容。

图5a示出在体育场500中使用所描述的btacl数据转发的视频数据转发。相机1和相机2各自具有诸如图4a所示的bt设备400之类的所描述的bt设备,由于它们的间隔距离超出了bt通信范围,所以在它们之间使用中继器510彼此进行通信。相机1和2都实现了所描述的数据转发,该数据转发使得视频数据能够从一个相机传输到另一个相机,而无需唤醒它们的主机处理器,或者至少不通过它们的主机处理器循环,这与传统的数据转发相比减少了等待时间并节省了电量。

图5b示出使用包括a2dp数据的所描述的btacl数据转发的音频数据转发。bt扬声器1和bt扬声器2包括诸如图4a所示的所描述的bt设备,由于它们的间隔距离,所以它们使用在其之间示出为中继器560的中继器进行通信。示出为智能电话的音频源540向bt扬声器1提供音频数据,示出为中继器565的另一个中继器由于bt扬声器1和音频源540的分隔距离而再次位于其之间。如上所述,bt扬声器1中所描述的bt设备向bt扬声器2发送acl数据,而不涉及它们的主机处理器,至少不通过其主机处理器循环,这降低了系统功耗,特别是在这种a2dp使用情况下。

尽管本文通常使用acl来描述bt通信,但是所描述的bt通信也可以使用其他链路类型,诸如包括现有acl传输上的一组保留时隙的同步面向连接(sco)链路。

在权利要求的范围内,在所描述的实施例中可以进行修改并且其他实施例也是可能的。

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