无线网络控制器中的超低延迟操作模式实现的制作方法

文档序号:29036897发布日期:2022-02-25 19:12阅读:146来源:国知局
无线网络控制器中的超低延迟操作模式实现的制作方法
无线网络控制器中的超低延迟操作模式实现
1.相关申请的交叉引用
2.本技术要求于2020年8月24日提交的美国临时申请第63/069,639号的权益,其全部内容通过引用并入本文。
技术领域
3.本公开内容涉及无线网络;更具体地,涉及实现快速操作模式改变以改善无线网络的性能。


背景技术:

4.无线网络通常具有连接,该连接的吞吐量根据内在条件(例如,连接至网络的装置的能力和配置)和外在条件(例如,环境中电磁波传播的条件)而变化。接入点可以支持特定带宽,而连接至接入点的站中的一些能够利用全带宽或仅部分带宽。站和接入点可以利用基于两个装置的能力的交集的操作模式来建立无线连接。例如,由两个装置建立的操作模式可以具有接入点和站的带宽中的较小者的带宽。有时,内在条件或外在条件随时间而改变,并且连接至无线网络的装置被迫修改其操作模式。对操作模式的改变需要一些时间来执行,并且因此可能导致数据传输的延迟增加,不利地影响网络的整体性能。


技术实现要素:

