盧成業(yè),高志遠(yuǎn),徐江濤(天津大學(xué)電子信息工程學(xué)院,天津 300072)
?
用于特征提取的小尺寸事件型卷積處理器*
盧成業(yè),高志遠(yuǎn)*,徐江濤
(天津大學(xué)電子信息工程學(xué)院,天津 300072)
設(shè)計(jì)了一款用于動(dòng)態(tài)視覺傳感器數(shù)據(jù)特征提取的小尺寸事件型卷積處理器,該卷積處理器包含了32×32的累加陣列、用于存儲(chǔ)卷積核的RAM陣列、左/右移位模塊、控制模塊和異步的事件讀出模塊。為了減小面積,設(shè)計(jì)了2 bit的32×32的RAM陣列來存儲(chǔ)所需的卷積核;在累加陣列中,采用7 bit的二進(jìn)制計(jì)數(shù)器代替?zhèn)鹘y(tǒng)的加法器來實(shí)現(xiàn)卷積核的累加操作,在0.18 μm CMOS工藝下,每個(gè)卷積單元的面積為37.5 μm×40 μm,對(duì)于每個(gè)事件輸入輸出的最小延時(shí)為17 ns,能夠處理的最大事件率為12.5 Meps。基于該卷積處理器搭建了一個(gè)識(shí)別系統(tǒng),利用16個(gè)卷積處理器來提取特征,利用脈沖神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了分類識(shí)別。實(shí)驗(yàn)結(jié)果表明,使用2 bit卷積核的小尺寸卷積處理器能夠準(zhǔn)確完成對(duì)輸入事件的卷積操作,而且基于該卷積處理器所搭建的識(shí)別系統(tǒng)對(duì)MNIST數(shù)據(jù)庫的識(shí)別效率可以達(dá)到90.57%。
動(dòng)態(tài)視覺傳感器,地址事件表示,小尺寸芯片,卷積芯片,MNIST,脈沖神經(jīng)網(wǎng)絡(luò)
在傳統(tǒng)的人工視覺處理系統(tǒng)中,卷積運(yùn)算被廣泛用于邊緣檢測、特征提取以及目標(biāo)識(shí)別等領(lǐng)域。近些年,隨著人工神經(jīng)計(jì)算的發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)成為當(dāng)前圖像領(lǐng)域的研究熱點(diǎn)之一,得到了廣泛的應(yīng)用[1-2]。由于卷積運(yùn)算的計(jì)算量大,運(yùn)算時(shí)間長,硬件開銷大,因此傳統(tǒng)的卷積運(yùn)算并不能很好滿足對(duì)圖像實(shí)時(shí)處理的要求[3]。
1991年,Caltech實(shí)驗(yàn)室首次提出地址-事件表達(dá)(AER)方式[4],AER 是一種仿生的圖像采集、處理模式,現(xiàn)在被廣泛應(yīng)用于圖像傳感器領(lǐng)域[5-6]。AER圖像傳感器是一種特殊的圖像傳感器,與傳統(tǒng)的幀掃描式圖像獲取機(jī)制不同。在AER圖像傳感器中,各個(gè)像素之間獨(dú)立工作,當(dāng)某個(gè)像素單元檢測到光強(qiáng)變化超過設(shè)定閾值后,就會(huì)觸發(fā)事件響應(yīng),分別用ON事件和OFF事件來代表光強(qiáng)的增強(qiáng)和減弱。如果有多個(gè)像素單元同時(shí)觸發(fā)事件響應(yīng),就通過仲裁模塊依次輸出事件脈沖。AER圖像傳感器的輸出只包含了事件發(fā)生的地址(x,y)和屬性(ON/OFF),從而具有低冗余、低延時(shí)、高實(shí)時(shí)性等優(yōu)點(diǎn)[7]。因此,研究與AER圖像傳感器相適應(yīng)的處理模塊就可以對(duì)輸出事件進(jìn)行實(shí)時(shí)處理,擺脫“幀”的束縛,可以實(shí)現(xiàn)更高的處理速度。
1997年,瑞士的 Venier 團(tuán)隊(duì)首次硬件實(shí)現(xiàn)了基于事件的卷積處理[8]。2006年塞維利亞大學(xué)的Rafael Serrano-Gotarredona等人提出了基于AER的數(shù)模混合神經(jīng)形態(tài)卷積芯片[9]。2011年,Luis Camuas-Mesa等人研究設(shè)計(jì)出了32×32像素陣列的全數(shù)字的卷積芯片[10],設(shè)計(jì)了6bit的RAM來存儲(chǔ)卷積核,18 bit的累加器,該芯片中單個(gè)像素單元的面積為95.6 μm×101.3 μm。2012年,塞維利亞大學(xué)的Luis Camuas-Mesa小組設(shè)計(jì)出了64像素×64像素陣列的事件卷積芯片,使用純數(shù)字電路設(shè)計(jì),且其卷積核的形狀和尺寸可以改變[11]。在該芯片的設(shè)計(jì)中,采用了4 bit的RAM和6 bit的累加器,單個(gè)像素單元的面積為58 μm×53.8 μm。在卷積芯片的設(shè)計(jì)中,用來存儲(chǔ)卷積核的RAM和實(shí)現(xiàn)累加運(yùn)算的累加器占據(jù)了芯片的大部分面積。因此,在保證卷積效果的同時(shí)使用盡量少的卷積核RAM可以有效縮減事件型卷積處理器的芯片面積。
卷積芯片的一個(gè)重要作用是用來提取特征,提取的特征經(jīng)過一定的學(xué)習(xí)算法可以實(shí)現(xiàn)目標(biāo)的分類識(shí)別等。脈沖神經(jīng)網(wǎng)絡(luò)作為第3代神經(jīng)元模型,相比傳統(tǒng)的神經(jīng)元模型具有更高的計(jì)算效率。脈沖神經(jīng)網(wǎng)絡(luò)應(yīng)用精確定時(shí)的脈沖序列對(duì)神經(jīng)信息進(jìn)行編碼和處理,非常適用于AER事件的處理識(shí)別。此外,脈沖神經(jīng)網(wǎng)絡(luò)也易于硬件實(shí)現(xiàn),已經(jīng)報(bào)道了很多脈沖神經(jīng)網(wǎng)絡(luò)的硬件實(shí)現(xiàn)平臺(tái),比如IFAT(Integrate and Fire Array Transceiver)[12]和Hierarchical AER-IFAT[13]。本文設(shè)計(jì)了一個(gè)32×32的事件卷積處理器,設(shè)計(jì)了2 bit的RAM來存儲(chǔ)卷積核,7 bit的計(jì)數(shù)器來實(shí)現(xiàn)累加功能,并對(duì)該結(jié)構(gòu)的卷積效果進(jìn)行了仿真驗(yàn)證。此外,為驗(yàn)證該卷積處理器在特征提取方面的特性,本文利用脈沖神經(jīng)網(wǎng)絡(luò)搭建了一個(gè)識(shí)別系統(tǒng),對(duì)經(jīng)過卷積后的特征進(jìn)行了分類識(shí)別。經(jīng)過仿真驗(yàn)證,在該識(shí)別系統(tǒng)中,本文設(shè)計(jì)的卷積處理器可以以較低的存儲(chǔ)器深度實(shí)現(xiàn)相類似的識(shí)別效率,在滿足提取特征的要求的前提下,縮減了芯片面積。
在圖像處理中,卷積計(jì)算是一種廣泛應(yīng)用的計(jì)算方式。基于事件的卷積計(jì)算是通過在卷積陣列中實(shí)現(xiàn)卷積核權(quán)值的不斷累加實(shí)現(xiàn)的。AER圖像傳感器產(chǎn)生的每個(gè)事件都包含了事件的地址信息和屬性,當(dāng)對(duì)該事件進(jìn)行卷積操作時(shí),就以該事件的地址為中心,將卷積核累加到卷積陣列中。
圖1顯示了傳統(tǒng)的卷積算法與基于事件的卷積算法的不同,圖1(a)是傳統(tǒng)的基于幀的卷積計(jì)算過程,圖中輸入圖像是5×5的矩陣,卷積核是一個(gè)3×3的矩陣,卷積結(jié)果如圖所示,計(jì)算過程包含了乘法和加法運(yùn)算,計(jì)算過程較為復(fù)雜。圖1(b)顯示了基于事件的卷積過程,當(dāng)(2,2)地址處的事件到來時(shí),就以(2,2)地址為中心將卷積核累加到卷積陣列中,(3,3)和(4,4)地址的事件到來時(shí)也完成相應(yīng)的累加過程。基于事件的卷積過程只包含了累加運(yùn)算,相比傳統(tǒng)的基于幀的卷積算法,計(jì)算更為簡單,更加易于硬件實(shí)現(xiàn)。

