基于ZYNQ的单光子时间聚簇预集合直方图构建方法

摘要: 本发明涉及单光子时间聚簇集合领域,具体涉及基于zynq的单光子时间聚簇预集合直方图构建方法。背景技术:1、在单光子激光雷达系统中,前端常采用时间相关单光子计数模...
基于ZYNQ的单光子时间聚簇预集合直方图构建方法

本发明涉及单光子时间聚簇集合领域,具体涉及基于zynq的单光子时间聚簇预集合直方图构建方法。

背景技术:

1、在单光子激光雷达系统中,前端常采用时间相关单光子计数模块对单光子探测器输出的事件进行时间标记。系统需将时间相关单光子计数输出的离散时间戳映射至时间仓并统计光子数,以此构建飞行时间直方图,进而用于后续的距离估计和点云重建。

2、为保障实时性,采集端常采用异构soc(如zynq平台)原位构建直方图:由pl端接收高速时间戳,并利用bram保存计数值;ps端负责状态管理与数据搬运。然而,在强背景光、高反射率目标或多回波叠加等实际工况下,光子事件流往往呈现极度不均匀性。大量时间戳会集中在少数飞行时间位置,导致同一时间仓或相邻时间仓被连续命中,形成“高频聚簇”效应。这种由单光子物理和统计特性决定的极端数据分布,给现有硬件架构的数据吞吐能力带来了严峻挑战。

3、现有方案之一是将原始时间戳上传至后端处理器或上位机,再由软件完成地址映射、直方图统计和峰值提取。该方式灵活,但在光子计数率较高时会产生大量逐事件数据,导致传输带宽占用高、后端处理压力大、实时性较差。

4、另一类方案是在fpga或asic等前端硬件中直接构建直方图,即将时间戳转换为时间仓地址,读取该地址中的旧计数值,加一后再写回原地址。该方式可将输出数据由逐事件时间戳减少为整帧直方图,显著降低上传数据量。但在高频聚簇工况下,同一热点时间仓可能在连续多个时钟周期或短时间内被反复命中。若仍采用逐事件读改写方式,则每个光子事件都需要触发一次读出、计数更新和写回,导致热点时间仓访问压力集中,容易受到block ram同步读延迟和写回窗口的限制。

技术实现思路

1、本发明的目的是提供基于zynq的单光子时间聚簇预集合直方图构建方法,解决目前直方图构建效率低的问题。

2、本发明为了实现上述目的,采用的技术解决方案是:

3、基于zynq的单光子时间聚簇预集合直方图构建方法,接收外部时间相关单光子计数模块输出的原始时间戳,并依次经过跨时钟缓存与帧隔离标记生成、时间仓地址映射与时间窗判定处理,并判断输出是否在有效时间窗内,如果是在有效时间窗内,再判断聚簇是否命中聚簇命中标志信号,若未命中,则通过高频聚簇感知变长预聚合单元进行刷新原聚簇,并经聚簇写回控制单元输出聚簇写回请求处理;并将写回请求处理的结果进行查询未决写回缓冲单元处理,并判断是否存在同帧同仓未决项,若命中,则取最新未决更新值,若未命中,则读取目标仓旧值;将得到的最新未决更新值或目标仓旧值输入至累加聚簇增量并更新未决表项,再依次经过帧阵列标识路由将本次更新后的计数值写入目标仓旧值,再经乒乓物理储存阵列模块进行帧边界无暂停乒乓切换与直接存储器访问搬运清零处理,完成当前帧的聚簇集合直方图构建。

4、进一步地,经过跨时钟缓存与帧隔离标记生成处理后经另一支路依次进行先入先出存储器水位和事件率反馈、帧级自适应调节回路处理,并将处理结果轻量化寄存器配置总线调节阈值与保持时间的输出结果进行聚簇是否命中聚簇命中标志信号的判定,若命中聚簇命中标志信号则经过聚簇累计事件数量处理回到跨时钟缓存与帧隔离标记生成前端处理下一个事件。

5、进一步地,将帧阵列标识路由将本次更新后的计数值写入物理写回控制器中的数据通过物理写回控制器写回忙或未决占用反馈处理后输送至帧级自适应调节回路;

