HI,欢迎来到起点商标网!
24小时服务QQ:2880605093

用于在芯片上实现跟踪数据通信的系统、方法和装置与流程

2021-01-11 13:01:26|317|起点商标网
用于在芯片上实现跟踪数据通信的系统、方法和装置与流程

相关申请的交叉引用

本申请要求2019年6月18日提交的临时申请号62/863151的权益,出于所有目的,该临时申请的全部公开内容通过引用合并于此。

本公开的方面大体涉及电子芯片,更具体地,涉及用于游戏和/或仿真应用电子芯片,芯片组件,设备,系统和方法。



背景技术:

游戏和/或仿真引擎在图形应用中扮演越来越重要的角色。软件游戏和/或仿真引擎的一个主要任务是提供在包括诸如仿真能力的其它特征的实时性能下可能的最真实和最高质量的图形。软件游戏和/或仿真引擎通常被提供为在cpu上执行的计算机可执行代码。例如,游戏引擎和/或仿真通常可以运行在计算设备的处理器或微处理器上,诸如个人计算机的cpu,控制台,移动电话或平板电脑。因此,cpu的性能可以确定软件游戏和/或仿真引擎的性能。软件游戏和/或仿真引擎还可以访问图形处理单元gpu。例如,gpu可向图形存储器或视频存储器呈现具有非常高性能的个别对象的列表。计算机图形场景可以包括大量对象,这些对象具有与它们的3d位置和3d朝向,行为,材料特性等相关的特性。为了实现高度真实的场景,游戏和/或仿真引擎需要考虑整个场景,其通常包含要呈现给屏幕的数百万个对象。例如,游戏和/或仿真引擎可以考虑光与单独对象以及场景的对象之间的行为和交互。

这些游戏和/或仿真引擎提供专门创建的环境,以实现3d视频游戏和实时仿真专用的功能。因此,游戏和/或仿真引擎能够实现诸如动画模型的管理、对象之间的冲突、以及玩家和游戏之间的交互等方面。许多最近的游戏,仿真和严重的游戏使用超出视觉和交互方面的引擎。例如,程序员可以依靠物理引擎来仿真虚拟环境内的物理规律,依靠音频引擎来添加音乐和复杂的声学效果,以及依靠人工智能(ai)引擎来编程非人类播放器的行为。3d界面的预期特性非常接近于3d视频游戏的特性。因此,游戏和/或仿真引擎可用于需要以实时性能呈现3d图形的任何类型的应用中,包括诸如虚拟现实(vr),增强现实(ar),混合现实(mr)或其组合的数字现实中的应用。

通过游戏和/或仿真引擎提供高质量的数字现实体验需要用户的准确位置和朝向跟踪,以便在用户的视野中正确地呈现和定位每个3d对象,并且精确地提供基于地点的服务和内容。跟踪可以通过各种技术来进行,例如通过全球导航卫星系统(gnss),它们通常涉及任何基于卫星的导航系统,例如gps,bds,glonass,qzss,galileo和irnss。使用来自足够数量的卫星和诸如三角测量和三边测量的技术的信号,gnss可以计算设备的位置,速度,高度和时间。可以进一步增加gnss以便校正诸如多径误差,轨道误差和卫星时钟误差之类的误差。典型的方法包括将参考站放置在用户附近的精确已知地点,或者在需要高精度导航的地方。参考站测量到每个可见卫星的范围,解调导航消息,并且根据参数的类型,计算要由用户的接收机应用的几种类型的校正,以便改善其性能。然后,该站经由数据链路向本地用户广播其校正,从而获得几厘米的位置精度。当前可用的主要增强系统是差分gps(dgps),基于卫星的增强系统(sbas),实时运动学(rtk)系统和辅助gnss(agnss)。根据所提及的增强方法,agnss是唯一不需要部署参考站的特定地面网络,而是利用现有蜂窝通信系统的网络架构来辅助gnss的agnss。这些方法具有一些局限性,例如可以获得足够数量的卫星信号,或者卫星信号可以在建筑物,隧道或其它固体结构内被阻挡。此外,这些方法易于在位置信息中受到中断。

有时使用其它互补方法,例如惯性导航系统(ins)。由于ins是自包含的,即,它们不依赖于任何可能被干扰或堵塞的外部信息源,这代表了对于需要100%覆盖和高服务连续性的许多应用有吸引力的导航手段。此外,ins还提供了全6自由度(dof)导航解决方案,并且通常具有高更新速率(≥100hz)。因此,在最初确定系统的位置之后,即使卫星信号被阻挡,ins传感器也允许在系统移动时确定位置和朝向。基于测量系统的移动来确定位置被称为航位推算(即惯性导航)。航位推算位置的精度和它保持精度多长时间取决于各种因素,例如传感器的质量和它们被校准得多好。在一些系统中,还使用航位推算来提高卫星地点确定的精度。gnss或具有ins的任何增强的gnss系统的传感器融合通常基于扩展卡尔曼滤波器(ekf),其使用算法来组合gnss的绝对定位和ins传感器的相对定位,且在一些情况下,使用其它传感器(例如雷达和相机)来计算设备的相对精确的6自由度(6dof)位置和朝向。

定位技术的其它进展包括5g无线网络的潜在实施方式及其在本领域中的毫米波(mmw)传输。通过诸如到达时间(toa),到达角(aoa)和出射角(aod)等方法的估计,可以达到厘米的精度。然而,高端3d应用可能需要甚至更高的精度水平。

因此,需要能够提供更精确和稳定的适于高端3d应用或仿真的定位水平的技术发展。



技术实现要素:

提供该概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本概述并不打算确定权利要求所要求保护的主题的关键特征,也不打算被用来帮助确定权利要求所要求保护的主题的范围。

本文公开的一个或多个问题或其他技术问题通过电子芯片,芯片组件,设备,系统和方法的实施例来解决,所述电子芯片,芯片组件,设备,系统和方法能够实现在游戏和/或仿真应用中使用的数据跟踪通信。

如本公开中所使用的,"定位"是确定诸如移动电话,膝上型计算机,平板计算机,个人数字助理(pda),无人机,车辆,头戴式显示器(hmd),控制台,智能隐形眼镜等设备的位置(例如,地理位置)的过程。一旦建立了设备的坐标,它们就可以被映射到地点,然后被传递回请求服务。映射功能和地点信息的递送是地点服务(lcs)的一部分,例如,紧急服务取决于lcs。使用地点数据的服务被称为是地点感知的,并且通过地点感知提供增值的客户服务被称为基于地点的服务(lbs)。随着3d应用的使用变得越来越广泛,定位技术也已经发展到能够确定和跟踪设备的六个自由度(6dof),在一些实施例中,这是指在三个垂直轴上的向前/向后(波动),向上/向下(起伏),左/右(摆动)平移,并且结合有通过围绕三个垂直轴(通常称为偏航(法向轴))、俯仰(横向轴线)和滚动(纵向轴线)的旋转的朝向变化。

如本公开中所使用的,"可用性"是指系统能够向用户提供期望级别的导航解决方案的时间的百分比。"精确度"是在给定时间估计或测量的位置与真值如何接近的量度。"可靠性"是系统检测一定幅度的误差(离群点)并估计未检测到的误差对导航解决方案的影响的能力。"完整性"是指当系统不应用于定位时系统向用户发送警告消息的能力。

本公开的第一方面包括数据跟踪通信芯片。数据跟踪通信芯片跟踪数据,允许精确地确定含有该芯片的客户端设备在哪里,还可以实现客户端设备与其他设备的通信。在第一方面,该芯片包括多个处理核心;以及耦合到所述多个处理核心中的至少一个的至少一个硬件接口,其中所述多个处理核心中的至少一个实现第一引擎(例如,一个或多个游戏引擎和/或仿真引擎),其中所述多个处理核心中的至少一个实现至少一个位置引擎,并且其中所述多个处理核心中的至少一个实现至少一个陀螺仪核心。

在至少一个处理核心中实现的位置引擎被配置成逐渐获得和融合通过多个方法从不同源获得的位置和朝向数据,并且由此计算包括数据跟踪通信芯片的客户端设备的高度精确的6dof位置和朝向。由位置引擎请求和实现的每个位置计算/细化迭代为实现数据跟踪通信芯片的客户端设备的实际位置提供了另一精确层。

在一些实施例中,位置引擎可首先从外部定位系统内的一个或多个系统获得数据,所述外部定位系统可通过片上位置引擎上的专用硬件(例如,接收器或收发器)或经由所述一个或多个硬件接口提供数据。在另一个实施例中,位置引擎还从内部定位系统获得位置和朝向数据,该内部定位系统可以为实现数据跟踪通信芯片的客户端设备的位置和朝向提供另一个精确层。外部定位系统是指可以从外部源直接或通过一个或多个硬件接口将数据发送到位置引擎的系统,并且这些系统没有集成在数据跟踪通信芯片中。外部定位系统可以包括例如全球导航卫星系统(gnss),蜂窝网络和短程通信系统。内部定位系统是指集成在数据跟踪通信芯片中的系统,或者可以通过利用存储在数据跟踪通信芯片中的数据的软件来计算,或者数据跟踪通信芯片可以访问(例如,在服务器上存储和计算或部分计算)的系统。

包括在外部定位系统中的gnss系统包括用于设备的全球定位的卫星。使用来自足够数量的卫星和诸如三角测量和三边测量的技术的信号,gnss可以计算设备的位置,速度,高度和时间。gnss可以包括几个卫星系统中的一个或多个,例如gps,bds,glonass,qzss,galileo和irnss。gnss系统可以包括配备有至少一个原子钟,无线电接收机和发射机,专用天线,一个或多个计算机和用于航向校正的小推进器的卫星星群。gnss系统可以包括控制段和用户段。控制段包括全球地面站,其跟踪卫星,然后向星群发送命令和数据,例如校正的轨道和时间信息,以便它们确保空间段的连续操作。用户段包括接收机设备和计算技术,用于计算由数据跟踪通信芯片执行的客户端设备的位置,速度和时间(pvt)数据。

包括在外部定位系统中的蜂窝网络可以包括现有的蜂窝网络结构,例如来自例如5g网络的mmw天线,或者进一步由4g蜂窝通信网络支持。在一些蜂窝网络实施例中,使用也称为极高频带的mmw频带。mmw频带跨越30-300ghz;然而,也可以包括从大约10到300ghz的相邻超高频,因为这些波类似于mmw传播。由于毫米波的极高频率,基于毫米波的天线或基于毫米波的天线和亚(sub)ghz天线系统的组合,是高度反射的,容易被墙壁或其它固体物体阻挡,因此在穿过树叶或在恶劣的天气条件下可能遭受显著衰减。因此,蜂窝网络天线可以包括布置在栅格图案中的小的mmw收发器,这可以帮助放大收集的能量,增加增益,并且在不增加发射功率的情况下降低功率损耗。本领域已知的技术,例如多输入,多输出,或mimo,可以用于在几个设备上同时分离波束或向单个设备发送多个数据流,从而提高服务质量(qos)。另外,天线可以覆盖在大约100米到大约2公里之间的相对小的区域,以确保毫米波的精确传播。

包括在外部定位系统中的短程通信系统可以包括无线局域网(wlan),例如以wi-fi商标名称销售的wlan,或者通过个人区域网(pan),例如以蓝牙,zigbee和超宽带(uwb)标准销售的pan。

