ZigBee、Thread和BLE与2.4GHzWiFi的共存的制作方法

文档序号:11216711阅读:599来源:国知局
ZigBee、Thread和BLE与2.4 GHz WiFi的共存的制造方法与工艺

本公开描述了允许多个彼此极为接近的网络协议共存的系统和方法,并且更具体地,描述了允许zigbee、thread或蓝牙与2.4ghzwifi共存的系统和方法。



背景技术:

网络的激增、尤其在2.4ghz频带中的网络的激增导致了对尝试利用多个网络协议的那些的挑战。例如,zigbee、thread和低能耗蓝牙都在2.4ghz频谱中操作,并且被认为是低功率协议。然而,具有高得多的传输功率水平的wifi也在该频谱中操作。因此,这些各种协议可能彼此干扰,从而导致吞吐量方面的下降或数据损耗。

然而,当前,该问题的大部分解决方案是不受管理的,意味着要求客户使rf隔离最大化。这可以通过尝试物理上分离与每个网络协议相关联的天线来完成。替换地或附加地,可以将网络建立在2.4ghz频谱内的分离信道上以尝试减少隔离需求。最后,可以针对每个网络协议使所允许的重试的数目最大化,从而在其他技术不产生所要求的rf隔离的情况下使用重传充当安全网。

此外,近来的市场趋势是减小实现这些各种协议所要求的空间。做这一点的一个方式是使多个天线共同位于单个设备内。例如,包括wifi和一个或多个其他网络协议的网关和其他设备正变得越来越流行。

当前使用的不受管理的方法不足以解决与多个网络协议的共存相关联的这些问题。因此,存在对用于在相同频谱中操作的位于一处的网络的更受管理且有规划的方法的需要。



技术实现要素:

公开了使在两个或更多网络协议利用相同频谱的环境中的干扰和重试最少化的系统和方法。较低功率网络控制器与wifi控制器位于一处。较低功率网络控制器在传入分组被接收时解析传入分组并一旦确定传入分组被指定去往该设备就生成请求信号。这使在传入分组正被接收时将不发生wifi业务的可能性最大化。

在一个实施例中,公开了一种系统。系统包括wifi控制器,所述wifi控制器包括用作输入以请求对共享介质的排他性访问的请求信号以及用作输出的指示对共享介质的排他性访问已经被准许的准许信号;以及较低功率网络控制器,所述较低功率网络控制器包括处理单元和相关联的存储器元件,其中较低功率网络控制器被配置成:在接收到较低功率网络分组时对其进行解析;在正在接收较低功率网络分组时标识其是否被指定去往该控制器;以及如果较低功率网络分组被被指定去往该控制器,则宣称(assert)请求信号,其中在已经接收到整个分组之前执行宣称。在某些实施例中,较低功率网络控制器被进一步配置成只有在准许信号活动(active)时才在已经接收到较低功率网络分组之后传输确认分组。在一些实施例中,wifi控制器和较低功率网络控制器在相同频谱中操作。在某些实施例中,wifi控制器进一步包括用作输出以指示wifi控制器是否活动的状态信号。在某些实施例中,较低功率网络控制器被进一步配置成在准许信号不活动或者wifi控制器活动时在已经接收到较低功率网络分组之后不传输确认分组。

在另一实施例中,公开了一种系统。系统包括wifi控制器,所述wifi控制器包括用作输入以请求对共享介质的排他性访问的请求信号以及用作输出的指示对共享介质的排他性访问已经被准许的准许信号;以及较低功率网络控制器,所述较低功率网络控制器包括处理单元和相关联的存储器元件,其中较低功率网络控制器被配置成:当较低功率网络控制器确定较低功率网络分组正在被接收时宣称请求信号;解析较低功率分组以确定分组是否被被指定去往该控制器;以及如果确定较低功率网络分组不被被指定去往该控制器则解除宣称(deassert)请求信号。在某些实施例中,较低功率网络分组包括包含目的地地址的报头,并且在接收到目的地地址并确定较低功率网络分组不被被指定去往该控制器之后由较低功率网络控制器解除宣称请求信号。

在另一实施例中,公开了一种系统。系统包括wifi控制器,所述wifi控制器包括用作输入以请求对共享介质的排他性访问的请求信号以及用作输出的指示对共享介质的排他性访问已经被准许的准许信号;以及较低功率网络控制器,所述较低功率网络控制器包括处理单元和相关联的存储器元件,其中较低功率网络控制器被配置成:确定何时有较低功率分组要传输;在尝试在共享介质上传输分组之前计算要被较低功率网络使用的随机延迟;以及在确定有较低功率分组要传输之后的预定时间量宣称请求信号,其中预定时间量被基于随机延迟确定。在某些实施例中,预定时间量比随机延迟小预定值。

