论文部分内容阅读
人工神经网络是理论化人脑神经网络的数学模型,是基于大脑神经网络结构和功能而建立的一种信息处理系统。它实际上是一种由大量神经元相互连接而成的复杂网络。如今,人工神经网络已经在信号处理、医疗、控制系统、商业、模式识别、语音识别等多个领域得到了广泛的应用。通常人工神经网络都是采用软件编程的方法来实现,但是在很多情况下必须要求人工神经网络能够进行实时运算,这是软件编程实现方法所不能满足的。本文设计了一种FPGA硬件人工神经网络系统,创新性的提出了一种基于传输触发体系架构的可编程人工神经网络实现方法,能够很好的体现神经网络固有的并行处理特性,提高人工神经网络的处理速度。 处理机的实现的基本思想是将神经元看作TTA结构中的功能单元,通过给神经元运算功能单元传输不同的数据达到神经网络运算的目的。这种实现方法会让处理器结构简单、并行度高、可扩展性强、指令集少。该种神经网络处理机是可配置的,理论上可以实现任意层数,每层任意个数神经元的前馈神经网络结构。处理机必须先离线学习好神经网络的一些配置参数,然后将这些参数导入到处理机后,整个系统才能工作。对于学习算法该处理机采用有监督和无监督学习算法相结合。 文章首先介绍了人工神经网络的发展以及背景;然后分析了人工神经网络的工作原理,其中包括神经元模型、网络结构以及学习算法;其次在 IBM神经元的基础上设计了单个神经元的FPGA电路。紧接着从指令集、交换网络以及功能单元三个方面具体阐述了可编程人工神经网络处理机的硬件设计原理和思路,再在该处理机上移植了手写体数字识别应用并测试了其性能。最后对全文的工作进行了总结,提出了不足之处以及后续任务安排。