内部定位系统包括诸如惯性数据的感测数据,以及包括3d结构数据和仿真数据的虚拟世界系统计算数据。

在一个实施例中,在一个或多个处理核心中实现的至少一个位置引擎从gnss获得定位数据,并通过硬连线算法(例如,三角测量或三角测量)计算包括数据跟踪通信芯片的客户端设备的初始相应位置。通过gnss获得的定位数据可以指位置,速度和时间(pvt)数据。由位置引擎从gnss获得的定位数据可以数据跟踪通信芯片用来计算客户端设备的初始位置,这可以通过本公开的其它方法进一步细化。如本领域已知的,仅通过gnss的定位有时在诸如城市区域和建筑物内部的复杂环境中可能是弱的或不够精确的。因此,数据跟踪通信芯片还通过定位由经由至少一个硬件接口与芯片连接的蜂窝定位系统无线发送的数据来增强初始位置。经由蜂窝定位的定位数据细化可以由经由一个或多个硬件接口经由诸如到达时间(toa),到达角(aoa)和发射角(aod)的方法连接到数据跟踪通信芯片的通信单元来执行。

在另一个实施例中,为了在短距离或室内情况下定位,可以通过来自诸如wlan和pan的短程通信系统的定位数据来进一步增强定位数据。在其它实施例中,可以通过由至少一个位置引擎经由一个或多个陀螺仪获得的定向数据来进一步增强精确的定位数据,使得位置引擎能够计算相应客户端设备的6dof位置和朝向。

在替代实施例中,通过本领域已知的其它技术来增强gnss,例如通过差分gps(dgps),基于卫星的增强系统(sbas),实时运动学(rtk)系统。

在进一步的实施例中,通过上述方法中的一个或多个获得的6自由度位置和朝向可以进一步通过存储在虚拟世界系统中的现实世界对象的3d结构来增强,虚拟世界系统存储在服务器上并在其上计算;通过来自游戏和/或仿真引擎的仿真数据来增强;或其组合来增强。虚拟世界系统包括现实世界的数字版本,包括现实世界坐标,例如现实世界对象的位置,朝向,尺度和维度,物理特性,以及实时3d虚拟副本形式的每个现实对象的3d结构。因此,由游戏和/或仿真引擎处理的3d应用相对于现实世界的虚拟副本位于虚拟世界系统内。

因此,使用来自gnss的定位和利用多种其它方法中的一种或多种进一步细化数据,硬连线位置引擎可以计算实现芯片的客户端设备的6dof位置和朝向。然后,游戏和/或仿真引擎使用该6dof位置和朝向,以便驱动在其上执行的3d应用的操作,例如用于在用户的视野中精确地呈现3d内容。6dof位置和朝向也可以与其它系统共享。

在示例性实施例中,位置引擎被配置为从全球导航卫星系统(gnss)获取第一定位数据,并通过一个或多个硬接线算法计算客户端设备的初始位置和朝向。位置引擎还被配置为基于通过至少一个硬件接口从蜂窝定位系统接收的第二定位数据、基于从一个或多个短程通信系统接收的第三定位数据、以及基于从一个或多个陀螺仪接收的朝向数据,来增强初始位置和朝向。位置引擎还被配置为执行虚拟世界系统计算,获得细化的6自由度(6dof)位置和朝向,可用于由芯片上的一个或多个游戏引擎和/或仿真引擎执行的3d应用的操作。在实施例中,多个处理核心中至少有一个实现了通信引擎,通过通信引擎接收第二定位数据和第三定位数据。

数据跟踪通信芯片所需的精确度水平,以及由此由位置引擎执行的位置和朝向细化迭代的次数,可以取决于可能需要定位服务的应用的类型。例如,与医疗领域或自主驾驶有关的应用可能在人类生活可能处于危险的地方,可能需要比与视频游戏或娱乐有关的应用更高水平的精确度。然而,在所提供的所有实施例中,可以以连续的速率提供由位置引擎计算的位置和朝向。因此,在本公开的一些实施例中,用于提供位置引擎以计算客户端设备的高度精确的6自由度位置和朝向的不同定位系统被配置为实现不同的互补定位更新速率,其可以用于补偿通常缺少定位数据的时段,从而根据应用的情况和优先级来提高定位的可用性,完整性,连续性和精确性的百分比。此外,从多个源获得数据的多个定位方法的集成补充了来自每个系统的典型错误,并且在来自一个系统的故障的情况下,数据跟踪通信芯片可以激活剩余系统中的一个或多个以提供该故障。

贯穿本申请使用的动词"实现"是针对硬件中的实现。因此,处理核心可以包括多个电子电路,这些电子电路被配置成实现这里描述的至少一个部件的多个功能。电子芯片的一个或多个处理核心不应被解释为能够执行至少一个组件(例如,软件游戏和/或仿真引擎,位置引擎,陀螺仪等)的指令的中央处理单元。相反,一个或多个处理核心是实现或实施硬件中的至少一个组件的功能的专用电子电路。因此,游戏和/或仿真引擎也可以被称为硬件游戏和/或仿真引擎,或者被称为硬连线游戏和/或仿真引擎,或者被称为片上游戏和/或仿真引擎。位置引擎也可以被称为硬件位置引擎,硬连线位置引擎,或芯片上位置引擎。同样,陀螺仪可以被称为硬件陀螺仪,硬连线陀螺仪,或者被称为芯片上陀螺仪。因此,电子芯片可以被称为片上引擎(eoc)或引擎处理单元(epu)。处理核心可以将一个或多个部件实现为实现相应功能的多个硬连线电子电路,其可以根据任何合适的生产过程来布置或组装。此外,配置的现场可编程门阵列(fpga)可用于在硬件中实现游戏和/或仿真引擎,位置引擎或两者。电子芯片可以作为集成电路提供,该集成电路将硬连线游戏和/或仿真引擎和位置引擎的所有组件和功能集成到单个芯片或多个芯片中。相同的原理可应用于在本公开的其它实施例中描述的其它片上部件。

电子芯片的处理核心可以被认为是电子芯片的电子电路的功能单元或模块。例如,一个或多个处理核心中的至少一个可以实现为fpga或实现专用功能的任何其它形式的集成电路。因此,所述电子芯片包括实现所述一个或多个处理核心中的至少一些的至少一个集成电路,其中所述处理核心中的至少一个实现所述硬连线游戏和/或仿真引擎,其中所述处理核心中的至少一个实现所述位置引擎,并且其中所述处理核心中的至少一个实现陀螺仪。

至少一个硬件接口实现与所述一个或多个处理核心的直接交互。硬件接口可以实现为电子芯片的至少一个集成电路的一部分。然而,硬件接口也可以实现为一个或多个提供与处理核心接口的功能的其它集成电路。例如,硬件接口可以使外部蜂窝定位系统能够向芯片提供通信,并且还能够提供蜂窝跟踪数据作为输入数据,以细化包括一个或多个芯片的客户端设备的定位。

至少一个陀螺仪核心可以是微机电系统(mems)陀螺仪,其可以适于被制造为集成电路上的处理核心,例如根据本公开的实施例的电子芯片上的处理核心。mems是由尺寸在1和100微米之间(即,0.001至0.1mm)的部件组成的微观器件,并且mems器件的尺寸通常在20微米至毫米(即,0.02至1.0mm)的范围内。mems陀螺仪使用振动结构陀螺仪的原理,其使用振动结构来确定转速。基本的物理原理是,即使振动物体的支撑旋转,振动物体也倾向于在同一平面内继续振动。科里奥利效应使得物体在其支撑件上施加力,并且通过测量该力可以确定转速。mems陀螺仪可以使用一个或多个机构的光刻构造版本,例如本领域已知的各种设计的音叉,振动轮或谐振固体。

位置引擎可以利用诸如扩展卡尔曼滤波器(ekf)之类的算法来组合外部定位系统的绝对定位和陀螺仪的相对定位,从而获得实现一个或多个跟踪数据通信芯片的设备的非常低的误差,高度精确的6dof位置和朝向。卡尔曼滤波器(也称为线性二次估计(lqe))是一种算法,其使用随时间观察到的一系列测量,包括统计噪声和其它不精确性,并且通过估计每个时间帧的变量上的联合概率分布,产生未知变量的估计,该未知变量比单独基于单个测量的未知变量更倾向于精确。例如,位置引擎可以使用基于将原始gnss数据与原始陀螺仪(或其它ins系统)数据合并的紧密耦合的gnss/ins集成算法。原始gnss观测,例如伪距离和载波相位,可以用于这种集成。因此,位置引擎可以被认为是芯片上的,硬连线的融合传感器核心,其被配置成实现来自多个数据源的硬连线算法的位置和朝向,用于融合定位数据并获得由硬连线游戏和/或仿真引擎在3d应用的操作期间使用的高度精确的6自由度位置和朝向,或者用于与其它系统共享。

硬连线游戏和/或仿真引擎被配置为对输入数据执行一个或多个任务,从而生成数据集。硬连线游戏和/或仿真引擎可以在实现硬连线算法和代码功能的核心上实现,该核心可以应用于数据。即使对于立体显示,这也可以在2d,3d或4d(3d+时间)中实现更快的图形或仿真结果。输入数据可以由用户通过适当的编程接口输入,由经由至少一个硬件接口通信地连接到电子芯片的一个或多个外部感测机构捕获,或其任何组合。感测机构可以包括但不限于光学传感器,惯性传感器或其组合。输入数据可以包括图像数据,3d几何形状,视频数据,音频数据,文本数据,触觉数据,时间数据,位置和朝向数据中的一个或多个,或它们的任意组合。在一些实施例中,硬连线游戏和/或仿真引擎从位置引擎接收6dof位置和朝向数据,并且在3d应用的处理期间继续使用该数据。例如,可以提供来自要求用户的高度精确的位置和朝向的ar或vr视频游戏的媒体流,使得相对于用户的位置和朝向精确地呈现用户视野中的每个对象,而与室内或室外无关。

在一些实施例中,由硬连线游戏和/或仿真引擎对输入数据执行的一个或多个任务可以由游戏和/或仿真引擎定义并反映游戏和/或仿真引擎的功能。电子芯片可以根据其功能暴露用于控制游戏和/或仿真引擎的接口。在一些实施例中,可以经由片上游戏和/或仿真引擎的接口来发起一个或多个任务。一个或多个任务可以在视频游戏或其它应用的编程期间实时执行,但是也可以在应用运行时间(即,用户对应用的实际实时执行)期间执行,由此游戏和/或仿真引擎可以实时处理数据。在又一实施例中,所述一个或多个任务包括以下中的一个或多个:确定对象如何在其它对象上投射阴影,确定对象如何在其它对象中反射,或确定落在一个对象上的光如何照亮其它周围的对象。另外或作为替代,游戏和/或仿真引擎可以执行其它和进一步的任务,包括针对图形场景的仿真和/或呈现的任务,诸如图形场景的各个对象的仿真,图形场景的对象的特性的确定,图形场景的一个或多个对象的呈现等。游戏和/或仿真引擎可以进一步从位置引擎获得客户端设备位置和朝向数据,以便仿真位置和朝向数据,或者进一步预测客户端设备在不久的将来的位置和朝向。该实施例的一个例子可以是,仿真引擎可以用在自驱动车辆或无人机中实现的芯片中,以便预测它们的直接路径。预测可以通过获得自驱动车辆或无人机的当前位置,朝向,速度和加速度并使用这些数据内插它们的直接路径来执行。