附图说明

为了更好地理解本公开,参考附图,其中用同样的标号引用同样的元素,并且其中:

图1是具有wifi控制器与较低功率网络控制器二者的系统的框图;

图2是较低功率网络控制器的框图;

图3是有代表性的较低功率网络分组;

图4a-4g是表示不同场景的时序图;

图5a-5b是用于较低功率网络控制器的接收过程的有代表性的流程图;以及

图6是用于较低功率网络控制器的传输过程的有代表性的流程图。

具体实施方式

图1示出了具有wifi网络控制器和较低功率网络控制器的系统的框图。遍及本公开,术语“较低功率网络”用于指代在与wifi网络相同的频谱中操作且使用较低功率的任何网络协议。例如,zigbee®、thread、蓝牙®和低能耗蓝牙(ble)都在与wifi相同的2.4ghz的频谱中操作。分层在ieee802.15.4上的其他网络协议也将会在2.4ghz频谱中操作。进一步地,虽然遍及本公开提及2.4ghz,但是应理解,本文中描述的技术和系统可适用于高功率设备和较低功率网络二者共存的任何频谱。

图1示出了wifi控制器10和较低功率网络控制器20。虽然图1将这些设备示出为两个分离的设备,但是应理解,在某些实施例中,可以将这些设备结合到单个集成电路中。因此,图1图示了这些组件之间的接口,不管这些组件的物理实现如何。

在ieee802.15.2标准内,定义了仲裁机制。称为分组业务仲裁(pta)的该机制允许其他较低功率网络控制器向wifi控制器请求对共享介质的访问。共享介质通常是空气。该机制包括请求信号(req)101,其是来自较低功率网络控制器20的其希望访问共享介质的指示。该协议还包括准许信号(gnt)102,其指示wifi控制器10允许另一设备使用共享介质。在某些实施例中,该机制包括优先级信号(pri)103,其用于指示较低功率网络控制器20希望传输的分组的重要性。最后,在某些实施例中,该机制包括状态信号(stat)104,其指示wifi控制器10的状态。在某些实施例中,可以在wifi控制器10正在接收分组时宣称该stat信号104,并在所有其他时间解除宣称该stat信号104。在其他实施例中,每当wifi控制器10正在进行传输或接收时,就可以宣称stat信号104。

进一步地,虽然图1示出了包含在wifi控制器内的仲裁逻辑,但是其他实施例也是可能的。例如,分组仲裁逻辑可以是分离的组件,与较低功率网络控制器20和wifi控制器10分离。

传统上,每当较低功率网络控制器20希望通过共享介质传输分组时,较低功率网络控制器20就宣称req信号101。作为响应,wifi控制器10在其不再活动时宣称gnt信号102。在较低功率网络控制器20完成了传输其分组之后,其然后解除宣称req信号101,以指示其不再需要对共享介质的访问。wifi控制器10然后解除宣称gnt信号102。

然而,该机制具有缺点。例如,如果较低功率网络控制器20正在接收分组并且wifi控制器10在该接收期间开始传输新的分组,则很可能较低功率网络控制器20正在接收的分组将被损坏。进一步地,即使传入的分组没有被损坏,较低功率网络控制器20也将不能够将确认(ack)传输回到传输节点。因此,即使成功地接收到了较低功率网络分组,其也将被视为失败并将招致重试。

本公开提出了对pta机制的独特使用以在对wifi性能的最小影响的情况下减少重试和干扰。

图2示出了有代表性的较低功率网络控制器20的框图。较低功率网络控制器20具有处理单元21和相关联的存储器设备22。该存储器设备22包含指令,当处理单元执行所述指令时使得较低功率网络控制器20能够实行本文中描述的功能。该存储器设备22可以是非易失性存储器,诸如flashrom、电可擦除rom或其他适当设备。在其他实施例中,存储器设备22可以是易失性存储器,诸如ram或dram。较低功率网络控制器20还包括网络接口23,其通常是包括天线25的无线接口。附加地,网络接口可以包括无线电设备24,其包括基带处理和mac级处理。较低功率网络控制器20可以包括第二存储器设备26,其中存储了通过网络接口23接收的数据和要通过网络接口23传输的数据。该第二存储器设备26传统上是易失性存储器。处理单元21具有读取和写入第二存储器设备26以便与网络中的其他节点通信的能力。虽然没有示出,但是每个较低功率网络控制器20还具有电力供应,其可以是电池或到永久电源(诸如壁式插座)的连接。

