一种激光陀螺仪数据的硬件加速电路制造技术

技术编号:18710895 阅读:22 留言:0更新日期:2018-08-21 22:41
本发明专利技术涉及一种激光陀螺仪数据的硬件加速电路。该硬件加速电路包括主机状态机模块,用于控制激光陀螺仪采集的激光点云数据和参考栅格数据的匹配运算过程,并实现在不同的状态之间进行切换;主机接口模块基于主机接口控制状态机完成总线上的数据命令收发;从机接口模块包括配置子模块和中断子模块,CPU通过配置子模块预先配置该硬件加速电路外围的接口存储模块中的基地址和数据信息,中断子模块通知CPU从所述接口存储模块提取运算结果,然后进行软件处理得出激光陀螺仪感测到的位置信息。激光点云数据的读取,处理以及写出都不用CPU的参与,也不需要CPU进行查询等待,节省CPU带宽,适用于大量复杂高速的数据传输。

A hardware acceleration circuit for data of laser gyroscope

The invention relates to a hardware acceleration circuit for data of laser gyro. The hardware acceleration circuit consists of a host state machine module, which is used to control the matching operation between the laser point cloud data and the reference grid data collected by the laser gyroscope and to switch between different states. The interface module consists of a configuration sub-module and an interrupt sub-module. The CPU pre-configures the base address and data information of the interface storage module in the peripheral of the hardware acceleration circuit by configuring the sub-module. The interrupt sub-module informs the CPU to extract the operation result from the interface storage module, and then processes the software to get the sensed result of the laser gyroscope. Location information. The reading, processing and writing of laser point cloud data do not require CPU's participation, nor does it need CPU to wait for queries, thus saving CPU bandwidth, which is suitable for large amounts of complex and high-speed data transmission.