另外或作为替代,游戏和/或仿真引擎可执行视口搜寻和覆盖(z-)缓冲搜寻中的一个或多个以确定对象的可见性,场景的体素化作为全局照明计算的准备步骤,用于全局照明的基于稀疏体素的锥体跟踪,肌肉纤维力学和肌肉骨骼蒙皮,用于生物力学肌肉建模的有限元方法。使用sph(平滑粒子流体动力学)的流体动力学用于涉及水体积,火山熔岩体积和天体物理效应的真实效应,其可能与星表,实时欧拉水仿真或真实植被动力学等的任何组合有关。

根据一个实施例,数据跟踪通信芯片还包括存储器,该存储器被配置为存储数据并将该数据提供给一个或多个处理核心。例如,位置引擎可以将位置和朝向数据存储在存储器中,以便游戏和/或仿真引擎从存储器中检索数据,然后在3d应用任务处理期间使用数据。可使用寄存器或寄存器组来控制存储器的特性,以指示所存储的数据的特性和/或控制一个或多个处理核心的操作。在其它实施例中,数据可存储在主机系统的外部主存储器中,其可经由片上存储器控制器的一个或多个端口来存取。

在替代实施例中,一个或多个处理核心实现被配置成帮助处理游戏引擎和/或仿真数据以及客户端设备位置和朝向计算的一个或多个cpu。因此,所述至少一个处理核心可以是通过执行基本算术,逻辑,控制和输入/输出(i/o)操作来执行计算机程序的指令的电子电路。中央处理单元的功能可以与现有cpu的功能相同或相似。中央处理单元可以允许直接在电子芯片上根据指令集体系结构执行软件。软件可以专用于游戏和/或仿真引擎和/或位置引擎的处理。然而,应当理解,中央处理单元不限于仅处理游戏和/或仿真引擎和位置智能引擎,而是可以执行可以利用电子芯片的功能的任何类型的软件。电子电路可以包括任何组合的单个电子芯片上的至少一个相应的微控制器,微处理器或数字信号处理器(dsp)。为了实现中央处理单元的操作,电子芯片还可以包括存储器块,例如rom,ram,eeprom和/或闪存的选择,包括振荡器和锁相环的定时源,包括计数器定时器的外围设备,实时定时器和上电复位发生器,外部接口,例如usb,火线,以太网,spi。等等,仿真接口包括任意组合的电子芯片上的adc和dac,电压调节器和功率管理电路。这些部件中的一些可以形成实施至少一个处理核心的电子电路的一部分,至少一个处理核心实现中央处理单元,而其它部件可以是由实现期望功能的一个或多个电子电路所实施的数据跟踪通信芯片的单独的和专用的部件。游戏和/或仿真引擎和位置引擎可以直接耦合到中央处理单元和/或可以利用缓冲器或存储器在中央处理单元和游戏和/或仿真引擎或位置引擎之间交换数据。中央处理单元还可以包括直接耦合到硬连线游戏和/或仿真引擎和位置引擎的其它接口。通过使用专用数据链路和/或缓冲器将游戏和/或仿真引擎和位置引擎耦合到中央处理单元,由于数据交换可以经由短数据链路来执行,并且不需要实现复杂的数据交换协议,因此可以大大提高和优化数据交换速度和吞吐量。

在另一实施例中,多个处理核心实施多个中央处理单元,每一中央处理单元经配置以执行不同指令集架构的指令。因此,电子芯片可以在单独的中央处理单元上执行软件,该中央处理单元可以被编译用于不同的系统,包括但不限于个人计算机系统中常用的intel的x86体系结构,以及基于arm指令集的系统,该arm指令集通常用于移动电话和平板电脑中。因此,该电子芯片可以在异构环境中使用,该异构环境为宽范围的软件提供对明确定义的游戏和/或仿真引擎接口的统一访问,而不需要使该软件适应特定的指令集体系结构。

在另一替代实施例中,游戏和/或仿真引擎和位置引擎经配置以经由硬件接口与外部cpu或gpu传送数据。游戏和/或仿真引擎和位置引擎可以经由至少一个硬件接口从诸如cpu或gpu的外部实体接收数据。游戏和/或仿真引擎和位置引擎可以经由硬件接口将处理后的数据发送到外部实体或另一外部实体。硬件接口可以是总线接口或外部接口。可将经处理的数据提供到外部cpu或gpu以用于在目标显示器上进一步处理和/或渲染。

在又一替代实施例中,处理核心中的至少一个(以硬件形式)实施图形处理单元(gpu)。因此,gpu可被视为电子芯片上的硬连线图形处理单元。所述至少一个硬件接口可包括媒体接口,例如hdmi等,其可向显示器或屏幕提供由片上图形处理单元呈现的数据。然而,应了解,gpu还可经由硬件接口与宿主系统的总线或其它互连介接以提供所渲染的数据以供显示。

在又一实施例中,游戏和/或仿真引擎和位置引擎经配置以产生用于gpu的数据。游戏和/或仿真引擎和位置引擎可以预处理输入数据,该输入数据可以适于在gpu的专用硬件上进行处理,这可以包括本领域已知的simd处理或矢量处理。预处理后的数据可以被提供给片上gpu,其可以进一步处理数据和/或基于预处理后的数据生成图形场景的最终渲染。gpu还可以将结果提供给游戏和/或仿真引擎以及位置引擎以用于进一步处理。因此,游戏和/或仿真引擎和位置引擎可准备数据或数据集并将特定任务卸载到gpu以利用gpu功能性或gpu的专用硬件。

在一些实施例中,游戏和/或仿真引擎和位置引擎可以将预处理的数据存储在存储器中,并且可以向片上gpu发出命令以读取和进一步处理数据。片上图形处理单元可以使用存储器或不同的通信信道来将结果传送到硬连线游戏和/或仿真引擎和/或位置引擎。寄存器或寄存器组可用于控制存储器的特性,以指示所存储的数据的特性和/或控制片上gpu的操作。

根据一个实施例,所述一个或多个处理核心中的至少一个还实现惯性测量单元(imu),该惯性测量单元(imu)被配置为向所述位置引擎提供进一步的6自由度位置和朝向数据,以进一步细化所述定位数据。imu被配置为通过使用加速度计和陀螺仪的组合来测量和报告客户端设备的速度,加速度,角动量,平移速度,旋转速度和其它数据。imu可以是memsimu。imu内的加速度计可以被配置为测量装置的加速度,包括由于地球重力场引起的加速度。在一个实施例中,imu内的加速度计可以包括能够在三个正交方向上测量加速度的三轴加速度计。在其它实施例中,可以在imu内包括一个,两个,三个或更多个单独的加速度计。

根据一个实施例,所述一个或多个游戏和/或仿真引擎以及所述位置引擎被耦合到单个引擎处理核心,在此被称为引擎核心。引擎核心可以在游戏和/或仿真引擎以及位置引擎的硬件中在单个公共硬件处理核心上提供功能,这可以通过启用经由短数据链路的快速通信来减少处理时间。

根据一个实施例,游戏和/或仿真引擎被细分为专用硬件组件,该专用硬件组件包括3d结构和物理引擎以及在单个引擎处理核心上实现的仿真处理器。3d结构和物理处理器可以被配置为执行3d数据算法,以便确定给定表面的几何形状的真实近似以及将图像处理成合适的数据结构(例如,八叉树,四叉树,bsp树,稀疏体素八叉树,3d阵列和k-d树)。3d结构和物理处理器还可以被配置成执行提供某些物理系统的近似仿真的算法,所述物理系统例如是刚体动力学(包括碰撞检测和人群操纵),软体动力学,质量粒子动力学和流体动力学。

根据一个实施例,游戏和/或仿真引擎还被细分为在单个引擎处理核心上实现的专用渲染引擎,渲染引擎被配置为对数据执行渲染算法,以便合成图像,从而生成真实感3d模型。

在替换实施例中,数据跟踪通信芯片的一个或多个处理核心中的至少一个实现位置和通信引擎,该位置和通信引擎被配置成从蜂窝定位系统接收天线信号,并由此通过诸如toa,aoa和aod的方法来计算客户端设备的位置。位置和通信引擎还可以从陀螺仪接收定向数据,以进一步改进已经计算的定位数据。位置和通信引擎可以接收另外的imu数据以细化定位数据并计算精确的6自由度客户端设备位置,从而驱动由至少一个游戏和/或仿真引擎执行的3d应用的操作。位置和通信处理核心可以包括专用硬件,该专用硬件包括一个或多个专用接收机,发射机或收发机,用于从蜂窝电信网络天线,短距离跟踪系统或其组合接收和发送通信信号。在进一步的实施例中,可以通过存储在虚拟世界系统中的现实世界对象的3d结构,通过来自游戏和/或仿真引擎的仿真数据,或它们的组合来进一步增强6自由度的位置和朝向。

在示例性方案中,位置和通信引擎被配置为通过硬件接口从蜂窝定位系统获取第一定位数据并计算客户端设备的初始位置和朝向。位置和通信引擎被配置为基于从一个或多个短程通信系统接收的第二定位数据和从一个或多个陀螺仪接收的朝向数据,并通过执行虚拟世界系统计算,从而获得细化的6自由度(6dof)位置和朝向,来增强初始位置和朝向,可用于由芯片上的一个或多个游戏引擎和/或仿真引擎执行的3d应用的操作。

在另一个实施例中,根据本公开的实施例,位置和通信引擎在硬件中实现包括一个或多个数据跟踪通信芯片的宿主设备的用户之间的分布式基于账本的通信流水线。基于分布式账本的通信流水线可以通过使用密码术允许以安全和准确的方式使用密码"密钥"和密码签名来存储信息,从而实现用户之间通过分散式网络的直接通信。一旦该信息被存储,该数据就变成一个不变的数据库,并由网络的规则管理。

在其它实施例中,数据跟踪通信芯片包括位置引擎和通信单元作为单独的组件,例如单独的处理核心。在其它实施例中,位置引擎和通信单元可以被配置在单个epu中。在该实施例中,其他组件(游戏和/或仿真引擎,惯性传感器,存储器,可选的cpu和/或gpu等)和每个的操作可以如本公开的实施方案中所述。

在一些实施例中,可以通过至少一个硬件接口,通过gnss网络的位置引擎或通过通信引擎或使用蜂窝通信网络或短程通信系统的位置和通信引擎中的任一个共享所计算的6自由度定位数据。

根据一个实施例,数据跟踪通信芯片被实现为片上系统(soc)。

根据实施例,芯片组件包括至少一个芯片,其中,所述至少一个芯片包括一个或多个处理核心;以及至少一个硬件接口,其耦合到所述一个或多个处理核心中的至少一个,其中所述一个或多个处理核心中的至少一个通过专用电子电路实现硬件中的游戏和/或仿真引擎,其中所述一个或多个处理核心中的至少一个通过专用电子电路实现硬件中的位置引擎,且其中所述一个或多个处理核心中的至少一个实现陀螺仪。在另一个实施例中,一个或多个处理核心中的至少一个实现imu。在另一个实施例中,一个或多个处理核心中的至少一个实现位置和通信处理核心。在另一个实施例中,一个或多个处理核心中的至少一个实现通信引擎。在另一个实施例中,所述至少一个芯片还包括存储器。在另一实施例中,所述一个或多个处理核心中的至少一个实现cpu和/或gpu或连接到一个或多个外部cpu和/或gpu。在另一个实施例中,位置引擎(或替代的位置和通信引擎或通信引擎)和游戏和/或仿真引擎在单个引擎核心上实现。在另一个实施例中,游戏和/或仿真引擎被细分为专用硬件组件,该专用硬件组件包括3d结构和物理引擎以及在单个引擎处理核心上实现的仿真处理器。在另一个实施例中,游戏和/或仿真引擎被进一步细分为在单个引擎处理核心上实现的专用呈现引擎。