6、所述帧级自适应调节回路包括状态监控以及动态调节指令。

7、进一步地,聚簇写回请求的输入同步输入请求至所述聚簇写回控制单元与所述未决写回缓冲单元;

8、所述聚簇写回控制单元包括用于锁存输入的聚簇写回请求,并从请求报文中解析获得增量信息,输送至增量加法器的请求锁存与增量提取模块、累加基数选择器、增量加法器、bram物理写回控制器;所述累加基数选择器接收来自乒乓物理存储阵列读取的基础完成累加基数以及未决写回缓冲单元输出的未决写回缓冲单元中保存的最新待写回计数值信号,选定累加基数;所述增量加法器执行运算得到更新后计数值;所述物理写回控制器将合并该聚簇增量后形成的最新计数值写入乒乓物理存储阵列,同时将合并该聚簇增量后形成的最新计数值发送至未决写回缓冲单元用于更新未决写回寄存器表;

9、所述未决写回缓冲单元配置有未决写回寄存器表,用于执行同仓地址/帧标识并行匹配,在落盘完成前建立或更新寄存器表条目,输出信号至聚簇写回控制单元,并在收到落盘确认信号后执行未决表释放逻辑、清空未决写回寄存器表;

10、为输出至聚簇写回控制单元的聚簇增量。

11、进一步地,所述乒乓物理存储阵列设有port a读端口与port a写端口;所述porta读端口用于发生miss场景时读取已存储的基数原始计数值并输送至累加基数选择器;所述port a写端口接收物理写回控制器输出的最新计数值,完成物理落盘写入。

12、进一步地,所述未决写回寄存器表至少存储有效标识、帧编号、地址、计数值、序列号字段。

13、进一步地,当接收到连续同仓聚簇写回请求时,所述未决写回缓冲单元即时更新未决写回寄存器表内对应的最新计数值,保证聚簇写回控制单元获取最新待累加基数。

14、进一步地,所述累加基数选择器的基数选择逻辑为:若未决写回缓冲单元存在有效未决条目,则选择作为;若无有效未决条目,则选择乒乓读出的累加基数基数作为累加基数。

15、进一步地,所述高频聚簇感知变长预聚合单元包括:当前活跃聚簇状态寄存器、聚簇命中判断逻辑模块、动作a同仓命中累加模块、聚簇刷新控制逻辑模块、动作b聚簇刷新写回重置模块;

16、当前活跃聚簇状态寄存器包括:聚簇有效标志、聚簇帧标识、时间仓地址、连续计数值、聚簇保持计时器;

17、所述聚簇命中判断逻辑模块配置命中判定条件:

18、;

19、若判定命中,触发动作a同仓命中累加模块:在片内寄存器中执行、,仅更新片上寄存器,不访问外部bram;

20、为聚簇命中标志信号;为聚簇有效标志;为当前聚簇保存的帧阵列标识;为当前事件的时间仓地址;为当前聚簇保存的时间仓地址;

21、所述聚簇刷新控制逻辑模块配置刷新触发条件:

22、地址帧发生变化,命中标志;连续计数超过设定阈值;聚簇保持时间超时;帧结束eof或者系统繁忙busy;

23、当满足刷新条件触发flush时,启动动作b聚簇刷新写回重置模块:提交聚簇增量:;重置新聚簇上下文:,;

24、所述高频聚簇感知变长预聚合单元最终向外输出聚簇写回请求,请求报文携带参数。

25、进一步地,在经过时间仓地址映射与时间窗判定处理后,若输出不在有效时间窗内,则丢弃不在有效时间窗内的事件。

26、通过采用上述技术方案,本发明的有益技术效果是:

27、本发明在前端硬件原位构建直方图的基础上,进一步针对热点时间仓的连续高频命中进行聚簇预聚合。对于同一帧内命中同一时间仓的多个光子事件,系统在寄存器中累计其计数,再以聚簇增量写回。因而,在不改变各光子对所属时间仓计数贡献的前提下,减少了热点时间仓的重复读改写、冲突判断和写回调度次数,降低同步读延迟和写回窗口对吞吐率的限制,并有利于减小旁路比较逻辑和关键路径压力,提高直方图构建效率。