实现无线通用串行总线数据传输的方法

文档序号:7653471阅读:296来源:国知局
专利名称:实现无线通用串行总线数据传输的方法
技术领域
本发明涉及无线数据传输技术,特别是涉及一种实现低功耗无线通用串行总线(WUSB,Wireless Universal Serial Bus)数据传输的方法。
背景技术
通用串行总线(USB,Universal Serial Bus)是用于访问外围设备和个人计算机的公用接口标准,近年来,USB的应用领域已经被扩大到大量的消费电子设备和移动设备。与其它通信接口比较,USB接口的最大特点是易于使用,支持热插拔,且所有的配置过程都由系统自动完成而无需用户干预。现有USB使用模式中,每一外围设备通过插入到计算机系统上的标准化USB接口的电缆与计算机相连接。
随着短距离无线通信技术的发展以及无线通信在可靠性、可操作性方面的逐步提高,目前在数据采集系统中,以无线数据传输代替有线数据传输已成为一种发展趋势。并且,由于无线数据传输比有线数据传输更便于使用,所以,基于超宽带(UWB,Ultra Wideband)技术的WUSB正逐渐形成标准化。现有无线USB具有抗干扰能力强、可靠性高、安全性好、受地理条件限制少、安装施工简便灵活等特点,且具有与USB2.0标准相匹敌的通信速度,一般能达到480Mb/s或更高。
目前,无线网络最为迫切需要解决的是无线数据传输设备的能源消耗和电池续航能力。虽然消费者的PDA或其他手持移动终端,在没有进行WUSB连接时消耗的电力不多,但在连接以后消耗电力明显增多,这显然会妨碍WUSB技术的应用。WUSB的能耗应该控制在蓝牙、红外等短距离通信技术之下,才能更好地体现WUSB作为一种新技术的优势。
图1为现有技术中WUSB接口的结构示意图,该接口包括射频芯片1、微控制器(MCU)2和USB接口芯片3。其中,射频芯片1负责无线接收和发送数据;USB接口芯片3用于实现WUSB接口与USB总线之间的连接;微控制器2负责射频芯片1与USB接口芯片3之间的数据交互,并实现对射频芯片1和USB接口芯片3的管理。
为降低WUSB接口的功耗,目前通常采用动态电源管理(DPM,DynamicPower Management)等技术使系统各部分都运行在节能模式下。具体来说,由于WUSB接口的大部分功耗都消耗在其射频模块上,因此现有技术的DPM策略主要是由微控制器控制周期性关闭射频模块或将射频模块置于低功耗状态,但这种方案的缺点在于无法预测数据到来时间,如果射频模块处于关闭状态时有数据到达,就会造成数据的丢失。
在2006年7月的WUSB开发者会议(July 2006 Certified Wireless USBDevelopers Conference)上,Intel公司的Brad Hosler提出一种典型低功耗WUSB数据传输的实现方法,其通信原理如图2所示,其中图2(a)表示WUSB数据传输主机一端的操作流程,图2(b)表示WUSB数据传输外围设备一端的操作流程。WUSB外围设备向主机发送三种标志信号来实现休眠与唤醒状态的交互,三种标志信号分别为DN_Sleep(no matter what)、DN_Sleep(ifnot work)、DN_Alive。在WUSB外围设备确定需要直接休眠的情况下,其向主机发送DN_Sleep(nomatter what)标志信号,此时无论主机发送何种信号,WUSB外围设备均不作响应,直接进入休眠,主机收到此标志信号也中断与该WUSB外围设备的任何连接;在WUSB外围设备确定需要进行选择性休眠的情况下,其向主机发送DN_Sleep(if not work)标志信号,此时WUSB外围设备在主机的要求下选择是否休眠;WUSB外围设备休眠一段时间后,向主机发送DN_Alive标志信号,表明自己尚处在主机无线通信范围之内,唤醒和主机之间的连接,之后一定时间段内保持连接,连接时间段内可以完成数据传输,该连接时间段结束后,WUSB外围设备再次进入休眠状态。这种WUSB低功耗设计方法降低功耗是通过降低传输效率来实现的,一旦数据传输发生在设备休眠时间段内,要么加大主机和WUSB外围设备的缓存空间,将这些数据缓存起来等待WUSB外围设备唤醒时再完成传输;要么只能放弃该次数据传输,显然,这种方案对于功耗降低的作用也十分有限。

