CN116540953B - 时差区间分布直方图数据生成方法、装置、芯片及设备 - Google Patents
时差区间分布直方图数据生成方法、装置、芯片及设备 Download PDFInfo
- Publication number
- CN116540953B CN116540953B CN202310826609.3A CN202310826609A CN116540953B CN 116540953 B CN116540953 B CN 116540953B CN 202310826609 A CN202310826609 A CN 202310826609A CN 116540953 B CN116540953 B CN 116540953B
- Authority
- CN
- China
- Prior art keywords
- time difference
- distribution histogram
- buffer memory
- difference interval
- buffer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 239000000872 buffer Substances 0.000 claims abstract description 356
- 230000015654 memory Effects 0.000 claims abstract description 314
- 238000005259 measurement Methods 0.000 claims abstract description 132
- 230000003068 static effect Effects 0.000 claims abstract description 56
- 230000004044 response Effects 0.000 claims abstract description 6
- 238000013500 data storage Methods 0.000 claims description 13
- 230000001360 synchronised effect Effects 0.000 claims description 13
- 238000001514 detection method Methods 0.000 claims description 5
- 238000001161 time-correlated single photon counting Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 101150049912 bin3 gene Proteins 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Measurement Of Unknown Time Intervals (AREA)
- Optical Communication System (AREA)
Abstract
本申请公开了时差区间分布直方图数据生成方法、装置、芯片及设备,该方法包括:响应于在当次测量中接收到的光子信号,确定各时差区间在当次测量中对应检测到的光子数;基于缓冲存储器对各时差区间在当次测量中对应检测到的光子数进行记录;缓冲存储器包括寄存器和静态随机存储器中的任意一种或者两种的组合;将缓冲存储器记录的各时差区间的光子数并行同步到各时差区间在磁性随机存储器中分别对应的存储单元,对缓冲存储器中记录的各时差区间的光子数清零;在测量次数达到预设测量次数时,输出磁性随机存储器中的时差区间分布直方图数据。本申请在满足更高要求的测距精度、测远能力和数据动态范围的同时确保了较高的时差分布直方图数据生成效率。
Description
技术领域
本申请涉及激光雷达技术领域,特别涉及一种时差区间分布直方图数据生成方法、装置、芯片及设备。
背景技术
时间相关单光子计数(Time-correlated Single Photon Counting,TCSPC)技术广泛用于各种对时间差计量精度有极高要求的领域,如激光雷达测距等,通过TCSPC可以得到时差区间分布直方图数据,进而得到相应的时差区间分布直方图。如图1所示为时差区间分布直方图数据的一个示例,时差分布直方图数据存储器包括N个存储单元(即bin),每个存储单元bin对应一个时差区间,每个存储单元bin中存储的数据表示重复多次测量后在相应时差区间累计检测到的光子数量。例如,图1中存储单元bin3对应3dt~4dt时间区间,存储单元bin3中存储的数据表示在3dt~4dt时差区间内重复多次测量后累计检测到的光子数为s个。
实际应用中时差分布直方图数据通常基于集成电路芯片实现,然而相关技术中的时差分布直方图数据生成方式无法在芯片的有限物理空间中,满足对于测距精度、测远能力和数据动态范围这三个重要指标的更高要求并确保较高的生成效率。
发明内容
为了解决现有技术的问题,本申请实施例提供了一种时差区间分布直方图数据生成方法、装置、芯片及设备。所述技术方案如下:
一方面,提供了一种时差区间分布直方图数据生成方法,包括:
响应于在当次测量中接收到的光子信号,确定时差区间分布直方图中各时差区间在所述当次测量中对应检测到的光子数;
基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述缓冲存储器包括寄存器和静态随机存储器中的任意一种或者两种的组合;
将所述缓冲存储器记录的各所述时差区间的光子数,并行同步到各所述时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,对所述缓冲存储器中记录的各所述时差区间的光子数清零;所述时差区间分布直方图数据存储器为磁性随机存储器;
在测量次数达到预设测量次数时,输出所述时差区间分布直方图数据存储器中的时差区间分布直方图数据;所述时差区间分布直方图数据用于绘制所述时差区间分布直方图。
在一些可能的实施方式中,在所述缓冲存储器为寄存器和静态随机存储器中的任意一种的情况下,所述缓冲存储器划分为交替进行记录的第一片缓冲存储器和第二片缓冲存储器,所述第一片缓冲存储器和第二片缓冲存储器均包括第一数量个缓冲存储单元,所述缓冲存储器中缓冲存储单元的数量小于所述时差区间分布直方图中时差区间的数量;所述基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录,包括:
确定所述第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器;所述目标片缓冲存储器中未存储数据;
按照所述时差区间分布直方图中时差区间的顺序,确定待记录的所述第一数量个目标时差区间;
确定所述第一数量个目标时差区间,在所述目标片缓冲存储器中分别对应的缓冲存储单元;
将所述第一数量个目标时差区间在所述当次测量中对应检测到的光子数,分别记录到所述第一数量个目标时差区间在所述目标片缓冲存储器各自对应的缓冲存储单元中;
返回执行所述确定所述第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器的步骤,直至不存在所述待记录的目标时差区间。
在一些可能的实施方式中,所述将所述缓冲存储器记录的各所述时差区间的光子数,并行同步到各所述时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,并对所述缓冲存储器中记录的各所述时差区间的光子数清零,包括:
将所述目标片缓冲存储器记录的各所述目标时差区间的光子数,并行同步到各所述目标时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中;
对所述目标片缓冲存储器中的各所述缓冲存储单元进行清零处理。
在一些可能的实施方式中,在所述缓冲存储器为寄存器和静态随机存储器中的任意一种的情况下,所述缓冲存储器划分为第二数量个缓冲存储单元,所述第二数量个缓冲存储单元与所述时差区间分布直方图中的时差区间一一对应;所述基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录,包括:
基于各所述时差区间在所述缓冲存储器中对应的缓冲存储单元,将各所述时差区间在所述当次测量中对应检测到的光子数,分别记录到相应时差区间在所述缓冲存储器对应的缓冲存储单元中。
在一些可能的实施方式中,在所述缓冲存储器为寄存器和静态随机存储器的组合的情况下,所述基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录,包括:
基于所述寄存器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述寄存器划分为第三数量个寄存单元,所述第三数量小于所述时差区间分布直方图中时差区间的数量;
将所述寄存器记录的各所述时差区间的光子数,并行同步到各所述时差区间在所述静态随机存储器分别对应的缓存单元中,并对所述寄存器中记录的各所述时差区间的光子数清零;所述静态随机存储器划分为第四数量个缓存单元,所述第四数量个缓存单元与所述时差区间分布直方图中的时差区间一一对应;
相应的,所述将所述缓冲存储器记录的各所述时差区间的光子数,并行同步到各所述时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,并对所述缓冲存储器中记录的各所述时差区间的光子数清零,包括:
基于各所述时差区间在所述静态随机存储器中对应的缓存单元,将各所述缓存单元记录的光子数,并行同步到相应时差区间在时差区间分布直方图数据存储器对应的存储单元中,并对所述静态随机存储器中的各所述缓存单元进行清零处理。
在一些可能的实施方式中,所述寄存器包括的所述第三数量个寄存单元划分为交替进行记录的第一片寄存区和第二片寄存区,所述第一片寄存区和第二片寄存区均包括第一数量个所述寄存单元;所述基于寄存器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录,包括:
确定所述第一片寄存区和第二片寄存区中的一个为目标片寄存区;所述目标片寄存区中未存储数据;
按照所述时差区间分布直方图中时差区间的顺序,确定待记录的所述第一数量个目标时差区间;
确定所述第一数量个目标时差区间,在所述目标片寄存区中分别对应的寄存单元;
将所述第一数量个目标时差区间在所述当次测量中对应检测到的光子数,分别记录到所述第一数量个目标时差区间在所述目标片寄存区各自对应的寄存单元中;
返回执行所述确定所述第一片寄存区和第二片寄存区中的一个为目标片寄存区的步骤,直至不存在所述待记录的目标时差区间。
在一些可能的实施方式中,所述将所述寄存器记录的各所述时差区间的光子数,并行同步到各所述时差区间在所述静态随机存储器分别对应的缓存单元中,并对所述寄存器中记录的各所述时差区间的光子数清零,包括:
将所述目标片寄存区记录的各所述目标时差区间的光子数,并行同步到各所述目标时差区间在所述静态随机存储器分别对应的缓存单元中;
对所述目标片寄存区中的各所述寄存单元进行清零处理。
另一方面,提供了一种时差区间分布直方图数据生成装置,所述装置包括:
检测光子数确定模块,用于响应于在当次测量中接收到的光子信号,确定时差区间分布直方图中各时差区间在所述当次测量中对应检测到的光子数;
缓冲记录模块,用于基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述缓冲存储器包括寄存器和静态随机存储器中的任意一种或者两种的组合;
并行同步模块,用于将所述缓冲存储器记录的各所述时差区间的光子数,并行同步到各所述时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,并对所述缓冲存储器中记录的各所述时差区间的光子数清零;所述时差区间分布直方图数据存储器为磁性随机存储器;
数据输出模块,用于在测量次数达到预设测量次数时,输出所述时差区间分布直方图数据存储器中的时差区间分布直方图数据;所述时差区间分布直方图数据用于绘制所述时差区间分布直方图。
在一些可能的实施方式中,在所述缓冲存储器为寄存器和静态随机存储器中的任意一种的情况下,所述缓冲存储器划分为交替进行记录的第一片缓冲存储器和第二片缓冲存储器,所述第一片缓冲存储器和第二片缓冲存储器均包括第一数量个缓冲存储单元,所述缓冲存储器中缓冲存储单元的数量小于所述时差区间分布直方图中时差区间的数量;所述缓冲记录模块,具体用于:确定所述第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器;所述目标片缓冲存储器中未存储数据;按照所述时差区间分布直方图中时差区间的顺序,确定待记录的所述第一数量个目标时差区间;确定所述第一数量个目标时差区间,在所述目标片缓冲存储器中分别对应的缓冲存储单元;将所述第一数量个目标时差区间在所述当次测量中对应检测到的光子数,分别记录到所述第一数量个目标时差区间在所述目标片缓冲存储器各自对应的缓冲存储单元中;返回执行所述确定所述第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器的步骤,直至不存在所述待记录的目标时差区间。
在一些可能的实施方式中,所述并行同步模块,具体用于:将所述目标片缓冲存储器记录的各所述目标时差区间的光子数,并行同步到各所述目标时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中;对所述目标片缓冲存储器中的各所述缓冲存储单元进行清零处理。
在一些可能的实施方式中,在所述缓冲存储器为寄存器和静态随机存储器中的任意一种的情况下,所述缓冲存储器划分为第二数量个缓冲存储单元,所述第二数量个缓冲存储单元与所述时差区间分布直方图中的时差区间一一对应;所述缓冲记录模块,具体用于:基于各所述时差区间在所述缓冲存储器中对应的缓冲存储单元,将各所述时差区间在所述当次测量中对应检测到的光子数,分别记录到相应时差区间在所述缓冲存储器对应的缓冲存储单元中。
在一些可能的实施方式中,在所述缓冲存储器为寄存器和静态随机存储器的组合的情况下,所述缓冲记录模块,包括:
第一缓冲记录模块,用于基于所述寄存器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述寄存器划分为第三数量个寄存单元,所述第三数量小于所述时差区间分布直方图中时差区间的数量;
第二缓冲记录模块,用于将所述寄存器记录的各所述时差区间的光子数,并行同步到各所述时差区间在所述静态随机存储器分别对应的缓存单元中,并对所述寄存器中记录的各所述时差区间的光子数清零;所述静态随机存储器划分为第四数量个缓存单元,所述第四数量个缓存单元与所述时差区间分布直方图中的时差区间一一对应;
相应的,所述并行同步模块,具体用于:基于各所述时差区间在所述静态随机存储器中对应的缓存单元,将各所述缓存单元记录的光子数,并行同步到相应时差区间在时差区间分布直方图数据存储器对应的存储单元中,并对所述静态随机存储器中的各所述缓存单元进行清零处理。
在一些可能的实施方式中,所述寄存器包括的所述第三数量个寄存单元划分为交替进行记录的第一片寄存区和第二片寄存区,所述第一片寄存区和第二片寄存区均包括第一数量个所述寄存单元;
所述第一缓冲记录模块,具体用于:确定所述第一片寄存区和第二片寄存区中的一个为目标片寄存区;所述目标片寄存区中未存储数据;按照所述时差区间分布直方图中时差区间的顺序,确定待记录的所述第一数量个目标时差区间;确定所述第一数量个目标时差区间,在所述目标片寄存区中分别对应的寄存单元;将所述第一数量个目标时差区间在所述当次测量中对应检测到的光子数,分别记录到所述第一数量个目标时差区间在所述目标片寄存区各自对应的寄存单元中;返回执行所述确定所述第一片寄存区和第二片寄存区中的一个为目标片寄存区的步骤,直至不存在所述待记录的目标时差区间。
在一些可能的实施方式中,所述第二缓冲记录模块,具体用于:将所述目标片寄存区记录的各所述目标时差区间的光子数,并行同步到各所述目标时差区间在所述静态随机存储器分别对应的缓存单元中;对所述目标片寄存区中的各所述寄存单元进行清零处理。
另一方面,提供了一种芯片,包括前述的时差区间分布直方图数据生成装置。
另一方面,提供了一种距离测量系统,包括激光器、探测器和处理器;其中,
所述激光器,用于按照预设测量次数依次向待测目标发射激光脉冲;
所述探测器,用于在每次测量中接收激光脉冲照射到目标后被返回的反射光脉冲,基于所述反射光脉冲向所述处理器输出指示检测到光子的光子信号;
所述处理器,通过上述任一方面的时差区间分布直方图数据生成方法输出时差区间分布直方图数据,基于所述时差区间分布直方图数据绘制时差分布直方图,基于所述时差分布直方图确定飞行时间,基于所述飞行时间确定所述待测目标的距离。
本申请实施例确定了时差区间分布直方图中各时差区间在当次测量中对应检测到的光子数后,先基于缓冲存储器对各时差区间在该当次测量中对应检测到的光子数进行记录,然后再将该缓冲存储器中记录的各时差区间的光子数并行同步到各时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,并对缓存存储器中记录的各时差区间的光子数清零,在测量次数达到预设测量次数时输出时差区间分布直方图数据存储器中的时差区间分布直方图数据,由于缓冲存储器包寄存器和静态随机存储器中的一种或者两种的组合,时差区间分布直方图数据存储器为磁性随机存储器,从而上述技术方案可以在实现高数据读写速度的同时实现高存储容量的时差区间分布直方图数据,进而能够在芯片的有限物理空间中满足更高要求的测距精度、测远能力和数据动态范围并确保较高的时差分布直方图数据生成效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是时差区间分布直方图数据的一个示例;
图2是本申请实施例提供的时差区间在每次测量中对应检测到的光子数的一个示例;
图3是本申请实施例提供的一种时差区间分布直方图数据生成方法的流程示意图;
图4a是本申请实施例提供的另一种时差区间分布直方图数据生成方法的流程示意图;
图4b是本申请实施例提供的缓冲存储器划分为第一片缓冲存储器和第二片缓冲存储器的示例;
图5是本申请实施例提供的另一种时差区间分布直方图数据生成方法的流程示意图;
图6是本申请实施例提供的另一种时差区间分布直方图数据生成方法的流程示意图;
图7是本申请实施例提供的一种时差区间分布直方图数据生成装置的结构框图;
图8是本申请实施例提供的TCSPC电路模块的一种结构示意图;
图9是本申请实施例提供的TCSPC电路模块的另一种结构示意图;
图10是本申请实施例提供的距离测量设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,本申请实施例中的1次测量是指:激光雷达中激光器发射1次激光脉冲,探测器探测到返回的脉冲信号。在1次测量中,由于返回的信号光光子数是非常少的,通常为单光子级别,而且由于环境光等因素的干扰,单次测量的结果很难判断出目标物体的位置。如图2所示,假设从激光器发射光脉冲开始计时,激光信号照射到目标后返回被探测器接收的时刻为t,即激光飞行时间(ToF,time of flight)为t,如果t处于存储单元binP对应的时差区间中,则每次测量在存储单元bin P对应时差区间中检测到光子的概率将大于其他存储单元bin,因此重复多次测量后在存储单元bin P对应时差区间检测到光子数的累计值将大于其他存储单元bin,即时差区间分布直方图在存储单元bin P对应的时差区间处形成一个峰,基于该时差区间分布直方图通过相关数据处理算法寻找回波信号的波峰位置即可计算出ToF时间,进而计算出目标距离,因此时差区间分布直方图数据是计算目标距离的重要依据。
请参阅图3,其所示为本申请实施例提供的一种时差区间分布直方图数据生成方法的流程示意图,如图3所示,该方法可以包括:
S301,响应于在当次测量中接收到的光子信号,确定时差区间分布直方图中各时差区间在当次测量中对应检测到的光子数。
S303,基于缓冲存储器对各时差区间在所述当次测量中对应检测到的光子数进行记录。
其中,缓冲存储器包括寄存器和静态随机存储器(Static Random AccessMemory,SRAM)中的任意一种或者两种的组合。
S305,将缓冲存储器记录的各时差区间的光子数并行同步到各时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,对缓冲存储器中记录的各时差区间的光子数清零。
其中,时差区间分布直方图数据存储器为磁性随机存储器(Magnetic RandomAccess Memory,MRAM)。
其中,并行同步是指将缓冲存储器记录的各时差区间的光子数一次累加到各时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中。例如,某个时差区间在当次测量对应检测到的光子数为s,将缓冲存储器中记录的该时差区间的光子数s传输至该时差区间在MRAM对应的存储单元中,该存储单元存储光子数累计值增加s。
S307,在测量次数达到预设测量次数时,输出时差区间分布直方图数据存储器中的时差区间分布直方图数据。
其中,时差区间分布直方图数据用于绘制时差区间分布直方图,该时差分布直方图可以用于计算飞行时间,进而可以基于该飞行时间计算目标距离。
其中,预设测量次数可以基于实际激光雷达测量的需要进行设定,本申请实施例对于预设测量次数不作具体限定。
以预设测量次数为C次为例,每次测量均可以基于前述步骤S301至步骤S305将各时差区间在该次测量中对应检测到的光子数累计到时差区间分布直方图数据存储器中的相对应存储单元bin中,直至到第C次测量,将各时差区间在第C次测量中对应检测到的光子数分别累计到时差区间分布直方图数据存储器中的相对应存储单元bin中之后,即可输出时差区间分布直方图数据存储器中的时差区间分布直方图数据。
本申请实施例中的前述寄存器、SRAM和MRAM均是可以集成于芯片上的存储器,这三种存储器的读写速率排序为:寄存器>SRAM>MRAM,数据存储密度排序为:寄存器<SRAM<MRAM。
而对于时差分布直方图数据,采样精度越高(即每个存储单元bin对应的时差区间越小)测距精度越高;存储单元bin的数量N越多,观测的时差区间N*dt越大,最大探测距离越远;每个存储单元bin的存储空间越大,可以存储的光子数累计值越大,也即可以获取更大的数据动态范围。也就是说,时差分布直方图数据存储器存储空间的大小将直接影响测距精度、测远能力和数据动态范围三个重要指标。
因此,相比于SRAM,本申请实施例以MRAM作为时差分布直方图数据存储器可以在不改变芯片物理尺寸的情况下实现更大的数据存储空间,进而能够满足更高要求的测距精度、测远能力和数据动态范围。
另外,前述步骤S301在确定了每个时差区间在当次测量中对应检测到的光子数后就需要对存储空间中的数据进行更新,也即该步骤输出的数据具有高频低长度的特点,要求接收该数据的存储器的读写速率至少为1/dt(dt表示单个时差区间的时间间隔),而由于MRAM的读写速率较慢,若在步骤S301之后直接存储到MRAM中将无法满足读写速度要求较高的场景。本申请实施例在确定了各时差区间在当次测量中对应检测到的光子数之后,先基于读写速率较高的寄存器和/或SRAM进行缓冲存储,再将寄存器和/或SRAM中缓冲存储的数据一次性同步到MRAM中,从而在满足更高要求的测距精度、测远能力和数据动态范围的同时确保了较高的读写速率,进而确保了较高的时差区间分布直方图数据生成效率。而且由于单次测量中每个时差区间对应检测到的光子数要远小于多次测量的累计值,因此缓冲存储器的存储空间可以远小于MRAM。具体的实施中,缓冲存储器的存储空间可以基于MRAM实际读写速率的上限和步骤S305并行读写数据宽度的限制来合理设置。
在一些可能的实施方式中,缓冲存储器为寄存器和静态随机存储器中的任意一种,且缓冲存储器划分为交替进行记录的第一片缓冲存储器和第二片缓冲存储器,第一片缓冲存储器和第二片缓冲存储器均包括第一数量个缓冲存储单元,缓冲存储器中缓冲存储单元的数量小于所述时差区间分布直方图中时差区间的数量。那么,如图4a所示,前述步骤S303在实施时可以包括:
S401,确定第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器,该目标片缓冲存储器中未存储数据。
需要说明的是,在单次测量刚开始时,由于第一片缓冲存储器和第二片缓冲存储器中均没有存储数据,因此可以将第一片缓冲存储器或第二片缓冲存储器作为目标片缓冲存储器,后续在此基础上第一片缓冲存储器和第二片缓冲存储器进行交替工作。
S403,按照时差区间分布直方图中时差区间的顺序,确定待记录的第一数量个目标时差区间。
其中,待记录的目标时差区间是指在当次测量中对应检测到的光子数还未记录到缓冲存储器的时差区间。
S405,确定第一数量个目标时差区间,在目标片缓冲存储器中分别对应的缓冲存储单元。
S407,将第一数量个目标时差区间在当次测量中对应检测到的光子数,分别记录到第一数量个目标时差区间在目标片缓冲存储器各自对应的缓冲存储单元中。
S409,返回执行确定第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器的步骤,直至不存在待记录的目标时差区间。
相应的,继续参见图4a,前述步骤S305在实施时可以包括:
S411,将目标片缓冲存储器记录的各目标时差区间的光子数,并行同步到各目标时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中。
S413,对目标片缓冲存储器中的各缓冲存储单元进行清零处理。
其中,第一数量可以基于前述步骤S305并行读写数据的宽度以及单个缓冲存储单元的存储空间大小来设定。示例性的,第一数量与单个缓冲存储单元的存储空间大小之间的乘积应不超过前述步骤S305并行读写数据的宽度。
为了便于理解上述实施方式中的技术方案,下面进行举例说明。
首先,假设时差区间分布直方图数据存储器MRAM共包括256个存储单元bin,每个存储单元bin对应一个时差区间,且时差区间的时间间隔dt=10ns,每个存储单元bin分配16bit的存储空间,则MRAM中单个存储单元bin存储计数的最大值为2^16-1=65535,MRAM的存储空间大小为16bit*256=4096 bit;单次测量中每个时差区间对应检测到光子数的最大值≤9。
其次,假设并行读写数据的宽度为64bit,设定缓冲存储器共包括32个缓冲存储单元,每个缓冲存储单元的大小为4bit,则缓冲存储器的存储空间大小为4bit*32=128 bit。那么,可以将缓冲存储器的前16个缓冲存储单元作为第一片缓冲存储器,将缓冲存储器的后16个缓冲存储单元作为第二片缓冲存储器,如图4b所示为对应缓冲存储器划分为第一片缓冲存储器和第二片缓冲存储器的示例。
另外,需要说明的是,由于MRAM中的存储单元与时差区间是一一对应的,因此在下面的举例描述中以存储单元bin的标识来表示相对应的时差区间,例如bin0可以作为MRAM中存储单元0对应的时差区间的标识,bin1作为MRAM中存储单元1对应的时差区间的标识,以此类推。
那么基于前述假设,在第k+1次测量时:
首先,将第一片缓冲存储器确定为目标片缓冲存储器,将bin0~bin15时差区间对应检测到的光子数按序记录到第一片缓冲存储器的缓冲存储单元0~缓冲存储单元15中,写入速率为1/dt=100MHz。待第一片缓冲存储器写完bin15时差区间对应检测到的光子数后,将第一片缓冲存储器中的共4bit*16=64 bit数据按照bin0~bin15时差区间与MRAM中存储单元的对应关系一次累加至MRAM中的对应存储单元中,并将第一片缓冲存储器中的数据清零。
然后,将第二片缓冲存储器确定为目标片缓冲存储器,将bin16~bin31时差区间对应检测到的光子数按序记录到第二片缓冲存储器的缓冲存储单元16~缓冲存储单元31中,写入速率为1/dt=100MHz。待第二片缓冲存储器写完bin31时差区间对应检测到的光子数后,将第二片缓冲存储器中的共4bit*16=64 bit数据按照bin16~bin31时差区间与MRAM中存储单元的对应关系一次累加至MRAM中的对应存储单元中,并将第二片缓冲存储器中的数据清零。
然后,将第一片缓冲存储器确定为目标片缓冲存储器,将bin32~bin47时差区间对应检测到的光子数按序记录到第一片缓冲存储器的缓冲存储单元0~缓冲存储单元15中,写入速率为1/dt=100MHz。待第一片缓冲存储器写完bin47时差区间对应检测到的光子数后,将第一片缓冲存储器中的共4bit*16=64 bit数据按照bin32~bin47时差区间与MRAM中存储单元的对应关系一次累加至MRAM中的对应存储单元中,并将第一片缓冲存储器中的数据清零。
以此类推,直至bin240~bin255时差区间对应检测到的光子数按序记录到第二片缓冲存储器的对应缓冲存储单元16~缓冲存储单元31中,写入速率为1/dt=100MHz。待第二片缓冲存储器写完bin255时差区间对应检测到的光子数后,将第二片缓冲存储器中的共4bit*16=64 bit数据按照bin240~bin255时差区间与MRAM中存储单元的对应关系一次累加至MRAM中的对应存储单元中,并将第二片缓冲存储器中的数据清零。
在上述举例中,缓冲存储器每记录16个时差区间对应检测到的光子数后再按照时差区间与MRAM中存储单元的对应关系,一次(即并行同步)将记录的16个时差区间对应检测到的光子数分别累加至MRAM中的对应存储单元,从而MRAM的写入速率仅为缓冲存储器写入速率的1/16,即6.25MHz。进而在利用MRAM的高存储密度以满足更高要求的测距精度、测远能力和数据动态范围的同时还能满足高读写速度的场景,提高了时差区间分布直方图数据的生成效率。
在另一些可能的实施方式中,缓冲存储器为寄存器和静态随机存储器中的任意一种,且缓冲存储器划分为第二数量个缓冲存储单元,第二数量个缓冲存储单元与时差区间分布直方图中的时差区间一一对应,也就是说,缓冲存储器中缓冲存储单元的数量与时差区间的数量一样,但同一时差区间对应的缓冲存储单元的存储空间大小要远小于其在时差区间分布直方图数据存储器中对应的存储单元的存储空间大小,例如缓冲存储单元的存储空间大小为4bit,而时差区间分布直方图数据存储器中存储单元的存储空间大小为16bit。
那么,前述步骤S303在实施时可以是:基于各时差区间在缓冲存储器中对应的缓冲存储单元,将各时差区间在当次测量中对应检测到的光子数,分别记录到相应时差区间在缓冲存储器对应的缓冲存储单元中。
进而,前述步骤S305在实施时可以是:将各时差区间在缓冲存储器对应缓冲存储单元中的记录并行同步到各时差区间在时差区间分布直方图数据存储器中分别对应的存储单元,并对缓冲存储器中的各缓冲存储单元进行清零处理。
为了便于理解上述实施方式中的技术方案,下面进行举例说明。
首先,假设时差区间分布直方图数据存储器MRAM共包括256个存储单元bin,每个存储单元bin对应一个时差区间,且时差区间的时间间隔dt=10ns,每个存储单元bin分配16bit的存储空间,则MRAM中单个存储单元bin存储计数的最大值为2^16-1=65535,MRAM的存储空间大小为16bit*256=4096 bit;单次测量中每个时差区间对应检测到光子数的最大值≤9。
其次,假设并行读写数据的宽度为1024bit,设定缓冲存储器也包括256个缓冲存储单元,每个缓冲存储单元的大小为4bit,则缓冲存储器的存储空间大小为4bit*256=1024bit。
那么基于前述假设,在第k+1次测量时:将bin0~bin255时差区间对应检测到的光子数按序记录到缓冲存储器的缓冲存储单元0~缓冲存储单元255中,写入速率为100MHz。待缓冲存储器写完bin255时差区间对应检测到的光子数后,将缓冲存储器中的共4 bit *256 bin = 1024 bit按照bin0~bin255时差区间与MRAM中存储单元的对应关系一次累加至MRAM中的对应存储单元中,并将缓冲存储器中的数据清零。
上述实施方式中,每次测量中的数据先记录到缓冲存储器中,可以在该次测量完成后再将缓冲存储器中的数据一次累加到MRAM中,由于两次测量之间的时间间隔通常较长,例如1μs,可在此时间间隔中将缓冲存储器中的数据一次累加至MRAM中,此时MRAM需达到的读写速率为1MHz,从而可以进一步满足低MRAM读写速率的场景,特别是两次测量时间间隔较长的场景下,可适用于对MRAM读写速率有更低要求的场景。
在一些可能的实施方式中,缓冲存储器为寄存器和静态随机存储器的组合,其中,寄存器划分为第三数量个寄存单元,该第三数量小于时差区间分布直方图中时差区间的数量,例如寄存器划分为32个寄存单元,时差区间的数量为256个;静态随机存储器划分为第四数量个缓存单元,该第四数量个缓存单元与时差区间分布直方图中的时差区间一一对应,例如时差区间的数量为256个,则静态随机存储器划分为256个缓存单元。那么,前述步骤S303在实施时可以是如图5所示,包括:
S501,基于寄存器对各时差区间在当次测量中对应检测到的光子数进行记录。
S503,将寄存器记录的各时差区间的光子数,并行同步到各时差区间在静态随机存储器分别对应的缓存单元中,并对寄存器中记录的各时差区间的光子数清零。
相应的,继续参见图5,前述步骤S305在实施时可以包括:
S505,基于各时差区间在静态随机存储器中对应的缓存单元,将各缓存单元记录的光子数,并行同步到相应时差区间在时差区间分布直方图数据存储器对应的存储单元中,并对该静态随机存储器中的各缓存单元进行清零处理。
上述实施方式中,静态随机存储器的读写速率为寄存器的1/(寄存器并行同步记录的数量),当所有时差区间在当次测量中对应检测到的光子数都记录到静态随机存储器SRAM后,此次测量的数据已全部采集,只需在下次测量前将静态随机存储器SRAM中的数据一次累加到MRAM中,并对静态随机存储器SRAM清零即可,从而可以满足更高读写速率要求的场景,进而进一步提高了时差分布直方图数据的生成效率。
在一些具体的实施方式中,寄存器包括的第三数量个寄存单元可以划分为交替进行记录的第一片寄存区和第二片寄存区,该第一片寄存区和第二片寄存区均包括第一数量个寄存单元,那么上述步骤S501在实施时可以如图6所示包括:
S601,确定第一片寄存区和第二片寄存区中的一个为目标片寄存区,该目标片寄存区中未存储数据。
需要说明的是,在单次测量刚开始时,由于第一片寄存区和第二片寄存区中均没有存储数据,因此可以将第一片寄存区或第二片寄存区作为目标片寄存区,后续在此基础上第一片寄存区和第二片寄存区进行交替工作。
S603,按照时差区间分布直方图中时差区间的顺序,确定待记录的第一数量个目标时差区间。
其中,待记录的目标时差区间是指在当次测量中对应检测到的光子数还未记录到寄存器的时差区间。
S605,确定第一数量个目标时差区间,在目标片寄存区中分别对应的寄存单元。
S607,将第一数量个目标时差区间在当次测量中对应检测到的光子数,分别记录到第一数量个目标时差区间在目标片寄存区各自对应的寄存单元中。
S609,返回执行确定所述第一片寄存区和第二片寄存区中的一个为目标片寄存区的步骤,直至不存在待记录的目标时差区间。
相应的,继续参见图6,上述步骤S503在实施时可以包括:
S611,将目标片寄存区记录的各目标时差区间的光子数,并行同步到各目标时差区间在静态随机存储器分别对应的缓存单元中。
S613,对目标片寄存区中的各寄存单元进行清零处理。
为了便于理解上述实施方式中的技术方案,下面进行举例说明。
首先,假设时差区间分布直方图数据存储器MRAM共包括256个存储单元bin,每个存储单元bin对应一个时差区间,且时差区间的时间间隔dt=1ns,每个存储单元bin分配16bit的存储空间,则MRAM中单个存储单元bin存储计数的最大值为2^16-1=65535,MRAM的存储空间大小为16bit*256=4096 bit;单次测量中每个时差区间对应检测到光子数的最大值≤9。
其次,假设对于寄存器的并行读写数据宽度为64bit,对于静态随机存储器的并行读写数据宽度为1024bit。设定寄存器共包括32个寄存单元,每个寄存单元的大小为4bit,则寄存器的存储空间大小为4bit*32=128 bit,将寄存器的前16个寄存单元作为第一片寄存区,将寄存器的后16个寄存单元作为第二片寄存区。设定静态随机存储器SRAM包括256个缓存单元,每个缓存单元的大小为4bit,则静态随机存储器SRAM的存储空间大小为4bit*256=1024 bit。
那么,基于上述假设,在第k+1次测量时:
首先,将第一片寄存区确定为目标片寄存区,将bin0~bin15时差区间对应检测到的光子数按序记录到第一片寄存区的寄存单元0~寄存单元15中,写入速率为1GHz。待第一片寄存区写完bin15时差区间对应检测到的光子数后,将第一片寄存区中的共4bit*16=64bit数据按照bin0~bin15时差区间与SRAM中缓存单元的对应关系一次传输至SRAM中的对应缓存单元中,并将第一片寄存区中的数据清零。
然后,将第二片寄存区确定为目标片片寄存区,将bin16~bin31时差区间对应检测到的光子数按序记录到第二片寄存区的寄存单元16~寄存单元31中,写入速率1GHz。待第二片寄存区写完bin31时差区间对应检测到的光子数后,将第二片寄存区中的共4bit*16=64bit数据按照bin16~bin31时差区间与SRAM中缓存单元的对应关系一次传输至SRAM中的对应缓存单元中,并将第二片寄存区中的数据清零。
然后,将第一片寄存区确定为目标片寄存区,将bin32~bin47时差区间对应检测到的光子数按序记录到第一片寄存区的寄存单元0~寄存单元15中,写入速率为1GHz。待第一片寄存区写完bin47时差区间对应检测到的光子数后,将第一片寄存区中的共4bit*16=64bit数据按照时差区间与SRAM中缓存单元的对应关系一次传输至SRAM中的对应缓存单元中,并将第一片寄存区中的数据清零。
以此类推,直至bin240~bin255时差区间对应检测到的光子数传输至bin240~bin255时差区间在SRAM对应缓存单元中。此时该次测量的数据共4bit* 256 bin = 1024bit已全部存储在静态随机存储器SRAM中。
然后,将静态随机存储器SRAM中的4bit* 256 bin = 1024 bit数据按照bin0~bin255时差区间与MRAM中存储单元的对应关系一次累加至MRAM中的对应存储单元中,并将静态随机存储器SRAM中的数据清零。
上述举例中,SRAM的读写速率为寄存器的1/16,寄存器和SRAM的读写速率分别为1GHz和62.5MHz。当bin240~bin255时差区间对应检测到的光子数传输至SRAM后,此次测量的数据已全部记录完,只需在下次测量前将SRAM中的数据一次累加到MRAM中,并对静态随机存储器SRAM清零即可,而两次测量的时间间隔相对较长,例如为1μs,所以只要MRAM的读写速率大于1MHz即可,进而可以在满足更高读写速率要求的同时适用于对MRAM读写速率有更低要求的场景。
本申请实施例还提供了一种时差区间分布直方图数据生成装置,如图7所示包括检测光子数确定模块710,缓冲记录模块720,并行同步模块730和数据输出模块740,其中:
检测光子数确定模块710,用于响应于在当次测量中接收到的光子信号,确定时差区间分布直方图中各时差区间在所述当次测量中对应检测到的光子数;
缓冲记录模块720,用于基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述缓冲存储器包括寄存器和静态随机存储器中的任意一种或者两种的组合;
并行同步模块730,用于将所述缓冲存储器记录的各所述时差区间的光子数,并行同步到各所述时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,并对所述缓冲存储器中记录的各所述时差区间的光子数清零;所述时差区间分布直方图数据存储器为磁性随机存储器;
数据输出模块740,用于在测量次数达到预设测量次数时,输出所述时差区间分布直方图数据存储器中的时差区间分布直方图数据;所述时差区间分布直方图数据用于绘制所述时差区间分布直方图。
在一些可能的实施方式中,在所述缓冲存储器为寄存器和静态随机存储器中的任意一种的情况下,所述缓冲存储器划分为交替进行记录的第一片缓冲存储器和第二片缓冲存储器,所述第一片缓冲存储器和第二片缓冲存储器均包括第一数量个缓冲存储单元,所述缓冲存储器中缓冲存储单元的数量小于所述时差区间分布直方图中时差区间的数量;该缓冲记录模块720,具体用于:确定所述第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器;所述目标片缓冲存储器中未存储数据;按照所述时差区间分布直方图中时差区间的顺序,确定待记录的所述第一数量个目标时差区间;确定所述第一数量个目标时差区间,在所述目标片缓冲存储器中分别对应的缓冲存储单元;将所述第一数量个目标时差区间在所述当次测量中对应检测到的光子数,分别记录到所述第一数量个目标时差区间在所述目标片缓冲存储器各自对应的缓冲存储单元中;返回执行所述确定所述第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器的步骤,直至不存在所述待记录的目标时差区间。
在一些可能的实施方式中,并行同步模块730,具体用于:将所述目标片缓冲存储器记录的各所述目标时差区间的光子数,并行同步到各所述目标时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中;对所述目标片缓冲存储器中的各所述缓冲存储单元进行清零处理。
在一些可能的实施方式中,在所述缓冲存储器为寄存器和静态随机存储器中的任意一种的情况下,所述缓冲存储器划分为第二数量个缓冲存储单元,所述第二数量个缓冲存储单元与所述时差区间分布直方图中的时差区间一一对应;该缓冲记录模块720,具体用于:基于各所述时差区间在所述缓冲存储器中对应的缓冲存储单元,将各所述时差区间在所述当次测量中对应检测到的光子数,分别记录到相应时差区间在所述缓冲存储器对应的缓冲存储单元中。
在一些可能的实施方式中,在所述缓冲存储器为寄存器和静态随机存储器的组合的情况下,该缓冲记录模块720,包括:
第一缓冲记录模块,用于基于所述寄存器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述寄存器划分为第三数量个寄存单元,所述第三数量小于所述时差区间分布直方图中时差区间的数量;
第二缓冲记录模块,用于将所述寄存器记录的各所述时差区间的光子数,并行同步到各所述时差区间在所述静态随机存储器分别对应的缓存单元中,并对所述寄存器中记录的各所述时差区间的光子数清零;所述静态随机存储器划分为第四数量个缓存单元,所述第四数量个缓存单元与所述时差区间分布直方图中的时差区间一一对应;
相应的,并行同步模块730,具体用于:基于各所述时差区间在所述静态随机存储器中对应的缓存单元,将各所述缓存单元记录的光子数,并行同步到相应时差区间在时差区间分布直方图数据存储器对应的存储单元中,并对所述静态随机存储器中的各所述缓存单元进行清零处理。
在一些可能的实施方式中,所述寄存器包括的所述第三数量个寄存单元划分为交替进行记录的第一片寄存区和第二片寄存区,所述第一片寄存区和第二片寄存区均包括第一数量个所述寄存单元;
该第一缓冲记录模块,具体用于:确定所述第一片寄存区和第二片寄存区中的一个为目标片寄存区;所述目标片寄存区中未存储数据;按照所述时差区间分布直方图中时差区间的顺序,确定待记录的所述第一数量个目标时差区间;确定所述第一数量个目标时差区间,在所述目标片寄存区中分别对应的寄存单元;将所述第一数量个目标时差区间在所述当次测量中对应检测到的光子数,分别记录到所述第一数量个目标时差区间在所述目标片寄存区各自对应的寄存单元中;返回执行所述确定所述第一片寄存区和第二片寄存区中的一个为目标片寄存区的步骤,直至不存在所述待记录的目标时差区间。
在一些可能的实施方式中,该第二缓冲记录模块,具体用于:将所述目标片寄存区记录的各所述目标时差区间的光子数,并行同步到各所述目标时差区间在所述静态随机存储器分别对应的缓存单元中;对所述目标片寄存区中的各所述寄存单元进行清零处理。
本申请实施例的技术方案可以通过集成于芯片上的TCSPC电路模块实现,如图8所示为TCSPC电路模块的一种结构示意图。具体的,TCSPC电路模块中的读入电路模块负责响应于一次测量中接收到的光子信号,记录接收到的光子信号对应的时间差,并将记录的时间差信息交予逻辑处理电路模块,由逻辑处理电路模型确定时差区间分布直方图中各时差区间在该次测量中对应检测到的光子数,并将这些数据先记录在缓冲存储器中,然后通过具有大规模并行读写特性的存储器控制器再将缓冲存储器中记录的数据并行同步到MRAM中。在实现预设次数测量后,写出电路模块可以根据下游元器件所需的数据格式,将存于MRAM中的时差区间分布直方图数据传递给下游元器件。之后,整个TCSPC电路模块可以重置,并开始下一个任务。关于图8所示TCSPC电路模块的具体实施过程可以参见本申请实施例前述对于图4a的相关描述,在此不再赘述。
如图9所示为TCSPC电路模块的另一种结构示意图。具体的,TCSPC电路模块中的读入电路模块负责响应于一次测量中接收到的光子信号,记录接收到的光子信号对应的时间差,并将记录的时间差信息交予逻辑处理电路模块,由逻辑处理电路模型确定时差区间分布直方图中各时差区间在该次测量中对应检测到的光子数,并将这些数据先记录在寄存器中,然后通过第一存储器控制器将寄存器中记录的数据一次传输至SRAM中,待所有时差区间在该次测量中对应检测到的光子数采集完并传输至SRAM中后,通过第二存储控制器将SRAM中记录的数量一次累加至MRAM中。在实现预设次数测量后,写出电路模块可以根据下游元器件所需的数据格式,将存于MRAM中的时差区间分布直方图数据传递给下游元器件。之后,整个TCSPC电路模块可以重置,并开始下一个任务。关于图9所示TCSPC电路模块的具体实施过程可以参见本申请实施例前述对于图5至图6的相关描述,在此不再赘述。
本申请实施例还提供了一种芯片,该芯片包括本申请实施例的时差区间分布直方图数据生成装置。本申请实施例可以实现整个TCSPC电路模块在同一片芯片上的集成,极大的增大了芯片运行速度和效率。
本申请实施例还提供了一种距离测量设备,如图10所示为该距离测量设备的结构示意图,该距离测量设备包括激光器1010、探测器1020和处理器1030,其中:
激光器1010,用于按照预设测量次数依次向待测目标发射激光脉冲;
探测器1020,用于在每次测量中接收激光脉冲照射到目标后被返回的反射光脉冲,基于反射光脉冲向处理器输出指示检测到光子的光子信号;
处理器1030,通过本申请实施例中的时差区间分布直方图数据生成方法输出时差区间分布直方图数据,基于该时差区间分布直方图数据绘制时差分布直方图,基于该时差分布直方图确定飞行时间,基于该飞行时间确定待测目标的距离。
具体的实施中,探测器1010和处理器1030可以配置在同一个芯片上,也可以分别配置在不同的芯片上。
需要说明的是:上述本申请实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (9)
1.一种时差区间分布直方图数据生成方法,其特征在于,包括:
响应于在当次测量中接收到的光子信号,确定时差区间分布直方图中各时差区间在所述当次测量中对应检测到的光子数;
基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述缓冲存储器包括寄存器和静态随机存储器中的任意一种;
将所述缓冲存储器记录的各所述时差区间的光子数,并行同步到各所述时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,对所述缓冲存储器中记录的各所述时差区间的光子数清零;所述时差区间分布直方图数据存储器为磁性随机存储器;
在测量次数达到预设测量次数时,输出所述时差区间分布直方图数据存储器中的时差区间分布直方图数据;所述时差区间分布直方图数据用于绘制所述时差区间分布直方图;
其中,所述缓冲存储器划分为交替进行记录的第一片缓冲存储器和第二片缓冲存储器,所述第一片缓冲存储器和第二片缓冲存储器均包括第一数量个缓冲存储单元,所述缓冲存储器中缓冲存储单元的数量小于所述时差区间分布直方图中时差区间的数量;所述基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录,包括:
确定所述第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器;所述目标片缓冲存储器中未存储数据;按照所述时差区间分布直方图中时差区间的顺序,确定待记录的所述第一数量个目标时差区间;确定所述第一数量个目标时差区间,在所述目标片缓冲存储器中分别对应的缓冲存储单元;将所述第一数量个目标时差区间在所述当次测量中对应检测到的光子数,分别记录到所述第一数量个目标时差区间在所述目标片缓冲存储器各自对应的缓冲存储单元中;返回执行所述确定所述第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器的步骤,直至不存在所述待记录的目标时差区间。
2.根据权利要求1所述的方法,其特征在于,所述将所述缓冲存储器记录的各所述时差区间的光子数,并行同步到各所述时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,并对所述缓冲存储器中记录的各所述时差区间的光子数清零,包括:
将所述目标片缓冲存储器记录的各所述目标时差区间的光子数,并行同步到各所述目标时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中;
对所述目标片缓冲存储器中的各所述缓冲存储单元进行清零处理。
3.一种时差区间分布直方图数据生成方法,其特征在于,包括:
响应于在当次测量中接收到的光子信号,确定时差区间分布直方图中各时差区间在所述当次测量中对应检测到的光子数;
基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述缓冲存储器为寄存器和静态随机存储器的组合;
将所述缓冲存储器记录的各所述时差区间的光子数,并行同步到各所述时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,对所述缓冲存储器中记录的各所述时差区间的光子数清零;所述时差区间分布直方图数据存储器为磁性随机存储器;
在测量次数达到预设测量次数时,输出所述时差区间分布直方图数据存储器中的时差区间分布直方图数据;所述时差区间分布直方图数据用于绘制所述时差区间分布直方图;
其中,所述基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录,包括:基于所述寄存器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述寄存器划分为第三数量个寄存单元,所述第三数量小于所述时差区间分布直方图中时差区间的数量;将所述寄存器记录的各所述时差区间的光子数,并行同步到各所述时差区间在所述静态随机存储器分别对应的缓存单元中,并对所述寄存器中记录的各所述时差区间的光子数清零;所述静态随机存储器划分为第四数量个缓存单元,所述第四数量个缓存单元与所述时差区间分布直方图中的时差区间一一对应;
相应的,所述将所述缓冲存储器记录的各所述时差区间的光子数,并行同步到各所述时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,并对所述缓冲存储器中记录的各所述时差区间的光子数清零,包括:基于各所述时差区间在所述静态随机存储器中对应的缓存单元,将各所述缓存单元记录的光子数,并行同步到相应时差区间在时差区间分布直方图数据存储器对应的存储单元中,并对所述静态随机存储器中的各所述缓存单元进行清零处理。
4.根据权利要求3所述的方法,其特征在于,所述寄存器包括的所述第三数量个寄存单元划分为交替进行记录的第一片寄存区和第二片寄存区,所述第一片寄存区和第二片寄存区均包括第一数量个所述寄存单元;所述基于所述寄存器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录,包括:
确定所述第一片寄存区和第二片寄存区中的一个为目标片寄存区;所述目标片寄存区中未存储数据;
按照所述时差区间分布直方图中时差区间的顺序,确定待记录的所述第一数量个目标时差区间;
确定所述第一数量个目标时差区间,在所述目标片寄存区中分别对应的寄存单元;
将所述第一数量个目标时差区间在所述当次测量中对应检测到的光子数,分别记录到所述第一数量个目标时差区间在所述目标片寄存区各自对应的寄存单元中;
返回执行所述确定所述第一片寄存区和第二片寄存区中的一个为目标片寄存区的步骤,直至不存在所述待记录的目标时差区间。
5.根据权利要求4所述的方法,其特征在于,所述将所述寄存器记录的各所述时差区间的光子数,并行同步到各所述时差区间在所述静态随机存储器分别对应的缓存单元中,并对所述寄存器中记录的各所述时差区间的光子数清零,包括:
将所述目标片寄存区记录的各所述目标时差区间的光子数,并行同步到各所述目标时差区间在所述静态随机存储器分别对应的缓存单元中;
对所述目标片寄存区中的各所述寄存单元进行清零处理。
6.一种时差区间分布直方图数据生成装置,其特征在于,所述装置包括:
检测光子数确定模块,用于响应于在当次测量中接收到的光子信号,确定时差区间分布直方图中各时差区间在所述当次测量中对应检测到的光子数;
缓冲记录模块,用于基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述缓冲存储器包括寄存器和静态随机存储器中的任意一种;
并行同步模块,用于将所述缓冲存储器记录的各所述时差区间的光子数,并行同步到各所述时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,并对所述缓冲存储器中记录的各所述时差区间的光子数清零;所述时差区间分布直方图数据存储器为磁性随机存储器;
数据输出模块,用于在测量次数达到预设测量次数时,输出所述时差区间分布直方图数据存储器中的时差区间分布直方图数据;所述时差区间分布直方图数据用于绘制所述时差区间分布直方图;
其中,所述缓冲存储器划分为交替进行记录的第一片缓冲存储器和第二片缓冲存储器,所述第一片缓冲存储器和第二片缓冲存储器均包括第一数量个缓冲存储单元,所述缓冲存储器中缓冲存储单元的数量小于所述时差区间分布直方图中时差区间的数量;所述缓冲记录模块,具体用于:确定所述第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器;所述目标片缓冲存储器中未存储数据;按照所述时差区间分布直方图中时差区间的顺序,确定待记录的所述第一数量个目标时差区间;确定所述第一数量个目标时差区间,在所述目标片缓冲存储器中分别对应的缓冲存储单元;将所述第一数量个目标时差区间在所述当次测量中对应检测到的光子数,分别记录到所述第一数量个目标时差区间在所述目标片缓冲存储器各自对应的缓冲存储单元中;返回执行所述确定所述第一片缓冲存储器和第二片缓冲存储器中的一个为目标片缓冲存储器的步骤,直至不存在所述待记录的目标时差区间。
7.一种时差区间分布直方图数据生成装置,其特征在于,所述装置包括:
检测光子数确定模块,用于响应于在当次测量中接收到的光子信号,确定时差区间分布直方图中各时差区间在所述当次测量中对应检测到的光子数;
缓冲记录模块,用于基于缓冲存储器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述缓冲存储器为寄存器和静态随机存储器的组合;
并行同步模块,用于将所述缓冲存储器记录的各所述时差区间的光子数,并行同步到各所述时差区间在时差区间分布直方图数据存储器中分别对应的存储单元中,并对所述缓冲存储器中记录的各所述时差区间的光子数清零;所述时差区间分布直方图数据存储器为磁性随机存储器;
数据输出模块,用于在测量次数达到预设测量次数时,输出所述时差区间分布直方图数据存储器中的时差区间分布直方图数据;所述时差区间分布直方图数据用于绘制所述时差区间分布直方图;
其中,所述缓冲记录模块,具体用于:基于所述寄存器对各所述时差区间在所述当次测量中对应检测到的光子数进行记录;所述寄存器划分为第三数量个寄存单元,所述第三数量小于所述时差区间分布直方图中时差区间的数量;将所述寄存器记录的各所述时差区间的光子数,并行同步到各所述时差区间在所述静态随机存储器分别对应的缓存单元中,并对所述寄存器中记录的各所述时差区间的光子数清零;所述静态随机存储器划分为第四数量个缓存单元,所述第四数量个缓存单元与所述时差区间分布直方图中的时差区间一一对应;
相应的,所述并行同步模块,具体用于:基于各所述时差区间在所述静态随机存储器中对应的缓存单元,将各所述缓存单元记录的光子数,并行同步到相应时差区间在时差区间分布直方图数据存储器对应的存储单元中,并对所述静态随机存储器中的各所述缓存单元进行清零处理。
8.一种芯片,其特征在于,包括如权利要求6或7所述的时差区间分布直方图数据生成装置。
9.一种距离测量设备,其特征在于,包括激光器、探测器和处理器;其中,
所述激光器,用于按照预设测量次数依次向待测目标发射激光脉冲;
所述探测器,用于在每次测量中接收激光脉冲照射到目标后被返回的反射光脉冲,基于所述反射光脉冲向所述处理器输出指示检测到光子的光子信号;
所述处理器,通过如权利要求1-2或者3-5中任一项所述的时差区间分布直方图数据生成方法输出时差区间分布直方图数据,基于所述时差区间分布直方图数据绘制时差分布直方图,基于所述时差分布直方图确定飞行时间,基于所述飞行时间确定所述待测目标的距离。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310826609.3A CN116540953B (zh) | 2023-07-07 | 2023-07-07 | 时差区间分布直方图数据生成方法、装置、芯片及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310826609.3A CN116540953B (zh) | 2023-07-07 | 2023-07-07 | 时差区间分布直方图数据生成方法、装置、芯片及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116540953A CN116540953A (zh) | 2023-08-04 |
CN116540953B true CN116540953B (zh) | 2023-09-29 |
Family
ID=87443981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310826609.3A Active CN116540953B (zh) | 2023-07-07 | 2023-07-07 | 时差区间分布直方图数据生成方法、装置、芯片及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116540953B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116559841B (zh) * | 2023-07-07 | 2023-10-27 | 苏州识光芯科技术有限公司 | 光子计数方法、装置、芯片及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110632577A (zh) * | 2019-08-30 | 2019-12-31 | 深圳奥锐达科技有限公司 | 时间编码解调处理电路及方法 |
CN113110948A (zh) * | 2021-04-26 | 2021-07-13 | 北京京东拓先科技有限公司 | 一种容灾数据处理方法和装置 |
CN114424086A (zh) * | 2019-08-05 | 2022-04-29 | 奥斯特公司 | 用于lidar测量的处理系统 |
WO2022239418A1 (ja) * | 2021-05-13 | 2022-11-17 | ソニーセミコンダクタソリューションズ株式会社 | 測距センサ及び測距装置 |
-
2023
- 2023-07-07 CN CN202310826609.3A patent/CN116540953B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114424086A (zh) * | 2019-08-05 | 2022-04-29 | 奥斯特公司 | 用于lidar测量的处理系统 |
CN110632577A (zh) * | 2019-08-30 | 2019-12-31 | 深圳奥锐达科技有限公司 | 时间编码解调处理电路及方法 |
CN113110948A (zh) * | 2021-04-26 | 2021-07-13 | 北京京东拓先科技有限公司 | 一种容灾数据处理方法和装置 |
WO2022239418A1 (ja) * | 2021-05-13 | 2022-11-17 | ソニーセミコンダクタソリューションズ株式会社 | 測距センサ及び測距装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116540953A (zh) | 2023-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116540953B (zh) | 时差区间分布直方图数据生成方法、装置、芯片及设备 | |
CN103199870B (zh) | 一种触发点快速定位装置 | |
EP3355133B1 (en) | Method for calibrating a time-to-digital converter system and time-to-digital converter system | |
CN108401445A (zh) | 用于测量时间的电路、方法及相关芯片、系统和设备 | |
CN103364770B (zh) | 基于矩阵填充的雷达目标检测系统及其检测方法 | |
CN110226133A (zh) | 时间数字转换器和转换方法 | |
CN105763196B (zh) | 一种延迟内插型时间数字转换器 | |
CN116559841B (zh) | 光子计数方法、装置、芯片及设备 | |
CN113900369A (zh) | 一种时间数字转换器、校准方法及芯片 | |
CN112486008B (zh) | 基于tdc的分辨率可调时间测量统计系统及方法 | |
CN104251986A (zh) | 一种全波形数字化检测装置 | |
CN105717851A (zh) | 使用具有计数状态的有限状态机的实时触发 | |
CN108196265A (zh) | 一种多路激光飞行时间并行采集系统及方法 | |
CN112711004A (zh) | 一种激光测距抗干扰方法、装置、激光测距设备及可读存储介质 | |
US11408998B2 (en) | Increase depth resolution and depth accuracy in ToF sensors by avoiding histogrammization | |
CN110274923A (zh) | 高能x射线ct设备的同步数据采集和校准方法及控制系统 | |
CN108900834A (zh) | 一种高速相机曝光时间及失帧测量装置及方法 | |
CN108061885A (zh) | 多通道激光引信目标特征识别信号处理电路的实现方法 | |
US5651014A (en) | Rate generator circuit for semiconductor test system | |
EP3264132A1 (en) | Pulsed radio timing and propagation correction in spatial measurement | |
CN114114210B (zh) | 时间戳数据读写电路以及测距系统 | |
CN115220333A (zh) | 一种面向单光子激光雷达应用的高计数率时间数字转换器 | |
CN116256741A (zh) | 一种测距方法及电子设备 | |
Eggert et al. | Multiple time digitizers and a trigger system for drift chambers | |
RU2155322C1 (ru) | Оптический дальномер |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |