本發(fā)明屬于半導(dǎo)體集成電路及其制造技術(shù)領(lǐng)域,更具體地,涉及一種實現(xiàn)圖像卷積的編碼型閃存系統(tǒng)和方法。
背景技術(shù):
卷積神經(jīng)網(wǎng)絡(luò)是近些年發(fā)展起來的一種高效的識別方法。其基本結(jié)構(gòu)包含兩層,其中一層為特征提取層,主要是利用卷積將每個神經(jīng)元的輸入與前一層的局部接受域連接起來,并提取輸入圖像的局部特征。另外一層為特征映射層,負責(zé)將每個特征映射為一個平面,平面上所有神經(jīng)元的權(quán)值相等。這種局部權(quán)值共享的結(jié)構(gòu)能夠降低網(wǎng)絡(luò)的復(fù)雜性,因此卷積神經(jīng)網(wǎng)絡(luò)在語音識別和圖像處理中具有顯著的優(yōu)勢。在卷積神經(jīng)網(wǎng)絡(luò)的應(yīng)用過程中,卷積運算是其中的核心運算。卷積運算實際上是一種加權(quán)求和的過程,而基于新型存儲器(如阻變存儲器,相變存儲器等)的垂直交叉陣列結(jié)構(gòu)能夠并行計算卷積結(jié)果,因此被人們廣泛研究以便進行卷積運算。但是發(fā)明人發(fā)現(xiàn),這些新型存儲器如阻變存儲器中目前還存在操作過程中參數(shù)漲落過大等問題,在短時間內(nèi)還無法成為實際應(yīng)用。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供了一種實現(xiàn)圖像卷積的編碼型閃存系統(tǒng),用于對輸入圖像的像素矩陣進行卷積處理,所述卷積處理使用n×n的卷積核,其中n為正整數(shù),所述系統(tǒng)包括:n2個第一編碼型閃存單元、n2個第二編碼型閃存單元、第一字線、第二字線、n2條位線、第一導(dǎo)線、第二導(dǎo)線以及運算放大器。其中,每個所述編碼型閃存單元包括源端、柵端和漏端。每個第一編碼型閃存單元存儲相應(yīng)的一個卷積核元素的絕對值,但小于零的卷積核元素對應(yīng)的第一編碼型閃存單元存儲零值。每個第二編碼型閃存單元存儲相應(yīng)的一個卷積核元素的絕對值,但大于零的卷積核元素對應(yīng)的第二編碼型閃存單元存儲零值。第一字線與所述n2個第一編碼型閃存單元的柵端相連,用于向所述第一組編碼型閃存單元的柵端施加驅(qū)動電壓。第二字線與所述n2個第二編碼型閃存單元的柵端相連,用于向所述第二組編碼型閃存單元的柵端施加驅(qū)動電壓。每條位線連接相應(yīng)的一對第一編碼型閃存單元和第二編碼型閃存單元的漏端,用于傳輸所述像素矩陣中的相應(yīng)一個元素。第一導(dǎo)線與所述n2個第一編碼型閃存單元的源端相連。第二導(dǎo)線與所述n2個第二編碼型閃存單元的源端相連。運算放大器,包括正輸入端、負輸入端和輸出端,所述正輸入端與所述第一導(dǎo)線相連,所述負輸入端與所述第二導(dǎo)線相連,所述輸出端用于輸出卷積處理結(jié)果。
可選的,所述編碼型閃存系統(tǒng),還包括字線控制器、時鐘控制輸入模塊、位線控制器和時鐘控制輸出模塊。字線控制器用于向字線施加驅(qū)動電壓。時鐘控制輸入模塊用于根據(jù)時鐘周期,將所述像素矩陣的不同部分的信號輸入至位線控制器。位線控制器用于控制位線,將所述信號輸入至相應(yīng)的位線。時鐘控制輸出模塊用于根據(jù)時鐘周期,將所述像素矩陣的不同部分的處理結(jié)果組合成輸出矩陣,并輸出。
可選的,所述編碼型閃存單元為具有閾值電壓可調(diào)特性的晶體管。
可選的,所述編碼型閃存單元處于邏輯1時,使所述編碼型閃存單元導(dǎo)通的閾值電壓為vth_low,所述編碼型閃存單元處于邏輯0時,使所述編碼型閃存單元導(dǎo)通的閾值電壓為vth_high,其中vth_low小于vth_high且所述字線上的驅(qū)動電壓介于vth_low與vth_high之間。
可選的,所述卷積核為一階梯度算子。
本發(fā)明另一實施例提供了一種使用編碼型閃存系統(tǒng)實現(xiàn)m×m矩陣與n×n卷積核的卷積運算的方法,其中,m≥n,所述方法包括:在所述n2個第一編碼型閃存單元和所述n2個第二編碼型閃存單元中存儲卷積核;將m×m的輸入圖像的像素矩陣分成(m-n+1)×(m-n+1)個n×n的子矩陣,將所述子矩陣依次通過位線輸入至所述編碼型閃存陣列,得到相應(yīng)的子矩陣卷積結(jié)果;以及將所述子矩陣卷積結(jié)果組合成矩陣形式的輸出結(jié)果。
本發(fā)明另一實施例提供了一種實現(xiàn)圖像卷積的編碼型閃存系統(tǒng),用于使用n×n的卷積核,對m×m的輸入圖像的像素矩陣進行卷積處理,其中m、n為正整數(shù),且m>n,所述系統(tǒng)包括編碼型閃存陣列,所述編碼型閃存陣列包括:(m-n+1)2個編碼型閃存單元組、(m-n+1)2條字線、n2條位線、(m-n+1)2條導(dǎo)線。其中,每個編碼型閃存單元組包括n2個編碼型閃存單元,所述編碼型閃存單元包括源端、柵端和漏端,用于存儲所述像素矩陣信息。其中,存儲所述像素矩陣信息包括:將m×m的像素矩陣分成(m-n+1)2個n×n子矩陣,每個編碼型閃存單元組存儲相應(yīng)的一個n×n子矩陣,每個編碼型閃存單元存儲相應(yīng)的一個子矩陣的元素。每條字線與相應(yīng)的一個編碼型閃存單元組中的編碼型閃存單元的柵端相連,用于輸入驅(qū)動電壓。每條位線連接屬于不同編碼型閃存單元組的相應(yīng)的(m-n+1)2個編碼型閃存單元的漏端,用于輸入卷積核數(shù)據(jù)的相應(yīng)一個元素。每條導(dǎo)線連接相應(yīng)的一個編碼型閃存單元組中的編碼型閃存單元的源端,用于輸出卷積處理結(jié)果。
可選的,所述編碼型閃存系統(tǒng),還包括:字線控制器,卷積核輸入模塊,位線控制器和輸出模塊。字線控制器用于向字線施加驅(qū)動電壓。輸入模塊用于將所述卷積核輸入至位線控制器。位線控制器用于控制位線,將所述信號輸入至相應(yīng)的位線。輸出模塊用于輸出卷積處理后的像素矩陣。
可選的,所述編碼型閃存單元為具有閾值電壓可調(diào)特性的晶體管。
可選的,所述編碼型閃存單元處于邏輯1時,使所述編碼型閃存單元導(dǎo)通的閾值電壓為vth_low,所述編碼型閃存單元處于邏輯0時,使所述編碼型閃存單元導(dǎo)通的閾值電壓為vth_high,其中vth_low小于vth_high,且所述字線上的驅(qū)動電壓介于vth_low與vth_high之間。
可選的,所述卷積核為一階梯度算子。
本發(fā)明另一實施例提供了一種使用編碼型閃存系統(tǒng)實現(xiàn)卷積運算的方法,包括:將m×m的輸入圖像的像素矩陣分成(m-n+1)×(m-n+1)個n×n子矩陣,將所述每個n×n子矩陣寫入處于同一條字線連接的n2個編碼型閃存單元中;以及將n×n卷積核通過位線輸入到所述編碼型閃存陣列中,得到卷積處理結(jié)果。
本發(fā)明以簡單易行的方式實現(xiàn)了并行卷積運算,為實現(xiàn)卷積運算操作提供了切實可行的硬件解決方案。同時本發(fā)明的系統(tǒng)具有存儲卷積核、計算輸入卷積的功能,實現(xiàn)了存儲計算一體化。此外本發(fā)明避免了現(xiàn)有的存儲器高低阻電壓漲落過大等問題,具有實際生產(chǎn)應(yīng)用的可行性。
附圖說明
為了更完整地理解本發(fā)明及其優(yōu)勢,現(xiàn)在將參考結(jié)合附圖的以下描述,其中:
圖1示意性地示出了本發(fā)明實施例的矩陣卷積原理示意圖;
圖2示意性地示出了本發(fā)明實施例的編碼型閃存單元示意圖;
圖3示意性地示出了本發(fā)明實施例的編碼型閃存系統(tǒng)電路原理圖;
圖4示意性地示出了本發(fā)明實施例的編碼型閃存系統(tǒng)結(jié)構(gòu)圖;
圖5示意性地示出了本發(fā)明實施例的使用編碼型閃存系統(tǒng)實現(xiàn)卷積運算的方法流程圖;
圖6示意性地示出了本發(fā)明另一實施例的編碼型閃存系統(tǒng)電路原理圖;
圖7示意性地示出了本發(fā)明另一實施例的編碼型閃存系統(tǒng)結(jié)構(gòu)圖;
圖8示意性地示出了本發(fā)明另一實施例的使用編碼型閃存系統(tǒng)實現(xiàn)卷積運算的方法流程圖。
具體實施方式
根據(jù)結(jié)合附圖對本發(fā)明示例性實施例的以下詳細描述,本發(fā)明的其它方面、優(yōu)勢和突出特征對于本領(lǐng)域技術(shù)人員將變得顯而易見。
在本發(fā)明中,術(shù)語“包括”和“含有”及其派生詞意為包括而非限制;術(shù)語“或”是包含性的,意為和/或。
在本說明書中,下述用于描述本發(fā)明原理的各種實施例只是說明,不應(yīng)該以任何方式解釋為限制發(fā)明的范圍。參照附圖的下述描述用于幫助全面理解由權(quán)利要求及其等同物限定的本發(fā)明的示例性實施例。下述描述包括多種具體細節(jié)來幫助理解,但這些細節(jié)應(yīng)認為僅僅是示例性的。因此,本領(lǐng)域普通技術(shù)人員應(yīng)認識到,在不背離本發(fā)明的范圍和精神的情況下,可以對本文中描述的實施例進行多種改變和修改。此外,為了清楚和簡潔起見,省略了公知功能和結(jié)構(gòu)的描述。此外,貫穿附圖,相同參考數(shù)字用于相似功能和操作。
圖1示意性地示出了本發(fā)明實施例的矩陣卷積原理示意圖。
對于一個m×m大小規(guī)模的圖像,經(jīng)由一個n×n(m,n為正整數(shù)且m>n)大小規(guī)模的卷積核進行卷積操作之后得到的輸出圖像大小為(m-n+1)×(m-n+1)規(guī)模。如圖1所示,示出了當(dāng)m=4,n=3的一種情況。此時,輸入圖像的像素矩陣的大小為4×4,像素矩陣中像素信息用xi,j(0≤i,j≤3)表示,所述像素信息可以是圖像的灰度信息,或者是其他信息。卷積核的大小為3×3,卷積核中各位置點的元素用fi,j(0≤i,j≤2)表示。輸出圖像的像素矩陣中像素信息用yi,j(0≤i,j≤1)表示。yi,j可由公式y(tǒng)i,j=xi,j·f2,2+xi,j+1·f2,1+xi,j+2·f2,0+xi+1,j·f1,2+xi+1,j+1·f1,1+xi+1,j·f1,0+xi+2,j+2·f0,2+xi+2,j+1·f0,1+xi+2,j+2·f0,0計算得到。因此,每一個輸出的像素信息對應(yīng)于相應(yīng)的n2個輸入的像素信息,例如y0,0對應(yīng)于輸入的x0,0,x0,1,x0,2,x1,0,x1,1,x1,2,x2,0,x2,1,x2,2像素信息。
通過卷積操作,可以對原圖像的特征進行提取,從而將原來大量的不同圖像通過某些具體的特征進行分類,進而降低后續(xù)圖像處理信息的計算量。卷積核可以是一階梯度算子,用于邊緣檢測。例如prewitt中的fx算子,此時f0,0=-1,f0,1=0,f0,2=1,f1,0=-1,f2,1=0,f2,2=1,f2,0=-1,f2,1=0,f2,2=1,因此對于本發(fā)明實施例,yi,j可由公式y(tǒng)i,j=xi,j-xi,j+2+xi+1,j-xi+1,j+2+xi,j-xi,j+2計算得到。
圖2示意性地示出了本發(fā)明實施例的編碼型閃存單元示意圖。
如圖2所示,編碼型閃存單元包括源端201,柵端202和漏端203。
所述編碼型閃存單元可以是浮柵晶體管,也可以是其他具有閾值電壓可調(diào)特性的晶體管,如電荷俘獲存儲器,半浮柵晶體管等。編碼型閃存單元可以調(diào)整使其導(dǎo)通的閾值電壓,以區(qū)分不同的狀態(tài),表示不同的邏輯值。
浮柵晶體管可以通過編程/擦除操作來分別得到高/低閾值電壓,并借此來區(qū)分不同的邏輯值。當(dāng)進行編程操作時,晶體管的源端接地,柵端加上大電壓,漏端加上一定電壓,此時溝道中的電子會在柵端電壓的作用下發(fā)生隧穿,在浮柵層中引入可動電荷,因此浮柵晶體管的閾值電壓上升。當(dāng)晶體管處于高閾值電壓時記為邏輯“0”。當(dāng)浮柵晶體管進行擦除操作時,此時源端浮置,柵端接地,在漏端加上高電壓,在漏端電壓的作用下,編程操作中引入的在浮柵層中的電荷會隧穿回到溝道中,因此閾值電壓下降。當(dāng)晶體管處于低閾值電壓時記為邏輯“1”。
例如,可以設(shè)置當(dāng)所述編碼型閃存單元處于邏輯1時,使所述編碼型閃存單元導(dǎo)通的閾值電壓為vth_low,所述編碼型閃存單元處于邏輯0時,使所述編碼型閃存單元導(dǎo)通的閾值電壓為vth_high,其中vth_low小于vth_high。如此,當(dāng)在柵端施加驅(qū)動電壓介于vth_low和vth_high之間,例如(vth_low+vth_high)/2時,可以使處于邏輯1的編碼型閃存單元的漏端和源端導(dǎo)通而使處于邏輯0的編碼型閃存單元的漏端和源端斷開。
圖3示意性地示出了本發(fā)明實施例的編碼型閃存系統(tǒng)電路原理圖。
如圖3所示,編碼型閃存系統(tǒng)包括編碼型閃存陣列,所述編碼型閃存陣列包括:n2個第一編碼型閃存單元、n2個第二編碼型閃存單元、第一字線、第二字線、n2條位線、第一導(dǎo)線、第二導(dǎo)線以及運算放大器。(當(dāng)采用n×n的卷積核時,n為正整數(shù))
每個所述編碼型閃存單元包括源端、柵端和漏端。每個第一編碼型閃存單元存儲相應(yīng)的一個卷積核元素的絕對值,但小于零的卷積核元素對應(yīng)的第一編碼型閃存單元存儲零值。每個第二編碼型閃存單元存儲相應(yīng)的一個卷積核元素的絕對值,但大于零的卷積核元素對應(yīng)的第二編碼型閃存單元存儲零值。
第一字線與所述n2個第一編碼型閃存單元的柵端相連,用于向所述第一組編碼型閃存單元的柵端施加驅(qū)動電壓。第二字線與所述n2個第二編碼型閃存單元的柵端相連,用于向所述第二組編碼型閃存單元的柵端施加驅(qū)動電壓。
每條位線連接相應(yīng)的一對第一編碼型閃存單元和第二編碼型閃存單元的漏端,用于傳輸所述像素矩陣中的相應(yīng)一個元素。
第一導(dǎo)線與所述n2個第一編碼型閃存單元的源端相連。
第二導(dǎo)線與所述n2個第二編碼型閃存單元的源端相連。
運算放大器,包括正輸入端、負輸入端和輸出端,所述正輸入端與所述第一導(dǎo)線相連,所述負輸入端與所述第二導(dǎo)線相連,所述輸出端用于輸出卷積處理結(jié)果。
圖4示意性地示出了本發(fā)明實施例的使用編碼型閃存系統(tǒng)實現(xiàn)卷積運算的方法流程圖。
如圖4所示,該方法包括:
s41:在n2個第一編碼型閃存單元和n2個第二編碼型閃存單元中存儲卷積核。
s42:將m×m的輸入圖像的像素矩陣分成(m-n+1)×(m-n+1)個n×n的子矩陣,將子矩陣依次通過位線輸入至編碼型閃存陣列,得到相應(yīng)的子矩陣卷積結(jié)果。
s43:將子矩陣卷積結(jié)果組合成矩陣形式的輸出結(jié)果。
以下結(jié)合圖1至圖3所示的實施例具體說明。
根據(jù)本發(fā)明實施例,卷積核為3×3大小,因此需要9個第一編碼型閃存單元和9個第二編碼型閃存單元。例如,卷積核為f0,0=-1,f0,1=0,f0,2=1,f1,0=-1,f2,1=0,f2,2=1,f2,0=-1,f2,1=0,f2,2=1,將其旋轉(zhuǎn)180度并存儲在編碼型閃存單元中,其中每個第一編碼型閃存單元存儲相應(yīng)的一個卷積核元素的絕對值,但小于零的卷積核元素對應(yīng)的第一編碼型閃存單元存儲零值,每個第二編碼型閃存單元存儲相應(yīng)的一個卷積核元素的絕對值,但大于零的卷積核元素對應(yīng)的第二編碼型閃存單元存儲零值,即,第一編碼型閃存單元依次存儲1,0,0,1,0,0,1,0,0,第二編碼型閃存單元依次存儲0,0,1,0,0,1,0,0,1。
根據(jù)本發(fā)明實施例,輸入圖像的像素矩陣為4×4大小,即xi,j(0≤i,j≤3)。將其分成3×3的子矩陣,即每個子矩陣由以下元素組成:xi,j,xi,j+1,xi,j+2,xi+1,j,xi+1,j+1,xi+1,j,xi+2,j+2,xi+2,j+1,xi+2,j+2,(0≤i,j≤1)。
根據(jù)本發(fā)明實施例,如圖3所示將第一個子矩陣的9個元素x0,0,x0,1,x0,2,x1,0,x1,1,x1,2,x2,0,x2,1,x2,2轉(zhuǎn)換成電壓信號從9條位線輸入至編碼型閃存陣列,當(dāng)輸入的像素值xi,j≠0時,輸入的電壓信號為xi,j·vread,當(dāng)輸入像素值xi,j=0時,輸入電壓信號為xi,j·vread=0,其中vread為一固定的預(yù)設(shè)電壓。每個信號分別施加在一對相應(yīng)的一個第一編碼型閃存單元和一個第二編碼型閃存單元上。當(dāng)對字線施加介于高閾值電壓和低閾值電壓之間的驅(qū)動電壓時,如果編碼型閃存單元記錄1,則該編碼型閃存單元上有電流通過,如果編碼型閃存單元記錄0,則該編碼型閃存單元上幾乎沒有電流通過。
根據(jù)本發(fā)明實施例,第一導(dǎo)線上流過的電流為x0,0·1+x0,1·0+x0,2·0+x1,0·1+x1,1·0+x1,2·0+x2,0·1+x2,1·0+x2,1·0,對應(yīng)于三個記錄1的編碼型閃存單元,漏端電壓分別為x0,0·vread,x1,0·vread,x2,0·vread情況下共享源端流過的總電流。第二導(dǎo)線上流過的電流為x0,0·0+x0,1·0+x0,2·1+x1,0·0+x1,1·0+x1,2·1+x2,0·0+x2,1·0+x2,2·1,對應(yīng)于三個記錄1的編碼型閃存單元,漏端電壓分別為x0,2·vread,x1,2·vread,x2,2·vread情況下共享源端流過的總電流。兩行電流分別流到運算放大器的兩端,經(jīng)過相減并放大之后所得到的結(jié)果對應(yīng)為y0,0=x0,0·1+x0,1·0+x0,2·(-1)+x1,0·1+x1,1·0+x1,2·(-1)+x2,0·1+x2,1·0+x2,2·(-1)。即為第一個子矩陣的卷積結(jié)果。此時,可以判斷是否還有其他未處理過的矩陣,若有,類似地進行處理,若沒有,則處理完畢。
根據(jù)本發(fā)明實施例,信號輸入輸出過程可以采用時鐘周期控制,即在一個時鐘周期輸入一個子矩陣的信號,以提高輸入輸出的效率。例如,可以在第一個時鐘周期輸入第一個子矩陣的信號,在第二個時鐘周期輸入第二個子矩陣的信號,以此類推。因此,對于一個如圖1至圖3所示的實施例,可以在4個時鐘周期內(nèi)完成處理過程。
根據(jù)本發(fā)明實施例,還包括將多個子矩陣的卷積結(jié)果組合成矩陣形式的輸出結(jié)果,例如,將y0,0,y0,1,y1,0,y1,1組合成:
圖5示意性地示出了本發(fā)明實施例的編碼型閃存系統(tǒng)結(jié)構(gòu)圖。
如圖5所示,本發(fā)明實施例的編碼型閃存系統(tǒng)包括編碼型閃存陣列501,字線控制器502,時鐘控制輸入模塊503,位線控制器504,和時鐘控制輸出模塊505。
編碼型閃存陣列501,例如上文參考圖3描述的電路。
字線控制器502,例如執(zhí)行上文參考圖4描述的操作,用于向字線施加驅(qū)動電壓。
時鐘控制輸入模塊503,例如執(zhí)行上文參考圖4描述的操作,用于根據(jù)時鐘周期,將所述像素矩陣的不同部分的信號輸入至位線控制器504。
位線控制器504,例如執(zhí)行上文參考圖4描述的操作,用于控制位線,將所述信號輸入至相應(yīng)的位線。
時鐘控制輸出模塊505,例如執(zhí)行上文參考圖4描述的操作,用于根據(jù)時鐘周期,將所述像素矩陣的不同部分的處理結(jié)果組合成輸出矩陣,并輸出。
圖6示意性地示出了本發(fā)明另一實施例的編碼型閃存系統(tǒng)電路原理圖。
如圖6所示,編碼型閃存系統(tǒng)包括編碼型閃存陣列,所述編碼型閃存陣列包括:(m-n+1)2個編碼型閃存單元組、(m-n+1)2條字線、n2條位線、(m-n+1)2條導(dǎo)線。(當(dāng)采用n×n的卷積核對m×m的輸入圖像的像素矩陣進行卷積處理時,其中m、n為正整數(shù),且m>n)
其中,每個編碼型閃存單元組包括n2個編碼型閃存單元,所述編碼型閃存單元包括源端、柵端和漏端,用于存儲所述像素矩陣信息。其中,存儲所述像素矩陣信息包括:將m×m的像素矩陣分成(m-n+1)2個n×n子矩陣,每個編碼型閃存單元組存儲相應(yīng)的一個n×n子矩陣,每個編碼型閃存單元存儲相應(yīng)的一個子矩陣的元素。
每條字線與相應(yīng)的一個編碼型閃存單元組中的編碼型閃存單元的柵端相連,用于輸入驅(qū)動電壓。
每條位線連接屬于不同編碼型閃存單元組的相應(yīng)的(m-n+1)2個編碼型閃存單元的漏端,用于輸入卷積核數(shù)據(jù)的相應(yīng)一個元素。
每條導(dǎo)線連接相應(yīng)的一個編碼型閃存單元組中的編碼型閃存單元的源端,用于輸出卷積處理結(jié)果。
圖7示意性地示出了本發(fā)明另一實施例的使用編碼型閃存系統(tǒng)實現(xiàn)卷積運算的方法流程圖。
如圖7所示,該方法包括:
s71:將m×m的輸入圖像的像素矩陣分成(m-n+1)×(m-n+1)個n×n子矩陣,將每個n×n子矩陣寫入處于同一條字線連接的n2個編碼型閃存單元中。
s72:將n×n卷積核通過位線輸入到編碼型閃存陣列中,得到卷積處理結(jié)果。
以下結(jié)合圖1、圖2和圖6所示的實施例具體說明。
根據(jù)本發(fā)明實施例,輸入圖像的像素矩陣為4×4大小,卷積核為3×3大小,因此需要4個編碼型閃存單元組,每個編碼型閃存單元組包括9個編碼型閃存單元。例如,每個編碼型閃存單元組記錄上文參考圖4描述的一個子矩陣信息,即,編碼型閃存單元組的編碼型閃存單元依次存儲xi,j,xi,j+1,xi,j+2,xi+1,j,xi+1,j+1,xi+1,j,xi+2,j+2,xi+2,j+1,xi+2,j+2,(0≤i,j≤1)。
根據(jù)本發(fā)明實施例,如圖6所示將卷積核的9個元素f2,2,f2,1,f2,0,f1,2,f1,1,f1,0,f0,0,f0,1,f0,0轉(zhuǎn)換成電壓信號從9條位線輸入至編碼型閃存陣列,當(dāng)輸入的元素fi,j≠0時,輸入的電壓信號為fi,j·vread,當(dāng)輸入像素值fi,j=0時,輸入電壓信號為fi,j·vread=0,其中vread為一固定的預(yù)設(shè)電壓。例如,當(dāng)卷積核為f2,2=1,,f2,1=0,f2,0=-1,f1,2=1,f1,1=0,f1,0=-1,f0,0=1,f0,1=0,f0,0=-1時,9條位線上輸入的電壓信號為vread,0,-vread,vread,0,-vread,vread,0,-vread。當(dāng)對字線施加介于高閾值電壓和低閾值電壓之間的驅(qū)動電壓時,如果編碼型閃存單元記錄1,則該編碼型閃存單元上有電流通過,如果編碼型閃存單元記錄0,則該編碼型閃存單元上幾乎沒有電流通過。
根據(jù)本發(fā)明實施例,第一組編碼型閃存單元源端導(dǎo)線上流過的電流為y0,0=x0,0·1+x0,1·0+x0,2·(-1)+x1,0·1+x1,1·0+x1,2·(-1)+x2,0·1+x2,1·0+x2,2·(-1),第二組編碼型閃存單元源端導(dǎo)線上流過的電流為y0,1=x0,1·1+x0,2·0+x0,3·(-1)+x1,1·1+x1,2·0+x1,3·(-1)+x2,1·1+x2,2·0+x2,3·(-1),第三組編碼型閃存單元源端導(dǎo)線上流過的電流為y0,0=x1,0·1+x1,1·0+x1,2·(-1)+x2,0·1+x2,1·0+x2,2·(-1)+x3,0·1+x3,1·0+x3,2·(-1),第四組編碼型閃存單元源端導(dǎo)線上流過的電流為y0,1=x1,1·1+x1,2·0+x1,3·(-1)+x2,1·1+x2,2·0+x2,3·(-1)+x3,1·1+x3,2·0+x3,3·(-1)??梢栽谒膫€輸出端同時輸出卷積結(jié)果,即在一個時鐘周期內(nèi)輸出卷積后的圖像矩陣。
圖8示意性地示出了本發(fā)明另一實施例的編碼型閃存系統(tǒng)結(jié)構(gòu)圖。
如圖8所示,本發(fā)明實施例的編碼型閃存系統(tǒng)800包括編碼型閃存陣列801、字線控制器802,卷積核輸入模塊803,位線控制器804,和輸出模塊805。
編碼型閃存陣列801,例如參考上文圖6描述的電路。
字線控制器802,例如執(zhí)行上文參考圖7描述的操作,用于向字線施加驅(qū)動電壓。
卷積核輸入模塊803,例如執(zhí)行上文參考圖7描述的操作,用于將所述卷積核輸入至位線控制器。
位線控制器804,例如執(zhí)行上文參考圖7描述的操作,用于控制位線,將所述卷積核輸入至相應(yīng)的位線。
輸出模塊805,例如執(zhí)行上文參考圖7描述的操作,用于輸出卷積處理后的像素矩陣。
當(dāng)然,本發(fā)明的任一實施方式不一定需要同時達到以上所述的所有優(yōu)點。
盡管已經(jīng)參照本發(fā)明的特定示例性實施例示出并描述了本發(fā)明,但是本領(lǐng)域技術(shù)人員應(yīng)該理解,在不背離所附權(quán)利要求及其等同物限定的本發(fā)明的精神和范圍的情況下,可以對本發(fā)明進行形式和細節(jié)上的多種改變。因此,本發(fā)明的范圍不應(yīng)該限于上述實施例,而是應(yīng)該不僅由所附權(quán)利要求來進行確定,還由所附權(quán)利要求的等同物來進行限定。