用于外围设备的毫米波通信 根据35U.S.C.§119要求优先权
本专利申请要求于2007年10月3日提交的临时申请序号60/997,439的优先权,此处明确地通过引用将其并入本申请。
【技术领域】
本发明涉及在无线个域网(WPAN)和无线局域网(WLAN)中连接设备的方法和装置。具体地而非排他性地,本发明涉及将有线协议与IEEE802.15.3无线协议进行连接。
背景技术
采用毫米波通信的WPAN和WLAN将用于家庭网络中在各种消费电子设备之间的短程通信。针对本公开的目的,WPAN包括超宽带、短程网络,其用于在个人设备和这些设备可以与之进行连接的任何较大网络之间传输大量的数据。为助于该应用,超宽带网络要求在多个不同的高数据速率设备之间进行媒体访问控制。例如,IEEE802.15.3协议可以用于WPAN中的点对点通信。
能够针对距离达10m的范围提供超过6Gbps数据速率的毫米波WPAN目前正在IEEE802.15.3c中进行标准化。在VHT60下还在考虑60GHz的很高吞吐量的WLAN标准。WPAN和WLAN一种潜在的应用是在计算机网络中的外围设备之间提供无线连接。例如,WPAN的现有技术方面允许在无线信道上传输当前的有线协议(USB、IEEE1394、PCIE、DVI/HDMI、SATA、1GbE等等)。然而,每个这些有线协议在发送和接收确认消息(例如,ACK或NACK)之间具有很严格的延迟要求和时限要求。因此,采用有线协议的外围设备端到端无线解决方案由于无线介质和协议中的延迟而遭遇显著的性能障碍。
图1示出了为多个不同的外围设备提供无线支持的现有技术解决方案。例如,一个外围设备可以具有USB接口,第二外围设备可以具有1394接口,第三设备可以具有PCIE接口,第四设备可以具有HDMI接口。现有技术解决方案为每个外围设备提供协议适配层(PAL)101-104,并为每个外围设备提供子MAC 111-114。进一步,每个外围设备的每一端要求具有无线驱动程序(未示出)。
在具有发送端和接收端的无线系统中,每一端包括标准有线外围设备收发机和无线收发机。发送端将分组发送给接收端,以及设置定时器并期待在预定的时间内(即,在定时器到期以前)收到ACK或NACK。然而,由于无线信道和无线协议中的延迟,即使接收端正确地接收到分组,但返回的ACK或NACK常常到达得太晚(即,在定时器到期之后)。发送端假定分组丢失并基于该不正确的假定来采取行动,例如重传分组和逐步减少传输速率。这仅仅是妨碍同时采用有线和无线协议的端到端解决方案性能的诸多问题之一。
WiMedia联盟针对USB协议对该问题做出努力。WiMedia定义了新的协议,称作无线USB(WUSB),其要求对USB MAC进行大的改变并在每一端提供PAL和新的驱动程序以代替现有的有线驱动程序。如果使用该方法为外围设备的所有有线协议提供无线支持,其将需要为每个有线协议引入一组PAL,为每个外围设备重新配置MAC,并提供新的一组无线驱动程序来代替现有的有线驱动程序。
【发明内容】
本申请公开的多个方面对于采用毫米波WPAN的系统有益,例如由IEEE802.15.3c协议所定义的。然而,本发明并不是要限制于这样的系统,因为其它的应用可以由于类似的益处而获益。
根据本发明的一个方面,一种无线装置用于将采用有线链路协议的第一设备耦合到可能位于或关联于如WPAN或WLAN之类的无线网络内的第二设备。所述装置包括有线接口、具有所述第一设备的终点的功能的有线收发机以及无线发射机。
根据另一方面,一种通信装置用于将采用有线协议的第一设备耦合到可能位于或关联于如WPAN或WLAN之类的无线网络内的第二设备。所述通信装置包括有线收发机和无线收发机。所述无线收发机具有所述第二设备的终点的功能,该终点功能包括从第二设备无线接收数据。所述有线收发机用于在有线链路上发送所接收到地数据,所述有线链路将所述装置与第一设备以通信方式耦合。
所述无线收发机模块用于执行无线网络的终点功能。举例来说而非限制性地,所述无线收发机模块可以包括毫米波收发机,例如根据所述IEEE802.15.3无线协议来配置的无线收发机。
虽然叙述了优选方面的一些益处和优势,但是本发明的保护范围并不是要限于特定的益处、用途或目的。相反,本发明的方面旨在广泛应用于不同的无线技术、系统配置、网络和传输协议,其中的一些以示例性的方式在图中和下列优选方面的描述中得到说明。详细描述和图仅仅是对本发明的说明,而非限于所附权利要求书及其等同范围定义的本发明的保护范围。本申请使用的短语“a”、“b”、“c”中至少一个是表示“a”、“b”、“c”或其任意组合。
【附图说明】
通过参考下面的图来理解本发明的各个方面。
图1是示出为多个不同的外围设备提供无线支持的现有技术解决方案的框图。
图2是示出本发明的示例性功能性方面的概念模型的框图。
图3A示出了本发明的示例性方面,其用于在采用不同的有线协议的一对有线设备之间提供无缝无线连接。
图3B是图3A所示无线单元之一的框图。
图3C是根据本发明配置的示例性装置的框图,其包括有线接口模块、有线收发机模块和无线收发机模块。
图4根据本发明示出了WPAN中传输信息的示例性方法。
图5是用于将针对采用有线协议而配置的电子设备耦合到WPAN的示例性通信方法的流程图。
图6是根据本发明配置的示例性通信系统的框图。
图7示出了处于根据本发明配置的计算机可读存储器上的示例性软件组件。
【具体实施方式】
下面描述了本公开的多个方面。显然,本申请的讲解可以以广泛的各种形式来实现,并且本申请公开的任何特定结构、功能或这两者仅仅是代表性的。基于本申请的讲解,本领域技术人员应该理解,本申请公开的一个方面可以独立于任何其他方面实现,并且这些方面的两个或多个方面可以通过多种方式组合。例如,可以使用本申请阐述的任何数量的方面来实现装置或实施方法。另外,可以使用附加于或替换本申请阐述的一个或多个方面的其它结构、功能、或结构和功能来实现该装置或者实施该方法。
在下面的描述中,为便于解释,给出了大量具体细节,以便提供对本发明的全面理解。然而,应该理解,本申请示出和描述的特定方面并不是要将本发明限于任何特定的形式,相反,本发明是要涵盖落入权利要求书所定义的本发明的保护范围内的所有修改、等同物和替换物。
图2是示出本发明的示例性功能性方面的概念模型的框图。根据本发明一个方面所配置的系统的功能性方面可以分层进行描述,例如开放系统互连(OSI)基本参考模型中的层。
层是概念上相似功能的集合,其向比它高的层提供服务,并从比它低的层接收服务。例如,在网络之间提供无差错通信的层提供了该层以上的应用所需的路径,同时其调用下一较低层来发送和接收组成路径内容的分组。
根据本发明一个方面,WPAN系统包括毫米波物理层220、毫米波MAC层210和应用层,应用层包括对应于WPAN中外围设备所采用的每个有线协议的多个应用(例如USB应用201、1394应用202、PCIE应用203和HDMI应用204)。对于WPAN的操作,外围设备仅表现为应用,因为对于不同类型的外围设备,现有的毫米波MAC并无变化,并且多个方面使用现有的有线驱动程序。一个或多个应用可以将适配层并入。
图3A示出了本发明的一方面,其用于在采用不同的有线协议的一对有线设备之间提供无缝无线连接。具有PCIE外围设备接口311和WPAN无线单元321的第一膝上型计算机301以通信方式耦合到具有1GbE外围设备接口312和第二WPAN无线单元322的第二膝上型计算机302。
图3B是图3A所示无线单元321和322之一的框图。无线单元可以具有一个或多个有线接口(即,连接口),例如1394接口341、1GbE接口342和PCIE接口343。同样可以包括未示出的另外的接口。无线单元可以具有一个或多个有线收发机,例如1394收发机331、1GbE收发机332和PCIE收发机333。每个有线收发机331-333耦合到有线接口341-343中相应的一个。无线单元还包括存储器320,无线收发机310包括与WPAN连接所需要的所有PHY、MAC和RF功能。
根据一方面,图3B所示无线单元利用其PCIE接口343来连接到第一膝上型计算机301的PCIE外围设备接口311。根据另一方面,图3B所示无线单元利用其1GbE接口341连接到第二膝上型计算机302的1GbE外围设备接口312。当第一膝上型计算机301上的应用通过其PCIE接口311发送分组时,分组由处于无线单元321中的PCIE收发机333接收到,而不是第二膝上型计算机302中的PCIE收发机(未示出)。
PCIE收发机333通过确认收到经由膝上型计算机301的PCIE外围设备接口311发送的数据来执行用于有线链路的终点功能。例如,PCIE收发机333可以对接收到的数据执行CRC并根据CRC的结果将本地确认消息(例如本地ACK或本地NACK)发送回给膝上型计算机301。根据一方面,即使CRC通过,PCIE收发机333仍可以返回本地NACK,例如来管理无线单元中的内部存储器。在本申请中,本地确认消息(例如本地ACK或本地NACK)定义为在本地链路(例如有线链路)的两个终点之间发送的确认消息。本地链路是端到端链路的一部分(即,一段)。因此,本地确认消息与贯穿包括多个本地链路的整个端到端链路的确认消息不同。
针对本公开的目的,有线链路的终点是链路中的一个位置,此处接收根据有线链路协议发送的数据并针对有线链路协议执行一个或多个终点功能。终点还可以称为端点,其可以是数据源、数据宿或同时为二者。举例来说而非限制性地,终点功能包括对接收到的数据进行检错,对接收到的数据进行纠错,确认接收到或未接收到数据,调节数据流,将消息发送给其它设备来调节数据流,以及对接收到的数据进行解码。终点以及终点功能根据链路的相应有线协议来进行定义。例如,USB终点用于根据USB有线协议发送ACK/NACK确认消息。其它有线协议中的终点(以及相应的终点功能)可以采用ACK/NACK以外替换的机制。
在一些情形下,有线链路中发送的本地确认消息可以由无线装置进行指示,甚至来源于无线装置。例如,即使无线单元321或322从有线链路正确接收到分组,无线单元321或322仍可以返回NACK。如果存储器320已满,则无线单元无法再存储从有线链路接收到的更多分组,因此它可以或者发送中断到有线链路以停止传输,或者它可以不断地发送本地NACK直到其存储器可以容纳更多数据。有线链路的终点还可以是链路中首先根据有线链路协议来发送数据的位置。有线链路通常包括两个终点。然而,有线链路可以包括多于两个终点。
PCIE收发机333还用于处理接收到的针对有线链路协议而格式化的数据。所产生的处理后的数据的有线链路的格式得以消除,并可以称为“原始数据”。原始数据耦合到无线收发机310,该无线收发机310用于对原始数据针对WPAN采用的无线协议进行格式化。
根据本发明的一方面,根据有线协议发送的数据不在无线信道上传播。因此,减轻了时限和延迟的问题。进一步,由于有线协议(例如,PCIE)不在无线链路上发送,无线单元322可以与第二膝上型计算机302中的不同的有线接口(例如,1GbE接口312)进行连接。
无线收发机310是无线链路的终点。针对本公开的目的,无线链路的终点是链路中作为端点来接收并处理根据无线协议发送的数据的位置,或者是通信链路中的目的地。无线终点以及无线链路中执行的终点功能根据链路的相应无线协议来进行定义。举例来说而非限制性地,终点功能包括:对接收到的数据进行检错,对接收到的数据进行纠错,确认接收到或未接收到数据,调节数据流,将消息发送给其它设备来调节数据流,以及对接收到的数据进行解码。无线链路的终点还可以是链路中首先根据无线协议来发送数据的位置。无线链路包括至少两个终点。然而,无线网络可以包括多于两个终点。
无线收发机310从WPAN接收到的信号针对无线协议而进行了格式化。无线收发机310对这些接收到的信号进行处理来生成原始数据,该原始数据耦合到至少一个有线收发机,例如PCIE收发机333。PCIE收发机333具有有线链路的终点的功能,并相应地针对PCIE协议来对原始数据进行格式化,以用于通过有线链路传输给膝上型计算机301。有线链路终点的另一功能是对通过有线协议发送的消息进行响应。例如,PCIE收发机333可以响应于从膝上型计算机301中的有线收发机(未示出)接收到的本地NACK而重传数据。
图3C是根据本发明一个方面配置的装置的框图。用于将装置耦合到第一设备350的模块包括有线接口351,其用于在装置和第一设备之间提供有线链路。用于终止有线链路的模块包括至少一个有线收发机,例如有线收发机352,其具有有线链路的终点的功能。有线收发机352执行的终点功能包括从第一设备350接收数据。用于进行无线传输的模块包括无线发射机353,其用于将接收到的数据无线发送给第二设备360。装置还可以包括用于存储数据的模块,例如存储器354用于存储从第一设备350或第二设备360接收到的数据。
有线接口351可以包括一个或多个有线接口,例如USB接口、IEEE1394接口、PCIE接口、DVI/HDMI接口、SATA接口和1GbE接口(或其任意组合)。有线收发机352耦合到有线接口351,并可以包括至少一个有线收发机,例如USB收发机、IEEE1394收发机、PCIE收发机、DVI/HDMI收发机、SATA收发机和1GbE收发机,或者其任意组合。
无线发射机353耦合到有线收发机352,并可以用于接收和确认来自无线链路的数据,例如WPAN或WLAN中的无线链路。无线发射机353可以包括毫米波收发机,例如根据IEEE 802.15.3无线协议配置的无线收发机。
根据本发明的一个方面,终点功能还包括响应于数据接收而将确认消息发送给第一设备350。有线收发机352可以用于确定接收到的数据是否正确。例如,确定步骤可以包括对接收到的数据进行循环冗余校验。如果接收到的数据是正确的数据,则确认消息包括ACK消息,或者,如果接收到的数据是不正确的,则确认消息包括NACK消息。根据另本发明的一个方面,如果有足够的存储空间来存储接收到的数据,则确认消息包括ACK消息,或者,如果没有足够的存储空间来存储接收到的数据,则确认消息包括NACK消息。例如,如果第二设备360无法接受接收到的数据,并且存储器354已满,则有线收发机352可以用于将NACK或中断消息发送给第一设备350,以便中断或延迟数据流。
图3D是根据本发明一个方面配置的装置的框图。用于终止第一设备350的无线链路的模块可以包括无线收发机361,其具有作为第一设备370的终点的功能,其中终点功能包括从第一设备370无线接收数据。用于将接收到的数据通过有线链路发送的模块可以包括至少一个有线收发机,例如有线收发机362,其将装置与第二设备380以通信方式耦合。装置还可以包括用于存储数据的模块,例如存储器363,其用于存储从无线网络接收到的数据。
根据本发明的一个方面,终点功能还包括响应于数据接收而将确认消息无线发送给第一设备370。无线收发机361可以用于确定接收到的数据是否正确。例如,确定步骤可以包括对接收到的数据进行循环冗余校验。根据本发明的一个方面,无线收发机361可以发送确认消息,如果接收到的数据是正确的数据,则确认消息包括ACK消息,或者,如果接收到的数据是不正确的,则确认消息包括NACK消息。终点功能还可以包括基于有线收发机362接收到的NACK将NACK消息无线发送给第一设备370。根据本发明的另一个方面,如果有足够的存储空间来存储接收到的数据,则确认消息包括ACK消息,或者,如果没有足够的存储空间来存储接收到的数据,则确认消息包括NACK消息。例如,如果第二设备无法接受数据并且存储器363变满,则可以将NACK消息发送给第一设备。
用于终止无线链路的模块,例如无线收发机361,可以是根据IEEE802.15.3无线协议配置的毫米波收发机。用于将接收到的数据通过有线链路发送的模块,例如有线收发机362,可以针对USB协议、IEEE1394协议、PCIE协议、DVI/HDMI协议、SATA协议和1GbE协议中的至少一个来进行配置。
图4是根据本发明一个方面示出在WPAN中传输信息的方法的流程图。401,第一电子设备(例如图3A中所示的第一膝上型计算机301)通过有线接口(例如,其PCIE接口311)来发送数据分组。402,无线单元(例如第一无线单元321)通过相应的PCIE接口(例如,图3B中所示的PCIE接口343)接收数据分组。一旦有线收发机(例如,PCIE收发机333)接收到分组(402),无线单元321则执行下述终点功能。PCIE收发机333可以进行CRC,然后,403,将确认消息(例如,根据CRC的结果为ACK或NACK)发送回给第一膝上型计算机301中的PCIE收发机(未示出)。根据一些方面,即使无线单元321正确接收到分组,无线单元321仍可以用于发送NACK。例如,如果WPAN中的无线链路远远慢于有线链路,或者无线信道中有拥塞,或者共享存储器320已满,则无线单元321可以将NACK发送回给膝上型计算机301,使得分组在之后它们可以由无线单元321进行处理时再重传。根据一些方面,无线单元321可以用于发送NACK,而不首先执行CRC。
404,无线单元321处理分组。例如,无线单元321可以在共享(或专用)存储器320中存储分组,或者,PCIE收发机333可以将分组传递给WPAN收发机310。405,通知WPAN收发机310中的MAC分组已准备就绪进行传输。例如,PCIE收发机333作为有分组要发的应用来工作。406,执行存储器管理。例如,如果存储器320已满,则无线单元321通知膝上型计算机301上的PCIE收发机(通过接口PCIE 311)停止传输。一旦存储器不再是满的,则重新开始传输。407,WPAN收发机310对分组进行格式化,并在无线信道上发送分组。
对于一些有线协议,代替以发送NACK来指示存储器320已满的是,将中断发送给发送设备(例如,膝上型计算机302)来减缓数据传输。终点功能还可以包括其它消息协议,其可以用来对数据传输进行调节。进一步,在一些情形下,例如在UDP模式下的1G比特以太网中,不返回任何确认消息。
图5是用于将针对采用有线协议而配置的电子设备耦合到WPAN的通信方法的流程图。501,第二无线单元322(图3A中所示)从WPAN接收分组,并且,503,在将确认消息(例如,ACK或NACK)返回给第一无线单元321之前,502,检验CRC。可替换地,第二无线单元322在从第二膝上型计算机302中的1GbE收发机接收ACK或NACK之后,503,可以返回确认消息。一旦从第二无线单元322接收到NACK,第一无线单元321则可以从存储器320获取分组,并且,504,将其重传。如果执行了重传步骤504,则可以重复步骤501-503。可以重复重传步骤504,直到确认步骤503向第一无线单元321提供了ACK消息或者达到了预定的最大数量的传输。
一旦正确接收,505,第二无线单元322则对接收到的数据进行处理。例如,无线单元322可将接收到的数据存储在存储器中,或将其传递给外围设备(有线的)收发机中的一个,例如1GbE有线收发机332。1GbE有线收发机332根据1GbE协议通过其1GbE接口312,506,将数据发送给第二膝上型计算机302上的1GbE收发机(未示出)。
图6是根据本发明一个方面配置的通信系统的框图。两台膝上型计算机601和602通过无线链路以通信方式耦合,该无线链路使用每个膝上型计算机601和602中各自的PCIE收发机603和604。
第一无线单元651通过第一线缆621耦合到第一膝上型计算机601。线缆621将第一膝上型计算机601中的PCIE收发机603连接到第一无线单元651中的PCIE收发机614。PCIE收发机614可以是第一无线单元651中多个有线收发机611-614中的一个。无线单元651还包括用于存储数据的共享存储器631,无线收发机641包括一个或多个天线,例如天线643和645。
第二无线单元652通过第二线缆622耦合到第二膝上型计算机602。线缆622将第二膝上型计算机602中的PCIE收发机604连接到第二无线单元652中的PCIE收发机618。PCIE收发机618可以是第二无线单元652中多个有线收发机615-618中的一个。无线单元652还包括用于存储数据的共享存储器632,无线收发机642包括一个或多个天线,例如天线644和646。
根据本发明的一个方面,无线单元对651和652使有线设备(例如,膝上型计算机601和602)能够配置成针对不相似的有线协议来工作,以通过无线接口来相互通信。根据另外的方面,无线单元651或652中的一个可以与不配置成进行外围设备(有线的)通信的另一无线设备进行通信。根据另一方面,无线单元对651和652可配置成具有适配器的功能。例如,第一无线单元651耦合到多个有线接口中的任意一个,而第二无线单元652仅耦合到一个有线接口,例如PCIE。因此,本发明的一个方面可以具有作为多个有线接口中的任意一个与单个有线接口之间的桥接器的功能。
本申请描述的各个方面可以实现成方法、装置或使用标准编程和/或工程技术的制品。本申请中使用的术语“制品”旨在涵盖可从任何计算机可读器件、载体或介质访问的计算机程序。例如,计算机可读介质可以包括,但不限于:磁存储器件、光盘、数字通用光盘、智能卡和闪存器件。
图7示出了位于计算机可读存储器700的软件组件,并根据本发明的一个方面来配置。在该描述中,术语“存储器”指的是数据存储、算法存储、以及其他的信息存储。应该理解,本申请描述的存储器组件可以是易失性存储器或非易失性存储器,或者可以包括易失性和非易失性存储器二者。通过示例性而非限制性的方式,非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除ROM(EEPROM)或闪存。易失性存储器可以包括随机存取存储器(RAM),其作为外部高速缓冲存储器。通过示例性而非限制性的方式,RAM以多种形式可用,比如同步RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双倍数据速率SDRAM(DDR SDRAM)、增强SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、以及直接存储器总线RAM(DRRAM)。另外,本申请所公开的系统和/或方法的存储器组件是要包括但不限于这些和其他适合类型的存储器。
无线终点功能源代码段701用于从WPAN接收无线数据并执行WPAN无线链路的终点功能。例如,源代码段701对从WPAN接收到的数据执行CRC并返回确认消息。源代码段701可以响应从WPAN接收到的消息,例如用来控制发送到WPAN中的数据流。
数据格式化源代码段702用于对从无线链路接收到的数据进行格式化,以用于在有线链路上传输。源代码段702还用于对从有线链路接收到的数据进行格式化以用于在无线链路上传输。
有线终点功能源代码段703用于从有线链路接收数据并执行有线链路的终点功能。例如,源代码段703可以对从有线链路接收到的数据执行CRC并返回确认消息。源代码段703可以响应由源代码段701从WPAN接收到的消息以用来控制从有线链路另一端处的设备接收到的数据流。源代码段703可以与用于将从有线链路接收到的数据存储在存储器中。
本发明并不是要限于优选的方面。进一步,本领域技术人员应该认识,本申请描述的方法和装置方面可以以多种方式实现,包括在硬件、软件、固件及其各种组合中。这种硬件的实例包括ASIC、现场可编程门阵列、通用处理器、DSP和/或其他电路。本发明的软件和/或固件实现可以通过编程语言(包括Java、C、C++、MatlabTM、Verilog、VHDL)和/或特定于处理器的机器和汇编语言的任意组合来实现。
本申请描述的方法和系统方面仅仅示出了本发明的特定方面。应该理解,本领域技术人员将能够提出各种安排,尽管未在本申请中明确描述或示出,但是这些安排可以实现本发明的原理并且包括在其保护范围内。此外,本申请列举的所有实例和条件性语言仅仅出于教学上的目的,以在理解本发明的原理方面辅助读者。本公开以及相关引用是要解释成不限于这些具体列举的实例和条件。此外,列举了原理、方面和本发明的方面、以及其具体实例的本申请的所有陈述是要涵盖结构性和功能性等效这两者。另外,这些等效是要既包括当前公知的等效又包括将来开发的等效,即,所开发的执行相同功能的任何组件,而不论其结构如何。
本领域技术人员应该理解,本申请的框图表示实现本发明原理的示例性电路、算法和功能步骤的概念图。类似地,应当理解,任何流程表、流程图、信号图、系统图、代码等等表示可由计算机可读介质来充分表示并由计算机或处理器执行的各种过程,而无论是否明确示出了该计算机或处理器。