根据实施例,一种计算设备包括至少一个数据跟踪通信芯片,其中所述至少一个芯片包括一个或多个处理核心和耦合到所述一个或多个处理核心中的至少一个的至少一个硬件接口,其中所述一个或多个处理核心中的至少一个通过专用电子电路以硬件实现游戏和/或仿真引擎,并且其中所述一个或多个处理核心中的至少一个通过专用电子电路以硬件实现位置引擎;输入/输出模块,被配置为向所述至少一个芯片输入数据并基于由所述至少一个芯片提供的数据显示数据;以及一个或多个感测机构,所述一个或多个感测机构被配置为捕获传感器数据并将所述数据提供给所述一个或多个处理核心。在另一个实施例中,一个或多个处理核心中的至少一个执行imu。在另一个实施例中,一个或多个处理核心中的至少一个执行位置和通信引擎。在另一个实施例中,一个或多个处理核心中的至少一个执行通信引擎。在替代实施例中,计算设备包括单独的通信单元。在另一个实施例中,计算设备的至少一个芯片还包括存储器。在另一实施例中,所述一个或多个处理核心中的至少一个实施cpu和/或gpu或连接到一个或多个外部cpu和/或gpu。在另一实施例中,所述一个或多个处理核心中的至少一个实现cpu和/或gpu或连接到一个或多个外部cpu和/或gpu。在另一个实施例中,位置引擎(或替代的位置和通信引擎或通信引擎)和游戏和/或仿真引擎在单个引擎核心上实现。在另一个实施例中,游戏和/或仿真引擎被细分为专用硬件组件,该专用硬件组件包括3d结构和物理引擎以及在单个引擎处理核心上实现的仿真处理器。在另一个实施例中,游戏和/或仿真引擎被进一步细分为在单个引擎处理核心上实现的专用呈现引擎。

根据一个实施例,一种实现数据跟踪通信的系统包括实现一个或多个数据跟踪通信芯片的至少一个客户端设备,所述数据跟踪通信芯片包括内部跟踪和通信系统;外部定位系统,经由一个或多个硬件接口通信地连接到数据跟踪通信芯片;以及服务器,存储并计算包括至少一个虚拟副本的虚拟世界系统,其中数据跟踪通信芯片通过使用来自外部和内部跟踪和通信系统的位置和朝向跟踪数据,从而驱动在服务器中的3d应用的操作,来计算和细化客户端设备6dof姿态。在进一步的实施例中,可以通过至少一个硬件接口,通过gnss网络的位置引擎或通过使用蜂窝通信网络或短程通信系统的通信引擎或的位置和通信引擎中的任一个来共享所计算的6自由度定位数据。

在一些实施例中,虚拟世界系统包括现实世界的情境丰富的虚拟版本,包括现实世界坐标,例如现实世界对象的位置,朝向,尺度和维度,物理属性,以及实时3d虚拟副本形式的每个现实对象的3d结构。服务器还可以存储被配置成使用户能够创建和编辑现实对象的实时3d虚拟副本的内容或虚拟副本编辑器。然而,虚拟世界系统还可以包括可能不存在于现实世界中的计算机生成的虚拟对象,例如纯虚拟的对象。通过内容编辑器创建的现实世界的虚拟副本可以由包括当前公开的数据跟踪通信芯片的设备通过网络访问,并且因此可以向芯片提供现实世界中的对象的3d结构数据,以用于这里描述的定位数据增强技术。

根据一个实施例,存储在服务器中的副本编辑器包括软件和硬件,其被配置为使用户能够对现实对象的实时3d虚拟副本进行建模和编辑。副本编辑器例如可以是计算机辅助绘图(cad)或计算机辅助工程(cae)软件,其可以存储输入和编辑虚拟副本所必需的数据和指令。副本编辑器可以实现与每个数字副本相关的显式数据和指令的输入,在一些实施例中,所述显式数据和指令是指描述形状,地点,位置和朝向,物理特性,3d结构以及每个实时3d虚拟副本和虚拟世界系统作为整体的预期功能和影响的数据和指令。通常,显式数据可以包括可能不是由感测机构获得的数据,而是可能需要通过副本编辑器数字地输入的数据,诸如建筑材料,壁厚,电气设备和电路,水管,灭火器,紧急出口,窗口位置,机器性能参数,机器传感器和阀位置等。本文所用的"指令"是指处理器所理解的代码(例如,二进制代码)。指令可以在虚拟副本上表示现实世界元素的行为。

用于将现实对象转换为具有显式数据和指令的实时3d虚拟副本并使它们在虚拟世界系统中可用的建模技术可以容易获得的基于现实对象的cad模型。例如,机器所有者可以向虚拟世界系统的管理员提供,或者可以输入他们机器的现有数字cad模型。类似地,建筑物拥有者可以向建筑物信息模型(bim)提供将被存储在服务器中的虚拟世界系统中的建筑物细节,其可以包括可能不可见或经由感测机制不容易获得的信息。在这些实施例中,这些现实对象的所有者可以负责将相应的实时3d虚拟副本添加到虚拟世界系统中,这可以例如通过激励系统或通过法律要求来实现。在一些实施例中,虚拟世界系统的管理员,政府官员或其他相关机构可以与现实对象的所有者协作,用于将实时3d虚拟副本输入到虚拟世界系统中,从而实现在服务器中更快速和更彻底的创建虚拟世界系统。在其它实施例中,雷达成像,例如合成孔径雷达,真实孔径雷达,avtis雷达,光检测和测距(lidar),逆孔径雷达,单脉冲雷达和其它类型的成像技术可以用于在将现实对象集成到虚拟世界系统之前映射和建模现实对象。与用于创建虚拟副本的建模技术无关,每个虚拟副本的信息应当提供关于每个对应的现实世界元素的足够的细节,使得每个现实世界对象的高度精确的实时3d虚拟副本是可用的。实时3d虚拟副本,只要可能,就通过多源数据(例如,多源传感器数据)被充实和同步。因此,每个或最实时的3d虚拟副本包括经由副本编辑器输入的显式数据和指令以及经由多个感测机制输入的多源数据。

根据实施例,一种实现在本公开的系统上实现的数据跟踪通信的方法可以通过在客户端设备上提供包括内部定位系统的至少一个数据跟踪通信芯片来开始;提供外部定位系统;数据跟踪通信芯片向外部定位系统的一个或多个系统请求无线无线电信号;数据跟踪通信芯片计算客户端设备的初始位置;从所述内部定位系统的一个或多个系统获取进一步的定位数据;计算细化的用户设备6的dof位置和朝向;以及由数据跟踪通信芯片基于所计算的6个自由度的位置和朝向来更新一个或多个3d应用。在一些实施例中,该方法还包括由数据跟踪通信芯片共享所计算的6自由度位置和朝向,这可以通过至少一个硬件接口,通过gnss网络的位置引擎,或通过使用蜂窝通信网络或短程通信系统的通信引擎或位置和通信引擎来完成。

在实施例中,一种方法包括:由客户端设备上的数据跟踪通信芯片请求来自一个或多个外部定位系统的无线无线电信号,其中,数据跟踪通信芯片包括内部定位系统;由数据跟踪通信芯片使用内部定位系统计算客户端设备的初始位置,其中,客户端设备的初始位置至少部分地基于从无线无线电信号获得的数据进行计算;通过计算客户端设备的6dof位置和朝向,来细化客户端设备的初始位置;以及通过数据跟踪通信芯片,根据计算出的客户端设备的6dof位置和朝向,来更新一个或多个3d应用。

以上概述不包括本公开的所有方面的详尽列表。预期本公开包括可以从以上概述的各个方面的所有合适的组合来实践的所有系统和方法,以及在以下详细描述中公开的那些以及在随本申请提交的权利要求书中具体指出的那些。这样的组合具有在以上概述中未具体陈述的特定优点。由附图和下面的详细描述,其它特点和优点将变得显而易见。

附图说明

参考以下描述和附图将更好地理解本公开的具体特征、方面和优点,其中:

图1a-1h示出了根据一个实施例的数据跟踪通信芯片的示意图,该数据跟踪通信芯片包括至少一个硬连线游戏和/或仿真引擎,一个或多个位置引擎以及一个或多个陀螺仪;

图2a-2h示出了根据一个实施例的数据跟踪通信芯片的示意图,该数据跟踪通信芯片包括至少一个硬连线游戏和/或仿真引擎,一个或多个通信单元以及一个或多个陀螺仪;

图3a-3h示出了根据一个实施例的数据跟踪通信芯片的示意图,该数据跟踪通信芯片包括至少一个硬连线游戏和/或仿真引擎,一个或多个位置引擎,一个或多个通信单元以及一个或多个陀螺仪。

图4a-4c示出了根据本公开的实施例的芯片组件的各种示例;

图5a-5b示出了实现本公开的电子芯片的计算设备;

图6示出了根据一个实施例的用于实现数据跟踪通信的系统的示意图;和

图7示出了根据一个实施例的实现数据跟踪通信的方法。

具体实施方式

在以下描述中,参考通过示例方式示出各种实施例的附图。此外,下面将通过参考几个实例来描述各种实施例。应当理解,在不脱离所要求保护的主题的范围的情况下,实施例可以包括设计和结构上的改变。

本公开描述了电子芯片,芯片组件,设备,系统和方法的实施例,其能够实现在游戏和/或仿真应用中使用的数据跟踪通信。本公开的电子芯片或芯片组件包括实现功能特定的硬连线引擎和其它部件的多个处理核心,当它们的功能通过基于硬件的算法被融合时,这些处理核心能够实现能够在多个应用中使用的准确的设备定位。然而,在以下描述的每个实施例中,至少一个处理核心还可以实现一个或多个片上cpu和/或gpu,或者可以通过至少一个硬件接口连接到一个或多个外部cpu和/或gpu,以便为一个或多个功能专用核心、或电子芯片或芯片组件的其它组件提供处理支持。

图1a-1h示出了数据跟踪通信芯片的示意图。

在图1a中,数据跟踪通信芯片100包括多个处理核心;以及耦合到多个处理核中的至少一个的至少一个硬件接口102,其中多个处理核心中的至少一个实现至少一个游戏和/或仿真引擎核心,本文简称为游戏和/或仿真引擎104,其中多个处理核心中的至少一个实现至少一个位置引擎核心,本文简称为位置引擎106,并且其中多个处理核心中的至少一个实现至少一个陀螺仪核心,本文简称为陀螺仪108。

在至少一个处理核心中实现的位置引擎106被配置成逐渐获得并融合来自不同源、并通过多种方法获得的位置和朝向数据,以便计算实现数据跟踪通信芯片100的客户端设备的高度精确的6自由度位置和朝向。在一些实施例中,位置引擎106可首先从外部定位系统内的一个或多个系统获得数据,外部定位系统可根据每种情况的需要,经由一个或多个硬件接口102向位置引擎提供数据或直接向位置引擎106提供数据。位置引擎106的每个位置计算为实现数据跟踪通信芯片100的客户端设备的实际位置提供另一精确层。在另一个实施例中,在至少一个处理核心中实现的位置引擎106还从内部定位系统获得位置和朝向数据,该内部定位系统可以为实现数据跟踪通信芯片100的客户端设备的位置和朝向提供另一个精确层。

