专利名称:多种通信协议的适度共存的制作方法
技术领域:
本发明的公开内容主要涉及通信,更具体地涉及用于操作支持多种通 信协议的终端的技术。
背景技术:
许多电子设备支持多种通信协议,这些通信协议还可以被称为无线技
术或者空中接口。例如,膝上型计算机可以使用无线个域网(WPAN)来连 接到无线鼠标、无线键盘等。膝上型计算机还可以具有用于与无线局域网 (WLAN)通信的模块,该无线局域网越来越普及并且通常部署在各种公 共和个人场所。诸如蜂窝电话或者个人数字助理(PDA)的移动设备还可 以支持诸如蜂窝、WLAN和WPAN的多种通信协议。移动设备可以使用 WPAN来与耳机和/或其它设备通信。移动设备还可以能够经由所支持的通 信协议来提供电子邮件和因特网接入以及传统的蜂窝通信。
WPAN可以使用诸如蓝牙的通信协议,蓝牙是由电气与电子工程师协 会(IEEE)采纳为正EE 802.15的短程通信协议。蓝牙具有大约10米的工 作范围。WLAN可以使用正EE 802.11标准族中的任何中程通信协议。
某些通信协议在相同的频带上工作。例如,蓝牙、802.11、 802.11b和 802.11g工作在2.4千兆赫兹(GHz)与2.4835 GHz之间的工业、科学与医 疗(ISM)频带。蓝牙使用跳频扩频(FHSS)。蓝牙模块可以在1兆赫兹(MHz) 带宽上发送传输,该1 MHz带宽以1600次/秒的速率在ISM频带中的79MHz 内跳跃。WLAN模块可以实现802.11b/g并可以在固定频率信道上工作,该 信道可以是ISM频带中三个非重叠频率信道中的一个。在802.11b/g中,每 个频率信道对于直接序列扩频(DSSS)而言是22MHz或者对于正交频分 复用(OFDM)而言是16.7MHz。
WLAN模块和蓝牙模块可以在终端(例如,膝上型计算机、蜂窝电话 等)内共存并且可能彼此接近。WLAN模块和蓝牙模块的共存可能需要使用相同的天线,位于同一电路板或者耦合的电路板上,位于同一集成电路
芯片或者耦合的芯片组上,位于同一终端内等。如果WLAN模块和蓝牙模 块都可以工作,那么可能在WLAN模块使用的频率信道上发送蓝牙传输并 且会因而干扰WLAN传输。
当WLAN模块和蓝牙模块共存时,从一个模块发送的信号可以使其它 模块的接收机中的低噪声放大器(LNA)饱和,这可能会使该接收机的灵 敏度降低。例如,如果WLAN模块在蓝牙模块进行发射的同时接收数据, 那么蓝牙模块的发射功率会泄漏到WLAN模块的接收机并使该接收机灵敏 度降低。接收机灵敏度降低会导致性能降级、数据丢失、通信故障和/或其 它有害影响。反之,当蓝牙模块在WLAN模块发射的同时接收数据时也是 如此。
因此,在现有技术中需要用于当WLAN模块和蓝牙模块共存时避免由 于干扰而造成有害影响的技术。
发明内容
本文描述了支持诸如正EE 802.11和蓝牙的多种通信协议的模块的适 度共存的技术。适度共存可以通过对具有要经由无线信道发送或接收的高 优先级数据的通信协议赋予优先权来实现。在该实例中,为了该通信协议 发送或接收高优先级数据,可以请求其它通信协议不在该无线信道上进行 传输。
在一种设计中,可以接收将要由第一通信协议(例如,正EE 802.11) 的第一模块经由无线信道发送的数据。例如,根据数据类型、用于数据的 一个或者多个数据协议的一个或者多个报头字段、产生数据的应用程序等, 可以确定该数据的优先级。可以根据数据的优先级决定是否在没有延迟的 情况下发送数据。响应于在没有延迟的情况下发送数据的决定,可以请求 第二通信协议(例如,蓝牙)的第二模块不在该无线信道上进行传输。在 接收到无线信道未被第二模块占用的指示之后,可以经由该无线信道发送 该数据。
在另一种设计中,可以确定将要由第一模块经由无线信道接收的数据 的优先级。可以根据数据的优先级来决定是否获得对无线信道的控制。响应于获得对无线信道的控制的决定,可以请求第二模块不在该无线信道上 进行传输,以便经由第一模块接收数据。
下面更具体地描述了本发明公开内容的各个方面和特征。
图1示出了 WWAN、 WLAN和两个WPAN的部署。
图2示出了终端和接入点的方框图。
图3示出了 WLAN模块和蓝牙模块。
图4示出了用于不同数据协议的数据封装。
图5示出了用于发送数据的过程。
图6示出了用于接收数据的过程。
具体实施例方式
图1示出了无线广域网络(WWAN) 110、 WLAN 120以及WPAN 130a 和130b的示例性部署。WWAN110为诸如城市、州或者整个国家的大的地 理区域提供通信覆盖。WWAN 110可以是诸如码分多址(CDMA)网络、 时分多址(TDMA)网络、频分多址(FDMA)网络、正交FDMA (OFDMA) 网络等的蜂窝网络。CDMA网络可以使用诸如cdma2000或者宽带CDMA
(W-CDMA)的通信协议。cdma2000涵盖了 IS-95、 IS-2000和IS-856标准。 TDMA网络可以使用诸如全球移动通信系统(GSM)的通信协议。这些各 种通信协议和标准都是本领域公知的。WWAN 110通常包括许多基站112, 其支持WWAN的覆盖区域内的终端的通信。为简单起见,图1中仅示出了 两个基站112。基站通常是与终端通信的固定站,并且还可以称为收发基站
(BTS)、节点B、演进节点B (eNodeB)等。
WLAN 120为诸如楼宇、家庭等的中等地理区域提供通信覆盖。WLAN 120可以包括任意数目的接入点,其支持任意数目的站的通信。为简单起见, 图1中仅示出了一个接入点122。 WLAN站可以与接入点122和/或经由对 等通信相互进行通信。WLAN 120可以实现正EE 802.11、 802.11b、 802.11g 和/或其它标准。接入点122可以耦合到路由器124,其利用局域网(LAN)、 广域网(WAN)、因特网等交换数据分组。接入点122和路由器124还可以并入单个无线路由器。
WPAN 130a和130b为小地理区域提供通信覆盖。在图1中所示的实例中,WPAN 130a支持蜂窝电话132a和耳机134a之间的通信。WPAN 130b在膝上型计算机132b和鼠标134b之间提供无线连接。通常,每个WPAN可以包括任意数目的WPAN设备。WPAN 130a和130b可以实现蓝牙。
终端可以与一个或者多个无线网络通信。终端还可以被称为移动站、接入终端、用户终端、用户设备、移动设备、用户单元、站等。终端可以是蜂窝电话、膝上型计算机、PDA、无线设备、无线调制解调器、移动装置、耳机、手持设备、智能电话、无绳电话、卫星无线电等。在图1中所示的实例中,蜂窝电话132a是能与WWAN 110、 WLAN 120和WPAN 130a通信的终端。膝上型计算机132b是能与WWAN 110、 WLAN 120和WPAN130b通信的终端。因此,终端可以是WWAN设备(例如,蜂窝电话)、WLAN站和蓝牙设备。
图2示出了终端132和接入点122的设计的方框图。终端132可以是图1中的蜂窝电话132a或者膝上型计算机132b。终端132包括支持与WLAN通信的WLAN模块210和支持与蓝牙设备通信的蓝牙模块220。终端132还可以具有支持与WWAN 110通信的WWAN模块。为简单起见,该WWAN模块没有在图2中示出。
对于WLAN操作,数据处理器212从数据源202接收业务数据并从控制器/处理器240接收信令数据。数据处理器212处理(例如,编码、交织、调制和加扰)业务和信令数据并产生数据码片。发射机(TMTR) 216调节(例如,转换成逻辑信号、放大、滤波和上变频)数据码片并产生上行链路信号,其中经由天线230将该上行链路信号发射到接入点122。存储器214存储用于WLAN模块210数据和程序代码。
在接入点122处,天线252从终端132和其它终端接收上行链路信号,并将接收到的信号提供给接收机(RCVR) 254。 RCVR 254调节(例如,放大、滤波、下变频和数字化)接收到的信号并提供采样。接收(RX)数据处理器256处理(例如,解扰、解调、解交织和解码)采样并将已解码的数据提供给数据宿258。在下行链路上,发送(TX)数据处理器264从数据源262接收业务数据并从控制器/处理器270接收信令数据。TX数据处理器264处理业务和信令数据并产生数据码片。发射机266调节该数据码片并产生下行链路信号,其中经由天线252将该下行链路信号发射到终端132和其它终端。
在终端132处,天线230从接入点122接收下行链路信号并将接收到的信号提供给接收机218。接收机218调节所接收的信号并提供采样。数据处理器212处理采样并将解码后的业务数据提供给数据宿204以及将解码后的信令数据提供给控制器/处理器240。
对于蓝牙操作,发送给蓝牙设备134的数据由数据源206提供、由数据处理器222处理、由发射机226调节并经由天线230发射回到蓝牙设备134,其中蓝牙设备134可以是图1中的耳机B4a或者鼠标134b。蓝牙设备134接收并处理来自终端132的信号以恢复所发送的数据。蓝牙设备134还处理要发送给终端132的数据并将信号发射到终端132。在终端132处,来自蓝牙设备134的信号由天线230接收、由接收机228调节并由数据处理器222处理以恢复蓝牙设备134发送的数据。存储器224存储用于蓝牙模块220的数据和程序代码。蓝牙设备134可以包括类似于图2中所示的接入点122的那些处理单元的处理单元。
控制器/处理器240和270分别对终端132和接入点122的操作进行指导。存储器242和272分别存储用于终端132和接入点122的数据和程序代码。调度器274对与接入点122通信的终端132和其它终端迸行调度。
终端132可以使用WLAN模块210来与WLAN 120通信,例如,用于因特网语音协议(VoIP)呼叫或者分组数据呼叫。终端132可以使用蓝牙模块220来与蓝牙设备(例如,耳机)134通信。例如,蜂窝电话132a可以与WLAN 120交换VoIP分组并可以经由蓝牙将VoIP分组转发给耳机134a。作为另一个例子,膝上型计算机132b可以与WLAN 120交换分组数据并且还可以经由蓝牙与鼠标134b交换命令数据。
如图2所示,WLAN模块210和蓝牙模块220可能位于彼此附近并可以共享天线230。 WLAN模块210和蓝牙模块220还可以工作在相同的频带上,例如从2.4到2.4835GHz的ISM频带。在这种情况中,来自一个模块的传输可能对其它模块的传输造成干扰。
在一个方面,WLAN和蓝牙之间的适度共存可以通过给具有要发送的高优先级数据的通信协议赋予优先权来实现。WLAN模块210可以检查要发送的分组并确定该分组是否包含高优先级数据。如果该分组包含高优先级数据,那么WLAN模块210可以请求蓝牙模块220不在无线信道上进行传输,直到发送了该高优先级数据。当WLAN模块210期望接收高优先级数据时,WLAN模块也可以请求蓝牙模块220不进行传输。
相应地,当蓝牙模块220具有要发送或接收的高优先级数据时,蓝牙模块可以请求WLAN模块210不进行传输。WLAN模块210则可以放弃进行传输,直到蓝牙模块220发送或接收了该高优先级数据。WLAN模块210和蓝牙模块220可能同时有要发送或者接收的高优先级数据。可以使用优先级方案来确定在该情况下哪个模块获得对无线信道的控制。例如,WLAN模块210可能被授予比蓝牙模块220更高的优先级,因而每当冲突发生时蓝牙模块220会放弃传输。
图3示出了 WLAN模块210和蓝牙模块220之间的通信的设计的方框图。在该设计中,每个模块有两条到另一模块的线。当WLAN模块210期望控制无线信道时,例如,当WLAN模块210有要发送或者接收的高优先级数据时,它可以声明WLAN优先权线310。当WLAN模块210正在无线信道上进行传输时它可以声明WLAN传输线312。类似地,当蓝牙模块220期望控制无线信道时,例如,当蓝牙模块220有要发送或者接收的优先级数据时,它可以声明蓝牙优先权线320。当蓝牙模块220正在无线信道上进行传输时它可以声明蓝牙传输线322。线310、 312、 320和322也可以接到终端132中的其它模块。例如,控制器/处理器240可以接收线310到322并根据这两个模块间出现冲突的频率来控制WLAN和/或蓝牙模块的操作。
在一种设计中,发生冲突时WLAN模块210具有比蓝牙模块220更高的优先级。在进行传输之前,WLAN模块210可以检查蓝牙线320和322来确保这两条线都没有被蓝牙模块220声明。如果蓝牙线320和322没有被声明,那么WLAN模块210可以声明WLAN传输线312并开始在无线信道上进行传输。如果蓝牙线320和/或322的任何一个被声明,那么WLAN模块210可以声明WLAN优先权线310,并随后在进行传输之前等待蓝牙模块220释放无线信道,以便避免WLAN和蓝牙传输之间的冲突。
为了获得对无线信道的控制,例如,为了发送或者接收优先级数据,WLAN模块210可以声明WLAN优先权线310并随后监测蓝牙线320和322。如果蓝牙模块220当前正在无线信道上进行传输,那么蓝牙模块220可以立即停止传输或者结束当前传输。蓝牙模块220可以随后(例如,立刻)取消声明(de-assert)蓝牙线320和322并释放无线信道。WLAN模块210可以在蓝牙线320和322被取消声明时获得对无线信道的控制,并且维持对无线信道的控制直到其取消声明WLAN线310和312。
在进行传输之前,蓝牙模块220可以检查WLAN线310和312以确保这两条线都没有被WLAN模块210声明。如果WLAN线310和312没有被声明,那么蓝牙模块220可以声明蓝牙传输线322并开始在无线信道上进行传输。当蓝牙模块220正在进行传输时它可以继续监测WLAN优先权线310,并且如果线310被声明则会终止传输。每当蓝牙模块220期望控制无线信道时,例如,为了发送或者接收优先级数据,它也可以检查WLAN线310和312。如果WLAN线310和312未被声明,则蓝牙模块220可以声明蓝牙优先权线320。
可替换地,发生冲突时蓝牙模块220可以具有比WLAN模块210更高的优先级。前面描述的操作则可以相反地适用于WLAN模块210和蓝牙模块220。
图3示出了一种设计,其中每个模块具有两条到另一模块的线。在另一个设计中,每个模块有一条到另一模块的线。来自每个模块的线可以表明该模块是否正在传输和/或期望控制无线信道,例如为了发送或者接收优先级数据。在另一个设计中,单条线连接在WLAN和蓝牙模块之间并由两个模块共享,例如,以时分复用(TDM)的方式。
在另一个设计中,WLAN模块210和蓝牙模块220可以经由诸如共享存储器、远程过程调用(RPC)等同步机制来通信。当涉及多个处理器时可以使用该设计。在另一个设计中,设备可以实现WLAN模块210和蓝牙模块220两者,并且可以包括嵌入式中央处理单元(CPU),其能够对模块210和220两者进行控制。在该设计中,模块210和220的每一个的发送或者接收操作的同步可以由该CPU实现。
通常,WLAN和蓝牙模块可以经由多种方式通信,并且可以交换任何类型的信息,例如,模块是否正在进行传输、是 期望控制无线信道等。要发送的数据的优先级可以用各种方式确定。在一种设计中,通过检 查协议栈中一个或多个层中的一个或多个协议数据单元的报头来确定数据 的优先级。协议栈可以包括应用层、传输层、网络层、链路层和物理层。
终端132可以使用超文本传输协议(HTTP)、文件传送协议(FTP)、实时 传输协议(RTP)、会话发起协议(SIP)、会话描述协议(SDP)和/或应用 层的其它协议来与另一终端或服务器进行通信。HTTP支持在万维网(World Wide Web)上的信息传输并且通常用于发布和获取HTML页面。FTP支持 两个实体间的文件传输并且通常用于下载数据、文件等。RTP提供端到端 网络传输功能并且适用于发送诸如语音、视频等实时数据的应用。SIP是用 于创建、更改和终止VoIP、多媒体等会话的信令协议。SDP是用于描述多 媒体会话的信令协议。
应用层数据可以使用传输控制协议(TCP)、用户数据报协议(UDP) 和/或传输层的其它协议来发送。传输层数据可以使用网络层的IP版本4 (IPv4)或IP版本6 (IPv6)来发送。用于WLAN模块210的链路层和物 理层可以是正EE 802.11、 802.11b、 802.11g等。用于蓝牙模块220的链路 层和物理层可以是蓝牙。
图4示出了用于在应用层使用RTP、在传输层使用TCP并且在网络层 使用IPv4或IPv6发送数据的数据封装。对于RTP,来自应用程序的数据在 RTP分组中发送。每个RTP分组包括报头和净荷。RTP报头具有各种字段, 包括净荷类型字段和同步源标识符(SSRC ID)字段。净荷类型字段标识 RTP净荷的格式并由应用程序决定其解释。S3RC字段标识会议呼叫中不同 流来源之间的同步源(或者发送方)。应用数据可以在RTP净荷中发送。RTP 在可公开获得的RFC 3550中进行了描述,题目为"RTP: A Transport Protocol for Real-Time Applications" 2003年7月。
RTP分组可以在TCP数据报中发送。每个TCP数据报包括报头和净荷。 TCP报头具有各种字段,包括源端口字段、目的端口字段和紧急指针字段。 源端口字段指示TCP数据报的发送方的端口号。目的端口字段指示TCP数 据报的目标接收方的端口号。紧急指针字段传送紧急指针的当前值,它指 向后面为紧急数据的八位字节(octet)的序号。RTP分组可以在TCP净荷 中发送。TCP在可公开获得的RFC 793中进行了描述,题目为"TransmissionControl Protocol" 1981年9月。
TCP数据报可以在IPv4分组中发送。每个IPv4分组包括报头和净荷。 IPv4报头具有各种字段,包括服务类型(TOS)字段、协议字段、源地址 字段和目的地址字段。服务类型字段指示应如何处理IPv4分组,例如,具 有低延迟、高可靠性等。协议字段标识在净荷中使用的协议,在图4所示 的例子中是TCP。源地址字段包含IPv4分组的发送方的IPv4地址。目的地 址字段包含IPv4分组的目标接收方的IPv4地址。TCP数据报可以在IP净 荷中发送。IPv4在可公开获得的RFC 791中进行了描述,题目为"Internet Protocol" 1981年9月。
TCP数据报还可以在IPv6分组中发送。每个IPv6分组包括报头和净荷。 IPv6报头具有各种字段,包括业务类别字段、流标签字段、源地址字段和 目的地址字段。业务类别字段可用于在IPv6分组的不同类别或优先级之间 进行标识和区分。流标签字段可由发送方用于对请求路由器进行特殊处理 (例如,非默认的服务质量或者实时服务)的分组序列进行标记。源地址 字段包含IPv6分组的发送方的IPv6地址。目的地址字段包含IPv6分组的 目标接收方的IPv6地址。TCP数据报可以在IP净荷中发送。IPv6在可公 开获得的RFC 2460中进行了描述,题目为"Internet Protocol, Version 6 (IPv6)" 1998年12月。
WLAN模块210可以检査任何协议数据单元中的任何字段以确定要发 送的数据的优先级。例如,WLAN模块210可以检查IPv4分组中的服务类 型字段和/或协议字段、IPv6分组中的业务类别字段和/或流标签字段、TCP 数据报中的紧急指针字段、RTP分组中的净荷类型字段等。从这些字段中, WLAN模块210能够确定数据类型和/或指示要发送的数据的优先级的其它 信息。例如,高优先级数据可以使用TCP来发送,而低优先级数据可以使 用UDP来发送。可以通过检査IPv4分组报头中的协议字段来识别TCP数 据。
此外或者可替换地,WLAN模块210可以检査IPv4分组、IPv6分组、 TCP数据报、RTP分组等中的源和/或目的字段。源和/或目的字段可以传达 指示要发送的数据的优先级的信息。例如,携带优先级数据的RTP流可以 使用特定端口号来发送。可以基于TCP数据报的报头中的源端口字段来识别该RTP流的数据。作为另一个例子,携带重要信令的SIP流可以使用另 一个端口号来发送。可以通过检査TCP数据报的报头中的源端口字段来识 别该SIP流的信令数据。
图4示出了可用于发送数据的某些数据协议的某些报头字段。还可以 使用其它报头字段和/或其它数据协议来确定要发送的数据的优先级。
要发送的数据的优先级还可以用其它方式确定。例如,产生数据的应 用程序或者处理数据的控制器/处理器可以指示数据的优先级。某些类型的 数据可以有高优先级,而其它类型的数据可以有低优先级。例如,信令数 据(例如,用于SIP或者应答)和某些业务数据(例如,用于实时服务) 可以有高优先级并且可以在没有延迟的情况下发送。其它业务数据(例如, 用于后台下载)可以有低优先级,并且如果无线信道被占用则可以延迟发 送。如果模块正在无线信道上进行传输或者例如通过声明该模块的优先权 线而获得对无线信道的控制,那么可以认为该无线信道被该模块占用。
模块可以用若干方式来确定其是否可以接收高优先级数据。对于蓝牙, 发送和接收时隙在WPAN中的不同蓝牙设备之间是同步的。给定的蓝牙设 备则可以知道何时接收数据,但是可能不知道将接收什么类型的数据。可 以根据为蓝牙设备建立的会话的类型来假设接收到的数据类型。举例来说, 如果是语音会话(例如正在使用免提),那么可以假设接收到的数据为语音 数据。同样的方式可以适用于WLAN。然而,由于对WLAN中无线介质的 随机接入,WLAN接收机可能不知道何时或者从哪个WLAN站接收数据。 可以使用排程自动省电(S-APSD)和非排程APSD (U-APSD)来在WLAN 中调度业务(例如,语音业务),其中IEEE 802.11e支持S-APSD和U-APSD。 对于蓝牙和WLAN两者,设备可以假定采用对称操作和/或周期性操作,并 且根据该假定可以猜测将要接收的数据的优先级。
图5示出了用于发送数据的过程500的设计。可以确定将要由第一通 信协议的第一模块经由无线信道发送的数据的优先级(方框512)。可以根 据数据的优先级决定是否在没有延迟的情况下发送数据(方框514)。响应 于在没有延迟的情况下发送数据的决定,可以请求第二通信协议的第二模 块不在无线信道上进行传输(方框516)。可以在接收到无线信道未被第二 模块占用的指示之后经由该无线信道发送该数据(方框518)。第一通信协议可以用于WLAN,该第一通信协议例如802.11或者某个其它通信协议。 第二通信协议可以用于WPAN,该第二通信协议例如蓝牙或者某个其它通 信协议。
对于方框512,可以用各种方式确定要发送的数据的优先级。在一种设 计中,根据数据类型确定数据的优先级。可以确定该数据是用于信令还是 业务。该数据可以(i)如果是用于信令则在没有延迟的情况下发送或者(ii) 如果是用于业务且无线信道当前被第二模块占用则延迟发送。在另一种设 计中,可以通过检查用于该数据的至少一个数据协议的至少一个报头字段, 例如图4中所示的字段中的任意一个或者任意组合,来确定数据的优先级。 在另一种设计中,从产生该数据的应用程序接收该数据的优先级。数据的 优先级还可以用其它方式确定。
对于方框514,可以声明第一模块的优先权线来请求第二模块不在无线 信道上进行传输。也可以用其它信号和/或消息以其它方式发送该请求。
对于方框516,如果无线信道当前被第二模块占用,那么可以在接收到 第二模块不再占用该无线信道的指示以后经由该无线信道发送该数据。如 果无线信道当前未被第二模块占用,那么可以声明第一模块的传输线来向 第二模块通知第一模块正在传输,并且可以经由该无线信道发送该数据。 不论优先级如何,如果无线信道当前未被第二模块占用,那么可以在没有 延迟的情况下发送数据。如果没有做出在没有延迟的情况下发送数据的决 定,那么如果无线信道当前被第二模块占用,则可以延迟对数据的传输。 该数据可以在接收到第二模块不再占用该无线信道的指示以后发送,或者 甚至被丢弃。
图6示出了用于接收数据的过程600的设计。例如,根据数据类型、 期待数据的应用程序等,可以确定将要由第一通信协议的第一模块经由无 线信道接收的数据的优先级(方框612)。可以根据数据的优先级决定是否 获得对无线信道的控制(方框614)。响应于获得对无线信道的控制的决定, 可以请求第二通信协议的第二模块不在该无线信道上进行传输(方框616)。 可以声明第一模块的优先权线来请求第二模块不在该无线信道上进行传 输。第一通信协议可以是802.11或某个其它通信协议。第二通信协议可以 是蓝牙或某个其它通信协议。本文所描述的技术可以通过各种方式来实现。例如,这些技术可以在 硬件、固件、软件或者其组合中实现。对于硬件实现,用于执行该技术的 处理单元可以在一个或者多个下列单元中实现专用集成电路(ASIC)、数
字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、 现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、电 子设备、设计为执行本文所述功能的其它电子单元、计算机或者其组合。
对于固件和/或软件实现,该技术可以利用执行本文所述功能的模块(例 如,程序、函数等)来实现。固件和/或软件指令可以存储在存储器(例如, 图2中的存储器214、 224或242)中并由处理器(例如,处理器212、 222 或240)执行。存储器可以在处理器内部或者处理器外部实现。固件和/或 软件指令也可以存储在其它处理器可读介质中,例如随机存取存储器 (RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、可 编程只读存储器(PROM)、电可擦除PROM (EEPROM)、闪存、压縮光 盘(CD)、磁性或光学数据存储设备等。
实现本文所述技术的装置可以是独立的单元或者是设备的一部分。该 设备可以是(0独立的集成电路(IC), (ii) 一个或者多个IC的组,其可 以包括用于存储数据和/或指令的存储器IC, (iii) ASIC,例如移动站调制 解调器(MSM), (iv)可以嵌入其它设备的模块,(v)蜂窝电话、无线设 备、手持设备或移动单元,(vi)等等。
上文对本发明公幵内容进行了描述,以使得任何本领域技术人员能够 实现或者使用本公开内容。对于本领域技术人员来说,对公开内容的各种 修改都是显而易见的,并且在不偏离本发明公开内容的精神或者范围的情 况下,本文定义的总体原理也可以适用于其它变形。因此,本发明的公开 内容并不局限于本文描述的实例,而是应与本文公开的原理和新颖性特征 的最大范围相一致。
权利要求
1、一种装置,包括处理器,用于确定将要由第一通信协议的第一模块经由无线信道发送的数据的优先级,根据所述数据的优先级决定是否在没有延迟的情况下发送所述数据,并且响应于在没有延迟的情况下发送所述数据的决定,请求第二通信协议的第二模块不在所述无线信道上进行传输;以及存储器,其耦合到所述处理器。
2、 根据权利要求l所述的装置,其中,所述处理器用于 确定所述数据是用于信令还是业务,以及如果所述数据用于信令则做出在没有延迟的情况下发送所述数据的决定。
3、 根据权利要求2所述的装置,其中,所述处理器用于 如果所述数据是用于业务而且所述无线信道当前被所述第二模块占用,则延迟发送所述数据。
4、 根据权利要求1所述的装置,其中,所述处理器用于 检查用于所述数据的至少一个数据协议的至少一个报头字段,以确定所述数据的优先级。
5、 根据权利要求4所述的装置,其中,所述至少一个报头字段包括下 列字段中的至少一个因特网协议版本4 (IPv4)中的服务类型字段和协议 字段、IP版本6 (IPv6)中的业务类别字段和流标签字段、以及传输控制协 议(TCP)中的源端口字段、目的端口字段和紧急指针字段。
6、 根据权利要求1所述的装置,其中,所述处理器用于从产生所述数据的应用程序接收所述数据的优先级。
7、 根据权利要求1所述的装置,其中,所述处理器用于为所述第一模块声明优先权线,以请求所述第二模块不在所述无线信 道上进行传输。
8、 根据权利要求1所述的装置,其中,响应于在没有延迟的情况下发送所述数据的所述决定,所述处理器用于如果所述无线信道当前被所述第二模块占用则为所述第一模块声明优 先权线,以及在接收到所述第二模块不再占用所述无线信道的指示之后经 由所述无线信道发送所述数据。
9、 根据权利要求1所述的装置,其中,响应于在没有延迟的情况下发 送所述数据的所述决定,所述处理器用于如果所述无线信道当前未被所述第二模块占用则为所述第一模块声明 传输线,以及经由所述无线信道发送所述数据。
10、 根据权利要求1所述的装置,其中,所述处理器用于 如果所述无线信道当前未被所述第二模块占用,则不论所述数据的优先级如何,在没有延迟的情况下发送所述数据。
11、 根据权利要求l所述的装置,其中,所述处理器用于 如果所述无线信道当前被所述第二模块占用并且没有做出在没有延迟的情况下发送所述数据的所述决定,则延迟发送所述数据。
12、 根据权利要求ll所述的装置,其中,所述处理器用于 接收所述第二模块不再占用所述无线信道的指示,以及在接收到所述指示之后发送所述数据。
13、 根据权利要求1所述的装置,其中,所述处理器用于 经由同步机制与所述第二模块通信。
14、 根据权利要求13所述的装置,其中,所述同步机制包括共享存储器或者远程过程调用(RPC)。
15、 根据权利要求1所述的装置,其中,所述第一通信协议是用于无 线局域网(WLAN),而所述第二通信协议是用于个人局域网络(WPAN)。
16、 根据权利要求1所述的装置,其中,所述第一通信协议是正EE 802.11,而所述第二通信协议是蓝牙。
17、 一种方法,包括确定将要由第一通信协议的第一模块经由无线信道发送的数据的优先级;根据所述数据的优先级,决定是否在没有延迟的情况下发送所述数据,-响应于在没有延迟的情况下发送所述数据的决定,请求第二通信协议 的第二模块不在所述无线信道上进行传输。
18、 根据权利要求17所述的方法,其中,所述确定所述数据的优先级 的步骤包括确定所述数据是用于信令还是业务,并且其中,所述决定是否 在没有延迟的情况下发送所述数据的步骤包括如果所述数据是用于信令则 做出在没有延迟的情况下发送所述数据的决定。
19、 根据权利要求17所述的方法,其中,所述请求所述第二模块不在 所述无线信道上进行传输的步骤包括如果所述无线信道当前被所述第二模 块占用则为所述第一模块声明优先权线,并且其中,所述方法还包括-在接收到所述第二模块不再占用所述无线信道的指示之后,经由所述 无线信道发送所述数据。
20、 根据权利要求17所述的方法,还包括如果所述无线信道当前未被所述第二模块占用,则为所述第一模块声 明传输线;以及经由所述无线信道发送所述数据。
21、 根据权利要求17所述的方法,还包括如果所述无线信道当前被所述第二模块占用并且没有做出在没有延迟 的情况下发送所述数据的所述决定,则延迟发送所述数据;以及在接收到所述第二模块不再占用所述无线信道的指示之后发送所述数据。
22、 一种装置,包括用于确定将要由第一通信协议的第一模块经由无线信道发送的数据的 优先级的模块;用于根据所述数据的优先级决定是否在没有延迟的情况下发送所述数 据的模块;用于响应于在没有延迟的情况下发送所述数据的决定,请求第二通信 协议的第二模块不在所述无线信道上进行传输的模块。
23、 根据权利要求22所述的装置,其中,所述用于确定所述数据的优 先级的模块包括用于确定所述数据是用于信令还是业务的模块,并且其中, 所述用于决定是否在没有延迟的情况下发送所述数据的模块包括用于如果 所述数据是用于信令则做出在没有延迟的情况下发送所述数据的决定的模 块。
24、 根据权利要求22所述的装置,其中,所述用于请求所述第二模块 不在所述无线信道上进行传输的模块包括用于如果所述无线信道当前被所 述第二模块占用则为所述第一模块声明优先权线的模块,并且其中,所述 装置还包括用于在接收到所述第二模块不再占用所述无线信道的指示之后经由所 述无线信道发送所述数据的模块。
25、 根据权利要求22所述的装置,还包括用于如果所述无线信道当前未被所述第二模块占用则为所述第一模块声明传输线的模块;以及用于经由所述无线信道发送所述数据的模块。
26、 根据权利要求22所述的装置,还包括用于如果所述无线信道当前被所述第二模块占用并且没有做出在没有 延迟的情况下发送所述数据的所述决定则延迟发送所述数据的模块;以及用于在接收到所述第二模块不再占用所述无线信道的指示之后发送所 述数据的模块。
27、 一种处理器可读介质,用于存储指令来进行下列操作- 确定将要由第一通信协议的第一模块经由无线信道发送的数据的优先 级;根据所述数据的优先级,决定是否在没有延迟的情况下发送所述数据; 响应于在没有延迟的情况下发送所述数据的决定,请求第二通信协议 的第二模块不在所述无线信道上进行传输。
28、 一种装置,包括第一模块,用于根据第一通信协议经由无线信道发送数据;以及 第二模块,用于根据第二通信协议经由所述无线信道发送数据,并且 其中,所述第一模块接收将要经由所述无线信道发送的数据,确定所述数 据的优先级,根据所述数据的优先级决定是否在没有延迟的情况下发送所 述数据,以及响应于在没有延迟的情况下发送所述数据的决定,请求所述 第二模块不在所述无线信道上进行传输。
29、 根据权利要求28所述的装置,其中,如果所述无线信道当前被所 述第二模块占用则所述第一模块为所述第一模块声明优先权线,并且,在 接收到所述第二模块不再占用所述无线信道的指示之后所述第一模块经由 所述无线信道发送所述数据。
30、 根据权利要求28所述的装置,其中,在从所述第一模块接收到不在所述无线信道上进行传输的所述请求之后,所述第二模块终止任何未完 成的传输。
31、 根据权利要求28所述的装置,其中,如果所述无线信道当前未被 所述第二模块占用则所述第一模块为所述第一模块声明传输线,并且,所 述第一模块经由所述无线信道发送所述数据。
32、 一种装置,包括处理器,用于确定将要由第一通信协议的第一模块经由无线信道接收 的数据的优先级,根据所述数据的优先级决定是否获得对所述无线信道的 控制,以及响应于获得对所述无线信道的控制的决定,请求第二通信协议 的第二模块不在所述无线信道上进行传输;以及存储器,其耦合到所述处理器。
33、 根据权利要求32所述的装置,其中,所述处理器用于 确定所述数据是用于信令还是业务,以及如果所述数据是用于信令则做出获得对所述无线信道的控制的决定。
34、 根据权利要求32所述的装置,其中,所述处理器用于 为所述第一模块声明优先权线,以请求所述第二模块不在所述无线信道上进行传输。
35、 根据权利要求32所述的装置,其中,所述第一通信协议是IEEE 802.11,而所述第二通信协议是蓝牙。
36、 一种方法,包括确定将要由第一通信协议的第一模块经由无线信道接收的数据的优先级;根据所述数据的优先级,决定是否获得对所述无线信道的控制;以及 响应于获得对所述无线信道的控制的决定,请求第二通信协议的第二模块不在所述无线信道上进行传输。
37、根据权利要求36所述的方法,其中,所述确定所述数据的优先级 的步骤包括确定所述数据是用于信令还是业务,并且其中,所述决定是否 获得对所述无线信道的控制的步骤包括如果所述数据是用于信令,则做出 获得对所述无线信道的控制的决定。
全文摘要
本发明描述了支持多种通信协议的模块(210、220)的适度共存的技术。适度共存可以通过对具有要发送或接收的高优先级数据(310、320)的通信协议赋予优先权来实现。在一种设计中,例如根据数据类型、一个或者多个数据协议报头字段、产生数据的应用程序等,可以确定将要由第一通信协议(例如,IEEE 802.11)的第一模块(210)经由无线信道发送的数据的优先级。根据数据的优先级可以决定是否在没有延迟的情况下发送数据。响应于在没有延迟的情况下发送数据的决定,可以请求第二通信协议(例如,蓝牙)的第二模块(220)不在该无线信道上进行传输。在接收到该无线信道未被第二模块占用的指示之后,可以经由该无线信道发送该数据。
文档编号H04W92/00GK101690295SQ200880021982
公开日2010年3月31日 申请日期2008年6月24日 优先权日2007年6月25日
发明者A·吉尔 申请人:高通股份有限公司