5.本公开内容的一方面公开了一种实现第一通信装置cd与第二cd之间的无线连接的操作模式改变的方法,所述方法包括:由第二cd的无线网络控制器检测第一cd已经请求从第一操作模式到第二操作模式的操作模式改变的指示;以及由无线网络控制器修改与第二cd的传输队列中的一个或更多个帧相关联的传输信息ti,所述ti包括由第二cd的物理层使用以对相应帧到第一cd的传输进行配置的表示,其中,传输队列中的一个或更多个帧先前已经与第一模式ti相关联,并且其中,对ti的修改是改为第二模式ti。
6.本公开内容的另一方面公开了一种设备,包括:存储器;以及耦接至存储器的处理装置,处理装置被配置成:检测通信装置cd已经请求无线连接从第一操作模式到第二操作模式的操作模式改变的指示;以及利用cd修改与传输队列中的一个或更多个帧相关联的传输信息ti,所述ti包括由通信地耦接至处理装置的物理层使用以对相应帧到cd的传输进行配置的表示,其中,传输队列中的一个或更多个帧先前已经利用第一模式ti进行编程,并且其中,对ti的修改是改为第二模式ti。
7.本公开内容的又一方面公开了一种系统,包括:一个或更多个天线;第二通信装置cd的物理层,所述物理层用于基于与相应帧相关联的传输信息ti对第二cd的传输队列中的一个或更多个帧经由一个或更多个天线到第一cd的传输进行配置;以及第二cd的介质访问控制mac层,mac层通信地耦接至物理层,mac层用于:将与传输队列中的一个或更多个帧相关联的ti编程为第一cd的第一操作模式;检测第一cd已经请求第一cd和第二cd的无线连接从第一操作模式到第二操作模式的操作模式改变的指示;以及将与传输队列中的一个或更
多个帧相关联的ti重新编程为第二操作模式。
附图说明
8.图1示出了具有一个或更多个接入点和一个或更多个站装置的无线网络的一个示例性实现方式,该无线网络的性能可以由能够实现快速操作模式改变的网络控制器来优化。
9.图2是根据本公开内容的一些实现方式的包括能够进行无线网络中的快速且高效的操作模式改变的网络控制器的装置的一个示例性架构的框图。
10.图3是示出根据本公开内容的一些实现方式的用于使用超低延迟网络控制器的无线网络中的快速且高效的操作模式改变的示例操作的框图。
11.图4是示出根据本公开内容的一些实现方式的用于包括传统装置的无线网络中的快速且高效的操作模式改变的示例操作的框图。
12.图5是根据本公开内容的一些实现方式的由响应装置执行的无线网络中的快速且高效的操作模式改变的示例方法的流程图。
13.图6是根据本公开内容的一些实现方式的由发起装置执行的无线网络中的快速且高效的操作模式改变的示例方法的流程图。
14.图7示出了通过将传统无线装置中的延迟(上面的图)与具有ulome功能的无线装置中的延迟(下面的图)进行比较而公开的实现方式的优点。
具体实施方式
15.本公开内容的各方面涉及无线网络中支持的各种装置的连接的操作模式(om)改变的快速实现方式。接入点(ap)可以向多个站(st)(例如,客户端装置)提供无线网络服务。在ap和sta协商初始连接时建立的om之后可能会改变(多次)。例如,具备具有160mhz最大带宽的支持4个空间流(ss)的4个天线的ap和具备具有80mhz最大带宽的2个天线(支持2个ss)的sta在sta的第二天线当前正经受妨碍其有效地接收和发送数据的干扰的情况下可以初始地建立特征在于1个ss和80mhz带宽的第一om。随着时间的推移,sta的无线芯片可能变得过热,并且sta可能发起向具有1个ss和40mhz带宽的第二om的om改变,以降低sta芯片温度。在稍后的某个时间,当网络中干扰的量减少时,第二sta天线可能变得可用。因此,sta可以发起向具有2个ss和40hz带宽的第三om的另一om改变等。
16.改变om可能需要大量时间。例如,为了实现在超高吞吐量(vht)ieee 802.11ac标准下的改变,第一装置(如果改变是ap发起的,则为sta或ap)可能需要在计划用于发送至第二装置的其他数据帧的队列的末尾处放置动作帧。动作帧包括om通知元素,该om通知元素向另一个装置发信号通知第一装置请求om的改变。第二装置最终接收动作帧。第二装置的介质访问控制地址(mac)层处理动作帧、确认om改变并且开始使用新的om。这样的处理是慢的,并且可能需要几毫秒或更长时间来完成om改变。此外,先前已排队但尚未发送的帧仍然将使用旧的om设置进行发送。
17.更新的标准——例如高效无线(hew)ieee 802.11ax——可以允许更高效的om改变机制。可以将om改变指示符插入到通过无线连接发送的帧的mac报头的高吞吐量控制字段(htc字段)中。本文所公开的方面和实现方式克服了上述挑战并且显著减少了om改变处
理中涉及的延迟。公开了有效利用可以使用服务质量(qos)数据帧传送的om改变指示的网络控制器。
18.网络控制器可以具有上层mac功能和下层mac功能,所述上层mac功能和下层mac功能可以在单独的芯片上或在单个芯片上实现。上层mac可以接收数据分组(例如,从主机装置接收)、产生数据帧并且将数据帧放置在传输队列中。上层mac还可以向数据帧提供基于当前om的传输描述符。上层mac还可以对可能触发om改变的外在条件和内在条件执行监测。传输描述符可以用于向物理层(phy)提供如何通过无线网络发送数据帧的指令。模式改变操作可以是包括om改变发起装置(“发起装置”)和om改变响应装置(“响应装置”)的协作处理。发起装置的上层mac可以确定要执行的om改变。发起装置的下层mac可以在帧的适当字段(例如,传输队列中的第一个帧和/或队列中的后续分组)中引入om改变指示符而不改变传输描述符。已经接收到具有om改变指示符的数据分组的响应装置的下层mac可以开始修改响应装置的传输队列中的传输描述符,经修改的传输描述符指示响应装置的phy层使用如从发起装置接收的om改变指示符中所规定的新的om模式发送传输队列中的帧。对传输描述符的修改可以包括利用对应于新的om的值重写传输描述符中对应于旧的om的值。此外,响应装置的上层mac可以开始向(在响应装置的队列的后面添加的)新的帧提供用于指示phy层基于新的om发送新的帧的传输描述符。上层mac可以向下层mac传送具有新的描述符的最旧帧(或具有旧的描述符的最近帧)的标识符,以通知下层mac何时停止将描述符从旧的om重新编程为新的om。响应装置的下层mac还可以生成确认帧,以向发起装置确认已经执行到新的om的转换。
19.反过来,已经检测到从响应装置接收确认(例如,ack帧)(并且因此检测到所请求的om的改变已经被接受)的发起装置的下层mac开始修改发起装置的传输队列中的传输描述符,以指示该发起装置的phy层使用新的om模式来发送(发起装置的)传输队列中的帧。此外,发起装置的上层mac可以开始向(在发起装置的队列的后面添加的)新的帧提供新的om下的传输描述符。上层mac还可以通知下层mac何时停止将描述符从旧的om重新编程为新的om。
20.因此,两个装置极快地转换至新的om,而不必等待直到已经以旧的om(由任一装置)编程的数据分组的整个队列被发送。延迟的减少可以相当显著。例如,使用现有的技术,可能需要数十毫秒(或更多)的时间来循环通过已经由发起装置编程的数据帧的队列、发送om改变动作帧、使动作帧被响应装置检测并处理、发送确认帧、使响应装置发送在实现新的om之前已经编程的数据帧的队列等。另一方面,由本文所公开的网络控制器实现的快速om改变处理可能仅需要数十微秒(或更短)。
21.在一些实现方式中,如下面更详细地公开的,当仅装置中的一个(例如,响应装置)具有快速网络控制器而另一个装置(例如,发起装置)是传统装置时,也可以实现om改变处理的改进。在这样的实现方式中,响应装置的下层mac可以一从传统发起装置接收到改变om的请求就开始修改传输描述符,而响应装置的上层mac开始利用新的传输描述符对新的数据分组进行编程。
22.图1示出了具有一个或更多个接入点和一个或更多个站装置的无线网络100的一个示例性实现方式,该无线网络的性能可以由能够实现快速操作模式改变的网络控制器来优化。无线网络100可以是无线局域网(wlan)、无线广域网(wwan)、无线城域网(wman)、无线
个域网(pan)等。在一个实现方式中,无线网络100可以具有一个或更多个接入点(基站),例如,配备有能够支持无线信号的各种空间流(ss)的一个或更多个天线106(1)