圖1 卷積算法對(duì)比

圖2 卷積處理器結(jié)構(gòu)
基于事件卷積算法的基本原理,本文設(shè)計(jì)的事件卷積處理器的結(jié)構(gòu)如圖2所示,處理器包含了一個(gè)32×32的卷積像素陣列、行列仲裁、一塊用于存儲(chǔ)卷積核的RAM陣列、控制模塊、左/右移位模塊和異步的事件讀出模塊。初始狀態(tài)下,卷積像素陣列處于復(fù)位狀態(tài),卷積核存儲(chǔ)在RAM陣列中,當(dāng)卷積芯片接收到輸入事件時(shí),控制模塊讀取RAM中存儲(chǔ)的卷積核,同時(shí)控制模塊也會(huì)根據(jù)輸入事件的地址信息,產(chǎn)生像素陣列的行選信號(hào),通過判斷卷積核左移或者右移的位數(shù),卷積核被移位模塊移動(dòng)到對(duì)應(yīng)的數(shù)據(jù)總線上,在時(shí)鐘驅(qū)動(dòng)下在卷積陣列中逐行完成卷積核的累加。由于卷積核的尺度的不同,完成累加操作需要的時(shí)鐘周期也不相同,在本文的設(shè)計(jì)中完成一個(gè)輸入事件的卷積操作,共需要2+Nk個(gè)時(shí)鐘周期,Nk為卷積核的行數(shù)。當(dāng)卷積陣列中某像素點(diǎn)累加的值超過預(yù)先設(shè)定的閾值時(shí),該像素點(diǎn)就會(huì)發(fā)出輸出請(qǐng)求,經(jīng)過仲裁模塊的運(yùn)算和選通,最后通過異步事件讀出模塊產(chǎn)生事件輸出,同時(shí)卷積陣列中該位置被置零,等待重新開始新的累加過程。

