基於一階矩的卷積器的製作方法
2023-05-30 03:52:41
專利名稱:基於一階矩的卷積器的製作方法
技術領域:
本發明涉及數位訊號處理的卷積和相關計算領域,尤其針對有限長度的循環卷積和相關的無乘法計算領域及其VLSI (超大規模集成電路)設計。
背景技術:
卷積運算和相關函數運算均是數位訊號處理中最基本、常用的計算,由於它們的計算複雜度高,一定程度上影響了信號實時處理的性能。因此,如何在保持低功耗的同時提高其運算速度、減少硬體資源需求,在數位訊號處理中具有十分重要的理論和實用價值。現有的高效算法和硬體結構大致可分為以下四類(I)基於快速傅立葉變換的計算方法由於傅立葉變換存在各種快速計算方法,而時域的卷積運算與其對應的頻域乘積運算等價,因此可將待卷積的數據先進行快速傅立葉變換,再將變換後的兩組數據對應相乘,最後進行反傅立葉變換,得到卷積結果。該方法藉助於快速傅立葉變換(FFT)的計算優勢,與直接進行卷積計算相比,大大提高了計算速度。缺點增加傅立葉變換環節後引入了三角函數和複數的計算,且經過正反兩次傅立葉變換對數據產生的截斷誤差降低了最終結果的精確性;計算過程中仍存在大量乘法,複雜度較高;各種快速傅立葉變換算法對卷積長度有相應要求,缺乏通用性。(2)基於數論變換、多項式分解和矩陣分解的計算方法應用數論變換和多項式中國剩餘定理,如短循環卷積算法,Agarwal-Cooley嵌套卷積算法和分裂嵌套循環卷積算法等,將兩個長數列的卷積轉化成若干較短數列的卷積,或將大的卷積矩陣分塊並行計算,避免了三角函數和複數的引入,能較快地完成卷積計算。缺點這些計算過程中仍存在大量乘法操作;計算結構複雜;大部分結構只能針對數據長度能分解成特定值乘積的情況,缺乏通用性。(3)基於脈動陣列結構的計算方法為更快實現卷積和相關計算,適用於VLSI實現且專門針對卷積和相關計算的脈動陣列算法結構被提出。結合該技術,對原有卷積和相關快速算法進行改進後得到的新方法大大提聞了卷積和相關的計算速度。缺點用該結構直接計算卷積,計算量大;結合快速卷積算法後同樣存在結構複雜、對卷積和相關計算有長度限制,缺乏通用性,且硬體資源消耗較大。由於以上方法中都包含有乘法操作,而在相同的硬體技術發展背景下乘法實現佔用的資源大且速度較加法操作慢,因而如何避免乘法器的使用,設計出計算速度更快、資源消耗更低的卷積和相關器是提聞計算性能的關鍵。(4)結合分布式算法和脈動陣列結構的無乘法計算方法現有的無乘法卷積和相關的方法都採用事先對卷積核序列或相關核序列進行預處理並存儲於大容量存儲器中,將輸入序列組合作為該存儲器的地址值,取出相應值進行移位和累加,完成計算。主要有傳統分布式算法(即DA算法)、改進型存儲高效的分布式算法和基於分布式算法的硬體高效的脈動式陣列結構。傳統的分布式算法是早期計算循環卷積和相關的經典無乘法算法。主要是根據算法原理將卷積核序列或相關核序列預先計算並存儲,在計算時將輸入數據序列的相同比特位從高到低且按每個數據的先後順序組合作為地址值,取出預先處理並存儲於存儲器中的卷積核序列值,最後移位累加完成計算。在整個計算中,該算法只使用加法和移位操作,對任意長度的卷積都能在較少周期內快速完成卷積和相關計算。缺點存儲處理好的卷積核序列和相關核序列所需的存儲器大小與計算點數成指數倍增長。此外,當卷積和相關的數據點數較大時,尋址範圍大,硬體資源消耗高。改進型存儲高效的分布式算法針對傳統DA算法的存儲上有了很大改進,大大減少了存儲資源的佔用。通過增加一個地址解碼器和桶形移位寄存器,完全消除了待存儲的冗餘數據。缺點當卷積長度很大時,所需的多對一地址解碼器設計較複雜,存儲資源需求仍然龐大。基於分布式算法的硬體高效的脈動式陣列結構可將卷積長度分段,對每段數據都同時進行分布式卷積計算,進一步降低了對存儲容量的需求,在延時-面積積這一性能指標的衡量下,比以往的無乘法計算方法更優。缺點該算法只能適用於卷積長度為非質數的情況,並且當卷積長度為大質數之積時,存儲資源需求較大。
發明內容
本發明公開了一種卷積器,其所要解決的技術問題是在卷積計算中避免三角函數和複數計算的引入,提高計算精度;克服現有的快速卷積器對乘法器或大容量存儲資源的需求;消除在計算卷積和相關時對長度的限制;在減少硬體資源佔用和降低功耗的同時保持較高的計算速度。一種卷積器,包括第一寄存器cntl、遞減器cnt2、第二寄存器cnt3、兩行累加器組acc[l], acc[2]以及 M+1 行寄存器組 reg
, reg[l], ···, reg[M], M 是卷積長度 N 用二進位表示的比特數目;每一行寄存器組由N個寄存器構成,每一行累加器組由N個累加器構成;reg
由輸入序列{χ (η)}賦值,η = 0,1,2, ···, N-1 ;第一寄存器cntl由輸入序列{q (η)}賦值,cntl的每個比特位cntl [m],m = 0,1,…M-1經過m個周期的延時後分別控制第m行的寄存器組賦值即
權利要求
1.一種卷積器,包括第一寄存器cntl、遞減器cnt2、第二寄存器cnt3、兩行累加器組acc[l], acc[2]以及 M+1 行寄存器組 reg
, reg[l], ···, reg[M], M 是卷積長度 N 用二進位表示的比特數目;每一行寄存器組由N個寄存器構成,每一行累加器組由N個累加器構成;reg
由輸入序列{χ (η)}賦值,η = 0,1,2, ···, N-1 ; 第一寄存器cntl由輸入序列{q(n)}賦值,cntl的每個比特位cntl [m],m = O,1,…M-1經過m個周期的延時後分別控制第m行的寄存器組賦值即[reg[m -1-1] = ROR(reg[m))r, 匆\:^cnt\[m]=l一
2.根據權利要求1所述的卷積器,其特徵在於,包括多個卷積器和一個加法器組,其中該加法器組包含N個加法器;將卷積核{h(n)}中的數據二進位化後拆分為多個子卷積核,針對每一個子卷積核設置一個卷積器,各卷積器均連接加法器組,各卷積器的卷積結果通過加法器組移位相加得到最終卷積結果。
3.一種基於一階矩的卷積器,包括第一寄存器cntl、遞減器cnt2、第二寄存器cnt3、第三寄存器 cnt4、U+2 行累加器組 acc[l],acc[2]和 accU[j],j = 0,1,2, ...,U_1,以及 M+1行寄存器組reg
, reg[l], ···, reg[M];每一行寄存器組由N個寄存器構成,每一行累加器組由N個累加器構成;reg
由輸入序列{x(n)}賦值,η = 0,1,2, ···, N-1 ; 將卷積核lh(n)}中的數據二進位化後拆分成兩部分之和即數據位寬L分解為L =U+V,hu(n)和~(11)分別是h(n)拆分後的高U比特和低V比特組成的數據; 第一寄存器由輸入序列{qv(η)}賦值,cntl的每個比特位cntl[m],m = 0,1,…M-1經過m個周期的延時後分別控制第m行寄存器組賦值,即
全文摘要
本發明公開了一種基於一階矩的卷積器,屬於數位訊號處理領域。本發明通過預先對卷積核序列數據值和序號進行統計,作為後續計算的控制信號,將循環卷積計算轉化成只含少量移位和加法運算的操作,設計出結構簡單且對任意長度和數據分布範圍都適用的高效數位訊號卷積計算器。本發明在卷積計算中避免三角函數和複數計算的引入,提高計算精度;克服現有的快速卷積器對乘法器或大容量存儲資源的需求;消除在計算卷積時對長度的限制;在減少硬體資源佔用和降低功耗的同時保持較高的計算速度。
文檔編號G06G7/14GK103049716SQ201210553580
公開日2013年4月17日 申請日期2012年12月19日 優先權日2012年12月19日
發明者劉建國, 曹麗, 潘超, 熊駿 申請人:華中科技大學