【技术实现步骤摘要】
一种激光陀螺仪数据的硬件加速电路
本专利技术涉及数字电路领域,具体涉及一种激光陀螺仪数据的硬件加速电路。
技术介绍
扫地机在采用激光陀螺仪进行地图构建和定位时,由于激光陀螺仪是360度旋转的,扫地机也是在不断运动的,所以激光陀螺仪每旋转一圈就得到一批激光点的云数据,然后采取软件算法完成激光点云数据与栅格地图之间的匹配,从而得到扫地机的当前位置信息。其中所述软件算法的基本流程是:CPU读取激光点的云数据,然后将云数据与栅格地图进行一一匹配,得到有效的匹配结果,然后将结果写入到存储介质,软件通过对匹配结果进行处理,从而得到当前扫地机的位置信息。现有的SOC中的CPU在访问存储器时的基本流程为:CPU发出访问指令,经过AHB总线,查找到存储器所在的空间,对存储器进行访问。访问成功则存储器会对AHB总线发出成功响应的信号,同时送出其他CPU希望得到的数据,AHB总线将这些信号传导回CPU完成一次指令的操作。由于CPU的工作频率往往高于存储器的频率,以至于CPU每发出一条指令对存储器进行操作时都要等待好几个时钟周期才能获得存储器的响应,大大降低了CPU的运行效率。所以上述对激光云数据反复读写、比对的过程中通过CPU干预完成数据处理和传输是非常消耗软件资源的,并抢占了其他模块的CPU工作时间,影响其他模块的工作速度,尤其在大量的数据通信的时候会大大增加CPU的工作负担,严重影响整体芯片的性能。
技术实现思路
在扫地机利用激光陀螺仪进行地图组建和定位时,为了克服已有的硬件电路占用大量CPU资源的不足,适应大量复杂数据的传输,本专利技术提供一种激光陀螺仪数据的硬件加速电路实现激光点云数据的运算,本专利技术的技术方案如下:一种激光陀螺仪数据的硬件加速电路,它包括主机接口模块,用于基于接口总线读写硬件加速电路外围的接口存储模块中的数据,该硬件加速电路包括:主机状态机模块,用于实现对接口存储模块中数据的读写,控制输入的所述激光陀螺仪数据的运算过程,并在不同的读写模式切换到相应的状态,其中主机状态机模块中包括五个状态机,即主状态机、突发读模式状态机、单次读模式状态机、单次写模式状态机和主机接口控制状态机,所述读写模式包括突发读模式、单次读模式和单次写模式;所述激光陀螺仪数据是所述激光陀螺仪采集的激光点云数据,激光点云数据是二维坐标数据,包括X轴和Y轴方向上的数据。进一步地,所述硬件加速电路还包括,从机接口模块,用于接受所述主机状态机模块的工作状态信息和CPU的配置信息,并发出中断通知CPU去处理所述硬件加速电路的运算结果,其中从机接口模块包括配置子模块和中断子模块。进一步地,所述主状态机包括初始状态、突发读模式状态机工作状态、单次读模式状态机工作状态、单次读等待状态、单次写模式状态机工作状态、单次写等待状态和结束状态;所述主状态机用于突发读模式状态机工作状态下从所述接口存储模块获取所述激光点云数据;所述主状态机用于单次读模式状态机工作状态下从所述接口存储模块获取参考栅格数据;所述主状态机用于控制状态转换过程中所述激光点云数据的判断和所述参考栅格数据的运算;所述主状态机用于单次写模式状态机工作状态下将上述获取的数据的运算结果写入所述接口存储模块中;其中,所述参考栅格数据是根据预先构建的栅格地图而配置在所述接口存储模块内的二维数组。进一步地,所述突发读模式状态机在所述突发读模式状态机工作状态下被激活,用于突发读模式下读取所述接口存储模块中采集的所述激光点云数据的地址单元以获取所述接口存储模块传输向所述主机状态机模块的所述激光点云数据;所述单次读模式状态机在所述单次读模式状态机工作状态下被激活,用于单次读模式下读取所述接口存储模块中预先配置的所述参考栅格数据的地址单元以获取所述接口存储模块传输向所述主机状态机模块的所述参考栅格数据;所述单次写模式状态机在所述单次写模式状态机工作状态下被激活,用于向所述接口存储模块中写入所述运算结果以提供给CPU进行软件处理使用。进一步地,所述突发读模式是所述主机状态机模块一次操作中连续读取所述接口存储模块的所述激光点云数据表的同一行内框定的所有地址单元;而所述单次读模式是所述主机状态机模块一次操作中读取所述接口存储模块的所述参考栅格数据表内框定的预定数量的地址单元;其中,所述激光点云数据表和所述参考栅格数据表都是所述接口存储模块的存储阵列。进一步地,所述配置子模块,用来告知CPU配置所述接口存储模块中所述参考栅格数据表的基地址、传输入所述硬件加速电路中参与运算的所述激光点云数据的个数、所述激光点云数据表的基地址、运算结果表的基地址和循环次数;其中,所述运算结果表是所述运算结果从所述硬件加速电路写入所述接口存储模块的存储阵列,所述循环次数与所述激光陀螺仪定位目标点的个数相关,所述激光陀螺仪的一个定位目标点确定所述突发读模式下传输入所述硬件加速电路中的所述激光点云数据的个数。进一步地,所述中断子模块用于告知CPU从所述运算结果表的对应地址单元提取所述运算结果,CPU将所述运算结果进行软件处理,得到所述激光陀螺仪感测的位置信息。进一步地,所述运算过程包括,首先判断所述突发读模式下输入所述主机状态机模块的所述激光点云数据是否与所述参考栅格数据表中预先配置的所述参考栅格数据匹配,是则将所述单次读模式下获取的匹配的所述参考栅格数据进行累加,得出累加结果,否则加一运算作为累加结果;当判断完基于所述激光陀螺仪的一个所述定位目标点而传输入所述硬件加速电路中的所述激光点云数据的匹配情况,并完成所述参考栅格数据的运算后,计算所述累加结果的平均值,即所述运算结果,然后将所述累加结果清零再进行下一个所述定位目标点的处理。进一步地,所述主机接口控制状态机,用于控制总线上进行的数据传输类型。相比于现有技术,本专利技术通过在CPU与存储器之间增加所述硬件加速电路,激光点云数据的读取,处理以及写出完全由所述硬件加速电路完成,不需要CPU的参与,节省CPU的软件资源消耗,可大大节省CPU带宽,减小耗时;同时所述硬件加速电路通过中断的方式告知CPU匹配处理的结果,节省系统指令开销。附图说明图1为本专利技术的硬件加速电路的电路结构框图;图2为本专利技术的接口存储模块的框图;图3为本专利技术中的状态机的转换流程图;图4为本专利技术的主机接口控制状态机。具体实施方式下面结合附图对本专利技术的具体实施方式作进一步说明:本专利技术实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本专利技术的创新部分,本专利技术实施方式中并没有将与解决本专利技术所提出的技术问题关系不太密切的单元引入,但这并不表明本专利技术实施方式中不存在其它的单元。图1为本专利技术实施提供的一种激光陀螺仪数据的硬件加速电路的电路结构框图,它包括主机接口模块,用于基于接口总线来读写硬件加速电路外围的接口存储模块中的数据,该硬件加速电路还包括:主机状态机模块,被配置为实现对接口存储模块中数据的读写,控制输入的所述激光陀螺仪数据的运算过程,并在不同的读写模式切换到相应的状态,其中主机状态机模块中包括五个状态机,即主状态机、突发读模式状态机、单次读模式状态机、单次写模式状态机和主机接口状态机,所述读写模式包括突发读模式、单次本文档来自技高网...