106(n)的ap 102。无线连接可以使用任何频带,例如2.4ghz调节域、5ghz域、60ghz域、6ghz域或任何其他频带。
23.在一些实现方式中,ap 102可以包括多个接入点(例如,以第一频带(例如,2.4ghz)操作的第一ap和以第二频带(例如,5ghz)操作的第二ap),多个接入点可以使用相同或分开的天线106,天线106中的一些可以是多输入多输出(mimo)天线。ap 102可以包括超低延迟om实现控制器(ulome)104,以实现如上所述的以及相对于图2至图4更详细地公开的快速om改变。ulome 104可以集成至ap 102中或者可以与ap 102电子地或无线地通信。
24.无线网络100可以支持诸如客户端装置的多个站(sta),例如sta 110和sta 111。站中的一些可以包括类似的ulome控制器。例如,sta 110可以包括ulome 114。站中的一些(例如,sta 111)可以是没有ulome功能的传统站。接入点与站之间的无线连接(或者不同站之间和/或不同接入点之间的对等连接)可以具有不同的最大支持ss数和不同的最大带宽(本文称为连接的om)。例如,如图1中示意性地描绘的,ap 102与sta 110之间的无线连接可以具有由ap天线106(1)和ap天线106(2)以及sta天线116(1)和sta天线116(2)实现的两个空间流120(1)和120(2)。在无线连接的持续时间内,ss中的一些可能变得不可用,例如,可能经受导致一个或更多个ss对于无线连接无效的过量的干扰。例如,ss 120(2)可能在某一时刻变得无效。此外,连接的带宽可能随时间改变(向上或向下改变)。例如,如由虚线所指示的,带宽可以从例如40mhz(实线和虚线120(1))改变为20mhz(仅实线120(1))。为了响应变化的条件,各个接入点和站可以不时地(例如,为了最大效率)改变连接的om模式。
25.如下面所公开的,本公开内容的各方面和实现方式使用ulome控制器解决高效且快速的om改变。在一些实现方式中,无线连接(例如,连接120(3))的仅一个装置(例如,ap 102)可以具有ulome功能。在这样的实现方式中,例如,当发起装置是传统装置(例如,sta 111)并且响应装置是配备ulome的装置(例如,ap 102)时,仍然可以实现支持ulome的高效om改变。
26.无线网络100可以在城市环境、商业环境、办公环境、家庭环境、汽车环境(或任何其他运输工具环境)等中实现。
27.图2是根据本公开内容的一些实现方式的包括能够进行无线网络中的快速且有效的操作模式改变的网络控制器的装置200的一个示例性架构的框图。图2中所示出的一些部件可以是可选的。所示出的架构可以包括主机装置202,该主机装置202具有实例化在其上的与网络的其他装置交换数据的应用204。主机装置202可以是任何计算装置,例如台式计算机、服务器、膝上型计算机、平板电脑、智能电话、物联网装置、智能控制器、视频装置、音频装置或可以是无线网络(例如,网络100)的一部分的任何其他装置。应用204可以是可以在主机装置202上操作的任何应用(例如,浏览器、图形应用、文字处理应用、操作系统、虚拟机等)。实例化在主机装置202上的应用204可以准备输出传输数据,例如可以包括多个tx数据分组207的tx数据206。术语“数据分组”应当理解为包括数据分组的任何部分,例如数据段、数据串等。利用白色矩形描绘每个数据分组的数据负载。利用灰色正方形描绘的是可以由主机装置202或由开放式系统互连(osi)的网络层使用的各种元数据。元数据可以描述数据分组的性质(例如,视频、音频、网络内容等)、数据的优先级(例如,高、正常、低)或描述数
据分组的任何其他类型的信息。此外,应用204可以接收输入传输数据,例如可以包括多个rx数据分组209的rx数据208。tx数据分组207和rx数据分组209可以被传送至网络控制器。网络控制器可以是ulome控制器,例如ulome 220。
28.tx数据分组207可以通过网络接口210传送。为了将主机装置202连接至网络控制器,可以使用任何适当类型的网络接口210,例如外围部件互连快速(pcie)接口、安全数字输入输出(sdio)接口、通用串行总线(usb)接口或任何其他类似类型的并行或串行连接。网络接口210可以包括osi网络层(未明确示出)。
29.ulome 220可以包括多个块,例如上mac层(umac)230、下mac层(lmac)250和物理层(phy)270。umac 230和lmac 250可以构成osi数据链路层。在一些实现方式中,ulome 220的不同层在单管芯芯片上实现。在其他实现方式中,可以使用一个或更多个芯片来容纳ulome 220的各个层。例如,umac 230和lmac 250可以在单个芯片上实现,并且phy 270可以在单独的管芯上实现。在另一示例中,所有三个层可以实现为单独的装置。在umac 230和lmac 250在单个芯片上实现的实现方式中,对umac 230和lmac 250的引用应当理解为对由umac 230和lmac 250提供的相应功能的引用,而不是引用所引用的功能位于的实际物理位置。
30.umac 230可以包括内部监测232模块和外部监测234模块。内部监测232可以监测ulome 220的内部状态,包括诸如ulome 220或其任何部件(如果单独实现的话)的温度、施加至ulome 220的各个模块和部件的电压以及可能与网络连接的om的选择相关的其他物理参数的参数。外部监测234可以监测与ulome 220无关的条件,例如各个ss和/或天线正在经受的干扰量。由内部监测232和外部监测234收集的信息可以被提供至其中可以做出关于om的决策的传输调节器(governor)功能(t-gov)240。可以由t-gov 240执行的其他任务包括:通知lmac 250关于改变装置200的om的决定,以及检测另一(发起)装置的om的改变,以及通知lmac 250关于由另一装置发起的om的改变,如下面关于图3和图4更详细地描述的。umac 230还可以包括txd模块236,该txd模块236可以基于数据分组207的元数据205生成用于数据分组的传输描述符。传输描述符被示意性地描绘为包括在帧253中的黑色矩形。术语“帧”应当被理解为由mac层准备的用于由物理层(例如,phy 270)进一步处理和在无线网络上经由无线电传输的任何数据块。数据帧(例如,数据帧253中的一个)可以包括数据分组(例如,数据分组207中的一个)、主机装置202和/或ulome 220的ip地址和mac地址、各种报头、传输描述符和可以在数据分组的处理、传输、接收中使用的任何其他信息(例如,元数据)。在一些实现方式中,帧可以是数据帧、动作帧、管理帧等。
31.传输描述符可以用于向phy 270传送要如何发送相应帧253。例如,传输描述符可以指示在相应帧(例如,数据帧)的传输中要使用的特定ss(或要使用的多个ss)、传输的带宽、优先级级别、传输速率、在传输中要使用的放大器的功率以及可能需要的其他传输参数。因为传输描述符取决于由ulome 220使用的特定om,所以可以关于om的改变(由t-gov 240)更新txd模块236,以改变后续帧253的传输描述符。umac 230还可以包括帧解析器模块242,以通过分析(解析)从这样的装置接收的rx帧263来检测由其他装置使用的om的改变。
32.lmac 250可以包括传输/反射(tx/rx)执行器(tract)255和接收调节器功能(r-gov)260。由tract 255执行的操作可以包括:将om改变指示符插入tx帧253中以向其他装置传送ulome 220的om的改变,以及在检测到其他装置已经实现(例如,发起或同意)om改变与t-gov 240开始使用新的om格式为后续tx帧生成传输描述符的时间之间的持续时间内修改
tx(输出)帧253的传输描述符。可以基于对从另一个装置接收的rx(输入)帧263的分析来由r-gov 260执行对另一个装置已经实现om改变的检测。tx帧253和rx帧263可以分别保持(在传输之前和接收之后)在tx寄存器252和接收寄存器262中或者一些其他存储器装置中。tx寄存器252和rx寄存器262可以是fifo(先进先出)存储器装置。lmac 250还可以包括phy编程模块254,以使用tx帧253的传输描述符对phy 270进行编程。lmac 250还可以包括位替换引擎(bse)256,以根据来自tract 255的指令实现om改变指示符的插入,该插入可以包括修改相应tx帧253的报头中的适当字段。
33.umac 230和lmac 250的各个块可以在软件和/或硬件中实现。在一些实现方式中,umac 230可以在嵌入式处理器(例如,230可以在嵌入式处理器(例如,-r4处理器)上实现,其中umac 230的t-gov 240和其他模块在由嵌入式处理器执行的软件或固件中实现。lmac 250可以在精密微控制器中实现,该精密微控制器控制将mac协议数据单元(该mac协议数据单元可以包括tx帧253和rx帧263)发送至phy 270和从phy 270接收mac协议数据单元的定时。tract 255和r-gov 260可以在由精密微控制器执行的软件或固件中实现。至少在一些实现方式中,bse 256可以在硬件中实现。同样地,umac 230和lmac 250的部件中的一些(包括t-gov 240、r-gov 260、tract 255)可以在专用硬件中实现。
34.phy 270可以是802.11ax物理层或实现支持数据帧内的om改变指示的传输的任何其他无线标准的物理层。phy 270可以能够接收无线电信号并且将所接收的信号转换为然后可以由mac层处理的帧。phy 270还可以能够将从mac层接收的帧转换为无线电信号并且使用无线电波发送无线电信号。phy 270可以包括中频放大器、模数转换器、傅立叶逆变换模块、解析模块、交织器、错误校正模块、扰频器、phy-mac填充层和其他部件(未明确示出)。在一些实现方式中,所有phy 270部件可以集成至同一芯片中。在一些实现方式中,phy 270可以与umac 230和lmac 250集成在同一芯片上。在其他实现方式中,一些部件(例如,模数转换器和/或中频放大器)可以由phy 270外面的单独电路执行。phy 270可以具有传输处理部件(tx处理)272和接收处理部件(rx处理)276。在一些实现方式中,可以共享tx处理272和rx处理276部件中的一些。tx处理272和rx处理276可以包括将phy 270与各种天线(例如,一个或更多个tx天线274和一个或更多个rx天线278)接合的各种前端模块。在一些实现方式中,天线中的一些可以既作为tx天线又作为rx天线来操作。
35.在一些实现方式中,ulome 220还可以包括一个或更多个中央处理单元(cpu)和存储器装置(未示出)。ulome 220还可以包括输入输出控制器,以实现与外部装置和结构、电源管理单元和其他部件的通信。在一个实现方式中,ulome 220部件的交互可以如下发生。cpu可以在与存储器装置通信中执行逻辑链路控制(llc),从主机装置202接收数据,准备数据单元(例如,mac服务数据单元(msdu)),并且将该数据单元提供至mac层。在将协议数据单元发送至phy 270以用于数模处理、中频放大和滤波之前,mac层可以添加附加字节(例如,报头字节和/或尾部字节)以形成适当的mac协议数据单元(mpdu),例如帧。然后可以将由phy 270输出的模拟信号提供至无线电前端电路,以用于射频处理和通过天线274中的一个或更多个天线的传输。在通过天线278接收输入的射频信号时,可以发生相反的处理。
36.ul可以支持各种类型的无线网络,例如wlan或wwan(例如,网络)、pan(例如,个域网络)等。在一些实现方式中,单个ulome 220可以支持两个或更多个ap,例
如,在不同频带(例如,2.4ghz频带和5ghz频带)处操作并且具有用于每个频带的专用umac 230、lmac 250和phy 270的ap。在一些实现方式中,umac 230、lmac 250和phy 270模块和部件中的一些可以在不同ap之间共享。
37.图3是示出根据本公开内容的一些实现方式的用于使用超低延迟网络控制器的无线网络中的快速且高效的操作模式改变的示例操作300的框图。图3中所示的是由第一(发起)装置和由第二(响应)装置201执行的操作,第一(发起)装置可以是装置200,第二(响应)装置201可以具有与装置200类似的架构。两个装置都可以包括ulome控制器,例如第一装置200的ulome 220和第二装置201的ulome 320。具有相同(或类似)功能的两个装置的部件和模块可以使用第一位数不同的数字来列举。例如,第一装置的部件2xy(例如,tract 255)可以具有与第二装置的部件3xy(例如,tract 355)相同(或类似)的功能。利用奇数编号的框(框301至框349)指示om改变处理的各种操作,其中箭头指示与相应操作相关联的指令流和/或数据流的方向。框中的数字仅出于标识的目的,而不应被理解为指示特定的操作顺序。例如,可以同时执行由不同数字标识的操作。由较大数字标识的操作可以比由较小数字标识的操作更早执行,反之亦然。为了简洁和简明以及为了方便读者,以上参照图2示出和描述的部件应当被理解为即使没有明确描绘也仍然存在于第一装置200和第二装置201中。
38.由第一装置200的主机装置202执行的应用可以生成(框301)包括来自tx数据206的数据分组207的msdu流。每个数据分组可以包括描述数据分组207的类型和优先级的元数据。元数据可以由主机装置202或由第一装置200的osi网络层(未示出)生成。可以由txd模块236接收包含数据分组207的msdu,以基于元数据生成用于数据分组的传输描述符(txd)。可以由txd模块236将txd预先添加至每个相应的msdu中。可以添加各种其他信息以形成tx帧(或其他mpdu),例如tx帧253。可以将添加有传输描述符的tx帧253放置入由tx fifo寄存器252保持的传输队列中,以等待由phy编程254进行的处理并传输至phy 270。同时,tract 255可以获得对tx帧的访问(框303)。如果ulome 220不发起对当前om的改变,则t-gov 240可以不针对队列中的tx帧采取任何动作。然而,如果正在监测ulome 220的内在条件和外在条件的t-gov 240确定要改变om,则t-gov 240可以将开始om改变处理传送至tract 255(框305)。与其中tract 255将tx帧不改变地传递至tx处理272(框307)的正常操作不同,在om改变处理开始之后,tract 255可以开始将om指示符改变插入在传输队列中等待的tx帧的报头中,例如,从尚未中继至phy 270的第一tx帧开始。例如,可以将om改变指示符插入传输队列中的hew tx数据帧(或管理帧、动作帧或任何其他tx帧)的mac报头的htc字段(或一些其他预定字段)中。tract 255可以向位替换引擎256输出指令(框309),以将om改变指示符插入至mac报头的相应字段(如通过利用网纹报头装配方框256中的帧而示意性地描绘的)。bse 256可以向tx处理272提供插入有om改变指示符的数据分组(框311)以用于发送至第二装置。om改变指示符可以包括新的om的描述(例如,ss的数量、带宽等),以向第二装置201的ulome 320提供用于实现om改变所必需的信息。
39.在tx fifo 252中的传输队列中当前不包含tx帧253的情况下,tract 255可以生成空数据帧(没有实际数据有效载荷),例如,具有插入mac报头中(例如,插入mac报头的htc字段中)的om改变指示符的服务质量(qos)数据帧(或任何其他适当的帧)。
40.携带具有om改变指示符的tx帧的无线电信号可以由第一装置200的tx天线274输出并且由第二装置201的rx天线378接收(框313)。第二装置201的rx处理376可以将接收到
350内执行的由r-gov 360对从第一装置200接收的rx数据帧的检查(框317)之外,umac 330的帧解析器342也可以检查从第一装置200接收的rx数据帧(框319)。使用帧解析器342检测到具有om确认的ack帧的存在(框345),t-gov 240可以开始向添加在tx帧的传输队列后面的新的分组提供新的om下的传输描述符(框347)。t-gov 340还可以例如基于提供有新的om传输描述符的第一个tx数据分组的标识符来通知tract 355(框349)何时停止将描述符从旧的om重新编程为新的om。可替选地,为了确定何时停止重新编程,tract 355可以继续检查队列中的帧的传输描述符,直到检测到具有以新的om编程的传输描述符的第一个帧。在一些实现方式中,帧解析器342的功能可以与r-gov 360的功能组合,其中经组合的r-gov 360通知t-gov 340(框345)和tract 355(框321)两者第一装置200已经发起om改变。
46.图4是示出根据本公开内容的一些实现方式的用于包括传统装置的无线网络中的快速且高效的操作模式改变的示例操作400的框图。图4中所示的是由传统(发起)装置401和由第二(响应)装置201执行的操作。传统装置401可以不具有ulome控制器,而第二装置类似于图3中的第二装置201并且可以包括ulome 320。利用小的奇数编号的框(框403至框431)来指示om改变处理的各种操作,其中箭头指示与相应操作相关联的指令流和/或数据流的方向。框中的数字仅出于识别目的,并且不应被理解为指示特定的操作顺序。例如,可以同时执行由不同数字标识的操作。由较大数字标识的操作可以比由较小数字标识的操作更早执行,反之亦然。为了简洁和简明以及为了方便读者,以上参照图2示出和/或描述的部件即使没有明确描绘,也应当理解为仍然存在于第二装置201中。类似地,传统装置401可以包括未在图4中明确示出的附加部件,例如cpu、存储器装置、电源管理单元、输入输出控制器等。
47.由传统装置401的主机装置402执行的应用可以根据tx数据406生成(框403)tx数据分组的流。每个数据分组可以包括描述数据分组的类型和优先级的元数据。元数据可以由主机装置402、osi网络层(未示出)、传统芯片420的cpu(未示出)生成。可以由txd模块436接收包含分组的msdu,以基于元数据生成用于tx数据分组的传输描述符。可以由txd模块436将txd预先添加至每个相应的msdu中。可以添加各种其他信息以形成tx帧(或其他mpdu)。可以将添加有传输描述符的tx帧放置入由tx fifo寄存器保持的传输队列中,以等待由phy编程进行的处理并传输至phy 470。传统控制模块440可以监测传统芯片420的内在条件和外在条件。控制模块440可以确定要改变传统芯片420的om。控制模块440可以通过向txd模块436或者可替选地向由传统芯片420的cpu执行的一些其他软件提供om改变通知来开始om改变处理(框405)。mac 430可以生成动作帧(框407)以向第二装置201传送对om改变的请求。动作帧可以被放置在tx帧的当前队列的后面并且可以包括新的om的描述(例如,ss的数量、带宽等),以向第二装置201提供用于实现om改变所必需的信息。
48.动作帧可以由传统装置401的tx处理472处理并且经由tx天线474被发送至第二装置201(框409)。可以由第二装置201的rx天线378接收动作帧(框409)。第二装置201的rx处理376可以将接收到的数据分组提供至主机装置302作为rx数据208的一部分(框411)。作为框411的一部分,phy 270可以将接收到的信号转换为然后可以由ulome 320的mac层处理的帧。在phy 370将接收到的数据分组提供至主机装置302的同时(或之前),r-gov 360可以检查rx帧的报头(框413)。一旦r-gov 360在rx帧中检测到动作帧的存在,r-gov 360就可以通知tract 355(框417)传统装置401已经发起om改变。
49.响应于被通知om改变,tract 355可以开始截取由txd 336输出的具有传输描述符的tx数据帧(框421)。tx帧可以由包含由主机装置302准备的tx数据分组(框419)以及具有由txd 336提供的传输描述符(框421)的msdu构建。更具体地,tract 355可以开始重新编程tx帧的传输描述符,并且提供具有重新编程的传输描述符的tx帧以用于phy编程(框423)。特别地,tract 355可以开始利用从第一装置401接收的信息(例如,从rx帧的mac报头的htc字段或从(传统)动作帧的om通知元素获得的新的om信息)覆盖传输描述符中的带宽和/或ss数量信息。重新编程可以由lmac 350的phy编程模块254(未示出)执行。因此,基于重新编程的传输描述符,由tx处理372处理和输出的tx数据帧可以使用新的om模式经由第二装置201的tx天线374进行发送并且由rx天线478接收(框425),并且由传统装置401的rx处理476处理。
50.除了在lmac 350内执行的由r-gov 360对从传统装置401接收的rx数据帧的检查(框413)之外,还可以将rx数据帧发送至umac 230以进行其他处理。例如,umac 330的帧解析器342也可以检查从传统装置401接收的rx帧(框415)。使用帧解析器342检测到具有om改变确认的ack帧的存在(框427),t-gov 340可以指示txd 336开始向添加在传输队列的队列后面的新的帧提供新的om下的传输描述符(框429)。t-gov 340还可以例如基于配备有新的om传输描述符的第一个tx数据帧的标识符来通知tract 355(框431)何时停止将描述符从旧的om重新编程为新的om。可替选地,为了确定何时停止重新编程,tract 355可以继续检查队列中的帧的传输描述符,直到检测到具有以新的om编程的传输描述符的第一个帧。
51.图5是根据本公开内容的一些实现方式的由响应装置执行的无线网络中的快速且高效的操作模式改变的示例方法500的流程图。方法500可以由图2的ulome 220或图3和图4的ulome 320的处理逻辑执行。执行方法500的处理逻辑可以包括硬件(例如,电路、专用逻辑、可编程逻辑、微码等)、软件(其可以执行t-gov 240和t-gov 340、r-gov 260和r-gov 360、tract 255和tract 355的操作)、固件或其组合。在某些实现方式中,方法500可以由单个处理线程执行。可替选地,方法500可以由两个或更多个处理线程执行,每个线程执行该方法的一个或更多个单独的功能、例程、子例程或操作。在说明性示例中,实现方法500的处理线程可以被同步(例如,使用信号量、临界区和/或其他线程同步机制来同步)。可替选地,实现方法500的处理线程可以相对于彼此异步执行。与图5中所示的顺序相比,可以以不同的顺序执行方法500的各种操作。方法的一些操作可以与其他操作同时执行。一些操作可以是可选的。
52.可以执行方法500以实现第一(发起)通信装置(cd)与第二(响应)cd之间的无线连接的操作模式改变。在一个实现方式中,方法500可以由第二cd的处理逻辑执行。在操作510处,执行方法500的处理逻辑可以检测第一cd已经请求从第一操作模式到第二操作模式的操作模式改变的指示。例如,第二cd的r-gov可以检测从第一cd接收的帧的mac报头中的操作模式指示。如果第一cd是ieee 802.11ax装置,则操作模式指示可以位于帧(例如,从第一cd接收的qos数据帧)的mac报头的高吞吐量控制字段中。可替选地,如果第一cd是ieee 802.11ac装置,则操作模式指示可以是从第一cd接收的动作帧中的操作模式通知(omn)元素。利用操作模式指示传送的操作模式改变可以包括无线连接的空间流的数量或无线连接的带宽的改变。
53.在操作520处,方法500可以继续利用处理逻辑修改与第二cd的传输队列中的一个
或更多个帧相关联的传输信息(ti)。传输队列中的一个或更多个帧先前可能已经利用第一模式传输信息进行编程。ti可以包括可以由第二cd的物理层使用以配置相应帧到第一cd的传输的表示。在一个实现方式中,ti可以是一个或更多个帧内的传输描述符(txd)。在另一实现方式中,ti可以是单独的源,例如高速缓存(寄存器或任何其他存储器装置)、将一个或更多个帧映射至由物理层使用以配置相应帧的传输的表示的表(例如,映射表、查找表等)。高速缓存和/或表可以被周期性地更新以识别队列中的哪些帧将使用哪些特定操作模式发送。在一些实现方式中,传输信息可以不是到物理层的代码或直接指令,而可以是可以由lmac 250和/或phy编程254使用来生成到物理层的代码或指令以配置相应帧的传输的中间表示。第一模式传输信息可以包括用于以第一操作模式(例如,具有第一数量的空间流和第一带宽)对传输进行编程的表示。传输信息的修改可以包括将传输信息改变或重新编程为第二模式传输信息(例如,具有第二数量的空间流和第二带宽)。
54.如利用虚线框所指示的操作530至操作560可以是可选的。在操作530处,响应于检测到第二cd已经请求操作模式改变的指示,方法500可以继续利用处理逻辑对具有第二模式传输信息的附加的多个数据帧进行编程。附加数据帧可以包括在已经检测到操作模式改变的请求之后由mac层准备的任何数据帧、动作帧、管理帧等。在操作540处,可以将多个经编程的附加数据帧放置入传输队列中。因此,传输队列可以包括与第一模式传输信息相关联的帧(更旧的帧)和与第二模式传输信息相关联的帧(更新的帧)。在被中继至phy层之前,例如通过tract 255将与传输信息相关联的更旧的帧修改为第二操作模式。
55.在操作550处,处理逻辑可以识别传输队列中先前已经与第一模式传输信息关联编程的最后一个帧,并且在操作560处,在已经将所识别的最后一个帧的传输信息修改为第二模式传输信息之后,停止修改传输队列中的其他(更新的)帧的传输信息。
56.图6是根据本公开内容的一些实现方式的由发起装置执行的无线网络中的快速且高效的操作模式改变的示例方法600的流程图。方法600可以由图2和图3的ulome 220的处理逻辑执行。执行方法600的处理逻辑可以包括硬件(例如,电路、专用逻辑、可编程逻辑、微代码等)、软件(其可以执行t-gov 240、r-gov 260、tract 255的操作)、固件或其组合。在某些实现方式中,方法600可以由单个处理线程执行。可替选地,方法600可以由两个或更多个处理线程执行,每个线程执行该方法的一个或更多个单独的功能、例程、子例程或操作。在说明性示例中,实现方法600的处理线程可以被同步(例如,使用信号量、临界区和/或其他线程同步机制)。可替选地,实现方法600的处理线程可以相对于彼此异步执行。与图6中所示的顺序相比,可以以不同的顺序执行方法600的各种操作。该方法的一些操作可以与其他操作同时执行。一些操作可以是可选的。
57.可以执行方法600以实现发起通信装置(cd)与响应cd之间的无线连接的操作模式改变。在一个实现方式中,方法600可以由第一cd的处理逻辑执行。在一些实现方式中,方法600可以在方法500之后执行,其中方法500的第二(响应)cd是方法600的发起cd并且方法500的第一(发起)cd是方法600的响应cd。例如,与第二cd(例如,sta 110)通信的第一cd(例如,ap 102)可以发起从第一om到第二om的om升级。随后,在稍后的时间,经受了有害干扰之后,sta110可以发起从第二om到第三om的om降级。
58.在操作610处,执行方法600的处理装置可以确定当前操作模式将被改变为新的操作模式。例如,t-gov 240可以确定ulome芯片的温度已经增加(或减少)或者可靠空间流的
数量已经由于来自其他流或装置的减少(或增加)的干扰而改变。
59.在操作620处,方法600可以继续利用lmac 250的tract 255将指向新的操作模式的指示插入发起cd的当前传输队列中的一个或更多个帧的mac报头的操作模式指示字段中。在操作630处,物理层(例如,phy 270)可以配置传输队列中具有指向新的操作模式的指示的帧中的至少一个帧到响应cd的传输。在操作640处,执行方法600的处理装置可以检测响应cd已经转变至新的操作模式。例如,lmac 250的r-gov 260可以确定响应cd已经开始使用新的操作模式发送帧。
60.在操作650处,方法600可以继续将当前在发起装置的传输队列中的帧(例如,先前利用旧的操作模式传输信息编程的帧)的传输信息重新编程为新的操作模式。在操作660处,处理装置还可以将多个附加帧的传输信息编程为新的操作模式,并且在操作670处,可以将多个附加帧放置入发起cd的传输队列中。
61.图7示出了通过将传统无线装置中的延迟(上面的图)与具有ulome功能的无线装置中的延迟(下面的图)进行比较而公开的实施方式的优点。参照上面的图,在可以向响应装置发送具有om通知元素(omn)的动作帧(af)之前,发起传统装置可能必须发送tx fifo寄存器的全部当前内容。tx fifo内容可以包括两个(在一个说明性示例中)聚合的mpdu(ampdu),每个具有64个mpdu。所示的是处理的时序,其中上面的行指示由发起装置发送的数据,并且下面的行指示由响应装置发送的数据。例如,在发送具有omn(灰色框)的动作帧之前,除了一些最短帧间间隔(sifs)、分布式协调功能帧间间隔(difs)和随机退避之外,发起装置还可以针对每个ampdu(例如,ampdu-1和ampdu-2)发送请求发送(rts)信号,并且从响应装置接收清除发送(cts)信号和块确认(ba)信号。在一个示例中,在2个空间流、80mhz带宽和vht调制和编码索引7的情况下,发送omn/af之前的时间可能超过3500us(加上两个退避间隔的持续时间)。相比之下,下面的行示出了在具有ulome控制器的无线装置中提供om通知的提供的下面的行在字段(例如,htc字段)可以与第一ampdu的第一个帧(其可以是数据帧或任何其他帧)一起被发送之前包括单组rts和cts(其间具有sifs)。因此,延迟可以小于80us。
62.应当理解,以上描述旨在是说明性的,而不是限制性的。在阅读和理解了以上描述之后,许多其他实现方式示例对于本领域技术人员将是明显的。虽然本公开内容描述了具体示例,但是应当认识到,本公开内容的系统和方法不限于本文描述的示例,而是可以在所附权利要求的范围内通过修改来实施。因此,说明书和附图被认为是说明性意义的而非限制性意义的。因此,本公开内容的范围应当参照所附权利要求以及这些权利要求所赋予的等同物的全部范围来确定。
63.上面所阐述的方法、硬件、软件、固件或代码的实现方式可以经由存储在机器可访问、机器可读、计算机可访问或计算机可读介质上的可由处理元件执行的指令或代码来实现。“存储器”包括以由机器(例如,计算机或电子系统)可读的形式提供(即,存储和/或发送)信息的任何机制。例如,“存储器”包括:随机存取存储器(ram),例如静态ram(sram)或动态ram(dram);rom;磁或光存储介质;闪存装置;电存储装置;光存储装置;声学存储装置;以及适合于以由机器(例如,计算机)可读的形式存储或发送电子指令或信息的任何类型的有形机器可读介质。
64.在该整个说明书中对“一个实现方式”或“实现方式”的引用意味着关于该实现方
式描述的特定特征、结构或特性被包括在本公开内容的至少一个实现方式中。因此,短语“在一个实现方式中”或“在实现方式中”在该整个说明书的各处中的出现不一定都指代同一实现方式。此外,特定特征、结构或特性可以在一个或更多个实现方式中以任何合适的方式组合。
65.在前述说明书中,已经参照具体示例性实现方式给出了详细描述。然而,将明显的是,在不脱离如所附权利要求中阐述的本公开内容的更广泛的精神和范围的情况下,可以对其进行各种修改和改变。因此,说明书和附图应当被视为是说明性意义的而非限制性意义的。此外,实现方式、实现和/或其他示例性语言的前述使用不一定指相同的实现方式或相同的示例,而是可以指不同的和有区别的实现方式以及可能相同的实现方式。
66.本文使用词语“示例”或“示例性”以表示用作示例、实例或说明。本文中描述为“示例”或“示例性”的任何方面或设计不一定被解释为比其他方面或设计优选或有利。相反,词语“示例”或“示例性”的使用旨在以具体方式呈现概念。如本技术中所使用的,术语“或”旨在表示包含性的“或”而非排他性的“或”。即,除非另有说明或从上下文清楚的,否则“x包括a或b”旨在表示任何自然包含排列。即,如果x包括a;x包括b;或x包括a和b两者,则在任何前述情况下都满足“x包括a或b”。另外,除非另有说明或从上下文清楚地指定为单数形式,否则如在本技术和所附权利要求中使用的冠词“一”和“一个”通常应被解释为表示“一个或更多个”。此外,全文中术语“实现方式”或“一个实现方式”或“实现”或“一个实现”的使用不旨在表示相同的实现方式或实现,除非如此描述。此外,如本文所使用的术语“第一”、“第二”、“第三”、“第四”等意在作为在不同元素中进行区分的标记,并且根据其数字标号可能不一定具有顺序含义。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1