发明内容
有鉴于此,本发明的主要目的在于提供一种实现WUSB数据收发的方法,能在保证数据传输可靠性的同时,有效降低WUSB的功耗。
为达到上述目的,本发明的技术方案是这样实现的一种无线USB数据传输方法,该方法包括发送端无线USB接口在传输数据之前持续发送设定时间段长度的前置码;接收端无线USB接口经过预定时间的低功耗工作模式之后,检测是否接收到前置码,根据是否接收到前置码来确定是否接收数据,接收端进入低功耗工作模式的持续时间段小于前置码发送持续时间段。
上述方案中,所述根据是否接收到前置码来确定是否接收数据的操作包括如果接收到前置码,则执行数据接收操作,如果没有接收到前置码,则接收端无线USB接口重新进入低功耗工作模式,直至下一次检测前置码操作。
上述方案中,发送端无线USB接口所传输的前置码为连续的“10”信号,相应地,接收端无线USB接口检测到连续的“10”信号后,执行数据接收操作。
无线USB接口所处低功耗工作模式的持续时间根据无线USB接口所需平均功耗、接口连续工作模式下的功耗和接口低功耗工作模式下的功耗来确定。无线USB接口低功耗工作模式的实现包括关闭其射频部件。
上述方案中,所述无线USB接口通过中断的方式来进行数据传输操作。
当数据来自于USB总线时,无线USB接口通过中断的方式来进行数据传输的操作包括判断数据类型、暂存数据和设置总线数据标志。
无线USB接口检测到总线数据标志被设置后,该方法进一步包括通过无线传输的方式发送指定持续时间的前置码和该数据,数据发送完成后重置总线数据标志。
当数据来自于无线传输时,无线USB接口通过中断的方式来进行数据传输的操作包括判断数据标识头、暂存数据和设置无线数据标志。
无线USB接口检测到无线数据标志被设置后,该方法进一步包括对数据进行解包操作,分离有效数据、前置码和标识头,发送有效数据至USB总线,发送完成后重置无线数据标志。
本发明的无线USB数据传输的方法,通过判断是否接收到前置码来确定是否需要接收数据,如此,能在降低无线USB接口功耗的同时,有效保证数据的可靠传输。
本发明通过控制前置码发送持续时间和低功耗工作模式持续时间就能选择实际功耗,能够更有效地降低无线USB接口的功耗。


