用于波束成形的系统和方法
1.相关申请的交叉引用
2.本技术要求2019年3月8日提交的美国申请第62/815,839号和2020年1月24日提交的美国申请第16/752,079号的优先权,出于所有目的,其内容通过引用以其整体结合于此。
3.公开领域
4.本公开总体上涉及用于渲染人工现实的通信,包括但不限于减少用于人工现实的无线通信中的信道降级(channel degradation)。
5.背景
6.诸如虚拟现实(vr)、增强现实(ar)或混合现实(mr)的人工现实为用户提供沉浸式体验。在一个示例中,佩戴头部可佩戴显示器(hwd,head wearable display)的用户可以转动用户的头部,并且对应于hwd的位置和用户的凝视方向的虚拟对象的图像可以显示在hwd上,以允许用户感觉好像用户正在人工现实的空间(例如,vr空间、ar空间或mr空间)内移动。
7.由于头部运动(这在人工现实体验中是典型的),控制台和hwd可以利用控制台和hwd上的活动的(active)(例如,服务的(serving))射频集成电路(rfic)之间的波束成形(beamforming)来保持控制台和hwd之间令人满意的链路性能。波束成形可以通过使用段级扫描(sls,segment level sweep)、波束优化(brp,beam refinement)和/或跟踪(bt)协议来执行。然而,在每个系统间隔(例如,用于波束成形和数据突发(burst)的活动时段,随后是相对较大的睡眠持续时间)的开始执行波束成形可能成本较高。此外,在一些实施方式中,hwd和/或控制台可以包括多个rfic,其中一些可以是活动的,一些可以是空闲的(例如,不活动的(inactive)或非服务的(non
‑
serving))。
8.概述
9.如下文将更详细描述的,本发明涉及根据所附权利要求的方法、系统和非暂时性计算机可读介质。
10.本文公开的各种实施例涉及一种方法,该方法包括:
11.由包括头部可佩戴显示器(hwd)或控制台中的至少一个的设备在活动的hwd射频集成电路(rfic)和活动的控制台rfic之间建立第一连接;
12.由设备将第一连接的调制和编码方案(mcs)与mcs阈值进行比较;
13.由设备响应于测量的mcs不满足mcs阈值,针对空闲的hwd rfic或空闲的控制台rfic中的至少一个的第二连接执行一个或更多个mcs测量,同时保持第一连接;
14.由设备将第二连接的一个或更多个mcs测量值与mcs阈值进行比较;和
15.当一个或更多个mcs测量值中的至少一个超过mcs阈值或第一连接的mcs中的至少一个时,由设备切换到第二连接。
16.根据本发明的实施例,该方法还可以包括,当第二连接的至少一个mcs测量值超过高于mcs阈值或第一连接的mcs中的至少一个的滞后分量(hysteresis component)时,由设备切换到第二连接。
17.根据根据本发明的方法的另一实施例,第二连接可以为以下情况之一:
18.在活动的hwd rfic和空闲的控制台rfic之间;
19.在空闲的hwd rfic和活动的控制台rfic之间;或者
20.在空闲的hwd rfic和空闲的控制台rfic之间。
21.根据根据本发明的方法的又一实施例,可以执行一个或更多个mcs测量,直到第一连接的mcs超过高于mcs阈值的滞后分量,或者直到设备切换到第二连接。
22.根据本发明方法的另一个实施例,该方法还可以包括当一个或更多个mcs测量值低于滞后分量时,由设备保持第一连接。
23.根据根据本发明的方法的另一个实施例,一个或更多个mcs测量的后续测量之间的持续时间可以增加。
24.根据根据本发明的方法的又一实施例,第一连接可以使用设备的第一波束,该方法还可以包括由设备根据第一连接的mcs对第一波束的一个或更多个相邻波束执行波束跟踪。
25.根据根据本发明的方法的另一个实施例,该方法可以进一步包括,响应于对应于一个或更多个相邻波束中的相邻波束的测量的mcs大于第一连接的mcs,由设备从第一波束切换到该相邻波束。
26.在根据本发明的方法的又一实施例中,该方法还可以包括,响应于第一连接的第一mcs,对一个或更多个相邻波束中的第一数量的相邻波束执行波束跟踪,以及响应于第一连接的第二mcs,对一个或更多个相邻波束中的第二数量的相邻波束执行波束跟踪。在权利要求的方法中,第一mcs可以大于第二mcs,并且第一数量可以小于第二数量。
27.本文公开的各种实施例涉及一种系统,该系统包括设备,该设备包括头部可佩戴显示器(hwd)或控制台中的至少一个,该设备可以被配置为:
28.在活动的hwd射频集成电路(rfic)和活动的控制台rfic之间建立第一连接;
29.将第一连接的调制和编码方案(mcs)与mcs阈值进行比较;
30.响应于测量的mcs不满足mcs阈值,针对空闲的hwd rfic或空闲的控制台rfic中的至少一个的第二连接执行一个或更多个mcs测量,同时保持第一连接;
31.将第二连接的一个或更多个mcs测量值与mcs阈值进行比较;和
32.当一个或更多个mcs测量值中的至少一个超过mcs阈值或第一连接的mcs中的至少一个时,切换到第二连接。
33.在根据本发明的系统的实施例中,该设备还可以被配置为当第二连接的至少一个mcs测量值超过高于mcs阈值或第一连接的mcs中的至少一个的滞后分量时,切换到第二连接。
34.根据根据本发明的系统的另一实施例,第二连接可以为以下情况之一:
35.在活动的hwd rfic和空闲的控制台rfic之间;
36.在空闲的hwd rfic和活动的控制台rfic之间;或者
37.在空闲的hwd rfic和空闲的控制台rfic之间。
38.根据根据本发明的系统的又一实施例,可以执行一个或更多个mcs测量,直到第一连接的mcs超过高于mcs阈值的滞后分量,或者直到设备切换到第二连接。在该系统中,该设备还可以被配置为当一个或更多个mcs测量值低于滞后分量时保持第一连接。
39.在根据本发明的系统的另一实施例中,一个或更多个mcs测量的后续测量之间的
持续时间可以增加。
40.在根据本发明的系统的另一个实施例中,第一连接可以使用设备的第一波束,设备还可以被配置为根据第一连接的mcs,对第一波束的一个或更多个相邻波束执行波束跟踪。在该系统中,该设备还可以被配置为响应于对应于一个或更多个相邻波束中的相邻波束的测量的mcs大于第一连接的mcs,从第一波束切换到该相邻波束。
41.在根据本发明的系统的又一实施例中,第一连接可以使用设备的第一波束,设备还可以被配置为根据第一连接的mcs,对第一波束的一个或更多个相邻波束执行波束跟踪,并且该设备可以被配置为响应于第一连接的第一mcs对一个或更多个相邻波束中的第一数量的相邻波束执行波束跟踪,并且响应于第一连接的第二mcs对一个或更多个相邻波束中的第二数量的相邻波束执行波束跟踪,并且其中第一mcs大于第二mcs,并且第一数量小于第二数量。
42.本文公开的各种实施例涉及存储程序指令的非暂时性计算机可读介质,所述程序指令用于使一个或更多个处理器执行上述方法。根据本发明的实施例,这些实施例涉及存储程序指令的非暂时性计算机可读介质,该程序指令用于使一个或更多个处理器:
43.在包括头部可佩戴显示器(hwd)或控制台中的至少一个的设备处,在活动的hwd射频集成电路(rfic)和活动的控制台rfic之间建立第一连接;
44.在设备处,将第一连接的调制和编码方案(mcs)与mcs阈值进行比较;
45.响应于测量的mcs不满足mcs阈值,在设备处对空闲的hwd rfic或空闲的控制台rfic中的至少一个的第二连接执行一个或更多个mcs测量,同时保持第一连接;
46.在设备处,将第二连接的一个或更多个mcs测量值与mcs阈值进行比较;和
47.当一个或更多个mcs测量值中的至少一个超过mcs阈值或第一连接的mcs中的至少一个时,在设备处切换到第二连接。
48.附图简述
49.附图不意在按比例绘制。不同附图中相同的附图标记和名称表示相同的元件。为了清楚起见,并非每个组件都可以在每个图中进行标记。
50.图1是根据本公开的示例实现的包括人工现实系统的系统环境的示意图。
51.图2是根据本公开的示例实现的头戴式显示器的示意图。
52.图3a至图3c是根据本公开的示例实现的图1的系统环境的示意图,包括头戴式显示器和控制台之间的波束。
53.图4是根据本公开的示例实现的头戴式显示器和控制台之间的通信的示例时序图。
54.图5a至图5c是示出根据本公开的示例实现的在头戴式显示器和控制台的活动和空闲射频集成电路之间的变化的示例时序图。
55.图6示出了根据本公开的示例实现的波束成形的示例过程。
56.图7是根据本公开的示例实现的计算环境的框图。
57.详细描述
58.在转向详细示出某些实施例的附图之前,应当理解,本公开不限于说明书中阐述的或附图中示出的细节或方法。还应该理解,本文使用的术语仅仅是为了描述的目的,不应该被认为是限制性的。
59.为了阅读以下各种实施例的描述,说明书各部分及其各自内容的以下描述可能是有帮助的:
60.部分a公开了一种人工现实系统,其可用于实践本文所述的实施例;
61.部分b公开了用于波束成形的系统和方法;和
62.部分c公开了一种可用于实现本公开各方面的计算系统。
63.a.人工现实系统
64.本文公开了用于促进人工现实(例如,增强现实(ar)、虚拟现实(vr)或混合现实(mr))内容分发的系统和方法。图1是示例性人工现实系统环境100的框图。在一些实施例中,人工现实系统环境100包括由用户佩戴的头部可佩戴显示器(hwd)150,以及向hwd 150提供人工现实内容的控制台110。hwd 150可以检测hwd 150的位置和/或取向,并将检测到的hwd 150的位置和/或取向提供给控制台110。控制台110可以根据检测到的hwd 150的位置和/或取向以及用于人工现实的用户输入来生成指示人工现实的图像的图像数据,并且将图像数据传输到hwd 150用于呈现。
65.在一些实施例中,人工现实系统环境100包括比图1所示更多、更少或不同的组件。在一些实施例中,人工现实系统环境100的一个或更多个组件的功能可以以不同于这里描述的方式分布在组件中。例如,控制台110的一些功能可以由hwd 150执行。例如,hwd 150的一些功能可以由控制台110执行。在一些实施例中,控制台110被集成为hwd 150的一部分。
66.在一些实施例中,hwd 150是可由用户佩戴并可向用户呈现或提供人工现实体验的电子组件。hwd 150可以被称为、包括头戴式显示器(hmd,head mounted display)、头戴式设备(hmd,head mounted device)、头部可佩戴设备(hwd,head wearable device)、头部佩戴显示器(hwd,head worn display)或头部佩戴设备(hwd,head worn device),或者作为头戴式显示器(hmd)、头戴式设备(hmd)、头部可佩戴设备(hwd)、头部佩戴显示器(hwd)或头部佩戴设备(hwd)的一部分。hwd 150可以呈现一个或更多个图像、视频、音频或其某种组合,以向用户提供人工现实体验。在一些实施例中,经由外部设备(例如,扬声器和/或头戴式耳机)来呈现音频,该外部设备从hwd 150、控制台110或两者接收音频信息并基于该音频信息来呈现音频。在一些实施例中,hwd 150包括传感器155、眼睛跟踪器160、手跟踪器162、通信接口165、图像渲染器(render)170、电子显示器175、透镜180和补偿器(compensator)185。这些组件可以一起操作来检测hwd 150的位置和佩戴hwd 150的用户的凝视方向,并且在人工现实内呈现对应于检测到的hwd 150的位置和/或取向的视图的图像。在其他实施例中,hwd 150包括比图1所示更多、更少或不同的组件。
67.在一些实施例中,传感器155包括检测hwd 150的位置和取向的电子组件或电子组件和软件组件的组合。传感器155的示例可以包括:一个或更多个成像传感器、一个或更多个加速度计、一个或更多个陀螺仪、一个或更多个磁力计、或者检测运动和/或位置的另一种合适类型的传感器。例如,一个或更多个加速度计可以测量平移运动(例如,向前/向后、向上/向下、向左/向右),并且一个或更多个陀螺仪可以测量旋转运动(例如,俯仰、偏航、滚动)。在一些实施例中,传感器155检测平移运动和旋转运动,并确定hwd 150的取向和位置。在一个方面,传感器155可以检测相对于hwd 150的先前取向和位置的平移运动和旋转运动,并且通过对检测到的平移运动和/或旋转运动进行累积或积分来确定hwd 150的新取向和/或位置。例如,假设hwd 150朝向与参考方向成25度的方向,响应于检测到hwd 150已经
旋转20度,传感器155可以确定hwd 150现在面向或朝向与参考方向成45度的方向。作为另一个示例,假设hwd 150在第一方向上距离参考点两英尺,响应于检测到hwd 150已经在第二方向上移动了三英尺,传感器155可以确定hwd 150现在位于第一方向上的两英尺和第二方向上的三英尺的矢量相乘(vector multiplication)处。
68.在一些实施例中,眼睛跟踪器160包括确定hwd 150的用户的凝视方向的电子组件或电子组件和软件组件的组合。在一些实施例中,hwd 150、控制台110或它们的组合可以结合hwd 150的用户的凝视方向,以生成用于人工现实的图像数据。在一些实施例中,眼睛跟踪器160包括两个眼睛跟踪器,其中每个眼睛跟踪器160捕获相应眼睛的图像并确定眼睛的凝视方向。在一个示例中,眼睛跟踪器160根据捕获的眼睛图像来确定眼睛的角度旋转、眼睛的平移、眼睛扭转(torsion)的变化和/或眼睛形状的变化,并且根据确定的角度旋转、平移和眼睛扭转的变化来确定相对于hwd 150的相对凝视方向。在一种方法中,眼睛跟踪器160可以在眼睛的一部分上照射或投射预定的参考或结构化图案,并且捕获眼睛的图像以分析投射在眼睛的一部分上的图案,从而确定眼睛相对于hwd 150的相对凝视方向。在一些实施例中,眼睛跟踪器160结合hwd 150的取向和相对于hwd 150的相对凝视方向来确定用户的凝视方向。例如,假设hwd 150以与参考方向成30度的方向定向,并且hwd 150相对于hwd 150的相对凝视方向为
‑
10度(或350度),眼睛跟踪器160可以确定用户的凝视方向与参考方向成20度。在一些实施例中,hwd 150的用户可以(例如,通过用户设置)配置hwd 150来启用或禁用眼睛跟踪器160。在一些实施例中,hwd 150的用户被提示启用或禁用眼睛跟踪器160。
69.在一些实施例中,手跟踪器162包括跟踪用户的手的电子组件或电子组件和软件组件的组合。在一些实施例中,手跟踪器162包括或耦合到成像传感器(例如,照相机)和图像处理器,该图像处理器可以检测手的形状、位置和取向。手跟踪器162可以生成指示检测到的手的形状、位置和取向的手部跟踪测量结果。
70.在一些实施例中,通信接口165包括与控制台110通信的电子组件或电子组件和软件组件的组合。通信接口165可以通过通信链路与控制台110的通信接口115通信。通信链路可以是无线链路。无线链路的示例可以包括蜂窝通信链路、近场通信链路、wi
‑
fi、蓝牙、60ghz无线链路或任何通信无线通信链路。通过通信链路,通信接口165可以向控制台110发送指示以下项的数据:hwd 150的确定的位置和/或取向、用户的确定的凝视方向和/或手部跟踪测量结果。此外,通过通信链路,通信接口165可以从控制台110接收指示或对应于要渲染的图像的图像数据以及与该图像相关联的附加数据。
71.在一些实施例中,图像渲染器170包括例如根据人工现实的空间视图的变化生成一个或更多个图像用于显示的电子组件或电子组件和软件组件的组合。在一些实施例中,图像渲染器170被实现为处理器(或图形处理单元(gpu)),其执行指令以执行本文描述的各种功能。图像渲染器170可以通过通信接口165接收描述要渲染的人工现实图像的图像数据和与该图像相关联的附加数据,并通过电子显示器175渲染该图像。在一些实施例中,来自控制台110的图像数据可以被编码,并且图像渲染器170可以解码图像数据以渲染图像。在一些实施例中,图像渲染器170从控制台110以附加数据接收指示人工现实空间中的虚拟对象的对象信息和指示虚拟对象的深度(或距hwd 150的距离)的深度信息。在一个方面,根据人工现实的图像、对象信息、来自控制台110的深度信息和/或来自传感器155的更新的传感
器测量值,图像渲染器170可以执行着色(shade)、重投影和/或混合(blend)来更新人工现实的图像,以对应于hwd 150的更新的位置和/或取向。假设用户在初始传感器测量之后旋转了他的头部,图像渲染器170可以根据更新的传感器测量值来生成与人工现实内的更新的视图相对应的图像的一小部分(例如,10%),并且通过重投影将该部分附加到来自控制台110的图像数据中的图像,而不是响应于更新的传感器测量值来重新创建整个图像。图像渲染器170可以对附加边缘执行着色和/或混合。因此,在不根据更新的传感器测量值重新创建人工现实的图像的情况下,图像渲染器170可以生成人工现实的图像。在一些实施例中,图像渲染器170接收指示对应于用户的手的手模型的形状、位置和取向的手模型数据,并将手模型叠加(overlay)在人工现实的图像上。这种手模型可以呈现为视觉反馈,以允许用户在人工现实中提供各种交互。
72.在一些实施例中,电子显示器175是显示图像的电子组件。电子显示器175例如可以是液晶显示器或有机发光二极管显示器。电子显示器175可以是允许用户透视的透明显示器。在一些实施例中,当用户佩戴hwd 150时,电子显示器175位于用户眼睛附近(例如,小于3英寸)。在一个方面,电子显示器175根据由图像渲染器170生成的图像向用户的眼睛发射或投射光。
73.在一些实施例中,透镜180是改变从电子显示器175接收的光的机械组件。透镜180可以放大来自电子显示器175的光,并校正与光相关的光学误差。透镜180可以是菲涅尔透镜、凸透镜、凹透镜、滤光器或改变来自电子显示器175的光的任何合适的光学组件。通过透镜180,来自电子显示器175的光可以到达瞳孔,使得用户可以看到由电子显示器175显示的图像,尽管电子显示器175非常接近眼睛。
74.在一些实施例中,补偿器185包括执行补偿以补偿任何失真或像差的电子组件或电子组件和软件组件的组合。在一个方面,透镜180引入光学像差,例如色差、枕形失真、桶形失真等。补偿器185可以确定要应用于来自图像渲染器170的要渲染的图像的补偿(例如,预失真),以补偿由透镜180引起的失真,并将所确定的补偿应用于来自图像渲染器170的图像。补偿器185可以向电子显示器175提供预失真图像。
75.在一些实施例中,控制台110是提供要呈现给hwd 150的内容的电子组件或电子组件和软件组件的组合。在一个方面,控制台110包括通信接口115和内容提供器130。这些组件可以一起操作来确定对应于hwd 150的位置和hwd 150的用户的凝视方向的人工现实的视图(例如,用户的fov),并且可以生成指示对应于所确定的视图的人工现实的图像的图像数据。此外,这些组件可以一起操作来生成与图像相关联的附加数据。附加数据可以是与呈现或渲染除了人工现实图像之外的人工现实相关联的信息。附加数据的示例包括手模型数据、用于将hwd 150在物理空间中的位置和取向转换到虚拟空间中的映射信息(或即时定位与地图构建(slam)数据)、运动矢量信息、深度信息、边缘信息、对象信息等。控制台110可以向hwd 150提供图像数据和附加数据,用于呈现人工现实。在其他实施例中,控制台110包括比图1所示更多、更少或不同的组件。在一些实施例中,控制台110被集成为hwd 150的一部分。
76.在一些实施例中,通信接口115是与hwd 150通信的电子组件或电子组件和软件组件的组合。通信接口115可以是通信接口165的对应组件,以通过通信链路(例如,无线链路)与控制台110的通信接口115通信。通过通信链路,通信接口115可以从hwd 150接收数据,该
数据指示hwd 150的确定的位置和/或取向、用户的确定的凝视方向以及手部跟踪测量结果。此外,通过通信链路,通信接口115可以向hwd 150发送描述要渲染的图像的图像数据和与人工现实的图像相关联的附加数据。
77.内容提供器130是根据hwd 150的位置和/或取向生成要渲染的内容的组件。在一些实施例中,内容提供器130可以结合hwd 150的用户的凝视方向,以及基于手部跟踪测量结果的人工现实中的用户交互,以生成要渲染的内容。在一个方面,内容提供器130根据hwd 150的位置和/或取向来确定人工现实的视图。例如,内容提供器130将hwd 150在物理空间中的位置映射到人工现实空间中的位置,并且从人工现实空间中的映射位置确定沿着对应于映射取向的方向的人工现实空间的视图。内容提供器130可以生成描述人工现实空间的确定视图的图像的图像数据,并且通过通信接口115将图像数据发送到hwd 150。内容提供器130还可以根据手部跟踪测量结果生成对应于hwd 150的用户的手的手模型,并且生成指示手模型在人工现实空间中的形状、位置和取向的手模型数据。在一些实施例中,内容提供器130可以生成与图像相关的附加数据,包括运动矢量信息、深度信息、边缘信息、对象信息、手模型数据等,并且通过通信接口115将附加数据与图像数据一起发送到hwd 150。内容提供器130可以对描述图像的图像数据进行编码,并且可以将编码后的数据发送到hwd 150。在一些实施例中,内容提供器130周期性地(例如,每11ms)生成图像数据并将其提供给hwd 150。
78.图2是根据示例实施例的hwd 150的示意图。在一些实施例中,hwd 150包括前刚性主体205和带210。前刚性主体205包括电子显示器175(图2中未示出)、透镜180(图2中未示出)、传感器155、眼睛跟踪器160a、160b、通信接口165和图像渲染器170。在图2所示的实施例中,通信接口165、图像渲染器170和传感器155位于前刚性主体205内,并且可能对用户不可见。在其他实施例中,hwd 150具有与图2所示不同的配置。例如,通信接口165、图像渲染器170、眼睛跟踪器160a、160b和/或传感器155可以位于与图2所示不同的位置。在一些实施例中,hwd 150可以包括多个通信接口165。类似地,图1的控制台110可以包括多个通信接口115。如下文在部分b中更详细描述的,通信接口115、165可以被配置成选择性地执行波束成形,以优化控制台110和hwd 150之间的通信信道。类似地,控制台110和hwd 150可以在活动的和空闲的通信接口115、165之间动态地且智能地切换,以优化控制台110和hwd 150之间的通信信道。
79.b.用于波束成形的系统和方法
80.本文描述了用于波束成形的系统和方法。本文描述的系统和方法可以在包括部分a中描述的人工现实系统的至少一个组件、元件或方面的设备中实现。例如,本文描述的系统和方法可以在控制台110、hwd 150等中实现。在一些情况下,hwd 150和控制台110之间的传输处于周期性的系统间隔中,在该系统间隔期间,活动时段(用于波束成形和数据突发)之后是较大的睡眠持续时间。利用60ghz解决方案,波束成形可用于补偿路径损耗,以保持良好的链路性能。波束成形(bf)通过使用段级扫描(sls)、波束优化(brp)和/或跟踪(bt)协议来执行。由于在人工现实(例如,增强现实(ar)、虚拟现实(vr)或混合现实(mr))应用中预期头部运动频繁或连续,其中bf用于跟踪hwd 150和控制台110之间的最佳波束。然而,从功耗的角度来看,在每个系统间隔开始时运行bf可能成本很高。此外,对于hwd 150或控制台110上的多个射频集成电路(rfic),智能地且动态地选择一个rfic使其活动以节省功率可
能是有益的。
81.当多个rfic被包括在hwd 150和/或控制台110中时,rfic选择(例如,对于hwd 150和/或控制台110)可以在初始bf和关联过程中完成。此后,用于hwd 150的一个rfic和用于控制台110的一个rfic处于活动传输(服务)模式,并且可能希望通过将其他rfic尽可能长时间地置于睡眠模式来节省功率。由于人工现实应用中的移动性,当前服务的rfic可能并不总是比其他rfic具有更好的信道。然而,不必要地使空闲的rfic搜索更好的信道会增加功耗,并且例如当服务的rfic看到好的信道时可能不会产生太多增益。然而,延迟使得空闲的rfic搜索可能更好的信道可能导致当前信道中的用户体验下降和/或链路丢失。
82.本公开包括用于在服务的rfic和空闲的rfic之间切换的系统和方法的实施例,其可以在功耗和用户体验之间提供折衷,并且可以使用触发测量的标准和触发切换的标准。例如,如果当前信道条件(channel condition)不令人满意(例如,当前mcs小于mcs阈值),则例如可以在空闲的rfic上触发测量以执行周期性bf。在当前mcs高于阈值或发生rfic之间的切换时,可以停止周期性测量。并且如果空闲的rfic具有更好的性能(例如,比当前mcs更好的mcs,超过滞后裕量(hysteresis margin)),则可以触发切换。
83.在某些方面,因为信道在持续数十毫秒的睡眠期间会显著降级(degrade),所以本解决方案可以例如使用四波束跟踪和使用brp分组(packet)的初始握手。根据测量,统计性地确定信道变化最多为1db/500us,或大约每500us一个mcs级别变化。因此,基于信道条件(例如,mcs)和相应的传输时间,可以在传输期间估计mcs变化的数量或程度。因此,在一个实施例中,bf策略规定,对于给定的mcs,可以在数据传输期间的不同时间选择性地执行bt。例如,在一些实施例中,对于mcs 8 (例如,8或更高)的数据传输,可以不执行bt;对于mcs 4
‑
7,可以在数据传输的中间(例如在第三分组中)只执行一次bt;对于mcs 2
‑
3,可以在数据传输期间(例如在第二和第四分组中)执行两次bt;并且对于mcs 1,bt可以被执行5次(例如,可以针对每个分组执行bt)。
84.根据本文描述的实施例和方面,人工现实设备和相应的系统和方法可以在服务的和非服务的rfic之间动态切换,以在信道优化和降低功耗之间进行平衡。本文描述的系统和方法可以利用当前信道条件(例如mcs)来选择性地执行波束成形,以在信道优化和降低功耗之间进一步平衡。本文描述的系统和方法可以降低总功耗,同时仍然通过波束成形和rfic切换的动态执行来传递优化的信道条件。下面公开了各种其他益处和优点。
85.现在参考图3a
‑
图3c,示出了根据说明性实施例的用于波束成形的设备300。设备300可以包括头部可佩戴显示器(hwd)302和/或控制台304。hwd 302可以包括一个或更多个射频集成电路(rfic)306a、306b(也称为“hwd rfic”)。类似地,控制台304可以包括一个或更多个rfic 308a、308b(也称为“控制台rfic”)。如下文更详细描述的,设备300可以被配置为在活动的hwd rfic 306(例如,活动的hwd rfic)和活动的控制台rfic 308之间建立第一连接。设备300可以被配置为将第一连接的调制和编码方案(mcs)与mcs阈值进行比较。设备300可以被配置为当第一连接的mcs不满足mcs阈值时,在保持第一连接的同时,为空闲的rfic 306、308之一(例如空闲的rfic)的第二连接建立并执行一个或更多个mcs测量。设备300可以被配置为将第二连接的一个或更多个mcs测量值与mcs阈值进行比较。设备300可以被配置为当至少一个mcs测量值满足mcs阈值时切换到第二连接。
86.hwd 302在某些方面可以类似于图1和图2所示并在部分a中描述的hwd 150。类似
地,控制台304在某些方面可以类似于图1所示并在部分a中描述的控制台110。hwd rfic 306可以是通信接口165的组件或方面,并且控制台rfic 308可以是通信接口115的组件或方面。如下文更详细描述的,hwd rfic 306和控制台rfic 308可以被配置成在hwd 302和控制台304之间传输或交换数据(或促进数据的交换)。rfic 306、308可以是被设计或实现为在例如hwd 302和控制台304之间的方向上引导、发送或以其他方式传输数据的任何设备、组件或电路。
87.现在参考图4,根据本公开的示例实现,描绘了hwd 302和控制台304之间的通信的示例时序图400。时序图400示出了包括活动时段410和空闲时段415的系统间隔405。空闲时段415的持续时间可以大约为10ms。活动时段410的持续时间可以在0.5ms和3ms之间。在一些实现中,活动时段410的持续时间可以取决于hwd 302和控制台304之间的信道的信道条件(例如,mcs)。例如,在信道条件显示hwd 302和控制台304之间的强连接(例如,高mcs)的情况下,活动时段410可以更接近0.5ms,而在信道条件显示hwd 302和控制台304之间的降级连接(degraded connection)(例如,低mcs)的情况下,活动时段410可以更接近3ms。
88.现在参考图3a至图4,在活动时段410期间在系统间隔405的开始处,控制台304可以被配置为实现、执行或以其他方式执行波束优化协议(brp)(如框420所示),以从多个波束310(1)
‑
310(5)中识别活动的控制台rfic 308a的活动波束310(在图3a
‑
图3c中以实线示出)。控制台304可以被配置为在空闲时段415之后执行brp,因为信道可能在10ms空闲时段之后降级(因为用户可以移动他们的头部和相应的hwd 302、移动控制台304等)。在一些实施例中,控制台304可以被配置为在rfic 308a、308b两者上执行段级扫描(sls)和brp,以确定哪个rfic 308将服务于控制台304和hwd 302之间的信道。控制台304可以被配置为在控制台304的初始握手期间执行brp。在图3a
‑
图3c所示的示例中,hwd 302和控制台304使用五个波束来执行brp。然而,设备300可以使用任何数量的波束来执行brp。
89.hwd 302可以被配置为在控制台304执行brp之后执行brp(如框425所示)。hwd 302可以被配置为执行brp,以从多个波束312(1)
‑
312(5)中识别活动的控制台rfic 308a的活动波束312(在图3a
‑
图3c中以实线示出)。类似于控制台304,hwd 302可以被配置为在rfic 306a、306b两者上执行sls和brp,以识别哪个rfic 306将服务于控制台304和hwd 302之间的信道。hwd 302可以被配置为向控制台304提供反馈(如框430所示)。在一些实施例中,hwd 302可以被配置为选择将服务于hwd 302和控制台304之间的信道的活动的hwd rfic 306a、306b,并且为活动的hwd rfic 306选择活动波束312,同时生成对应于与第一连接对应的信道的mcs的反馈。hwd 302可以被配置为基于哪个rfic和波束具有最高mcs来选择活动的hwd rfic 306和波束312。反馈可以包括对应于控制台304和hwd 302的每个潜在波束310
‑
312的mcs的数据。
90.控制台304可以被配置为基于来自hwd 302的反馈来识别、确定或以其他方式选择将服务于信道的活动的控制台rfic 308a、308b和活动波束310。控制台304可以被配置为基于哪个rfic 308和哪个波束310导致信道的最高mcs来选择活动的rfic 308和活动波束310。在选择将服务于hwd 302和控制台304之间的信道的rfic 306、308和波束310、312之后,hwd 302和控制台304可以被配置为在活动时段410期间在其之间发送和接收分组。例如,在图4所示的时序图中,控制台304可以被配置成发送数据分组(如框435所示)。hwd 302可以被配置成接收数据分组并发送相应的数据分组(如框440所示)。控制台304可以被配置
为生成后续数据分组(如框445所示),并且hwd 302可以被配置为从控制台304接收数据分组,并且可以生成另一个数据分组(如框455所示)。控制台304可以被配置为从hwd 302接收数据分组,并且可以将反馈发送回hwd 302(如框465所示)。hwd 302和控制台304可以被配置成在活动时段410期间交换分组。
91.在一些实施例中,hwd 302和/或控制台304(统称为设备300)可以被配置为请求bt。设备300可以被配置为基于hwd 302和控制台304之间的信道的mcs来请求bt。例如,设备300可以被配置为随着mcs的降低,以更大的间隔选择性地请求bt。作为示例,在(由活动波束310、312定义的)信道的mcs满足第一阈值(例如,大于或等于8的mcs)的情况下,设备300可以不请求bt用于在活动时段410期间交换的任何内部分组。设备300可以不请求bt用于内部分组,其中mcs大于第一阈值,并且活动时段410的总持续时间可以小于0.5ms。基于现场测量,信道条件可以每0.5ms改变至多1db。在mcs大于第一阈值并且活动时段410的总传输时间小于或大约为0.5ms的情况下,mcs可以在活动时段410期间不改变。这样,设备300可以不请求任何bt用于内部分组,因为执行bt的功耗可能抵消信道改进的任何潜在益处。
92.设备300可以基于mcs请求bt用于选定数量的分组,其中mcs小于第一阈值。作为示例,对于4到7之间的mcs,hwd 302可以在活动时段410的中间(例如,用框440表示的从hwd 302传输到控制台304的第二分组)请求bt。控制台304可以被配置为响应于从hwd 302接收到请求,在训练字段(training field)(由框450表示)内连同数据分组(如框445所示)一起执行bt。类似于在上述初始握手分组期间执行的bt,训练字段可以包括控制台304的活动波束310的多个相邻波束。hwd 302可以类似地在训练字段(由框460表示)内连同数据分组(如框455所示)一起执行bt。因此,hwd 302和控制台304可以被配置为在活动时段410内交换数据分组子集期间执行bt。随着mcs减少,设备300可以被配置为请求bt用于更多的分组。例如,在mcs在2和3之间的情况下,设备300可以被配置为对由框435、440和465所示的分组执行bt。在mcs小于2的情况下,设备300可以被配置为对hwd 302和控制台304之间交换的每个分组执行bt。因此,设备300可以基于hwd 302和控制台304之间的信道的mcs,对更多或更少的分组执行bt。
93.在设备300对活动波束310、312的多个相邻波束310、312执行bt的每个实例中,其中相邻波束310、312之一的mcs大于活动波束310、312的mcs,设备300可以被配置为从活动波束310、312切换到具有较高mcs的相邻波束310、312。作为示例,其中用于hwd 302的活动波束312(3)被用于信道,并且hwd 302对多个相邻波束312(1)
‑
312(2)和312(4)
‑
312(5)执行bt,并且将相邻波束312(4)用于信道导致更高的mcs,hwd 302可以从活动波束312(3)切换到相邻波束312(4),用于服务hwd 302和控制台304之间的信道。类似地,在控制台304的活动波束310(2)用于信道并且控制台304对多个相邻波束310(1)和310(3)
‑
310(5)执行bt,并且将相邻波束310(3)用于信道导致更高的mcs的情况下,控制台304可以从活动波束310(2)切换到相邻波束310(3),用于服务hwd 302和控制台304之间的信道。这样,设备300可以在波束310、312之间动态切换,以优化hwd 302和控制台304之间的信道条件。
94.在一些实施例中,在活动时段期间内部分组的bt期间,设备300可以被配置为基于信道的mcs对多个相邻波束310、312执行bt。例如,随着mcs减小,设备300可以被配置为增加设备300对其执行bt的相邻波束的数量。作为一个示例,在mcs大于8的情况下,设备300可以被配置为对第一数量的相邻波束(例如,两个相邻波束)执行bt,在mcs在7和4之间的情况
下,设备300可以被配置为对第二数量的相邻波束(例如,四个相邻波束)执行bt,在mcs在3和2之间的情况下,设备300可以被配置为对第三数量的相邻波束(例如,八个相邻波束)执行bt,并且在mcs小于2的情况下,设备可以被配置为对第四数量的相邻波束(例如,16个相邻波束)执行bt。设备300可以被配置为增加要对其执行bt的相邻波束310、312的数量,以增加识别导致比当前信道的mcs更高的mcs的波束310、312的可能性。相应地,设备300可以被配置为减少用于bt的相邻波束的数量以降低功耗,特别是在当前信道的mcs令人满意的情况下。因此,设备300可以被配置为在选择要对其执行bt的相邻波束的数量时,在功耗和改善的信道条件的可能性之间进行平衡。
95.参考图3a
‑
图3c和图5a
‑
图5c,信道的mcs可以随着用户移动用户的头部以及相应的hwd 302而改变。如上面更详细描述的,设备300可以被配置成选择性地对活动的rfic 306、308执行bt,以优化hwd 302和控制台304之间的信道。在一些实施例中,设备300可以被配置为选择性地在活动的和空闲的rfic 306、308之间切换,以进一步优化hwd 302和控制台304之间的信道。图5a
‑
图5c中描绘了示例时序图500,其示出了随着时间各个rfic 306、308的mcs。在一些实施例中,设备300可以被配置为基于第一连接的mcs选择性地测量空闲的rfic 306、308之间的附加连接的mcs。在一些实施例中,设备300可以被配置为在活动的(例如,服务的)rfic 306、308和空闲的(例如,非服务的)rfic 306、308之间切换。在一些实施例中,设备300可以被配置为基于当前信道的mcs与mcs阈值的比较,选择性地对活动的和空闲的rfic、306、308的附加信道执行mcs测量。
96.在图5a
‑
图5c所示的示例时序图500中,活动的hwd rfic 306和活动的控制台rfic 308的mcs 505(例如,定义hwd 302和控制台304之间的信道的第一连接)以实线示出。设备300可以被配置为实时地、在活动时段期间、在传输期间、以及在活动时段期间的分组接收期间等确定、测量、修改或以其他方式识别信道的mcs 505。在一些实施例中,控制台304可以被配置为识别信道的mcs 505。在一些实施例中,hwd 302可以被配置为识别信道的mcs 505。在又一些实施例中,hwd 302和控制台304都可以被配置为识别信道的mcs 505。
97.设备300(例如,hwd 302和/或控制台304)可以被配置为保持、包括或以其他方式访问mcs阈值510。在一些实施例中,设备300可以被配置为访问mcs阈值510和对应于mcs阈值510的滞后分量515。如图5a至图5c所示,设备300可以被配置为访问对应于高于mcs阈值510的mcs的滞后分量515(有时被称为上(upper)滞后分量515)和对应于低于mcs阈值510的mcs的滞后分量515(有时被称为下(lower)滞后分量515)。上滞后分量515和下滞后分量515可以一起形成对应于mcs阈值510的缓冲区520。mcs阈值510可以位于由上滞后分量515和下滞后分量515定义的缓冲区520的中间。如下文更详细描述的,设备300可以使用滞后分量515来减少通过触发mcs测量以及在活动的和空闲的rfic 306、308之间切换导致的功耗增加的可能性。
98.设备300可以被配置为将活动的hwd rfic 306和活动的控制台rfic 308之间的第一连接(或信道)的mcs与mcs阈值510进行比较。设备300可以被配置为在第一连接的mcs不满足mcs阈值510(例如,第一连接的mcs小于mcs阈值510)的情况下,对第二连接(或信道)执行一个或更多个mcs测量。在一些实施例中,设备300可以被配置为将第一连接的mcs与mcs阈值510的下滞后分量515进行比较。设备300可以被配置为当第一连接的mcs不满足mcs阈值510的下滞后分量515时,对第二连接执行一个或更多个mcs测量。
99.如图5a所示,设备300可以被配置为确定、测量、量化或以其他方式识别一个或更多个第二连接的mcs。在图5a所示的示例中,设备300可以被配置为识别三个连接的mcs(例如,用于活动的hwd rfic 306和空闲的控制台rfic 308之间的连接的mcs 525以虚线示出,用于空闲的hwd rfic 306和活动的控制台rfic 308之间的连接的mcs 530以点
‑
划线示出,以及用于空闲的hwd rfic 306和空闲的控制台rfic 308之间的连接的mcs 535用点
‑
点
‑
划线示出)。虽然被示为识别三个连接的mcs,但是应当注意,设备300可以被配置为识别任意数量的连接的mcs,这可以取决于包括在hwd 302中的rfic 306的数量和包括在控制台304中的rfic 308的数量。设备300可以被配置为响应于第一连接的mcs下降到低于下滞后分量515(如图5a
‑
图5c所示),识别一个或更多个第二连接的mcs。
100.设备300可以通过启动、调出、开始、发起或以其他方式激活空闲的rfic 306、308中的一个或更多个来识别一个或更多个第二连接的mcs。设备300可以被配置为触发活动的和/或空闲的rfic 306、308之间的一个或更多个协议(例如sls、brp和/或bt)的执行。在一些实施例中,该设备可以被配置为在保持(例如,在活动的rfic 306、308之间的)第一连接的同时,测量一个或更多个第二连接的mcs。因此,设备300可以被配置为保持第一连接,同时搜索更好的连接,使得性能和用户体验不被中断。
101.在一些实施例中,设备300可以被配置为以各种间隔对第二连接执行一个或更多个mcs测量。例如,在一些实施例中,设备300可以被配置为从第一连接的mcs下降到低于mcs阈值510的下滞后分量515的时间开始,以各种系统间隔执行mcs测量。在一些实施方式中,设备300可以被配置为当第一连接的mcs下降到低于mcs阈值510的下滞后分量515时,在第一系统间隔开始时执行mcs测量。设备300可以被配置为在后续系统间隔开始时为第二连接执行附加的mcs测量。在一些实施例中,两次后续mcs测量之间的持续时间可能增加。持续时间可能呈指数增长。例如,设备300可以在第一系统间隔开始时执行一个或更多个第二连接的第一mcs测量,然后在第二系统间隔开始时执行第二mcs测量,然后在第四系统间隔开始时执行第二mcs测量,接着在第八系统间隔开始时执行第三mcs测量,以此类推。因此,后续mcs测量之间的持续时间可能会随着时间的推移而增加。在一些实施例中,持续时间可以增加到最大持续时间。最大持续时间可以是例如16个系统间隔。换句话说,后续mcs测量之间的持续时间可以遵循以下公式:
102.timer
mcsmeasure(t)
=min(2
×
mcsmeasure(t
‑
1),maxduration)
103.因此,设备300可以对于每个后续的mcs测量将持续时间(mcsmeasure)增大2倍,直到最大持续时间。
104.设备300可以被配置为将第一连接的mcs和第二连接的mcs测量值与mcs阈值510进行比较。在一些实施例中,设备300可以被配置为将第一连接的mcs和第二连接的mcs测量值与mcs阈值510的上滞后分量515进行比较。设备300可以被配置为执行第二连接的mcs测量,直到第一连接的mcs或第二连接的mcs测量之一超过mcs阈值510(或mcs阈值510的上滞后分量515)。设备300可以被配置为在设备300为第二连接执行后续mcs测量并将这些mcs测量值与mcs阈值510进行比较的同时保持第一连接。
105.在图5a中,示出了示例时序图500,其中第一连接的mcs 505下降到低于mcs阈值510的下滞后分量515(从而触发第二连接的mcs测量),并且随后上升到高于mcs阈值510的上滞后分量515。当第一连接的mcs 505超过mcs阈值510的上滞后分量515时,设备300可以
被配置为停止、终止、中止或以其他方式不执行第二连接的任何后续mcs测量。因此,设备300可以被配置为在图5a所示的时序图500中保持第一连接。值得注意的是,mcs 525和mcs 535都在时序图500期间的某个点处超过mcs 阈值510。然而,由于mcs 525、535没有超过mcs阈值510的上滞后分量515,并且第一连接的mcs 505超过mcs阈值510的上滞后分量515,所以保持第一连接。
106.在图5b中,示出了另一示例时序图500,其类似于图5a所示的时序图500。第一连接的mcs 505下降到低于mcs阈值510的下滞后分量515(从而触发第二连接的mcs测量),并且随后升高到高于mcs阈值510的上滞后分量515。通过实现滞后分量515,当第一连接的mcs 505再次下降到低于mcs阈值510(但不低于mcs阈值510的下滞后分量515)时,设备300不对第二连接执行任何后续的mcs测量。然而,如果第一连接的mcs 505下降到低于mcs阈值510的下滞后分量515,则设备300可以再次对第二连接执行额外的mcs测量。因此,mcs阈值510(和滞后分量515)可以被调整、调谐或以其他方式细化,以在触发第二连接的mcs测量的执行(这增加了功耗)和保持rfic 306、308的空闲状态(这降低了功耗)之间进行平衡。
107.在图5c中,示出了另一示例时序图500,其类似于图5a所示的时序图500。第一连接的mcs 505下降到低于mcs阈值510的下滞后分量515(从而触发第二连接的mcs测量)。如图5c所示,mcs 535随后上升到高于mcs阈值510的上滞后分量515。设备300可以被配置为响应于mcs 535超过mcs阈值510的上滞后分量515,从第一连接切换到对应于mcs 535的第二连接。一旦设备300切换到对应于mcs 535的第二连接,设备300可以被配置为停止、终止、中止或者不执行针对第一连接和其他第二连接的任何后续mcs测量。
108.虽然被描述为mcs 505、525、530、535与上滞后分量515之间的比较,但是在一些实现中,设备300可以被配置为将第二连接的mcs 525
‑
535与第一连接的mcs 505进行比较,并且在对应的mcs 525
‑
535超过第一连接的mcs 505的情况下,切换到第二连接之一。例如,继续图5a所示的示例时序图500,设备300可以被配置为在第一连接的mcs 505下降到低于mcs阈值510的下滞后分量515之后,从第一连接切换到对应于mcs 525的第二连接(因为mcs 525大于mcs 505)。随后,mcs 525下降到低于mcs阈值510的下滞后分量515,此时设备300可以被配置为切换回第一连接(因为第一连接的mcs 505再次大于第二连接的mcs 525和mcs 535)。随后,mcs 505再次下降到低于mcs阈值510的下滞后分量515,此时设备300可以被配置为切换到对应于mcs 535的第二连接。
109.此外,在设备300不实现滞后分量515的实现中,设备300可以被配置为当mcs 505、525
‑
535之一超过mcs阈值510时保持第一连接(或切换到第二连接)。例如,继续图5a所示的示例时序图500,设备300可以被配置为在第一连接的mcs 505下降到低于mcs阈值510之后,从第一连接切换到对应于mcs 525的第二连接(因为第二连接的mcs 525是下一个超过mcs阈值510的连接)。随后,mcs 525下降到低于mcs阈值510,此时设备300可以被配置为切换回第一连接(因为第一连接的mcs 505是超过mcs阈值510的下一个连接)。随后,mcs 505再次下降到低于mcs阈值510,此时设备300可以被配置为切换到对应于mcs 535的第二连接(因为第二连接的mcs 535是下一个超过mcs阈值510的连接)。
110.这样的实现可以导致mcs测量的附加执行以及活动的和空闲的rfic 306、308之间的切换,这增加了功耗,但是可以导致hwd 302和控制台304之间更强的信道条件。
111.图6示出了根据本公开的示例实现的多级多rfic波束成形的示例过程600。过程
306、308之间的连接、执行一个或更多个波束成形协议(例如,brp、bt和/或段级扫描(sls))并确定这些连接的mcs来执行mcs测量。
116.在一些实施例中,设备300可以以各种间隔执行mcs测量。设备300可以执行第一mcs测量(或一组mcs测量)、第二mcs测量(或一组mcs测量)、第三mcs测量(或一组mcs测量)等等。在一些实施例中,设备300可以在系统间隔的开始(或期间)执行每个mcs测量(或一组mcs测量)。在一些实施例中,后续mcs测量之间的持续时间或时间可能增加。持续时间可以指数增加(例如,在第一系统间隔、第二系统间隔、第四系统间隔、第八系统间隔等的开始)。在一些实施例中,持续时间可以增加到最大持续时间。
117.在步骤620,并且在一些实施例中,设备300将mcs测量值与mcs阈值进行比较。在一些实施例中,设备300将第二连接的mcs测量值和第一连接的mcs与mcs阈值进行比较。mcs阈值可以与步骤610中使用的mcs阈值相同。在一些实施例中,设备300可以将mcs测量值与mcs阈值的滞后分量进行比较。mcs阈值的滞后分量可以是mcs阈值的上滞后分量。在第一连接的mcs和第二连接的mcs测量值中的每一个都小于mcs阈值(或mcs阈值的上限滞后分量)的情况下,过程600可以循环回到步骤615。设备300可以对第二连接执行mcs测量,直到第一连接的mcs或第二连接的mcs测量值之一超过高于mcs阈值的滞后分量。因此,当在步骤615执行的mcs测量值低于mcs阈值的滞后分量时,设备300可以保持第一连接。
118.在步骤625,并且在一些实施例中,设备300切换到第二连接。在一些实施例中,当一个或更多个mcs测量值中的至少一个满足mcs阈值时,设备300可以切换到第二连接。在一些实施例中,当一个或更多个mcs测量值中的至少一个超过第一连接的mcs时,设备300可以切换到第二连接。在设备300对多个连接执行mcs测量的情况下(例如,在步骤615),当连接之一的mcs测量值满足mcs阈值时,设备300可以切换到该连接。在一些实施例中,当mcs测量值超过高于mcs阈值的滞后分量(和/或高于第一连接的mcs)时,设备300可以切换到第二连接。当设备300由于相应的mcs超过mcs阈值(和/或大于第一连接的mcs)而切换到第二连接时,设备300可以不对任何其他连接(或第一连接)执行后续的mcs测量。设备300可以不执行任何后续的mcs测量,除非并且直到第二连接的mcs下降到低于mcs阈值(此时过程600根据步骤615进行)。
119.c.计算系统
120.本文描述的各种操作可以在计算机系统上实现。图7示出了可用于实现本公开的代表性计算系统714的框图。在一些实施例中,图1的控制台110、hwd 150或两者由计算系统714实现。计算系统714可以被实现为例如消费设备(consumer device),诸如智能手机、其他移动电话、平板计算机、可佩戴计算设备(例如,智能手表、眼镜、头戴式显示器)、台式计算机、膝上型计算机,或者用分布式计算设备来实现。计算系统714可以被实现为提供vr、ar或mr体验。在一些实施例中,计算系统714可以包括传统的计算机组件,例如处理器716、存储设备718、网络接口720、用户输入设备722和用户输出设备724。
121.网络接口720可以提供到广域网(例如,互联网)的连接,远程服务器系统的wan接口也连接到广域网。网络接口720可以包括有线接口(例如以太网)和/或无线接口,用于实现各种射频数据通信标准,例如wi
‑
fi、蓝牙或蜂窝数据网络标准(例如3g、4g、5g、60ghz、lte等)。
122.用户输入设备722可以包括用户可以通过其向计算系统714提供信号的任何设备
(或多个设备);计算系统714可以将信号解释为特定用户请求或信息的指示。用户输入设备722可以包括键盘、触摸板、触摸屏、鼠标或其他定点设备、滚轮、点击轮(click wheel)、拨号盘、按钮、开关、小键盘、麦克风、传感器(例如,运动传感器、眼睛跟踪传感器等)中的任何一个或全部,等等。
123.用户输出设备724可以包括计算系统714可以通过其向用户提供信息的任何设备。例如,用户输出设备724可以包括显示器,以显示由计算系统714生成或传送到计算系统714的图像。显示器可以结合各种图像生成技术(例如液晶显示器(lcd)),包括有机发光二极管(oled)的发光二极管(led)、投影系统、阴极射线管(crt)等,以及支持电子器件(例如数模或模数转换器、信号处理器等)。可以使用既用作输入设备又用作输出设备诸如触摸屏的设备。除了显示器之外或者代替显示器,可以提供输出设备724。示例包括指示灯、扬声器、触觉“显示”设备、打印机等。
124.一些实施方式包括电子组件,例如微处理器、储存器和将计算机程序指令存储在计算机可读存储介质(例如,非暂时性计算机可读介质)中的存储器。本说明书中描述的许多特征可以被实现为被指定为编码在计算机可读存储介质上的一组程序指令的过程。当这些程序指令由一个或更多个处理器执行时,它们使处理器执行程序指令中指示的各种操作。程序指令或计算机代码的示例包括诸如由编译器产生的机器代码,以及包括由计算机、电子组件或使用解释器的微处理器执行的高级代码的文件。通过适当的编程,处理器716可以为计算系统714提供各种功能,包括本文描述的由服务器或客户端执行的任何功能,或者与消息管理服务相关联的其他功能。
125.应当理解,计算系统714是说明性的,并且变化和修改是可能的。结合本公开使用的计算机系统可以具有本文没有具体描述的其他能力。此外,虽然计算系统714是参考特定的块来描述的,但是应当理解,这些块是为了描述方便而定义的,并不意味着组成部分的特定物理布置。例如,不同的块可以位于同一设施、同一服务器机架或同一主板上。此外,这些块不需要对应于物理上不同的组件。块可以被配置成(例如通过对处理器编程或提供适当的控制电路)执行各种操作,并且根据如何获得初始配置,各种块可以是或可以不是可重新配置的。本公开的实现可以在各种装置(包括使用电路和软件的任意组合实现的电子设备)中实现。
126.现在已经描述了一些说明性的实施方式,显然前述是说明性的而不是限制性的,已经通过示例的方式给出。具体而言,尽管本文呈现的许多示例涉及方法动作或系统元素的特定组合,但是那些动作和那些元素可以以其他方式组合来实现相同的目标。结合一个实施方式讨论的动作、元素和特征不旨在被排除在其他实施方式或实施方式中的类似角色之外。
127.用于实现结合本文公开的实施例描述的各种过程、操作、说明性逻辑、逻辑块、模块和电路的硬件和数据处理组件可以用通用单芯片或多芯片处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑器件、分立门、或晶体管逻辑、分立硬件组件或其设计用于执行本文描述的功能的任何组合来实现或执行。通用处理器可以是微处理器,或者任何传统的处理器、控制器、微控制器或状态机。处理器也可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、与dsp内核结合的一个或更多个微处理器、或者任何其他这样的配置。在一些实施例中,特定的过程和
方法可以由特定于给定功能的电路来执行。存储器(例如,存储器、存储器单元、存储设备等)可以包括一个或更多个设备(例如,ram、rom、闪存、硬盘储存设备等)用于存储数据和/或计算机代码,以完成或促进本公开中描述的各种过程、层和模块。存储器可以是或包括易失性存储器或非易失性存储器,并且可以包括数据库组件、目标代码组件、脚本组件或用于支持本公开中描述的各种活动和信息结构的任何其他类型的信息结构。根据示例性实施例,存储器经由处理电路可通信地连接到处理器,并且包括用于(例如,通过处理电路和/或处理器)执行本文描述的一个或更多个过程的计算机代码。
128.本公开设想用于完成各个操作的方法、系统和在任何机器可读介质上的程序产品。可以使用现有计算机处理器、或通过为此目的或其他目的所引入的恰当系统的专用计算机处理器或通过硬接线的系统来实现本公开的实施例。本公开的范围之内的实施例包括程序产品,其包括用于携带或具有存储于其上的机器可执行指令或数据结构的机器可读介质。这种机器可读介质可以是任意可用介质,其可通过通用或专用计算机或具有处理器的其他机器访问。举例来讲,这种机器可读介质可包括ram、rom、eprom、eeprom、cd
‑
rom或其他光盘储存器、磁盘储存器或其他磁储存设备、或可用于携带或存储以机器可执行指令或数据结构形式的所需程序代码的且可以通过通用或专用计算机或具有处理器的其他机器访问的任何其他介质。上面的组合也被包括在机器可读介质的范围内。机器可执行指令包括例如使得通用计算机、专用计算机或专用处理机器执行某一功能或一组功能的指令和数据。
129.本文所使用的措辞和术语是为了描述的目的,且不应被视为限制性的。本文使用的“包括(including)”、“包含(comprising)”、“具有”、“包含(containing)”、“涉及”、“以......为特征”、“特征在于”及其变型意味着包含其后列出的项目、其等同物和附加项目,以及仅由其后列出的项目组成的替代实现。在一个实施方式中,本文描述的系统和方法由一个、多于一个的每个组合或者所有描述的元件、动作或组件组成。
130.本文以单数形式提及的系统和方法的实施方式或元件或动作的任何引用也可以包括包含多个这些元件的实施方式,并且本文以复数形式提及的任何实施方式或元素或动作也可以包括仅包含单个元素的实施方式。单数或复数形式的引用不旨在将当前公开的系统或方法、它们的组件、动作或元素限制为单个或更多个配置。对基于任何信息、动作或元素的任何动作或元素的引用可以包括其中动作或元素至少部分基于任何信息、动作或元素的实现。
131.本文公开的任何实现可以与任何其他实现或实施方式组合,并且对“实现”、“一些实现”、“一个实现”等的引用不一定是互斥的,并且旨在指示结合该实现描述的特定特征、结构或特性可以包括在至少一个实现或实施方式中。这里使用的这些术语不一定都指同一实现。任何实现都可以以与这里公开的方面和实现相一致的任何方式,包括或排他地,与任何其他实现相结合。
132.在附图、详细描述或任何权利要求中的技术特征后面带有附图标记的地方,已经包括附图标记以增加附图、详细描述和权利要求的可理解性。因此,附图标记及其缺失都不意欲对任何权利要求元素的范围有任何限制影响。
133.在不脱离其特征的情况下,本文描述的系统和方法可以以其他特定形式实施。除非另有明确说明,对“大约(approximately)”、“约(about)”、“基本上”或其他程度术语的提
及包括给定测量值、单位或范围的 /
‑
10%的变化。耦合元件可以彼此直接电耦合、机械耦合或物理耦合,或者利用中间元件电耦合、机械耦合或物理耦合。因此,本文描述的系统和方法的范围由所附权利要求而不是前面的描述来指示,并且落入权利要求的等同物的含义和范围内的变化包含在其中。
134.术语“耦合”及其变型包括两个构件直接或间接彼此连接。这种连接可以是静止的(例如,永久的或固定的)或可移动的(例如,可移除的或可释放的)。这种连接可以通过两个构件直接连接或相互连接来实现,也可以通过两个构件使用单独的中间构件和任何附加的中间构件相互连接来实现,或者通过两个构件使用与两个构件中的一个构件一体形成为单一单元体的中间构件相互连接来实现。如果“耦合”或其变型由附加术语(例如,直接耦合)来修饰,则上面提供的“耦合”的一般定义由附加术语的简单语言含义来修饰(例如,“直接耦合”是指两个构件的连接而没有任何单独的中间构件),导致比上面提供的“耦合”的一般定义更窄的定义。这种耦合可以是机械的、电的或流体的。
135.对“或”的提及可被解释为包含性的,因此,使用“或”描述的任何术语可以表示单个、一个以上和所有所述术语中的任何一个。对
“‘
a’和
‘
b’中的至少一个”的提及可以只包括“a”,只包括“b”,以及同时包括“a”和“b”。这种与“包括”或其他开放术语一起使用的引用可以包括附加项目。
136.在本质上不脱离本文公开的主题的教导和优点的情况下,可以对所描述的元件和动作进行修改,例如各种元件的尺寸、大小、结构、形状和比例、参数值、安装布置、材料使用、颜色、取向的变化。例如,显示为整体形成的元件可以由多个部分或元件构成,元件的位置可以颠倒或以其他方式改变,并且离散元件的性质或数量或位置可以改变或变化。在不脱离本公开的范围的情况下,还可以在所公开的元件和操作的设计、操作条件和布置中进行其他替换、修改、改变和省略。
137.本文提到的元件位置(例如,“顶部”、“底部”、“上面”、“下面”)仅用于描述附图中各种元件的取向。根据其他示例性实施例,各种元件的取向可以不同,并且这种变化旨在被本公开所包含。
再多了解一些
本文用于企业家、创业者技术爱好者查询,结果仅供参考。