图3示出了来自较低功率网络的典型传入分组。分组300包括报头310和净荷320。报头310可以进一步包括目的地地址311。目的地地址311是对该分组意图到的设备的表示。例如,每个较低功率网络设备可以具有唯一的网络标识符,其被用作目的地地址。报头310还可以包括其他字段,并且本公开不限制包括报头的其他成分。

当通过较低功率网络传输分组300时,可以请求接收设备通过一完成接收就将确认(ack)分组传输回到发送设备来积极地确认对分组的接收。未能成功地传输该ack将被视为发送设备的失败传输。

图4a-4g表示各种时序图,它们图示了本系统在不同场景中的操作。在这些图中,req信号101和gnt信号102是低电平有效的,意味着它们在它们处于较低电压处时被宣称并且在较高电压处时不活动。

lp动作信号400表示较低功率网络活动。通过lp动作信号400的宣称来表示传入分组。通过交叉影线区域来表示传出通信。

wifi动作信号410表示wifi网络活动。通过wifi动作信号410的宣称来表示传入分组。通过交叉影线区域来表示传出通信。

stat信号104用于表示wifi控制器10的状态。在某些实施例中,不使用stat信号104。在其他实施例中,stat信号104用于指示由wifi控制器10进行的任何活动,诸如接收和传输。在本时序图中,当wifi控制器10正在接收分组时宣称stat信号104,并在所有其他时间解除宣称stat信号104。

图4a示出了表示由较低功率网络控制器20对分组的接收和由该设备传输的对应ack的第一时序图。在该场景中,没有wifi活动。

序列在较低功率网络分组被传输至该设备时开始,如在lp动作信号400中所示。在对该分组的接收的开始之后的某时,较低功率网络控制器20宣称req信号101。更具体地,当分组到达时,较低功率网络控制器20开始解析分组。一旦接收到目的地地址311,较低功率网络控制器20就可以确定传入分组是否被计划给该设备。如果分组没有被计划给该设备,则较低功率网络控制器20可以仅仅停止解析分组。然而,如果分组被计划给该设备,则较低功率网络控制器20将继续解析分组并将会将分组保存在其存储器元件26中。在一个实施例中,早在完成目的地地址311的接收时,就可以宣称req信号101。在又一实施例中,可以在检测到较低功率网络分组300的第一字节的接收时立即宣称req信号101。如果该分组没有被计划给如基于目的地地址311确定的该设备,则较低功率网络控制器20将解除宣称req信号101。在这两个实施例中,尽可能快地宣称req信号101以使wifi控制器10将宣称gnt信号102并将不开始传输wifi分组的可能性最大化。换言之,较低功率网络控制器20在传入分组的接收完成之前宣称req信号101。如上面陈述的那样,这可以是较低功率网络控制器20一经解析目的地地址311时;然而,这可以是完成传入分组300的接收之前的任何时间。

在某些实施例中,可以通过由处理单元21执行的软件完成传入分组300的解析。例如,处理单元可以在通过网络接口23接收到分组时从分组读取信息。然后其如上面描述的那样宣称req信号101。在其他实施例中,可以存在执行该功能的布置在无线电设备24内的专用硬件。在任一实施例中,较低功率网络控制器20被适配成解析报头以确定分组是否被指定去往该设备,并且被适配成如果分组确实被指定去往该设备则进行宣称。

在req信号101被宣称之后,wifi控制器10因为没有wifi活动而宣称gnt信号102。此时,将无中断地接收较低功率网络分组。一旦接收到,较低功率网络控制器20就可以将ack分组传输回到发送设备,如通过交叉影线区域所指示的那样。

一旦已经传输了ack,较低功率网络控制器20然后就解除宣称req信号101。这使得wifi控制器10解除宣称gnt信号102,并且事务完成。

图4b-4c示出了在接收wifi分组的同时接收较低功率网络分组300的场景。在这些实施例中,如上面描述的那样,一确定传入的较低功率网络分组300被指定去往较低功率网络控制器20,该设备就宣称req信号101。在该场景中,wifi控制器10也在接收分组并且因此宣称stat信号104。附加地,因为wifi控制器10没有在传输,所以wifi控制器10宣称gnt信号102,以指示如果期望则较低功率网络控制器20可以传输分组。

在图4b中,完成较低功率网络分组300的接收,同时wifi分组仍在被接收。在图4b中所示的一个实施例中,注意到gnt信号102被宣称,较低功率网络控制器20传输ack分组,同时wifi控制器10仍在接收传入wifi分组。例如,如果较低功率网络控制器20不能够访问关于wifi控制器10的状态的任何信息,则可能发生该场景。换言之,如果pta机制不包括stat信号104,则较低功率网络控制器20仅使用gnt信号102来确定其是否可以传输ack分组。

