当前位置: 首页 > 专利查询>天津大学专利>正文

一种环境自适应的SLAM后端FPGA加速器及设计方法技术

技术编号:34276663 阅读:20 留言:0更新日期:2022-07-24 17:19
本发明专利技术公开了一种环境自适应的SLAM后端FPGA加速器结构及设计方法,该加速器结构包括设置于SLAM后端的可配置电路模块、环境自适应参数更新模块和门控时钟,其中:视觉信息数据经过SLAM前端分成两路:其中一路将从环境中提取的视觉信息输入至设置于SLAM后端的可配置电路模块;另一路将路标点数目发送至设置于SLAM后端的环境自适应参数更新模块;使用门控时钟电路控制可配置电路模块开启的数目;并且,根据SLAM前端采集的路标点的数目,求解当前环境下使得可配置电路模块功耗最小的配置参数,并更新可配置电路模块配置参数。与现有技术相比,本发明专利技术实现了架构动态调整,同时能够降低运行时功耗。够降低运行时功耗。够降低运行时功耗。

An environment adaptive slam backend FPGA accelerator and its design method

【技术实现步骤摘要】
一种环境自适应的SLAM后端FPGA加速器及设计方法


[0001]本专利技术属于FPGA器件
,特别涉及一种用于SLAM后端的FPGA加速器设计。

技术介绍

[0002]SLAM(Simultaneous Localization And Mapping)是无人机、无人车等在没有预知地图信息的条件下确定自身运动轨迹的关键技术。SLAM系统分为前端和后端。前端根据采集的传感器数据计算初始的运动轨迹,由于传感器采集的数据具有噪声,该初始轨迹的精确度无法满足实际要求,通过后端对前端计算的初始轨迹进行优化。
[0003]SLAM后端通常使用非线性优化方法进行状态的优化,该方法使用传感器观测数据的误差来构建成本函数,通过最小化成本函数得到系统的运动状态,通常使用的算法有高斯牛顿法、列文伯格

马夸尔特法等。然而非线性算法的高计算量和数据复杂性限制了SLAM算法在移动嵌入式设备上的使用。
[0004]现场可编程门阵列(Field Programmable Gate Array,FPGA)可以实现大规模并行计算,并且具有可重配置的优点。在FPGA上实现SLAM后端算法的硬件加速器,可以满足移动场景下SLAM后端算法的运算实时性要求。在实际应用中,随着环境的不断变化,SLAM前端采集的数据量也随之发生改变,导致SLAM后端的计算量发生变化。传统的SLAM后端硬件加速器为了保证计算的实时性,所设计的架构用于计算量最大的情况,且硬件架构在运行时固定不变,无法根据环境的变化降低功耗。
专利技术内容
[0005]本专利技术的目的是提出一种环境自适应的SLAM后端FPGA加速器及设计方法,针对SLAM后端FPGA加速器中电路架构根据环境的改变自适应地调节电路,为了实现环境自适应参数更新,以功耗最小为优化目标,计算延时为约束条件,构建求解电路配置参数的问题。
[0006]为实现本专利技术的目的所采用的技术方案如下:
[0007]一种环境自适应的SLAM后端FPGA加速器,该加速器结构包括设置于SLAM后端的可配置电路模块、环境自适应参数更新模块和门控时钟,其中:
[0008]视觉信息数据经过SLAM前端分成两路:其中一路将从环境中提取的视觉信息输入至设置于SLAM后端的可配置电路模块;另一路将路标点数目发送至设置于SLAM后端的环境自适应参数更新模块;所述可配置电路模块为一组用于FPGA加速器的计算和存储资源的可参数化配置的电路模块,每一个可配置电路模块对应一个可配置参数;所述门控时钟分别与可配置电路模块、环境自适应参数更新模块连接,借助于门控时钟的时钟使能信号实现控制,具体为:环境自适应配置参数更新模块输出时钟使能信号,使用门控时钟电路控制可配置电路模块开启的数目,实现架构动态调整;并且,根据SLAM前端采集的路标点的数目,求解当前环境下使得可配置电路模块功耗最小的配置参数,并更新可配置电路模块配置参数;
[0009]所述可配置电路模块包括依序连接的输入缓存、雅可比更新模块、舒尔消元模块、
存储单元、乔可斯基分解模块、状态更新模块、边缘化模块以及输出缓存;可配置的参数分别为舒尔消元模块中的乘累加单元的数目n
d
、乔可斯基分解模块中分解单元的数目s和边缘化模块中乘累加单元的数目n
m

[0010]所述输入缓存、所述输出缓存和所述存储单元实现数据存储的功能,所述雅可比更新模块用于计算视觉观测对系统优化变量的偏导数,所述舒尔消元模块处理雅可比矩阵,并执行舒尔消元运算,所述乔可斯基分解模块将所述舒尔消元模块得到的线性方程组的系数矩阵分解为三角矩阵,所述状态更新模块用于求解状态向量的增量,并输出更新后的状态向量,所述边缘化模块用于执行边缘化计算,并将计算结果输出到输出缓存中。
[0011]所述输入缓存中存储SLAM前端输出的观测值、状态变量的初始值和先验信息;所述输出缓存中存储更新后的系统状态和边缘化的计算结果;所述存储单元中存储舒尔消元得到的线性方程组数据。
[0012]所述雅可比更新模块由路标点处理模块、关键帧处理模块和视觉观测处理模块构成;所述舒尔消元该模块由硬件矩阵乘法器和硬件向量乘法器构成;所述乔可斯基分解模块包含级联了多个乔可斯基分解基本单元;所述状态更新模块由三角方程求解模块和矩阵加法器模块构成;所述边缘化模块由硬件矩阵乘法器和矩阵加法器组成。
[0013]一种环境自适应的SLAM后端FPGA加速器的设计方法,该方法包括以下步骤:
[0014]步骤1、设计可配置电路模块硬件结构:包括依序连接的输入缓存、雅可比更新模块、舒尔消元模块、存储单元、乔可斯基分解模块、状态更新模块、边缘化模块以及输出缓存,设计可配置的硬件模块为舒尔消元模块、乔可斯基分解模块和边缘化模块,配置参数分别为舒尔消元模块中的乘累加单元的数目n
d
、乔可斯基分解模块中分解单元模块的数目s和边缘化模块中乘累加单元的数目n
m