圖3 像素單元結(jié)構(gòu)和AER_out電路結(jié)構(gòu)
2.1 像素陣列設(shè)計(jì)
為了減小芯片的面積,本文設(shè)計(jì)中采用了2 bit的RAM來存儲(chǔ)卷積核,設(shè)計(jì)了7 bit計(jì)數(shù)器來代替累加器實(shí)現(xiàn)累加操作。像素單元的結(jié)構(gòu)如圖3(a)所示,共包含了開關(guān)模塊(witch block)計(jì)數(shù)器(OUNTER)閾值比較模塊和AER輸出接口電路。
控制模塊根據(jù)輸入事件的地址信息,產(chǎn)生相應(yīng)的行選信號(hào)Enable,卷積核的權(quán)值才能進(jìn)入被選通行的像素中,通過計(jì)數(shù)器完成累加功能。圖中閾值比較模塊實(shí)現(xiàn)閾值的比較,采用兩個(gè)異或門(XOR),通過最高位與選取數(shù)據(jù)位的異或操作,來判定達(dá)到正閾值或負(fù)閾值,通過SEL信號(hào)端和多路選擇器(MUX)來選擇輸出。累加單元達(dá)到選定的閾值時(shí),通過AER輸出接口電路向外圍的仲裁電路發(fā)出請(qǐng)求,在收到確認(rèn)信息后,輸出像素信息并將此像素復(fù)位。由于本文的設(shè)計(jì)中采用2 bit的卷積核,其中最高位為符號(hào)位,因此設(shè)計(jì)二進(jìn)制的可逆計(jì)數(shù)器就能夠滿足功能的需求,AER輸出接口由一個(gè)D鎖存器(D_latch)和異步接口(AER_out)構(gòu)成。圖3(b)顯示了AER_out模塊的電路結(jié)構(gòu),該模塊采用了文獻(xiàn)[11]的類似結(jié)構(gòu),當(dāng)閾值比較模塊有脈沖產(chǎn)生時(shí),會(huì)觸發(fā)AER_out模塊產(chǎn)生行輸出請(qǐng)求,此時(shí)Rqst被拉至高電平,外圍電路接受請(qǐng)求后會(huì)產(chǎn)生響應(yīng)信號(hào)Ack(低電平),此時(shí)根據(jù)卷積核的符號(hào)位,將Pulse-或者Pulse+拉至低電平,產(chǎn)生列請(qǐng)求信號(hào)。

