[发明专利]一种基于BP神经网络的FPGA动态功耗估算方法有效

专利信息
申请号: 201410352614.6 申请日: 2014-07-23
公开(公告)号: CN104199536B 公开(公告)日: 2017-06-06
发明(设计)人: 袁雅婧;巨艇;贾亮;郭宝龙;徐芳 申请(专利权)人: 西安空间无线电技术研究所
主分类号: G06F1/32 分类号: G06F1/32;G06F11/36;G06F11/34
代理公司: 中国航天科技专利中心11009 代理人: 安丽
地址: 710100 陕*** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 bp 神经网络 fpga 动态 功耗 估算 方法
【说明书】:

技术领域

发明涉及一种基于BP神经网络的FPGA动态功耗估算方法,属于FPGA动态功耗估算技术领域。

背景技术

FPGA功耗一般由静态功耗和动态功耗组成。静态功耗主要是晶体管的漏电流引起,与工艺有关;动态功耗主要由电容充放电引起,主要体现为时钟、可编程资源、I/O、BRAM消耗的功耗。一般情况下,动态功耗占总功耗的比例较大,所以一般来说,FPGA功耗中只考虑动态功耗。

目前主流的FPGA供应商都提供了相关的软件去计算功耗,比如Xilinx公司的Xpower功耗分析工具,如果已经做好了设计,便可以直接在功耗分析软件上看到功耗估算结果,但是上述方法要求必须完成设计文件;Xilinx公司的XPower Estimator(XPE),可以仅凭设计利用率估计就能获得初步的功耗评估,而无需实际设计文件,但是无法对功耗与影响因素之间的关系做定量的分析。

BP(Back Propagation)神经网络是目前应用最广泛的神经网络模型之一,学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。传统的BP神经网络收敛速度非常慢,改进的方法有学习速度自适应调整法和LM(Levenberg-Marquardt)算法等等。学习速度自适应调整法保证了BP神经网络能选用学习率允许范围内的最大值进行学习,但是学习时间依然较长。LM算法根据学习结果动态调节阻尼因子,即动态收敛方向,收敛速度比较快,但是没有对学习率进行改进。

发明内容

本发明的技术解决问题是:克服现有技术的不足,提供一种基于改进BP神经网络的FPGA的功耗估算方法,本发明通过BP神经网路的权值实现隐形表达估算因素间的内在联系,获取功耗与影响因素之间的关系。

本发明的技术解决方案是:

一种基于BP神经网络的FPGA动态功耗估算方法,FPGA的动态功耗主要来源于四个模块,分别为时钟树、可编程资源、I/O、块存储器,包括步骤如下:

(1)根据XPE获取四个模块的样本数据,即各模块的输入输出量;

(2)对步骤(1)获得的样本数据进行数据筛选和数据预处理;

(3)根据步骤(2)中处理后的样本数据的输入与其对应的输出分别构造四个模块的BP神经网络模型;

(4)将样本数据的一部分作为BP神经网络的训练数据,另外一部分作为BP神经网络的测试数据,同时通过训练数据中各模块的输入与其对应的输出进行BP神经网络训练得到训练后的神经网络,进而得到神经网络输出的功耗;

(5)将步骤(4)中神经网络输出的功耗与步骤(4)中的测试数据进行比较,判断两者之间的误差是否小于设定的阈值,若小于则进入步骤(6),否则进入步骤(3);

(6)将步骤(4)中神经网络输出的功耗还原为实际功耗值;

(7)将获取的四个模块的功耗估计值进行求和得到总功耗值。

所述步骤(1)中获取四个模块样本数据的具体步骤如下:

(1a)确定四个模块的输入作为样本数据;时钟树模块的输入为时钟频率;可编程资源模块的输入为时钟频率、LUT个数、Shift Registe个数、LUTRAM个数、FF个数;I/O模块的输入为时钟频率、I/O端口个数;块存储器的输入为时钟频率、块存储器个数;

(1b)分别获取四个模块的N组动态功耗作为样本数据,即为各模块的输出,N为正整数。

所述步骤(2)中进行数据筛选和数据预处理的方法如下:

(2a)计算各模块样本数据的均值与标准偏差其中xi为样本数据中某模块的动态功耗值;

(2b)对各模块的样本数据与步骤(2a)中求出的样本均值的标准偏差采用3σ准则进行判断,若则此样本误差较大,剔除此样本数据;

(2c)对(2b)筛选后的样本数据进行预处理;预处理:对筛选后的样本数据进行归一化处理,将样本数据映射到[0,1]区间为:其中,xmin为某模块的动态功耗的最小值,xmax为某模块的动态功耗的最大值,y为预处理后的结果。

所述步骤(3)中构造BP神经网络模型的具体步骤如下:

(3a)根据四个模块的输入元素数量确定输入神经元数量;

(3b)根据四个模块的输入输出确定隐含层神经元数量;具体确定方式如下:隐含层神经元数量n1是输入神经元数量,n3是输出神经元数量,a为1到10之间的常数;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安空间无线电技术研究所,未经西安空间无线电技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410352614.6/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top