TWI444837B - 固定係數型可變質數長度遞迴式離散傅立葉轉換之系統 - Google Patents

固定係數型可變質數長度遞迴式離散傅立葉轉換之系統 Download PDF

Info

Publication number
TWI444837B
TWI444837B TW101100101A TW101100101A TWI444837B TW I444837 B TWI444837 B TW I444837B TW 101100101 A TW101100101 A TW 101100101A TW 101100101 A TW101100101 A TW 101100101A TW I444837 B TWI444837 B TW I444837B
Authority
TW
Taiwan
Prior art keywords
signal
temporary
delay
generate
multiplexer
Prior art date
Application number
TW101100101A
Other languages
English (en)
Other versions
TW201329747A (zh
Inventor
Sheau Fang Lei
Shin Chi Lai
Chuan An Chang
Original Assignee
Univ Nat Cheng Kung
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Univ Nat Cheng Kung filed Critical Univ Nat Cheng Kung
Priority to TW101100101A priority Critical patent/TWI444837B/zh
Priority to US13/557,451 priority patent/US8924452B2/en
Publication of TW201329747A publication Critical patent/TW201329747A/zh
Application granted granted Critical
Publication of TWI444837B publication Critical patent/TWI444837B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms

Description

固定係數型可變質數長度遞迴式離散傅立葉轉換之系統
本發明係關於數位訊號處理之技術領域,尤指一種固定係數型可變質數長度遞迴式離散傅立葉轉換之系統。
由於數位訊號處理的技術日趨發達,在日常生活中可以很方便地獲取信息和享受各種多媒體資訊。離散傅立葉轉換(Discrete Fourier Transform,DFT)已廣泛應用在各種音頻編解碼標準上。
離散傅立葉轉換(DFT)的硬體架構可分為平行式架構及遞迴式架構。遞迴式架構相較於平行式架構的缺點為計算週期高、易隨訊框大小的增加而降低精確度,且係數所產生的ROM也影響著晶片面積,因此許多以降低計算週期、複雜度、係數需求量、提升精確度為目的之遞迴式離散傅立葉轉換(Recursive DFT,RDFT)方法被提出。
於Goertzel在American mathematical monthly,pp. 34-35,1958所發表的「An algorithm for the evaluation of finite trigonometric series」論文中,提出遞迴式架構為核心,來計算DFT的方法。而Curtis & Wickenden在Radar and Signal Processing,IEE Proceedings F,vol. 130,pp. 423-432,1983所提出的「Hardware-based Fourier transforms: algorithms and architectures」論文中所提出的硬體架構,其計算N 點DFT需N 2 個週期,而整體硬體需求6個加法器、6個乘法器。
於Yang & Chen在Elsevier Science B.V. Signal Process,vol. 82,pp. 31-41,2002所發表的「Recursive discrete Fourier transform with unified IIR filter structures」論文中所提出的硬體架構,計算N 點DFT需N 2 個週期,整體硬體需求為12個加法器、6個乘法器。Lai,Chang,Lin,&Luo在Circuits and Systems II: Express Briefs,IEEE Transaction son,vol. 56,pp. 921-925,2009所提出的「Low Computational Complexity,Low Power,and Low Area Design for the Implementation of Recursive DFT and IDFT Algorithms」論文中所提出的硬體架構,需要12個加法器、2個乘法器。
儘管多年來遞迴式離散傅立葉轉換(RDFT)已經發展許多,然而為能進一步降低運算複雜度、減少硬體成本、及提高資料計算之效能,前述具遞迴式離散傅立葉轉換(RDFT)之系統仍有予以改善之需要。
本發明之主要目的係在提供一種固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其具有低運算複雜度,且使用少量的乘法係數使用量,並具有高效能的資料計算。
依據本發明之一特色,本發明提出一種固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其包括一前處理裝置、一實部計算裝置、一虛部計算裝置、及一後處理裝置。該前處理裝置接收N個輸入數位訊號(x[n]),對該N個輸入數位訊號執行次序排列運算,以產生第一暫時訊號(ck [])及第二暫時訊號(sk []),當中N為質數。該實部計算裝置連接至該前處理裝置,其接收該第一暫時訊號(ck [])的實數部分及該第二暫時訊號(sk [])的實數部分,以執行遞迴式離散餘弦/正弦運算,俾產生第三暫時訊號及第四暫時訊號。該虛部計算裝置連接至該前處理裝置,其接收該第一暫時訊號(ck [])的虛數部分及該第二暫時訊號(sk [])的虛數部分,以執行遞迴式離散餘弦/正弦運算,俾產生第五暫時訊號及第六暫時訊號。該後處理裝置連接至該實部計算裝置及該虛部計算裝置,接收該第三暫時訊號、該第四暫時訊號、該第五暫時訊號及該第六暫時訊號,以對該第三暫時訊號、該第四暫時訊號、該第五暫時訊號及該第六暫時訊號執行次序排列及加法運算,而產生N個輸出訊號(X[k]);其中,該N個輸出訊號(X[k])係該N個輸入數位訊號x[n]的離散傅立葉轉換。
圖1係本發明之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統100之一實施例的示意圖。該系統100包括一前處理裝置110、一實部計算裝置120、一虛部計算裝置130、及一後處理裝置140。
該前處理裝置接收N個輸入數位訊號(x[n]),對該N個輸入數位訊號執行次序排列運算,以產生第一暫時訊號(ck [])及第二暫時訊號(sk []),當中N為質數。
該實部計算裝置連接至該前處理裝置,其接收該第一暫時訊號(ck [])的實數部分及該第二暫時訊號(sk [])的實數部分,以執行遞迴式離散餘弦/正弦運算,俾產生第三暫時訊號及第四暫時訊號。
該虛部計算裝置連接至該前處理裝置,其接收該第一暫時訊號(ck [])的虛數部分及該第二暫時訊號(sk [])的虛數部分,以執行遞迴式離散餘弦/正弦運算,俾產生第五暫時訊號及第六暫時訊號。
該後處理裝置連接至該實部計算裝置及該虛部計算裝置,接收該第三暫時訊號、該第四暫時訊號、該第五暫時訊號及該第六暫時訊號,以對該第三暫時訊號、該第四暫時訊號、該第五暫時訊號及該第六暫時訊號執行次序排列及加法運算,而產生N個輸出訊號(X[k]);其中,該N個輸出訊號(X[k])係該N個輸入數位訊號x[n]的離散傅立葉轉換。
N點輸出訊號(X[k])表示如下,其拆成正弦與餘弦之形式:
k =0時,可由公式(1)中觀察到實部與虛部的係數分別為1、0,則X [0]可另外表示為:
由公式(2)中可知,X [0]為原始輸入訊號的所有總和,將獨立以簡單的累加器實現之。
將公式(3)利用變數變換將kN -k 代換作倒序計算可得:
由三角函數和角公式代入公式(4a)中的可得:
將公式(4b)、公式(4c)代回公式(4a)可重新表示為:
因為本發明作質數點N 的探討,而在公式(2)已將k =0獨立作運算,觀察公式(3)、公式(5),可發現X (k )與X (N -k )只有在虛部部分有正、負號之差,如此可一次計算出兩點結果,即在k =1~N -1點數中只需計算一半的點數也可得到的DFT結果。
n =0時,在公式(3)中的x [0]可移出遞迴核心另外相加,公式(3)可表示為:
在公式(6)中,將實部與虛部遞迴累加的部分各拆成前段與後段來計算,接著利用變數變換將n 以(N -1)-1-n 代換作倒序計算,可得:
其中,
由三角函數和角公式代入公式(9a)中的可得:
將公式(7b)和公式(7c)式代回公式(7a)式,可發現實部與虛部的前後段遞迴式皆具有相同的,因此可將共同之因式先提出,再乘以新的輸入訊號,公式(7a)可重新表示為:
其中,
c [n ]=x [n +1]+x [N -1-n ], (8b)
s [n ]=x [n +1]-x [N -1-n ], (8c)
當中,
利用公式(8)式重新定義X [k ]表示為:
X [k ]=X DCT [k ]-jX DST [k ], (9)
其中,
公式(9)藉由公式(3)、公式(5)的結果可知:
X DCT [k ]=X DCT [N -k ], (12)
X DST [k ]=-X DST [N -k ], (13)
由以上推演可知提出的RDFT核心在公式(12)、公式(13)中外部點數k的結果呈現對稱性,其計算次數由原本的N -1次縮減為次,而由公式(10)、公式(11)可知在每次k 計算時,其內部n 遞迴次數同樣地由原本的N -1次縮減為次,如此本發明的質數長度RDFT方法,其計算N 點可具有最短計算週期
係數對於DFT結果輸出之精確性具有很大的影響力,在遞迴架構中其影響更為顯著,如何有效地提供係數給計算電路使用,將是需面臨的問題,習知的方法有:
1. 藉由外部輸入係數資料,但需有較多的I/O接腳來增加係數輸入的位元數,但此種方法會導致I/O接腳過多而使得整體面積變大。
2. 晶片內建記憶元件ROM(Read only Memory,ROM),利用查表法(Look-up Table,LUT)由ROM來得知係數,ROM的面積大小隨著點數增加而變大,對於遞迴架構而言,其優點就是具有較小的面積,若採用ROM必然增加面積與功耗,因此陸續有方法提出節省ROM的方法。
3. 由電路產生自我係數,額外增加電路並給予適當的初值,藉由初值來計算出其他所需的係數,此方法在晶片實現上可省去電路ROM,但仍需付出些許計算週期與額外硬體成本完成電路產生係數。
4. 固定遞迴架構計算中所需係數,藉由三角函數週期性推導出固定係數,不需額外電路架構計算係數,相較於未作固定係數之架構其不需改變其硬體架構且完全省下ROM,但需經由前處理重新排序輸入訊號。
本發明基於追求最少計算週期與最節省ROM的要求下,採用固定係數演算法處理RDFT內部係數。
三角函數中,餘弦與正弦的特性如:
cos θ=cos (2n π+θ), (14a)
cos θ=cos (2π-θ), (14b)
cos θ=-cos (π-θ), (14c)
sin θ=sin (2n π+θ), (14d)
sin θ=-sin (2π-θ), (14e)
sin θ=sin (π-θ)。 (14f)
由公式(14a)、公式(14d)可知,因函數週期為2π,所以任意大於2π角度的正、餘弦函數值皆可在2π角度內找到相同函數值表示;由公式(14b)、公式(14e)可知,任意於2π~π角度內的正、餘弦函數值皆可在0~π內找到相同函數值,因正弦函數為奇函數,當角度超過π時,正弦函數值必須乘上負號,如圖2所示。圖2係一正弦函與一餘弦函數數值的示意圖。再由公式(14c)、公式(14f)可知,任意於π~π/2角度內的正、餘弦函數值皆可在0~π/2內找到相同函數值,因餘弦函數為偶函數,當超過角度π/2時,餘弦函數值必須乘上負號,如圖3所示。圖3係一正弦函與一餘弦函數數值的另一示意圖。
綜合公式(14a)至公式(14f)所述之週期特性,任何角度所表示之函數值皆能縮減至角度0~π/2來表示,藉此可在角度0~π/2內找出一組固定係數。
參考DFT定義式中之係數,並重新表示為
在公式(15)中,因RDFT計算的遞迴過程中索引值n 與點數k 將不斷增加而導致係數角度不斷的變大,將難以觀察出最小的係數角度。若能在不同k 時,計算出2nk 並將它限制在N /2內(亦即限制角度在π/2內)的索引值(Index),則可固定一組索引值F (n ,k )來決定固定係數角度。以N =5作說明(因=1且=1,故k =0與n =0不討論,因奇偶函數所產生之負號也暫不考慮),如下:
公式(16)中,欲找出一組固定的係數,需藉由“模數(modulo)”的操作來計算F (n ,k ),由公式(14a)、公式(14d),首先將公式(16)中之角度限制在2π內,其中2nk 必須小於2N ,如下:
此時另外定義絕對模數(absolute module)為:
公式(18)說明了amod (o,p )範圍限制在p 內,若mod (o,p )超過p /2,則mod (o,p )將由p 倒減回去。
由公式(14b)、公式(14e),將公式(17)之角度限制在0~π內,而2π~π之角度由0~π取代,將公式(18)代入公式(17)計算,其中amod (2nk, 2N )小於N ,可得:
由公式(14c)、公式(14f),將公式(19)之角度限制在0~π/2內,而π~π/2之角度由0~π/2取代,公式(19)式再作一次絕對模數(absolute module)操作,將公式(18)代入公式(19)計算,其中amod (amod (2nk,2N ),N )小於N /2,可得:
在公式(20)可以發現,在N =5的例子當中,公式(15)的係數經過運用固定係數演算法計算後,所有的係數皆將角度範圍縮減至π/2內以表示,其中n =1~(N -1)/2與n =(N +1)/2~N -1、k =1~(N -1)/2與k =(N +1)/2~N -1具有對稱性,故可選擇索引值F (n,k )={2 1;1 2},而因數學驗證之便,選擇k =(N -1)/2之係數{{作為固定係數。
綜合以上所述之係數對稱現象可由表1與表2清楚說明。
表1中k =1~(N -1)/2與k =(N +1)/2~N -1互相對稱,n =1~(N -1)/2與n =(N +1)/2~N -1互相對稱。除了k =0與n =0之外,其餘的係數有縱向、橫向鏡像對稱的關係。而表2正弦函數對稱的情形為縱向、橫向鏡像負對稱的關係。
在公式(1)原始DFT數學模型中,為一組輸入訊號x [n ]計算每點k 時將乘上不同組合之係數,如圖4,反之,當係數經由作固定係數演算法後,係數不因k 而改變而被固定為一組,所以輸入訊號x [n ]必須依據係數索引值F (n ,k )做前處理來對應重新排序為R k [u ],如圖5所示。
綜合以上所述,圖5中,前處理的動作主要有三個部分,(1)將係數角度作”modulo”的操作以求出係數索引值F (n,k );(2)由公式(8a)、公式(8b)已佐證因係數的對稱性,將原始輸入訊號x [n +1]與x [N -1-n )的運算可另外定義為U [n ];(3)將(2)的結果以(1)之F (n,k )產生新排序R k [u ],如下:
R k [u ]=U [F (n ,k )]。 (21)
N =5時,輸入x [n ]經過前處理後之新排序為:
公式(21)排序後的R R [u ]將依序輸入至固定係數型RDFT核心架構做計算,圖5中呈現的僅是由數學模型角度來說明之概念圖,實際上固定係數型RDFT核心電路架構中,其需固定之角度將由固定係數型之質數長度RDFT(Prime Length RDFT)來決定。
先分別對公式(10)之遞迴係數作推導,利用餘弦與正弦的週期性質公式(14a)、公式(14d),可寫成:
公式(23a)、公式(23b)代表著將)縮減至0~2π內角度來表示。其中”mod”為作模數(module)的運算。接著利用週期性質公式(14b)、公式(14e)搭配公式(18),公式(23a)、公式(23b)分別可寫成:
其中
公式(24a)、公式(24b)意味著將角度π~2π內之角度以O~π來表示。而公式(26)由圖2可知因正弦函數為奇函數,當角度超過π時,π~2π之正弦函數值必須乘上負號。再利用一次週期性質公式(14c)、公式(14f)且公式(25)再做一次amod 運算,則公式(24a)、公式(24b)分別可再寫為:
其中
公式(27a)、公式(27b)意味著將角度π/2~π內之角度以0~π/2來表示。而公式(29)由圖3可知因餘弦函數為偶函數,當角度超過π/2時,π/2~π之餘弦函數值必須乘上負號。
由於N 為質數,則amod (amod (2(n +1)k ,2N ),N )為非0之任意數,故可以將amod (amod (2(n +1)k ,2N ),N )以一個新的index表示:
F (n ,k )=amod (amod (2(n +1)k ,2N ),N ), (30a)
其中,固定係數所屬之索引值為F (n ,(N -1)/2),並另定義其為:
u +1=F (n ,(N-1)/2)。 (30b)
從此結果可以將公式(8)藉由公式(23a)至公式(30b)推導為:
其中
公式(31d)、公式(31e)為公式(8b)、公式(8c)中之c [n ]、s [n ]依據係數索引值F (n ,k )所排序出來的新輸入。
推導完成固定係數型的數學模型後,以下將繼續推導公式(31b)、公式(31c)為遞迴數學式,並經由z-transform後將電路架構圖呈現出來。
首先推導DCT部分遞迴架構,將(31b)中變數u代入後,並利用三角函數和角公式套用至餘弦函數,可得:
為方便推導,將i 表示之,
其中
Chebyshev polynominals定義如下:
sin (rθ)=2sin (r -1)θ‧cos θ-sin (r -2)θ, (34a)
cos (r θ)=2cos (r -1)θ‧cos θ-cos (r -2)θ。 (34b)
接著對公式(33)中遞迴係數使用Chebyshev polynominals(4.2.21a)式代入,可得:
再將公式(35)經由z-transform後,可得:
由公式(32)、公式(35)、公式(36)可得,質數長度RDFT(Prime Length RDFT)之DCT硬體電路架構如圖6所示。
圖6中經由前處理排序後之C k [u ]輸入至DCT遞迴電路架構中,於核心遞迴過程反覆地與固定係數相乘,公式(31b)經過推導向遞迴數學式的過程得到實現於電路架構中之固定係數為2cos θ,其中被固定之角度已與外部計算第k 點譜係數無關,同公式(32)式將遞迴結束後的結果與x [0]相加,可一次產生兩點DCT的譜係數運算。
再繼續推導DST部分遞迴架構,同樣地將公式(31c)中變數u代入後,利用三角函數和角公式套用至正弦函數,可得:
j 表示之
接著對公式(37)中遞迴係數用公式(34b)中的Chebyshev polynominals代入,可得:
將公式(38)經由z-transform後,發現:
由公式(38)、公式(39)可得,Prime Length RDFT之DST硬體電路架構如圖7所示。
圖7中架構與圖6中的DCT遞迴核心架構類似,較大的差別於遞迴結束後無另外相加訊號,由此完成DCT部分運算。
將圖6與圖7架構合併以完成RDFT電路架構的計算,如圖8所示。
圖8為了方便與公式(31a)作對照,輸出級之兩個加法器與乘上j的部分實際上在實現電路時並不存在。
經由前述數學公式的推導,固定係數型Prime Length RDFT電路架構內部之係數角度僅為,故在電路實現時將直接將係數值寫在電路內部,如此可完全節省電路內部係數ROM。
然而單獨利用固定係數演算法雖然節省了係數ROM,但會因此大幅降低其精準度,因此會針對此問題做改善,提升其精準度。
於前述中已介紹作固定係數演算法的結果與好處,但相對的他帶來的負面影響是公式(36)與公式(39)因量化誤差而影響每一個多項式的根,其極點與零點將與系統靈敏度有著極大的關係。當對一個有理系統函數或相應的差分方程的係數量化時,系統函數的零極點在平面就會移動到新的位置上去。如果系統實現結構對係數的擾動具有高的靈敏度,那麼所得到的系統可能就不再滿足原設計指標,甚至一個IIR系統都可能變成是不穩定的。
本發明引入q因子,推導公式(31a)來達成精確度提升的目的。
在取樣的過程中,連續與變化的類比訊號要用數位化的數值來表示,這樣的過程就會產生所謂的量化誤差(Quantization error)。所謂量化誤差指的是實際訊號之振幅(無限精準值)和數位化後(有限長度值)所得數字之間的差異。如果將數位信號還原回類比訊號來看,量化誤差就是一般所謂的失真(Distortion)。可以透過增加取樣大小的方式來降低量化誤差,也就是利用更多的位元(bits)來表示一個數位化訊號的數值,這樣便可以提高精確度。而增加係數位元來容納更精確數值的方法,在實現上必然將會增加電路面積,於現今追求小而美的趨勢為一般人所不樂見的。
在IIR(Infinite impulse response)濾波器係數的量化誤差之另外一個影響會使得系統之零極點發生偏差,在多項式中的所有係數誤差都會影響每一個多項式的根,因此每個極點和零點都將受到分母和分子多項式中所有量化誤差的影響。若極點(或零點)是緊密集中在一起的話,那麼在分母(分子)係數上小的誤差對直接型(Direct form)結構就可能會引起極點(零點)大的偏移。因此,如果這些極點(零點)是緊密集中在一起的話,那麼就能估計到直接型結構的極點對係數量化誤差是非常靈敏的。以Direct form IIR濾波器系統函數為例,其轉移函數為:
公式(40)中,係數a k b k 都是未量化過的無限精準之理想係數值。其中將公式(40)之分母部分A (z )運用因式分解觀念可以表示為:
於公式(41)可得此系統函數之理想極點為z k 。若將公式(40)之係數a k b k 量化,可得量化後之系統函數如下:
其中
=a k a k , (42b)
=b k b k 。 (42c)
引起極點變化的是係數誤差Δa k 。若將公式(42a)之分母部分(z )分解可以表示為:
其中
=z k z k 。 (43b)
公式(41)可得係數經過量化誤差後之極點為,其極點偏移誤差為Δz k 。由公式(42a)至公式(43b)可知,係數量化所產生之誤差Δa k 將導致極點的位置偏移Δz k 。因此,本發明將用係數的變化所引起的極點位置變化率(極點靈敏度)來說明係數量化誤差的影響。
由公式(43a)可知極點z k 將受到所有係數{a 1 ,a 2 ,...,a N )的量化誤差Δa k 影響導致極點偏移Δz k ,如下式:
由公式(44)可知,決定著係數量化誤差對於極點位置偏移的程度,因此,代表著極點靈敏度。接著,可由公式(41)之系統極點多項式A (z )導出極點靈敏度
將極點多項式A (z )對每個係數a i 作偏微分,可得:
其中
將公式(46a)及公式(46b)之結果代回公式(45),可得:
於公式(47)中,分母乘積項(z R -z i )表示極點z R 到其他極點z i 的距離,因此當極點越密集時,極點靈敏度將越高。而在極座標平面上,兩極點在單位圓內之最遠距離為相位相差π角度之時,其靈敏度將為最低,精確度也隨之提升。因此,若能將系統函數之極點多項式各極點調至距離最遠將能有效提升此濾波器之精確度。
由前述已推導出極點與系統靈敏度的關係,本發明係藉由引入q factor,以解決固定係數演算法造成的精確度過低之缺陷,最後呈現以q factor改良後之固定係數型Prime Length RDFT電路架構。
首先取公式(36)及公式(39)中之極點多項式定義為P (z )並求其解,如下:
P (z )=1-2cos θz -1 +z -2 =(z -1 -eθ )(z -1 -e )。 (48)
由公式(48)可得兩極點為
z 1 =e θ , (49a)
z 2 =e , (49b)
其中
公式(49a)、公式(49b)互為共軛,而其最小徑度差為:
其極點於及座標平面上位置及夾角如圖9所示。
而若公式(50)中之N 越大,則φ隨之減小,根據公式(47)所示,如此極點距離將更為接近,導致靈敏度的增加。如圖10及圖11係以N =37與N =113時,極點位置、夾角與點數N的關係之示意圖。
由圖10及圖11結果可知,因執行固定係數演算法的過程當中,不斷地根據係數對稱性而縮減可表示的係數角度θ範圍,如此導致極點多項式P (z )之極點更為接近,才使得固定係數演算法有降低精準度的缺點。因為係數量化後極點有此特性,因此本發明利用q factor的技巧以調整極點位置。
q factor概念是既然極點位置將如此接近,因此可將其係數角度乘上一數以控制各極點之距離為最遠,如此系統精確度將獲得改善。以下將敘明q factor的數值該如何選擇。
兩極點最遠理想距離為φ=π時,先定義經q factor調整後之固定係數角度為,則公式(50)可改寫為:
φ=-(-)=π, (51a)
由公式(51a)可得需為π/2
公式(51b)中可推得理想的q factor數值:
為了維持同餘性質,q factor必須與N互質,而於本發明中N 為質數,因為質數與任何正整數皆為互質,故q為任意正整數,基於以上理由,公式(51c)必須重寫為:
此外,將公式(51d)代回公式(51a)、公式(51b),可得兩極點間之徑度為:
由公式(51e)可預知當點數N 越大時,與公式(50)之φ改善角度越大,因此其精確度獲得的提升程度越顯著。將乘上q factor之代回公式(49a)及公式(49b),改善後的極點位置與距離,如圖12所示。圖12係經q factor調整後,極點位置、夾角與點數N的關係之示意圖。
於公式(51d)決定了本發明所適用之q factor後,以下將由公式(31a)之係數角度值乘上q factor開始推導。公式(31a)重寫為:
其中X DCT X DST 改為
由於公式(52a)中係數角度乘上q factor後其之角度將會大於π/2,必須以此角度再做一次固定係數演算法。
首先推導DCT部分遞迴架構,由公式(52b)可得:
其中
公式(53c)為前次作固定係數演算法後,第k =(N -1)/2排之係數索引值u +1=F (n ,(N -1)/2)乘上q再作第二次固定係數演算法得到的新索引值(u ),公式(53b)將根據此新索引值及公式(53d)重新排序C k
於是,可以將公式(53a)整理成如下:
其中
接著公式(54)中變數代入後,並利用三角函數和角公式套用至餘弦函數,可得:
在前述提及到q factor可為任意正整數,公式(55)將因q factor為奇、偶數的情況產生不同的數學模型。以下基於公式(55)分別對X DCT 之q為奇數和偶數作推導。
當q factor為奇數時,公式(55)寫成並推導遞迴式如下:
其中
接著對公式(57)之使用公式(34a)中的Chebyshev polynominals代入,可得在q factor為奇數時,DCT部分遞迴計算式A i (k )如下:
將公式(58)式經由Z-transform後,可得:
對照公式(36)與公式(59)可知q factor為奇數時,其遞迴架構沒有改變,但q factor為奇數的情況下做完遞迴後必須乘上判斷正負號,如圖13所示。圖13係為q為奇數時,Fixed-Coefficient Prime Length RDFT之DCT架構之示意圖。
而當q factor為偶數時,公式(55)寫成並推導遞迴式如下:
其中
接著對公式(61)之使用公式(34a)中的Chebyshev polynominals代入,可得在q factor為偶數時,DCT部分遞迴計算式B i (k )如下:
將公式(62)經由z-transform後,可得:
由公式(63)觀察可知q factor為偶數時,其與公式(39)中未有q之DST具有相同的遞迴架構,差別在於遞迴結束須乘上正負號,如圖14所示。圖14係q為偶數時,Fixed-Coefficient Prime Length RDFT之DCT架構之示意圖。
對於DST部分架構之推導,由公式(52c)可得:
其中
接著,可以將公式(64a)整理成如下:
其中
接著將變數代入公式(65)後,並利用三角函數和角公式套用至正弦函數,可得:
公式(66)也將因q factor為奇、偶數的情況產生不同的數學模型。以下基於公式(66)分別對X DST 之q為奇數和偶數作推導。
當q factor為奇數時,公式(66)寫成並推導遞迴式如下:
其中
接著對公式(68)之使用公式(34a)中的Chebyshev polynominals代入,可發現當q factor為奇數時,DST部分遞迴計算式C i (k )可展開如下:
將公式(69)經由z-transform後,可得:
對照公式(39)與公式(70)可知q factor為奇數時,其遞迴架構沒有改變,但q factor為奇數的情況下做完遞迴後必須乘上判斷正負號,如圖15所示。圖15係當q為奇數時,Fixed-Coefficient Prime Length RDFT之DST架構之示意圖。
而當q factor為偶數時,公式(66)改寫成並推導遞迴式如下:
其中
接著對公式(72)之使用公式(34a)中的Chebyshev polynominals代入,可發現當q factor為偶數時,DST部分遞迴計算式D i (k )可展開如下:
將公式(73)經由z-transform後,可得:
由公式(74)觀察可知q factor為偶數時,其與公式(36)中未有q之DCT具有相同的遞迴架構,差別在於遞迴結束須乘上正負號,如圖16所示。圖16係當q為偶數時,Fixed-Coefficient Prime Length RDFT之DST架構之示意圖。
綜合以上結果,可以明顯地發現,
當q為奇數時:A i (k )=D i (k ),而在遞迴式外皆須乘上
當q為偶數時:B i (k )=C i (k ),而在遞迴式外皆須乘上
此外,因A i (k )、B i (k )為X DCT [k ]之遞迴式,必須最後與x [0]作相加。
因此,圖13、圖14、圖15、圖16可整合為圖17所示。圖17係本發明加入q factor後,Fixed-Coefficient Prime Length RDFT架構之示意圖。
圖17中前端經由多工器選擇當q為奇數或偶數時,進行輸入訊號的切換:並在當計算DCT時,後端多工器選擇x [0]的輸入。
圖17對照圖8,固定係數型Prime Length RDFT電路架構內部之係數角度由變更為,除了必須另外判斷q factor為奇數、偶數和x [0]輸入的多工器外,整體架構上大致維持原貌,但圖17之電路架構因透過q factor調整極點位置而可使得計算精確度獲得提升。
前面說明已經完整介紹固定係數型Prime Length RDFT方法的推導及架構,並且提出q factor來改善固定係數型架構精確度過低之缺點。
在前面說明僅探討2cos 係數,皆未提及係數與係數。圖18 RDFT架構中共用乘法器之示意圖。由圖18可知固定係數型Prime Length RDFT架構計算這些係數需要用到8個實數乘法器,但經過觀察可發現,當在遞迴部分2cos 係數作完乘法運算結束時,係數或係數才會使用到乘法器作計算,若在硬體實現上真的使用二個乘法器來計算2cos 係數與係數,對於後者的乘法器而言不僅效率非常差,且在電路面積及功耗上都是一種浪費。由表3可知,暫存器與多工器的電晶體數遠小於乘法器的電晶體數,故將利用暫存器及多工器完成2cos 係數與係數之乘法器共用,相對的代價為額外付出一個週期來執行係數的乘法運算,由於此架構具備最短計算週期之優點,額外付出少量計算週期是可接受的。圖18呈現在乘法器共用時暫存器所擺放的位置,圖19為乘法器共用之實現方式之示意圖。
經此改良,實數乘法器個數將由圖17中需求8個乘法器降低至圖18中只需4個乘法器,並使乘法器效率達百分之百,且在面積與功率方面皆有很大改善。
而經由此乘法器共用設計後,實數計算之DCT與DST架構中共用乘法器需增加4個多工器、2個暫存器,而因為複數輸入需要另外一套相同的硬體來執行複數計算,故所需付出的代價是整體額外多出8個多工器、4個暫存器。由表3可知乘法器的電晶體數遠大於暫存器與多工器的電晶體數,在此設計中以增加8個多工器與4個暫存器來節省4個乘法器,最後只需額外付出一個計算週期,因架構已具有最短計算週期,而額外增加的計算週期並不會影響其優勢,故此設計將是可行的。
由前述說明,可將本發明整體架構繪製成如圖20。圖20係本發明之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統100之一實施例的方塊圖。固定係數型可變質數長度遞迴式離散傅立葉轉換之系統100可區分成前處理裝置110、實部計算裝置120、虛部計算裝置130、後端處理裝置140。前處理裝置110兩個圓圈中,上面的圓圈代表前處理將原複數訊號x [n ]拆為實部輸入與虛部輸入,下面的圓圈代表前處理除了將x [n ]拆成實虛部輸入之外,並根據前述的公式將C k []和S k []排序出來。
實部計算裝置120及虛部計算裝置130各分為獨立計算X [0]的簡單累加器、計算X [1]~X [N -1]的DCT與DST處理核心。因為實部計算裝置120及虛部計算裝置130的DCT與DST皆一次產生兩點,並有虛部核心硬體的計算結果,因此後端處理裝置140將其交叉相加並組合為複數輸出結果,而X [0]的後端處理(2001)僅是將實虛部結果組合為複數。
由前述說明及圖20可知,該實部計算裝置120及該虛部計算裝置130具有相同硬體架構。
該實部計算裝置120具有一第一加法器2010與一第一遲延器2011,該虛部計算裝置130具有一第一加法器與一第一遲延器(圖未示)。該實部計算裝置120的第一加法器2010與第一遲延器2011及該虛部計算裝置的第一加法器與第一遲延器用以計算該N個輸出訊號(X[k])的第一個輸出訊號(X[0])。
該實部計算裝置120具有一第一遞迴式離散餘弦/正弦運算裝置2030及一第二遞迴式離散餘弦/正弦運算裝置2050。
當一精準度因子(q factor)為奇數時,該第一遞迴式離散餘弦/正弦運算裝置2030對該第一暫時訊號(ck [])的實數部分執行遞迴式離散餘弦(DCT)運算,當該精準度因子(q factor)為偶數時,該第一遞迴式離散餘弦/正弦運算裝置2030對該第二暫時訊號(sk [])的實數部分執行遞迴式離散正弦(DST)運算。
當該精準度因子(q factor)為奇數時,該第二遞迴式離散餘弦/正弦運算裝置2050對該第二暫時訊號(sk [])的實數部分執行遞迴式離散正弦(DST)運算,當該精準度因子(q factor)為偶數時,該第二遞迴式離散餘弦/正弦運算裝置2050對該第一暫時訊號(ck [])的實數部分執行遞迴式離散餘弦(DCT)運算。
該第一遞迴式離散餘弦/正弦運算裝置2030具有:一第一多工器2031、一第二加法器2033、一第二遲延器2035、一第三加法器2037、一第一暫存器2039、一第一共用乘法裝置2041、一第三遲延器2043、一第四加法器2045、一第二多工器2047、及一第五加法器2049。
該第一多工器2031連接至該前處理裝置110,以接收該第一暫時訊號(ck [])的實數部分及該第二暫時訊號(sk [])的實數部分,並產生一第一多工訊號。
該第二加法器2033連接至該第一多工器2031,以對該第一多工訊號與一第四加法訊號進行加法運算,而產生一第二加法訊號。
該第二遲延器2035連接至該第二加法器2033,以對該第二加法訊號進行遲延運算,而產生一第二遲延訊號。
該第三加法器2037連接至該第二加法器2033及該第二遲延器2035,以對該第二加法訊號與該第二遲延訊號進行加法運算,而產生一第三加法訊號。
該第一暫存器2039連接至該第三加法器2037,以暫存該第三加法訊號,而產生一第一暫存訊號。
該第一共用乘法裝置2041連接至該第一暫存器2039及該第二遲延器2035,以對該第二遲延訊號或該第一暫存訊號進行乘法運算,而產生一第一乘法訊號。
該第三遲延器2043連接至該第二遲延器2035,以對該第二遲延訊號進行遲延運算,而產生一第三遲延訊號。
該第四加法器2045連接至該第一共用乘法裝置2045及該第三遲延器2043,而產生該第四加法訊號。
該第二多工器2047接收該N個數位訊號(x[n])的第一個輸入數位訊號(x[0])及一常數,依據該精準度因子(q factor)而產生一第二多工訊號。
該第五加法器2049連接至該第一共用乘法裝置2041及該第二多工器2047,對該第一乘法訊號及該第二多工訊號進行加法運算,而產生該第五加法訊號。
當該精準度因子(q factor)為奇數時,該第一多工器2031輸出該第一暫時訊號(ck [])的實數部分,以產生該第一多工訊號,該第二多工器2047輸出該第一個輸入數位訊號(x[0]),以產生該第二多工訊號。當該精準度因子(q factor)為偶數時,該第一多工器2031輸出該第二暫時訊號(sk [])的實數部分,以產生該第一多工訊號,該第二多工器2047輸出該常數,以產生該第二多工訊號。
該第二遞迴式離散餘弦/正弦運算裝置2050包括一第三多工器2051、一第六加法器2053、一第四遲延器2055、一第七加法器2057、一第二暫存器2059、一第二共用乘法裝置2061、一第五遲延器2063、一第八加法器2065、一第四多工器2067、及一第九加法器2069。
該第三多工器2051連接至該前處理裝置110,以接收該第一暫時訊號(ck [])的實數部分及該第二暫時訊號(sk [])的實數部分,並產生一第三多工訊號。
該第六加法器2053連接至該第三多工器2051,以對該第三多工訊號與一第八加法訊號進行加法運算,而產生一第六加法訊號。
該第四遲延器2055連接至該第六加法器2053,以對該第六加法訊號進行遲延運算,而產生一第四遲延訊號。
該第七加法器2057連接至該第六加法器2053及該第四遲延器2055,以對該第六加法訊號與該第四遲延訊號進行加法運算,而產生一第七加法訊號。
該第二暫存器2059連接至該第七加法器2057,以暫存該第七加法訊號,而產生一第二暫存訊號。
該第二共用乘法裝置2061連接至該第二暫存器2059及該第四遲延器2055,以對該第四遲延訊號或該第二暫存訊號進行乘法運算,而產生一第二乘法訊號。
該第五遲延器2063連接至該第四遲延器2055,以對該第四遲延訊號進行遲延運算,而產生一第五遲延訊號。
該第八加法器2065連接至該第二共用乘法裝置2061及該第五遲延器2063,而產生該第八加法訊號。
該第四多工器2067接收該N個數位訊號(x[n])的第一個輸入數位訊號(x[0])及一常數,依據該精準度因子(q factor)而產生一第四多工訊號。
該第九加法器2069連接至該第二共用乘法裝置2061及該第四多工器2067,以對該第二乘法訊號及該第四多工訊號進行加法運算,而產生該第九加法訊號。
當該精準度因子(q factor)為奇數時,該第三多工器2051輸出該第二暫時訊號(sk [])的實數部分,以產生該第三多工訊號,該第四多工器2067輸出該常數,以產生該第四多工訊號,當該精準度因子(q factor)為偶數時,該第三多工器2051輸出該第一暫時訊號(ck [])的實數部分,以產生該第三多工訊號,該第四多工器2067輸出該第一個輸入數位訊號(x[0]),以產生該第四多工訊號。
請參閱圖19,圖19係本發明共用乘法裝置之電路圖。該第一共用乘法裝置2041及該第二共用乘法裝置2061具有相同硬體架構。
該第一共用乘法裝置2041包括一第五多工器1901、一第六多工器1903、一乘法器1905。
該第五多工器1901具有一第一輸入端節點A)連接至該第二遲延器,及一第二輸入端(節點B)連接至該第一暫存器,以選擇該第二遲延訊號或該第一暫存訊號,俾產生一第五多工訊號。
該第六多工器1903具有一第一輸入端接收一餘弦係數(2cos()),及一第二輸入端接收一正弦係數(),而產生一第六多工訊號。
該乘法器,連接至該第五多工器1901及該第六多工器1903,以對該第五多工訊號進行正弦係數乘法運算或餘弦係數乘法運算。
請參閱圖20,以該實部計算裝置120為例,其硬體計算資料流程如下:在重置(Reset)後,
1. 於一開始將會運算k =0之DFT轉換,由簡易累加電路架構來負責,依據公式(2)其在每個計算週期累加一筆輸入x [n ],當累加N 次花費N 個計算週期後將X [0]結果輸出。
2. 重置的同時,DCT與DST的處理核心電路也將開始計算k =1之DFT轉換,於第一個計算週期一開始C 1 [0]與S 1 [0]同時輸入。
3. 多工器將判斷當q factor為奇數時,允許C 1 [0]與S 1 [0]分別輸入至DCT與DST遞迴架構內做計算,而當q factor為偶數時,允許C 1 [0]與S 1 [0]分別輸入至DST與DCT遞迴架構內做計算,如此完成訊號互換的動作。
4. C 1 [0]與S 1 [0]輸入至架構內開始作遞迴,共遞迴個計算週期,並於每次遞迴中與固定係數2cos 相乘。
5. 同樣於遞迴第次的最後,將相加(於DST架構為相減)兩個暫存器內的值並相其值存入下一級暫存器中,此時乘法器工作結束。
6. 由共用乘法裝置2041、2061的設計可知,為了與步驟(4)中的2cos 係數作乘法器共用,必須多付出1個計算週期,將暫存器內的值取出與(DST架構為)相乘,並在其後作DST架構為)的正負號調整。
7. 由公式(52b)可知,計算X DCT [k ]必須在計算最後與x [0]作相加,此時多工器判斷若架構為作DCT計算,則允許x [0]與結果相加;若否,則為作DST計算,則以0相加。
8. 根據公式(3)與公式(5),步驟(7)之結果可以接線方式直接一次輸出兩點X DCT [k ]、X DCT [N -k ],X DST [k ]、X DST [N -k ],並將結果送至後端處理硬體部分作訊號相加。
9. 後端處理如圖21所示,圖21係本發明後處理裝置140之運作的示意圖,其將實部架構的第[k ]點結果與虛部架構之第[k ]點結果相加(紅虛線),第[N -k ]點亦同(綠虛線),而為了還原一組複數結果,將每點的實部與虛部值,以一組32bits字長表示一點複數結果,前16bits(0~15)為虛部結果,後16bits(16~31)為實部結果。如此便獲得X [1]與X [N -1]點的值,總和計算兩點其過程所花費的計算週期為
10.接著續由步驟(2)至步驟(9)的動作開始計算X [2],可得X [2]、X [N -2]點之結果。如此重複直至計算完及其對稱點,將計算N 點其過程所花費之計算週期為
於習知技術中,Yang & Chen為過去使用固定係數演算法之方法,而Curtis & Wickenden為過去同樣為作質數長度RDFT之習知技術。由於本發明設計僅支援質數長度,因此以下比較數據將以本發明所應用之N =37/41/53/67/113作為點數依據,藉此來佐證所提出的發法及硬體架構於質數長度下確有良好的效率,數據方面將針對計算週期、係數ROM需求、硬體成本需求、計算複雜度以及精確度等各種資料來比較分析。
RDFT計算週期需求評估與比較:
假設DFT轉換規格點數為N ,若以Goertzel所提的演算法進行轉換,其計算週期需求為N ×(N +1)個;若以Curtis所提的演算法進行轉換,當輸入資料已完成前處理下,其計算週期需求為N 2 個;若以Yang et al.所提的演算法進行轉換,其計算週期需求為N 2 個;以Lai et al.所提的演算法進行轉換,其計算週期需求為(N -1)(N +1)/2個。對於本發明提出的架構而言,計算週期需求如公式(75)所示:
至於比較資料,主要是以本發明所應用之N =37/41/53/67/113規格點數進行比較,比較結果如表6.1.1所示:
藉由表6.1.1之結果可進一步算出週期改善率,如表6.1.2所示。依據表6.1.2所示,可明顯發現本發明提出的架構於質數長度的DFT計算中,其整體效率相較於其他習知技術都有50.00%以上的改善倍率。
係數需求量與比較:
將比較各方法以探討其架構內需要記憶的係數需求量。一般的作法,會利用晶片內建記憶元件ROM由來儲存事先已算好的係數,再由查表法(Look-up Table,LUT)來提供轉換時架構內查詢所需之係數。記憶元件對於晶片實現面積有極大影響,因此係數需求量於硬體效能指標中具有重大意義。
硬體架構內所需之係數需求量可由方法最後呈現之轉移函數與架構圖估算之,將轉移函數或架構內使用到之cosin係數、sine係數總和起來與外部點數索引k 之範圍相乘可估算出係數需求量。以Goertzel方法來說,其需作索引值k 從0~N -1的N 個點數,而架構內用到之係數為兩種,故係數需求數為N ×2=2N 個;對Lai et al.來說,當N 為奇數時,X [0]需另外計算,而當N 為偶數時,X [N /2]需另外計算,又其輸出為一次兩點,因此其外部點數k 為(N -1)/2個點數,架構內用到之係數為cosine、sine兩種,故係數需求數為2×((N -1)/2)=N -1個;對於其他習知技術Yang及Curtis,評估方式大同小異,在此不詳述。
於表6.1.3中列出各習知技術係數需求量通式以便於比較使用,習知技術Curtis中其係數需求量雖為0,但其係數將因N 的不同而需其餘兩個變數來重新設計以符合所需之係數值;而本發明所提出的架構具固定係數能力,可無需儲存任何係數值,其結果如表6.2.1所示。
由表6.2.1之比較結果,本發明所提出的固定係數架構其係數需求量皆無任何需求,這代表此架構在晶片實現上能夠節省掉係數ROM之面積需求,以達到降低成本的目的。
RDFT硬體需求與計算複雜度分析:
除了記憶元件ROM會對晶片面積有所影響外,其架構硬體需求也是其中一種因素考量,將針對習知技術Goertzel、Curtis、Yang、Lai、及本發明所提出之硬體架構進行乘法器與加法器數量評估,藉由評估結果再進一步由各種方法推算出之其計算複雜度。
因複雜度是基於硬體評估之結果求得,因此首先要將硬體所需資源計算出來。Goertzel方法其架構包含8個實數加法器及6個實數乘法器;Curtis方法架構在不含前處理情況下,包含第0點的情況下其硬體需求為6個實數加法器及6個實數乘法器:Yang et al.方法架構在不含前處理情況下,其硬體需求為12個實數加法器及6個實數乘法器;Lai et al.方法架構,其硬體需求為13個實數加法器及2個實數乘法器。
對於本發明所提出的架構,可以直接在圖20與圖21得知因架構將DFT拆為DCT與DST來實現,因此整體需有21個實數加法器,而因為乘法器共用的改良使得只需4個實數乘法器:完整的硬體評估結果如表6.3.1所示,表中除了列出乘法器與加法器個數外,也將前述所比較之係數需求量及每個演算法的每一轉換之資料流量(Data Throughput per Transformation,DTPT)一同列在表6.3.1。
由表6.3.1之比較結果,本發明所提出之架構雖然加法器數量多於其他習知技術,但在乘法器數量方面,因共用乘法器的改良而仍優於Goertzel、Yang、及Curtis,並且無需花費任何記憶體儲存係數,且因只需計算一半點數,因此DTPT可達到兩倍的效能。
由表6.3.1結果,可利用硬體個數來計算硬體複雜度,其基本評估方式為遞迴核心所需之計算週期數乘上硬體需求數,再乘上所需計算的點數次數,最後因複數計算使用實虛部架構各一套計算,故需多乘上2,但因架構內並不是所有值皆遞迴相同次數,故需將不同遞迴次數的部分獨立計算後相加。以基本的Goertzel方法為例,來說明如何詳細的計算架構整體的計算複雜度,對於其他習知技術部分,可參考此例方式來評估或直接引用習知技術的評估結果,最後再介紹本架構的計算複雜度,其評估結果如表6.3.2及表6.3.3所示。
以Goertzel方法為例,首先為加法計算複雜度,因為主要遞迴核心之計算週期為N +1次,因此左半邊之2個加法器運算需經過遞迴N +1個計算週期,其小計為2(N +1)次,而右半邊的加法器實際上要等左半邊遞迴N +1後才取其值作加法運算,因此右半邊的加法器運算量為1次,將係數展開實際上包含1個加法運算,計算週期目前小計為2(N +1)+2,此為作一點RDFT計算所需之加法計算量,因為總共有N 點,故計算週期為N ×(2(N +1)+2),又因訊號為複數,需額外付出一套計算量,所以最終加法計算量為2N ×(2(N +1)+2)。
相同方式計算乘法計算量,左半邊存在一個係數2cos θ k ,需使用1次乘法,經過N +1個遞迴週期,其小計為N +1次,右半邊包含cos θ k sin θ k 兩個係數,需使用兩次乘法,週期小計為(N +1)+2,
總共有N 點,故計算週期為N ×((N +1)+2),因複數訊號必須多一套,最終乘法計算量為2N ×((N +1)+2)。
參照圖20,本發明所提出之RDFT架構其加法計算複雜度與乘法計算複雜度算法如下;
加法計算量:
1. 計算X [0]之簡易累加器其具有1個加法器並遞迴N 次,包含複數運算後加法計算量為2N 次。
2. DCT架構中左半邊存在2個加法器並遞迴次,計算量小計為N -1;右半邊存在2個加法器,計算量小計為(N -1)+2;因總共只需計算點,計算量小計為,包含複數運算後加法計算量為N -1×((N -1)+2)。
3. DST架構所需的硬體資源與DCT相同,因此其加法計算量與DCT同,為N -1×((N -1)+2)。
4. 圖21中,後端處理存在4個加法器,因總共需計算點,加法計算量為2(N -1)。
5. 將步驟(1)至步驟(4)的加法計算量加總後,整體架構之加法計算量為2N (N +2)次。
乘法計算量:
1.DCT架構中左半邊存在1個係數2cos 次,需使用一次乘法,並遞迴次,計算量小計為次;右半邊存在1個加法器,計算量小計為;因總共只需計算點,計算量小計為次,包含複數運算後乘法計算量為
2.DST架構所需的硬體資源與DCT相同,因此其乘法計算量與DCT同,為
3. 將步驟(1)至步驟(4)的乘法計算量加總後,整體架構之加法計算量為(N -1)(N +1)次。
由表6.3.4可知,本發明所提出的RDFT架構其加法計算複雜度方面與其他習知技術比較至少皆有49.34%以上的改善率,在乘法計算複雜度方面除了些微高於Lai之外,對於其他習知技術皆有50.87%以上的改善率。
由表6.1.1可知,若Lai的硬體資源加倍,其硬體耗費些微高於此論文架構,且其計算週期數將縮短至與此架構相當,但在計算複雜度方面,其加法與乘法的高計算量將甚為嚴重,故在此方面考量下所提出之架構依然具有優勢。
PSNR精確度分析與FPGA數據:
精確度評估方面將依據峰值信噪比(Peak Signal to Noise Ratio,PSNR)做模擬與分析,PSNR是一個表示信號最大可能功率和與影響信號表示精度的破壞性噪聲功率的比值所使用的工程術語。由於許多信號都有非常寬的動態範圍,峰值信噪比常用對數分貝單位來表示。因類比訊號(理想數值)與經過硬體運算(訊號量化)後的數位訊號之間必然存在誤差,為了確保系統持有高精確度之優點,因此需要作精確度的分析。PSNR定義如公式(76)所示:
其中,
符號定義為:I (i,j )表示為理想訊號、K (i,j )表示為實際訊號。
本發明節利用q factor以有效提升其精確度,硬體計算結果的PSNR值在選擇理想的q值()之下能夠達到提升,其中當點數N 越大,改善之極點距離越大,PSNR值提升的幅度也隨之上升,以隨機訊號1000組輸入之分析結果如表6.3.5。在硬體設計規劃方面,係數及訊號字組長度(Word-Length)皆採取16-bits,輸出字組長度為32-bits(0~15-bits為虛部結果,16~31-bits為實部結果)。
由前述比較可知,本發明之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統係可實現出具有低面積、低複雜度及高效能的RDFT,由先前比較結果可得知,其整體效率相較於其他習知技術都有50.00%以上的改善倍率。同時,本發明所提出的固定係數架構其係數需求量皆無任何需求,這代表此架構在晶片實現上能夠節省掉係數ROM之面積需求,以達到降低成本的目的。本發明所提出的RDFT架構其加法計算複雜度方面與其他習知技術比較至少皆有49.34%以上的改善率,在乘法計算複雜度方面除了些微高於Lai之外,對於其他習知技術皆有50.87%以上的改善率。
由上述可知,本發明無論就目的、手段及功效,在在均顯示其迥異於習知技術之特徵,極具實用價值。惟應注意的是,上述諸多實施例僅係為了便於說明而舉例而已,本發明所主張之權利範圍自應以申請專利範圍所述為準,而非僅限於上述實施例。
100...固定係數型可變質數長度遞迴式離散傅立葉轉換之系統
110...前處理裝置
120...實部計算裝置
130...虛部計算裝置
140...後處理裝置
2010...第一加法器
2011...第一遲延器
2030...第一遞迴式離散餘弦/正弦運算裝置
2050...第二遞迴式離散餘弦/正弦運算裝置
2031...第一多工器
2033...第二加法器
2035...第二遲延器
2037...第三加法器
2039...第一暫存器
2041...第一共用乘法裝置
2043...第三遲延器
2045...第四加法器
2047...第二多工器
2049...第五加法器
2051...第三多工器
2053...第六加法器
2055...第四遲延器
2057...第七加法器
2059...第二暫存器
2061...第二共用乘法裝置
2063...第五遲延器
2065...第八加法器
2067...第四多工器
2069...第九加法器
1901...第五多工器
1903...第六多工器
1905...乘法器
圖1係本發明之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統之示意圖。
圖2係一正弦函與一餘弦函數數值的示意圖。
圖3係另一正弦函與一餘弦函數數值的另一示意圖。
圖4係習知RDFT運算的示意圖。
圖5係本發明之固定係數型RDFT運算的示意圖。
圖6係本發明質數長度RDFT之DCT硬體電路架構的示意圖。
圖7係本發明質數長度RDFT之DST硬體電路架構的示意圖。
圖8係本發明圖6及圖7的合併電路架構的示意圖。
圖9係本發明極點於及座標平面上位置及夾角的示意圖。
圖10係本發明極點位置、夾角與點數N的關係的示意圖。
圖11係本發明極點位置、夾角與點數N的關係圖的示意圖。
圖12係本發明經q factor調整後極點位置、夾角與點數N的關係的示意圖。
圖13係本發明q為奇數時,Fixed-Coefficient Prime Length RDFT之DCT架構之示意圖。
圖14係本發明q為偶數時,Fixed-Coefficient Prime Length RDFT之DCT架構之示意圖。
圖15係本發明當q為奇數時,Fixed-Coefficient Prime Length RDFT之DST架構之示意圖。
圖16係本發明當q為偶數時,Fixed-Coefficient Prime Length RDFT之DST架構之示意圖。
圖17係本發明加入q factor後,Fixed-Coefficient Prime Length RDFT架構之示意圖。。
圖18係本發明RDFT架構中共用乘法器之示意圖。
圖19係本發明共用乘法器之實現方式之示意圖。
圖20係本發明之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統之一實施例的方塊圖。
圖21係本發明後處理裝置之運作的示意圖
100...固定係數型可變質數長度遞迴式離散傅立葉轉換之系統
110...前處理裝置
120...實部計算裝置
130...虛部計算裝置
140...後處理裝置