圖4 RAM存儲(chǔ)單元結(jié)構(gòu)
2.2 卷積核RAM和移位模塊設(shè)計(jì)
卷積核被預(yù)先存儲(chǔ)起來,當(dāng)有事件到來時(shí),通過控制模塊來選擇讀取相應(yīng)的卷積核到總線上并累加到像素陣列中,因此通過設(shè)計(jì)靜態(tài)RAM即可滿足功能要求。在事件卷積處理器設(shè)計(jì)中,SRAM 的寫入速度并不重要,但對(duì)于高速產(chǎn)生的事件,SRAM讀取的速度就顯得比較重要,因此需要設(shè)計(jì)具有較高讀取速度的SRAM[14]。本文設(shè)計(jì)了2 bit的RAM來存儲(chǔ)卷積核,單個(gè)存儲(chǔ)單元的結(jié)構(gòu)如圖4所示,該結(jié)構(gòu)中包含了兩個(gè)反向器,一個(gè)“弱”反向器和一個(gè)“強(qiáng)”反向器,構(gòu)成了鎖存器結(jié)構(gòu)。本文利用如圖4所示的存儲(chǔ)單元,搭建了一個(gè)32×32的存儲(chǔ)陣列,該存儲(chǔ)陣列能夠存儲(chǔ)多種卷積核,通過控制模塊的控制信號(hào),可以選擇讀取不同的卷積核。
由于卷積核在RAM中存儲(chǔ)的位置與輸入事件的地址會(huì)有一定的偏移,因此需要設(shè)計(jì)移位模塊來實(shí)現(xiàn)移位功能。移位模塊可以根據(jù)輸入事件的地址實(shí)現(xiàn)卷積核的左移或者右移,將卷積核移動(dòng)到相應(yīng)的坐標(biāo)處。移位模塊的結(jié)構(gòu)如圖5所示,該結(jié)構(gòu)可以保證選定的卷積核在一個(gè)時(shí)鐘周期即可完成多條總線的移動(dòng),實(shí)現(xiàn)卷積處理的高速進(jìn)行。在該移位模塊中,每列卷積核RAM的總線在豎直、向左或向右45°方向上進(jìn)行延伸,互連矩陣中每個(gè)總線交叉結(jié)點(diǎn)都包含了兩個(gè)三態(tài)門來控制信號(hào)通路的流通方向。兩個(gè)三態(tài)門分別連接兩個(gè)水平方向輸入的移位信號(hào),分別控制左移和右移。

圖5 移位選擇模塊

圖6 仲裁單元結(jié)構(gòu)框圖和仲裁樹結(jié)構(gòu)
2.3 裁單元設(shè)計(jì)
本設(shè)計(jì)中的仲裁模塊采用優(yōu)先級(jí)可切換的“仲裁樹”結(jié)構(gòu)[15]。每個(gè)仲裁單元由四部分構(gòu)成,如圖6(a)所示,優(yōu)先選擇單元,仲裁單元,響應(yīng)單元及請(qǐng)求傳遞單元。在樹狀結(jié)構(gòu)中,每經(jīng)過一層,請(qǐng)求信號(hào)就會(huì)被屏蔽掉一半,然后經(jīng)過層與層之間的傳遞,最后交給頂層仲裁單元進(jìn)行匯總。頂層單元匯總請(qǐng)求信息,不會(huì)再產(chǎn)生請(qǐng)求信號(hào),產(chǎn)生應(yīng)答信號(hào),向下層逐層反饋,最終到達(dá)請(qǐng)求信號(hào)發(fā)生的初始節(jié)點(diǎn)。
由于本文設(shè)計(jì)了一個(gè)32×32的卷積陣列,因此設(shè)計(jì)32輸入的仲裁樹結(jié)構(gòu),就能夠滿足仲裁的需求,圖6(b)顯示了該仲裁樹結(jié)構(gòu)。
AER卷積處理器的一個(gè)重要的應(yīng)用是實(shí)現(xiàn)特征提取,構(gòu)建目標(biāo)識(shí)別系統(tǒng)。本文利用上述卷積處理器構(gòu)建了一個(gè)基于事件的識(shí)別系統(tǒng)。該識(shí)別系統(tǒng)由兩部分構(gòu)成,特征提取部分和識(shí)別部分,如圖7所示。