[0015]步骤2、构建可配置电路模块的电路模型,以得到延时约束下的最小功耗电路:对电路的延时和功耗进行建模,延时模型通过计算FPGA加速器各个模块中关键路径的延时得到,延时模型是关于配置参数的函数,如下式所示:
[0016][0017]其中,m表示路标点的数量;L
Jac
表示雅可比矩阵更新模块的计算延时;
[0018]L
Schur
(n
d
)表示舒尔消元的计算延时,是关于配置参数n
d
的函数;
[0019]L
Cholesky
(s)表示乔可斯基分解模块的延时,是配置参数s的函数;
[0020]L
Sub
表示状态更新模块的电路延时,与电路的配置参数无关;
[0021]L
Marg
(n
m
)表示边缘化模块的延时,是关于配置参数n
m
的函数;
[0022]FPGA加速器的功耗模型,如下式所示:
[0023]Power(n
d
,n
m
,s)=P0+n
d
×
P
d
+n
m
×
P
m
+s
×
P
s
[0024]其中,P0表示一个恒定的基本功耗,P
d
、P
m
、P
s
表示3个功耗加权系数,n
d
、n
m
、s表示3个配置参数;
[0025]步骤3、求解满足可配置电路模块功耗最小问题的配置参数,如下式所示:
[0026][0027]其中,Latency(
·
)表示加速器的延时模型,Power(
·
)表示FPGA加速器的功耗模型,min表示根据电路的功耗模型最小化电路功耗,L*表示加速器运本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种环境自适应的SLAM后端FPGA加速器,其特征在于,该加速器结构包括设置于SLAM后端的可配置电路模块、环境自适应参数更新模块和门控时钟,其中:视觉信息数据经过SLAM前端分成两路:其中一路将从环境中提取的视觉信息输入至设置于SLAM后端的可配置电路模块;另一路将路标点数目发送至设置于SLAM后端的环境自适应参数更新模块;所述可配置电路模块为一组用于FPGA加速器的计算和存储资源的可参数化配置的电路模块,每一个可配置电路模块对应一个可配置参数;所述门控时钟分别与可配置电路模块、环境自适应参数更新模块连接,借助于门控时钟的时钟使能信号实现控制,具体为:环境自适应配置参数更新模块输出时钟使能信号,使用门控时钟电路控制可配置电路模块开启的数目,实现架构动态调整;并且,根据SLAM前端采集的路标点的数目,求解当前环境下使得可配置电路模块功耗最小的配置参数,并更新可配置电路模块配置参数;所述可配置电路模块包括依序连接的输入缓存、雅可比更新模块、舒尔消元模块、存储单元、乔可斯基分解模块、状态更新模块、边缘化模块以及输出缓存;可配置的参数分别为舒尔消元模块中的乘累加单元的数目n
d
、乔可斯基分解模块中分解单元的数目s和边缘化模块中乘累加单元的数目n
m
;所述输入缓存、所述输出缓存和所述存储单元实现数据存储的功能,所述雅可比更新模块用于计算视觉观测对系统优化变量的偏导数,所述舒尔消元模块处理雅可比矩阵,并执行舒尔消元运算,所述乔可斯基分解模块将所述舒尔消元模块得到的线性方程组的系数矩阵分解为三角矩阵,所述状态更新模块用于求解状态向量的增量,并输出更新后的状态向量,所述边缘化模块用于执行边缘化计算,并将计算结果输出到输出缓存中。2.如权利要求1所述的一种环境自适应的SLAM后端FPGA加速器,其特征在于,所述输入缓存中存储SLAM前端输出的观测值、状态变量的初始值和先验信息;所述输出缓存中存储更新后的系统状态和边缘化的计算结果;所述存储单元中存储舒尔消元得到的线性方程组数据。3.如权利要求1所述的一种环境自适应的SLAM后端FPGA加速器,其特征在于,所述雅可比更新模块由路标点处理模块、关键帧处理模块和视觉观测处理模块构成;所述舒尔消元该模块由硬件矩阵乘法器和硬件向量乘法器构成;所述乔可斯基分解模块包含级联了多个乔可斯基分解基本单元;所述状态更新模块由三角方程求解模块和矩阵加法器模块构成;所述边缘化模块由硬件矩阵乘法器和矩阵加法器组成。4.如权利要求1所述的一种环境自适应的SLAM后端FPGA加速器的设计方法,其特征在于,该方法包括以下步骤:步骤1、设计可配置电路模块硬件结构:包括依序连接的输入缓存、雅可比更新模块、舒尔消元模块、存储单元、乔可斯基分解模块、状态更新模块、边缘化模块以及输出缓存,设计可配置的硬件模块为舒尔消元模块、乔可斯基分解模块和边缘化模块,配置参数分别为舒尔消元模块中的乘累加单元的数目n
d
、乔可斯基分解模块中分解单元模块...

【专利技术属性】
技术研发人员:刘强刘威壮
申请(专利权)人:天津大学
类型:发明
国别省市:

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

1