一种基于FPGA的三维网络链路优化及并行计算方法与流程

文档序号:31455734发布日期:2022-09-07 14:32阅读:114来源:国知局
一种基于FPGA的三维网络链路优化及并行计算方法与流程
一种基于fpga的三维网络链路优化及并行计算方法
技术领域
1.本发明涉及三维网络链路技术领域,尤其涉及一种基于fpga的三维网络链路优化及并行计算方法。


背景技术:

2.现代战争已经是体系化的战争,战场目标不再是一个个孤立的个体,而是组成为一个有机的整体,其中存在作战编队、通信网络、指挥控制、监视侦察等等复杂多样的关系,实时地将战场上多维度的庞大信息进行网络可视化的显示是现在研究的重点内容。
3.在三维虚拟战场中,会使用可视化网络来更直观的表现目标之间的复杂关系,但是战场情况瞬息万变,网络态势可视化需要同时具备真实性和实时性,实际上高低不平的地势会影响目标间的连线出现穿模现象,且现有技术的方案也不能满足网络计算实时性的需求。


技术实现要素:

4.本发明的目的是提供一种基于fpga的三维网络链路优化及并行计算方法,该方法有效解决了网络态势绘制过程中山脉穿孔的问题,同时针对大量网络计算需求,采用fpga对计算密集型算法进行并行计算,提高了计算能力,从而保证了网络可视化的实时性。
5.本发明的目的是通过以下技术方案实现的:
6.一种基于fpga的三维网络链路优化及并行计算方法,所述方法包括:
7.步骤1、在三维网络链路的目标之间进行地形剖面分析,获取表达地形起伏的高程采样数据;
8.步骤2、使用gramham凸包算法对步骤1获取的高程采样数据进行处理,提取出反应地形整体变化趋势的保凸特征点集;
9.步骤3、采用贝塞尔曲线拟合算法对步骤2提取的保凸特征点集进行曲线拟合,通过逐段光滑插值,实现整条曲线的保凸可视化。
10.由上述本发明提供的技术方案可以看出,上述方法有效解决了网络态势绘制过程中山脉穿孔的问题,同时针对大量网络计算需求,采用fpga对计算密集型算法进行并行计算,提高了计算能力,从而保证了网络可视化的实时性。
附图说明
11.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
12.图1为本发明实施例提供的基于fpga的三维网络链路优化及并行计算方法流程示意图;
13.图2为本发明实施例所述高程采样数据的获取过程示意图;
14.图3为本发明实施例所述贝塞尔曲线拟合算法保凸控制点的构造示意图。
具体实施方式
15.下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,这并不构成对本发明的限制。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
16.如图1所示为本发明实施例提供的基于fpga的三维网络链路优化及并行计算方法流程示意图,所述方法包括:
17.步骤1、在三维网络链路的目标之间进行地形剖面分析,获取表达地形起伏的高程采样数据;
18.在该步骤中,如图2所示为本发明实施例所述高程采样数据的获取过程示意图,针对三维网络链路的三维坐标采用wgs-84地心坐标系,首先使用地理信息系统gis(geographic information system)在两点目标ao、bo之间进行地形剖面分析,然后根据设置的采样频率沿球面进行数据采样,得到第一目标ao、第二目标bo对应的经纬位置点之间的剖面高程点集;
19.所得到的点集参见图2中的ag、bg两点之间的黑色折线上的点,其中ag、bg为地心ec与目标点ao、bo连线与水平面形成的交点,通过对该黑色折线段进行采样,获取表达地形起伏的高程采样数据。
20.步骤2、使用gramham凸包算法对步骤1获取的高程采样数据进行处理,提取出反应地形整体变化趋势的保凸特征点集;
21.在该步骤中,在小范围时,若三维网络链路两个目标之间连线与三维地形之间无交点,则采用两点线段连线进行可视化表达即可获得较好的视觉效果;但当两目标之间连线与三维地形有交点时,若仍旧采用线段连线则容易出现山脉穿孔的问题。故本实施例使用gramham凸包算法对步骤1获取的高程采样数据进行处理,提取出反应地形整体变化趋势的保凸特征点集,具体过程为:
22.首先根据获取的高程采样数据,读取两个目标点p0、p1之间的剖面高程点集;
23.再利用向量点乘计算其他采样点与目标点之间的直线p0p1的夹角;
24.以点p0为原点,直线p0p1为x轴,计算其他采样点在剖面上的横坐标及纵坐标,构造二维坐标平面;
25.然后按照计算的夹角对其他采样点按照由小到大进行排序;
26.利用向量叉乘依次对排序后的采样点进行右旋,判断各采样点是否为凸包上的点,并将凸包上的采样点归入凸包集;例如先取出采样点p2,p3两点,计算向量p0p2和p3p2的叉乘,如果大于0,说明是向右旋转,即采样点p2是凸包上的点,接着取下一个p4点,与p2、p3一起来判断p3是否是凸包上的点;若p2不是凸包上的点,接着取下一个p4点,与p0、p3一起来判断p3是否是凸包上的点;
27.当所有采样点遍历完毕后,确认凸包集,获得反应地形整体变化趋势的保凸特征点集。
28.步骤3、采用贝塞尔曲线拟合算法对步骤2提取的保凸特征点集进行曲线拟合,通过逐段光滑插值,实现整条曲线的保凸可视化。
29.在该步骤中,如图3所示为本发明实施例所述贝塞尔曲线拟合算法保凸控制点的构造示意图,基于保凸特征点集a、b、c、d、e,以线段cd为例,在该线段cd上再插入两个新的控制点,然后c、d端点和这两个新的控制点构造一段三次贝塞尔曲线,以c点为例说明新增控制点的几何构建过程为:
30.在三角形bcd中计算中线gh;
31.记a=cg与ch的长度比值,在中线gh上取点f,使得线段gf与fh的长度比值为a=cg/ch=gf/fh;
32.过c点作gh的平行线c1c2,使得线段cc1=gf,线段cc2=fh;
33.过c2点作cd的垂线l1,过d1点作cd的垂线l2,比较两条垂线l1和l2的长度,若垂线l2较小,则取较小垂线对应的点d1,则过点d1作cd的平行线,交平行线c1c2于点c3,则点c3、d1即为线段cd上插入的两个新控制点;
34.按照上述方法依次处理非端点的各点;
35.在端点处进行特殊处理,具体为:首先使用中线平移获得端点控制点,然后使用向量计算出平移后位置同顶点的位移向量,从而计算出控制点的坐标;举例来说,首先取得开始端点a的右侧控制点a2,使得a2=a,左侧控制点a1忽略;结束端点e的左侧点e1,使得e1=e,右侧控制点e2忽略;
36.然后使用平行线裁剪各控制点,用点乘计算出正弦值,再比较到边的距离,最终提取出实现保凸的地势拟合曲线抽样点,实现整条曲线的保凸可视化。
37.另外,本发明实施例还提出了cpu+fpga异构协同并行计算的架构,将三维网络态势可视化绘制过程中计算量较大且并行度较高的算法映射到可编程门阵列fpga(field-programmable gate array)中进行细粒度并行计算加速,cpu则完成高程信息采集、网络链路显示等前后处理工作,主机端和设备端之间通过pcie高速总线进行互联。
38.具体实现中是将步骤2中的graham凸包算法和步骤3中的贝塞尔曲线拟合算法通过高层次综合工具hls映射到可编程门阵列fpga中进行并行计算,具体来说:
39.首先将cpu端采集的高程采样数据通过pcie(peripheral component interconnect express)传输到fpga的ddr进行缓存;
40.fpga收到数据后,通过axi(advanced extensible interface)内部互联模块把数据传输到fifo(first input first output)缓存区,并启动graham凸包模块进行地势特征点提取,提取完成的特征点再写入对应的链路fifo中,fpga为每个链路配置了对应的缓存fifo和计算单元,可支持1024条链路并行计算;
41.然后再启动贝塞尔曲线拟合模块读取每条链路上的缓存fifo,进行保凸曲线拟合并行计算,计算完成的结果通过axi内部互联模块写入到ddr缓存区;再通过pcie dma把缓存区的数据写回cpu端,并发送fpga计算结束的信号;
42.cpu端接收到结束信号后,读取存储区数据进行显示,从而高效的实现拟合地形的三维网络可视化。
43.具体实现中,可以首先采用c、c++完成graham凸包模块和贝塞尔曲线拟合模块算法层面的源文件编写,同时针对算法特征采用dataflow、pipeline等约束指令,以达到硬件
资源最大化利用、缩短延时、提高吞吐率的效果;其次利用编译器对源文件进行rtl实现,在rtl simulation阶段,取一条链路的结果与c仿真结果进行比对分析,保证输出结果正确;验证后的编译结果以axi stream的接口方式对graham凸包模块和贝塞尔曲线拟合模块进行封装,封装完成的ip可在vivado中集成、综合、布局布线,最后生成的比特流可完成对fpga的硬件资源配置。
44.举例来说,通过采用cpu平台和本技术的cpu+fpga异构并行计算平台对1000、2000、4000、6000、8000、10000条网络链路分别进行计算,计算结果如下表1所示,由表1可知:相较cpu平台的运行效率,采用本技术fpga+cpu异构并行计算平台的方式,三维网络链路计算性能能够提升57.45倍,极大的提升了可用性。
[0045][0046]
值得注意的是,本发明实施例中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
[0047]
综上所述,本发明实施例所述方法能够消除网络态势两点连接直线“穿山入地”的现象,生成的目标网络整体光滑,能够有效的拟合地势,具有较好的抗“破碎”能力,在避免穿山情况发生的同时使得网络链路更加流畅光滑。
[0048]
其次,本发明实施例采用fpga对计算密集型算法并行计算,解决了大量绘制计算带来的可视化延迟问题,有效的提升了现有平台对军事目标网络态势可视化应用的运行支撑能力。
[0049]
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。本文背景技术部分公开的信息仅仅旨在加深对本发明的总体背景技术的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1