圖7 識(shí)別系統(tǒng)結(jié)構(gòu)圖
特征提取層主要實(shí)現(xiàn)特征的提取,數(shù)據(jù)流可以概括為:輸入事件→S1層→C1層。
S1層為卷積層,對(duì)輸入事件進(jìn)行卷積操作,使用本文所設(shè)計(jì)的卷積處理器模型。S1層采用Gabor函數(shù)計(jì)算的卷積核來提取特征,計(jì)算公式如(1)所示:
(1)式中:μ和υ分別代表像素中水平方向和垂直方向的坐標(biāo),λ為波長,θ參數(shù)指定了Gabor函數(shù)的方向,它的取值為0到360°,γ為長寬比空間縱橫比,決定了Gabor函數(shù)形狀,σ為有效的帶寬。在特征提取層中共包含16個(gè)卷積模塊,分別選取了3×3,5×5,7×7和9×9共4種尺度的卷積核,每種尺度下又分別選取了4種角度0°,45°,90°和135°。
C1層主要完成MAX操作,在傳統(tǒng)的圖像處理中,MAX算法常用來實(shí)現(xiàn)子采樣的過程,在事件卷積過程中采用MAX操作也可以實(shí)現(xiàn)類似的“子采樣”過程。這種操作是一種非線性的過程,每個(gè)卷積陣列都被劃分成相鄰的不重疊的區(qū)域,在該區(qū)域只有最大值會(huì)被保留下來。MAX操作進(jìn)一步壓縮了數(shù)據(jù)量,將更加顯著的特征信息提取出來。
識(shí)別層主要包括了兩個(gè)模塊,TFS(Time-to-FirstSpike)轉(zhuǎn)換模塊和脈沖神經(jīng)網(wǎng)絡(luò)模塊SNN(SpikingNeuralnetworks)。TFS模塊可以將模擬量轉(zhuǎn)化為脈沖發(fā)放的時(shí)間,在本文TFS編碼策略中,刺激越強(qiáng)產(chǎn)生的脈沖越早,產(chǎn)生的脈沖較晚就表明刺激較弱。
脈沖神經(jīng)網(wǎng)絡(luò)模塊來實(shí)現(xiàn)分類識(shí)別,脈沖神經(jīng)網(wǎng)絡(luò)把時(shí)間信息的影響也考慮在內(nèi),以脈沖序列的方式對(duì)輸入數(shù)據(jù)進(jìn)行處理,特別適用于AER事件的處理。本文采用簡化的LIF神經(jīng)元模型確保每個(gè)輸出脈沖只能由興奮性輸入脈沖觸發(fā),而不會(huì)由亞閾值膜電勢(shì)觸發(fā)。當(dāng)一個(gè)脈沖輸入到達(dá)神經(jīng)元時(shí),該神經(jīng)元的膜電勢(shì)只能由上次更新后的時(shí)間和上次更新后的狀態(tài)決定,因此只需要更新收到脈沖的神經(jīng)元的電勢(shì)。神經(jīng)元可以組成多層的網(wǎng)絡(luò),當(dāng)一個(gè)神經(jīng)元收到前一層神經(jīng)元來的脈沖時(shí),該神經(jīng)元的更新方式如下所示[16]:

