专利名称:一种2-d卷积器的制作方法
技术领域:
本发明属于超大规模集成电路(VLSI,Very Large Scale Integrated Circuit) 结构设计领域,具体涉及到一种用于数字图像信号处理的2-D卷积器的VLSI结构。
背景技术:
2-D卷积计算在图像处理领域有着广泛的应用,例如空间滤波,图像增强,模板匹配等。但由于卷积计算所需要的乘-加运算量特别大,当处理较大的图像或者卷积模板较大时,采用常用的商用DSP器件很难达到实时性能。因此,有必要研究出高效的2-D卷积器 VLSI结构来满足实时图像处理系统中对速度和成本的要求。2-D图像卷积计算如公式①所示,I为M行N列的图像,T为R行S列的卷积模板, 0(x,y)为输出图像。每个输出图像像素为卷积模板和图像中对应RXS子块的点乘累加和。
i=R J=S=垵 + 卜 + 1),其中 、n/f D n c,、①可以看出,2-D卷积计算的数据流非常规整,且具有行、列方向上的2-D数据复用, 因此,卷积计算很适合于VLSI硬件实现。公式①可以分解为如下②,③两式
权利要求
1.一种2-D卷积器,卷积模板系数以光栅扫描格式输入,图像数据以行主导或者列主导Zigzag扫描格式输入;其特征在于该卷积器包括中心控制单元(1),图像缓存单元 O),卷积计算单元(3),中间结果暂存单元G),输入接口单元( 和输出缓冲单元(6);输入接口单元( 接收外部输入的卷积模板系数和图像数据,在中心控制单元(1)的控制下将卷积模板系数输出到卷积计算单元(3),将图像数据输出到图像缓存单元O);图像缓存单元( 从输入接口单元( 中读取图像数据,串行移入并行输出,将转化后的并行图像数据输出到卷积计算单元(3);卷积计算单元C3)在卷积计算开始前,预先接收由输入接口单元( 输出的卷积模板系数并保存;然后接收图像缓存单元(2)输出的并行图像数据,并进行卷积计算,计算的中间结果写入到中间结果暂存单元中,并将最终的卷积计算结果写入到输出缓冲单元 (6)中;输出缓冲单元(6)在中心控制单元(1)给出的输出有效使能信号的控制下寄存卷积计算单元C3)输入的最终卷积计算结果,并对外部接口输出数据;中间结果暂存单元(4)用于保存卷积计算单元(3)计算的中间结果,中间结果暂存单元(4)的读、写控制信号以及读、写地址均由中心控制单元(1)产生,写入的数据来自于卷积计算单元(3),读出的数据输出到卷积计算单元(3);中心控制单元(1)将外部输入的卷积模板系数和图像数据写入输入接口单元(5),从输入接口单元( 中读出卷积模板系数和图像数据分别写入到卷积计算单元C3)和图像缓存单元O)中,将图像缓存单元( 输出的并行图像数据输入到卷积计算单元(3)中进行卷积计算,为中间结果暂存单元(4)产生存储器读写地址以及控制信号,并结合卷积计算单元(3)的计算状态为输出缓冲单元(6)产生输出有效使能信号,实时控制各个单元的状态和数据调度。
2.根据权利要求1所述的2-D卷积器,其特征在于输入接口单元( 包括第一输入 FIFO (51)和第二输入 FIFO (52);第一输入FIF0(51)和第二输入FIF0(5》的输入均来自于外部输入接口,第一输入 FIFO(51)首先接收外部预先输入的卷积模板系数,并将这些数据输出至卷积计算单元 (3);此后,第一输入FIF0(51)和第二输入FIF0(5》交替接收外部输入的图像数据,并输出至图像缓存单元O)。
3.根据权利要求1所述的2-D卷积器,其特征在于图像缓存单元( 包括第一S列寄存器组(21),第二 S列寄存器组0 以及第一多路选择器组,S为卷积模板的列数;第一 S列寄存器组和第二 S列寄存器组0 均包含S个寄存器,每一个寄存器用于保存一个图像数据,第一多路选择器组包含S个二输入多路选择器;第二 S列寄存器组0 从输入接口单元(5)中读取图像数据,串行移入第二 S列寄存器组0 的S个移位寄存器中,各寄存器的输出作为第一多路选择器组各多路选择器的一路输入;第一多路选择器组各多路选择器的另一路输入来自于输入接口单元(5)的一路输出以及第一 S列寄存器组前S-I个寄存器的输出,各多路选择器的输出则作为第一 S列寄存器组各寄存器的输入;第一 S列寄存器组各寄存器输出的S个并行图像数据输出到卷积计算单元(3)进行卷积计算。
4.根据权利要求1所述的2-D卷积器,其特征在于卷积计算单元( 包括第一PE计算单元阵列(31)和第一加法器树组(32);第一 PE计算单元阵列(31)包含R行一维PE单元阵列,每行一维PE单元阵列由S列首尾相接的PE单元组成,其中R,S分别为卷积模板的行数和列数;每个PE单元包含用于保存一个从输入接口单元( 读出的卷积模板系数的第一系数寄存器(311);每个PE单元还包含第一乘法器(312),用于保存在第一系数寄存器(311)的卷积模板系数与输入PE单元的图像数据进行乘法计算;每列R个PE单元其中一个输入端口接收相同的图像数据,来自于图像缓存单元(2)输出的S个并行图像数据的其中一个数据;每行第一列PE单元的另一个输入端口则均接收输入接口单元(5)的输出,每行第二至S列PE单元的另一个输入端口则连接同行前一列PE 单元的输出;卷积器开始工作后,第一 PE计算单元阵列(31)预先接收并保存来自输入接口单元 (5)输出的卷积模板系数,然后接收图像缓存单元( 输出的S个并行图像数据进行卷积计算;第一加法器树组(3 由R个加法器树组成,每个加法器树的输入来自于同一行S列PE 单元的输出以及中间结果暂存单元的其中一个输出,计算结果写入到中间结果暂存单元⑷和输出缓冲单元(6)。
5.根据权利要求1所述的2-D卷积器,其特征在于中间结果暂存单元(4)包含R-I条深度均为W的双端口 SRAM,各SRAM的输入来自于卷积计算单元( ,各SRAM的输出端口连接到卷积计算单元(3),R和S分别为卷积模板的行数和列数,W的数值大于等于S但小于等于图像数据的列数N。
6.根据权利要求1所述的2-D卷积器,其特征在于输出缓冲单元(6)由第一寄存器 (61)组成,用于寄存卷积计算结果,输入来自于卷积计算单元(3),输出至片外。
全文摘要
2-D卷积计算在图像处理领域中有着广泛的应用,本发明公开了一种2-D卷积器,通过将2-D卷积计算分解为多1-D卷积计算窗口并行计算以及采用图像数据以行或列主导Zigzag扫描格式输入的策略,减少了片上存储器的容量,降低了片上资源开销;并且2-D卷积器能接受行或列主导Zigzag扫描格式这两种不同图像数据输入格式的特点,使得本2-D卷积器适用于不同的应用系统;通过调整中间结果暂存单元各双端口SRAM的深度W,在片上存储器容量和外部带宽之间做出较好的折中,带来系统设计的灵活性。与现有的2-D卷积器相比,本发明占用的硬件资源少,吞吐率可以满足大多数图像处理系统的实时性要求,可用于实现低成本嵌入式系统中2-D卷积计算。本发明属于超大规模集成电路结构设计领域。
文档编号G06G7/19GK102208005SQ201110142679
公开日2011年10月5日 申请日期2011年5月30日 优先权日2011年5月30日
发明者廖定彬, 张静, 桑红石, 梁巢兵, 胡孔阳, 袁雅婧, 赵华龙, 陈鹏, 高伟 申请人:华中科技大学