在计算了初始位置和朝向之后,可以通过位置引擎对一个或多个另外的系统(例如来自外部定位系统或内部定位系统的系统)的请求来实现在每个随后的定位层处的定位数据增强。外部定位系统指的是可以直接或通过一个或多个硬件接口102将数据发送到位置引擎并且没有集成在数据跟踪通信芯片中的系统。外部定位系统可以包括全球导航卫星系统(gnss),蜂窝网络和短程通信系统。内部定位系统是指集成在数据跟踪通信芯片中的系统,或者可以通过利用存储在数据跟踪通信芯片100中的数据的软件来计算,或者数据跟踪通信芯片100可以访问(例如,在服务器上存储和计算或部分计算)的系统。

数据跟踪通信芯片100所需的精确度水平,以及由此由位置引擎106执行的位置和朝向细化迭代的次数,可以取决于可能需要定位服务的应用的类型。例如,与医疗领域或自主驾驶有关的应用可能在人类生活可能处于危险的地方,可能需要比与视频游戏或娱乐有关的应用更高水平的精确度。然而,在所提供的所有实施例中,可以以连续的速率提供由位置引擎106计算的位置和朝向。因此,在本公开的一些实施例中,用于提供位置引擎以计算客户端设备的高度精确的6自由度位置和朝向的不同定位系统被配置为实现不同的互补定位更新速率,其可以用于补偿通常缺少定位数据的时段,从而根据应用的情况和优先级来提高定位的可用性,完整性,连续性和精确性的百分比。

在一个实施例中,在一个或多个处理核心中实现的至少一个位置引擎106从全球导航卫星系统(gnss)获得定位数据,并计算包括数据跟踪通信芯片100的客户端设备的相应位置。通过gnss获得的定位数据可以指位置,速度和时间(pvt)数据。由位置引擎106从gnss获得的定位数据可以数据跟踪通信芯片100用于计算客户端设备的初始位置,这可以通过本公开的其它方法进一步细化。

如本领域已知的,仅通过gnss的定位有时在诸如城市区域和建筑物内部的复杂环境中可能是弱的或不够精确的。因此,数据跟踪通信芯片100还允许集成来自其它系统的定位以便增强gnss。因此,来自gnss的定位数据可以至少通过由经由至少一个硬件接口102连接到芯片的蜂窝定位系统(即,蜂窝网络)无线发送的定位数据来进一步增强。

在另一个实施例中,为了在短距离或室内环境中进行定位,可以通过来自短程通信系统的定位数据来进一步增强定位数据,短程通信系统例如是无线局域网(wlan),例如以wi-fi商标名称销售的wlan,或者通过个人区域网(pan),例如以蓝牙,zigbee和超宽带(uwb)标准销售的pan。

在其它实施例中,可以通过由至少一个位置引擎106经由一个或多个陀螺仪108获得的朝向数据来进一步增强细化的定位数据,使得位置引擎106能够计算相应客户端设备的6dof位置和朝向。

在进一步的实施例中,通过上述方法中的一个或多个获得的6自由度位置和朝向可以通过虚拟世界系统计算来进一步增加,所述虚拟世界系统计算包括存储在虚拟世界系统中的现实世界对象的3d结构计算,虚拟世界系统存储在服务器上并且在服务器上计算;来自游戏和/或仿真引擎104的仿真数据;或其组合。虚拟世界系统包括现实世界的数字版本,包括现实世界坐标,例如现实世界对象的位置,朝向,尺度和维度,物理特性,以及实时3d虚拟副本形式的每个现实对象的3d结构。因此,由游戏和/或仿真引擎104处理的3d应用相对于现实世界的虚拟副本位于虚拟世界系统内。

服务器610还可以存储被配置成使用户能够创建和编辑现实对象的实时3d虚拟副本的内容或虚拟副本编辑器(未示出)。然而,虚拟世界系统612还可以包括可能不存在于现实世界中的计算机生成的虚拟对象,例如纯虚拟的对象。通过内容编辑器创建的现实世界的虚拟副本可以由包括当前公开的数据跟踪通信芯片604的设备通过网络616访问,并且因此可以向该芯片提供现实世界中的对象的3d结构数据628,用于在此描述的定位数据增强技术。

因此,通过使用来自gnss的定位以及利用经由数据跟踪通信芯片100的一个或多个处理核心的一个或多个其他方法中的一个或多个来进一步细化数据,硬连线的位置引擎106可以计算实现数据跟踪通信芯片100的客户端设备的6dof位置和朝向。然后,游戏和/或仿真引擎104使用6dof位置和朝向,以便驱动在其上执行的3d应用的操作,例如用于在用户的视野中精确地呈现3d内容。在另一个实施例中,位置引擎106中的一个或多个还可以经由gnss(假设gnss的卫星系统允许双向通信,例如通过bds)或者经由硬件接口102通过移动网络共享6dof位置和朝向。

根据一个实施例,数据跟踪通信芯片100还包括存储器110,其被配置为存储数据并将数据提供给一个或多个处理核心。例如,位置引擎106可以将位置和朝向数据存储在存储器110中,用于游戏和/或仿真引擎104从存储器110检索数据,然后在3d应用任务处理期间使用该数据。可使用寄存器或寄存器组来控制存储器110的特性,以指示所存储的数据的特性和/或控制一个或多个处理核心的操作。在其它实施例中,数据可存储在主机系统的外部主存储器中,其可经由片上存储器控制器的一个或多个端口来存取。除了永久存储器之外,存储器110还可以包括临时存储器。

gnss系统包括用于设备的全球定位的卫星网络。使用来自足够数量的卫星和诸如三角测量和三边测量的技术的信号,gnss可以计算设备的位置,速度,高度和时间。gnss可以包括几个卫星系统中的一个或多个,例如gps,bds,glonass,qzss,galileo和irnss。在实施例中,外部定位系统由辅助gnss(agnss)通过现有蜂窝通信网络的架构来增强,其中现有架构包括来自例如5g网络的mmw天线,经由诸如到达时间(toa),到达角(aoa)和出射角(aod)的方法。在其它实施例中,外部跟踪系统还由4g蜂窝通信网络支持。在一些实施例中,经由wi-fi对gnss的增强可以包括提供60ghz数据的wi-fi系统。在替代实施例中,通过本领域已知的其它技术来增强gnss,例如通过差分gps(dgps),基于卫星的增强系统(sbas),实时运动学(rtk)系统。

因此,当前提供了gnss的片上硬件实现,当与定位数据蜂窝定位系统(例如但不限于5g网络),短程通信系统,惯性导航系统(ins)(例如,陀螺仪108)融合时,或者软件计算和仿真可导致可由片上游戏和/或仿真引擎104使用的高度精确的6自由度位置和朝向计算,以计算高质量和高质量。用于多个3d应用的用户的精确的基于位置的媒体内容。

位置引擎106可以利用诸如扩展卡尔曼滤波器(ekf)之类的算法来组合外部定位系统的绝对定位和陀螺仪108的相对定位,从而获得实现一个或多个跟踪数据通信芯片100的设备的非常低的误差,高度精确的6dof位置和朝向。卡尔曼滤波器(也称为线性二次估计(lqe))是一种算法,其使用随时间观察到的一系列测量,包括统计噪声和其它不精确性,并且通过估计每个时间帧的变量上的联合概率分布,产生未知变量的估计,该未知变量比单独基于单个测量的未知变量更倾向于精确。例如,位置引擎106可以使用基于将原始gnss数据与原始陀螺仪(或其它ins系统)数据合并的紧密耦合的gnss/ins集成算法。诸如伪距离和载波相位之类的原始gnss观测可以用于这种集成。因此,位置引擎106可以被认为是芯片上的,硬连线的融合传感器核心,其被配置成实现来自多个数据源的用于融合定位数据的位置和朝向硬连线算法,并且在3d应用的操作期间或者与其它系统共享期间由硬连线游戏和/或仿真引擎104获得用于我们的高度精确的6dof位置和朝向。

至少一个硬件接口102实现与一个或多个处理核心的直接交互。硬件接口102可以实现为数据跟踪通信芯片100的至少一个集成电路的一部分。然而,硬件接口102也可以实现为提供与处理核心对接的功能的一个或多个其它集成电路。例如,硬件接口102可以使外部蜂窝定位系统能够向芯片提供通信,并且还能够提供蜂窝跟踪数据作为输入数据,以细化包括一个或多个数据跟踪通信芯片100的客户端设备的定位。

至少一个陀螺仪108可以指微机电系统(mems)陀螺仪108,其可以适于被制造为集成电路上的处理核心,例如根据本公开的实施例的数据跟踪通信芯片100上的处理核心。mems是由尺寸在1和100微米之间(即,0.001至0.1mm)的部件组成的微观器件,并且mems器件的尺寸通常在20微米至一毫米(即,0.02至1.0mm)的范围内。mems陀螺仪使用振动结构陀螺仪的原理,其使用振动结构来确定转速。基本的物理原理是,即使振动物体的支撑旋转,振动物体也倾向于在同一平面内继续振动。科里奥利效应使得物体在其支撑件上施加力,并且通过测量该力可以确定转速。mems陀螺仪可以使用一个或多个机构的光刻构造版本,例如本领域已知的各种设计的音叉,振动轮或谐振固体。

在一些实施例中,硬连线游戏和/或仿真引擎104被配置为对输入数据执行一个或多个任务,从而生成数据集。在实施例中,硬连线游戏和/或仿真引擎104可以在实现硬连线算法和代码功能的处理核心上实现,该硬连线算法和代码功能可以应用于数据。即使对于立体显示,这也可以在2d,3d或4d(3d+时间)中实现更快的图形或仿真结果。输入数据可以由用户通过适当的编程接口输入,由经由至少一个硬件接口102通信地连接到数据跟踪通信芯片100的一个或多个外部感测机构捕获,或其任何组合。输入数据可以包括图像数据,3d几何形状,视频数据,音频数据,文本数据,触觉数据,时间数据,位置和朝向数据中的一个或多个,或它们的任意组合。在一些实施例中,硬连线游戏和/或仿真引擎104从位置引擎106接收6dof位置和朝向数据,并且在3d应用的处理期间继续使用该数据。例如,可以提供来自要求用户的高度精确的位置和朝向的ar或vr视频游戏的媒体流,使得相对于用户的位置和朝向精确地呈现用户视野中的每个对象,而与室内或室外无关。

在一些实施例中,由硬连线游戏和/或仿真引擎104对输入数据执行的一个或多个任务可以由游戏和/或仿真引擎104定义并反映游戏和/或仿真引擎104的功能。电子芯片可以根据其功能而暴露用于控制游戏和/或仿真引擎104的接口。在一些实施例中,可以经由片上游戏和/或仿真引擎104的接口来发起一个或多个任务。一个或多个任务可以在视频游戏或其它3d应用的编程期间实时执行,但是也可以在应用运行时间(即,用户对应用的实际实时执行)期间执行,由此游戏和/或仿真引擎104可以实时处理数据。在又一实施例中,一个或多个任务包括以下中的一个或多个:确定对象如何在其它对象上投射阴影,确定对象如何在其它对象中反射,或确定落在一个对象上的光如何照亮其它周围的对象。另外或作为替代,游戏和/或仿真引擎104可以执行其它和进一步的任务,包括针对图形场景的仿真和/或呈现的任务,诸如图形场景的各个对象的仿真,图形场景的对象的特性的确定,图形场景的一个或多个对象的呈现等。游戏和/或仿真引擎104可以进一步从位置引擎106获得客户端设备位置和朝向数据,以便仿真和进一步预测客户端设备的位置和朝向。作为示例,仿真引擎可以用在自驱动车辆或无人机中实现的芯片中,以便预测它们的直接路径。预测可以通过获得自驱动车辆或无人机的当前位置,朝向,速度和加速度并使用这些数据内插它们的直接路径来执行。