在另一实施例中,较低功率网络控制器20能够访问stat信号104并使用该信息来确定是否要传输ack分组。在该实施例中,注意到stat信号104被宣称,较低功率网络控制器20将不会将ack分组传输到发送设备。这可能引起较低功率网络分组的重试,但是将会允许wifi分组被接收,而没有由ack分组的传输引起的任何干扰。

在另一实施例中,wifi控制器10可以被配置成使得如果wifi控制器正在传输或正在接收则不宣称gnt信号102。在该场景中,因为wifi控制器10正在接收wifi分组,所以将不宣称gnt信号102。因此,较低功率网络控制器20将不会尝试传输ack分组。稍后在图4d中示出从不宣称gnt信号102的场景。

图4c示出在完成较低功率网络分组300的接收之前完成wifi分组的接收的场景。在该场景中,一确定分组被计划给较低功率网络控制器20,该设备就将宣称req信号101。因为wifi控制器10没有在传输分组,所以其将宣称gnt信号102。然而,wifi控制器10将在完成传入wifi分组的接收之后解除宣称gnt信号102,使得其可以传输确认。gnt信号102的解除宣称将通知较低功率网络控制器20其不能够将ack分组发送回到发送设备。因此,图4c没有图示较低功率网络控制器20正发送的ack分组。再次地,这将很可能导致重试。

图4d-4e示出了在传输wifi分组的同时接收较低功率网络分组300的场景。在这些实施例中,如上面描述的那样,一确定传入的较低功率网络分组300被指定去往较低功率网络控制器20,该设备就宣称req信号101。因为wifi控制器10正在传输,所以没有立即宣称gnt信号102。

在图4d中所示的实施例中,当较低功率网络控制器20想要发送ack时wifi控制器10仍正在传输。然而,较低功率网络控制器20不能够传输ack分组,因为gnt信号102从未被宣称。因此,将很可能重试该较低功率网络分组300,因为接收设备从未返回ack。

在图4e中所示的实施例中,当较低功率网络控制器20想要传输ack时wifi控制器10不再进行传输。在该实施例中,wifi控制器10在完成wifi分组的传输时宣称了gnt信号102。因为在传入较低功率网络分组300的接收的完成之前宣称了gnt信号102,所以较低功率网络控制器20能够传输ack分组,如图中图示的那样。该特定场景可能以若干方式发生。首先,可能在较低功率网络分组300之前已完成了wifi分组,如上面描述的那样。在另一实施例中,传入的较低功率网络分组300的优先级可能高于传出的wifi分组的优先级,如通过pri信号103(参见图1)所指示的那样。在该情况下,wifi控制器10可能过早地中断其传出分组以允许较低功率网络控制器20传输ack分组。

图4f-4g示出了wifi控制器10希望在较低功率网络分组300正在被接收时传输wifi分组的场景。因为wifi控制器10在较低功率分组300最初被接收时是空闲的,所以wifi控制器10宣称了gnt信号102。图4f示出了要传输的wifi分组的优先级低于正被接收的较低功率网络分组300的优先级的实施例。

在该实施例中,wifi控制器10仅等待直到较低功率网络控制器20解除宣称req信号101。在这之后,gnt信号102被解除宣称,并且wifi控制器10开始其传出的wifi分组的传输。

图4g示出了要传输的wifi分组的优先级高于正被接收的较低功率网络分组300的优先级的实施例。在该实施例中,宣称了gnt信号102,因为在那时没有由wifi控制器10进行的活动。然而,此后不久,wifi控制器10希望传输分组。因为该wifi分组具有比传入的较低功率网络分组300更高的优先级,所以gnt信号102被解除宣称并且wifi控制器10开始传输传出的wifi分组。因为gnt信号102已经被解除宣称,所以较低功率网络控制器20不能够传输ack分组。

