logo资料库

基于FPGA的神经网络硬件实现.pdf

第1页 / 共74页
第2页 / 共74页
第3页 / 共74页
第4页 / 共74页
第5页 / 共74页
第6页 / 共74页
第7页 / 共74页
第8页 / 共74页
资料共74页,剩余部分请下载后查看
封面
文摘
英文文摘
声明
0前言
0.1课题背景
0.2国内外研究状况及趋势
0.3课题研究的目的和意义
0.4本课题的主要工作和内容安排
1神经网络及其实现技术概述
1.1神经网络的发展与现状
1.2神经网络实现技术研究的内容和意义
1.3神经网络全硬件实现技术概述
1.4可重构系统的发展
1.4.1可重构系统的提出
1.4.2 FPGA动态重构展望
2神经网络的FPGA实现技术
2.1 FPGA——现场可编程门阵列
2.2 LPM参数化宏功能模块概述
2.2.1在Quartus Ⅱ中对宏功能模块进行例化
2.3神经网络的优势
2.4网络类型的选择-BP网络
2.5选择FPGA做BP神经网络硬件实现的原因
2.5.1硬件实现神经网络的必要性
2.5.2 CPU、DSP及FPGA做信号处理器的比较
2.6神经网络的拓扑结构
2.7激励函数的选择
2.8深一层的思考
2.9本章总结
3 STAM算法及其FPGA实现
3.1 FPGA器件和EDA工具简介
3.1.1可编程逻辑器件
3.1.2 StratixⅡ系列器件
3.1.3 EDA工具
3.2硬件实现BP网络的激励函数
3.3硬件实现非线性函数的一般方法分析
3.4 SBTM算法
3.5 STAM算法
3.5.1算法描述
3.5.2误差分析
3.5.3结果与比较
3.6双曲正切S型(TAN-s)函数及其导数的STAM近似
3.6.1 tan-s函数及其导数计算小数位数的选取
3.6.2 tan-s函数及其导数的STAM算法
3.7 tan-s函数STAM算法的硬件实现及仿真结果
3.7.1硬件实现
3.7.2仿真结果
3.8本章总结
4基于FPGA的神经网络实现
4.1神经元的设计与实现
4.1.1反传算法
4.1.2神经元的硬件结构
4.1.3基于FPGA的神经元的实现
4.1.4神经元的仿真波形
4.2基于FPGA的BP神经网络的可重构设计
4.2.1BP神经网络的前馈阶段设计与实现
4.2.2BP神经网络的前馈阶段仿真结果与分析
4.2.3BP神经网络的反馈阶段设计与实现
4.2.4BP神经网络的反馈阶段仿真结果与分析
4.2.5BP神经网络的更新阶段设计与实现
4.2.6BP神经网络的更新阶段仿真结果与分析
4.3阶段之间的重构及评价
4.4本章总结
5总结与展望
5.1本文研究工作总结
5.2工作展望
参考文献
致谢
个人简历、发表的学术论文
中国海洋大学硕士学位论文基于FPGA的神经网络硬件实现姓名:闫明申请学位级别:硕士专业:信号与信息处理指导教师:李欣20080601
基于FPGA的神经网络硬件实现捅要神经网络是由多个非常简单的处理单元彼此按某种方式相互连接而形成的:计算系统,该系统是靠其状态对外部输入信息的动态响应来处理信息的。神经网络是一个非线性的动态系统,可在任意精度内实现变量间的非线性关系的映像,具备解决非线性问题能力、网络学习能力和系统拟合能力,因此,人工神经网络已在我国科研、生产和生活等方面产生了普遍而巨大的影响。本文主要的工作是研究神经网络的硬件实现问题,神经网络的硬件实现是神经网络研究的基本问题之一,在构造神经网络的实际应用系统时,必然要研究和解决其硬件实现的问题。神经网络专用硬件可提供高速度,并具有比通用串、并行机高得多的性能价格比,所以,特定应用下的高性能专用神经网络硬件是神经网络研究的热点。本文在比较了几种神经网络的可行性基础上,选用了BP神经网络作为硬件实现的神经网络模型。BP神经网络对输入输出非线性关系的高精度映射能力、较强的包容性、良好的推广能力和泛化能力,使得它们在实际应用中表现出了强大的生命力,成为当今的研究热点之一。作为BP神经网络中的激励函数之一的双曲正切S型(tan-s)函数适用于变化剧烈的场合,能够加快网络学习收敛速度。可编程技术的迅猛发展,在EDA技术中占有举足轻重的地位。FPGA可以充分发挥神经网络并行执行的优点,二者的结合也成为当今的研究热点之一。文中详细叙述了用STAM算法在FPGA上对咖叮函数的高精度实现方式,并对仿真结果进行了讨论。基于FPGA的可重构技术,就是利用FPGA的可以多次重复配置的特点,通过时分复用的方式,充分利用器件的逻辑资源,在同一FPGA中自主地交替实现多种逻辑结构及其功能的技术。基于这种技术的可重构系统既可像通用微处理器系统那样设计灵活、易升级,又可像专用集成电路系统那样速度快、效率高。本文采用基于FPGA的可重构技术,以BP(BackPropagation)型误差反传多层前馈神经网络作为典型的数学模型来展开。设计中依据成熟的BP算法公式,采用原理图输入的设计方法,按照前向一反传一更新三个阶段分别设计与仿真,
通过验证,逻辑功能正确。该方法可以推广至更多类型的神经网络,为神经网络的硬件实现提供了可靠的基础。关键词:FPGA;BP神经网络;STAMn
NeuralNetworkHardwareImpIementationBasedonFPGAAbstractNeuralnetworkswhicharemadeofverysimpleprocessingunitsareacomputingsystem.Theunits黜interconnectedinoneway.Thesystemreliesonthestate’Sdynamicresponseofexternalinputinformationtodealwiththeinformation.NeuralNetworkisanon.1ineardynamicsystems.Itcanachievethenonlinearrelationshipbetweenthevariablesoftheimagewithinanyaccuracy,beabletosolvenonlinearproblems,networklearningabilityandsystemfittingability.Therefore,theartificialneuralnetworkhavehadahugeimpactonthefieldofscientificresearch,productionandlife.Inthispaper,them,ainworkistostudytheneuralnetworkhardwareimplementationproblems.Neuralnetworkhardwareimplementationisoneofthefundamentalproblemsinthefieldofneuralnetworkresearch.Constructioninthepracticalapplicationsofneuralnetworksystems,itisnecessarytostudyandresolvetheissueofitshardwareimplementation.DedicatedhardwareofNeuralnetworksCallprovidehigh—speedandaremuchhighercostperformancethantheserial/parallelmachines,therefore,thehigh·performanceapplication—specificneuralnetworkhardwareisdedicatedtoneuralnetworkresearch.Thisthesiscomparesthefeasibilityofseveralneuralnetwork,finally,selectedBPneuralnetworkasahardwareimplementationoftheneuralnetworkmodel.AsanimportantpartofANN,backpropagationneuralnetwork(BP)isofoutstandingself-organizeability,self-adaptability,extendability,robustnessandfaulttolerance,SOthenon-linearmappingwithhi.ghprecisionisobtained.Asoneofthenon—LineartransferfunctionsinBPnetwork,tan-SfunctionissuitableespeciallyontheaspectschangingacutelyandCanacceleratethetrainingandconvergenceprocessofthenetwork.Atpresent,theprogrammabletechnologydevelopsrapidlyandholdsthebalanceonEDAdesign.ThestructureofFPGACanmakefulluseofitsparallelprocessingfunctiontoexecutetheANN.Thecombinationontheseaspectsisalsopursuedenthusiastically.Inthispaper,theSTAM(SymmetricTableandAdditionMethod)algorithmsisintroducedandappliedtotheperformanceoftan.SfunctionontheFPGA.Thesimulativeresultisalsodisplayedlater.Thereareseveralmethodsonthenon.1inearfunctionrealization.ButthesealgorithmsusuallyneedtooccupylargerhardwareⅡI
resourceorhavelongerreactiontimes.However,theSTAMalgorithmscansignificantlyreducetherequirementsforthehardwareresourcebylookingupseveraltablesdirectly,andneednottoexecuteiteratively.ItCanrapidlyperformonetimelookupresultsinoneclockperiodwithhighprecisions,wherethecomputationelTorislessthanoneulp.Comparedtootheralgorithms,theSTAMalgorithmsismoresuitableforthehardwarerealizationobviously.ThereconfigurabletechnologybasedonFPGAiStheUSeoftheFPGAconfigurationcharacteristies,whichallowsUStomakefulluseofthedevicelogicresourcesinthesameFPGAbythewaythroughtimedivisionmultiplexing.Basedonthistechnologythereconfignrablesystemcanbedesignedasflexibleandeasytoupgradeasmicroprocessorsystem,asfastandefficientasASICsystem.Inthispaper,madeB.P(BackPropagation)multilayerfeed—forwardneuralnetworkasatypicalmathematicalmodel.DesignaBPNeuralnetworksbasedonthematureBPformulaandusedschematicdesigninputintheFPGA.Themethodcallbeextendedtomoretypesofneuralnetworks,provideareliablebasisfortheneuralnetworkhardwareimplementation.Keywords:FPGA;Back—propagationArtjfiOiaINeuraINetwork:STAMⅣ
独创声明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含未获得(洼!翅遗直墓丝噩噩挂别直盟趁:奎拦亘窒2或其他教育机构的学位或证书使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。学位论文作者签名:f司同签字日期:孵年箩月7日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人授权学校可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。同时授权中国科学技术信息研究所将本学位论文收录到《中国学位论文全文数据库》,并通过网络向社会公众提供信息服务。(保密的学位论文在解密后适用本授权书)学位论文作者签名:、一、1tN刚导师签字:斗l礴俅签字日期:口浒钥印日签字日期:。扩年j月罗。日
基于FPGA的神经网络硬件实现0.1课题背景0前言现代计算机构成单元的速度是人脑中神经元速度的几百万倍,对于那些特征明确,推理或运算规则清楚的可编程问题,可以高速有效地求解,在数值运算和逻辑运算方面的精确与高速极大地拓展了人脑的能力,从而在信息处理和控制决策等各方面为人们提供了实现智能化和自动化的先进手段。但由于现有计算机是按照冯·诺依曼原理,基于程序存取进行工作的,历经半个多世纪的发展,其结构模式与运行机制仍然没有跳出传统的逻辑运算规则,因而在很多方面的功能还远不能达到人的智能水平。随着现代信息科学与技术的飞速发展,这方面的问题日趋尖锐,促使科学和技术专家们寻找解决问题的新出路。当人们的思路转向研究大自然造就的精妙的人脑结构模式和信息处理机制时,推动了脑科学的深入发展以及人工神经网络和脑模型的研究。随着对生物脑的深入了解,人工神经网络获得长足发展。在经历了漫长的初创期和低潮期后,人工神经网络终于以其不容忽视的潜力与活力进入了发展高潮。60多年来,它的结构与功能逐步改善,运行机制渐趋成熟,应用领域日益扩大,在解决各行各业的难题中显示出巨大的潜力,取得了丰硕的成果。正是由于人工神经网络是一门新兴的学科,它在理论、模型、算法、应用和时限等方面都还有很多空白点需要努力探索、研究、开拓和开发。因此,许多国家的政府和企业都投入了大量的资金,组织大量的科学和技术专家对人工神经网络的广泛问题立项研究。从人工神经网络的模拟程序和专用芯片的不断推出、论文的大量发表以及各种应用的报道可以看到,在这个领域里一个百花气放、百家争鸣的局面已经形成。在进行神经网络的理论研究时,人们可以将自己的神经网络模型或算法在通用的串行或并行计算机上编程实现,但这只是研究的手段而绝非目的,在构造实际的神经网络应用系统时,必然要考虑到硬件实现问题,特定应用下的高性能专用神经网络硬件是神经网络研究的最终目标。为此我们基于FPGA器件进行了这方面的探索工作。’
基于FPGA的神经网络硬件实现0.2国内外研究状况及趋势神经网络的硬件实现可追溯到60年代,当时有几家公司和研究机构试图用硬件来实现神经元,最为著名的便是感知机和ADALINE神经网络模型的实现。当时ComellAeronautical实验室(现在名为CALSPANCorporation)的Rosenblatt从理论上和实现上描述了感知机。ADALINE神经网络模型则是由斯坦福人学的Widrow提出的。感知机和ADALINE均为单个神经元模型,它们均能接受多路输入,并能自适应地修改与这些输入相对应的突触强度(互连权值),然而它们在实现上有所不同。在感知机中,其突触强度通过一种电子机械的方法来改变(通过一个电动马达的转动来改变突触强度),这种实现有许多缺点,如体积大,价格高,运行不可靠等。Widrow的ADALINE实现中则用电阻的方法来表示突触强度。1965年至1980年,除AdaptronicsCorp(现为DivisionofFlowGeneralCrop)之外,其它一些研究实体在神经网络实现上没有做更多的工作。Adaptronics的LouisGilstrap和RogerBarton在1974年开发了第一块神经元芯片。这种很一般的芯片上只包含一个神经元,具有多个输入端且其互连强度可以自适应的改变。要构造具有多个神经元的网络,只需将许多这种芯片在插件板上排列并互连起来就可以了。将许多这种插件板构建在一起便可满足神经网络在商业和军事上的许多应用目的。1982年美国的物理学家Hopfield发表论文,提出神经网络的一种数学模型,即Hopfield神经网络模型,并研究了它的动力学性质。两年以后,他设计出了电子线路模拟这种网络的性质,认为这种网络可以解决数学上著名的TSP问题(TravelingSalesmanProblem)。次年,美国加州理工学院和贝尔实验室合作研制成256个神经元佐四分之一平方英寸芯片上,由2.5'10^4个晶体管和1.0"10^5个电阻集成)和64个可编程神经元。神经网络实现的另一种方法是在传统计算机上通过编写支持软件来模拟神经网络计算。这种软件模拟神经计算机很有代表性的是:1983年RobertHechtNielsen和ToddGutschow在TRW的AI中心所推出的MarkI及改进MarkII;1986年Zipser和Rabin所推出的P3系统:1987年Rochester大学推出的RCS;1988年Maryland大学的MIRRORS系统;国防科技大学于1990年推出的性能可与上述系统媲美的GKD.NNSS软件模拟神经计算机。2
分享到:
收藏