另外或作为替代,游戏和/或仿真引擎104可执行视口搜寻和覆盖(z-)缓冲搜寻中的一个或多个,以确定对象的可见性,场景的体素化作为全局照明计算的准备步骤,用于全局照明的基于稀疏体素的锥体跟踪,肌肉纤维力学和肌肉骨骼蒙皮,用于生物力学肌肉建模的有限元方法,使用sph(平滑粒子流体动力学)的流体动力学用于涉及水体积,火山熔岩体积和天体物理效应的真实效应,其可能与星表,实时欧拉水仿真或真实植被动力学等的任何组合有关。

图1b-1h可以包括与图1a类似的元件,因此可以包含相同或类似的附图标记。

图1b描述了数据跟踪通信芯片100b的实施例,其中一个或多个处理核中的至少一个进一步实现惯性测量单元(imu)112。

imu112被配置为向位置引擎106提供6自由度的位置和朝向数据,以进一步细化定位数据。imu112被配置为通过使用加速度计和陀螺仪的组合来测量和报告客户端设备的速度,加速度,角动量,平移速度,旋转速度和其它数据。imu112可以是memsimu112。imu112内的加速度计可以被配置为测量包括数据跟踪通信芯片100b的设备的加速度,包括由于地球重力场引起的加速度。在一个实施例中,imu112内的加速度计可以包括能够在三个正交方向上测量加速度的三轴加速度计。在其它实施例中,可在片上imu112内包括一个,两个,三个或更多个单独的加速度计。数据跟踪通信芯片100b的每个其它组件(例如,游戏和/或仿真引擎104,位置引擎106,陀螺仪108,存储器110和硬件接口102)的附加功能可以类似于参考图1a的描述中的功能。

图1c描绘了实施例,其中数据跟踪通信芯片100c利用专用的位置引擎106实现游戏和/或仿真引擎104,由此实现由至少一个公共处理核心或引擎核心114上的专用电子电路来执行。在单个公共硬件处理核心上提供游戏和/或仿真引擎104和定位引擎106可以通过启用经由短数据链路的快速通信来减少处理时间。另外,实现专用于单个游戏和/或仿真引擎104的位置引擎106可以提高效率,因为位置引擎106可能只需要处理来自位置引擎106专用的游戏和/或仿真引擎104的数据。数据跟踪通信芯片100c的游戏和/或仿真引擎104和位置引擎106中的每一个以及其余部件(陀螺仪108,存储器110和硬件接口102)的附加功能可以类似于参考图1a的描述中的功能。

图1d描绘了实施例,其中数据跟踪通信芯片100d显示了与图1c的数据跟踪通信芯片100c的特征相同的特征,但是其中一个或多个处理核心中的至少一个进一步实现了具有与参考图1b的imu112所描述的功能相同的功能的imu112,进一步向位置引擎106提供6dof位置和朝向数据,以用于更精确的设备定位。

图1e描绘了跟踪的数据通信芯片100e的实施例,其中参照图1a-d描述的游戏和/或仿真引擎104被进一步细分为专用硬件组件,该专用硬件组件包括在单个引擎核心114上实现的3d结构和物理引擎116和仿真引擎118。3d结构与物理引擎116可经配置以执行硬连线3d数据算法,以便确定给定表面的几何形状的可靠近似并将图像处理成合适的3d数据结构(例如,八叉树,四叉树,bsp树,稀疏体素八叉树,3d阵列和k-d树)。3d结构和物理引擎116还可以被配置成执行提供某些物理系统的近似仿真的算法,所述物理系统例如是刚体动力学(包括碰撞检测和人群操纵),软体动力学,质量粒子动力学和流体动力学等。

仿真引擎118包括专用硬件电路,该专用硬件电路被配置成实现用于将现实世界对象的行为,功能和抽象或物理特性仿真成位于虚拟世界系统中的虚拟副本的算法,并预测这些特性和行为。仿真引擎可以通过各种方法获得与每个现实世界对象相关的多个数据,例如通过经由可以是计算机辅助绘图(cad)软件或其它类似系统的一部分的虚拟副本编辑器输入数据集,通过输入能够用于充实和/或补充输入数据的每个现实世界对象的数据(例如,传感器数据),或者通过使用它们的组合。例如,可以通过输入建筑信息模型(bim)来获得现实世界对象数据,该模型提供了与建筑物的外观和操作相关的多个特征。在另一示例中,可以通过输入提供与汽车的外观和操作相关的多个特征的汽车的虚拟模型来获得现实世界对象数据。在另一个例子中,雷达成像,例如合成孔径雷达,真实孔径雷达,光检测和测距(lidar),逆孔径雷达,单脉冲雷达和其它类型的成像技术,可以用于在将现实世界实体集成到虚拟世界之前对现实世界实体进行建图和建模。

仿真引擎118还可以从位置引擎106获得客户端设备位置和朝向数据,以便仿真或进一步预测包括数据跟踪通信芯片100e的客户端设备的位置和朝向。

通过为在单个引擎核心114上实现的各个3d结构和物理引擎116和仿真引擎118中的每一个实现专用电路,这些组件中的每一个的功能被增强,这是因为为它们的特定功能分配了专用硬件。这可以导致引擎核心114为游戏和/或仿真引擎104提供增强的功能,并具有增强的定位能力以用于多个应用。

图1f描绘了类似于图1e的数据跟踪通信芯片100e的数据跟踪通信芯片100f的另一个实施例,但是其中一个或多个处理核心中的至少一个实现了具有与参考图1b的imu112所描述的功能相同的功能的imu112,向位置引擎106提供另外的6dof位置数据以用于更准确的设备定位。

图1g描绘了类似于数据跟踪通信芯片100f的数据跟踪通信芯片100g,但是其中游戏和/或仿真引擎104除了参考图1e描述的3d结构和物理引擎116和仿真引擎118之外,还被细分为在单个引擎处理核心上实现的专用渲染引擎120,渲染引擎120被配置为对数据执行渲染任务,以便合成图像,从而生成真实感的3d模型。

图1h描绘了类似于图1g的数据跟踪通信芯片100g的数据跟踪通信芯片100h,但是其中一个或多个处理核心中的至少一个进一步实现了具有与参考图1b的imu112所描述的功能相同的功能的imu112,从而向位置引擎106提供了用于更精确的设备定位的另外的6dof位置数据。

图2a-2h示出了数据跟踪通信芯片的其它实施例的示意图,其中,代替参照图1a-1e所述的位置引擎106,数据跟踪通信芯片在至少一个处理核心上实现位置和通信引擎202。图2a-2h可以包括与图1a-1h类似的元件,因此可以包含相同或类似的附图标记。

图2a示出了包括多个处理核心的数据跟踪通信芯片200的实施例;以及耦合到所述多个处理核心中的至少一个的至少一个硬件接口102,其中所述一个或多个处理核心中的至少一个实现位置和通信引擎202,所述位置和通信引擎202被配置成从蜂窝定位系统(例如蜂窝网络)接收天线信号,并由此计算所述客户端设备的位置;其中所述一个或多个处理核心中的至少一个实现游戏和/或仿真引擎104;且其中所述一个或多个处理核心中的一个实施陀螺仪108。根据一个实施例,数据跟踪通信芯片200还包括存储器110,其被配置为存储数据并将数据提供给一个或多个处理核心。

位置和通信引擎202被配置为通过专用硬件(例如,集成接收机或收发机)从蜂窝定位系统接收无线信号,并通过诸如toa,aoa和aod的方法计算客户端设备的定位。然后,位置和通信引擎202可以通过利用来自至少一个陀螺仪108的朝向数据来细化定位数据,从而计算客户端设备的6dof位置和朝向来进行。

定位数据可以通过来自由位置和通信引擎202接收的短程通信系统的定位数据来进一步增加,如参考图1a所描述的。在进一步的实施例中,可以通过存储在虚拟世界系统中的现实世界对象的3d结构,通过来自游戏和/或仿真引擎104的仿真数据,或它们的组合来进一步增加6自由度的位置和朝向。数据跟踪通信芯片200的每个其它组件(例如,游戏和/或仿真引擎104,陀螺仪108,存储器110和硬件接口102)的附加功能可以类似于参考图1a-1h的描述中的功能。

在另一个实施例中,位置和通信引擎202在硬件中实现根据本公开的实施例的包括一个或多个数据跟踪通信芯片200的主机设备的用户之间的基于分布式账本的通信流水线。基于分布式账本的通信流水线可以通过使用密码术允许以安全和准确的方式使用密码"密钥"和密码签名来存储信息,从而实现用户之间通过分散式网络的直接通信。一旦该信息被存储,该数据就变成一个不变的数据库,并由网络的规则管理。

图2b示出了类似于图2a的数据跟踪通信芯片200的数据跟踪通信芯片200b的实施例,其中一个或多个处理核心中的至少一个进一步实现imu112,该imu112被配置为向位置和通信引擎202提供进一步的6自由度位置和朝向数据,以进一步细化定位数据。imu112的功能和特征可以与参考图1b的imu112所描述的相同。

图2c示出了实施例,其中数据跟踪通信芯片200c类似于图2a的数据跟踪通信芯片200,其中一个或多个处理核心中的至少一个实现具有专用的位置和通信引擎202的游戏和/或仿真引擎104,其中实现由至少一个公共处理核心或引擎核心114上的专用电子电路来执行。在单个公共硬件处理核心上提供游戏和/或仿真引擎104以及专用位置和通信引擎202可以通过启用经由短数据链路的快速通信来减少处理时间。另外,实现专用于单个游戏和/或仿真引擎104的位置引擎106可以提高效率,因为位置引擎106可能只需要处理来自游戏和/或仿真引擎104的数据,位置和通信引擎202专用于该游戏和/或仿真引擎104。游戏和/或仿真引擎104以及数据跟踪通信芯片200c的位置和通信引擎202和其余部件(陀螺仪108,存储器110和硬件接口102)中的每一个的附加功能可以类似于参考图1a的描述中的功能。

图2d示出了实施例,其中数据跟踪通信芯片200d显示了与图2c的数据跟踪通信芯片200c的特征相同的特征,但是其中一个或多个处理核心中的至少一个进一步实现了具有与参考图1b的imu112描述的那些相同的功能的imu112,进一步向位置引擎106提供6dof位置数据以用于更精确的设备定位。

图2e示出了数据跟踪通信芯片200e的实施例,其中参考图2a-d描述的游戏和/或仿真引擎104被进一步细分为专用硬件组件,该专用硬件组件包括在单个引擎核心114上实现的3d结构和物理引擎116和仿真引擎118,例如参考图1e描述的引擎核心114,但是其中位置引擎106被位置和通信引擎202代替。