Claims (12)

  1. 一種固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其包括:一前處理裝置,其接收N個輸入數位訊號(x[n]),對該N個輸入數位訊號執行次序排列運算,以產生第一暫時訊號(ck )及第二暫時訊號(sk ),當中N為質數;一實部計算裝置,連接至該前處理裝置,其接收該第一暫時訊號(ck )的實數部分及該第二暫時訊號(sk )的實數部分,以執行遞迴式離散餘弦/正弦運算,俾產生第三暫時訊號及第四暫時訊號;一虛部計算裝置,連接至該前處理裝置,其接收該第一暫時訊號(ck )的虛數部分及該第二暫時訊號(sk 的虛數部分,以執行遞迴式離散餘弦/正弦運算,俾產生第五暫時訊號及第六暫時訊號;以及一後處理裝置,連接至該實部計算裝置及該虛部計算裝置,接收該第三暫時訊號、該第四暫時訊號、該第五暫時訊號及該第六暫時訊號,以對該第三暫時訊號、該第四暫時訊號、該第五暫時訊號及該第六暫時訊號執行次序排列及加法運算,而產生N個輸出訊號(X[k]);其中,該N個輸出訊號(X[k])係該N個輸入數位訊號x[n]的離散傅立葉轉換。
  2. 如申請專利範圍第1項所述之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其中,該實部計算裝置及該虛部計算裝置具有相同硬體架構。
  3. 如申請專利範圍第2項所述之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其中,該實部計算裝置具有一第一加法器與一第一遲延器,該實部計算裝置的第一加法器與第一遲延器及該虛部計算裝置的第一加法器與第一遲延器用以計算該N個輸出訊號(X[k])的第一個輸出訊號(X[0])。
  4. 如申請專利範圍第3項所述之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其中,該實部計算裝置具有一第一遞迴式離散餘弦/正弦運算裝置及一第二遞迴式離散餘弦/正弦運算裝置。
  5. 如申請專利範圍第4項所述之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其中,當一精準度因子(q factor)為奇數時,該第一遞迴式離散餘弦/正弦運算裝置對該第一暫時訊號(ck )的實數部分執行遞迴式離散餘弦(DCT)運算,當該精準度因子(q factor)為偶數時,該第一遞迴式離散餘弦/正弦運算裝置對該第二暫時訊號(sk )的實數部分執行遞迴式離散正弦(DST)運算。
  6. 如申請專利範圍第5項所述之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其中,當該精準度因子(q factor)為奇數時,該第二遞迴式離散餘弦/正弦運算裝置對該第二暫時訊號(sk )的實數部分執行遞迴式離散正弦(DST)運算,當該精準度因子(q factor)為偶數時,該第二遞迴式離散餘弦/正弦運算裝置對該第一暫時訊號(ck )的實數部分執行遞迴式離散餘弦(DCT)運算。
  7. 如申請專利範圍第6項所述之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其中,該第一遞迴式離散餘弦/正弦運算裝置具有:一第一多工器,連接至該前處理裝置,以接收該第一暫時訊號(ck )的實數部分及該第二暫時訊號(sk )的實數部分,並產生一第一多工訊號;一第二加法器,連接至該第一多工器,以對該第一多工訊號與一第四加法訊號進行加法運算,而產生一第二加法訊號;一第二遲延器,連接至該第二加法器,以對該第二加法訊號進行遲延運算,而產生一第二遲延訊號;一第三加法器,連接至該第二加法器及該第二遲延器,以對該第二加法訊號與該第二遲延訊號進行加法運算,而產生一第三加法訊號;一第一暫存器,連接至該第三加法器,以暫存該第三加法訊號,而產生一第一暫存訊號;一第一共用乘法裝置,連接至該第一暫存器及該第二遲延器,以對該第二遲延訊號或該第一暫存訊號進行乘法運算,而產生一第一乘法訊號;一第三遲延器,連接至該第二遲延器,以對該第二遲延訊號進行遲延運算,而產生一第三遲延訊號;一第四加法器,連接至該第一共用乘法裝置及該第三遲延器,以對該第一乘法訊號及該第三遲延訊號進行加法運算,而產生該第四加法訊號; 一第二多工器,接收該N個數位訊號(x[n])的第一個輸入數位訊號(x[0])及一常數,依據該精準度因子(q factor)而產生一第二多工訊號;以及一第五加法器,連接至該第一共用乘法裝置及該第二多工器,對該第一乘法訊號及該第二多工訊號進行加法運算,而產生該第五加法訊號。
  8. 如申請專利範圍第7項所述之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其中,當該精準度因子(q factor)為奇數時,該第一多工器輸出該第一暫時訊號(ck )的實數部分,以產生該第一多工訊號,該第二多工器輸出該第一個輸入數位訊號(x[0]),以產生該第二多工訊號,當該精準度因子(q factor)為偶數時,該第一多工器輸出該第二暫時訊號(sk )的實數部分,以產生該第一多工訊號,該第二多工器輸出該常數,以產生該第二多工訊號。
  9. 如申請專利範圍第8項所述之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其中,該第二遞迴式離散餘弦/正弦運算裝置包括:一第三多工器,連接至該前處理裝置,以接收該第一暫時訊號(ck )的實數部分及該第二暫時訊號(sk )的實數部分,並產生一第三多工訊號;一第六加法器,連接至該第三多工器,以對該第三多工訊號與一第八加法訊號進行加法運算,而產生一第六加法訊號; 一第四遲延器,連接至該第六加法器,以對該第六加法訊號進行遲延運算,而產生一第四遲延訊號;一第七加法器,連接至該第六加法器及該第四遲延器,以對該第六加法訊號與該第四遲延訊號進行加法運算,而產生一第七加法訊號;一第二暫存器,連接至該第七加法器,以暫存該第七加法訊號,而產生一第二暫存訊號;一第二共用乘法裝置,連接至該第二暫存器及該第四遲延器,以對該第四遲延訊號或該第二暫存訊號進行乘法運算,而產生一第二乘法訊號;一第五遲延器,連接至該第四遲延器,以對該第四遲延訊號進行遲延運算,而產生一第五遲延訊號;一第八加法器,連接至該第二共用乘法裝置及該第五遲延器,以對該第二乘法訊號及該第五遲延訊號進行加法運算,而產生該第八加法訊號;一第四多工器,接收該N個數位訊號(x[n])的第一個輸入數位訊號(x[0])及一常數,依據該精準度因子(q factor)而產生一第四多工訊號;以及一第九加法器,連接至該第二共用乘法裝置及該第四多工器,以對該第二乘法訊號及該第四多工訊號進行加法運算,而產生該第九加法訊號。
  10. 如申請專利範圍第9項所述之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其中,當該精準度因子(q factor)為奇數時,該第三多工器輸出該第二暫時訊號(sk )的實數部分,以產生該第三多工訊號,該 第四多工器輸出該常數,以產生該第四多工訊號,當該精準度因子(q factor)為偶數時,該第三多工器輸出該第一暫時訊號(ck )的實數部分,以產生該第三多工訊號,該第四多工器輸出該第一個輸入數位訊號(x[0]),以產生該第四多工訊號。
  11. 如申請專利範圍第10項所述之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其中,該第一共用乘法裝置及該第二共用乘法裝置具有相同硬體架構。
  12. 如申請專利範圍第11項所述之固定係數型可變質數長度遞迴式離散傅立葉轉換之系統,其中,該第一共用乘法裝置包括:一第五多工器,具有一第一輸入端連接至該第二遲延器,及一第二輸入端連接至該第一暫存器,以選擇該第二遲延訊號或該第一暫存訊號,俾產生一第五多工訊號;一第六多工器,具有一第一輸入端接收一餘弦係數(2cos),及一第二輸入端接收一正弦係數(sin),而產生一第六多工訊號;以及一乘法器,連接至該第五多工器及該第六多工器,以對該第五多工訊號進行正弦係數乘法運算或餘弦係數乘法運算。
TW101100101A 2012-01-02 2012-01-02 固定係數型可變質數長度遞迴式離散傅立葉轉換之系統 TWI444837B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW101100101A TWI444837B (zh) 2012-01-02 2012-01-02 固定係數型可變質數長度遞迴式離散傅立葉轉換之系統
US13/557,451 US8924452B2 (en) 2012-01-02 2012-07-25 Fixed-coefficient variable prime length recursive discrete Fourier transform system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW101100101A TWI444837B (zh) 2012-01-02 2012-01-02 固定係數型可變質數長度遞迴式離散傅立葉轉換之系統

Publications (2)

Publication Number Publication Date
TW201329747A TW201329747A (zh) 2013-07-16
TWI444837B true TWI444837B (zh) 2014-07-11

Family

ID=48695832

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101100101A TWI444837B (zh) 2012-01-02 2012-01-02 固定係數型可變質數長度遞迴式離散傅立葉轉換之系統

Country Status (2)

Country Link
US (1) US8924452B2 (zh)
TW (1) TWI444837B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9342482B2 (en) * 2012-11-12 2016-05-17 Texas Instruments Incorporated On-chip spectral analysis using enhanced recursive discrete Fourier transforms
DE102014114943B3 (de) * 2014-10-15 2015-07-16 Endress + Hauser Gmbh + Co. Kg Vibronischer Sensor
TWI718625B (zh) * 2019-08-16 2021-02-11 瑞昱半導體股份有限公司 應用於離散及逆離散正弦餘弦變換的運算電路
CN112422979B (zh) * 2019-08-23 2022-12-13 瑞昱半导体股份有限公司 应用于离散及逆离散正弦余弦变换的运算电路
US11689191B2 (en) * 2021-03-30 2023-06-27 Stmicroelectronics International N.V. High frequency resolution digital sinusoid generator

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3344349A (en) * 1963-10-07 1967-09-26 Bell Telephone Labor Inc Apparatus for analyzing the spectra of complex waves
US4152772A (en) * 1974-08-29 1979-05-01 The United States Of America As Represented By The Secretary Of The Navy Apparatus for performing a discrete cosine transform of an input signal
US4010360A (en) * 1976-03-31 1977-03-01 The United States Of America As Represented By The Secretary Of The Navy Carrier-compatible chirp-z transform device

Also Published As

Publication number Publication date
US20130173680A1 (en) 2013-07-04
US8924452B2 (en) 2014-12-30
TW201329747A (zh) 2013-07-16

Similar Documents

Publication Publication Date Title
Shi et al. Design of linear phase FIR filters with high probability of achieving minimum number of adders
Vishwanath The recursive pyramid algorithm for the discrete wavelet transform
TWI444837B (zh) 固定係數型可變質數長度遞迴式離散傅立葉轉換之系統
Alam et al. Efficient distributed arithmetic based DWT architecture for multimedia applications
CN109085879A (zh) 一种用于电学多功能校准平台的高精度dds频率合成器
Martina et al. A VLSI architecture for IWT (integer wavelet transform)
Andra et al. A VLSI architecture for lifting-based wavelet transform
Samadi et al. Results on maximally flat fractional-delay systems
Wang et al. Efficient VLSI architecture for lifting-based discrete wavelet packet transform
Chakraborty et al. A memory and area-efficient distributed arithmetic based modular VLSI architecture of 1D/2D reconfigurable 9/7 and 5/3 DWT filters for real-time image decomposition
CN101025919A (zh) 音频解码中的合成子带滤波方法和合成子带滤波器
CN100517968C (zh) 一种用于电能计量的希尔伯特滤波器
TWI423046B (zh) 以離散傅立葉轉換為核心之修正型離散餘弦正轉換、反轉換之系統
TW201724089A (zh) 具有滑動式二階遞迴傅立葉轉換的頻域適應性濾波系統
CN107193784B (zh) 高精度低硬件复杂度的sinc插值实现方法及系统
Ranganathan et al. Efficient hardware implementation of scalable FFT using configurable Radix-4/2
Hazarika et al. Energy efficient VLSI architecture of real‐valued serial pipelined FFT
Seshadri et al. Knowledge-based single-tone digital filter implementation for DSP systems
CN113778940B (zh) 基于fpga的高精度可重构相位调整ip核
Rullmann A new VLSI architecture for the discrete wavelet transform using the lifting scheme
Patil et al. VLSI Implementation of FIR Filter for Discrete Wavelet Transform
Du et al. Multirate filterbank design: A relaxed commutant lifting approach
CN109445748B (zh) 一种快速求取中值方法及系统
Ashim et al. FPGA based realization of a High-Speed 8-Tap FIR Filter for Signal Processing Applications
TWI412022B (zh) 遞迴式離散餘弦正、逆轉換之系統

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees