專利名稱:基于一階矩的數(shù)字內(nèi)積計算器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)字內(nèi)積計數(shù)器,特別是一種快速計算數(shù)字內(nèi)積的無乘法計算 器。它可應(yīng)用于離散整型數(shù)據(jù)(如數(shù)字信號和圖像)處理中,一切以內(nèi)積作為其基本計算 形式的數(shù)據(jù)操作。
背景技術(shù):
作為計算兩組數(shù)據(jù)的乘積累加和,內(nèi)積已成為離散數(shù)據(jù)處理中最重要的操作之 一。目前很多重要的基本數(shù)據(jù)操作,如數(shù)字卷積、相關(guān)、變換等,其本質(zhì)都是通過內(nèi)積計算實 現(xiàn)。因此,內(nèi)積可以在多個領(lǐng)域得到廣泛應(yīng)用,例如在數(shù)字信號和圖像的傳輸及壓縮中,通 過內(nèi)積計算執(zhí)行各種變換(離散傅里葉變換、離散余弦變換、離散正弦變換、離散哈特利變 換、離散小波變換),將數(shù)據(jù)轉(zhuǎn)變?yōu)轭l域值,進(jìn)行壓縮后再傳輸;在信號和圖像的濾波中,通 過內(nèi)積計算執(zhí)行卷積,完成數(shù)據(jù)的去噪、平滑和銳化;在模式識別中,通過內(nèi)積計算執(zhí)行各 種相關(guān)操作,實現(xiàn)特征比較和模板匹配,從而選擇出最優(yōu)的識別方案。然而,在實際的操作 過程中,根據(jù)定義公式計算內(nèi)積往往需要較多的乘法和加法,增加了數(shù)據(jù)處理的時間,尤其 是當(dāng)內(nèi)積長度較大時,大規(guī)模的乘法和加法操作會嚴(yán)重降低系統(tǒng)的計算效率,難以滿足速 度要求較高的實時處理系統(tǒng)。因此,開發(fā)出具有高效、快速,以及硬件成本低的內(nèi)積計算裝 置,實現(xiàn)變換、卷積、相關(guān)等操作的快速計算,對于離散數(shù)據(jù),特別是數(shù)字信號和圖像處理技 術(shù)的發(fā)展,具有重大的推動促進(jìn)作用。它可減少數(shù)據(jù)的處理時間和功耗,提高處理器的實時 性能,尤其適用于實時性、大規(guī)模、高復(fù)雜度的數(shù)據(jù)計算場合。目前,國內(nèi)外已經(jīng)出現(xiàn)了多種快速計算裝置,用于計算不同形式的內(nèi)積。在各種變 換的計算中,根據(jù)不同快速變換算法所設(shè)計的計算器,可有效減少變換需要的乘法和加法 數(shù)量,提高了計算的效率。而在卷積和相關(guān)的計算中,主要采用快速FFT、多項式算法、分解 算法來設(shè)計其快速計算器。然而,在以上根據(jù)快速算法設(shè)計的內(nèi)積計算器中,很多的算法往 往比較復(fù)雜,因此導(dǎo)致了計算器的結(jié)構(gòu)也非常復(fù)雜,成本較高。而且由于不同的快速算法往 往只針對一種或幾種形式的內(nèi)積,一種計算器往往也只能計算一種或幾種形式的內(nèi)積,如 DFT的計算器不能直接用于DWT,卷積的計算器不能夠直接用于DFT。到目前為止,還未出現(xiàn) 一種非常高效、簡單的計算器,可以使用統(tǒng)一的計算形式,即能夠?qū)θ我庑问降膬?nèi)積進(jìn)行快 速運(yùn)算。另一方面,大規(guī)模集成電路已經(jīng)被廣泛的應(yīng)用于內(nèi)積計算器。其中脈動式陣列因 為結(jié)構(gòu)單一,易于控制,能夠進(jìn)行流水作業(yè),是一種高效普遍的計算結(jié)構(gòu)。參考文獻(xiàn)[1]提 出一種基于分配算法(DA)的脈動式結(jié)構(gòu),通過將數(shù)據(jù)進(jìn)行分解以及建立查找表,可完全消 除乘法操作并減少加法的數(shù)量,非常適合于變換、卷積和相關(guān)的操作。然而,在各種脈動式 內(nèi)積計算器中,一種脈動式結(jié)構(gòu)往往也只能針對一種或幾種形式的內(nèi)積,例如DCT的脈動 式陣列無法執(zhí)行卷積。還未出現(xiàn)一種形式統(tǒng)一的脈動式計算器,可對任意形式的內(nèi)積進(jìn)行 計算。在離散數(shù)據(jù)處理中,矩的計算也是常用的數(shù)據(jù)操作之一。目前已提出了許多針對矩的無乘法快速計算裝置。如果能夠建立內(nèi)積和矩的關(guān)系,將內(nèi)積計算轉(zhuǎn)換為矩的計算,則 能消除內(nèi)積的乘法運(yùn)算,實現(xiàn)其并行操作,發(fā)明出更為快速高效、易于實現(xiàn)、能夠適用于不 同場合的快速內(nèi)積計算器。參考文獻(xiàn) [1]H. C. Chen, J. I. Guo, Τ. S. Chang, and C. W. Jen, "A Memory-Efficient Realization ofCyclic Convolution and Its Application to Discrete Cosine Transform,,,IEEE Trans. CircuitsSyst for Video Technol, vol. 15, no. 3, pp. 445-453, MAR. 2005.
發(fā)明內(nèi)容
本發(fā)明的目的是提出一種全新的數(shù)字內(nèi)積快速計算器。使用統(tǒng)一、簡單、高效的方 法,對離散數(shù)據(jù)處理領(lǐng)域中任意形式的數(shù)字內(nèi)積進(jìn)行快速計算,例如所有變換、卷積、相關(guān) 等,滿足離散數(shù)據(jù)的壓縮、濾波、頻譜分析等快速和實時處理要求。在實際的應(yīng)用中,當(dāng)內(nèi)積 的形式發(fā)生改變時(如將DFT計算變?yōu)榫矸e計算),只需要改變輸入數(shù)據(jù)的形式,而完全不 需要改變計算器本身的結(jié)構(gòu)。該計算器只需要寄存器和加法器,沒有乘法器,降低了硬件的 成本和芯片面積。該內(nèi)積計算器分為串行計算器和并行計算器兩種串行計算器每次只能執(zhí)行一個 內(nèi)積的計算,但所需要的資源很少;并行計算器可同時并行計算多個內(nèi)積,并將計算結(jié)果連 續(xù)輸出。為實現(xiàn)本發(fā)明的目的所采用的技術(shù)方案為本發(fā)明的數(shù)字內(nèi)積計算器包括統(tǒng)計模塊和一階矩計算模塊。統(tǒng)計模塊的功能是提 取待計算數(shù)據(jù)的統(tǒng)計特征,以根據(jù)上述統(tǒng)計特征將內(nèi)積的計算形式轉(zhuǎn)換為一階矩的形式。 一階矩計算模塊的功能是快速計算統(tǒng)計模塊得到的一階矩,然后輸出內(nèi)積結(jié)果。本發(fā)明還 可以包括協(xié)調(diào)模塊,當(dāng)統(tǒng)計模塊的數(shù)據(jù)輸出方式和一階矩計算模塊的數(shù)據(jù)輸入方式不一致 時,連接統(tǒng)計模塊和一階矩計算模塊,實現(xiàn)兩者的協(xié)調(diào)操作。本發(fā)明的內(nèi)積計算器相比現(xiàn)有技術(shù)具有如下優(yōu)點(1)使用完全統(tǒng)一的形式計算內(nèi)積,不需要改變自身結(jié)構(gòu)。(2)完全沒有乘法操作。目前大部分的內(nèi)積計算器,除了采用基于查找表的方法, 均包含較多的乘法操作。(3)結(jié)構(gòu)非常簡單。而很多的內(nèi)積計算器結(jié)構(gòu)都很復(fù)雜,往往涉及復(fù)雜的數(shù)據(jù)分解 操作。(4)對內(nèi)積的長度沒有限制。很多內(nèi)積計算器,尤其是DFT等變換,需要內(nèi)積長度 為2的整數(shù)次方。(5)通過脈動式實現(xiàn),具有高度的并行性。實現(xiàn)簡單,計算速度快,便于流水操作。
圖1是內(nèi)積計算器模塊關(guān)系圖;圖2是計算序列{a (r)}的線性陣列圖;圖3是計算{ak (r)}的脈動式陣列圖4是1階網(wǎng)絡(luò)的 基本結(jié)構(gòu)圖;圖5是計算一階矩的結(jié)構(gòu)圖;圖6是計算一階矩的脈動陣列結(jié)構(gòu)圖;圖7是協(xié)調(diào)模塊結(jié)構(gòu)圖;圖8是串行內(nèi)積計算器結(jié)構(gòu)圖;圖9是并行內(nèi)積計算器結(jié)構(gòu)圖。
具體實施例方式下面結(jié)合附圖和具體實施例對本發(fā)明作進(jìn)一步說明。本發(fā)明的數(shù)字內(nèi)積計數(shù)器包括統(tǒng)計模塊和一階矩計算模塊,當(dāng)統(tǒng)計模塊的數(shù)據(jù)輸 出方式和一階矩計算模塊的數(shù)據(jù)輸入方式不一致時,還可以包括協(xié)調(diào)模塊,三個模塊之間 的關(guān)系如圖1所示。為了清晰的闡述本發(fā)明的數(shù)字內(nèi)積計數(shù)器,本發(fā)明中假設(shè)兩組長度為N的序列 {f(n)}和&(11)}(11為序列中各元素的序號,11 = 0,1,2,…,N-1),定義數(shù)字內(nèi)積為
N-IX = Imgin)(1)
M=O其中兩組序列需要滿足的條件(l){f(n)}為最大值為M-I的數(shù)字序列,SPf(n) e {0,1,2,…,M_1},M為一正整數(shù)。(2){g(n)}可為任何形式的離散數(shù)據(jù)(整型、浮點實數(shù)型、復(fù)數(shù)型等)。例如 i.g(n)為隨機(jī)數(shù)據(jù),X為一般的乘積合運(yùn)算;ii.g(n) =h(k-n),其中{h(n)}為長度為N 的離散序列,X為(f(n)}和{h(n)}在第k點的卷積。iii.g(n) = exp (_j2 π nk/N),X為
{f(n)}的離散傅里葉變換在第k點的取值;iv. g(n) = CO^2n+ X)k Λ % {f(n)}的離散
2N
余弦變換在第k點的取值。需要注意的是,當(dāng)需要計算內(nèi)積的兩個序列{f}和{g}為多維序列時,可以先將兩 個多維序列直接展開成一維的形式,然后按照公式(1)計算內(nèi)積。而當(dāng)需要連續(xù)計算多個內(nèi)積時,假設(shè)包含有L個內(nèi)積的序列{X(k)}
N-IXk=YMnKn),眾=0,1,…J-I(2)
M=O{fk(n)}和{&(n)}分別表示用于計算第k個內(nèi)積Xk的兩組長度為N的序列。(1)統(tǒng)計模塊所述統(tǒng)計模塊的功能是通過一系列的變換,獲取待計算內(nèi)積數(shù)據(jù)的統(tǒng)計特征,從 而將公式(1)和(2)的內(nèi)積形式轉(zhuǎn)化為一階矩形式。首先,根據(jù)輸入信號f(n)的取值,將整數(shù)指標(biāo)集{0,1,2,…,N_l}分成M個互不 相交的整數(shù)子集民。民定義為是這樣一些正整數(shù)η的集合他們所對應(yīng)的信號f (η)的大小 均為r,即Sr = {n I f (η) = r, η e {0,1,2, L, N-1}}, r = 0,1,2, L, Μ_1· (3)因此,計算Sr實際上是一個統(tǒng)計過程查找在序列{f (η)}中,有哪一些元素的取值為r,并由這些元素的序號η組成集合民。然后,根據(jù)集合民中的各元素取值,對序列{g(n)}進(jìn)行同類項合并,從而得到一 組統(tǒng)計特征序列Ia(r)},即
權(quán)利要求
一種數(shù)字內(nèi)積計算器,包括統(tǒng)計模塊和一階矩計算模塊,所述統(tǒng)計模塊用于提取待計算內(nèi)積的序列的統(tǒng)計特征,并根據(jù)上述提取的統(tǒng)計特征將內(nèi)積的計算形式轉(zhuǎn)換為一階矩的形式;所述一階矩計算模塊用于快速計算統(tǒng)計模塊得到的一階矩,并輸出內(nèi)積計算結(jié)果。
2.根據(jù)權(quán)利要求1所述的一種數(shù)字內(nèi)積計算器,其特征在于,所述統(tǒng)計模塊將內(nèi)積的 計算形式轉(zhuǎn)換為一階矩的形式為Skr=[n\fk{n) = r, e{0,l,2,Lr = 0, 1, ...,M-I式中,L為待計算的內(nèi)積個數(shù),{fk(n)}和{&(n)}分別表示用于計算第k個內(nèi)積Xk的 兩組長度為N的序列,{ak(r)}為{fk(n)}和{&(n)}的統(tǒng)計特征,義為將整數(shù)指標(biāo)集{0,1, 2,···,Ν-1}分成的M個互不相交的整數(shù)子集,各子集義中包含的元素η所對應(yīng)的信號fk(n) 的值均為r,所述{fk(n)}和{&(n)}可以為一維或多維序列,當(dāng)為多維序列時,需先將多維 序列展開成一維序列的形式后再進(jìn)行一階矩的轉(zhuǎn)換。
3.根據(jù)權(quán)利要求2所述的一種數(shù)字內(nèi)積計算器,其特征在于,當(dāng)L= 1時,即只計算一 個內(nèi)積Xtl,統(tǒng)計特征序列{%(!·)}的具體計算過程通過M個累加器線性連接實現(xiàn)對所述M 個累加器分別標(biāo)號,如果輸入的fo(η)值和陣列中其中一個累加器的標(biāo)號相等,則g(1 (η)就 進(jìn)入該累加器中和該累加器存儲的值進(jìn)行累加,當(dāng)序列fo(η)和g(l(n)輸入完畢后,在各累 加器中存儲的值即為序列fQ(η)和g0(η)的統(tǒng)計特征Ia0(r)}。
4.根據(jù)權(quán)利要求2或3所述的一種數(shù)字內(nèi)積計算器,其特征在于,當(dāng)L> 1時,即連續(xù) 計算多個內(nèi)積,各統(tǒng)計特征序列{ak(r)}的具體計算過程通過L個線性陣列并行連接實現(xiàn) 每個線性陣列由M-I個加法器組成,在任意第i個時鐘周期,陣列j_l中的M-I個數(shù)據(jù)從 該陣列中移出,輸向下一陣列j,同時待計算內(nèi)積的兩個數(shù)據(jù)&-」(」),&-」(」)也輸入陣列j, 陣列j處理上述第j_l個陣列輸來的M-I個數(shù)據(jù),即將M-I個數(shù)據(jù)中的第fh.(j)個數(shù)據(jù)與 gi-j(j)進(jìn)行相加并保存,其余M-2個數(shù)據(jù)直接保存,而對于第L-I個陣列,其中的M-I個數(shù) 據(jù)直接輸出,其中j = 1,2, -,L-I0
5.根據(jù)權(quán)利要求1-4之一所述的一種數(shù)字內(nèi)積計算器,其特征在于,所述一階矩計算模塊接受由統(tǒng)計模塊得到的統(tǒng)計特征序列ak(r),然后計算統(tǒng)計特征的一階矩r。
6.根據(jù)權(quán)利要求5所述的一種數(shù)字內(nèi)積計算器,其特征在于,所述統(tǒng)計特征的一階矩 通過如下公式計算F(FL F(F(F(AM_l) + AM_2) + AM_3)+L +A2) + Ax其中,
7.根據(jù)權(quán)利要求6所述的一種數(shù)字內(nèi)積計算器,其特征在于,所述映射過程F通過1階 網(wǎng)絡(luò)實現(xiàn),該1階網(wǎng)絡(luò)由3個寄存器和一個加法器組成,寄存器一和寄存器二為輸入端,分 別用于輸入b,c,寄存器三和加法器為輸出端,寄存器一和寄存器二均與加法器連接,其存 儲值在加法器中進(jìn)行相加,同時寄存器一還與寄存器三連接,其存儲值輸出給寄存器三。
8.根據(jù)權(quán)利要求7所述的一種數(shù)字內(nèi)積計算器,其特征在于,所述統(tǒng)計特征的一階 矩的計算過程通過所述1階網(wǎng)絡(luò)的M-2次迭代實現(xiàn),即在第一次迭代時,將ak(M-I)輸 入1階網(wǎng)絡(luò),在輸出端得到ak(M-I)和2ak(M-I),在之后的任意第t次迭代中,將上次迭代得到的…和+小分別與ak(M-t)相加,得到i>t(M-r)和
9.根據(jù)權(quán)利要求7所述的一種數(shù)字內(nèi)積計算器,其特征在于,把M-2個相同的1階 網(wǎng)絡(luò)按照從上至下順序連接,在第一個1階網(wǎng)絡(luò)中,將ak(M-I)輸入1階網(wǎng)絡(luò),在輸出端t-\得到ak(M-I)和2ak(M-I),在第t個1階網(wǎng)絡(luò)中,將第t_l個1階網(wǎng)絡(luò)得到的(Mr=l和+ 1批(M-r),通過兩個加法器分別與ak(M-t)相力卩,得到(M-r)和r=lr=l+ l批(M-r),然后輸入至IJ 1階網(wǎng)絡(luò),輸出(似-r)和+ (M-r),因r=lr=lr=lM-2此,在第M-2個1階網(wǎng)絡(luò)的寄存器三中輸出Σ,再通過一個加法器與 ⑴r=lM-I相加,即得到一階矩Σ % (r)xr,其中t > ι。r=l
10.根據(jù)權(quán)利要求1-9之一所述的一種數(shù)字內(nèi)積計算器,其特征在于,數(shù)字內(nèi)積計算器 還包括協(xié)調(diào)模塊,當(dāng)所述統(tǒng)計模塊的數(shù)據(jù)輸出方式和一階矩計算模塊數(shù)據(jù)輸入方式不一致 時,在兩者之間設(shè)置有協(xié)調(diào)模塊,用以將上述輸出方式轉(zhuǎn)換為符合一階矩計算模塊數(shù)據(jù)的 輸入方式,協(xié)調(diào)兩者的運(yùn)行。
全文摘要
本發(fā)明提出了一種數(shù)字內(nèi)積計算器,用于實現(xiàn)各種以數(shù)字內(nèi)積作為其基本計算形式的數(shù)字序列計算。該計算器由統(tǒng)計模塊和一階矩計算模塊組成,統(tǒng)計模塊的功能是通過數(shù)值統(tǒng)計,將內(nèi)積形式轉(zhuǎn)化為一階矩的形式;一階矩計算模塊則是快速計算由統(tǒng)計模塊獲得的一階矩,得到內(nèi)積計算結(jié)果;本發(fā)明還可以包括協(xié)調(diào)模塊,用于連接統(tǒng)計模塊和一階矩計算模塊,實現(xiàn)兩模塊的協(xié)調(diào)操作。本計算器只使用了加法器和寄存器,當(dāng)內(nèi)積的形式發(fā)生改變時,通過改變輸入數(shù)據(jù)的方式,即可實現(xiàn)不同形式內(nèi)積的計算,完全不需要改變計算器本身的結(jié)構(gòu)。
文檔編號G06F7/509GK101957738SQ20101028805
公開日2011年1月26日 申請日期2010年9月21日 優(yōu)先權(quán)日2010年9月21日
發(fā)明者劉建國, 劉振丙, 汪國有, 潘超 申請人:華中科技大學(xué)