【技术实现步骤摘要】
一种基于DVFS的优化重配置算法
本专利技术涉及一种基于DVFS的电路重配置任务调度方法。
技术介绍
基于静态RAM(SRAM)的现场可编程门阵列(FPGA)是卫星及智能车等应用领域的优选高能效计算平台。它具有强大的计算能力和超高性能,并具有可重新配置电路的灵活性。同时,相对于专用芯片ASIC,FPGA具有低成本和上市快的显著优点。但是基于SRAM的FPGA最初并不是为了高可靠性场景而设计研发。当FPGA处于空间等高强度辐射环境中时,它们会遭受单粒子翻转(SEU)的困扰,在此情况下,由于带电粒子撞击芯片,芯片的配置存储器(ConfigurationMemory)和片上存储器(BRAM,Flip-flop)的状态可以被翻转(R.Santos,S.Venkataraman,A.Das,andA.Kumar,“Criticality-awarescrubbingmechanismforsram-basedfpgas,”in201424thInternationalConferenceonFieldProgrammableLogic ...
【技术保护点】
1.一种基于DVFS的优化重配置算法,其特征在于,包括以下步骤:/n步骤1、提取映射到FPGA系统中所有用户任务的用户任务信息;/n步骤2、对于每个用户任务,根据FPGA系统的ICAP模块使用情况和当前用户任务的重要性,运用整数线性规划的方法调整对应电路重配置任务的运行周期,根据计算所得的运行周期,调度每一个生成的电路重配置任务在相应的用户任务前面,根据电路重配置任务的冲突关系,将电路重配置任务和对应的用户任务收集至冲突集合CΛ;/n步骤3、对于步骤2得到的冲突集合CΛ,对应不同的场景,采用以下两种方法之一来解决电路重配置任务间的冲突:/n在对FPGA可靠性要求非常高,并且 ...
【技术特征摘要】
1.一种基于DVFS的优化重配置算法,其特征在于,包括以下步骤:
步骤1、提取映射到FPGA系统中所有用户任务的用户任务信息;
步骤2、对于每个用户任务,根据FPGA系统的ICAP模块使用情况和当前用户任务的重要性,运用整数线性规划的方法调整对应电路重配置任务的运行周期,根据计算所得的运行周期,调度每一个生成的电路重配置任务在相应的用户任务前面,根据电路重配置任务的冲突关系,将电路重配置任务和对应的用户任务收集至冲突集合CΛ;
步骤3、对于步骤2得到的冲突集合CΛ,对应不同的场景,采用以下两种方法之一来解决电路重配置任务间的冲突:
在对FPGA可靠性要求非常高,并且对程序运行时间不敏感的场景下,通过解决非线性整数优化问题,不断地调用MINLP优化求解器,运用DVFS来重新调度用户任务的运行频率和电路重配置任务的开始时间使FPGA系统稳定性达到最大;
在对FPGA可靠性要求相对低一些,但是对程序运行时间敏感的场景下,基于近似的DVFS调度方式,通过设计对原优化问题的近似算法,运用DVFS重新调度用户和电路重配置任务,在显著减少算法运行时间的情况下,最大化FPGA系统的稳性;
步骤4、用EDL算法对步骤3生成的调度进行微调,最终生成电路重配置任务的最终调度;
步骤5、读取每个用户任务通过步骤4生成的调度信息,不断地重配置每个用户任务的电路,最终达到提升FPGA系统稳定性的效果。
2.如权利要求1所述的一种基于DVFS的优化重配置算法,其特征在于,步骤1中,所述用户任务信息包括用户任务的运行周期、用户任务的最大运行频率。
3.如权利要求2所述的一种基于DVFS的优化重配置算法,其特征在于,步骤2中,对于第i个用户任务,根据FPGA系统的ICAP模块使用情况和用户任务的重要性,通过下式(1)运用整数线性规划ILP的方法调整第i个用户任务对应的第i个电路重配置任务的运行周期STi:
目标:最小化
式(1)中,第i个电路重配置任务对应的刷新时间为SWi,第i个用户任务的运行周期为Ti,电路重配置任务的数量为|SΛ|,第i个用户任务的重要性为ξi,FPGA系统的ICAP模块的使用时间不能超过ubound;
通过计算每个电路重配置任务的运行周期的最小公倍数LCM,只调度LCM时间段内的用户任...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。