CN101420720A - 用于无线传输的调度表和数据缓存 - Google Patents

用于无线传输的调度表和数据缓存 Download PDF

Info

Publication number
CN101420720A
CN101420720A CNA2008101778715A CN200810177871A CN101420720A CN 101420720 A CN101420720 A CN 101420720A CN A2008101778715 A CNA2008101778715 A CN A2008101778715A CN 200810177871 A CN200810177871 A CN 200810177871A CN 101420720 A CN101420720 A CN 101420720A
Authority
CN
China
Prior art keywords
wireless controller
data
wireless
buffer memory
queue
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2008101778715A
Other languages
English (en)
Other versions
CN101420720B (zh
Inventor
J·L·杰亚西兰
I·海尔马思
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN101420720A publication Critical patent/CN101420720A/zh
Application granted granted Critical
Publication of CN101420720B publication Critical patent/CN101420720B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/128Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0212Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave
    • H04W52/0216Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave using a pre-established activity schedule, e.g. traffic indication frame
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices
    • H04W88/182Network node acting on behalf of an other network entity, e.g. proxy
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

一种用于无线传输的调度表和数据缓存的方法和装置。本方法的实施例可以包括为无线控制器生成队列调度表,该调度表在主机系统的驱动器上生成。在一些实施例中,将来自主机系统的调度表数据缓存在无线控制器上,其中缓存可以包括活动队列和所述活动队列的页列表条目。无线控制器可以使用缓存的队列来进行操作。

Description

用于无线传输的调度表和数据缓存
技术领域
本发明的一些实施例总体上涉及数据操作。具体而言,一些实施例涉及用于无线传输的调度表和数据缓存。
背景技术
计算系统和其它电子系统一般在众多部件之间的有线总线上传输数据。使用多种不同的协议来进行这样的数据传输,这些协议包括通用串行总线(USB)的变形(USB 1,USB 2.0和任何后续标准)和其它总线标准。许多不同的设备可以依照这样的操作来连接,这需要大量的有线连接。
系统正在向数量日益增加的无线操作过渡,所述无线操作包括无线USB(USB-IF-USB实施者论坛的认证无线USB)。使用无线操作(例如,无线USB)允许连接多个设备,且不需要很多有线连接。作为替代,以无线方式对从系统中的多个设备传输的数据单元进行处理。
然而,使用无线USB或者类似系统要求调度数据以便于多个相连设备进行传输,并且要求将这样的调度提供给无线控制器。从主机系统驱动器到无线控制器的这种顺序的传输会引起大量的事务,这些事务实时分布在连接无线控制器和包含主机控制器驱动器的主机系统的总线上。这很少允许主机平台进入低功率状态。
附图说明
在附图的各幅图中,以举例的方式而不是限制的方式示出了本发明的实施例,在附图中,相同的附图标记指代相同的元件。
图1示出了用于缓存无线调度表和数据的系统的实施例;
图2示出了为无线传输缓存调度表和数据的系统的实施例;
图3示出了为无线传输缓存调度表和数据的过程;
图4示出了无线主机控制器缓存单元的一种格式的实施例;
图5示出了可以实施本发明实施例的无线通用串行总线部件和模块;以及
图6的流程图示出了无线控制器缓存数据的过程的实施例。
具体实施方式
本发明的实施例涉及用于无线传输的调度表和数据缓存。
在一些实施例中,提供了一种过程来改善无线传输的效率。在一些实施例中,无线控制器配备了异步调度表和控制/批量数据缓存。在实施例中,无线控制器是USB无线主机控制器(WHC)实现方式。
在一些实施例中,可以将WHC模块实现在附加卡上或者实现在经由总线与平台接口的类似部件上,或者可替换地将WHC模块嵌入在平台中。总线可以包括PCI(外围部件互连)或者PCIe(PCI Express)标准总线。本说明书将集中在WHC模块存在于附加卡上的实现方式,但是本发明的实施例不限于这种实现方式。在一些实施例中,用于实现缓存的逻辑存在于WHC模块上。在无线USB中,认证无线通用串行总线的无线主机控制器接口规范(包括2006年6月16日发布的修订版本0.95和所有后续修订版本)描述了系统软件与无线通用串行总线(无线USB)主机系统的UWB(超宽带)多接口控制器之间的接口。
在无线USB操作中,使用QSet(或队列集)来描述发往或者来自端点的无线事务。WHC使用一个或者多个QSet来创建事务组。QSet包括QHead和一个或多个qTD(队列单元传输描述符)结构。QHead包含多个已定义的单元,包括指向下一个QHead的指针(WusbAsyncListAddr)。通常,WHC使用QSet的处理模型是:
(1)读取一个或者多个QSet并基于所述QSet的传输描述符来创建事务组。
(2)执行事务组,按照需要将数据移入或移出系统。
(3)将事务的结果写入各个QHead的覆盖区域(overlay area)。
(4)重复(1)—(3),直到达到结束条件。
WHC采用两种类型的调度表,这些调度表是周期性调度表和异步调度表。异步调度表是基于异步传输列表的。使用异步传输列表来管理所有控制,并且管理批量传输。异步传输列表是QHead的循环列表,WusbAsyncListAddr是指向下一个QHead的指针。异步传输列表为所有链接到异步列表的QHead实现了轮转调度(round-robin)服务。
在一些实施例中,主机中的WHCI(无线主机接口)驱动器在主机存储器中配备了异步调度表,然后启用该调度表。在一些实施例中,WHC维护活动QSet的缓存。在一些实施例中,连同活动QSet一起,WHC还缓存页列表条目的子集。此外,WHC保存了每个QSet的当前页索引和当前页指针,如此一来当关联于QSet的端点再次在调度表中获得机会时,可以从正确的点发起下一个后继数据传输。对于异步数据而言,控制器具有一个发送队列和一个接收队列。
在一些实施例中,更新缓存来反映异步调度表中的变化。在一些实施例中,无论何时WHCI驱动器更新调度表来增加或者去除QSet,或者无论何时不活动QSet变成活动QSet或活动QSet变成不活动QSet,都通过命令告知WHC。一旦接收到更新,WHC将更新它的内部缓存以反映这些变化。
当多个QSet是活动时,为了向所有端点赋予轮转调度公平性,WHC针对特定QSet将仅提取最大长度等于最大端点大小(endpoint size)乘以最大突发大小(burst size)的数据。然后它将移动到下一个QSet。基于RF链接质量和设备响应,WHC能够针对任何端点动态地改变突发量,一直到最大突发量。
在无线主机控制器的操作中,合并了对主机存储器的数据访问。对于发送操作而言,在计算出每个端点能够发送多少数据后,WHC将从主机存储器中提取在数量上与能装入WHC TX(发送)数据缓冲器中的数据一样多的数据。如果具有供来自不同QSet的数据使用的空间,那么他们都将被提取。对于控制器而言,具有一个与每个数据队列相关的阈值。对于TX而言,仅在已经以无线方式(over the air)传输了足够多的数据并且TX队列中的数据已经下降到阈值以下时,才再一次从主机存储器中提取数据。这将使得主机平台在数据传输之间进入低功率状态。
对于接收操作而言,事务调度器将调度事务来对用于IN(IN描述数据方向)事务的设备进行轮询。一旦接收到数据,就将这种数据放置在RX(接收)队列中。如果提供了足够的缓冲,那么作为理想情况WHC能够保持数据直到达到RX队列阈值或者达到超时,然后写入到主机存储器。当数据模式短小且间断时,那么写入到主机存储器可以在从数据到达开始计时到发生超时的时刻完成。这将允许主机平台在数据传输之间进入低功率状态。
在可能时,WHC应该针对发送和接收操作对访问主机平台进行同步。
在一些实施例中,将活动异步调度表和相关的页列表条目缓存在WHC本地存储器中。为此,主机存储器通常仅被要求在有数据要发送或者接收时才被访问。例如,对于以无线方式进行的批量IN事务而言,一旦缓存了调度表,就不访问主机存储器,除非在轮询无线设备时无线设备返回了数据。因为这个原因,平台进入低功率状态,从而通过使用数据缓存降低了总体功耗。
甚至在活动数据传输时访问主机存储器期间,也能够通过合并访问来降低平台功耗。需要在WHC中缓存的最少数据取决于从主机存储器提取数据的等待时间。然而,通过增大WHC中的这一数据缓冲存储器,足够多的数据可以在WHC中得到缓冲,这样不用频繁地访问主机平台存储器。
在一些实施例中,数据传输通过使用数据缓存而得到了改善。当由于通过无线方式发送的机会而从主机存储器提取数据或者将数据写入到主机存储器时,或者接收到数据时,通过将活动异步调度表和相关的页列表条目一同缓存,WHC不必访问主机平台存储器来提取调度表或者页列表。这允许优化使用空中时间(air time),并因此改善了数据吞吐量。
在一些实施例中,算法仅缓存那些活动的QSet,从而减少了数据传输和存储。WHCD主机驱动器不能迅速地从调度表中去除不活动QSet。通过仅缓存活动QSet,减少了WHC缓存存储器需求和使用计划(utilizationcast)。为了通过在事务组内放置很多的事务来使得WHC以无线方式调度事务最优化,有益的是使WHC知道尽可能多的调度表。通过将QSet的缓存限制为活动QSet,该过程使WHC的可用有用信息最大化。
图1示出了用于缓存无线调度表和数据的系统的实施例。在这个示例中,主机平台102包括无线控制器驱动器104。驱动器104生成无线事务的调度表106和事务的表条目108。主机平台102可以经由总线110耦合到无线控制器112,如无线USB控制器。无线控制器112根据无线事务的调度表来进行操作。然而,为了提高操作效率,无线控制器112生成调度表的缓存114,缓存114仅包括活动事务单元116和页列表的条目子集118,其包括用于描述活动事务的相关页列表条目。
图2示出了为无线传输缓存调度表和数据的系统的实施例。在这个示例中,在主机平台202上包括WHCI驱动器204。驱动器204包括数据存储器,其可以存储于主机平台202的存储单元中。存储器可以包括动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM),DRAM需要刷新存储内容,而SRAM不需要刷新内容,但是增加了成本。DRAM存储器可以包括同步动态随机存取存储器(SDRAM)和扩展数据输出动态随机存取存储器(EDODRAM),SDRAM包括控制信号的时钟信号。数据存储器206可以包括要被调度的QSet的页条目。驱动器204生成QSet的异步调度表。在这个示例中,在事务组中调度8个QSet,即QS1到QS8。然而,在操作中只有六个QSet是当前活动的,这些QSet中的QS2和QS6是不活动的。主机平台202经由总线210与无线主机控制器212耦合,该无线主机控制器212耦合到UWB无线电PHY(物理层设备),总线210可以包括但不限于PCI或者PCIe标准总线。无线主机控制器212包括QSet的缓存214,该缓存被限于活动QSet。将缓存的集合加入到事务组中,包括缓存头指针216和缓存尾指针218,缓存头指针216用于指定组的开始,而缓存尾指针218用于指定组的结束。如图所示,WusbAsyncListAddr 220包含每个QSet指向下一个QSet的指针。无线主机控制器212还包括MMC(微调度管理命令)生成器和WUSB事务调度器,它们的功能包括对缓存的QSet进行调度。无线主机控制器还包括用于发送数据(TX)和接收数据(RX)的数据队列224。
图3示出了为无线传输缓存调度表和数据的过程。在示例中,当缓存大小是8时,图3示出了如何将调度表缓存在WHC中。在这个示例中,主机中的异步调度表302包括12个单元,即QS1-QS12,其中有8个活动的单元。然而,这个示例中的活动QSet等于缓存的大小,并且活动QSet可以更大。缓存自由池(cache free pool)306示出了缓存的建立,初始时包括QS3、QS4和QS5(310)。然后在缓存中加入了QS7,其中QS6是不活动的,随后加入了QS8和QS9(312)。然后,加入QS12和QS1,从而完成缓存。一旦已经缓存了所有活动的单元,那么这个环就被关闭了。从这个点向前看,如果已经完成了每个QSet的几个(将被调整的)活动传输描述符(TD),那么更新主机存储器中的TD,并且提取新的TD。在一些实施例中,如果加入或者删除调度表的QSet,或者不活动QSet变为活动,那么将会有来自驱动器的单独通知。在这种情况下,清洗整个缓存,然后重建缓存。
图4示出了WCH缓存单元402的一种格式的实施例。指向主机存储器中的QSet的指针404实现了对主机存储器中的QSet 406的访问。整个QSet被缓存。在图4提供的示例中,8个条目被缓存在页列表412中。当前页指针408和当前页索引410指向对应于传输描述符的下一次传输的数据。如果缓存要被清洗,那么将当前页指针408和当前页索引410存储在主机存储器中的HC暂存存储器中。如图所示,页指针指向主机存储器中的数据缓冲器414,在每个事务之后,每个条目都具有当前页指针和当前页索引。
通过将异步调度表和相关的页列表条目一同缓存,可以从主机存储器中提取数据或者将数据写入到主机存储器中,而不必提取用于每个数据事务的传输描述符和页列表条目。这改善了空中利用率(air utilization),并由此改善了数据吞吐量。
在一些实施例中,平台功耗可以通过合并对主机存储器的访问来降低。通过缓存调度表,仅当要提取或者写入数据时,或者当要更新调度表缓存时,才访问平台存储器。此外,通过增加WHC中的数据缓冲,即使由于这个原因增加了成本,但是对从主机存储器读取和向主机存储器写入进行了合并,由此使得平台在更长时间内处于低功率状态。
图5示出了可以实施本发明实施例的无线通用串行总线部件和模块。这些单元包括系统软件520和硬件524,包括UWB多接口控制器522。如图所示,无线USB总线部件和模块可以包括:
客户端驱动器软件(client driver software)502—客户端驱动器软件502在对应于特定无线USB设备的主机PC上运行。客户端软件一般是操作系统的一部分或者被提供给无线USB设备。
USB驱动器(USBD)504—USBD是系统软件部件,其概括了用于特定操作系统的特定主机控制器驱动器的细节。
无线USB主机控制器驱动器(WHCD)506—WHCD 506在特定的主机控制器硬件与USBD之间提供软件层。
UWB无线电控制器驱动器(URCD)508—URCD 508是一种系统软件部件,URCD 508提供了UWB无线电的控制功能,并且URCD 508是UMC的每种实现方式所必需的。
无线USB主机控制器(WHC)510—WHC是无线USB主机控制器的特定硬件实现方式。
UWB无线电控制器(URC)512—URC 512是UMC的每种实现方式中所必需的标准UWB无线电控制功能。
无线USB设备514—这是一个硬件设备,其执行有用的终端用户功能。与无线USB设备的交互从应用程序经过软件和硬件层流到无线USB设备。
UWB设备516—这是另一个具有UWB无线电接口的外部硬件设备。这个设备可以具有一个或者多个PAL(协议应用层)功能,例如WiNET(WiMedia网络协议)过程。
UWB无线电518—示出了用于无线操作的物理无线电设备。
图6的流程图示出了无线控制器缓存数据的过程的实施例。在这个示例中,将无线控制器的队列集的调度表建立在主机系统中(602)。识别调度表中的活动队列集(606)。仅将活动队列集缓存在无线控制器中(606),页列表条目的子集也一同被缓存(608)。
无线控制器然后根据缓存于控制器中的活动队列集调度表来操作(610),而不需要访问主机系统。在发送和接收数据传输之间的时间内,主机系统可以转换至低功率状态(611),这是因为不需要为了队列集调度而访问主机系统。如果有数据要发送或者接收(612),那么需要访问主机平台(614)。一旦接收到更新缓存的命令(616),无线控制器将采取动作进行更新,这包括清洗当前缓存(618)并利用更新的数据重新建立缓存。
受益于本公开内容的本领域技术人员应该意识到,在本发明的范围内可以对上述描述和附图进行许多其它的变形。实际上,本发明并不限于上述具体实施方式。相反,包括任意修改的下列权利要求限定了本发明的范围。
在上述说明中,出于解释的目的,阐述了很多具体的细节,以便提供对本发明的透彻理解。然而,对本领域技术人员显而易见的是,可以在没有这些具体细节中的某些细节的情况下实施本发明。在其他示例中,以方框图的形式示出了公知的结构和设备。
本发明可以包括各种过程。本发明的过程可以由硬件部件来执行,或者本发明的过程可以由机器可执行指令来体现,可以使用所述指令来使通用处理器或专用处理器或者逻辑电路(所述逻辑电路是利用指令编程的)执行这些过程。可替换地,所述过程可以由硬件和软件的组合来执行。
可以将本发明的部分作为计算机程序产品来提供,它可以包括具有存储于其上的指令的机器可读介质,可以使用所述指令来对计算机(或其他电子设备)编程,使之执行根据本发明的过程。所述机器可读介质可以包括但不限于软盘、光盘、CD-ROM(只读存储光盘)、磁光盘、ROM(只读存储器)、RAM(随机存取存储器)、EPROM(可擦可编程只读存储器)、EEPROM(电可擦可编程只读存储器)、磁卡或光卡、闪存或者其它类型的适于存储电子指令的介质/机器可读介质。此外,还可以将本发明作为计算机程序产品下载,其中,可以经由通信链路(例如,调制解调器或网络连接)通过含在载波或其他传播媒介中的数据信号将所述程序从远程计算机传输到请求计算机。
很多方法是以其最基本的形式描述的,但是在不背离本发明的基本范围的情况下,可以向所述方法中的任何一种方法中添加过程,或者从其中删除过程,并且可以向所描述的消息中的任何一个中添加信息,或者从其中删减信息。对于本领域技术人员显而易见的是,可以做出多种进一步的修改和调整。提供具体实施例的目的不是要限制本发明,而是为了举例说明本发明。本发明的范围不是由上文提供的具体例子决定的,而仅由下面的权利要求决定。
还应当认识到,本说明书全文中提到的“一个实施例”或“实施例”指的是在本发明的实施中可以包括某个具体特征。类似地,应当认识到,在对本发明示范性实施例的上述说明中,出于简化公开以及促进对各个创造性方面中的一者或多者的理解的目的,有时可以在单个实施例、附图或其说明中将本发明的各种特征组合到一起。然而,不应将这种公开方法解释成反映了这样的意图,即所要求保护的本发明所需要的特征比每一权利要求中明确记载的特征多。相反,如下述权利要求所反映的,创造性方面在于比所公开的前述单个实施例的所有特征少。因而,在此将权利要求书明确包含到本说明书中,其中,每一权利要求本身代表本发明的单独实施例。

