卷积神经网络处理器的设计与实现

来源 :西安理工大学 | 被引量 : 0次 | 上传用户:zyu03
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
卷积神经网络(Convolutional NeuralNetwork, CNN)是一种先进的深度学习架构,被广泛地应用于图像识别、语音识别、自然语言识别等各个领域。卷积神经网络具有数据密集和计算密集的特点,传统的CPU平台无法充分挖掘CNN的并行性,运算耗时长,且实现代价较高。而专用CNN芯片具有速度和成本上的优势,但可配置性差,不能灵活地适应CNN不同层特征图的数量变化。通过分析CNN算法特点及问题,在传统通用ZION处理器的基础上,通过设计专用指令并改进架构,设计了一种可以兼顾CNN并行运算能力及灵活性的新型的卷积神经网络处理器。主要研究内容如下:1.设计专用指令。首先,对CNN算法进行操作类型统计和分析,发现卷积运算,下采样,激活函数等操作类型出现频率较高。针对此特点,设计了相应的运算功能指令,用一条功能指令完成原本需要多条指令实现的运算过程。其次,设计向量访存指令,实现一次读写多条数据,以减少访存指令数量,提高访存效率。最后,基于RISC-V32指令集及其扩展指令的规则,完成CNN专用指令系统的设计。2.处理器架构设计。在本研究组设计的通用七级流水结构ZION处理器的基础上,设计了支持CNN专用指令的流水功能部件。针对卷积运算中同一卷积模板在输入特征图不同位置做卷积时的数据复用特点,设计复用结构,从而减少特征图数据读取次数,降低访存需求。此外,为减小访存延迟对并行运算的影响,采用双Buffer模式分时缓存不同特征图的数据,减少运算单元空置时间,提高并行效率。在指令和架构设计的基础上,采用Verilog HDL实现了专用指令的流水功能部件设计,完成了一个七级流水结构的卷积神经网络处理器的整体系统设计,并通过功能仿真。。该CNN处理器不仅能实现通用算法,还对CNN算法有显著加速效果。针对CNN算法,采用MNIST手写数字字符库作为样本集,对设计的卷积神经网络处理器进行了测试。与通用ZION处理器相比,处理速度提升6.955倍,速度面积比提升3.398倍。
其他文献
脂滴作为细胞内储存中性脂的主要部位,普遍存在于各类物种的各种细胞中。脂滴以中性脂肪为核心,表面覆盖单层磷脂结构,并镶嵌多种蛋白质。近年来的蛋白组学研究表明,脂滴相关
回 回 产卜爹仇贱回——回 日E回。”。回祖 一回“。回干 肉果幻中 N_。NH lP7-ewwe--一”$ MN。W;- __._——————》 砧叫]们羽 制作:陈恬’#陈川个美食 Back to yield