圖8 “189”樣本卷積結(jié)果對(duì)比
如果ti-tlastspike (2) 當(dāng)Vmi≥Vthresh時(shí)Vmi←0,tlastspike←ti產(chǎn)生新的脈沖輸出,同時(shí)該神經(jīng)元的膜電勢(shì)被復(fù)位到預(yù)設(shè)狀態(tài),式(2)中是ti第i個(gè)脈沖到達(dá)神經(jīng)元的時(shí)間,tlastspike是當(dāng)前神經(jīng)元產(chǎn)生上一個(gè)脈沖的時(shí)間,trefr是神經(jīng)元的不應(yīng)期,Vmi是第i個(gè)脈沖輸入后該神經(jīng)元的膜電勢(shì),Il是漏電流,Cm是膜電容,ωi是突觸權(quán)值,Vthresh是當(dāng)前神經(jīng)元的閾值電壓。Tempotron學(xué)習(xí)算法是一種脈沖神經(jīng)網(wǎng)絡(luò)監(jiān)督學(xué)習(xí)算法,該算法只需要調(diào)整較少的參數(shù),就可以達(dá)到理想的訓(xùn)練識(shí)別效果,具有高效性。在本文提出的識(shí)別系統(tǒng)中,采用Tempotron學(xué)習(xí)算法來訓(xùn)練權(quán)值,并參照文獻(xiàn)[17]來設(shè)置相關(guān)參數(shù)。 本文設(shè)計(jì)的事件卷積結(jié)構(gòu)中采用了32×32 2bit的RAM陣列來存儲(chǔ)卷積核,設(shè)計(jì)了7bit的計(jì)數(shù)器來實(shí)現(xiàn)累加,可以有效減小芯片的面積,在0.18μmCMOS工藝下每個(gè)像素單元的面積為37.5μm×40.0μm,卷積處理器于每個(gè)事件輸入輸出的最小的延時(shí)為 17ns,最大事件率為 12.5Meps。 為了分析其卷積效果,本文還對(duì)卷積效果進(jìn)行了仿真驗(yàn)證。為了模擬AER圖像傳感器產(chǎn)生的事件序列,本文采用了頻率編碼(Rate-Coding)的方式將灰度圖像轉(zhuǎn)成AER事件序列,然后將每個(gè)事件編碼成15bit的二進(jìn)制數(shù)據(jù),包括12bit的事件地址(x,y),2bit的卷積核選取標(biāo)志位,一共可以選取4種卷積核,還有1bit代表事件的屬性,“0”代表輸入為正事件(ON),“1”代表輸入為負(fù)事件(OFF)。 本文實(shí)驗(yàn)使用MNIST數(shù)據(jù)庫進(jìn)行驗(yàn)證。MNIST是一個(gè)手寫數(shù)字樣本集,該樣本集包含10組數(shù)字的灰度圖像,從數(shù)字0到9,每個(gè)圖像的分辨率為28×28,共70 000幅圖像。隨機(jī)選取了第189個(gè)樣本,采用頻率編碼方式,將其轉(zhuǎn)成事件序列,產(chǎn)生了117個(gè)事件,然后將產(chǎn)生的事件轉(zhuǎn)化成15bit的二進(jìn)制數(shù)據(jù),輸入到本文設(shè)計(jì)的卷積處理器中。圖8(a)顯示了第189個(gè)樣本的灰度圖像,卷積核A用來提取垂直特征信息,經(jīng)過卷積核A的卷積操作,圖8(b)為該樣本在Matlab上仿真的理想卷積結(jié)果,圖8(c)顯示了經(jīng)過本文設(shè)計(jì)的卷積處理器處理的仿真結(jié)果。通過實(shí)驗(yàn)結(jié)果對(duì)比可得,本文設(shè)計(jì)的卷積結(jié)構(gòu)對(duì)輸入事件能夠?qū)崿F(xiàn)比較理想的卷積結(jié)果,如圖8(c)所示很好的提取出了垂直特征。圖9(a)顯示了第200個(gè)樣本的灰度圖像,經(jīng)過卷積核B的卷積操作,卷積核B用來提取水平方向特征信息,圖9(b)和圖9(c)分別顯示了理想的卷積結(jié)果和本文的仿真結(jié)果。 圖9 “200”樣本卷積結(jié)果對(duì)比 最后,利用搭建的識(shí)別系統(tǒng),分析了利用2bit的卷積核來提取特征時(shí),系統(tǒng)的識(shí)別率。將原始樣本被劃分為訓(xùn)練樣本和測試樣本,將訓(xùn)練樣本輸入到該系統(tǒng)中,經(jīng)過卷積層16個(gè)卷積模塊的卷積操作,提取特征,利用Tempotron學(xué)習(xí)算法對(duì)脈沖神經(jīng)網(wǎng)絡(luò)的權(quán)值進(jìn)行更新,最后利用測試樣本,測試系統(tǒng)的識(shí)別準(zhǔn)確率。本文通過實(shí)驗(yàn)分析了為卷積模塊配置不同的卷積核精度時(shí),該系統(tǒng)的識(shí)別率的變化,實(shí)驗(yàn)結(jié)果如表1所示。 表1 別率和面積對(duì)比 根據(jù)表1中的實(shí)驗(yàn)結(jié)果,本文采用2 bit的卷積核精度實(shí)現(xiàn)了90.57%的識(shí)別率。對(duì)比文獻(xiàn)[10-11]中設(shè)計(jì)的卷積核精度,對(duì)于該識(shí)別系統(tǒng),采用本文2 bit的卷積核的卷積處理器不僅能夠獲得與高位數(shù)相似的識(shí)別效果,而且卷積單元的面積遠(yuǎn)小于高位數(shù)結(jié)構(gòu)。 本文根據(jù)事件型卷積處理器的工作特點(diǎn),搭建了一個(gè)用于特征提取的小尺寸事件型卷積處理器。在該卷積處理器中包含了一個(gè)32×32的卷積像素陣列和一塊2 bit的32×32卷積核RAM。本文提出的卷積處理器不僅使用低至2 bit的卷積核,還使用計(jì)數(shù)器替代了原有的加法器結(jié)構(gòu),芯片面積大幅縮減。經(jīng)過仿真驗(yàn)證,該卷積結(jié)構(gòu)可以根據(jù)輸入事件的地址,將卷積核準(zhǔn)確累加到卷積陣列中,實(shí)現(xiàn)特征提取。最后,本文搭建了一個(gè)識(shí)別系統(tǒng),在該識(shí)別系統(tǒng)中配置了16個(gè)卷積模塊來提取特征,使用脈沖神經(jīng)網(wǎng)絡(luò)來進(jìn)行識(shí)別,并利用該識(shí)別系統(tǒng)驗(yàn)證了本文工作與傳統(tǒng)卷積處理器使用的卷積核精度對(duì)該系統(tǒng)識(shí)別率的影響,實(shí)驗(yàn)結(jié)果表明本文提出的采用2 bit卷積核的小尺寸的卷積處理器可以有效完成特征提取。 [1] Lecun Y,Bottou L,Bengio Y. Gradient-Based Learning Applied to Document Recognition[J]. Proceedings of the IEEE,1998,86(11):2278-2324. [2] Garcia C,Delakis M. Convolutional Face Finder:A Neural Architecture for Fast and Robust Face Detection[J]. IEEE Tran Pattern Anal Mach Intell,2004,26(11):1408-1423. [4] Sivilotti M. Wiring Considerations in Analog VLSI Systems with Application to Field-Programmable Networks[D]. California Institute of Technology,Pasadena CA,1991. [5] Zamarreno R C,Linares B A,Serrano G T,et al. Multicasting Mesh AER:A Scalable Assembly Approach for Reconfigurable Neuromorphic Structured AER Systems[J]. IEEE Transactions on Biomedical Circuits and Systems,2013,7(1):82-102. [6] Zamarreno R C,Kulkarni R,Silvamartinez J,et al. A 1.5 ns OFF/ON Switching-Time Voltage-Mode lvds Driver/Receiver Pair for Asynchronous AER bit-Serial Chip Grid Links with up to 40 Times Event-Rate Dependent Power Savings[J]. IEEE Transactions on Biomedical Circuits and Systems,2013,7(5):722-731. [7] 閆石,徐江濤,高志遠(yuǎn). 基于地址-事件表示的高速二值連通域標(biāo)記方法[J]. 傳感技術(shù)學(xué)報(bào),2016,29(3):362-367. [8] Venier P,Mortara A,Arreguit X. An Integrated Cortical Layer for Orientation Enhancement[J]. IEEE Journal of Solid-State Circuits,1997(32):177-186. [9] Serrano-Gotarredona R,Serrano-Gotarredona T,Acosta-Jimenez A,et al. A Neuromorphic Cortical-Layer Microchip for Spike-Based Event Processing Vision Systems[J]. IEEE Trans Circuits SystI,Reg Papers,2006,53(12):2548-2566. [10] Camunas-Mesa L,Acosta-Jimenez A,Zamarrefio-Ramos C,et al. A 32×32 Pixel Convolution Processor Chip for Address Event Vision Sensors with 155 ns Event Latency and 20 Meps Throughput[J]. IEEE Trans Circuits Syst I,Reg Papers,2011,58(4):777-790. [11] Camunas-Mesa L,Zamarreno-Ramos C,,et al. An Event-Driven Multi-Kernel Convolution Processor Module for Event-Driven Vision Sensors[J]. IEEE Journal of Solid-State Circuits,2012,47(2):504-517. [12] Goldberg D H,Cauwenberghs G,Andreou A G. Probabilistic Synaptic Weighting in a Reconfigurable Network of VLSI Integrate-and-Fire Neurons[J]. Neural Netw,2001,14(6):781-793. [13] Park J,Yu T,Maier C. Live Demonstration:Hierarchical Address-Event Routing Architecture for Reconfigurable Large Scale Neuromorphic Systems[C]//IEEE International Symposium on Circuits and Systems,2011. [14] Serrano-Gotarredona R,Serrano-Gotarredona T,Acosta-Jimenez A,et al. On Real-Time AER 2-D Convolutions Hardware for Neuromorphic Spike-Based Cortical Processing[J]. IEEE Trans Neural Netw,2008,19(7):1196-1219. [15] Aung Myat Thu L,Do Anh T,Chen S. Adaptive Priority Toggle Asynchronous Tree Arbiter for AER-Based Image Sensor[C]//IEEE 19th International Conference on VLSI and System-on-Chip,2011:66-71. [16] Orchard G,Meyer C,Etienne-Cummings R,et al. HFirst:A Temporal Approach to Object Recognition[J]. IEEE Trans Pattern Anal Mach Intell,2015,37(10):2028-2040. [17] Zhao B,Ding R,Chen S. Feedforward Categorization on AER Motion Events Using Cortex-Like Features in a Spiking Neural Network[J]. IEEE Trans Neural Netw Learn Syst,2014,26(9):24-31. 盧成業(yè)(1989-),男,天津大學(xué)碩士研究生,主要從事視覺傳感器研究,tju_lcx@tju.edu.cn; 高志遠(yuǎn)(1987-),男,博士后,主要從事CMOS圖像傳感器、視覺傳感器研究,本篇論文通訊作者,gaozhiyuan@tju.edu.cn; 徐江濤(1979-),男,副教授,碩士生導(dǎo)師,主要從事 CMOS圖像傳感器和圖像處理芯片研究,在相關(guān)領(lǐng)域主持國家自然科學(xué)基金、教育部博士點(diǎn)基金等項(xiàng)目。 A small Size Event-Based Convolution Processor for Feature Extraction* LU Chengye,GAO Zhiyuan*,XU Jiangtao This paper presents a small size event-based convolution processor for feature extraction of the data generated by dynamic vision sensors(DVS). It consists of a 32 pixel×32 pixel array,a RAM array that stores the convolution kernel,a left/right shift block,a control block,and an asynchronous event readout block. In order to reduce the area of convolution chip,a kernel RAM of 32×32 2 bit word is implemented to store the kernels. In each pixel unit,a 7bit counter is used to accomplish the accumulation instead of a traditional accumulator for smaller pixel size. In the 0.18 μm CMOS technology,each convolution unit occupies 37.5 μm×40 μm. The minimum latency between input and output event flows can be nearly 17 ns. Input event throughput can reach 12.5 Meps. Furthermore,a categorization system is established based on this convolution module,which consists of 16 assembled convolution modules for feature extraction and a spiking neural networks(SNN)for recognition. The experimental results show that the proposed convolution processor can achieve ideal convolution results. With the recognition system,the experimental results of MNIST show that the convolution module configured with 2 bit kernel weights resolution can also complete the feature extraction which achieves a recognition rate of 90.57%. dynamic vision sensors,address event representation,small chip size,convolution chip;MNIST;spiking neural networks 項(xiàng)目來源:國家自然科學(xué)基金項(xiàng)目(61604107,61434004) 2016-10-17 修改日期:2016-11-20 TN47 A 1004-1699(2017)04-0535-07 C:7230 10.3969/j.issn.1004-1699.2017.04.0094 實(shí)驗(yàn)結(jié)果分析


5 總結(jié)



(School of Electronic and Information Engineering,Tianjin University,Tianjin 30072,China)