一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于LIDAR测量的可配置存储器块的制作方法

2022-07-16 22:28:52 来源:中国专利 TAG:

用于lidar测量的可配置存储器块
1.相关申请的交叉引用
2.本技术要求于2019年10月10日提交的标题为“configurable memory blocksfor lidar measurements”的美国临时专利申请no.62/913,602的权益,该申请通过引用并入本文。


背景技术:

3.光检测和测距(lidar)系统用于对象检测和测距,例如,用于如汽车、卡车、船等交通工具。lidar系统还用于移动应用(例如,用于面部辨识)、家庭娱乐(例如,捕获用于视频游戏输入的手势捕获)和增强现实。lidar系统通过利用来自激光器的脉冲照射一个地景,且接着测量光子行进到对象且在反射之后返回的时间来测量与对象的距离,所述时间如 lidar系统的接收器所测量。分析检测到的信号以检测背景光当中的反射信号脉冲的存在。能够基于从脉冲的传输到对应反射脉冲的接收的飞行时间而确定与对象的距离。
4.确切地说,在lidar系统的经济成本下,可能难以在所有条件下提供低到几厘米的鲁棒距离准确度。如单光子雪崩二极管(spad)的有前景的新检测器技术是有吸引力的,但当用以测量飞行时间和其他信号特性时由于其受限制的动态范围而具有显著缺陷,特别是在广泛的环境条件和目标距离方面。另外,因为其对即使少量光子的敏感性,spad可极易受背景噪声光的环境水平影响。
5.lidar系统对于每个光传感器通常需要存储器块。因此,增加lidar系统中的光传感器的数目也意味着增加对应集成电路中需要的存储器块的数目。与如算术逻辑单元(alu)、阈值电路系统、保持电路系统等其他lidar数据路径组件相比,存储器块往往需要集成电路中更多的表面不动产。存储器块也往往在定时要求方面成为数据路径中的瓶颈,因为存储器块的时钟常常比它们对应的光传感器和alu慢。因此,与存储器块相比,lidar系统将大大地受益于更灵活的存储系统,这些更灵活的存储系统能够减小存储器块的所需数目和/或增加数据路径的时钟频率。


技术实现要素:

6.在一些实施例中,一种光学测量系统可包括多个光源,所述多个光源被配置为作为光学测量的一部分在一个或多个时间间隔内传输一个或多个脉冲串。所述一个或多个时间间隔中的每一个可包括所述一个或多个脉冲串中的一个,并且所述一个或多个时间间隔中的每一个可被细分成多个时间区间。所述系统还可包括多个光传感器,其中所述多个光传感器中的每一个可被配置为检测来自所述多个光源中的对应一个的光子。所述系统可另外包括存储器块,所述存储器块包括多个寄存器,所述多个寄存器被配置为存储在所述一个或多个时间间隔期间由所述多个光传感器中的一个或多个光传感器接收到的累积光子计数。所述多个寄存器中的每一个可与所述多个时间区间中的对应一个相关联。所述系统还可包括选择电路,所述选择电路被配置为:选择性地接收在所述一个或多个时间间隔期间接收的来自所述多个光传感器中的活动光传感器的累积光子计数;以及在所述多个光传
感器中选择针对其将所述累积光子计数存储在所述存储器块中的所述一个或多个光传感器。
7.在任何实施例中,可以任何组合而不受限制地实现以下特征中的任一个和全部。所述系统还可包括缓冲器,所述缓冲器耦合到所述选择电路和所述存储器块并且被配置为从所述一个或多个光传感器接收所述累积光子计数。所述缓冲器可被配置为在由所述一个或多个光传感器提供所述累积光子计数时从所述一个或多个光传感器递增地接收所述累积光子计数。所述缓冲器可被配置为在所述缓冲器被填充时将所述累积光子计数提供给所述存储器块。所述缓冲器可被划分成多个部分。所述多个部分的至少一部分可在时间区间期间被来自所述一个或多个光传感器中的不同光传感器的累积光子计数填入。可在所述多个时间区间中的相同时间区间期间填入所述多个部分中的每一个。所述多个部分中的每一个可被来自所述一个或多个光传感器中的相同光传感器的累积光子计数填入。可在所述多个时间区间中的不同时间区间期间填入所述多个部分中的每一个。所述存储器块的位宽度可与所述缓冲器的位宽度相同。所述存储器块中的所述多个寄存器的行中的条目可在单个写入操作中被一起填入。所述多个光传感器中的至少一个光传感器可耦合到多个选择电路。所述多个光传感器中的至少一个光传感器可耦合到多个存储器块。
8.在一些实施例中,一种使用光学测量系统的方法可包括作为光学测量的一部分在一个或多个第一时间间隔内从多个光源传输一个或多个脉冲串。所述一个或多个第一时间间隔中的每一个可包括所述一个或多个脉冲串中的一个。所述一个或多个时间间隔中的每一个可被细分成多个时间区间。所述方法还可包括:使用多个光传感器来检测来自所述一个或多个脉冲串的光子;在所述多个光传感器中选择一个或多个光传感器以共享存储器块;以及将在所述一个或多个时间间隔期间接收的来自所述一个或多个光传感器的光子计数累积到所述存储器块中。所述存储器块可包括多个寄存器。所述多个寄存器中的每一个可与所述多个时间区间中的对应一个和所述一个或多个光传感器中的对应一个相关联以表示至少一个直方图。可将所述光子计数的批次从所述一个或多个光传感器中的不止一个或所述多个时间区间中的不止一个一起写入到所述存储器块。
9.在任何实施例中,可以任何组合而不受限制地实现以下特征中的任一个和全部。在所述多个光传感器中选择所述一个或多个光传感器以共享所述存储器块可包括从片上处理器接收信号。在所述多个光传感器中选择所述一个或多个光传感器以共享所述存储器块可包括当所述光学测量系统正在工作时从片外处理器接收信号。所述方法还可包括基于所述一个或多个光传感器中的光传感器的数目来改变与所述一个或多个光传感器相关联的时钟信号。增加所述一个或多个光传感器中的光传感器的数目可减小与所述一个或多个光传感器相关联的所述时钟信号的频率。减小所述一个或多个光传感器中的光传感器的数目可增加与所述一个或多个光传感器相关联的所述时钟信号的频率。所述方法还可包括使一个或多个存储器块保持空闲,其中所述一个或多个存储器块可与所述一个或多个光传感器相关联。所述方法可另外包括:接收从针对其将光子计数累积在所述存储器块中的所述一个或多个光传感器中添加或去除光传感器的选择信号;以及改变与所述一个或多个光传感器相关联的时钟信号。与所述一个或多个光传感器相关联的所述时钟信号可与和所述存储器块相关联的时钟信号相位对齐。累积在所述一个或多个时间间隔期间接收的来自所述一个或多个光传感器的所述光子计数可包括将从所述一个或多个光传感器接收到的光子
计数添加到所述存储器块中的现有值。
10.在一些实施例中,一种光学测量系统可包括光源,所述多个光源被配置为作为光学测量的一部分在一个或多个时间间隔内传输一个或多个脉冲串。所述一个或多个时间间隔中的每一个可包括所述一个或多个脉冲串中的一个,并且所述一个或多个时间间隔中的每一个可被细分成多个时间区间。所述系统还可包括被配置为检测来自所述光源的光子的光传感器。所述系统可另外包括一个或多个存储器块。所述一个或多个存储器块中的每一个可包括多个寄存器,所述多个寄存器被配置为存储来自所述光传感器的累积光子计数。所述多个寄存器中的每一个可与所述多个时间区间中的对应一个相关联以表示直方图。所述系统还可包括选择电路,所述选择电路被配置为:在所述一个或多个时间间隔期间从所述光传感器接收累积光子计数;以及从多个存储器块中选择将所述所述光传感器的所述累积光子计数存储到其中的所述一个或多个存储器块。
11.在任何实施例中,可以任何组合而不受限制地实现以下特征中的任一个和全部。所述系统还可包括一个或多个缓冲器,所述一个或多个缓冲器耦合到所述选择电路和所述一个或多个存储器块并且被配置为从所述光传感器接收所述累积光子计数。所述一个或多个缓冲器可被配置为在由所述光传感器提供所述累积光子计数时从所述光传感器递增地接收所述累积光子计数。所述一个或多个缓冲器可被配置为在所述一个或多个缓冲器中的每一个被填充时将所述累积光子计数提供给所述一个或多个存储器块。所述一个或多个缓冲器的每一个可被划分成多个部分。所述多个部分中的每一个可被来自所述多个时间区间中的不同时间区间的累积光子计数填入。所述多个部分中的每一个可被来自所述光传感器的累积光子计数填入。所述存储器块的位宽度可与所述缓冲器的位宽度相同。所述选择电路可包括将来自所述光传感器的输出路由到所述一个或多个存储器块的多个复用器。所述系统还可包括增加用于所述光传感器的时钟的频率的时钟倍增器。
12.在一些实施例中,一种使用光学测量系统的方法可包括作为光学测量的一部分在一个或多个第一时间间隔内从光源传输一个或多个脉冲串。所述一个或多个第一时间间隔中的每一个可包括所述一个或多个脉冲串中的一个。所述一个或多个时间间隔中的每一个可被细分成多个时间区间。所述方法还可包括:使用光传感器来检测来自所述一个或多个脉冲串的光子;从多个存储器块中选择一个或多个存储器块以存储来自所述光传感器的累积光子计数;以及将在所述一个或多个时间间隔期间接收的来自所述光传感器的光子计数累积到所述一个或多个存储器块中。所述一个或多个存储器块中的每一个可包括多个寄存器。所述多个寄存器中的每一个可与用于所述光传感器的所述多个时间区间中的对应一个相关联以表示直方图。
13.在任何实施例中,可以任何组合而不受限制地实现以下特征中的任一个和全部。从所述多个存储器块中选择所述一个或多个存储器块可包括从片上处理器接收信号。从所述多个存储器块中选择所述一个或多个存储器块可包括在所述光学测量系统正在工作时从片外处理器接收信号。所述方法可另外包括基于所述一个或多个存储器块中的存储器块的数目来改变与所述光传感器相关联的时钟信号。增加所述一个或多个存储器块中的存储器块的数目可增加与所述光传感器相关联的所述时钟信号的频率。减小所述一个或多个存储器块中的存储器块的数目可减小与所述光传感器相关联的所述时钟信号的频率。所述方法可进一步包括使一个或多个光传感器保持空闲,其中所述一个或多个光传感器可与所述
一个或多个存储器块相关联。所述方法还可包括:接收从累积来自所述光传感器的光子计数的所述一个或多个存储器块中添加或去除存储器块的选择信号;以及改变与所述光传感器相关联的时钟信号。与所述一个或多个存储器块相关联的时钟信号可相对于彼此被移相90
°
。与所述一个或多个存储器块相关联的时钟信号可相对于彼此被移相180
°

