用于tof应用的锁存格雷码
技术领域
1.本公开总体上涉及一种电子系统和方法,并且在特定实施例中,涉及一种用于飞行时间(tof)应用的锁存格雷码。
背景技术:
2.tdc提供与事件相关联的时间的数字表示。例如,tdc可以用于测量第一事件和第二事件之间的时间。
3.tdc的实现可以使用计数器。计数器在第一事件出现时启动,并且在第二事件出现时停止。计数器的所得计数是第一事件和第二事件之间的时间的表示。可以通过使用所得计数和由计数器接收的时钟的频率来计算时间。在这种类型的tdc实现中,较高的时钟频率通常导致较高的时间分辨率。
4.例如,在使用飞行时间(tof)技术来确定距离的测距系统中,可以使用tdc。例如,在tof系统中,光的脉冲例如利用垂直腔表面发射激光器(vcsel)来发射,并且被从对象反射回光子传感器,诸如单光子雪崩二极管(spad)。光传播到对象并且反射回到单光子传感器所需的时间可以用于基于已知的光速确定对象和设备之间的距离。在这种tof系统中,tdc可以用于生成光的脉冲的发射与光子传感器对反射脉冲的接收之间的时间的数字表示。
技术实现要素:
5.根据一个实施例,一种方法包括:向tdc提供格雷编码的时间基准;从事件信号接收事件;当接收到事件信号时,将格雷编码的时间基准锁存到存储器中;以及基于所锁存的格雷编码的时间基准,来更新tof直方图。
6.根据一个实施例,一种电路包括:第一输入,被配置为接收事件;第二输入,被配置为接收格雷编码的时间基准;第一寄存器,被配置为在接收到事件时,锁存格雷编码的时间基准;以及直方图生成电路,被配置为更新直方图存储装置的bin寄存器,bin寄存器具有基于第一寄存器的内容的地址。
7.根据一个实施例,一种tof系统包括:被配置为发射光脉冲的照明源、spad阵列、耦合到spad阵列的多个tdc,以及多个直方图生成电路。多个直方图生成电路中的每个直方图生成电路耦合到多个tdc中的相应tdc。每个tdc包括:第一输入,耦合到spad阵列的相应spad,第二输入,被配置为接收格雷编码的时间基准,以及第一寄存器,被配置为:在激活相应spad时,锁存格雷编码的时间基准。多个直方图生成电路中的每个直方图生成电路被配置为:更新相应直方图存储装置的相应bin寄存器,相应bin寄存器具有基于相应第一寄存器的内容的地址。
附图说明
8.为了更完整地理解本发明及其优点,现在参考以下结合附图的描述,其中:
9.图1示出了根据本发明的一个实施例的tof成像系统;
10.图2和图3示出了根据本发明的实施例的,图1的tdc和图1的对应的直方图生成电路到图1的spad阵列的耦合的可能实现的示意图;
11.图4示出了根据本发明的一个实施例的定时图,其图示了图1的基准地址以及图2或图3的tdc的输入和输出信号;
12.图5示出了根据本发明的一个实施例的图2或图3的直方图生成电路的可能实现;
13.图6示出了根据本发明的一个实施例的框图,其图示了由图5的直方图生成电路生成的直方图的生成和寻址的一个方面;
14.图7示出了4位的二进制到格雷转换器的常规实现;
15.图8示出了根据本发明的一个实施例的、用于使用格雷编码的时间基准来生成、存储和读取tof直方图的一个实施例方法的流程图;
16.图9示出了根据本发明的一个实施例的、用于临时存储锁存的格雷码的电路的示意图;
17.图10示出了可以在图9的寄存器中使用的差分锁存器的示意图;
18.图11至图13示出了根据本发明的实施例的用于临时存储锁存的格雷码的电路的示意图;
19.图14示出了根据本发明的一个实施例的读出电路的示意图;
20.图15示出了根据本发明的一个实施例的、用于使用格雷编码的时间基准异步地生成tof直方图的一个实施例方法的流程图,;以及
21.图16示出了根据本发明的一个实施例的、用于使用格雷编码的时间基准异步地生成tof直方图的一个电路的示意图,。
22.除非另外指示,否则不同图中的对应数字和符号通常指代对应的部分。绘制附图以清楚地图示优选实施例的相关方面,并且不必按比例绘制。
具体实施方式
23.下面将详细讨论所公开的实施例的制造和使用。然而,应当理解,本发明提供了许多可应用的发明构思,其可以在各种各样的特定环境中被实施。所讨论的特定实施例仅说明制造和使用本发明的特定方式,并且不限制本发明的范围。
24.以下描述图示了各种具体细节,以提供对根据该描述的几个示例实施例的深入理解。可以在没有一个或多个特定细节的情况下或者利用其他方法、组件、材料等来获得实施例。在其他情况下,没有示出或详细描述已知的结构、材料或操作,以免混淆实施例的不同方面。在本描述中对“一个实施例”的引用指示相对于该实施例描述的特定配置、结构或特征被包括在至少一个实施例中。因此,可能出现在本描述的不同点处的诸如“在一个实施例中”的短语不必精确地指代相同的实施例。此外,在一个或多个实施例中,可以以任何适当的方式组合特定的形式、结构或特征。
25.将在特定的上下文中描述本发明的实施例,格雷编码的基准地址用于时间戳的生成,并且用于tof应用的对应直方图的生成和寻址,tof应用诸如是临近传感器、光检测和测距(lidar)、深度分析、相机的自动对焦等。实施例也可以在测量事件之间的时间和/或利用事件的时间戳的应用中被使用。一些实施例可以使用未被格雷编码的时间基准地址,诸如
二进制编码的时间基准地址等等。
26.在本发明的一个实施例中,周期性更新的格雷编码的时间基准(地址)跨spad阵列传播,其中spad阵列中的每个spad与对应的tdc相关联。当spad被激活时(例如,通过反射光脉冲),对应tdc锁存格雷编码的地址,并且使用这种锁存的码来产生时间戳,该时间戳指示对应spad被激活的时间。在一些实施例中,锁存的格雷编码的地址直接与直方图的bin相关联。然后,使该bin递增以反映spad在与时间戳相关联的时间被激活。
27.在一些实施例中,使用格雷编码的地址作为用于tdc的时间基准有利地导致了功率节省,因为对于每个时间步骤仅更新单个位,从而最小化了时间基准的时钟沿的数目。在与常规解决方案相比时,一些实施例的附加优点包括改进的路由拥塞和增加的分辨率,例如,而不增加功耗。
28.在一些实施例中,使用格雷编码的时间基准有利地防止了错误码的锁存。例如,在0001到0010之间的转变可能被错误地采样为0011。但是,由于一次仅改变1位,因此这种错误的采样(为0011)可以被校正为0010。
29.图1示出了根据本发明的一个实施例的tof成像系统100。tof成像系统100包括照明源106、spad阵列104、tdc 102、直方图电路118、处理器110和定时生成电路108。在一些实施例中,tdc102和直方图电路118分布在spad阵列104内部。在其他实施例中,tdc 102和直方图电路118与spad阵列104相邻布置。在一些实施例中,直方图电路118被实现在处理器110内部。
30.在正常操作期间,例如在由定时生成器电路108控制的时间,照明源106向对象116发射辐射脉冲112(例如,光信号或光脉冲)。由spad阵列104感测反射的辐射脉冲114。(一个或多个)tdc 102生成辐射脉冲112的发射与反射的辐射脉冲114的接收之间的时间的数字表示,并且(一个或多个)直方图生成电路118基于(一个或多个)tdc 102的输出来生成tof直方图。处理器110然后处理直方图,例如以确定到对象116的距离。
31.tof直方图是其中其bin与和辐射脉冲(例如112)的发射不同的时间相对应的直方图。通常,较低的bin(例如,十进制bin 1和2,或等效的二进制bin 00和01)与较短的时间(并且因此目标更近)相对应,而较高的bin(例如,十进制bin 9和10,或等效的二进制bin 1001和1010)与更长的时间(并且因此目标更远)相对应。
32.如稍后将解释的,(一个或多个)tdc 102使用格雷编码的时间基准clk
address
来生成指示tof的时间戳。格雷编码的时间基准clk
address
是根据格雷码周期性改变的基准地址(即,每次基准地址clk
address
使时间步骤递增时,基准地址clk
address
的仅单个位改变)。在一些实施例中,当tdc能够锁存事件时,在发射的部分期间,格雷编码的时间基准clk
address
的仅单个位改变。
33.如稍后将解释的(例如,在图6中),可以从格雷编码的直方图转换为二进制直方图。
34.照明源106可以以本领域中已知的任何方式来实现。例如,照明源106可以被实现为vcsel。其他实现也是可能的。
35.处理器110可以被实现为包括例如耦合到存储器的组合电路的通用数字信号处理器(dsp)、处理器或控制器。处理器110还可以被实现为定制的专用集成电路(asic)。其他实现也是可能的。
36.spad阵列104包括被布置成行和列的spad的阵列,并且可以以本领域中已知的任何方式来实现。在一些实施例中,spad阵列104的每个spad耦合到(一个或多个)tdc 102中的对应tdc。在一些实施例中,多个spad经由例如or树来共享相同的tdc。例如,图2和图3示出了根据本发明的实施例的,tdc 102和对应的直方图生成电路118到spad阵列104的耦合的可能实现的示意图。
37.如图2中所示,在一些实施例中,每个tdc 102可以经由缓冲器204耦合到单个spad 202。如图3中所示,在一些实施例中,每个tdc 102可以经由or树304耦合到多个spad 302。
38.可以以本领域中已知的任何方式来实现缓冲器204和or树304。
39.tdc 102被配置为基于接收的作为时间基准的格雷编码的地址,在激活输入in
102
时(例如,当in
102
从低到高转变时)产生时间戳out
102
,并且可以以其他方式被实现,例如,以本领域已知的方式使用组合逻辑来实现。
40.图4示出了根据本发明的一个实施例的定时图400,其图示了基准地址clk
address
、tdc 102的输入in
102
和tdc 102的输出out
102
。
41.如图4中所示,基准地址clk
address
通过在每个时间步骤期间改变单个位来周期性地更新。基准地址clk
address
的每个码指示从信号s
illum
的脉冲(其是照明源106生成光脉冲112的信号)开始的持续时间。
42.当输入in
102
被断言时(例如,从低到高的转变),基准地址clk
address
在时间输入in
102
处具有的码被锁存到输出out
102
中。
43.在一些实施例中,由于基准地址clk
address
在spad事件出现时被局部锁存在tdc内部,因此可以在以后的时间进行读出,从而有利地使得路径(routing)不是tof时间关键的。因此,在一些实施例中,可以有利地优化路径,例如以减小面积,而不会影响tof性能。
44.图5示出了根据本发明的一个实施例的直方图生成电路118的可能实现。直方图电路118包括直方图存储装置518、累加器电路514和控制器516。直方图存储装置518包括用于直方图的每个bin的存储器存储装置。例如,在一些实施例中,直方图存储装置518包括用于直方图的每个bin的寄存器。
45.在正常操作期间,tdc 102生成时间戳out
102
,其指示光脉冲112的发射与输入in
102
的激活之间的持续时间。被包含在输出out
102
中的码被用于对直方图存储装置518中的直方图的对应bin进行寻址,以例如通过控制器516执行读取、更新、回写操作来更新bin的计数。例如,在一些实施例中,控制器516读取直方图存储装置518的与输出out
102
相对应的bin(例如,具有等于输出out
102
中包含的值的地址的bin),使用累加器电路514的加法器520将读取的内容递增1,并且将累加的数据写回到与输出out
102
相对应的直方图存储装置518的bin中。
46.控制器516可以被实现为控制器或处理器,控制器或处理器包括例如耦合到存储器的组合电路。其他实现也是可能的。
47.可以利用例如易失性或非易失性存储器来实现直方图存储装置518。例如,在一些实施例中,直方图存储装置518可以由寄存器的组来实现,其中每个寄存器包括多个触发器。在一些实施例中,存储装置518可以由静态随机存取存储器(sram)、基于锁存器的存储器(锁存单元)、同步数字计数器和/或波纹计数器(例如,由d触发器制成)来实现。其他实现也是可能的。
48.可以以本领域中已知的任何方式来实现累加器514。
49.图6示出了根据本发明的一个实施例的框图600,其图示了由直方图生成电路118生成的直方图的生成和寻址的一方面。
50.在正常操作期间,地址控制器602例如通过针对每个时间步骤顺序地递增地址,来生成二进制基准地址clk
address_bin
。序列620示出了二进制基准地址clk
address_bin
的地址的可能序列。
51.二进制到格雷转换器604接收每个地址,并且将其转换为格雷码。序列622示出了格雷基准地址clk
address
的地址的序列,其对应于二进制基准地址clk
address_bin
的序列620。
52.格雷编码的基准地址clk
address
传播到与spad阵列104相关联的每个tdc 102。在一些实施例中,诸如在其中tdc分布在spad阵列104内部的实施例中,格雷基准地址clk
address
跨spad阵列104传播。在其他实施例中,诸如在其中tdc 102位于与spad阵列104相邻的物理位置中的实施例中,格雷基准地址clk
address
在spad阵列104外部传播。
53.例如,如关于图4和图5所描述的,使用格雷编码的基准地址clk
address
来生成相应的直方图,并且将其存储在相应的直方图存储装置518(在图6中被统称为存储器606)中。
54.一旦直方图被存储在存储器606中,处理器110就读取每个直方图的每个bin的计数。例如,针对每个直方图,处理器110生成地址addr
bin
的二进制序列。二进制到格雷转换器608转换所接收的二进制地址addr
bin
,并且从直方图存储装置518读取与该addr
bin
相关联的计数。以该方式,尽管bin根据格雷编码的地址被存储,但是处理器110顺序地(以二进制序列)接收bin的计数。即使直方图存储装置518可以将直方图存储为格雷编码的直方图,处理器110也有效地从直方图存储装置518接收二进制编码的直方图。
55.可以以本领域中已知的任何方式来实现地址控制器602。例如,在一些实施例中,地址控制器602可以被实现为数字计数器。
56.存储器606(例如,ram)是一种(例如,易失性或非易失性)存储器,其是与spad阵列104相关联的每个直方图存储装置518的聚合。在一些实施例中,存储器606可以跨spad阵列104物理分布。在其他实施例中,存储器606例如可以被实现在与spad阵列104相邻的物理位置中。
57.可以以本领域中已知的任何方式来实现二进制到格雷转换器604和608。例如,图7示出了4位的二进制到格雷转换器的常规实现。在一些实施例中,可以在地址控制器602内部实现二进制到格雷转换器602。在一些实施例中,可以在处理器110内部实现二进制到格雷转换器608。
58.图8示出了根据本发明的一个实施例的一个实施例方法的流程图,用于使用格雷编码的时间基准来生成、存储和读取tof直方图。如图8中所示,步骤806、808、810、812、814、816、818、820、822和824可以由每个tdc和对应的直方图生成电路执行。
59.在步骤802期间,由照明源106发射光脉冲112(从而标记发射循环的开始),并且(一个或多个)tdc 102和对应的(一个或多个)直方图生成电路118开始积分过程(其中对spad的激活进行计数,例如用于tof确定)。
60.在步骤804期间,跨与spad阵列104相关联的(一个或多个)tdc分配格雷编码的时间基准clk
address
。当检测到spad激活时(在步骤806期间),格雷编码的时间基准clk
address
在激活时具有的格雷码由对应的tdc(例如,如图4中所示)锁存(在步骤808期间),并且在步骤
810期间被存储在临时存储器(例如,临时寄存器)中。
61.如果在步骤812期间确定还没到时间读出锁存的码(即,如果在当前发射循环中可以捕获更多的spad事件),则接下来执行步骤806。
62.读出时间的确定(在步骤812期间)可以是基于预先确定的脉冲重复时间(prt)(即,基于光脉冲112的发射之间的固定时间)。因此,可以在光脉冲112的每次发射中捕获一个以上的spad激活。
63.在一些实施例中,读出时间的确定(在步骤812期间)可以是异步的(例如,当检测到预先确定数目(诸如1或2)的spad激活时,则步骤812输出“是”)。因此,在一些实施例中,步骤806可以在804之后执行,并且无需执行步骤812。
64.如果在步骤812期间确定到读出锁存的码的时间了,那么对于每个锁存的格雷码,在步骤814期间(例如从临时存储器)读取锁存的格雷码,格雷码在步骤816期间被映射到bin地址(例如,对应于对应bin的寄存器地址)后,在步骤818期间读取与锁存的格雷码相对应的bin寄存器的内容(bin的计数),在步骤820期间,将bin的计数例如递增1,并且在步骤822期间利用递增的计数写回bin寄存器。如所示的,步骤818、820、822是对(直方图存储装置518的)bin寄存器的读取、累加、写回操作。
65.在一些实施例中,格雷码被直接映射到bin寄存器地址(即,格雷码是bin寄存器地址)。在这种实施例中,可以省略步骤816。在其中格雷码没有被直接映射到bin寄存器地址的实施例中,可以使用查找表(lut)来执行映射。如果使用lut,则它可以以本领域中已知的任何方式被实现。
66.在步骤824期间,确定积分是否完成。如果积分未完成,则发射新的光脉冲112,并且执行步骤804。如果积分完成,则如例如关于图6所描述的那样,例如由处理器110执行直方图存储装置518的内容的读出,和/或处理直方图,例如用于tof确定。
67.图9示出了根据本发明的一个实施例的电路900的示意图,用于临时存储锁存的格雷码(例如,在步骤810期间)。电路900可以被实现在tdc 102内部、部分在tdc 102内部或在tdc 102外部。
68.如所示的,每个发射循环,电路900能够存储2个格雷编码的地址。应当理解,电路900可以被修改,使得每个发射循环能够存储不同数目的格雷编码的地址,诸如1个、3个、4个或更多。
69.在正常操作期间,例如,如图4以及步骤806、806和810中所示,在激活输入in
102
时,被包含在基准地址clk
address
中的格雷编码的地址被锁存到寄存器902中,并且寄存器902的内容被锁存到寄存器904中(例如,以移位寄存器的方式)。
70.一旦确定到了读出锁存的码的时间(例如,在步骤812中),则由读出电路(诸如,在图14中所示)读取寄存器902和904的内容(例如,在步骤814期间)。在寄存器902和904的内容被读取之后,可以在下一个发射循环之前,对寄存器902和904的内容进行复位。
71.可以以本领域中已知的任何方式来实现寄存器902和904。例如,在一些实施例中,可以利用多个锁存器和/或触发器来实现寄存器902(和904)。例如,在一些实施例中,可以利用多个单端或差分锁存器来实现寄存器902(和904)。在其他实施例中,寄存器902和904包括多个触发器,诸如d触发器,其中每个触发器包括诸如图10的锁存器1000中所示的差分锁存器,其中in
102
和in
102
b形成与图9中所示的单端信号in
102
相对应的差分信号,其中
clk
address
<i>和clk
address
b<i>形成图9中所示的单端信号clk
address
的第i位的差分信号。在一些实施例中,并且例如如图10中所示,可以可选地使用反相器来生成输入in
102
b。
72.如图9中所示,单端实现也是可能的。
73.在一些实施例中,使用诸如图10中所示的差分锁存器来锁存格雷编码的地址,有利地有助于进一步降低功耗和/或增加采样率。
74.在一些实施例中,可以使用标志来发信号通知临时存储器(例如,寄存器902和904)已满,使得没有更多的spad激活被锁存。例如,图11示出了根据本发明的一个实施例的用于临时存储锁存的格雷码的电路1100的示意图。
75.电路1100以与电路900相似的方式操作。然而,电路1100分别使用触发器1102和1104来生成相应的标志(flag
mem1
和flag
mem2
),以指示相应的寄存器(902和904)已经被锁存。在一些实施例中,一旦flag
mem2
被断言(逻辑“1”),就可以在当前的发射循环期间,不再更新寄存器902和904(例如,通过防止寄存器902和904的时钟输入翻转,例如,通过使用与门1106来对寄存器902、904、1102和1104的时钟输入进行门控)。触发器1102和1104的内容可以在下一个发射循环之前被复位(例如,回到逻辑“0”)。
76.在一些实施例中,使用诸如flag
mem1
和flag
mem2
的标志可以有利地允许在该发射循环的结束时,仅对标志触发器(1102和1104)进行复位,而不是对寄存器902和904进行复位,这可以减少触发器的复位期间的电流消耗。
77.在一些实施例中,触发器1102的输入可以被计时(例如,代替被硬编码为“逻辑1”,它可以基于如由图11中的虚线所示的clk
address
)。通过使用clk
address
来对触发器1102进行门控,一些实施例可以允许防止在部分时间期间(例如,诸如在未完全使能对应spad的时间期间)的不期望的码锁存。
78.在一些实施例中,可以使用附加的中间存储装置,诸如图12中所示的。如图12中所示,电路1200以与电路900相似的方式操作。然而,电路1200包括附加的寄存器1202和1204,在信号s
transfer
激活时,寄存器1202和1204可以分别锁存寄存器902和904的内容。例如,当步骤812输出“是”时,信号s
transfer
可以被断言。在一些实施例中,中间存储器(寄存器1202和1204)的使用有利地允许电路1200在执行步骤814、816、818、820和822时继续捕获spad激活。
79.应当理解,电路1100和1200可以被组合,诸如图13中所示。
80.图14示出了根据本发明的一个实施例的读出电路1400的示意图。如图14中所示,多路复用器(mux)1402耦合到寄存器902和904的输出。
81.在正常操作期间,控制器516通过临时寄存器中的每个临时寄存器(例如,902和904)迭代(例如,使用信号latchedcodeselect),以读取它们相应的内容(例如,在步骤814期间)。控制器516然后可以执行步骤816、818、820、822和824。
82.在一些实施例中,spad阵列104的spad在格雷编码的时间基准clk
address
跨tdc 102传播之前是活动的。为了解决这种情况,一些实施例将基准地址clk
address
的一个位(例如,msb)专用于使能tdc 102的写入操作(例如,以使能寄存器902和904的锁存)。在其他实施例中,bin 0(与格雷编码的基准地址0相关联)专用于初始化,并且被保持直到格雷编码的基准clk
address
传播为止。在又一个实施例中,格雷编码的基准地址的序列的前x个数字被认为是受污染的,并且因此被跳过。在一些实施例中,x可以是大于或等于1并且小于或等于32的
数字。也可以使用不同数目的跳过bin。
83.图15示出了根据本发明的一个实施例的用于使用格雷编码的时间基准来异步地生成tof直方图的实施例方法1500的流程图。可以以关于方法800描述的类似方式来执行步骤802、804、806、808、8
‑
14、816、818、820和822。
84.如图15中所示,在积分开始(在步骤802中),并且格雷编码的时间基准跨tdc传播(在步骤804中),对于每个tdc,当检测到spad事件时(在步骤806中),格雷编码的时间基准被锁存(在步骤808中)在例如寄存器902中之后,异步地执行以下过程:读取锁存的格雷码(814),将格雷码映射到bin地址(步骤816),以及读取、累加和写回bin计数(分别在步骤818、820和822中)。在执行步骤808、814、816、818、820和822的时间期间,可以忽略任何可能出现的新spad事件。
85.可以针对多个发射的光脉冲重复方法1500。一旦积分结束(步骤未示出),则可以例如由处理器110读取或处理由方法1500生成的直方图。
86.图16示出了根据本发明的一个实施例的电路1600的示意图,用于使用格雷编码的时间基准来异步地生成tof直方图。可以例如根据方法1500来理解电路1600的操作。
87.在正常操作期间,在激活输入in
102
时(例如,当in
102
从低到高转变时),检测到spad事件(在步骤806中)。当检测到spad事件时,基准地址clk
address
在输入in
102
被断言时具有的码被锁存到寄存器902中(在步骤808中)。然后,控制器516异步地确定spad事件出现(例如,通过感测输入in
102
,通过检测寄存器902中的改变,或以任何其他方式),并且从寄存器902读取锁存的码(在步骤814中),将格雷码映射到bin地址(在步骤816中),并且对直方图存储装置518的对应bin地址执行读取、累加、写回操作(分别在步骤818、820和822中)。
88.这里总结了本发明的示例实施例。从本文提交的整个说明书和权利要求也可以理解其他实施例。
89.示例1.一种方法,包括:向时间到数字转换器(tdc)提供格雷编码的时间基准;从事件信号接收事件;当接收到所述事件信号时,将所述格雷编码的时间基准锁存到存储器中;以及基于所锁存的所述格雷编码的时间基准,来更新飞行时间(tof)直方图。
90.示例2.根据示例1所述的方法,其中提供所述格雷编码的时间基准包括跨单光子雪崩二极管(spad)阵列传播所述格雷编码的时间基准。
91.示例3.根据示例1或2之一所述的方法,还包括通过使用二进制到格雷码转换器将二进制编码的时间基准转换为所述格雷编码的时间基准,来生成所述格雷编码的时间基准。
92.示例4.根据示例1至3之一所述的方法,其中接收所述事件信号包括:从与所述tdc的输入耦合的spad接收单光子雪崩二极管(spad)激活信号。
93.示例5.根据示例1至4之一所述的方法,其中所述spad经由or树耦合到所述tdc的所述输入。
94.示例6.根据示例1至5之一所述的方法,其中所述存储器包括寄存器。
95.示例7.根据示例1至6之一所述的方法,其中所述寄存器包括多个差分锁存器。
96.示例8.根据示例1至7之一所述的方法,其中更新所述tof直方图包括:从直方图存储装置的bin寄存器读取bin计数,其中所述bin寄存器与所述锁存的格雷编码的时间基准相对应;将所述bin计数递增1;以及将所述递增的bin计数写入到所述bin寄存器中。
97.示例9.根据示例1至8之一所述的方法,其中所述bin寄存器的地址是所述锁存的格雷编码的时间基准。
98.示例10.根据示例1至9之一所述的方法,还包括通过如下读取所述tof直方图:生成二进制编码的地址的序列;将所述二进制编码的地址的序列转换成格雷编码的地址的序列;以及基于所述格雷编码的地址的序列,顺序地读取直方图存储装置的寄存器,其中所述直方图存储装置存储所述tof直方图。
99.示例11.根据示例1至10之一所述的方法,其中接收所述事件包括检测所述事件信号从逻辑0到逻辑1的转变。
100.示例12.根据示例1至11之一所述的方法,还包括基于所述格雷编码的时间基准的位而使能所述tdc。
101.示例13.根据示例1至12之一所述的方法,其中更新tof直方图包括:在接收到所述事件时,异步地更新所述tof直方图。
102.示例14.一种电路,包括:第一输入,被配置为接收事件;第二输入,被配置为接收格雷编码的时间基准;第一寄存器,被配置为在接收到所述事件时,锁存所述格雷编码的时间基准;以及直方图生成电路,被配置为更新直方图存储装置的bin寄存器,所述bin寄存器具有基于所述第一寄存器的内容的地址。
103.示例15.根据示例14所述的电路,还包括与所述第一输入耦合的单光子雪崩二极管(spad)。
104.示例16.根据示例14或15之一所述的电路,还包括耦合在所述spad和所述第一输入之间的or树。
105.示例17.根据示例14至16之一所述的电路,所述直方图生成电路被配置为通过以下步骤来更新所述bin寄存器:从所述bin寄存器读取bin计数;将所述bin计数递增;以及利用所递增的所述bin计数对所述bin寄存器进行写入。
106.示例18.根据示例14至17之一所述的电路,其中所述第一寄存器包括多个触发器,其中所述多个触发器中的每个触发器包括差分锁存器。
107.示例19.根据示例14至18之一所述的电路,还包括第二寄存器,所述第二寄存器被配置为在接收到所述事件时,锁存所述第一寄存器的所述内容。
108.示例20.根据示例14至19之一所述的电路,还包括:第一触发器,被配置为在接收到所述事件时锁存第一值;以及第二触发器,具有与所述第一触发器的输出耦合的输入,以便在所述第一输入处接收到第二事件时,所述第一触发器和所述第二触发器具有等于所述第一值的锁存内容。
109.示例21.根据示例14至20之一所述的电路,还包括:地址控制器,被配置为生成二进制编码的时间基准;以及二进制到格雷转换器,被配置为基于所述二进制编码的时间基准来生成所述格雷编码的时间基准。
110.示例22.根据示例14至21之一所述的电路,其中所述直方图生成电路被配置为:当所述第一输入接收所述事件时,异步地更新所述直方图存储装置的所述bin寄存器。
111.示例23.一种飞行时间(tof)系统,包括:照明源,被配置为发射光脉冲;单光子雪崩二极管(spad)阵列;多个时间到数字转换器(tdc),耦合到所述spad阵列;以及多个直方图生成电路,其中所述多个直方图生成电路中的每个直方图生成电路耦合到所述多个tdc
中的相应tdc,其中每个tdc包括:第一输入,耦合到所述spad阵列的相应spad,第二输入,被配置为接收格雷编码的时间基准,以及第一寄存器,被配置为:在激活所述相应spad时,锁存所述格雷编码的时间基准,并且其中所述多个直方图生成电路中的每个直方图生成电路被配置为:更新相应直方图存储装置的相应bin寄存器,所述相应bin寄存器具有基于所述相应第一寄存器的内容的地址。
112.示例24.根据示例23所述的tof系统,其中每个直方图生成电路被配置为:在激活所述相应spad时,异步地更新所述相应bin寄存器。
113.虽然已经参考说明性实施例描述了本发明,但是本描述不旨在以限制性的意义来解释。通过参考说明书,说明性实施例以及本发明的其他实施例的各种修改和组合对于本领域技术人员将是明显的。因此,意图是所附权利要求涵盖任何这种修改或实施例。
再多了解一些
本文用于企业家、创业者技术爱好者查询,结果仅供参考。