Claims (18)

1、一种方法,包括:
为无线控制器生成队列调度表,所述调度表在主机系统的驱动器上生成;
将来自所述主机系统的调度表数据缓存在所述无线控制器上,其中所述缓存包括:
活动队列,以及
所述活动队列的页列表条目;以及
基于所缓存的队列来操作所述无线控制器。
2、根据权利要求1所述的方法,其中所述无线控制器是无线USB控制器。
3、根据权利要求1所述的方法,其中每个队列包括事务的队列集(QSet)。
4、根据权利要求1所述的方法,进一步包括接收所述活动队列的变化,并且基于所接收到的变化来重新建立所缓存的调度表。
5、根据权利要求1所述的方法,其中所述活动队列的变化包括增加调度的队列,删除调度的队列或者改变队列的活动状态。
6、根据权利要求1所述的方法,进一步包括:当所述无线控制器基于所缓存的队列操作时,将所述主机系统转换至低功率状态。
7、一种无线控制器,包括:
具有缓存的存储器,所述缓存用于保存活动队列和所述活动队列的页列表条目,从主机平台接收所缓存的数据或者将所缓存的数据发送到所述主机平台,所述无线控制器基于所述活动队列中的传输描述符来生成事务组;以及
数据队列,用于根据所述活动队列来发送和接收数据;
其中所述无线控制器根据所述活动队列的所述传输描述符来生成无线事务。
8、根据权利要求7所述的无线控制器,其中所述无线控制器是无线USB控制器。
9、根据权利要求8所述的无线控制器,其中每个队列包括事务的队列集(QSet)。
10、根据权利要求7所述的无线控制器,其中所述无线控制器从所述主机平台接收关于活动队列的更新。
11、根据权利要求10所述的无线控制器,其中在从所述主机平台接收到关于所述活动队列的变化的通知后,所述无线控制器重新建立所述缓存。
12、根据权利要求7所述的无线控制器,其中所述无线控制器合并对主机存储器的访问。
13、根据权利要求12所述的无线控制器,其中对于发送操作而言,所述无线主机控制器从所述主机平台提取在数量上与能装在所述无线控制器的一个或多个发送数据缓冲器中的数据一样多的数据。
14、根据权利要求12所述的无线控制器,其中对于接收操作而言,所述无线主机控制器保存数据,一直到到达接收队列阈值或者超时,然后将所述数据写入到所述主机存储器。
15、一种系统,包括:
总线;
耦合到所述总线的主机系统,所述主机系统包括用于保存无线控制器驱动器的SDRAM存储器,所述无线控制器驱动器用于生成队列的异步调度表;以及
USB(通用串行总线)无线控制器,所述USB无线控制器包括缓存,所述缓存用于对队列的所述调度表中的活动队列和所述活动队列的页条目进行保存,其中所述USB无线控制器基于所述活动队列中的所述传输描述符来生成事务组。
16、根据权利要求15所述的系统,其中所述主机系统向所述USB无线控制器通知关于所述活动队列的变化。
17、根据权利要求15所述的系统,其中所述USB无线控制器清洗所述缓存并基于所接收的变化来重新建立所缓存的调度表。
18、根据权利要求15所述的系统,其中在所述USB无线控制器在发送数据和接收数据传输之间的操作期间,所述主机系统转换至低功率状态。
CN2008101778715A 2007-09-29 2008-09-28 用于无线传输的调度表和数据缓存 Expired - Fee Related CN101420720B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/904,933 US7844760B2 (en) 2007-09-29 2007-09-29 Schedule and data caching for wireless transmission
US11/904,933 2007-09-29

