用于操作基于事件的图像传感器的数字事件编码的制作方法
未命名
09-13
阅读:59
评论:0

1.本发明涉及一种用于操作基于事件的图像传感器(也称为神经形态传感器)的方法。
背景技术:
2.在传统的摄像机中,装置记录了一张又一张的照片。在基于事件的图像传感器中,没有照片。像在摄像机中一样,集成电路包含光电传感器矩阵。然而,在传统的摄像机中,每个光电传感器以固定的频率采样,而在时间对比度传感器中,像素不被采样:每个像素计算它感测的光的强度变化,可选地对该强度变化执行一些处理,并且当计算的数量超过限定的水平或阈值时,像素生成“模拟像素事件”或ape。
3.必须对ape进行处理,以传送像素(ape起源于该像素)上发生光强度变化的信息。执行读出以将ape以数字事件的形式传送到处理管道,在该处理管道中执行各种处理,例如滤波、格式化、分组、接口连接等。一些处理元件,诸如滤波器并且特别是时空滤波器和防闪烁,需要访问与上一个存储在存储器中的像素有关的数据。涉及许多存储器访问,这意味着巨大的功耗,特别是因为存储器典型地是sram(static random-access memor,静态随机存取存储器)。sram具有低空闲功耗但高操作功耗。因此,sram的功耗与其被访问的频率直接相关。
4.为了实现对图像动态的良好渲染,传感器被配置为使得即使微小的光变化也可能在至少一个像素中触发ape。此外,总是期望更高的分辨率意味着更多的像素生成事件。因此,每秒必须处理许多事件,涉及许多存储器访问。因此,传感器经历了大量的功耗。
5.因此,存在对具有降低的功耗、而不牺牲分辨率或灵敏度的基于事件的图像传感器的需求。
技术实现要素:
6.本发明涉及一种用于操作基于事件的图像传感器的方法,该基于事件的图像传感器包括被布置成形成像素阵列的多个像素电路,每个像素被布置在由地址限定的位置处,其中每个像素电路包括:
[0007]-感光器电路,其被配置用于递送源自由撞击到感光器的光敏元件上的光所生成的光电流的感光器信号,
[0008]-变化检测器,其被配置用于检测感光器信号的变化,并在每次检测到感光器信号的变化时生成事件,其中事件的特征在于反映感光器信号变化方向的第一极性或第二极性,
[0009]
其中方法包括:
[0010]-执行像素行的相邻像素的组的行读出,行读出包括为每组像素生成表示每组像素中相同极性事件的发生的至少一个分组,每个分组的特征在于所述分组中所表示的事件的第一极性或第二极性,并且在于源自每组像素中的像素的至少一个地址的组地址,
[0011]-将所述分组发送到处理管道,在该处理管道中相继处理该分组,所述处理管道包括基于已处理分组的组地址对涉及至少一个存储器访问的分组的至少一个事件处理,其中共享相同组地址的两个分组具有不同的极性,并在事件处理中被连续处理。
[0012]
本发明允许显著降低基于事件的图像传感器的功耗。当两个极性的模拟像素事件发生在相邻像素的相同组中时,只需要一次读取存储器访问和一次写入存储器访问,而不是两次读取存储器访问和两次写入存储器访问来处理生成的事件。由于存储器访问非常耗电,因此限制存储器访问次数显著降低了基于事件的图像传感器的功耗。
[0013]
本发明的其他优选的、尽管非限制性的方面如下,其是孤立的或以技术上可行的组合:
[0014]-在行读出期间,仅为在至少一个像素中发生事件的相邻像素的组生成分组;
[0015]-共享相同组地址的两个分组具有不同的极性;
[0016]-向处理管道发送分组包括:
[0017]-将分组排列成行序列,共享相同组地址的两个分组在该行序列中彼此相邻地排列,
[0018]-将行序列发送到处理管道;
[0019]-每个分组包含报头,该报头包括指示分组的极性的极性指示符的报头、组地址,并且每个分组包含指示组的像素中的哪一个生成了事件的事件向量;
[0020]-在行读出期间,行像素被划分成至少6组相邻像素,每组包括至少10个相邻像素;
[0021]-在共享相同组地址的两个分组的事件处理期间,对所述两个分组执行仅一次读取存储器访问和仅一次写入存储器访问;
[0022]-事件处理包括将当前处理的分组的组地址与处理管道中的下一个分组或上一个分组的组地址进行比较,并且如果在当前处理的分组的组地址与下一个分组或上一个分组的组地址之间发现匹配,则阻止存储器访问;
[0023]-事件处理包括将当前处理的分组的组地址与处理管道中的下一个分组的组地址进行比较,并且如果在当前处理的分组的组地址与下一个分组的组地址之间发现匹配,则与该组地址相关的数据被存储在缓存器中而不是被写入存储器中;
[0024]-在具有与上一个分组相同的组地址的分组的事件处理期间,从缓存器检索与所述组地址相关的数据,而不是在具有专用于每个组地址的位置的存储器中检索;
[0025]-事件处理包括将当前处理的分组的组地址与处理管道中的下一个分组或上一个分组的组地址进行比较,并且其中该比较是硬件实施的。
[0026]
本发明还涉及一种基于事件的图像传感器,其包括布置成形成像素阵列的多个像素电路,每个像素被布置在由地址所限定的位置处,其中每个像素电路包括:
[0027]-感光器电路,其被配置用于递送源自由撞击到感光器的光敏元件上的光所生成的光电流的感光器信号,
[0028]-变化检测器,其被配置用于检测感光器信号的变化,并在每次检测到感光器信号的变化时生成事件,其中事件的特征在于反映感光器信号变化方向的第一极性或第二极性,
[0029]-监控电路,其被配置为监控像素中事件的发生,并触发行读出,
[0030]-读出电路,其被配置为执行行读出,为每组像素生成表示在所述每组像素中发生
相同极性事件的至少一个分组,每个分组的特征在于该分组中所表示的事件的第一极性或第二极性,并且在于源自所述每组像素中的像素的至少一个像素地址的组地址,
[0031]-处理管道,分组在该处理管道中被相继处理,所述处理管道包括基于已处理分组的组地址对涉及至少一个存储器访问的分组的至少一个事件处理,并且被配置为连续地处理共享相同组地址的两个分组,其中基于事件的图像传感器被配置为执行根据本发明的方法的步骤。
附图说明
[0032]
本发明的其它方面、目的和优点将在阅读以下作为非限制性的例子给出的优选实施例并参考所附的附图而做出的详细描述后变得更清楚,其中:
[0033]-图1示出了根据本发明的可能实施例的基于事件的图像传感器的像素阵列的简化图;
[0034]-图2示出了根据本发明的可能实施例的基于事件的图像传感器的像素阵列的像素的结构的简化图;
[0035]-图3以示意图的方式描绘了如何生成分组的示例,该分组表示相同极性像素的组的ape的发生;
[0036]-图4是示出事件处理如何处理分组的流程图;
[0037]-图5是针对图3的示例的事件处理中涉及的信号的数字时序图。
具体实施方式
[0038]
图1示出了根据可能实施例的基于事件的图像传感器的简化图。基于事件的图像传感器包括形成像素阵列的多个像素电路,或者更简单地说是像素1。图1为清楚起见示出了有限数量的像素1。可以理解,像素阵列包括大量像素1,其尺寸例如超过256x256像素,并且例如分辨率为1280x720像素。如关于图2所示出的,每个像素1包括被配置用于递送源自由光撞击感光器10的光敏元件而生成的光电流的感光器信号的感光器电路10,和被配置用于检测源自光电流的感光器信号v
pr
的变化的变化检测器12。可以在感光器电路10和变化检测器12之间设置带通滤波器,以对感光器信号v
pr
进行滤波。
[0039]
感光器10的光敏元件典型地是光电二极管并将入射光转换成光电流,其由光敏元件的光曝光确定。感光器信号v
pr
通常与光电流呈对数关系。典型地,感光器信号v
pr
可以近似为
[0040]vpr
=k1ln(i
pr
)+k2[0041]
其中i
pr
是光电流的强度,k1和k2是常数因子。感光器信号v
pr
的瞬时电压值与光电流的瞬时强度对数地相关,并且因此感光器信号v
pr
的测量允许导出感光器电路10的光敏元件的光曝光水平。
[0042]
变化检测器12被配置为检测感光器信号v
pr
的变化。变化检测器12连续地监控感光器信号v
pr
的变化,并且在每次检测到变化时发出检测信号。检测信号识别感光器信号v
pr
中超过可调节电压阈值的微量增加或减少。感光器信号v
pr
的变化因此在像素的检测信号中被转化为模拟像素事件,或ape。
[0043]
事件的特征至少在于反映由ape引起的感光器信号v
pr
的变化的方向的极性(无差
别地指定为高/低、正/负或on/off)。更确切地说,变化检测器12在感光器信号v
pr
增加(即超过先前值的阈值)时生成高极性事件,而变化检测器12在感光器信号v
pr
减小(即到低于相对于先前值的阈值)时生成低极性事件。比较器通常被用于将感光器信号v
pr
的瞬时值与用作参考的先前值进行比较。事件不仅以极性为特征,而且以由在其中生成事件的像素1的行坐标和列坐标(分别为x,y)构成的像素地址为特征。事件也在特定时间被生成或发送,并且还可以以发生时间为特征。在专利us7,728,269和us8,780,240中描述了一种变化检测器12,其可被用于检测例如在动态视觉传感器(dynamic vision sensor,dvs)的情况下由像素接收的光照强度的变化。
[0044]
在没有固定频率采样的情况下,正是像素1中的事件的发生触发了像素1的读出。事件的生成受到基于事件的传感器成像的场景的光强度变化的制约。因此,由像素1生成的事件是不可预测的,并且许多事件可以在同一时间发生。此外,像素1的数量越高,要处理的事件的数量就越高。为了匹配速度和效率要求,执行读出以在同一读取周期中处理同一行的像素的事件。
[0045]
读出由监控像素中事件的发生的监控电路2触发。例如,事件的每次发生生成在公共线路总线上发送的行信号,该线路信号由监控电路2监控。监控电路因此可以包括与像素阵列中存在的行一样多的输入,并且因此能够识别发生事件的行。监控电路2在感测到行信号时触发行读出。
[0046]
典型地,这样的读出由读出电路4执行。例如,读出电路4包括与像素阵列中存在的列一样多的输入,每列一个输入。当行读出被触发时,该行的所有像素1的状态被同时复制到读出电路4的输入上。像素1的状态指示在一定量的时间期间(典型地自上次读出以来)所述像素1中是否发生了事件。同一行的像素1因此被同时读取。行读出为发生事件的每个像素生成事件。
[0047]
为了加速行读出,像素1的行被划分成该行的相邻像素的组。通常,一行被划分成至少6组相邻像素,并且优选地至少8组相邻像素,并且更优选地至少12组相邻像素,每组包括至少10个相邻像素。在图3的上图的示例中,1280个像素的行被划分成40个组21、22、23、24、25,每组32个相邻像素。当然,可以以其他方式划分该行。相邻像素的第一组21由x坐标为0至31的像素构成,相邻像素的第二组22由x坐标为32至63的像素构成,相邻像素的第三组23由x坐标为64至95的像素构成,相邻像素的第四组24由x坐标为96至127的像素构成,等等。
[0048]
在图3中,向下箭头表示第一极性事件(例如低极性),其指示针对该像素1的光强度降低,并且向上箭头表示第二极性事件(例如高极性),其指示针对该像素1的光强度增加。行读出生成与模拟像素事件相对应的数字事件,其根据它们的极性和像素1的分组被分组。
[0049]
行读出包括为每组像素生成表示所述像素的组中相同极性的事件发生的至少一个分组,每个分组的特征在于所述分组中所表示的事件的第一极性或第二极性,并且在于源自所述像素的组的像素的至少一个地址的组地址。分组的极性继承自分组中表示的事件的极性。每个分组仅与一个极性相关。事件通过事件向量表示。
[0050]
更确切地说,像素的组的事件被编码到事件向量中,该事件向量表示组中相同极性的事件的发生,并对像素组中事件的位置保持。如果两个极性的事件发生在同一组中,则
生成两个事件向量:每个极性一个。如果同一组中仅发生一个极性的事件,则仅生成一个事件向量。在图3的示例中,低极性事件和高极性事件发生在第一组素像21中。因此,针对第一组像素的低极性事件生成第一事件向量并且针对相同的第一组像素的高极性事件生成第二向量。在第二组像素22中,仅发生高极性事件。因此,对于第二组像素22仅生成一个事件向量,仅具有高极性事件。优选地,在行读出期间,仅针对在至少一个像素中发生事件的相邻像素的组生成事件向量。
[0051]
事件向量包括指示事件的比特序列。比特序列与该组像素的长度相同,即比特的数量与该组像素中像素1的数量一样多。序列的每个比特对应于组中的一个像素,并且比特的顺序对应于组中的像素1的顺序。比特的状态,即0或1,取决于对应像素中是否发生事件。在图3的示例中,1处的比特表示在对应像素1中发生了事件,并且0处的比特表示在对应像素中没有发生事件。可以使用其他编码。因此,在表示第一组像素21中的低极性的事件的第一事件向量中,三个低极性事件被转化成在事件向量中设置为1的三个比特,其他比特处于零。在表示第一组像素21中的高极性的事件的第二事件向量中,两个正事件被转化成在事件向量中设置为1的两个比特,其他比特处于零。在表示第二组像素22中的高极性的事件的第三事件向量中,四个正事件被转化成在第三事件向量中设置为1的四个比特,其他比特处于零。
[0052]
事件向量与从中导出事件向量的该组像素的特征相关联。为此,每个事件向量被封装在分组30(即分组30a、30b、30c、30d、30e、30f)中,该分组30包括事件向量和其中存储相关联特征的报头。因为分组中所包含的事件向量,分组表示相邻像素的组中相同极性的事件的发生。因此,分组30的特征还在于分别对应于在所述分组中所表示的事件的第一极性或第二极性的第一极性或第二极性。分组30的特征还在于从与分组30相关的相邻像素的组的像素1的至少一个地址导出或至少与之相关的组地址。
[0053]
在图3的示例中,报头包括对事件向量35中表示的事件的极性进行编码的第一序列31。在这个示例中,0x0表示第一极性(低),而0x1表示第二极性(高)。报头包括对时间戳进行编码的第二序列32,例如与读出发生的时间相关的事件时基的最低有效比特。在该示例中,所有分组30a、30b、30c、30d、30e、30f、30g共享编码为0x5的相同时间戳,因为在行读出期间同时读取像素的组。报头包括对组地址进行编码的第三序列33和第四序列34。在这个示例中,分组30的组地址是由该组像素的第一像素的x坐标和y坐标的组合构成的,但是当然可以对该组地址进行不同地编码,只要所述组地址允许识别与所述分组30相关的该组像素的每个像素。
[0054]
第三序列33对组地址的x坐标进行编码,其对应于每组像素的第一像素的x坐标。在本示例中,第三序列33以十六进制编码。因此,第一分组30a和第二分组30b的第三序列33是0x0,因为它们源自相同的第一组像素21,第三分组30c的第三序列33是0x20,因为第二组像素22的第一像素是该行的第32个像素,第四分组的第三序列33是0x40,因为第三组像素23的第一像素是该行的第64个像素等等。在该示例中,像素的组包括32个像素,并且因此,组地址的x坐标以32的倍数分隔。当然,像素组的其它长度导致组地址的x坐标之间的不同间距。
[0055]
报头包括对组地址的y坐标进行编码的第四序列34,其对于所有分组30被编码为0x8,因为它们都对应于相同的第8行的像素。最后,分组30包括事件向量,在该示例中为0或
1处的32比特序列,这取决于在对应像素中是否发生事件,如上文所解释的。
[0056]
优选地,在行读出期间,仅针对在至少一个像素中发生事件的相邻像素的组生成分组30。此外,对于在至少一个像素中发生事件的相邻像素的每个组生成至少一个分组30。需要注意的是,共享相同组地址的两个分组30具有不同的极性,因为仅在第一极性事件和第二极性事件发生在同一组像素中时才生成具有相同组地址的两个分组30。
[0057]
一旦生成,分组30就被发送到处理管道6,分组30在处理管道6中被相继处理,即以与它们在处理管道6中被发送的相同的顺序。典型地,通过串接分组30来创建分组的行序列,并且将该行序列发送到处理管道6。在图3中,通过分组30的排列来说明分组的序列。第一分组30a后跟第二分组30b,后跟第三分组30c,后跟第四分组30d,后跟第五分组30e,后跟第六分组30f,后跟第七也是最后的分组30g。
[0058]
优选地,大部分处理是硬件实施的,并且由于分组30必须被极其快速地处理的事实而没有涉及处理器。如下面将要解释的,事件处理可以包括在将当前处理的分组的组地址与处理管道6中下一个分组或上一个分组的组地址进行比较。优选地,至少该比较是硬件实施的。这样的比较由形成比较器(例如由一组逻辑门(and、nand、nor等)组成)的电子器件执行。这样的硬件比较器不执行指令并且因此不是处理器。如已经解释的,可以在处理管道6中执行各种事件处理,例如滤波、格式化等。至少一个事件处理涉及至少一个存储器访问。例如,时空滤波器和防闪烁需要访问与先前存储在存储器中的像素相关的数据。在防闪烁的情况下,存储器可以存储连续事件之间的持续时间,以便检测表示闪烁的规则模式。存储器还可以存储特定于每个像素的计数器,其在每次接收到与所述像素相关联的事件时递增或递减。
[0059]
存储器例如是ram(random-access memor,随机存取存储器),并且由于其短的存取时间而典型地是sram(static random-access memory,静态随机存取存储器)。存储器存储与超过读出周期的像素有关的数据。存储器中与每组像素相关联的位置存储与所述像素的组相关的数据。通过组地址(x,y坐标)检索此类数据,该组地址被转化为对应的存储器位置。这样的数据也可以被重写,或者用附加数据完成。
[0060]
通过与分组30相关联的组地址检索特定事件的像素地址。y坐标被编码在报头的第四序列34中并且因此可以被立即确定。事件的x坐标由被编码在报头的第三序列33中的组地址的x坐标并由事件向量中对应比特的位置限定。例如,在其组地址中具有n作为x坐标的事件向量的第i比特对应于该行的第(n+i)个像素。理论上,对于处理每个事件需要一次存储器访问。然而,为了效率,并且由于事件是按像素的组处理的,因此与像素的组相关的数据被并发处理。这意味着实际存储器位置对应于像素的组中的像素。存储器访问由此基于组地址,并且一次存储器访问足以用于处理与一组像素中的像素相关联的数据。
[0061]
理论上,对于处理每个分组30将需要一次存储器访问,因为分组30通常彼此独立地被处理。然而在本发明中,共享相同组地址的两个分组30在事件处理中被连续处理,并且共享相同组地址的两个分组30不被完全独立地处理。在共享相同组地址的两个分组30的事件处理期间,对所述两个分组执行仅一次读取存储器访问和仅一次写入存储器访问。更具体地,事件处理包括将当前处理的分组30的组地址与处理管道6中的下一个分组30的组地址进行比较,并且如果在当前处理的分组30的组地址与下一个分组30的组地址之间找到匹配,则至少阻止存储器访问。可以在当前处理的分组30的处理期间和/或在下一个分组30的
稍后处理期间阻止存储器访问。所阻止的存储器访问例如可以是数据检索和/或数据写入。如果在当前处理的分组30的组地址与下一个分组30的组地址之间找到匹配,则与组地址相关的数据被存储在缓存器中而不是被写入存储器中,从而避免写入存储器访问。在具有与上一个分组30相同的组地址的分组30的事件处理期间,从缓存器中检索与所述组地址相关的数据,而不是从具有专用于每个组地址的位置的存储器中检索,从而避免读取存储器访问。
[0062]
优选地,为了确保共享相同组地址的两个分组30在事件处理中被连续处理,分组在管道中按特定顺序被组织。具有相同组地址的两个分组30在处理管道6中相邻布置,即一个接一个。例如,它们在行序列中彼此相邻地串接。具体地,与相同组像素相关的第一极性的分组30和第二极性的分组30彼此相邻地串接。由于分组30是按照它们在管道中的顺序被处理的,因此在事件处理中连续地处理共享相同组地址的两个分组30。这在图3中被示出,其中都具有与第一组像素21对应的相同组地址的第一分组30a和第二分组30b是相邻的。这同样适用于第6分组30f和第7分组30g,它们共享相同的组地址(x坐标0x4c0)。
[0063]
图4示出了可以如何处理分组30的示例。在这个示例中,存储器是sram,但它可能是另一种存储器。使用缓存器。缓存器存储瞬态数据,并且相同的缓存器被用于处理所有分组30,无论它们的组地址如何。相反,存储器包括几个存储器位置,它们各自专用于一个组地址。特定存储器位置被用于特定组地址。
[0064]
开始后(步骤s1),接收新的分组30(步骤s2)。进行第一标志测试以确定是否设置了匹配标志(步骤s3)。匹配标志的状态取决于上一个处理的分组30的处理,并且例如被存储在寄存器中。如果该标志未被设置,则进行匹配测试(步骤s4),以确定当前地址(即当前分组30的组地址)是否与下一个地址(即之后紧接着将被处理的下一个分组30的组地址)相同。如果下一个地址与当前地址相同,则设置匹配标志(步骤s5)。否则,不设置匹配标志。在这两种情况下,在下一个步骤(步骤s6)中,在与组地址相对应的存储器位置处从sram存储器中检索与分组30的组地址相关联的数据。将检索到的数据缓存在缓存器中。
[0065]
如果第一标志测试(步骤s3)显示设置了匹配标志,则匹配标志被重置(步骤s7)并且数据被从缓存器中检索(步骤s8)而不是从sram存储器中检索。一旦已经检索到所需的数据,就执行处理算法(步骤s9),即根据检索到的数据和事件处理的目的(滤波、防闪烁等)来处理分组30中包含的事件。处理算法的结果可以被缓存(步骤s10)。
[0066]
该算法确定结果是否要被写入sram存储器中(步骤s11)。如果结果不是要被写入sram存储器中,则结束分组的处理(步骤s12)。如果结果要被写入sram存储器中,则执行第二标志测试(步骤s13)。如果先前已经设置了标志(步骤s5),则结束分组的处理(步骤s12)。如果该标志未被设置,则缓存的结果被写入与分组的组地址相对应的位置处的sram存储器中(步骤s14)。
[0067]
通过匹配标志,事件处理被获知,即如果两个分组30共享相同的组地址,则缓存的数据可以被使用而不是在sram存储器中被检索。因此避免了存储器访问。标志的使用仅仅是示例而不是要求,并且可以采用其他策略来实现相同的结果。例如,可以在当前分组30的组地址和上一个分组30的组地址之间进行比较。
[0068]
图5是针对图3的示例的事件处理中涉及的信号的数字时序图。第一行、上面的行51是时钟信号,在时钟信号的两个上升沿之间限定周期。第二行52示出了存储器访问,其数
字对应于图3的分组30。高电平指示在周期期间发生存储器访问,而低电平指示在周期期间不发生存储器访问。第三行53示出了在事件处理期间进行的访问存储器的存储器请求。高电平指示在周期期间发生存储器请求,而低电平指示在周期期间没有发生存储器请求。第四行54示出了第一标志测试的结果,即当前地址和下一个地址是否匹配。高电平指示匹配,而低电平指示不存在匹配。
[0069]
第五行55示出了当前地址,即当前处理的分组的组地址,以及第六行56示出了下一个地址,即要处理的下一个分组、在管道中当前处理的分组之后的分组的组地址。第七行57示出了在存储器中读取的数据,以及第八行58示出了在缓存器中缓存的数据。在图5中,组地址用组的第一像素的x坐标之前的y坐标表示(以十六进制表示)。因此组地址0x8000是指第8行的组,第0至第31像素;组地址0x8020是指第8行的组,第32至第63像素;组地址0x8040是指第8行的组,第64至第95像素等。数据(0x8000)是指与组地址0x8000的分组的像素相关联的数据;数据(0x8020)是指与组地址0x8020的分组的像素相关联的数据等。
[0070]
在第一周期,不存在当前组地址,并且下一个组地址是第一分组30a的组地址,0x8000,源自第一组像素21,即第8行的第0至第31像素。因此,在第二周期处,此组地址0x8000已成为当前组地址,并且响应于基于所述当前组地址0x8000的存储器请求来进行存储器访问。下一个组地址是第二分组30b的组地址,并且仍然是第一分组30a的相同的组地址,即0x8000。事实上,如图3所示,前两个分组30a、30b共享相同的组地址,但显示出不同的极性。匹配测试的结果为是,因为当前组地址和下一个地址匹配,并且相应地地址匹配信号(或标志)上升到高电平。
[0071]
在第三周期处,作为基于上一个当前组地址0x8000的存储器访问的结果而读取的数据是数据(0x8000)。当前组地址是第二分组30b的组地址,即仍然是0x8000。由于地址匹配信号(标志)在前一周期中为高的事实,第一标志测试的结果为是,并且不进行存储器请求且不执行存储器访问。下一个组地址是第三分组30c的组地址,即0x8020,指的是第8行的组,第32至第63像素。由于下一个组地址不同于当前组地址或者因为地址匹配信号被自动重置(s7)以避免比较,所以地址匹配信号返回到低电平。
[0072]
在第四周期处,第三分组30c的组地址即0x8020已成为当前组地址,而第四分组30d的组地址即0x8040已成为下一个组地址。由于下一个组地址与当前组地址不同,匹配测试的结果为否,并且地址匹配信号保持在低电平。由于地址匹配信号在前一周期中为低(第一标志测试结果为否),因此进行存储器请求并对当前组地址0x8020执行存储器访问。但由于在前一周期期间没有存储器访问,因此不读取任何数据。上一个读取的数据数据(0x8000)被存储在缓存器中并且可被用于处理算法。
[0073]
在第五周期处,第四分组30d的组地址,即0x8040,现在是当前组地址,而第五分组30e的组地址,即0x8060,是下一个组地址。由于下一个组地址与当前组地址不同,匹配测试的结果为否,并且地址匹配信号保持在低电平。由于地址匹配信号在前一周期中为低(第一标志测试结果为否),因此进行存储器请求并对当前组地址0x8040执行存储器访问。作为上一个存储器访问的结果,读取对应于上一个当前组地址0x8020的数据,即数据(0x8020)。由于第二分组30b的处理使用与对于第一分组30c相同的存储的数据,缓存的数据保持与第一组地址相关的数据(数据(0x8000))。
[0074]
在第六周期处,第五分组30e的组地址,即0x8060,现在是当前组地址,而第六分组
30f的组地址,即0x84c0,是下一个组地址。由于下一个组地址与当前组地址不同,匹配测试的结果为否,并且地址匹配信号保持在低电平。由于地址匹配信号在前一周期中为低,因此进行存储器请求并对当前组地址0x8060执行存储器访问。作为上一个存储器访问的结果,读取对应于上一个当前组地址0x8040的数据,即数据(0x8040)。上一个读取的数据数据(0x8020)被缓存并且可被用于处理第三分组30c。
[0075]
在第七周期处,第六分组30f的组地址,即0x84c0,现在是当前组地址,而第七分组30g的组地址,即0x84c0,是下一个组地址。如关于图3所示,第六分组30f和第七分组30g共享相同的组地址,但是显示出不同的极性。匹配测试显示当前组地址和下一个地址实际上匹配,并且相应地地址匹配信号上升到高电平。由于地址匹配信号在前一周期中为低,因此进行存储器请求并对当前组地址0x84c0执行存储器访问。作为上一个存储器访问的结果,读取对应于上一个当前组地址0x8060的数据,即数据(0x8060)。上一个读取的数据数据(0x8040)被缓存并且可被用于处理第四分组30d。
[0076]
在第八周期处,第七分组30g的组地址,即0x84c0,现在是当前组地址,并且由于这是最后一个分组,因此没有下一个组地址。因此,匹配测试的结果为否,并且地址匹配信号返回到低电平。作为基于上一个当前组地址0x84c0的存储器访问的结果而读取的数据是数据(0x84c0)。由于地址匹配信号在上一个周期中为高的事实,因此不进行存储器请求,也不执行存储器访问。上一个读取的数据数据(0x8060)被缓存并且可被用于处理第五分组30e。
[0077]
在第九周期处,没有当前或下一个组地址。事实上,在处理管道中,两个行读出的6个结果被空白分组分隔,使得多个空周期分隔两个行读出的结果的处理。例如,用4至12个空周期分隔两个行读出,并且优选地在6和10个空周期之间。在没有任何当前组地址的情况下,不进行存储器请求并且不执行存储器访问。对应于第六组像素的上一个读取数据,即数据(0x84c0),被缓存并且可被用于处理第六分组30g。在第十周期处,缓存的数据没有被替换并且因此仍然是相同的数据,即数据(0x84c0),其可被用于处理第七也是最后的分组30g,其与第六分组30f共享相同的组地址。
[0078]
如上所解释的,共享相同组地址的两个分组在事件处理中被连续处理的事实允许重新使用相同的数据,而不必从存储器中检索。如在示例中,地址匹配信号可以用作防止冗余存储器访问的标志。因此,当在像素的相同组中发生不同极性的事件时,避免了存储器访问。由于存储器访问非常耗电,因此避免存储器访问会降低功耗和发热。当成像的场景导致快速的强度变化时,这种效果尤其明显。
[0079]
尽管已经相对于某些优选实施例描述了本发明,但是显而易见的是,其决不限于此并且其包括所描述的手段及其组合的所有技术等同物。特别地,对于本领域技术人员将显而易见的是,可以进行各种改变和修改而不脱离如所附权利要求所限定的本发明的范围。
技术特征:
1.一种用于操作基于事件的图像传感器的方法,所述基于事件的图像传感器包括被布置成形成像素阵列的多个像素电路(1),每个像素被布置在由地址限定的位置处,其中每个像素电路(1)包括:-感光器电路(10),其被配置用于递送源自由撞击在所述感光器(10)的光敏元件上的光所生成的光电流的感光器信号,-变化检测器(12),其被配置用于检测所述感光器信号的变化,并在每次检测到所述感光器信号的变化时生成事件,其中事件的特征在于反映所述感光器信号的变化方向的第一极性或第二极性,其中所述方法包括:-执行像素行的相邻像素的组(21,22,23,24,25)的行读出,所述行读出包括为每组像素生成表示所述每组像素中相同极性的事件的发生的至少一个分组(30a、30b、30c、30d、30e、30f、30g),每个分组的特征在于所述分组中所表示的事件的所述第一极性或第二极性,并且在于源自所述每组像素中的像素的至少一个地址的组地址,-将所述分组发送到处理管道(6),在所述处理管道(6)中相继处理所述分组,所述处理管道(6)包括基于已处理分组的组地址对涉及至少一个存储器访问的分组的至少一个事件处理,其中共享所述相同组地址的两个分组具有不同的极性,并在所述事件处理中被连续处理。2.根据权利要求1所述的方法,其中,在所述行读出期间,仅为在至少一个像素中发生事件的相邻像素的组而生成分组。3.根据权利要求1-2中任一项所述的方法,其中,向所述处理管道(6)发送所述分组包括:-将所述分组排列成行序列,共享所述相同组地址的两个分组在所述行序列中彼此相邻地排列,-将所述行序列发送到所述处理管道(6)。4.根据权利要求1-3中任一项所述的方法,其中,每个分组包含报头,所述报头包括指示所述分组的极性的极性指示符、所述组地址,并且每个分组包含指示所述组中的像素中的哪一个像素生成了事件的事件向量。5.根据权利要求1-4中任一项所述的方法,其中,在行读出期间,像素行被划分成至少6组相邻像素,每组包括至少10个相邻像素。6.根据权利要求1-5中任一项所述的方法,其中,在共享所述相同组地址的两个分组的所述事件处理期间,仅执行一次读取存储器访问和仅执行一次写入存储器访问。7.根据权利要求1-6中任一项所述的方法,其中,所述事件处理包括将当前处理的分组的组地址与所述处理管道(6)中下一个分组或上一个分组的组地址进行比较,以及如果在所述当前处理的分组的组地址与所述下一个分组或上一个分组的组地址之间发现匹配,则阻止存储器访问。8.根据权利要求1-7中任一项所述的方法,其中,所述事件处理包括将当前处理的分组的组地址与处理管道(6)中下一个分组的组地址进行比较,并且如果在所述当前处理的分组的组地址与所述下一个分组的组地址之间发现匹配,则与所述组地址相关的数据被存储在缓存器中而不是被写入存储器中。
9.根据权利要求1-8中任一项所述的方法,其中,在具有与上一个分组相同的组地址的分组的事件处理期间,从缓存器检索与所述组地址相关的数据,而不是在具有专用于每个组地址的位置的存储器中检索。10.根据权利要求1-9中任一项所述的方法,其中,所述事件处理包括将当前处理的分组的组地址与所述处理管道(6)中的下一个分组或上一个分组的组地址进行比较,并且其中所述比较是硬件实施的。11.一种基于事件的图像传感器,包括被布置以形成像素阵列的多个像素电路(1),每个像素被布置在由地址所限定的位置处,其中每个像素电路(1)包括:-感光器电路(10),其被配置用于递送源自由撞击在所述感光器(10)的光敏元件上的光所生成的光电流的感光器信号,-变化检测器(12),其被配置用于检测所述感光器信号的变化,并在每次检测到所述感光器信号的变化时生成事件,其中事件的特征在于反映所述感光器信号的变化方向的第一极性或第二极性,-监控电路(2),其被配置为监控所述像素中的事件的发生,并触发行读出,-读出电路(4),其被配置为执行行读出,为每组像素生成表示在所述每组像素中发生相同极性的事件的至少一个分组(30a、30b、30c、30d、30e、30f、30g),每个分组的特征在于所述分组中所表示的事件的所述第一极性或第二极性,并且在于源自所述每组像素中的像素的至少一个地址的组地址,-处理管道(6),所述分组被相继处理,所述处理管道包括基于已处理分组的组地址对涉及至少一个存储器访问的分组的至少一个事件处理,并且被配置为连续地处理共享相同组地址的两个分组,其中,所述基于事件的图像传感器被配置为实施根据权利要求1-10中任一项所述的方法。
技术总结
一种用于操作基于事件的图像传感器的方法,该图像传感器包括被布置成形成像素阵列的多个像素电路,每个像素被布置在由阵列中的像素坐标所限定的地址所限定的位置处,其中每个像素电路被配置成用于在每次检测到光强度变化时生成事件,事件的特征在于反映变化方向的极性,其中该方法包括:-执行像素行的相邻像素的组的行读出,行读出包括为每个组生成至少一个表示所述组中相同极性的事件发生的至少一个分组,分组被表征为每个分组的特征在于极性和组地址,-将所述分组发送到处理管道,其中分组被相继处理,涉及基于组地址的存储器访问,其中共享相同组地址的两个分组具有不同的极性并且被连续处理。性并且被连续处理。性并且被连续处理。
技术研发人员:纪尧姆
受保护的技术使用者:普罗菲西公司
技术研发日:2022.01.13
技术公布日:2023/9/9
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/