图5a示出了可以由较低功率网络控制器20中的处理单元21执行的第一个有代表性的流程图。该流程图仅与传入分组有关。首先,如过程500中所示,较低功率网络控制器20开始接收传入分组。较低功率网络控制器20开始接收分组并解析报头信息。具体地,较低功率网络控制器20解析报头310中的目的地地址311以确定传入分组是否被指定去往该设备,如过程510中所示。如果分组没有被计划给该设备,则较低功率网络控制器20与该分组了结关系并且等待下一分组,如过程580中所示。然而,如果分组被计划给该设备,则较低功率网络控制器20宣称req信号101,如过程520中所示。较低功率网络控制器20然后继续接收分组,如过程530中所示。在整个分组被接收之后,较低功率网络设备20验证是否正确地接收了分组。如果是这样,则较低功率网络控制器20检查gnt信号102是否被宣称,如过程540中所示。如果gnt信号102被宣称,则其可以传输ack分组。在某些实施例中,较低功率网络控制器20可以诸如通过查询stat信号104来确定wifi控制器10的状态,如过程550中所示。如果gnt信号102被宣称并且stat信号104没有被宣称,则较低功率网络控制器20传输ack分组,如过程560中所示。在传输了ack之后,较低功率网络控制器20解除宣称req信号101,如过程570中所示。如果gnt信号102没有被宣称或者stat信号104被宣称,则较低功率网络控制器20解除宣称req信号,如过程570中所示。此时,接收过程于是完成,并且较低功率网络控制器20等待下一分组,如过程580中所示。

图5b示出了可以由较低功率网络控制器20中的处理单元21执行的第二个有代表性的流程图。该流程图仅与传入分组有关。该过程类似于图5a,并且因此将仅描述差异。在图5b中,较低功率网络控制器20在检测到传入分组正被接收之后立即宣称req信号101,如过程525中所示。因此,在该实施例中,甚至比在图5a中宣称req信号101更早地宣称req信号101。序列然后随着传入分组被解析而继续。当接收到分组报头时,较低功率网络控制器20确定该分组是否针对该设备,如过程510中所示。如果该分组针对该设备,则序列像图5a中所示的序列那样继续。如果分组不针对该设备,则较低功率网络控制器20解除宣称req信号101,如过程570中所示。

传输流程图被示出在图6中并且简单得多。在该情况下,较低功率网络控制器20等待直到其有分组要传输,如过程600中所示。当有分组时,较低功率网络控制器20宣称req信号101,如过程610中所示。较低功率网络控制器20然后等待直到gnt信号102被宣称,如过程620中所示。在某些实施例中,较低功率网络控制器20然后检查wifi控制器10的状态,如过程630中所示。如果wifi控制器10当前正在接收分组,则较低功率网络控制器可以等待直到wifi控制器10空闲,如过程630中所示。当然,在其他实施例中,较低功率控制器20可以仅使用gnt信号102来确定何时传输。一旦较低功率网络控制器20确定gnt信号102被宣称并且stat信号104没有被宣称,其就传输分组,如过程640中所示。在已经传输分组之后,较低功率网络控制器20等待并接收ack分组,如过程650中所示。在接收到ack分组之后,较低功率网络控制器20解除宣称req信号101,如过程660中所示。

在某些实施例中,在较低功率网络控制器20有分组要传输时与在其实际传输该分组时之间可能有长的延迟。例如,在某些网络协议中,存在传输节点在尝试传输分组之前必须等待的随机mac延迟。该随机mac延迟用在使共享介质上的冲突最小化的尝试中。该延迟可能长达10毫秒。这可能是占有共享介质的不可接受地长的时间量。因此,在一些实施例中,在较低功率网络控制器20有分组要传输的确定(过程600)与req信号101的宣称(过程610)之间存在延迟。在某些实施例中,该延迟可以是mac延迟的函数。

例如,较低功率网络控制器20可以确定其有分组要传输。其然后确定其必须等待的随机mac延迟。该随机mac延迟然后用于延迟req信号101的宣称。例如,如果mac延迟是n微秒,则可以在n-m微秒的延迟之后宣称req信号101,其中m是预定值。m的值可以被选择成允许wifi控制器10从较低功率网络控制器20接收req信号101并返回gnt信号102,假设wifi控制器10在此时没有正在传输。因此,在某些实施例中,在req信号101的宣称中的延迟是小于将使用的随机mac延迟的预定时间量。当然,可以以其他方式确定在req信号101的宣称之前的延迟,所述方式可以或可以不基于随机mac延迟。

本公开不应被限制在按照本文中描述的具体实施例的范围中。事实上,除了本文中描述的那些之外,本公开的其他各种实施例和修改也将根据前述描述和附图而对本领域普通技术人员显而易见。因此,意图这样的其他实施例和修改落在本公开的范围内。进一步地,虽然已经在本文中在出于特定目的的特定环境中的特定实现的背景下描述了本公开,但是本领域普通技术人员将认识到,其有用性不限于此并且本公开可以出于任何数目的目的在任何数目的环境中有益地实现。因此,应考虑到如本文中描述的本公开的完整宽度和精神来解释下面阐述的权利要求。

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