Publications (2)

Publication Number Publication Date
CN101420720A true CN101420720A (zh) 2009-04-29
CN101420720B CN101420720B (zh) 2012-03-21

Family

ID=40509653

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101778715A Expired - Fee Related CN101420720B (zh) 2007-09-29 2008-09-28 用于无线传输的调度表和数据缓存

Country Status (3)

Country Link
US (1) US7844760B2 (zh)
CN (1) CN101420720B (zh)
TW (1) TWI400617B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102984089A (zh) * 2012-11-19 2013-03-20 中兴通讯股份有限公司 流量管理调度方法及装置
CN103489262A (zh) * 2012-06-11 2014-01-01 航天信息股份有限公司 网络式usb设备调度装置及其调度方法
US9176570B2 (en) 2012-12-29 2015-11-03 Intel Corporation System and method for providing universal serial bus link power management policies in a processor environment

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8225231B2 (en) 2005-08-30 2012-07-17 Microsoft Corporation Aggregation of PC settings
JP2009093418A (ja) * 2007-10-09 2009-04-30 Nec Electronics Corp ホストコントローラ装置及びデータ転送制御方法
US8843661B2 (en) * 2008-08-28 2014-09-23 Intel Corporation Data transfer between wireless universal serial bus (USB) host controller driver and wireless USB host controller in a wireless USB host
US20100153760A1 (en) * 2008-12-12 2010-06-17 Microsoft Corporation Power Settings in Wireless Ultra-Wide band Universal Serial Bus
US8554136B2 (en) 2008-12-23 2013-10-08 Waveconnex, Inc. Tightly-coupled near-field communication-link connector-replacement chips
US20120159395A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Application-launching interface for multiple modes
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US9423951B2 (en) 2010-12-31 2016-08-23 Microsoft Technology Licensing, Llc Content-based snap point
US9383917B2 (en) 2011-03-28 2016-07-05 Microsoft Technology Licensing, Llc Predictive tiling
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US8893033B2 (en) 2011-05-27 2014-11-18 Microsoft Corporation Application notifications
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US8922575B2 (en) * 2011-09-09 2014-12-30 Microsoft Corporation Tile cache
US9557909B2 (en) 2011-09-09 2017-01-31 Microsoft Technology Licensing, Llc Semantic zoom linguistic helpers
US10353566B2 (en) 2011-09-09 2019-07-16 Microsoft Technology Licensing, Llc Semantic zoom animations
US9244802B2 (en) 2011-09-10 2016-01-26 Microsoft Technology Licensing, Llc Resource user interface
US8933952B2 (en) 2011-09-10 2015-01-13 Microsoft Corporation Pre-rendering new content for an application-selectable user interface
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US9223472B2 (en) 2011-12-22 2015-12-29 Microsoft Technology Licensing, Llc Closing applications
KR20150093830A (ko) * 2012-12-14 2015-08-18 키사, 아이엔씨. 무접촉 디지털 저작권 관리 데이터 전송 시스템 및 방법
WO2014100058A1 (en) 2012-12-17 2014-06-26 Waveconnex, Inc. Modular electronics
EP2974504B1 (en) 2013-03-15 2018-06-20 Keyssa, Inc. Ehf secure communication device
US9838346B2 (en) * 2014-03-17 2017-12-05 Splunk Inc. Alerting on dual-queue systems
WO2015149347A1 (en) 2014-04-04 2015-10-08 Microsoft Technology Licensing, Llc Expandable application representation
WO2015154276A1 (en) 2014-04-10 2015-10-15 Microsoft Technology Licensing, Llc Slider cover for computing device
CN105378582B (zh) 2014-04-10 2019-07-23 微软技术许可有限责任公司 计算设备的可折叠壳盖
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10642365B2 (en) 2014-09-09 2020-05-05 Microsoft Technology Licensing, Llc Parametric inertia and APIs
CN106662891B (zh) 2014-10-30 2019-10-11 微软技术许可有限责任公司 多配置输入设备
US9756651B2 (en) * 2014-12-19 2017-09-05 Mediatek Inc. Wireless device and method for setting packet de-queue scheduling of packet queue device based on airtime quota allocation
US10102251B2 (en) * 2015-04-14 2018-10-16 Microsoft Technology Licensing, Llc Lockless open collection data structure
US9766929B2 (en) 2015-04-14 2017-09-19 Microsoft Technology Licensing, Llc Processing of data stream collection record sequence
US10133768B2 (en) 2015-04-14 2018-11-20 Microsoft Technology Licensing, Llc Latest external dependee entity in transaction record
US9959137B2 (en) 2015-04-14 2018-05-01 Microsoft Technology Licensing, Llc Transaction redo using skip element for object
US10592494B2 (en) 2015-04-14 2020-03-17 Microsoft Technology Licensing, Llc Collection record for overlapping data stream collections
US10031814B2 (en) 2015-04-14 2018-07-24 Microsoft Technology Licensing, Llc Collection record location as log tail beginning
US10261569B2 (en) * 2015-05-01 2019-04-16 Qualcomm Incorporated Universal serial bus (USB) host and client devices for supporting scheduled low-power operations
CN106358218A (zh) 2015-07-14 2017-01-25 广东欧珀移动通信有限公司 用于业务传输的方法及传输设备
US11102680B1 (en) * 2018-05-31 2021-08-24 Marvell Asia Pte, Ltd. Data transfer interface with reduced signaling
US11700209B2 (en) * 2019-09-30 2023-07-11 Intel Corporation Multi-path packet descriptor delivery scheme
US11475010B2 (en) 2020-09-09 2022-10-18 Self Financial, Inc. Asynchronous database caching
US20220075877A1 (en) 2020-09-09 2022-03-10 Self Financial, Inc. Interface and system for updating isolated repositories
US11641665B2 (en) 2020-09-09 2023-05-02 Self Financial, Inc. Resource utilization retrieval and modification

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956250A (en) * 1990-02-05 1999-09-21 Caterpillar Inc. Apparatus and method for autonomous vehicle navigation using absolute data
US6542077B2 (en) * 1993-06-08 2003-04-01 Raymond Anthony Joao Monitoring apparatus for a vehicle and/or a premises
US7085637B2 (en) * 1997-10-22 2006-08-01 Intelligent Technologies International, Inc. Method and system for controlling a vehicle
DE19703846A1 (de) * 1997-02-01 1998-08-06 Claas Ohg Elektrohydraulisches Lenksystem für Fahrzeuge
US6198992B1 (en) * 1997-10-10 2001-03-06 Trimble Navigation Limited Override for guidance control system
DE69940161D1 (de) * 1998-06-18 2009-02-05 Kline & Walker L L C Automatische vorrichtung zur überwachung von auf abstand zu bedienende ausrüstungen und maschinen weltweit anwendbar
US6882917B2 (en) * 1999-07-30 2005-04-19 Oshkosh Truck Corporation Steering control system and method
JP4229358B2 (ja) * 2001-01-22 2009-02-25 株式会社小松製作所 無人車両の走行制御装置
US6732024B2 (en) * 2001-05-07 2004-05-04 The Board Of Trustees Of The Leland Stanford Junior University Method and apparatus for vehicle control, navigation and positioning
JP3758586B2 (ja) * 2002-02-27 2006-03-22 日産自動車株式会社 車両用走行制御装置
US6941310B2 (en) * 2002-07-17 2005-09-06 Oracle International Corp. System and method for caching data for a mobile application
TWI292270B (en) * 2002-10-08 2008-01-01 Texas Instruments Inc System and method for transparently attaching wireless peripherals to a computer using an uwb wireless network
US20050286544A1 (en) * 2004-06-25 2005-12-29 Kitchin Duncan M Scalable transmit scheduling architecture
US7149839B2 (en) * 2004-12-03 2006-12-12 Microsoft Corporation Wireless USB hardware scheduling
KR100647906B1 (ko) * 2005-09-15 2006-11-23 한국전자통신연구원 초광대역방식의 무선 usb 호스트 장치
TWM310386U (en) * 2006-10-17 2007-04-21 Yuan High Tech Dev Co Ltd Wireless USB audio/video transmission device

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103489262A (zh) * 2012-06-11 2014-01-01 航天信息股份有限公司 网络式usb设备调度装置及其调度方法
CN103489262B (zh) * 2012-06-11 2016-06-08 航天信息股份有限公司 网络式usb设备调度装置及其调度方法
CN102984089A (zh) * 2012-11-19 2013-03-20 中兴通讯股份有限公司 流量管理调度方法及装置
WO2014075489A1 (zh) * 2012-11-19 2014-05-22 中兴通讯股份有限公司 流量管理调度方法及装置
EP2922257A4 (en) * 2012-11-19 2015-11-18 Zte Corp METHOD AND DEVICE FOR TRANSPORT MANAGEMENT PLANNING
AU2013347470B2 (en) * 2012-11-19 2017-09-07 Zte Corporation Traffic management scheduling method and apparatus
CN102984089B (zh) * 2012-11-19 2018-09-28 中兴通讯股份有限公司 流量管理调度方法及装置
US9176570B2 (en) 2012-12-29 2015-11-03 Intel Corporation System and method for providing universal serial bus link power management policies in a processor environment