图1为无线USB接口的结构示意图;图2(a)为现有技术中一种无线USB数据传输主机端的操作流程图;图2(b)为现有技术中一种无线USB数据传输外围设备端的操作流程图;图3为本发明无线USB数据传输方法的流程示意图。
具体实施例方式
下面结合附图及具体实施例对本发明再作进一步详细的说明。
本发明的核心思想是发送端无线USB接口在传输数据之前持续发送一定时间段长度的前置码;接收端无线USB接口经过一定时间的低功耗工作模式之后,检测是否接收到前置码,根据是否接收到前置码来确定是否接收数据,接收端进入低功耗工作模式的持续时间段小于前置码发送持续时间段。
为了实现上述方法,本发明中的WUSB接口仍采用图1所示结构,包括射频芯片1、微控制器2和USB接口芯片3,这里,USB接口芯片3可采用PHILIPS的D12芯片,微控制器2可采用89C51,射频芯片1可采用nRF401芯片。其中,nRF401芯片选用FSK调制解调技术,最大发射功率为+10dBm,接收灵敏度高达-105dBm,最远使用距离可达1000m。nRF401芯片支持多通道操作,通道切换时间小于200μs,共128个通道满足多频或者调频的需要。该芯片内部集成有完整的频率合成器、电源调节器、晶体振荡器和调制器。且该芯片发射功率和工作频率等参数通过微控制器内的软件设置完成。nRF401芯片为低功耗设计且支持待机模式,接收状态下的功耗为250μA,发射状态下的功耗为8mA,待机状态功耗为8μA。USB接口芯片3接在微控制器2的数据总线上,USB接口芯片3的中断引脚/INT与微控制器2的中断引脚连接。
由于无线USB接口的功耗大部分消耗在射频芯片上,因此为了降低无线USB接口的功耗,必须降低射频芯片的功耗。降低射频芯片功耗的方法就是使射频芯片在工作一段时间后进入持续一定时间的待机状态,当射频芯片处于待机状态时,称无线USB接口处于低功耗工作模式。也就是说,针对无线USB接口而言,本发明中所述的低功耗工作模式是指射频芯片处于待机状态,而无线USB接口中其他器件可以处于正常工作状态。
具体说来,实现低功耗无线USB数据传输的方法包括在数据发送端,无线USB装置需要完成无线USB数据传输或其他操作时,执行如下操作a.无线USB装置先通过USB总线发令牌包给USB接口芯片3,USB接口芯片3接收到令牌包后发送中断信号给微控制器2,微控制器2收到中断信号后进入中断操作;b.在该中断操作过程中,微控制器2首先读USB接口芯片3的中断寄存器,判断USB令牌包的类型,包括输入包、输出包、设置包和帧起始包等,微控制器2根据帧起始包判断有效数据的起始,确定有数据需要传输;c.微控制器2确定有数据需要传输后,控制USB接口芯片3从USB总线获取数据,并将该数据保存至一个缓存区,设置总线数据标志,该总线数据标志可以是微控制器2的一个寄存器或者存储单元,表示有数据来自于USB总线需要传输,上述这些步骤完成之后,微控制器2退出中断操作;d.微控制器2循环查询总线数据标志,发现总线数据标志被置位以后,从缓冲区读取数据,通过RX/TX引脚向射频芯片1持续发送一定时间段的前置码,然后发送该数据;e.数据发送完毕之后,重置总线数据标志。
在数据接收端,无线USB装置执行如下操作步骤1无线USB接口持续一定时间段的低功耗工作模式之后,微控制器2控制射频芯片1从待机模式转入正常工作模式并持续一个时间段,检测射频模块1是否能接收到前置码,如果没有接收到前置码,则再次进入低功耗工作模式,如果接收到前置码,则微控制器2执行中断操作;步骤2在该中断操作中,微控制器2控制射频芯片1接收数据,对数据进行解包操作,区分有效数据、前置码和标识头,将有效数据存储至一个缓冲区,并设置无线数据标志,该无线数据标志可以是微控制器2的一个寄存器或者存储单元,表示有数据来自于无线传输需要接收;步骤3微控制器2循环查询无线数据标志,发现无线数据标志被置位以后,从缓冲区读取数据,将数据发送至USB总线;步骤4数据接收完毕之后,重置无线数据标志。
由于无线USB装置的数据传输可以是双工操作,因此一个无线USB接口可以充当发送端无线USB接口,也可以充当接收端无线USB接口,相应地,其微控制器需要执行的处理数据中断操作也可以包括从USB总线接收到数据后的中断操作,也可以包括从无线传输接收到数据后执行的数据操作。
在上述操作过程中,前置码的内容由发送端和接收端预先确定,可以选择连续的“10”信号,当无线USB接口通过射频芯片2检测到“10”信号之后,就认为有数据需要接收,微控制器2控制射频芯片1进入正常工作状态。WUSB数据包的包头可以用来标识有效数据部分,由此,无线USB接口获得了同步,且正确获得了传输数据。所设置的前置码发送持续时间大于射频芯片的待机持续时间,这样就可以保证每次射频芯片接收到信号时,都只能先接收到前置码信号,再接收有效数据,而不会造成有效数据的丢失。当然,前置码的持续时间也不能太长,否则就会大为降低传输效率。具体前置码发送持续时间的设定根据接收端低功耗工作模式持续时间确定,前置码设定后会通知接收端。
射频芯片的正常工作状态和待机状态的时间比也就是工作的占空比,增加射频芯片待机状态的持续时间可以减少正常工作状态的时间,从而减少平均工作电流。待机状态的持续时间是由无线USB接口所需功耗、接口连续工作运行功耗和接口低功耗工作模式下的功耗来决定的。在点对多点的无线通信系统中,主机对从机进行查询并获得数据,主机与从机每次的传输都是从前置码开始。假定每个从机的电源为9V 550mAh的电池,如果希望从机的电源能工作一年(即365天×24小时/天=8760小时)。为满足该连续工作时间,理论上要求平均工作电流应该为I=550mAh÷8760hour=62.8μA。在工作模式转换中,从待机状态到接收稳定最多需要5ms时间,另外加上10ms时间来搜索前置码,所以可设计工作时间为15ms,待机时间2.63s,射频芯片nRF401接收电流为11mA,此时理论平均工作电流为I=11mA×(15ms÷2.63s)=62.8μA。这也意味着为了唤醒接收机,每次发送数据时必须先发送2.63s以上的前置码持续时间,以保证能够可靠唤醒接收机。对于接收机来说,每工作15ms若搜索不到前置码,即进入待机状态2.63s,即可保证无线USB接口能够维持足够长的工作时间图3为本发明无线USB低功耗数据传输方法的流程图,流程中包括主循环过程和中断服务所执行的步骤,在此称之为前台主循环程序和后台中断服务程序。对于USB接口芯片D12所引发的中断服务程序,包含以下操作首先读USB接口芯片的中断寄存器,判断USB令牌包的类型,包括输入包、输出包、设置包和帧起始包,其中输入包是用于设置输入命令的,输出包是用来设置输出命令的,然后执行相应的操作。如果通过令牌包判断出是控制端点发送的控制指令,则执行该指令的解释,进行相关处理。如果通过令牌包判断出有数据发送,则设置总线数据标志USB_DATA,并将数据存至缓冲区。对于射频芯片nRF401所引发的中断服务程序,包含以下操作射频芯片接收到有效数据后,将数据放入缓冲区,并设置无线数据标志UART_DAT,由于无线收发芯片在接收状态下即使没有数据接收,也会有随机码输出,因此需要在所需传输的数据前加上标识头,如0x55AA。当检测到从串口进入的数据为0x55AA时,才认为是有效数据的开始。
相应地,前台主循环程序中,实现端口和内部寄存器的初始化后即执行1)通过总线数据标志位判断有无数据来自USB总线,有则通过无线传输的方式发送指定持续时间的前置码,然后发送该数据;2)通过无线数据标志位判断有无数据来自于无线传输,有则对其进行解包操作,分离有效数据、前置码和标识头,发送有效数据至USB总线;3)循环执行步骤1)和2)。
以上所述,仅为本发明的较佳实施例而已,并非用来限定本发明的保护范围。本领域内技术人员应该能够联想到,选用其他结构和持续时间的前置码,采用其他方式处理前置码接收操作等本发明的替换方法都应该属于本发明的保护范围。
权利要求
1.一种无线USB数据传输方法,该方法包括发送端无线USB接口在传输数据之前持续发送设定时间段长度的前置码;接收端无线USB接口经过预定时间的低功耗工作模式之后,检测是否接收到前置码,根据是否接收到前置码来确定是否接收数据,接收端进入低功耗工作模式的持续时间段小于前置码发送持续时间段。
2.根据权利要求1所述的无线USB数据传输方法,其特征在于所述根据是否接收到前置码来确定是否接收数据的操作包括如果接收到前置码,则执行数据接收操作,如果没有接收到前置码,则接收端无线USB接口重新进入低功耗工作模式,直至下一次检测前置码操作。
3.根据权利要求1所述的无线USB数据传输方法,其特征在于所述发送端无线USB接口所传输的前置码为连续的“10”信号,相应地,接收端无线USB接口检测到连续的“10”信号后,执行数据接收操作。
4.根据权利要求1所述的无线USB数据传输方法,其特征在于所述低功耗工作模式的持续时间根据无线USB接口所需平均功耗、接口连续工作模式下的功耗和接口低功耗工作模式下的功耗确定。
5.根据权利要求1所述的无线USB数据传输方法,其特征在于无线USB接口低功耗工作模式的实现包括关闭其射频部件。
6.根据权利要求1至5任一项所述的无线USB数据传输方法,其特征在于所述无线USB接口通过中断的方式来进行数据传输操作。
7.根据权利要求6所述的无线USB数据传输方法,其特征在于当数据来自于USB总线时,所述中断操作包括判断数据类型、暂存数据和设置总线数据标志。
8.根据权利要求7所述的无线USB数据传输方法,其特征在于无线USB接口检测到总线数据标志被设置后,该方法进一步包括通过无线传输的方式发送指定持续时间的前置码和该数据,数据发送完成后重置总线数据标志。
9.根据权利要求6所述的无线USB数据传输方法,其特征在于当数据来自于无线传输时,所述中断操作包括判断数据标识头、暂存数据和设置无线数据标志。
10.根据权利要求9所述的无线USB数据传输方法,其特征在于无线USB接口检测到无线数据标志被设置后,该方法进一步包括对数据进行解包操作,分离有效数据、前置码和标识头,发送有效数据至USB总线,发送完成后重置无线数据标志。
全文摘要
本发明涉及一种实现无线USB数据传输的方法,该方法包括发送端无线USB接口在传输数据之前持续发送设定时间段长度的前置码;接收端无线USB接口经过预定时间的低功耗工作模式之后,检测是否接收到前置码,根据是否接收到前置码来确定是否接收数据,接收端进入低功耗工作模式的持续时间段小于前置码发送持续时间段。该方法通过判断是否接收到前置码来确定是否需要接收数据,由此能在降低无线USB接口功耗的同时,有效保证数据的可靠传输。
文档编号H04L29/02GK101056243SQ20071010610
公开日2007年10月17日 申请日期2007年5月25日 优先权日2007年5月25日
发明者孙利荣 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1