图2f示出了类似于图2e的数据跟踪通信芯片200e的数据跟踪通信芯片200f的实施例,但是其中一个或多个处理核心中的至少一个进一步实现了具有与参考图1b的imu112所描述的那些相同功能的imu112,从而向位置和通信引擎202提供了用于更精确的设备定位的另外的6dof位置数据。

图2g描绘了类似于图2e的数据跟踪通信芯片200e的数据跟踪通信芯片200g,但是其中游戏和/或仿真引擎104除了3d结构和物理引擎116和仿真引擎118之外,还被细分为在单个引擎处理核心上实现的专用渲染引擎120,渲染引擎120被配置为对数据执行渲染任务,以便合成图像,从而生成真实感3d模型。

图2h描绘了类似于图2g的数据跟踪通信芯片200g的数据跟踪通信芯片200h,但是其中一个或多个处理核心中的至少一个进一步实现了具有与参考图1b的imu112所描述的功能相同的功能的imu112,向位置和通信引擎202提供另外的6个dof位置数据以用于更准确的设备定位。

图3a-3h示出了数据跟踪通信芯片的其它实施例的示意图,数据跟踪通信芯片包括位置引擎和通信单元两者作为单独的组件。

图3a示出了数据跟踪通信芯片300的实施例,包括包括多个处理核心;以及耦合到多个处理核心中的至少一个处理核心的至少一个硬件接口102,其中一个或多个处理核心中的至少一个处理核心实现位置引擎106;并且其中一个或多个处理核心中的至少一个实现通信引擎302;其中一个或多个处理核心中的至少一个实现游戏和/或仿真引擎104;且其中所述一个或多个处理核心中的至少一个实现陀螺仪108。根据实施例,数据跟踪通信芯片300还包括存储器110,其被配置为存储数据并将数据提供给一个或多个处理核心。

通信引擎302被配置成通过专用硬件(例如,接收机,发射机或收发机)从蜂窝定位系统接收和发送无线信号,并且通过诸如toa,aoa和aod的方法来计算实现数据跟踪通信芯片300的客户端设备的位置。发送到通信引擎302的无线信号可以使用现有蜂窝通信网络的体系结构来发送,其中现有体系结构包括来自例如5g网络的mmw天线,并且因此可以使得客户端设备能够连接到网络以便发送和接收数据。在其它实施例中,外部跟踪系统还由4g蜂窝通信网络支持。在其它实施例中,通信引擎302可进一步经配置以接收和发送来自短程通信系统(wlan,pan等)的通信信号。

在图3a的实施例中,位置引擎106可以计算客户端设备的初始位置。然后,位置和通信引擎202可以通过利用来自至少一个陀螺仪108的朝向数据来细化定位数据,从而计算客户端设备的6dof位置和朝向来进行。在进一步的实施例中,可以通过存储在虚拟世界系统中的现实世界对象的3d结构,通过来自游戏和/或仿真引擎104的仿真数据,或它们的组合,来进一步增强6自由度的位置和朝向。数据跟踪通信芯片300的每个其它组件(例如,位置引擎106,游戏和/或仿真引擎104,陀螺仪108,存储器110和硬件接口102)的附加功能可以类似于参考图1a-1h的描述中的功能。

在另一个实施例中,根据本公开的实施例,通信引擎302在硬件中实现包括一个或多个数据跟踪通信芯片300的主机设备的用户之间的基于分布式账本的通信流水线。基于分布式账本的通信流水线可以通过使用密码术允许以安全和准确的方式使用密码"密钥"和密码签名来存储信息,从而通过分散式网络实现用户之间的直接通信。一旦该信息被存储,该数据就变成不变的数据库,并由网络的规则管理。

图3b示出了类似于图3a的数据跟踪通信芯片300的数据跟踪通信芯片300b的实施例,其中一个或多个处理核心中的至少一个进一步实现imu112,该imu112被配置为向位置引擎106提供进一步的6自由度位置和朝向数据,以进一步细化定位数据。imu112的功能和特征可以与参考图1b的imu112所描述的相同。

图3c示出了实施例,其中数据跟踪通信芯片300c类似于图3a的数据跟踪通信芯片300,其中一个或多个处理核心中的至少一个处理核心在至少一个公共处理核心或引擎核心114上实现游戏和/或仿真引擎104、专用位置引擎106和专用通信引擎302。在单个公共硬件处理核心上提供游戏和/或仿真引擎104以及专用位置引擎106和通信引擎302可以通过经由短数据链路启用快速通信来减少处理时间。另外,实现专用于单个游戏和/或仿真引擎104的位置引擎106可以提高效率,因为位置引擎106和通信引擎302可能只需要处理来自游戏和/或仿真引擎104的数据,它们专用于游戏和/或仿真引擎104。数据跟踪通信芯片300c的游戏和/或仿真引擎104和位置引擎106中的每一个以及其余部件(陀螺仪108,存储器110和硬件接口102)的附加功能可以类似于参考图1a的描述中的功能。通信引擎302的附加功能可以类似于参考图3a描述的那些功能。

图3d示出了实施例,其中数据跟踪通信芯片300d显示了与图3c的数据跟踪通信芯片300c的特征相同的特征,但是其中一个或多个处理核心中的至少一个进一步实现了具有与参考图1b的imu112所描述的功能类似的功能的imu112,进一步向位置引擎106提供6自由度的位置数据,以用于更精确的设备定位。

图3e示出了数据跟踪通信芯片300e的实施例,其中参照图3a-3d描述的游戏和/或仿真引擎104被进一步细分为专用硬件组件,该专用硬件组件包括如参照图1e描述的在单个引擎核心114上实现的3d结构和物理引擎116以及仿真引擎118,但是还包括如参照图3a描述的通信引擎302。

图3f示出了类似于图3e的数据跟踪通信芯片300e的数据跟踪通信芯片300f的实施例,但是其中一个或多个处理核心中的至少一个实现了具有与参考图1b的imu112所描述的那些相同功能的imu112,向位置引擎106提供另外的6dof位置数据以用于更准确的设备定位。

图3g描绘了类似于参考图3e描述的数据跟踪通信芯片300e的数据跟踪通信芯片300g,但是其中游戏和/或仿真引擎104除了3d结构和物理引擎116和仿真引擎118之外,还被细分为在单个引擎处理核心上实现的专用渲染引擎120,渲染引擎120被配置为对数据执行渲染任务,以便合成图像,从而生成真实感3d模型。

图3h描绘了类似于图3g的数据跟踪通信芯片300g的数据跟踪通信芯片300h,但是其中一个或多个处理核心中的至少一个进一步实现了具有与参考图1b的imu112所描述的那些相同功能的imu112,从而向位置和通信引擎202提供用于更准确的设备定位的另外的6dof位置数据。

在以上参照图1a-3h的实施例中,所计算的6自由度位置和朝向可以通过至少一个硬件接口102,位置引擎106,gnss网络,或通过通信引擎302或使用蜂窝网络或短程通信系统的位置和通信引擎202中的任一个共享。

图4a-4c示出了根据本公开的实施例的芯片组件的各种示例。

芯片组件400可包括封装衬底402,多个子芯片404和内插器406。芯片组件400可经由内插器406配置在封装衬底402上。根据本公开的实施例,多个子芯片404可以一起构成数据跟踪通信码片,并且多个子芯片404可以经由内插器406互连。内插器406本身可以是具有金属互连层的大硅片,大硅片可以用芯片生产设备来生产。内插器406上的金属互连层可以代替以其他方式互连单个芯片的各种区域的互连层。

在图4a所示的实施例中,可以使用硅通孔408将内插器406连接到封装衬底402。

图4b示出了使用将多个子芯片404互连到单个数据跟踪通信芯片的另一方法的芯片组件400的另一实施例。在该示例性实施例中,可以使用可以嵌入封装衬底402中的微桥410将各个子芯片404集成到芯片组件中。微桥410本身可以是由芯片生产设备生产的具有金属互连层的硅片。微桥410上的金属互连层可以代替以其他方式互连单个芯片的各种区域的互连层。

图4c示出芯片组件400的又一示例性实施例。在该示例性实施例中,多个子芯片404可以垂直地互连到放置在封装衬底402上的芯片组件中。这也可以被称为3d芯片堆叠。垂直互连子芯片404可以使用例如硅通孔,例如图4a的硅通孔408,或者使用电感耦合技术来实现3d堆叠芯片之间的近场无线通信。

图5a-5b示出了实现本公开的数据跟踪通信芯片的客户端设备500。

图5a的客户端设备500包括至少一个根据本公开的实施例的数据跟踪通信芯片502(还可以被称为跟踪引擎芯片)或芯片组件,电源504,存储器506,i/o模块508,以及感测机构510,它们都通信地连接到主机处理器512。因此,数据跟踪通信芯片502或芯片组件可用于通过执行游戏和/或仿真引擎任务来支持主机处理器512,游戏和/或仿真引擎任务由通过数据跟踪通信芯片502的位置引擎的精确定位驱动,如所公开的。客户端设备500可以是移动计算设备,头戴式显示器,个人计算机,游戏控制台,服务器计算机等。

电源504被实现为被配置为向客户端设备500供电的计算硬件。在一个实施例中,电源504可以是电池。电源504可以内置到客户端设备500中或者可以从客户端设备500移除,并且可以是可再充电的或不可再充电的。在一个实施例中,客户端设备500可以通过用另一个电源504替换一个电源504来重新供电。在另一个实施例中,电源504可以通过连接到充电源的电缆进行再充电,例如连接到个人计算机的通用串行总线("usb")火线,以太网,雷电或耳机电缆。在又一个实施例中,电源504可以通过感应充电进行再充电,其中,当感应充电器和电源504两者非常接近时,电磁场用于将能量从感应充电器传递到电源504,但不需要通过电缆彼此插入。在另一个实施例中,可以使用对接站来促进充电。

存储器506可以被实现为计算软件和硬件,其适于存储来自感测机构510或来自用户通过i/o模块508输入的数据的客户端设备500的应用指令。存储器506可以是能够存储可由主机处理器512和数据跟踪通信芯片502访问的信息的任何合适的类型,包括计算机可读介质,或存储可以借助于电子设备读取的数据的其它介质,例如硬盘驱动器,存储卡,闪存驱动器,rom,ram,dvd或其它光盘,以及其它可写和只读存储器。除了永久存储器之外,存储器506还可以包括临时存储器。

客户端设备500的i/o模块508可以被实现为被配置为与用户交互并将用户输入数据提供给一个或多个其他系统组件的计算硬件和软件。举例来说,i/o模块508可经配置以与用户交互,基于交互而产生用户输入数据,并将用户输入数据提供到数据跟踪通信芯片502和主机处理器512。在另一示例中,i/o模块508被实现为被配置为与客户端设备500交互的外部计算定点设备(例如,触摸屏,鼠标,3d控件,操纵杆,游戏垫等)和/或文本输入设备(例如,键盘,口述工具等)。在其它实施例中,i/o模块508可提供比上述功能更多、更少或不同的功能。

除了由已经在数据跟踪通信芯片502中实现的传感器获得的传感器数据之外,感测机构510还可以被实现为适于从用户获得各种数据的计算软件和硬件。感测机构510可以包括但不限于惯性测量单元(imu),加速计,陀螺仪,光传感器,触觉传感器,照相机(例如,深度照相机),眼睛跟踪传感器和麦克风等中的一个或多个。imu,加速度计或陀螺仪可以向数据跟踪通信芯片502提供进一步的定位数据。光传感器,触觉传感器,照相机,眼睛跟踪传感器和麦克风可以用于捕获来自用户和他或她的环境的输入细节,该输入细节可以被发送到主机处理器512和/或数据跟踪通信芯片502以用于进一步处理。