【技术保护点】
1.一种激光陀螺仪数据的硬件加速电路,它包括主机接口模块,用于基于接口总线读写硬件加速电路外围的接口存储模块中的数据,其特征在于,该硬件加速电路包括:主机状态机模块,用于实现对接口存储模块中数据的读写,控制输入的所述激光陀螺仪数据的运算过程,并在不同的读写模式切换到相应的状态,其中主机状态机模块中包括五个状态机,即主状态机、突发读模式状态机、单次读模式状态机、单次写模式状态机和主机接口控制状态机,所述读写模式包括突发读模式、单次读模式和单次写模式;所述激光陀螺仪数据是所述激光陀螺仪采集的激光点云数据,激光点云数据是二维坐标数据,包括X轴和Y轴方向上的数据。

【技术特征摘要】
1.一种激光陀螺仪数据的硬件加速电路,它包括主机接口模块,用于基于接口总线读写硬件加速电路外围的接口存储模块中的数据,其特征在于,该硬件加速电路包括:主机状态机模块,用于实现对接口存储模块中数据的读写,控制输入的所述激光陀螺仪数据的运算过程,并在不同的读写模式切换到相应的状态,其中主机状态机模块中包括五个状态机,即主状态机、突发读模式状态机、单次读模式状态机、单次写模式状态机和主机接口控制状态机,所述读写模式包括突发读模式、单次读模式和单次写模式;所述激光陀螺仪数据是所述激光陀螺仪采集的激光点云数据,激光点云数据是二维坐标数据,包括X轴和Y轴方向上的数据。2.根据权利要求1所述硬件加速电路,其特征在于,所述硬件加速电路还包括,从机接口模块,用于接受所述主机状态机模块的工作状态信息和CPU的配置信息,并发出中断通知CPU去处理所述硬件加速电路的运算结果,其中从机接口模块包括配置子模块和中断子模块。3.根据权利要求1所述硬件加速电路,其特征在于,所述主状态机包括初始状态、突发读模式状态机工作状态、单次读模式状态机工作状态、单次读等待状态、单次写模式状态机工作状态、单次写等待状态和结束状态;所述主状态机用于突发读模式状态机工作状态下从所述接口存储模块获取所述激光点云数据;所述主状态机用于单次读模式状态机工作状态下从所述接口存储模块获取参考栅格数据;所述主状态机用于控制状态转换过程中所述激光点云数据的判断和所述参考栅格数据的运算;所述主状态机用于单次写模式状态机工作状态中将所述参考栅格数据的运算结果写入所述接口存储模块中;其中,所述参考栅格数据是根据预先构建的栅格地图而配置在所述接口存储模块内的二维数组。4.根据权利要求3所述硬件加速电路,其特征在于,所述突发读模式状态机在所述突发读模式状态机工作状态下被激活,用于突发读模式下读取所述接口存储模块中采集的所述激光点云数据的地址单元以获取所述接口存储模块传输向所述主机状态机模块的所述激光点云数据;所述单次读模式状态机在所述单次读模式状态机工作状态下被激活,用于单次读模式下读取所述接口存储模块中预先配置的所述参考栅格数据的地址单元以获取所述接口存储模块传输向所...

【专利技术属性】
技术研发人员:何再生
申请(专利权)人:珠海市一微半导体有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1