Also Published As

Publication number Publication date
US7844760B2 (en) 2010-11-30
TWI400617B (zh) 2013-07-01
TW200928769A (en) 2009-07-01
US20090089459A1 (en) 2009-04-02
CN101420720B (zh) 2012-03-21

Similar Documents

Publication Publication Date Title
CN101420720B (zh) 用于无线传输的调度表和数据缓存
CN102624874B (zh) 一种语音信息传送方法及系统
CN103647726A (zh) 一种报文调度方法及装置
CN107613529B (zh) 消息处理方法以及基站
CN102541779A (zh) 一种提高多数据缓冲区dma效率的系统和方法
CN101150485A (zh) 一种零拷贝缓冲区队列网络数据发送的管理方法
CN101707564B (zh) 用于零拷贝缓冲区队列网络数据发送和接收的处理方法和装置
CN102065568B (zh) 基于数据描述符的mac软硬件交互方法及其硬件实现装置
CN1326057C (zh) 用于与总线连接的总线系统和总线接口
CN101158936A (zh) 一种节点之间的数据传输系统和装置及方法
CN101848135A (zh) 芯片的统计数据的管理方法和装置
CN101789966A (zh) 一种基于nfc存取物品的方法、服务器端及存取系统
CN101437033B (zh) 一种支持可变速率的方法和网络设备
CN102045809B (zh) 基于无线射频的机会网络路由方法
CN105988955B (zh) Sdio设备及其应用的电子装置和数据传输方法
CN104714832A (zh) 一种用于机载数据网络异步数据交互区的缓冲管理方法
CN103442091A (zh) 一种数据传输方法及装置
CN101415027A (zh) 基于hdlc协议的通讯模块及数据实时转发存储控制方法
CN101251831B (zh) 支持主从设备互换的移动存储器和主从设备互换方法
CN103347023B (zh) 一种工业现场环境下hdlc通信控制器
CN109800194A (zh) 基于Linux系统的SDIO接口数据传输方法及装置
CN109413180A (zh) 一种数据采集方法、系统及设备和存储介质
CN207835492U (zh) 一种双缓存载波解调系统
CN209690899U (zh) 基于usb的fpga通信控制装置及fpga
CN101060463B (zh) 异步传输模式调度方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120321

Termination date: 20190928