主机处理器512可以被实现为计算硬件和软件,其被配置为接收和处理传感器数据和3d应用数据和指令,其处理可以由数据跟踪通信芯片502支持。例如,主机处理器512可以是主机cpu或gpu,其被配置为执行成像请求,接收成像数据,将成像数据处理成环境或其它数据,处理用户输入数据和/或成像数据以生成用户交互数据,执行基于边缘(设备上)的机器学习训练和推断,提供服务器610请求,接收服务器610响应,和/或提供用户交互数据,环境数据和到一个或多个其它系统组件的内容对象数据。例如,主机处理器512可以从i/o模块508接收用户输入数据,并且可以分别实现存储在存储器506中的应用。在其它示例中,主机处理器512可以在执行3d应用的同时执行从引擎平台服务器610接收的媒体流的基于边缘的呈现。在其它示例中,主机处理器512可以接收由引擎平台服务器610呈现的媒体流,并且可以对媒体流执行轻量级操作,以便输出媒体流。

图5b的客户端设备500b包括根据本公开的实施例的至少一个数据跟踪通信芯片502或芯片组件,主机处理器512,电源504,存储器506,i/o模块508,感测机构510和通信引擎514。因此,数据跟踪通信芯片502或芯片组件可用于通过执行所公开的游戏和/或仿真引擎任务和机器学习算法来支持主机处理器512。客户端设备500可以是移动计算设备,头戴式显示器,个人计算机,游戏控制台,服务器610计算机等。

与客户端设备500不同,客户端设备500b还包括实现通信引擎514的专用硬件电路和/或软件,该通信引擎514可以如参考图3a-3h所述的那样工作。

客户端设备500和500b可以包括图5a-5b中未示出的其它组件。

图6示出了根据实施例的用于实现数据跟踪通信的系统600的示意图。

根据实施例,实现数据跟踪通信的系统600包括实现包括内部定位系统606的一个或多个数据跟踪通信芯片604的至少一个客户端设备500;外部定位系统608;以及服务器610,服务器610存储和计算虚拟世界系统612,虚拟世界系统612托管至少一个3d应用614,客户端设备500,外部定位系统608和服务器610经由网络616通信连接,其中,数据跟踪通信芯片604通过使用来自外部定位系统608和内部定位系统606的定位数据来计算和细化客户端设备6dof位置和朝向618。从而驱动服务器610中托管的3d应用的操作。

外部定位系统608可以包括一个或多个全球导航卫星系统(gnss)620,蜂窝网络622和短程通信系统624。gnss620包括用于设备的全球定位的卫星网络。使用来自足够数量的卫星和诸如三角测量和三边测量的技术的信号,gnss620可以计算设备的位置,速度,高度和时间。gnss620可以包括几个卫星系统中的一个或多个,例如gps,bds,glonass,qzss,galileo和irnss。gnss系统600可以包括配备有至少一个原子钟,无线电接收机和发射机,专用天线,一个或多个计算机和用于航向校正的小推进器的卫星星群。gnss系统600可以包括控制段和用户段。控制段包括全球地面站,其跟踪卫星,然后向星群发送命令和数据,例如校正的轨道和时间信息,以便它们确保空间段的连续操作。用户段包括接收机设备和计算技术,以计算客户端设备的pvt数据,由数据跟踪通信芯片604进行计算。

来自gnss620的定位信号由数据跟踪通信芯片602通过诸如接收器或收发器的硬件接收,此后对所接收的信号实现算法,用于计算客户端设备500的位置。数据跟踪通信芯片604还可以从蜂窝网络622接收无线信号,并由此通过本领域已知的技术(例如toa,aoa和aod)来细化定位数据。蜂窝网络622可以包括5g网络,并且可以被支持4g蜂窝通信网络。数据跟踪通信芯片604可以从短程通信系统624接收进一步的无线信号,以便进一步改进客户端设备定位。短程通信系统624可以包括诸如wlan(例如wi-fi),pan(例如蓝牙和zigbee)等的系统。在一些实施例中,wi-fi提供60ghz的数据。在替代实施例中,gnss620经由本领域已知的其它技术来增强,例如经由差分gps(dgps),基于卫星的增强系统(sbas),实时运动学(rtk)系统。

传感器数据626可用于进一步细化由数据跟踪通信芯片604使用来自外部定位系统608的数据计算的定位。内部定位系统606包括传感器数据626,3d结构数据628和仿真数据630。传感器数据626是指通过感测机构获得的数据(诸如惯性数据),感测机构集成在数据跟踪通信芯片602中(例如陀螺仪和imu),或者感测机构通过至少一个硬件接口通信地连接到数据跟踪通信芯片602(例如光传感器,触觉传感器,照相机(深度照相机),眼睛跟踪传感器和麦克风)。

3d结构数据628可用于进一步细化由数据跟踪通信芯片604从外部定位系统608和传感器数据626计算的定位。3d结构数据628是指将现实世界的虚拟副本的数据排列成3d结构,可以包括在服务器610上存储和计算的虚拟世界系统612中的每个虚拟副本的地理位置数据,补充由外部定位系统608或传感器数据626获得的现有定位数据。3d结构数据628可以通过数据算法来排列,以便确定给定表面的几何形状的真实近似,并将图像处理成合适的数据结构(例如,八叉树,四叉树,bsp树,稀疏体素八叉树,3d阵列和k-d树)。

仿真数据630可用于进一步细化由数据跟踪通信芯片604从外部定位系统608,传感器数据626和3d结构数据628计算的定位。仿真数据630可以是仿真的现有位置和朝向数据或已在不久的将来进一步预测的位置和朝向数据的结果。

在一些实施例中,虚拟世界系统612包括现实世界的数字版本,包括现实世界坐标,例如现实世界对象的位置,朝向,尺度和维度,物理属性,以及实时3d虚拟副本形式的每个现实对象的3d结构。因此,3d应用614相对于现实世界的虚拟副本位于虚拟世界系统612中。

服务器610还可以存储被配置成使用户能够创建和编辑现实对象的实时3d虚拟副本的内容或虚拟副本编辑器(未示出)。然而,虚拟世界系统612还可以包括可能不存在于现实世界中的计算机生成的虚拟对象,例如纯虚拟的对象。通过内容编辑器创建的现实世界的虚拟副本可以由包括当前公开的数据跟踪通信芯片604的设备经由网络616访问,并且因此可以向该芯片提供现实世界中的对象的3d结构数据628,用于在此描述的定位数据增强技术。

根据实施例,存储在服务器610中的副本编辑器(未示出)包括软件和硬件,其被配置为使用户能够对现实对象的实时3d虚拟副本进行建模和编辑。副本编辑器可以是例如计算机辅助绘图(cad)软件,其可以存储输入和编辑虚拟副本所必需的数据和指令。副本编辑器可以实现与每个数字副本相关的显式数据和指令的输入,可以包括描述形状,地点,位置和朝向,物理特性,3d结构,以及每个实时3d虚拟副本和虚拟世界系统612作为整体的预期功能和影响的数据和指令。通常,显式数据可以包括可能不是由感测机构获得的数据,而是可能需要通过副本编辑器数字地输入的数据,诸如建筑材料,壁厚,电气设备和电路,水管,灭火器,紧急出口,窗口位置,机器性能参数,机器传感器和阀位置等。

用于将现实对象转换为具有显式数据和指令的实时3d虚拟副本并使它们在虚拟世界系统612中可用的建模技术可以基于容易获得的现实对象的cad或cae模型。例如,机器拥有者可以向虚拟世界系统612的管理员提供,或者可以输入他们机器的已经存在的数字cad或cae模型。类似地,建筑物拥有者可以向建筑信息模型(bim)提供将被存储在服务器610中的虚拟世界系统612中的建筑物细节,其可以包括可能不可见或经由感测机制不容易获得的信息。在这些实施例中,这些现实对象的拥有者可以负责将相应的实时3d虚拟副本添加到虚拟世界系统612中,这可以例如通过激励系统或通过法律要求来实现。在一些实施例中,虚拟世界系统612的管理员,政府官员或其他相关机构可以与现实对象的拥有者协作,用于将实时3d虚拟副本输入到虚拟世界系统612中,从而实现在服务器610中更快和更彻底地创建虚拟世界系统612。在其它实施例中,雷达成像,例如合成孔径雷达,真实孔径雷达,avtis雷达,光检测和测距(lidar),逆孔径雷达,单脉冲雷达和其它类型的成像技术可以用于在将现实对象集成到虚拟世界系统612中之前对现实对象进行建图和建模。与用于创建虚拟副本的建模技术无关,每个虚拟副本的信息应当提供关于每个对应的现实世界元素的足够的细节,使得每个现实世界对象的高度精确的实时3d虚拟副本是可用的。

可以通过至少一个硬件接口102,通过gnss620的位置引擎106,或者通过通信引擎或使用蜂窝网络622或短程通信系统624的位置和通信引擎,共享所计算的6自由度位置和朝向。

图7示出了根据实施例的实现数据跟踪通信的方法700。方法700可以由诸如图6的系统600的系统来实现,该系统采用如参考图1a-4c所描述的一个或多个数据跟踪通信芯片或芯片组件。

方法700可以如框702和704所示开始,在客户端设备上提供包括内部定位系统的至少一个数据跟踪通信芯片。方法700进行到框706,提供外部定位系统,然后由数据跟踪通信芯片从外部定位系统的一个或多个系统请求无线无线电信号来,如框708所示。方法700继续,如框710所示,由数据跟踪通信芯片计算客户端设备的初始位置。

在框712中,方法700继续,从内部定位系统的一个或多个系统获得进一步的定位数据,然后计算细化的用户设备6dof位置和朝向,如框714所示。

最后,方法700可以在框716和718中结束,由数据跟踪通信芯片基于所计算的6dof位置和朝向来更新一个或多个3d应用。

在一些实施例中,方法700还包括由数据跟踪通信芯片共享所计算的6自由度位置和朝向,这可以通过至少一个硬件接口,通过gnss网络的位置引擎,或通过使用蜂窝通信网络或短程通信系统的通信引擎或位置和通信引擎来完成。

在实施例中,包含内部定位系统(例如,内部定位系统606,如图6所示)的芯片或系统进行一方法,该方法包括:从一个或多个外部定位系统(例如,一个或多个外部定位系统608,如图6所示)请求无线无线电信号;使用内部定位系统,计算客户端设备(例如,客户端设备602,如图6所示)的初始位置,其中,至少部分地基于从无线无线电信号获得的数据来计算客户端设备的初始位置;通过计算客户端设备的6dof位置和朝向来细化客户端设备的初始位置;以及基于计算出的客户端设备的6dof位置和朝向来更新一个或多个3d应用(例如,3d应用612,如图6所示)。

虽然已经在附图中描述和示出了某些实施例,但是应当理解,这样的实施例仅仅是说明性的,而不是对宽泛的发明进行限制,并且本发明不限于所示出和描述的具体结构和布置,因为本领域的普通技术人员可以想到各种其他修改。因此,本说明书应被认为是示例性的而不是为了限制本发明。

起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。

此文章来源于网络,如有侵权,请联系删除

相关标签:
tips