[发明专利]一种适用于多种卷积模式的FIR滤波器实现在审
申请号: | 201711101343.7 | 申请日: | 2017-11-06 |
公开(公告)号: | CN107862381A | 公开(公告)日: | 2018-03-30 |
发明(设计)人: | 王中风;袁炅;林军 | 申请(专利权)人: | 南京大学 |
主分类号: | G06N3/063 | 分类号: | G06N3/063;H03H17/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 210023 江苏省南京市栖*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 适用于 多种 卷积 模式 fir 滤波器 实现 | ||
技术领域
本发明涉及计算机及电子科学领域,特别涉及深度学习领域卷积神经网络的硬件实现,一种兼容步伐为1卷积计算与步伐为2卷积运算的通用架构及硬件实现。
背景技术
卷积神经网络(CNN)由于其在图像,音频等领域卓越的表现,如今已成为当前最为流行,且应用最广泛的深度学习算法之一。随着近年来卷积神经网络的飞速发展,大卷积核在模型中的应用已经越来越少,目前各个模型中运用最广泛的是3*3与5*5的卷积运算,并且步伐为2的卷积运算也被越来越多的模型运用到。而针对步伐为2的卷积运算,却一直没有一个很好的硬件实现优化方案。传统的步伐为1的卷积运算可以通过快速FIR算法以提高并行度并减少乘法器资源。
一个N抽头的FIR滤波器在时域的多项式表示为:
或者在z域中可以表示为
若将长度为N的FIR滤波器系数序列{h(n)}作为N维离散卷积的系数,则该FIR滤波器可以实现一个N维的卷积运算。通过N个该滤波器的组合,可以实现卷积神经网络中N*N的卷积运算。而快速FIR算法可以实现高并行度,以及通过增加加法器而减少乘法器的方法来实现低复杂度。但是该方法对于步长为2的卷积运算并不合适,通过该方法进行计算并选择性的输出来实现步长为2的卷积会带来硬件资源的严重浪费,每个周期内都有约50%的硬件资源对计算结果是无影响的。所以一种既能够实现传统步长为1的卷积运算又能实现步长为2的卷积运算,且具有低复杂度、高并行度、高硬件资源利用率的通用硬件架构将成为一种需求。
发明内容
针对上述问题,本发明提出了一种在快速FIR算法框架上既可兼容步长为1又可兼容步长为2的卷积计算架构及其硬件实现。本发明在一种硬件架构上实现了三种计算模式,分别为6抽头6并行卷积计算,三个独立的3抽头3并行卷积运算,以及2个独立的步长为2的3抽头3并行卷积计算。本发明具备高通用性,通过对该硬件架构的不同配置,可以实现大部分当前主流的卷积运算。具体发明内容如下:
一种可适用于多种卷积模式的FIR滤波器,其硬件架构包括:
1)数据输入选择单元,针对不同的卷积模式,将输入数据进行重新选择排列输入至相应的卷积计算模块。
2)卷积计算单元,基本组成单元是3并行的3抽头快速FIR滤波器,并插入了数据选择器控制数据流来针对不同的卷积运算。
3)卷积后计算单元,对卷积计算单元的的输出进行处理计算从而实现对卷积计算单元内多个独立组成单元的级联,形成一个多并行多抽头的快速FIR滤波器。
4)数据输出选择单元,针对不同的卷积模式,选择与其对应的计算结果作为模块输出。
本发明的第二种计算模式为三个独立的3抽头3并行快速FIR算法硬件结构,其中3抽头3并行快速FIR硬件结构是最基本的组成模块,通过公式推导可得每一个输出Y与输入X之间的关系:
Y0=H0X0-z-3H2X2+z-3[(H1+H2)(X1+X2)-H1X1]
Y1=[(H0+H1)(X0+X1)-H1X1]-[H0X0-z-3H2X2]
Y2=[H0+H1+H2)(X0+X1+X2)]-[(H0+H1)(X0+X1)-H1X1]-[(H1+H2)(X1+X2)-H1X1]
而对于步长为2的3抽头3并行卷积运算,可以推导出每一个输出Y与输入X之间的关系为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711101343.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:人工神经网络运算电路
- 下一篇:人流量统计方法及装置