14.在下面详细地描述本发明的这些和其他实施例。例如,其他实施例针对与本文所描述的方法相关联的系统、装置和计算机可读介质。
15.参考以下详细描述和附图,可更好地理解本发明的实施例的本质和优点。
附图说明
16.通过参考说明书的其余部分和附图可实现对各种实施例的本质和优点的进一步理解,其中相同参考标号在若干图中用于指代类似组件。在一些情况下,子标签与参考标号相关联以标示多个类似组件中的一个。当在未指定子标签的情况下参考参考标号时,所述参考标号是指所有此类多个类似组件。
17.图1a和图1b示出根据一些实施例的汽车光测距装置,在本文中也称为lidar系统。
18.图2示出用于实现各种实施例的示例性lidar设备的框图。
19.图3图示可通过实施例改进的典型lidar系统的操作。
20.图4示出根据一些实施例的用于光测距系统的光传输和检测过程的说明性示例。
21.图5示出根据本发明的实施例的传感器阵列和相关联电子产品的各个级。
22.图6示出根据本发明的实施例的直方图。
23.图7示出根据本发明的实施例的用于选定像素的多个脉冲串上的直方图的累积。
24.图8示出根据一些实施例的用于接收光子并生成存储在表示直方图的存储器中的信号的集合的电路。
25.图9示出根据一些实施例的与测量中的不同激发相关联的定时。
26.图10图示根据一些实施例的具有与单个存储器块配对的单个像素的直方图数据路径。
27.图11图示根据一些实施例的具有被细分以表示多个时间区间的缓冲器的直方图数据路径。
28.图12图示根据一些实施例的多个像素的阵列,所述多个像素中的每一个写入到单个存储器块。
29.图13图示根据一些实施例的接收来自两个不同像素的合计光子计数的单个缓冲器。
30.图14图示根据一些实施例的接收来自四个不同像素的合计光子计数的单个缓冲器。
31.图15图示根据一些实施例的用于多个像素与单个存储器块耦合的实施方案的选择电路。
32.图16图示根据一些实施例的用于使用片上选项和/或片外选项来提供选择信号的电路。
33.图17图示用于使用其中一个或多个像素可写入到单个缓冲器且写入到单个存储器块中的光学测量系统的方法的流程图。
34.图18图示根据一些实施例的单个像素如何可写入到多个缓冲器和多个存储器块。
35.图19a图示根据一些实施例的其中单个像素与四个缓冲器和四个存储器块耦合的四分之一通道配置。
36.图19b图示根据一些实施例的在四分之一通道配置中使用的各种时钟信号的定时图。
37.图20图示根据一些实施例的用于其中一个或多个存储器可与单个像素耦合的实施方案的选择电路。
38.图21图示用于使用光学测量系统来将来自单个光传感器的输出存储在一个或多个存储器块中的方法的流程图。
39.图22a-图22d图示根据一些实施例的像素和存储器块能够通过选择电路自由地连接的配置。
40.术语
41.术语“测距”特别是当在用于测量环境或帮助车辆操作的方法和装置的背景下使用时可指代确定从一个方位或位置到另一方位或位置的距离或距离向量。“光测距”可指代利用电磁波来执行测距方法或功能的一类测距方法。因此,“光测距装置”可指代用于执行光测距方法或功能的装置。“lidar”或“lidar”可指代通过以脉冲激光照射目标且其后以传感器测量反射脉冲来测量与目标的距离的一类光测距方法。因此,“lidar装置”或“lidar系统”可指代用于执行lidar方法或功能的一类光测距装置。“光测距系统”可指代包括至少一个光测距装置(例如,lidar装置)的系统。系统可进一步包括呈各种布置的一个或多个其他装置或组件。
[0042]“脉冲串”可指代一起传输的一个或多个脉冲。脉冲串的传输和检测可称为“激发”。激发可在“检测时间间隔”(或“检测间隔”)中发生。
[0043]“测量”可包括在n次激发中传输和检测到的n多个脉冲串,每一次激发持续检测时间间隔。整个测量可在测量时间间隔(或仅“测量间隔”)中,其可等于测量的n个检测间隔或更长,例如当在检测间隔之间发生暂停时。
[0044]“光传感器”或“光敏元件”能够将光转换成电信号。光传感器可包含多个“光检测器”,例如,单光子雪崩二极管(spad)。光传感器可对应于测距测量中的特定分辨率像素。
[0045]“直方图”可指代表示随时间的一连串值的任何数据结构,如在时间区间(time bin)上离散的值。直方图可具有指派给每一时间区间的值。例如,直方图可存储在一个或多个检测间隔中的每一个中的特定时间区间期间起动的光检测器的数目的计数器。作为另一实例,直方图可对应于模拟信号在不同时间的数字化。直方图可包含信号(例如,脉冲)和噪声。因此,直方图可视为作为光子时间序列(series)或光子通量的信号和噪声的组合。原始/数字化直方图(或累积光子时间序列)可含有在存储器中数字化的信号和噪声而无需滤波。“滤波直方图”可指代在原始直方图通过滤波器之后的输出。
[0046]“存储器块”可指代实现光学测量系统的集成电路上的存储器单元的单个实例。此术语可用于在光学测量系统中将个别存储器块彼此区分开。存储器块可具有与用于读取/写入存储器块的缓冲器的大小相对应的宽度。存储器块还可具有与存储器块中的行的数目相对应的长度。存储器块可表示由光传感器接收到的值的直方图。存储器块可在一对一基础上与光传感器和算术逻辑电路配对以为每个光传感器形成直方图数据路径。如下所述,
子系统(例如,103a和103b)可安装到车辆105。每一固态lidar单元可面对不同方向(在单元之间可能具有部分重叠和/或不重叠的视场)以便捕获比每一单元自身能够捕获的视场更大的复合视场。
[0054]
在扫描或固定架构中,在场景内的对象可反射从lidar光源传输的光脉冲的部分。一个或多个反射部分接着行进回到lidar系统,且可由检测器电路检测到。举例来说,反射部分 117可由检测器电路109检测到。检测器电路可与传输器安置于同一外壳中。扫描系统和固定系统的方面不是相互排斥的,且因此可组合使用。举例来说,图1b中的个别lidar子系统103a和103b可采用可转向传输器,如光学相控阵列,或整个复合单元可通过机械手段旋转,进而扫描lidar系统前方的整个场景,例如从视场119到视场121。
[0055]
图2图示根据一些实施例的旋转lidar系统200的更详细的框图。更具体地说,图2 任选地说明可采用旋转电路板上的旋转致动器的旋转lidar系统,其可从固定电路板接收功率和数据(以及传输)。
[0056]
lidar系统200可与用户接口215的一个或多个实例交互。用户接口215的不同示例可变化且可包含例如具有监视器、键盘、鼠标、cpu和存储器的计算机系统;汽车中的触摸屏;具有触摸屏的手持式装置;或任何其他适当的用户接口。用户接口215可是lidar系统200 安装于其上的对象本地的,但也可是远程操作的系统。举例来说,去往/来自lidar系统200 的命令和数据可通过蜂窝式网络(lte等)、个域网(蓝牙、zigbee等)、局域网(wifi、ir 等)或如因特网的广域网来路由。
[0057]
硬件和软件的用户接口215可从装置向用户呈现lidar数据,但也可允许用户以一个或多个命令控制lidar系统200。实例命令可包含激活或去激活lidar系统、指定光检测器曝光水平、偏置、取样持续时间和其他操作参数(例如,传输脉冲模式和信号处理)、指定光传输器参数(如亮度)的命令。此外,命令可允许用户选择用于显示结果的方法。用户接口可显示lidar系统结果,所述结果可包含例如单帧快照图像、恒定更新的视频图像和/或一些或所有像素的其他光测量的显示。在一些实施例中,用户接口215可跟踪对象距车辆的距离(接近度),且潜在地向驾驶员提供警示或提供此类跟踪信息以用于对驾驶员表现的分析。
[0058]
在一些实施例中,lidar系统可与车辆控制单元217通信,且可基于接收到的lidar 数据而修改与车辆的控制相关联的一个或多个参数。举例来说,在完全自主车辆中,lidar 系统可提供汽车周围环境的实时3d图像以辅助导航。在其他情况下,lidar系统可用作高级驾驶员辅助系统(adas)的部分或安全系统的部分,其例如可将3d图像数据提供到任何数目的不同系统,例如自适应巡航控制、自动停车、驾驶员嗜眠监视、盲点监视、碰撞避免系统等。当车辆控制单元217可通信地耦合到光测距装置210时,可向驾驶员提供警示或可跟踪对象的接近度的跟踪。
[0059]
图2中示出的lidar系统200包含光测距装置210。光测距装置210包含测距系统控制器250、光传输(tx)模块240和光感测(rx)模块230。可由光测距装置通过从光传输模块240传输一个或多个光脉冲249到光测距装置周围的视场中的对象而产生测距数据。所传输光的反射部分239接着在一些延迟时间之后由光感测模块230检测到。基于延迟时间,可确定与反射表面的距离。也可采用其他测距方法,例如连续波、多普勒和类似方法。
[0060]
tx模块240包括可是一维或二维传输器阵列的传输器阵列242,以及tx光学系统244,它们当结合在一起时可形成微光学传输器通道阵列。传输器阵列242或个别传输器是
激光源的实例。tx模块240进一步包含处理器245和存储器246。在一些实施例中,可使用脉冲编码技术,例如巴克码(barkercode)和类似物。在此类情况下,存储器246可存储指示何时应当传输光的脉冲代码。在一个实施例中,脉冲代码存储为存储于存储器中的整数序列。
[0061]
rx模块230可包括传感器阵列236,其可是例如一维或二维光传感器阵列。每一光传感器或光敏元件(也称为传感器)可包含光检测器的集合,例如,apd或类似物,或传感器可是单光子检测器(例如,spad)。类似于tx模块240,rx模块230包含rx光学系统237。结合在一起的rx光学系统237和传感器阵列236可形成微光学接收器通道阵列。每一微光学接收器通道测量对应于周围体积的相异视场中的图像像素的光。例如,由于光感测模块230 和光传输模块240的几何配置,传感器阵列236的每一传感器(例如,spad的集合)可对应于传输器阵列242的特定传输器。
[0062]
在一个实施例中,rx模块230的传感器阵列236制造为单个衬底上的单片装置的部分(使用例如cmos技术),其包含光子检测器阵列以及用于对来自阵列中的个别光子检测器(或检测器群组)的原始直方图进行信号处理的asic 231。作为信号处理的实例,对于每一光子检测器或光子检测器组,asic 231的存储器234(例如,sram)可累积在连续时间区间上检测到的光子的计数,且这些时间区间结合在一起可用于再创建反射光脉冲的时间序列(即,光子计数对时间)。所聚集光子计数的这一时间序列在本文中称作强度直方图(或仅直方图)。 asic 231可实施匹配滤波器和峰值检测处理以及时识别返回信号。此外,asic 231可实现某些信号处理技术(例如,通过处理器238),例如多曲线匹配滤波,以帮助恢复较不易受到由于spad饱和和骤冷而发生的脉冲形状失真影响的光子时间序列。在一些实施例中,此类滤波的全部或部分可由可实施于fpga中的处理器258执行。
[0063]
在一些实施例中,rx光学系统237也可是与asic相同的单片结构的部分,具有用于每一接收器通道层的单独衬底层。举例来说,光圈层、准直透镜层、滤光器层和光检测器层可在切割之前在晶片级下堆叠且接合。可通过在透明衬底的顶部上布置不透明衬底或通过用不透光膜涂布透明衬底来形成光圈层。在又其他实施例中,rx模块230的一个或多个组件可在单体结构的外部。举例来说,光圈层可实施为具有销孔的单独金属薄片。
[0064]
在一些实施例中,从asic输出的光子时间序列发送到测距系统控制器250以用于进一步处理,例如,数据可由测距系统控制器250的一个或多个编码器编码,且接着作为数据分组发送到用户接口215。测距系统控制器250可多个方式实现,包含例如通过使用如fpga 等可编程逻辑装置作为asic或asic的部分、使用具有存储器254的处理器258以及上述的某一组合。测距系统控制器250可与固定基础控制器协作或独立于基础控制器而操作(经由预先编程的指令)以通过发送命令来控制光感测模块230,所述命令包含开始和停止光检测和调整光检测器参数。类似地,测距系统控制器250可通过发送命令或从基础控制器转送命令来控制光传输模块240,所述命令包含开始和停止发光控制以及可调整其他光传输器参数 (例如,脉冲代码)的控制。在一些实施例中,测距系统控制器250具有一个或多个有线接口或连接器以用于与光感测模块230和光传输模块240交换数据。在其他实施例中,测距系统控制器250经由如光学通信链路的无线互连与光感测模块230和光传输模块240通信。
[0065]
电动机260可是当例如tx模块240和或rx模块230的系统组件需要旋转时需要的任选组件。系统控制器250控制电动机260且可开始旋转、停止旋转和改变转速。
[0066]
ii.反射脉冲的检测
[0067]
光传感器可多种方式布置以用于检测反射脉冲。举例来说,光传感器可布置成阵列,且每一光传感器可包含光检测器阵列(例如,spad)。下文还描述在检测间隔期间传输的脉冲 (脉冲串)的不同模式。
[0068]
a.飞行时间测量和检测器
[0069]
图3图示可由一些实施例改进的典型lidar系统的操作。激光器产生短持续时间的光脉冲310。水平轴线表示时间,且竖直轴线表示功率。由半高全宽(fwhm)表征的实例激光脉冲持续时间是几纳秒,其中单个传输器的峰值功率是约几瓦。使用侧传输器激光器或光纤激光器的实施例可具有高得多的峰值功率,而具有小直径vcsel的实施例可具有几十毫瓦到数百毫瓦的峰值功率。
[0070]
脉冲的传输的开始时间315不需要与脉冲的前沿一致。如所示,光脉冲310的前沿可在开始时间315之后。可能希望前沿在不同模式的脉冲在不同时间传输的情形中不同,例如,对于编码的脉冲。
[0071]
光学接收器系统可在开始激光器的同时,即在开始时间处开始检测接收到的光。在其他实施例中,光学接收器系统可在稍后时间开始,所述稍后时间是在脉冲的开始时间之后的已知时间。光学接收器系统最初检测背景光330,且在一些时间之后检测激光脉冲反射320。光学接收器系统可将检测到的光强度与阈值进行比较以识别激光脉冲反射320。阈值可区分背景光330与对应于激光脉冲反射320的光。
[0072]
飞行时间340是被发送的脉冲与被接收的脉冲之间的时间差。可通过从激光脉冲反射320 的接收时间(例如,也相对于开始时间所测量)减去脉冲的传输时间(例如,如相对于开始时间所测量)来测量所述时间差。与目标的距离可确定为飞行时间与光速的乘积的一半。来自激光装置的脉冲在不同时间从场景中的对象反射,且像素阵列检测辐射反射的脉冲。
[0073]
b.使用阵列激光器和光传感器阵列的对象检测
[0074]
图4示出根据一些实施例的用于光测距系统的光传输和检测过程的说明性实例。图4示出收集系统周围的体积或场景的三维距离数据的光测距系统(例如,固态或和/或扫描)。图4 是突出显示传输器与传感器之间的关系的理想化附图,且因此其他组件未图示。
[0075]
光测距系统400包括光传输器阵列402和光传感器阵列404。光传输器阵列402包含光传输器阵列,例如vcsel阵列和类似物,如传输器403和传输器409。光传感器阵列404包含光传感器阵列,例如传感器413和415。光传感器可是像素化光传感器,其针对每一像素采用离散光检测器的集合,如单光子雪崩二极管(spad)和类似物。然而,各种实施例可部署任何类型的光子传感器。
[0076]
每一传输器可从其相邻者稍微偏移,且可配置成将光脉冲传输到与其相邻传输器不同的视场中,进而照射仅与所述传输器相关联的相应视场。举例来说,传输器403将照射光束405 (由一个或多个光脉冲形成)传输到圆形视场407(其大小为清楚起见而放大)中。同样,传输器409将照射光束406(也称为传输器通道)传输到圆形视场410中。虽然图4中未示出以避免复杂化,但每一传输器将对应照射光束传输到其对应的视场中从而引起照射的视场的 2d阵列(在这一实例中,21个相异的视场)。
[0077]
由传输器照射的每一视场可被认为是产生自测距数据的对应3d图像中的像素或
光斑。每一传输器通道可是每一传输器相异的且与其他传输器通道不重叠,即,在传输器集合与不重叠的场或视角的集合之间存在一对一映射。因此,在图4的实例中,系统可对3d空间中的21个相异点进行取样。更密集的点取样可通过具有更密集的传输器阵列或通过扫描传输器光束随时间的角位置以使得一个传输器可对空间中的若干点进行取样来实现。如上文所描述,可通过旋转整个传输器/传感器组合件来实现扫描。
[0078]
每一传感器可从其相邻者稍微偏移,且类似于上文描述的传输器,每一传感器可看见传感器前方的场景的不同视场。此外,每一传感器的视场与相应传输器通道的视场大体上一致,例如,与其重叠且大小相同。
[0079]
在图4中,对应传输器-传感器通道之间的距离相对于与视场中的对象的距离被放大。实际上,与视场中的对象的距离比对应传输器-传感器通道之间的距离大得多,且因此从传输器到对象的光的路径大致平行于从对象回到传感器的反射光的路径(即,其几乎是“反射回来”)。因此,系统400的前方存在一个距离范围,其中个别传感器和传输器的视场是重叠的。
[0080]
因为传输器的视场与其相应传感器的视场重叠,所以每一传感器通道理想地可检测来源于其相应传输器通道的理想地不具有串扰的反射照射光束,即,不检测来自其他照射光束的反射光。因此,每一光传感器可对应于相应光源。举例来说,传输器403将照射光束405传输到圆形视场407中,且照射光束中的一些从对象408反射。理想地,反射光束411仅由传感器413检测到。因此,传输器403和传感器413共享同一视场,例如视场407,且形成传输器-传感器对。同样,传输器409和传感器415形成传输器-传感器对,共享视场410。虽然传输器-传感器对在图4中示出为在其相应阵列中的相同相对方位,但取决于系统中使用的光学件的设计,任何传输器可与任何传感器配对。
[0081]
在测距测量期间,来自分布于lidar系统周围的体积周围的不同视场的反射光由各种传感器收集且处理,从而得到每一相应视场中的任何对象的范围信息。如上文所描述,可使用飞行时间技术,其中光传输器传输精确定时脉冲,且在一些经过的时间之后由相应传感器检测脉冲的反射。在传输与检测之间经过的时间以及已知光速接着用以计算与反射表面的距离。在一些实施例中,可由传感器获得附加信息以确定反射表面的除距离之外的其他属性。举例来说,脉冲的多普勒频移可由传感器测得且用以计算传感器与反射表面之间的相对速度。脉冲强度可用于估计目标反射率,且脉冲形状可用于确定目标是否是硬或漫射材料。
[0082]
在一些实施例中,lidar系统可由传输器和传感器通道的相对大2d阵列构成且操作为固态lidar,即,其可获得范围数据的帧而不需要扫描传输器和/或传感器的定向。在其他实施例中,传输器和传感器可扫描,例如围绕轴线旋转,以确保传输器和传感器的集合的视场对周围体积的完整360度区(或360度区的某个有用部分)进行取样。例如在某一预定义时间周期内从扫描系统收集的范围数据可接着后处理成一个或多个数据帧,所述数据帧可接着进一步处理成一个或多个深度图像或3d点云。深度图像和/或3d点云可进一步处理成地图图块以用于3d测绘和导航应用。
[0083]
c.每一光传感器中的多个光检测器
[0084]
图5示出根据本发明的实施例的传感器阵列和相关联电子产品的各个级。阵列 510示出各自对应于不同像素的光传感器515。阵列510可是交错阵列。在这一特定实例中,
阵列510是18x4光传感器。阵列510可用于实现高分辨率(例如,72x1024),因为实施方案适合于扫描。
[0085]
阵列520示出阵列510的一部分的放大图。如可看出,每一光传感器515由多个光检测器525构成。来自像素的光检测器的信号共同贡献于所述像素的测量。
[0086]
在一些实施例中,每个像素具有增加像素自身的动态范围的大量单光子雪崩二极管 (spad)单元。每一spad可具有用于偏置、骤冷和再充电的模拟前端电路。spad通常以高于击穿电压的偏置电压进行偏置。合适的电路感测雪崩电流的前沿,产生与雪崩积累同步的标准输出脉冲,通过将偏置向下降低到低于击穿电压而使雪崩骤冷,且将光二极管恢复到操作电平。
[0087]
spad可定位以便最大化其局部区域中的填充因数,或可使用微透镜阵列,这允许在像素级的高光学填充因数。因此,成像器像素可包含spad阵列以增加像素检测器的效率。漫射器可用于扩散通过光圈的射线且由微透镜准直。罐漫射器用于以属于同一像素的所有spad 接收一些辐射的方式扩散准直射线。
[0088]
图5进一步示出检测光子532的特定光检测器530(例如,spad)。响应于检测,光检测器530产生电荷载流子(电子或空穴)的雪崩电流534。阈值电路540通过将雪崩电流534 与阈值进行比较来调节所述雪崩电流。当检测到光子且光检测器530正常工作时,雪崩电流 534上升到高于比较器阈值,且阈值电路540产生指示spad电流雪崩的准确时间的时间上准确二进制信号545,这又是光子到达的准确测量。电流雪崩与光子到达的关联可纳秒的分辨率发生,进而提供高定时分辨率。二进制信号545的上升沿可由像素计数器550锁存。
[0089]
二进制信号545、雪崩电流534和像素计数器550是可由包括一个或多个spad的光传感器提供的数据值的实例。数据值可从来自多个光检测器中的每一个的相应信号确定。可将相应信号中的每一个与阈值进行比较以确定对应光检测器是否被触发。雪崩电流534是模拟信号的实例,且因此相应信号可是模拟信号。
[0090]
像素计数器550可使用二进制信号545对已经在受周期性信号560控制的特定时间区间 (例如,1、2、3等纳秒的时间窗)期间由一个或多个光子触发的用于给定像素的光检测器的数目进行计数。像素计数器550可存储用于给定测量的多个时间区间中的每一个的计数器。用于每一时间区间的计数器的值可开始于零,且基于指示检测到光子的二进制信号545而递增。当像素的任何光检测器提供此类信号时,计数器可递增。
[0091]
周期性信号560可通过锁相环(pll)或延迟锁定环(dll)或产生时钟信号的任何其他方法产生。周期性信号560和像素计数器550的协调可充当时间-数字转换器(tdc),其是用于辨识事件且提供它们发生的时间的数字表示的装置。举例来说,tdc可输出每一检测到的光子或光学脉冲的到达时间。测量时间可是两个事件(例如,开始时间和检测到的光子或光学脉冲)之间经过的时间而不是绝对时间。周期性信号560可是在包括像素计数器550 的一组存储器之间切换的相对快时钟。存储器中的每一寄存器可对应于一个直方图区间,且时钟可取样间隔在它们之间切换。因此,当相应信号大于阈值时,指示触发的二进制值可发送到直方图电路。直方图电路可聚集跨越多个光检测器的二进制值以确定在特定时间区间期间触发的光检测器的数目。
[0092]
时间区间可相对于开始信号,例如在图3的开始时间315进行测量。因此,恰好在开始信号之后的时间区间的计数器可具有对应于背景信号的低值,所述背景信号例如背景光
330。最后一个时间区间可对应于给定脉冲串的检测时间间隔(也称为激发)的结束,这在下一部分中进一步加以描述。周期性信号560自从开始时间起的循环数目可充当雪崩电流534的上升沿指示检测到的光子时的时戳。时戳对应于用于像素计数器550中的特定计数器的时间区间。此类操作不同于跟随光二极管(例如,对于雪崩二极管(apd))的简单模/数转换器(adc)。时间区间的计数器中的每一个可对应于直方图,这在下文更详细地描述。因此,虽然apd是具有有限增益的用于输入光学信号的线性放大器,但spad是提供在时间窗中发生的触发事件的是/否的二进制输出的触发器装置。
[0093]
d.脉冲串
[0094]
测距也可通过使用脉冲串实现,所述脉冲串被界定为含有一个或多个脉冲。在脉冲串内,脉冲的数目、脉冲的宽度以及脉冲之间的持续时间(统称为脉冲模式)可基于若干因数而选择,所述因数中的一些包含:
[0095]
1-最大激光占空比-占空比是激光器接通的时间的分数。对于脉冲激光,这可通过如上文所解释的fwhm以及在给定周期期间传输的脉冲数目来确定。
[0096]
2-眼睛安全性限制-这是由装置在不伤害恰巧观看lidar系统的方向的旁观者的眼睛的情况下可传输的最大辐射量确定。
[0097]
3-功耗-这是传输器为了照射场景而消耗的功率。
[0098]
举例来说,脉冲串中的脉冲之间的间隔可是约个位数或数十纳秒。
[0099]
可在一个测量的时间跨度期间传输多个脉冲串。每一脉冲串可对应于不同时间间隔,例如在用于检测先前脉冲串的反射脉冲的时间限制到期之前不传输后续脉冲串。
[0100]
对于给定传输器或激光装置,脉冲串的传输之间的时间决定最大可检测范围。举例来说,如果脉冲串a在时间t0=0ns处传输,且脉冲串b在时间t1=1000ns处传输,那么不得将在t1之后检测到的反射脉冲串指派给脉冲串a,因为它们更可能是来自脉冲串b的反射。因此,脉冲串之间的时间和光速界定以下等式中给出的系统的范围上的最大界限。
[0101]rmax
=c
×
(t
1-t0)/2
[0102]
激发(脉冲串的传输和检测)之间的时间可是约1μs以允许整个脉冲串有足够时间行进到大致150米远的遥远对象,且接着返回。
[0103]
iii.来自光检测器的直方图信号
[0104]
lidar系统的一个操作模式是时间相关单光子计数(tcspc),其是基于对周期性信号中的单个光子的计数。这一技术良好适用于低水平的周期性辐射,这在lidar系统中是合适的。这一时间相关计数可受图5的周期性信号560控制且可使用时间区间,如针对图5所论述。
[0105]
周期性信号的频率可指定时间分辨率,在所述时间分辨率内测量信号的数据值。举例来说,可在周期性信号的每周期针对每一光传感器获得一个测量值。在一些实施例中,测量值可是在所述周期期间触发的光检测器的数目。周期性信号的时间周期对应于时间区间,其中每一周期是不同时间区间。
[0106]
图6示出根据本发明的实施例的直方图600。水平轴线对应于如相对于开始时间615所测量的时间区间。如上文所描述,开始时间615可对应于脉冲串的开始时间。可考虑脉冲串的第一脉冲的上升沿与脉冲串和检测时间间隔中的任一个或两个的开始时间之间的任何偏移,其中确定接收时间将用于飞行时间测量。竖直轴线对应于触发的spad的数目。在
某些实施例中,竖直轴线可对应于跟随apd的adc的输出。举例来说,apd可展现传统的饱和效应,如恒定最大信号而不是spad的基于死时间(dead-time)的效应。一些效应可针对spad 和apd两者发生,例如,极倾斜表面的脉冲拖尾可针对spad和apd两者发生。
[0107]
用于时间区间中的每一个的计数器对应于直方图600中的不同条。在早期时间区间的计数器是相对低的且对应于背景噪声630。在一些点处,检测到反射脉冲620。对应计数器大得多,且可高于在背景与检测到的脉冲之间区分的阈值。反射脉冲620(在数字化之后)示出为对应于四个时间区间,这可能由具有类似宽度的激光脉冲引起,例如当时间区间各自是1ns 时的4ns脉冲。但如下文更详细地描述,时间区间的数目可例如基于激光脉冲的入射角中的特定对象的属性而变化。
[0108]
与反射脉冲620的时间区间相对应的时间方位可用于确定例如相对于开始时间615的接收时间。如下文更详细地描述,匹配滤波器可用于识别脉冲模式,进而有效地增加信噪比,而且更准确地确定接收时间。在一些实施例中,确定接收时间的准确度可小于单个时间区间的时间分辨率。举例来说,对于1ns的时间区间,所述分辨率将对应于约15cm。然而,可能需要具有仅几厘米的准确度。
[0109]
因此,检测到的光子可导致直方图的特定时间区间基于其相对于例如由开始时间615指示的开始信号的到达时间而递增。开始信号可是周期性的,使得在测量期间发送多个脉冲串。每一开始信号可同步到激光脉冲串,其中多个开始信号使得在多个检测间隔内传输多个脉冲串。因此,时间区间(例如,在开始信号之后从200到201ns)将针对每一检测间隔发生。直方图可累积计数,其中特定时间区间的计数对应于跨越多个激发全部在所述特定时间区间中发生的所测量的数据值的总和。当检测到的光子基于此类技术做直方图时,其导致返回信号的信噪比比单个脉冲串大所作出激发次数的平方根。
[0110]
图7示出根据本发明的实施例的用于选定像素的多个脉冲串上的直方图的累积。图7示出三个检测到的脉冲串710、720和730。每一检测到的脉冲串对应于具有以相同时间量分隔的两个脉冲的相同模式的所传输脉冲串。因此,每一检测到的脉冲串具有相同脉冲模式,如由具有明显值的两个时间区间所示。用于其他时间区间的计数器为了便于说明而未图示,但其他时间区间可具有相对低的非零值。
[0111]
在第一检测到的脉冲串710中,用于时间区间712和714的计数器是相同的。这可由在两个时间区间期间检测到光子的光检测器的相同数目引起。或在其他实施例中,在两个时间区间期间检测到大致相同数目的光子。在其他实施例中,多于一个连续时间区间可具有连续非零值;但为便于说明,已经示出个别非零时间区间。
[0112]
时间区间712和714分别在开始时间715之后的458ns和478ns发生。用于其他检测到的脉冲串的所显示的计数器相对于其相应开始时间在相同时间区间发生。在这一实例中,开始时间715被识别为在时间0处发生,但实际时间是任意的。用于第一检测到的脉冲串的第一检测间隔可是1μs。因此,从开始时间715测量的时间区间的数目可是1,000。然后,这一第一检测间隔结束,可传输和检测新的脉冲串。不同时间区间的开始和结束可受时钟信号控制,所述时钟信号可是充当时间-数字转换器(tdc)的部分电路,例如在图5中所描述。
[0113]
对于第二检测到的脉冲串720,开始时间725是在1μs,例如在此时可传输第二脉冲串。此类单独检测间隔可发生以使得在第一检测间隔的开始传输的任何脉冲将已经被检测到,且因此不会造成在第二时间间隔中检测到的脉冲的混淆。举例来说,如果激发之间不存
在额外时间,那么电路可能混淆在200m处的回反射停止标志与在50m处的少得多反射的对象(假定约1us的激发周期)。用于脉冲串710和720的两个检测时间间隔可是相同长度且与相应开始时间具有相同关系。时间区间722和724发生在与时间区间712和714相同的458ns和478 ns的相对时间。因此,当累积步骤发生时,可添加对应计数器。举例来说,可一起添加在时间区间712和722处的计数器值。
[0114]
对于第三检测到的脉冲串730,开始时间735是在2μs,例如在此时可传输第三脉冲串。时间区间732和734也相对于其相应开始时间735发生在458ns和478ns。即使所传输脉冲具有相同功率,在不同时间区间的计数器也可具有不同值,例如原因在于光脉冲离开对象的散射过程的随机性质。
[0115]
直方图740示出来自在时间区间742和744处的三个检测到的脉冲串的计数器的累积,所述时间区间也对应于458ns和478ns。直方图740可具有在相应检测间隔期间测量的较少数目的时间区间,例如原因在于丢弃在开始或结束时的时间区间,或具有小于阈值的值。在一些实施方案中,取决于脉冲串的模式,约10到30个时间区间可具有明显的值。
[0116]
举例来说,在测量期间传输以创建单个直方图的脉冲串的数目可是约1到40个(例如, 24),但还可高得多,例如50、100或500。一旦测量完成,就可复位用于直方图的计数器,且可传输脉冲串的集合以执行新的测量。在各种实施例中且取决于相应持续时间中的检测间隔的数目,可每25、50、100或500μs执行测量。在一些实施例中,测量间隔可重叠,例如,因此给定直方图对应于脉冲串的特定滑动窗口。在此类实例中,存储器可存在以用于存储多个直方图,每一直方图对应于不同时间窗。施加于检测到的脉冲的任何权重对于每一直方图可是相同的,或此类权重可独立地受控制。
[0117]
iv.直方图数据路径
[0118]
图8示出根据一些实施例的用于接收光子并生成存储在表示直方图的存储器中的信号的集合的电路。如上文相对于图5所描述,光传感器阵列可用于接收反射脉冲和来自光学测量系统中的环境光。单个光传感器802可包含多个光检测器。每一光检测器可由spad或其他光敏传感器实施,且光检测器可布置于用于光传感器802的网格图案中,如图8中所说明。
[0119]
光传感器802中的每一光检测器可包含用于产生输出信号的模拟前端电路,所述输出信号指示光子何时由光检测器接收到。举例来说,返回参考图5,来自spad的雪崩电流534 可触发阈值电路540以产生输出二进制信号545。转回到图8,光传感器802中的每一光检测器可产生对应于接收到的光子的其自身信号。因此,光传感器802可产生对应于光传感器802 中的光检测器的数目的信号816的集合。光传感器802也可称为“像素”或“像素传感器”,这是由于当在光学测量系统的后来的级中显示或分析时,其可对应于信息的单个像素。当响应于接收到的光子而产生信号(例如,从逻辑“0”转变到逻辑“1”)时,这可称作“正”信号。
[0120]
算术逻辑单元(alu)804可用于实现来自图5的像素计数器550的功能性。具体地说, alu 804可从光传感器802的个别光检测器接收信号816的集合且聚集各自指示检测到光子的这些信号的数目。alu 804可包含对信号816的集合执行算术和/或其他逐位操作的组合数字电子电路。举例来说,alu 804可接收信号816的集合中的每一个作为二进制信号(即,“0”或“1”)作为alu 804的输入或操作数。通过将输入聚集或添加在一起,alu 804可计
数信号816的集合中的正信号的数目,所述正信号指示已在特定时间区间内接收到光子。举例来说,通过添加指示“1”信号电平的信号中的每一个,alu 804的输出可指示信号816 的集合中的与又在时间区间期间接收到光子的光检测器相关联的信号的数目。
[0121]
alu 804专门设计成至少接收对应于光传感器802中的光检测器的数目的输入的数目。在图8的实例中,alu 804可配置成接收单个位宽的32个并行输入。内部地,alu 804可利用数字逻辑门来实施以形成纹波进位加法器、超前进位加法器、进位保存加法器和/或可低传播时间聚集相对大量输入的任何其他类型的加法器。alu 804的输出可称作“总信号计数”且可表示为来自alu 804或来自alu 804的级的n位二进制数输出。
[0122]
如上文所描述,alu 804的输出可表征在特定时间区间期间由光传感器802接收到的光子的总数目。每当alu 804完成聚集操作,总信号计数可添加到表示直方图818的存储器806 中的对应存储器方位。在一些实施例中,可使用sram实施存储器806。因此,在多个激发的过程(其中每一激发包含脉冲串)中,来自alu 804的总信号计数可与存储器806中的对应存储器方位中的现有值聚集。单个测量可包括多个激发,所述多个激发填入存储器806以产生能够用于检测反射信号、环境噪声、峰值和/或其他关注信号的时间区间中的值的直方图 818。
[0123]
alu 804也可执行将总信号计数添加到存储器806的存储器方位中的现有值的第二合计操作。回顾图7,利用每一激发,新的总信号计数可添加到存储器806的对应时间区间中的现有值。以这种方式,直方图818可在数次激发中逐步地构建于存储器806中。当总信号计数由alu 804产生时,可从存储器806检索用于所述时间区间的对应存储器方位的当前值 820。当前值820可作为操作数提供到alu 804,所述操作数可与来自信号816的集合的总信号计数组合。在一些实施例中,alu 804可由第一级和第二级构成,其中第一级计算来自光传感器802的总信号计数,且第二级将总信号计数与来自存储器806中的所述时间区间的存储器方位的当前值820组合。在一些实施例中,信号816的集合的聚集以及总信号计数和当前值820的聚集可作为单个操作进行。因此,即使这两个操作可功能上描述为单独“聚集”,但其可实际上使用alu 804中的并行和顺序电路的组合一起执行。
[0124]
如上文相对于图5所描述,alu 804可接收触发合计操作的周期性信号560。周期性信号560可使用上文所描述的技术中的任一种产生。周期性信号560可界定每一时间区间的长度。在一些实施例中,周期性信号560和对应时间区间可相对于如图3中所说明的开始信号来测量。周期性信号560的每一周期可使得聚集操作在alu 804中执行且可使得存储器860 的存储器地址递增到下一时间区间。举例来说,周期性信号560的上升沿可使得alu 804产生将总信号计数和当前值820聚集在一起的结果。对应周期性信号808也可发送到存储器接口电路,所述存储器接口电路使地址递增到当前时间区间的存储器方位,使得每一周期也移动到存储器806中的下一时间区间。
[0125]
时钟电路810可用于基于界定激发的输入和用于光学测量系统的测量而产生周期性信号 560。举例来说,激发输入814可对应于图3中所说明的开始信号。激发输入814可将存储器 806的地址复位到与直方图818的第一时间区间对应的开始存储器方位。激发输入814也可使得时钟电路810开始产生用于alu 804的周期性信号560和/或使存储器806的地址递增的周期性信号808。另外,时钟电路810可接收限定测量的开始/结束的测量输入812。测量可包括递增地构建直方图818的多个激发。测量信号812可用于将存储器806中的值复
位,使得直方图可重新开始以用于每一新测量。
[0126]
存储器806可包含累积来自光检测器的光子计数的多个寄存器。通过在对应于时间区间的相应寄存器中累积光子计数,存储器806中的寄存器可基于光子的到达时间而存储光子计数。举例来说,第一时间区间中到达的光子可存储于存储器806中的第一寄存器中,第二时间区间中到达的光子可存储于存储器806中的第二寄存器中,等等。每一“激发”可包含对存储器806中的对应于用于所述光传感器的时间区间的寄存器中的每一个的一次遍历。激发输入814可称作用于存储器806中的多个寄存器的“启用”信号,因为激发输入814使存储器806中的寄存器能够在当前激发期间存储来自alu 804的结果。
[0127]
可生成周期性信号560使得其被配置为在从光传感器802异步地提供信号816的集合时捕获所述信号的集合。举例来说,阈值电路540可配置成在预定时间间隔中使输出信号保持高。周期性信号560可定时以使得其具有小于或等于阈值电路540的保持时间的周期。替代地,周期性信号560的周期可是阈值电路540的保持时间的百分比,如90%、80%、75%、 70%、50%、110%、120%、125%、150%、200%等等。一些实施例可使用如图5中所说明的上升沿检测电路以将来自光检测器的异步信号转换成单个时钟选通,所述单个时钟选通使用运行alu 804的相同时钟。这可保证光子不被计数超过一次。其他实施例可替代地对来自光检测器的异步脉冲进行过取样或使用强力上升沿检测。
[0128]
图9示出根据一些实施例的与测量中的不同激发相关联的定时。竖直轴线表示针对单个光传感器测量的光检测器信号的总数目。举例来说,竖直轴线可表示总光子计数。水平轴线表示时间。当新光学测量如由测量信号812所指示而开始时,第一激发能够接收激发输入 814-1作为开始信号开始。周期性信号506说明alu 804的每一时钟如何对应于单个时间区间和存储器806中的对应存储器方位。
[0129]
利用每一后续激发,直方图可构建于如图9中所图示的存储器806中。每当接收到激发输入814,存储器806的寻址可复位以使得新总信号计数可添加到现有信号计数。在图9的实例中,存在每一激发之间的分隔的非零时间间隔。举例来说,由激发输入814-1开始的激发结束,且在由激发输入814-2界定的激发开始之前,非零时间间隔流逝。替代地,一些实施例可不具有后续激发之间的延迟以使得周期性信号506在整个测量中不断地计时。后续激发输入814-2、814-3可接着界定先前激发的结束和后续激发的开始两者。
[0130]
在一些实施例中,计时alu 804的测量信号812、激发输入814和周期性信号506的定时可均相对于彼此被协调和产生。因此,alu的计时可由每一激发的开始信号触发,且取决于每一激发的开始信号。另外,周期性信号506的周期可界定与直方图中的每一存储器方位相关联的每一时间区间的长度。
[0131]
图8中所图示的数据路径主要配置成构建多个激发中的直方图818。然而,在一些实施例中,可仅在激发期间填入直方图。在激发之间接收到的任何光子将不在时间区间中由alu804聚集且将不存储于存储器806中。另外,在每一测量完成之后和在后续测量开始之前,存储器806的内容可复位。因此,可不保存或容易地获得在当前测量之前和/或之后接收到的光子。此外,不在直方图数据路径中容易地获得在直方图中接收到的所有光子的总计数,且当直方图停用时,如果在激发之间存在非零间隔,那么在测量周期期间接收到的所有光子的总计数不可用。为了以不依赖于激发/测量定时的连续方式记录接收到的光子,除了图8中所说明的直方图数据路径之外可使用第二并行数据路径。
[0132]
v.单像素存储器配置
[0133]
如上所述,直方图数据路径通常可包括由多个个别光检测器组成的单个光传感器。单个光传感器可连接到单个算术逻辑电路以在光学测量期间合计在各个时间区间期间接收的光子计数。算术逻辑电路可将合计光子计数从其对应的光传感器传递到包括多个个别寄存器的直方图存储器。每一个寄存器可对应于单个时间区间,当光学测量系统在光学测量期间执行多个激发时,连续的光子计数被合计到该单个时间区间中。因此,上述实施例可将单个光传感器与单个算术逻辑单元和单个直方图存储器块配对。
[0134]
下述附加实施例可允许多个光传感器共享单个直方图存储器。不是使用单个区间宽的存储器,而是这些实施例可使用能够将来自多个时间区间的光子计数存储在单个存储器行中的存储器块。可提供缓冲器来存储(1)从不同光传感器和/或(2)在不同时间区间期间接收的合计光子计数。这允许用于光传感器和算术逻辑电路的时钟运行得比用于存储器的时钟更快。由于存储器常常是直方图数据路径中的最慢组件,所以这可增加由时间区间表示的时间分辨率并且还可能由于更多光传感器被用于给定时间分辨率而增加空间分辨率。这还允许多个光传感器共享单个存储器。由于存储器还常常是实现直方图数据路径的集成电路上的最大物理组件,所以在多个光传感器之间共享存储器可减小集成电路上的直方图数据路径的总大小。
[0135]
a.单像素单字存储器
[0136]
图10图示根据一些实施例的具有与单个存储器块配对的单个像素的直方图数据路径。如在上面详细地描述的,光传感器802可包括具有阈值检测电路系统的多个光检测器,当光子由每一个光检测器接收时,所述阈值检测电路系统使得产生正信号(例如,正脉冲)。这些正信号能够由算术逻辑电路804接收,所述算术逻辑电路合计在光学测量中的单个时间区间期间由光电探测器接收的光子的总数。算术逻辑电路804还可将所接收到的光子的总数添加到存储在表示该时间区间的寄存器中的值。寄存器可以是存储器块中的存储器方位或者可以是存储中间计算结果的临时寄存器。术语“区间”可指代在激发期间对应于直方图存储器中的值的时间间隔。区间的值可被存储在存储器块中与由该存储器块表示的直方图中的那个值相对应的寄存器或方位中。这允许直方图数据路径形成在由光学测量系统重复地发送脉冲串的多个“激发”期间接收到的值的直方图。
[0137]
在一些实施例中,算术逻辑电路804可将当前光子计数的合计总和提供给缓冲器1002。在图10的示例中,可调整缓冲器1002大小以表示单个时间区间,使得锁存到单个缓冲器1002 中的每个新值表示单个时间区间的光子计数。出于图示直方图数据路径的操作,12位的宽度可用于表示单个时间区间。然而,这不意在为限制性的。一些实施例可使用多于12位来增加可被存储的光子计数的数目而不使缓冲器1002饱和。其他实施例可使用少于12位来减小数据路径的大小,从而减小直方图数据路径的集成电路占用面积和由直方图数据路径使用的功率。
[0138]
缓冲器1002可从算术逻辑电路804接收合计光子计数并且将合计光子计数提供给存储器块1004。存储器块1004可包括以上在图8中描述的直方图存储器806。举例来说,存储器块 1004可使用sram来实现。在这些实施例中,直方图存储器可使用一个或多个存储器块来实现。因此,“存储器块”可指代实现光学测量系统的集成电路上的存储器单元的单个实例。此术语可用于在光学测量系统中将个别存储器块彼此区分开。回想一下,光学测量系统
可包括大量的光传感器(例如,256个光传感器),每一个光传感器可与个别存储器块相关联。如将在下面描述的,一些实施例可使用不止一个存储器块来表示单个光传感器的直方图。因此,存储器块指代存储器单元的单个实例而不是与单个光传感器相关联的所有存储器。取决于实施例,可使用多个存储器块来表示直方图存储器,并且/或者可使用单个存储器块来表示用于多个像素的多个直方图存储器。
[0139]
在图10中,存储器块1004可具有等于缓冲器1002的宽度的宽度。存储器块1004中的每行可对应于单个时间区间并且可使用来自缓冲器1002的单个值来填入。存储器块1004还可具有等于光学测量中的时间区间的数目的行数。在此示例中,存储器块1004可包括与光学测量中的128个时间区间相对应的128行。时间区间的这个数目仅仅作为示例被提供,而不意在为限制性的。其他实施例可通过将每个激发划分成更大数目的时间区间来增加每个时间区间的时间分辨率。一些实施例还可增加每个激发的长度,使得需要更多时间区间来表示激发的时间间隔。相反地,一些实施例可减小存储器块1004中的时间区间和行的数目以减小时间区间的时间分辨率和/或减小激发的时间间隔的长度。
[0140]
缓冲器1002作为算术逻辑电路804与存储器块1004之间的中间存储方位。添加缓冲器 1002作为算术逻辑电路804与存储器块1004之间的中介使得这些电路元件中的每一个能够使用不同时钟独立地工作。不同配置可比存储器块1004更快地为算术逻辑电路804计时以增加时间分辨率和/或减小像素间距,其中缓冲器1002可能比单个时间区间宽以替代地表示多个时间区间和/或相同时间区域期间的多个像素。例如,添加缓冲器1002还可允许多个光传感器在单个时间区间期间写入到缓冲器,从而共享单个存储器块1004。这还可允许多个存储器块通过将多个时间区间写入到缓冲器、然后每次它被填充时将缓冲器写入到连续的存储器块来共享单个光传感器802。将在下面更详细地描述这些实施例中的每一个。
[0141]
为了清楚地呈现存储器块与光传感器之间的关系,本文描述的直方图数据路径可省略对将来自光传感器的当前光子计数添加到已经存储在存储器块1004中表示时间区间的寄存器中的现有光子计数的操作的显式描述。可参考图8,其中存储器接口可在当前时间区间内从直方图存储器806中检索先前光子聚合体的当前值820。此值可由算术逻辑电路804添加到时间区间的当前光子计数。在图10中,为了清楚起见已省略数据路径的这个部分。然而,应理解,此操作可仍然在算术逻辑电路804处或在存储器块1004处发生。
[0142]
图10图示与单个存储器块1004耦合的单个光传感器802的简化示例。缓冲器1002是与存储器块1004相同的宽度。因此,缓冲器1002可针对直方图中的单个时间区间存储来自单个光传感器802的光子计数,并且存储器块1004可用每个写入操作将缓冲器1002的内容存储为单个时间区间。每当缓冲器1002被写入到存储器块1004时,存储器块1004能够递增其行地址为接收用于后续时间区间的光子计数作准备。此配置可用在上述图8的直方图数据路径中。
[0143]
因为缓冲器1002的大小和存储器块1004中的每行的大小相同,所以光传感器802、算术逻辑电路804、缓冲器1002和存储器块1004可全部使用同一定时电路来计时。图10还图示用于算术逻辑电路804和光传感器802的时钟信号1006以及用于缓冲器1002和存储器块 1004的时钟信号1008的定时图。来自alu 804的光子计数的每个合计对应于对缓冲器1002 的单个写入操作,其又对应于对存储器块1004的单个写入操作。因此,此配置可被计时为和
直方图数据路径中的最慢组件一样快。例如,假定存储器块1004在操作之间需要最多时间,图10中的数据路径中的每个组件可被以与存储器块1004相同的速度计时。
[0144]
b.单像素、多时间区间存储器
[0145]
图11图示根据一些实施例的具有被细分以表示多个时间区间的缓冲器1102的直方图数据路径。和图10中的缓冲器1002对比,图11中的缓冲器1102被配置为在多个时间区间期间从光传感器802接收光子计数。在此示例中,还可增加缓冲器1102的大小。不是为12位宽,而是可将缓冲器1102增加为48位宽。此示例不意在为限制性的。其他实施例不需要增加缓冲器1102的大小,而是可替代地将缓冲器的现有大小细分成多个部分或寄存器,每个部分或寄存器表示一时间区间。在此示例中,每个时间区间仍然由12位表示,因此缓冲器1102 可在总共48位中表示四个时间区间,每个时间区间为12位宽。
[0146]
缓冲器1102可通过从算术逻辑电路804依次接收光子计数来表示多个时间区间,所述光子计数然后被存储到缓冲器1102的每个顺序分部中。举例来说,对于第一时间区间,算术逻辑电路804可将其结果存储在缓冲器1102的第一12位(位[11:0])中。对于第二时间区间,算术逻辑电路804可将其结果存储在缓冲器1102的第二12位(位[23:12])中。在第三时间区间期间,算术逻辑电路804可将其结果存储在缓冲器1102的第三12位(位[35:24])中。并且,在第四时间区间期间,算术逻辑电路804可将其结果存储在缓冲器1102的第四12位 (位[47:36])中。如下所述,交换电路系统可用于将来自算术逻辑电路804的结果路由到缓冲器1102的适当位范围中。
[0147]
当缓冲器1102中的四个时间区间已被算术逻辑电路804填入时,缓冲器1102的内容能够被写入到存储器块1104。在此示例中,存储器块1104可具有被增加以与缓冲器1102的宽度匹配的宽度。因此,单个写入操作能够将缓冲器1102的内容转移到存储器块1104的单行中。如图11所图示的,存储器块1104中的每行可表示用于光传感器802的四个连续时间区间。如图11所图示的,存储器块1104中的每行可包括与缓冲器1102中的位数相对应的位数 (例如,48位)。这些位可被细分成多个“寄存器”,每一个“寄存器”表示用于对应光传感器的单个时间区间。在一些实施例中,存储器块1104中的个别寄存器可以是个别地可寻址的,使得举例来说,光学测量系统能够写入到个别寄存器(例如,第0行,位[23:12])。在一些实施例中,存储器块1104可读取/写入存储器块1104中的全部行。
[0148]
存储器1104中的行数还可取决于缓冲器1102的大小和光传感器802的期望时间分辨率。在此示例中,已使存储器块1104中的行数维持在128行。因此,由用于光传感器802的存储器块1104表示的时间区间的总数已成为四倍,因为缓冲器1102的大小已成为四倍。在此示例中,存储器块1104可表示512个直方图区间而不是128个直方图区间。假定每个激发的长度保持不变,时间区间数目的这种增加可对应于直方图的时间分辨率的增加。因此,这在计算与周围环境中的对象的距离时可导致增加的空间分辨率。
[0149]
尽管在图11中未显式地示出,一些实施例可增加或减小存储器块1104中的行数。例如,一些实施例可随着在每行中表示的时间区间的数目增加而减小存储器块1104中的行数。这可被用于仍然增加直方图的时间分辨率的较短激发。这还可用于通过增加宽度同时相应地减小长度来维持存储器块1104的总大小。
[0150]
图11还图示操作此直方图数据路径中的组件的时钟信号的定时图。在此示例中,算术逻辑电路804可使用比由存储器块1104和/或缓冲器1102使用的时钟信号1108快四倍
的时钟信号1106。如果假定存储器块1104的时钟速度与图10中图示的相同,则算术逻辑电路804 能够被计时得比它使用仅单个时间区间宽的缓冲器快四倍。因此,一些实施例可将算术逻辑电路804操作的速度增加与由缓冲器1102表示的时间区间的数目成比例的量。这还允许系统增加存储在存储器块1104中的直方图的时间分辨率,而不必增加存储器块1004以之操作的速度。
[0151]
在上面详细地描述了光传感器802中的光检测器和算术逻辑电路804的操作。为了进一步简化本公开,可将光传感器802、算术逻辑电路804和/或任何相关电路系统的组合简单地描述为“像素”1110。因此,以下讨论可指代像素1110及其与相关缓冲器1102和/或存储器块1104的关系。像素1110可包括图11中图示的所有电路系统,以及个别光检测器(例如, spad)、阈值检测电路系统、保持电路系统、使现有时间区间值被添加到新光子计数的电路系统等。
[0152]
图12图示根据一些实施例的多个像素的阵列,所述多个像素中的每一个写入到单个存储器块。光学测量系统可包括多个像素的阵列,每一个像素可被绑定到对应缓冲器和对应存储器块。在一些实施例中,如图10中描绘的那样为仅单个时间区间宽的缓冲器可被用于每个像素。在图12的示例中,每个像素1110、1210、1220可连接到多个时间区间宽的对应缓冲器 1102、1202、1212。这些缓冲器1102、1202、1212中的每一个可与具有对应于缓冲器1102、 1202、1212的宽度的宽度的对应单个存储器块1104、1204、1214耦合。
[0153]
尽管此示例示出像素1010、1210、1220中的每一个耦合到缓冲器和存储器块的单个组合,但是并非所有实施例都受此限制。通过调整缓冲器的宽度和/或用于操作缓冲器的时钟信号的定时,可将多个像素路由到单个缓冲器。在其他实施方案中,可将单个像素路由到多个缓冲器。如将在下面描述的,关于哪些像素写入到哪些缓冲器的确定可在设计时做出和/或可在运行时动态地做出。这允许实现像素/缓冲器配对的许多组合并且允许光学测量系统微调它提供的光学通道的数目和/或由每个通道提供的时间分辨率。
[0154]
vi.多像素存储器配置
[0155]
图13图示根据一些实施例的接收来自两个不同像素1110、1210的合计光子计数的单个缓冲器1102。如上所述,缓冲器1102可被细分为使得它表示四个不同时间区间,其中每一个时间区间是12位宽。可自由地调整时间区间的数目和/或用于表示每个时间区间的位数以使用更多或更少的位和/或然后在图13中描绘时间区间。另外,可增加或减小缓冲器1102的总宽度以适应各种区间计数和/或宽度。
[0156]
由缓冲器1102表示的时间区间能够在像素1110与像素1210之间分割。在第一时间区间期间,像素1110和像素1210都可能在同时地接收相应的光子计数并且使用它们相应的算术逻辑电路来合计那些光子计数。来自像素1110、1210的输出可被存储在缓冲器1102的前两个时间区间中。例如,来自像素1110的第一时间区间可被存储在缓冲器1102的第一12位 1302中,然而来自像素1210的第一时间区间可被存储在缓冲器1102的第二12位1304中。在每一个像素1110、1210的第一时间区间已被写入到缓冲器1102之后,切换电路系统可将像素1110、1210的输出重新路由到缓冲器1102中的接下来两个时间区间。例如,来自像素 1110的第二时间区间可被存储在缓冲器1102的第三12位1306中,然而来自像素1210的第二时间区间可被存储在缓冲器1102的第四12位1308中。
[0157]
当缓冲器1102变满时,与缓冲器1102相对应的存储器块1104能够执行写入操作以
将缓冲器1102的内容存储到存储器块1104的单行中。图13图示如何能够在整个存储器块中存储来自像素的时间区间。例如,存储器块1104的“0”行可存储来自像素1110的第一时间区间 (p0 b0)、来自像素1210的第一时间区间(p1 b0)、来自像素1110的第二时间区间(p0 b1)、以及来自像素1210的第二时间区间(p1 b1)。因此,如果存储器块1104中的行数未增加,则在多个像素之间共享单个存储器块1104可减小可由存储器块1104表示的时间区间的数目。举例来说,不是在图11中表示每个像素的512个时间区间,而是图13的实施方案可表示每个像素的256个时间区间。其他实施例可增加存储器块1104的大小以维持每个像素的先前数目的区间。
[0158]
注意,与图11的示例相比,缓冲器1102的结构和存储器块1104的结构不需要改变。所描绘的唯一变化是多个像素1110、1210写入到缓冲器1102而不是仅单个像素1110。因此,可如在下面更详细地描述的那样通过像素1110、1210与缓冲器1102之间的切换电路来实现单个像素写入到单个缓冲器与多个像素写入到单个缓冲器之间的切换。
[0159]
图13还图示与每一个像素和存储器缓冲器/块相关联的时钟信号的定时图。在此示例中,用于像素1210的时钟信号1314可与用于像素1210的时钟信号1312同相。因此,像素1110 和像素1210可使用同一共享时钟信号来计时。另外,时钟信号1314和时钟信号1312可具有为用于缓冲器1102和存储器块1104的时钟信号1310两倍的频率。因此,在此配置中像素1110、1210可被计时为存储器块1104的两倍快。
[0160]
图14图示根据一些实施例的接收来自四个不同像素1110、1210、1220、1410的合计光子计数的单个缓冲器1102。在此实例中,四个不同像素1110、1210、1220、1410中的每一个可全部在每个时间区间期间同时地写入到缓冲器1102的个别分部。缓冲器1102的第一12 位1302可在每个时间区间期间从像素1110接收光子计数。类似地,缓冲器1102的第二12 位1304可在每个时间区间期间从像素1210接收光子计数,依此类推。因此,在每个时间区间结束时,缓冲器1102可被来自像素1110、1210、1220、1410中的每一个的光子计数完全填入。
[0161]
可基于缓冲器1102中的分部的数目确定可共享单个缓冲器1102和/或存储器块1104的像素的数目。举例来说,通过将缓冲器1102中的分部的数目增加为六而不是四,缓冲器1102 可能容纳多达六个不同像素。如上所述,可通过连同存储器块1104中的每行一起减小区间大小和/或增加缓冲器1102的宽度来增加分部的数目。增加耦合到缓冲器1102和存储器块1104 的像素的数目可减小可针对存储器块1104中的每个像素表示的区间的数目。例如,当使用如图14所图示的四个像素时,每个像素的时间区间的数目已减小到128个时间区间。
[0162]
图14还图示由各种像素和存储器组件使用的每一个时钟信号的定时图。四个时钟信号 1404、1406、1408、1420分别对应于四个像素1110、1210、1220、1410中的每一个。这些时钟信号中的每一个可共享相同频率和相位,使得像素1110、1210、1220、1410中的每一个可使用同一时钟源来计时。因为缓冲器1102在每个时间区间结束时被填入,所以用于缓冲器 1102和/或存储器块1104的时钟信号1402可与用于四个像素1110、1210、1220、1410的时钟信号1404、1406、1408、1420相同。因此,当像素的数目与缓冲器1102中的分部的数目匹配时,存储器块1104可以与像素1110、1210、1220、1410相同的时钟速度操作。虽然可对像素1010、1210、1220、1410中的每一个进行采样的速度相对于图13的示例减小,但是存储这些像素的直方图的存储器的总大小也可减小,因为单个存储器块1104能够容纳增加数目的像
素。这对于节省用于光学测量系统的集成电路上的空间可以是有利的。
[0163]
vii.存储器配置电路系统
[0164]
以上图示的示例配置示出可将一个或多个像素连接到单个缓冲器和/或存储器块的各种方式。这些示例包括连接到同一缓冲器的单个像素、两个像素、四个像素等。以上说明还在一般意义上描述其他像素计数如何也可连接到除具体地图示的那些以外的单个缓冲器。这些各种配置可针对连接到缓冲器的每个组件使用不同的时钟信号。还可静态地或动态地选择这些各种配置,使得在操作期间多种操作配置对光学测量系统来说是可能的。以下部分图示并描述可用于生成时钟信号并选择信号以在上述不同配置之间切换的电路系统。
[0165]
a.存储器选择电路
[0166]
图15图示根据一些实施例的用于多个像素与单个存储器块耦合的实施方案的选择电路 1502。选择电路1502可由多个复用器表示。在此示例中,选择电路1502中的每一个复用器可包括与连接到选择电路1502的像素的数目匹配的许多输入端。复用器上的每一个输入端可耦合到图15中图示的四个像素1110、1210、1220、1410之一。选择电路1502可接收为选择电路1502中的每一个复用器选择输入端的选择信号1510。尽管在图15中被图示为单个信号,但是对于选择电路1502中的每一个复用器选择信号1510可包括一个或多个选择信号。
[0167]
选择信号1510可包括许多不同可能的配置。在一种配置中,选择信号1510可使每一个复用器选择与像素1110相对应的输入端,使得缓冲器1102中的每一个时间区间在连续时间区间中接收来自像素1110的光子计数。在另一配置中,选择信号1510可使复用器中的两个选择像素1110,同时还使复用器中的两个选择像素1210。这可对应于图13中图示的配置。类似地,选择信号1510可使选择电路1502中的每一个复用器选择像素1110、1210、1220、 1410之一以对应于图14的配置,其中缓冲器1102在单个时间区间期间由四个不同像素填入。选择信号1510可由控制逻辑如在fpga或其他可编程逻辑中实现的状态机生成。选择信号 1510还可由允许在运行时或在操作期间动态地改变像素到存储器映射的配置的处理器或微控制器生成。
[0168]
时钟信号1504可为缓冲器1102和/或相关存储器块提供基线时钟信号。时钟信号1504 可被设置在存储器块的工作参数内的速度,并且可被设置为存储器块的最大速度。还可将时钟信号1504提供给倍增器电路1506。倍增器电路1506可使用选择信号1510来确定如何应该针对每一个像素使时钟信号1504倍增。举例来说,当选择信号1510使选择电路1502写入来自所有像素1110、1210、1220、1410的值时,倍增器电路1506可使时钟信号1504倍增,使得它向每一个像素1110、1210、1220、1410提供与时钟信号1504基本上相同的时钟信号 1508。相比之下,当选择信号1510使选择电路1502选择仅像素1110写入到缓冲器1102时,那么倍增器电路1506能够使时钟信号1504倍增,使得输出时钟信号1508的频率是时钟信号 1504的频率的四倍。
[0169]
尽管在图15中未显式地示出,但是倍增时钟信号1508还可以由缓冲器1102使用来当从对应像素接收到新值时在新值中计时。在一些实施例中,缓冲器1102的每一个个别分部可连同每一个像素一起被单独地计时。举例来说,当两个像素写入到缓冲器1102时,第一分部可在缓冲器1102中被一起计,并且第二分部可在后续时间区间期间在缓冲器1102中被
一起计时。
[0170]
图15仅图示光学测量系统中的四个像素1110、1210、1220、1410和单个缓冲器1102。然而,如上所述,与在图15中示出的相比,光学测量系统可包括相对大量的像素。举例来说,光学测量系统可包括阵列中的256个像素。在这样的阵列中,每个像素可连同与相邻像素相关联的可变数目的缓冲器一起耦合到它自己的缓冲器。举例来说,图15中的像素1410可耦合到属于像素1010的缓冲器1102,但是还可耦合到与像素1210、像素2020和图15中未具体地图示的其他像素相对应的单独缓冲器。因此,图15应该被理解为仅表示整体光学测量系统的一小部分。
[0171]
b.配置选择电路
[0172]
图16图示根据一些实施例的用于使用片上选项和/或片外选项来提供选择信号1510的电路。尽管图16表示用于生成选择信号1510的许多不同选项,但是并非所有这些选项在各种实施方案中都是必要的。各种实施例可使用任何和/或所有这些不同选项以便以任何组合且无限制地生成选择信号1510。
[0173]
在一些实施例中,可在设计和/或制造光学测量系统时生成选择信号1510。举例来说,可在设计时选取由每个缓冲器和存储器块表示的像素和/或时间区间的数目。取决于为连接 1602、1604而选择的组件,可将连接1602、1604放置在将选择信号1510拉到逻辑0或逻辑 1的电路中。举例来说,如果连接1602包括到电源的短路或低电阻路径,并且留下的连接1604 是到地的开路或相对高电阻路径,则选择信号1510可从电路板接收逻辑1。反转这些开路/ 短路连接可替代地向选择信号1510提供逻辑0。这些连接可用实际的短路/开路、可由处理器控制的晶体管、电压或电容分压器电路和/或其他分立电路元件来实现。可选择电路值(例如,电阻),使得它们为选择信号1510提供能够被更强输入重载的默认逻辑值。一旦芯片被制作,存储器和像素配置就可以是静态的。再次,尽管为了清楚选择信号1510在图16中被表示为仅单个信号,但是选择信号1510可使用多个信号来实现,每一个信号对应于选择电路中的特定时钟信号和/或复用器。
[0174]
在一些实施例中,光学测量系统可包括被实现在与缓冲器和存储器块相同的芯片上的片上处理器1606。片上处理器1606可生成控制光学测量系统的存储器配置的信号(例如,逻辑0或逻辑1)。此解决方案可与上述连接1602、1604组合,其中连接1602、1604作为具有相对弱上拉/下拉晶体管/电阻器的默认值,这些默认值能够被由片上处理器1606生成的信号重载。片上处理器1606允许系统在运行时动态地控制存储器配置。举例来说,以上在图11
‑ꢀ
图15中讨论的每种模式可由片上处理器1606选择。不同的选择信号可用于操作图15中描述的复用器并且将特定像素输出路由到与每种模式相对应的特定缓冲器。
[0175]
一些实施例还可使用各种片外电路来生成选择信号1510。以类似于连接1602、1604如何上拉/下拉选择信号1510的方式,还能够在芯片外使用一对连接1612、1614来执行类似功能。举例来说,可将电阻器/晶体管添加到在上面安装有光学测量系统芯片的电路板,并且这些电阻器/晶体管可向芯片上的引脚1608提供输入,所述输入作为选择信号1510被提供。还可将在引脚1608上提供的信号提供给片上处理器1606,该片上处理器能够进而生成选择信号1510。在一些实施例中,片外处理器1610还可用于在光学测量系统正在操作的同时生成选择信号1510,使得可在运行时动态地生成选择信号1510。
[0176]
viii.用于按照存储器块操作多个像素的方法
[0177]
图17图示用于使用其中一个或多个像素可写入到单个缓冲器且写入到单个存储器块中的光学测量系统的方法的流程图。此方法可选择一个或多个光传感器,使得它们的输出被存储在单个存储器块中。这允许光学测量系统动态地配置有多少光传感器写入到每个存储器块,从单个光传感器(例如,图11)到多个光传感器(例如,图14)变动。此方法可被应用于光学测量系统中的单个存储器块。如上所述,光学测量系统可包括在此方法中未具体地引用但是也接收光传感器输出的许多附加存储器块。因此,当在下面引用的存储器块接收来自多个光传感器的输出时,光学测量系统中的其他存储器块可被关闭或者以其他方式闲置。可针对光学测量系统中的每个存储器块执行此方法。
[0178]
在步骤1702处,该方法可包括作为光学测量的一部分在一个或多个第一时间间隔内从多个光源传输一个或多个脉冲串。一个或多个第一时间间隔中的每一个可表示在测量中重复多次的“激发”。第一时间间隔中的每一个可包括由光源编码和传输的一个或多个脉冲串,使得脉冲串能够被认为它们从周围环境中的对象反射出来。时间间隔中的每一个可被细分成多个时间区间,使得时间区间中的每一个表示在光学测量期间的合计光子计数的直方图中的区间。在上面关于图9描述了单个测量如何可包括细分成合计光子计数的时间区间的多个激发的示例。
[0179]
在步骤1704处,该方法还可包括使用光传感器来检测来自一个或多个脉冲串的光子。如上所述,每一个光传感器可包括多个光检测器,诸如多个spad。每一个光传感器可接收反射光以及从周围环境接收到的环境背景噪声。光传感器还可耦合到阈值检测电路以及累积光子计数的算术逻辑电路。此组合可在上面被称为“像素”。图5图示如何可从光传感器接收光子计数并且使用阈值电路和像素计数器(例如,算术逻辑电路)来对光子计数进行计数的示例。
[0180]
在步骤1706处,该方法还可包括在多个光传感器中选择至少一个光传感器以共享存储器块。在一些实施例中,可提供使一个或多个复用器选择至少一个光传感器并且将来自至少一个光传感器的输出路由到多个存储器块中的单个存储器块的选择信号。选择不止一个光传感器以共享一个存储器块可使其他存储器块保持空闲。使用选择信号,被选择的至少一个光传感器可包括单个光传感器、两个光传感器、三个光传感器、四个或更多个光传感器等。选择不止一个光传感器以共享存储器块可使由光传感器使用的时钟信号减小。可使用例如以上关于图15和图16描述的任何技术来选择光传感器。
[0181]
在步骤1708处,该方法可另外包括将在一个或多个时间间隔期间接收到的来自至少一个光传感器的光子计数累积到共享存储器块中。在一些实施例中,累积光子计数可首先被存储在与存储器块上的读取/写入端口相同的宽度的存储器缓冲器中。存储器缓冲器可被细分成一个或多个部分,或表示能够由所选光传感器依次填充的时间区间的个别寄存器或分部。举例来说,在图11中缓冲器1102被细分成四个部分。缓冲器可在缓冲器的每一个部分中和/或在存储器块中的一行的单独寄存器或部分中存储在多个时间区间内来自多个光传感器的累积光子计数。当缓冲器满时,存储器缓冲器可将其内容存储在存储器块中。存储器块可包括多个寄存器,并且每一个寄存器可对应于单个光传感器和单个时间区间,使得存储器块表示共享存储器块的每一个所选光传感器的直方图。在一些实施例中,在多个光传感器之间共享存储器块可使由存储器块表示的任何直方图中的时间区间的数目减小。来自时间区间的光子计数可如以上在图11-图14所图示的那样被存储在存储器块的行中。
[0182]
应该领会,图17中图示的特定步骤提供根据各种实施例的使用光学测量系统的特定方法。还可根据替代实施例执行步骤的其他顺序。举例来说,本发明的替代实施例可以不同次序执行以上概述的步骤。此外,图17中图示的个别步骤可包括可以个别步骤适合的各种顺序执行的多个子步骤。此外,可取决于特定应用而添加或去除附加步骤。本领域的普通技术人员将认识到许多变化、修改和替代方案。
[0183]
ix.每像素多存储器块
[0184]
上述配置允许光学测量系统将来自一个或多个像素的光子计数存储在单个存储器块中。单个存储器块可通过使用像素与存储器块它本身之间的缓冲器来容纳多个像素。然而,在存储器块中的像素之间提供缓冲器不仅允许将多个像素写入到单个存储器块,它还允许将单个像素写入到多个存储器块。下述配置图示存储器块如何能够将时间区间存储在一个或多个存储器块中以增加像素的时钟速度的许多示例。
[0185]
a.半通道配置
[0186]
图18图示根据一些实施例的单个像素1110如何可写入到多个缓冲器和多个存储器块。在此示例中,像素1110可与上述缓冲器1102和存储器块1104通信地耦合。缓冲器1102和存储器块1104可足够宽以对于每个时间区间使用12位来表示四个时间区间。在以上在图11 中描述的单像素、单存储器块配置中,像素1110可使用频率为存储器块四倍的时钟来将四个时间区间写入到缓冲器1102,并且缓冲器1102可在每四个时间区间之后写入到存储器块 1104。
[0187]
在此配置中,像素1110还可通信地耦合到第二缓冲器1802和第二存储器块1804。第二缓冲器1802可类似于第一缓冲器1102,因为它是48位宽并且被细分成四个时间区间。尽管在图18中未显式地示出,但是缓冲器1802还可连接到另一像素。因此,在第一配置中操作,像素1110可操作来仅从缓冲器1102接收输入,同时缓冲器1802可操作来仅从另一像素(未示出)接收输入。当在图18所图示的第二配置中操作时,像素1110可连接到缓冲器1102和缓冲器1802两者,同时可关闭另一个像素。因此,当在单个像素之间共享存储器时,一些实施例可关闭像素阵列中的一半像素以便允许其他像素使用它们的存储器块。这可具有减小光学测量系统上可用的通道的数目的效果。举例来说,具有256个像素通道的光学测量系统可在所有256个通道都活动的状态的第一模式下操作,每个通道具有它们自己的存储器块。同一光学测量系统可在仅128个通道活动的第二模式下操作,每个通道使用两个存储器块。类似地,光学测量系统可在仅64个通道活动的第三模式下操作,每个通道使用四个存储器块。这些不同的操作模式分别可被称为全通道模式、半通道模式和四分之一通道模式。
[0188]
当在半通道模式下操作时,像素1110可将激发中的前四个时间区间的值写入到缓冲器 1102中。当缓冲器1102满时,存储器块1104可将缓冲器1102的内容写入到存储器块1104 的第一行(例如,b0、b1、b2、b3)。接下来,像素1110可将激发的接下来四个时间区间存储到缓冲器1802中。当缓冲器1802满时,存储器块1804可将缓冲器1802的内容写入到存储器块1804的第一行(例如,b4、b5、b6、b7)。继续,像素1110可在每第四时间区间之后交替将时间区间值写入到每个缓冲器。如上所述,作为示例仅使用48位缓冲器和每个缓冲器中的四个时间区间。更一般地说,像素1110可在它已写入由缓冲器表示的最大数目的时间区间时在缓冲器之间切换。
[0189]
尽管可减小光学测量系统上的活动通道的数目,但是在半通道模式下可增加在单
激发期间可被写入的时间区间的数目。在此示例中,不是将512个时间区间写入到单个存储器块,而是像素1110能够将1024个时间区间写入到存储器块1104和存储器块1804的组合。当在存储器1104、1804中构建直方图时,这还可允许像素1110被计时得比存储器块1104、1804 中的任何一个更快以增加像素1110的时间分辨率。
[0190]
图18还图示像素1110和存储器1104、1804中的每一个的定时图。假定存储器1104、 1804中的每一个被以大约62.5mhz计时,像素的时钟信号1814可被以500mhz计时。更一般地说,像素1110的时钟信号1814可以比存储器块1104、1804的时钟信号1810、1812快八倍的频率计时。因此,尽管可将通道的数目减小一半,但是与图11中图示的全通道模式相比,像素的时钟速度可加倍。
[0191]
除了增加像素1110的时钟信号1814的速度之外,还可调整用于存储器块1104、1804的时钟信号1810、1812,使得它们相对于彼此异相180
°
。在此示例中,对于每一个存储器块1104、 1804在连续写入操作之间存在16ns的延迟。然而,当像素1110被以500mhz计时时,缓冲器1102、1802之一可准备好每8ns写入一次。通过使时钟周期移位彼此异相100
°
,存储器块1104、1804之一能够在其对应的缓冲器满时准备好每8ns写入一次。举例来说,像素 1110能够在图18中的定时图的第一8ns期间将四个值写入到缓冲器1102。在8ns,缓冲器 1102能够将其内容写入到存储器块1104。在8ns与16ns之间,像素1100然后能够将四个时间区间值写入到缓冲器1802。在16ns,存储器块1104尚未准备好写入数据的另一48位。然而,存储器块1804就绪,并且它能够接收缓冲器1802的内容。
[0192]
图18中使用的确切定时仅仅作为示例被提供,而不意在为限制性的。可为各种实施例选择与存储器装置兼容的任何时钟周期。各种时钟信号1810、1812、1814之间的相对定时可被用于任何选取的时钟频率。
[0193]
b.四分之一通道配置
[0194]
图19a图示根据一些实施例的其中单个像素1110与四个缓冲器和四个存储器块耦合的四分之一通道配置。在此示例中,单个像素1110可通信地耦合到四个不同的缓冲器1102、 1802、1902、1906。如上所述,还可将这些缓冲器1102、1802、1902、1906中的每一个指配给它们自己的个别像素(未示出)。然而,在四分之一通道模式下,可关闭这三个其他像素,使得像素1110能够写入到所有四个缓冲器1102、1802、1902、1906。这可将光学测量系统上的活动通道的数目从例如256个减小直至64个活动通道。
[0195]
与半通道配置的情况一样,四分之一通道配置能够将连续时间间隔的值单独地写入到每一个缓冲器,直到它们被填充为止,然后按顺序移动到下一个缓冲器上。举例来说,第一四个时间区间(例如,b0-b3)能够被写入到缓冲器1102,接下来四个时间区间(例如,b4-b7) 能够被写入到缓冲器1802,接下来四个时间区间(例如,b8)-b11)能够被写入到缓冲器 1902,并且接下来四个时间区间(例如,b12-b15)能够被写入到缓冲器1906。随着每一个缓冲器1102、1802、1902、1906被填充,它们能够将其内容写入到它们关联的存储器块1104、 1804、1904、1908。
[0196]
通过再次将指配给像素1110的存储器块的数目加倍,此配置再次有效地将能够在单个激发中存储的时间区间的数目加倍。不是存储例如1024个时间区间,而是此配置可为单个激发存储2048个时间区间。这能够通过进一步减小由激发中的每个时间区间表示的时间来进一步增加像素1110的时间分辨率。
[0197]
图19b图示根据一些实施例的在四分之一通道配置中使用的各种时钟信号的定时图。继续假定存储器块1104、1804、1904、1908中的每一个以62.5mhz操作,可将用于像素1110 的时钟速度增加到1ghz。更一般地说,在四分之一通道配置中用于像素的时钟信号1920的频率可以是四个相关存储器块的时钟信号1910、1912、1914、1916的频率的16倍。
[0198]
当像素1110被以1ghz计时时,缓冲器1102、1802、1902、1906之一可由像素1110 每4ns填充一次。因此,相关存储器块1104、1804、1904、1908之一可能需要准备好每4ns 读入那些值。尽管用于存储器块的时钟信号1910、1912、1914、1916中的每一个可保持在 62.5mhz,但是可使这些时钟信号中的每一个移位相对于彼此异相90
°
。例如,时钟信号1910 可使存储器块1104在8ns写入缓冲器1102的内容。接下来,时钟信号1912可使存储器块 1804在12ns写入缓冲器1802的内容。时钟信号1914然后可使存储器块1904在12ns写入缓冲器1902的内容。时钟信号1916接下来可使存储器块1908在16ns写入缓冲器1906的内容,依此类推。
[0199]
x.存储器配置电路系统
[0200]
图20图示根据一些实施例的用于其中一个或多个存储器可与单个像素耦合的实施方案的选择电路2002。选择电路2002可由多个复用器表示。在此示例中,选择电路2002中的每一个复用器可包括多个输入端,每一个输入端可耦合到图20中图示的四个像素1110、1210、 1220、1410之一。选择电路2002可接收为选择电路2002中的每一个复用器选择输入端的选择信号2010。尽管在图20中被图示为单个信号,但是对于选择电路2002中的每一个复用器选择信号2010可包括一个或多个选择信号。一些实施例还可在每一个缓冲器中为每个时间区间包括复用器,从而在此示例中产生16个复用器。
[0201]
选择信号2010可包括许多不同可能的配置。在一种配置中,选择信号2010可使每一个复用器选择与像素1110相对应的输入端,使得缓冲器1102中的每一个时间区间在连续时间区间中接收来自像素1110的光子计数。此配置可对应于上述四分之一通道模式,其中单个像素1110写入到所有四个存储器块1104、1804、1904、1908。在另一配置中,选择信号2010 可使复用器中的两个选择像素1110并且可使复用器中的两个选择像素1210。这可对应于上述半通道配置,其中每个像素写入到两个存储器块。类似地,选择信号2010可替代地使选择电路2002中的每一个复用器选择像素1110、1210、1220、1410之一以对应于上述全通道配置,其中每个像素写入到单个存储器块。
[0202]
时钟信号2004可为每一个缓冲器1102、1802、1902、1906和/或其关联的存储器块1104、 1804、1904、1908提供基线时钟信号。时钟信号2004可被设置在存储器块的工作参数内的速度,并且可被设置为存储器块的最大速度,诸如62.5mhz。此时钟信号2004然后可传递通过用于每一个存储器块的移相器2016,使得取决于通道配置,每个存储器块接收时钟信号 2004的相对于相邻存储器块移位异相90
°
、异相180
°
等的版本。
[0203]
还可将时钟信号2004提供给倍增器电路2006。倍增器电路2006可使用选择信号2010 来确定如何应该针对每一个像素使时钟信号2004倍增。举例来说,当选择信号2010使选择电路2002将来自像素1110之一的值写入到所有存储器块1104、1804、1904、1908时,分频器电路2006可使时钟信号2004倍增,使得它向像素1110提供例如为时钟信号2004的频率 16倍的时钟信号2008。
[0204]
尽管在图20中未显式地示出,但是倍增信号2008还可以由缓冲器1102、1802、
1902、 1906使用来当从对应像素接收到新值时在新值中计时。在一些实施例中,缓冲器1102的每一个个别分部可连同每一个像素一起被单独地计时。举例来说,当像素1110写入到缓冲器 1102时,缓冲器1102中的第一分部可随像素1110被计时,缓冲器1102中的第二分部可随用于像素1110的下一个时间区间被计时,依此类推。
[0205]
图20仅图示光学测量系统中的四个像素1110、1210、1220、1410和四个缓冲器1102、 1802、1902、1906。然而,如上所述,与在图20中示出的相比,光学测量系统可包括相对大量的像素。举例来说,光学测量系统可包括阵列中的256个像素。在这样的阵列中,每个像素可连同用于相邻像素的可变数目的缓冲器一起耦合到它自己的缓冲器。举例来说,图20 中的像素1410可耦合到属于像素1010的缓冲器1102,但是还可耦合到与图20中未图示的像素相对应的单独缓冲器。因此,图20应该被理解为仅表示整体光学测量系统的一小部分。
[0206]
xi.用于操作多个存储器块的方法
[0207]
图21图示用于使用光学测量系统来将来自单个光传感器的输出存储在一个或多个存储器块中的方法的流程图。如上所述,取决于所选择的配置,该方法可允许光学测量系统将来自光传感器的信号动态地路由到一个或多个存储器块。在上面在图18-图19b中图示了可被选择的不同配置的示例。该方法允许光学测量系统取其中单个光传感器写入到单个存储器块的直方图数据路径并且重新路由光传感器输出,使得单个光传感器写入到其他直方图数据路径中的存储器块。这可使那些其他数据路径中的光传感器被关闭或以其他方式闲置,因为它们的存储器块被此光传感器使用。以下方法描述用于光学测量系统中的单个光传感器的过程。然而,如上所述,光学测量系统可包括许多光传感器,并且可针对光学测量系统中的每个光传感器执行此方法。
[0208]
在步骤2102处,该方法可包括作为光学测量的一部分在一个或多个第一时间间隔内从光源传输一个或多个脉冲串。一个或多个第一时间间隔中的每一个可表示在测量中重复多次的“激发”。第一时间间隔中的每一个可包括由光源编码和传输的一个或多个脉冲串,使得脉冲串能够被认为它们从周围环境中的对象反射出来。时间间隔中的每一个可被细分成多个时间区间,使得时间区间中的每一个表示在光学测量期间接收的光子计数的直方图中的区间。在上面关于图9描述了单个测量如何可包括细分成合计光子计数的时间区间的多个激发的示例。
[0209]
在步骤2104处,该方法还可包括使用光传感器来检测来自一个或多个脉冲串的光子。如以上详细地描述的,光传感器可包括多个光检测器,诸如多个spad。光传感器可接收反射光以及从周围环境接收到的环境背景噪声。光传感器还可耦合到阈值检测电路系统和/或累积光子计数的算术逻辑电路系统。此组合可在上面被称为“像素”。图5图示如何可从光传感器接收光子计数并且使用阈值电路和像素计数器(例如,算术逻辑电路)来对光子计数进行计数的示例。
[0210]
在步骤2106处,该方法还可包括从多个存储器块中选择一个或多个存储器块以在其中存储来自光传感器的累积光子计数。在一些实施例中,可提供使一个或多个复用器将来自光传感器的累积光子计数路由到一个或多个存储器块的选择信号。选择不止一个存储器块以共享单个像素可使光学测量系统中的其他像素保持空闲。使用选择信号,一个或多个存储器块可包括单个存储器块、两个存储器块、三个存储器块、四个或更多个存储器块
1410中的每一个可被以两倍于存储器块1104、1804、1904、1908的速度计时。一些实施例还可将这个用作双通道配置。例如,不是允许存储器块1804、1908保持空闲,而是一些实施例可包括在需要时能够被打开的额外像素。例如,默认256通道光学测量系统可包括额外像素(例如,总共512个像素),并且能够使用选择信号来打开或关闭这些像素。这允许光学测量系统灵活地激活更多通道而不用添加额外存储器块,因为附加像素能够与现有像素共享存储器块。
[0218]
图22b图示来自四个相邻像素的输出被路由到单个存储器块的配置。具体地,来自像素 1110、1210、2020、1410的输出可全部被路由到存储器块1104。存储器块1804、1904、1908 可保持空闲。如上所述,像素1110、1210、1220、1410中的每一个可被以与存储器块1104 相同的速度计时。如图22a中的情况一样,此配置可被用作其中能够通过激活超出默认数目的像素的附加像素使光学测量系统上的通道的数目成四倍的四通道配置。例如,对于每个默认像素,能够被选择性地打开并路由到共享存储器块1104的三个附加像素可以是可用的。
[0219]
图22c图示根据一些实施例的其中单个像素被路由到两个存储器块的半通道配置。具体地,来自像素1110的输出可被路由到存储器块1104、1804,并且来自像素2020的输出可被路由到存储器块1904、1908。可关闭像素1210、1410,使得光学测量系统中的像素通道的数目减小了一半。像素1110、1220可被以两倍于存储器块1104、1804、1904、1908的频率计时。
[0220]
图22d图示根据一些实施例的其中单个像素被路由到四个存储器块的四分之一通道配置。具体地,来自像素1110的输出可被路由到存储器块1104、1804、1904、1908。像素1210、 1220、1410可保持空闲。像素1110可被以四倍于存储器块1104、1804、1904、1908的频率计时。
[0221]
应该强调的是,光学测量系统可使用选择信号来在图22a-图22d中图示的任何配置之间转变。如上所述,可在设计和/或制造光学测量系统时实现选择信号。替代地或另外,可在光学测量系统在操作中时在运行时提供选择信号。例如,通过使用片外处理器来调整选择信号,光学测量系统可无限制地在图22a的配置与图22d的配置之间转变。
[0222]
xiii.附加实施例
[0223]
虽然本文公开的一些实施例关注于在用于汽车使用情况的3d感测的情境内应用光测距,但在不脱离本公开的范围的情况下可在任何应用中使用本文公开的系统。举例来说,系统可具有小或甚至微型的形状因数,其实现若干附加使用情况,例如用于固态光测距系统。举例来说,系统可用于如移动电话、平板pc、膝上型计算机、桌面pc的装置内或其他外围装置和/或用户接口装置内的3d相机和/或深度传感器。举例来说,可在移动装置内采用一个或多个实施例以支持面部辨识和面部跟踪能力、眼部跟踪能力和/或用于对象的3d扫描。其他使用情况包含面向前的深度相机以用于移动装置中的扩增和虚拟现实应用。
[0224]
其他应用包括在如飞机、直升飞机、无人机和类似物的机载交通工具上部署一个或多个系统。此类实例可提供3d感测和深度成像以帮助导航(自主或以其他方式)和/或产生3d 地图以用于稍后分析,例如支持地球物理、建筑和/或考古学的分析。
[0225]
系统还可安装到如建筑物、墙、线杆、桥、脚手架和类似物的固定对象和结构。在此类情况下,系统可用于监视室外区域,如制造设施、装配线、工业设施、建筑工地、挖掘场地、
道路、铁路、桥梁等。此外,系统可安装在室内且用以监视个人和或对象在建筑物内的移动,如在仓库内的库存的移动或人、行李或货物在办公楼、机场、火车站等内的移动。如得益于本公开的所属领域的一般技术人员将理解,光测距系统的许多不同应用是可能的,且因此,本文提供的实例是仅出于说明性目的提供,且不应解释为将此类系统的使用仅限于显式地公开的实例。
[0226]
xiv.计算机系统
[0227]
本文提到的计算机系统或电路中的任一个可利用任何合适数目个子系统。子系统可经由系统总线75连接。作为实例,子系统可包含输入/输出(i/o)装置、系统存储器、存储装置和可用于连接计算机系统其他装置(例如,引擎控制单元)的网络适配器(例如以太网、wi-fi 等)。系统存储器和/或存储装置可体现计算机可读媒体。
[0228]
计算机系统可包含多个相同组件或子系统,所述组件或子系统例如通过外部接口、通过内部接口或经由可装卸式存储装置连接在一起,所述可装卸式存储装置可从一个组件连接到另一组件和从一个组件去除到另一组件。在一些实施例中,计算机系统、子系统或设备可经由网络通信。
[0229]
实施例的方面可使用硬件电路(例如,专用集成电路或现场可编程门阵列)和/或以模块化或集成方式使用具有大体上可编程处理器的计算机软件以控制逻辑的形式实现。如本文所使用,处理器可包含单核处理器、同一集成芯片上的多核处理器或单个电路板上或联网的多个处理单元,以及专用硬件。基于本公开和本文中所提供的教示,所属领域的一般技术人员将知道且理解使用硬件和硬件与软件的组合来实施本发明的实施例的其他方式和/或方法。
[0230]
本技术中描述的软件组件或功能中的任何一个可实现为使用例如java、c、c 、c#、 objective-c、swift的任何合适的计算机语言或如perl或python的脚本语言使用例如常规或面向对象的技术的由处理器执行的软件代码。软件代码可存储为计算机可读媒体上用于存储和/或传输的一连串指令或命令。合适的非暂时性计算机可读媒体可包含随机存取存储器 (ram)、只读存储器(rom)、如硬盘驱动器或软盘的磁性媒体或如光盘(cd)或数字通用光盘(dvd)的光学媒体、快闪存储器和类似物。计算机可读媒体可是此类存储或传输装置的任何组合。
[0231]
此类程序也可使用载波信号来编码和传输,所述载波信号适合于经由包括因特网的符合多种协议的有线、光学和/或无线网络来传输。因此,计算机可读媒体可使用以此类程序编码的数据信号产生。以程序代码编码的计算机可读媒体可与兼容装置一起封装或与其他装置分开地提供(例如,经由因特网下载)。任何此类计算机可读媒体可存在于单个计算机产品(例如硬盘驱动器、cd或整个计算机系统)上或内部,且可存在于系统或网络内的不同计算机产品上或内部。计算机系统可包含监视器、打印机,或用于向用户提供本文所提及的任何结果的其他合适的显示器。
[0232]
本文所描述的任何方法可完全或部分地用计算机系统执行,所述计算机系统包括可配置成执行所述步骤的一个或多个处理器。因此,实施例可涉及配置成执行本文所述的任何方法的步骤的计算机系统,所述计算机系统可能具有执行相应步骤或相应步骤群组的不同组件。虽然呈现为编号的步骤,但本文的方法的步骤可同时或在不同时间或以不同次序执行。另外,这些步骤的部分可与其他方法的其他步骤的部分一起使用。而且,步骤的全
部或部分可是任选的。另外,任何方法的步骤中的任一个可利用用于执行这些步骤的系统的模块、单元、电路或其他构件来执行。
[0233]
在不偏离本发明的实施例的精神和范围的情况下,特定实施例的特定细节可任何合适方式组合。然而,本发明的其他实施例可针对与每一个别方面或这些个别方面的特定组合相关的特定实施例。
[0234]
已经出于说明和描述的目的呈现了对本发明的实例实施例的以上描述。不旨在是详尽的,或将本发明局限为所描述的精确形式,根据上文的教示,许多修改和变形是可能的。
[0235]
除非明确指示有相反的意思,否则叙述“一”、“一个”或“该”旨在表示“一个或多个”。除非明确指示为相反情况,否则“或”的使用旨在表示“包含性的或”,而不是“排除性的或”。对“第一”组件的引用不一定要求提供第二组件。此外,除非明确指出,否则提到“第一”或“第二”组件并不将提到的组件局限在特定方位。术语“基于”旨在表示“至少部分地基于”。
[0236]
本文所提及的所有专利、专利申请、公开案和描述都出于所有目的通过引用整体地并入。并非承认它们是现有技术。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献