TWI375171B - - Google Patents
Download PDFInfo
- Publication number
- TWI375171B TWI375171B TW97141311A TW97141311A TWI375171B TW I375171 B TWI375171 B TW I375171B TW 97141311 A TW97141311 A TW 97141311A TW 97141311 A TW97141311 A TW 97141311A TW I375171 B TWI375171 B TW I375171B
- Authority
- TW
- Taiwan
- Prior art keywords
- fourier transform
- memory
- fast fourier
- point
- data
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Description
1375171 10 W9日修正替換頁
J 九、發明說明: 【發明所屬之技術領域】 本發明關於一種快速傅利葉轉換之計算與定址方法以 及使用此方法之以記憶體為基礎之任意點數正/逆向快速 傅立葉轉換處理器設計。對於任意點數的以記憶體為基礎 的離散快速傅立葉轉換處理器設計可以有效的減少處理器 面積與所需的操作時脈。 【先前技術】 按’有關本發明相關之快速傅利葉轉換計算與定址方 聲 法以及使用此方法之以記憶體為基礎之正/逆向快速傅立 葉轉換處理器之先前技術謹羅列並比較缺點如下: (1) 由於美國專利號4,477, 878名為 “Discrete Fourier transform with non-turabled output,,不能 支援多記憶體架構 (multi-bank memory structure),因而,對於基r(radix-r)計算時,就需 要有r個時脈週期才能把資料從記憶體中讀出或將計算 完的資料寫回記憶體中。這將導致FFT在計算過程中需 · 要更多的時脈週期,以及為了即時應用所需的更高時脈 速度。 本發明可藉由支援多記憶體定址,而在無記憶體存取衝 突的情況下,將諸如基r的r筆資料在一個時脈週期内 完成讀或寫,以解決先前技術的問題。 (2) 由於美國專利號5091875名為“Fast Fourier transform (FFT) addressing apparatus and method”, 美國專利公開號 20060253514 名為 “Memory-based Fast Fourier Transform device”,以及學術論文 L. G. 097141311 1013276286-0
Johnson “Conflict free memory addressing for dedicated FFT hardware,” IEEE Trans. Circuits Syst. II, Analog Digit. Signal Process., vol. 39, no· 5,pp· 312—316,May 1992等,均僅支援固定的 基r’因此僅能適用在具有N = rn大小的的FFT中。 若考慮到應用在中國數位電視之3780點FFT或者是 PLC應用之3072點FFT的情況時,前述兩件先前技術 即無法運作。 但本發明能夠支援任意基數r的混和。因此,能夠在任 何大小的FFT應用中使用。 (3) 美國專利號 7062523 名為“ “Method for efficiently computing a fast Fourier transform” 僅支援固定的基r,因此不能支援中國DTV或是PLC之 類的應用。除此之外,他也不能支援多記憶體架構 (multi-bank memory structure),其在基 r(radix-r)運算時,需要Γ個時脈週期自記憶體存取資料。因此 將比使用多記憶體架構的處理器需要更高的時脈來完成 FFT的計算。 本發明除了支援任意大小的FFT應用之可變基數外,尚 支援多記憶體架構,在不產生記憶體存取衝突的情況下 減低所需時脈。 (4) 美國專利號 7, 164, 723 名為“ Modulation apparatus using mixed-radix fast Fourier transform”,以及論文 B. G. Jo,and Μ. H. Sunwoo, “New continuous-flow mixed-radix (CFMR) FFT processor using novel in-place strategy, ’’ IEEE Trans. Circuits Syst. I, Reg. Papers, vol. 52, no. 5,pp. 911-919, May 2005 僅適用於基 2/4 混和的 097141311 1013276286-0
1375171 演算法(algorithm),故僅能工作在N = 2n大小上的 FFT,無法應用於例如N = 3780之中國DTV之其他大小 的FFT應用。 本發明因為可支援任何混合的基數,所以可以滿足上述 需求。除此之外,對於諸如N=8192的更長點數的處理 器設計,本發明可以讓處理器設計更加有彈性,因本發 明可支援大於基4的演算法。 (5) 美國專利公開號20080025199名為“Method and device for high throughput n-point forward and inverse fast Fourier transform” 提出 3780 的可能 分解(candidate decomposition ),例如,3780 = 3x3x3x2x2x5x7。其以MDC架構實行每個小點數的FFT 模組來減少後續會提到的一些中國專利中的較大内部暫 存器。然而,由於此方法需要對每個模組在一個時脈週 期中完成運算,因此會需要大量硬體。此外,在實際的 系統應用上是需要依序輸出資料的,但是此專利輸出資 料卻不是依序輸出的,因此尚有部分問題未解決。 (6) 中國專利號01140060.9名稱”3780點離散傅里葉變 換處理器系統及其結構”、中國專利號03107204. 6名 稱”具有3780點IDFT/DFT處理器的多載波系統及其方 法”、中國專利公開號200410090873.2名稱”採用升採 樣處理方法實現3780點離散傅立葉變換”、中國專利公 開號200610104144.7名稱”3780點離散傅立葉變換處 理器”以及中國專利公開號200710044716. 1名稱”流水 線結構的3780點快速傅里葉變換處理器”等上述專利可 097141311 8 1013276286-0 1375171 r
執行3780點之具有類似管線(pipelined)架構之FFT 處理器,其所提出的架構内部需要大量的暫存器或記憶 體來重新排列資料。此外,對於實際系統應用之需求而 言,依序輸入輸出資料以及支援連續資料流都是必須 的,為了達成這些,中國專利號01 140060. 9名稱”3780 點離散傅里葉變換處理器系統及其結構”以及中國專利 號03107204. 6名稱”具有3780點IDFT/DFT處理器的多 載波系統及其方法”就至少需要3N字元的記憶體空間; 中國專利公開號200410090873. 2,名稱”採用升採樣處 理方法實現3780點離散傅立葉變換”、中國專利公開號 200710044716.1,名稱”流水線結構的3780點快速傅里 葉變換處理器”就至少需要5N字元的記憶體空間;中國 專利公開號200610104144.7名稱”3780點離散傅立葉 變換處理器”就至少需要6N字元的記憶體空間。 相較前述,本發明僅僅需要2N字元的記憶體空間就可 以做到了 。並且,請注意到在中國專利號 01 140060.9、中國專利號03107204.6以及中國專利公 開號200710044716.1之輸出資料並不是有序的,因此 他們需要至少一個N字元的記憶體空間與額外的控制邏 097141311 1013276286-0 1375171 101 7 1 ^ 年‘·月日修正替換i 輯來重新排序輸出資料以便依序輸出。 (7)在論文 Z.-X. Yang, Y.-P. Hu,C.-Υ. Pan,and L. Yang, “Design of a 3780-point IFFT processor for TDS-OFDM,” IEEE Trans. Broadcast.,vol. 48,no. 1, pp. 57-61,Mar. 2002所提出的3780點FFT處理器之 輸出資料並非依序排列,為了能夠依序排列,其需要一 個緩衝器去重新排列輸出資料,因此其至少需要3N字 < 元的記憶體空間,才能在能處理連續資料流的前提下達 成此需求,但本發明已如上述僅需2N字元空間的記憶 【發明内容】 有鑑於上述先前技術的缺失,本發明提出一種快速傅 利葉轉換之計算與定址方法以及使用此方法之以記憶體為 鲁 基礎之任意點數正/逆向快速傅立葉轉換處理器設計,其 方法第一項特徵為: 藉由分解方程式將長點數離散傅立葉轉換的計算分解為數 個短點數的離散傅立葉轉換,並同時將其指標由單一維度 映射成多維度指標向量。 本發明的方法第二項特徵為:藉由控制這些多維度 097141311 1013276286-0 • - WWw 4向里’本發明把原始輸人資料分散存放到數個記憶體 使得在不產生記憶體存取衝突的情況下同時達到計算 '1的i料置換與s己憶體完整蝴蝶點數—次存取的目的。 —本發明的方法第三項特徵為:當資料置換使用在已計 异完成的舊資料依序輸出與新資料依序輸入時為了往後 鲁t ”期間可以繼續保持資料存取時沒有記憶體衝突,本發 明對於新資料的計算採取與先前資料計算時的反序操料 達成目的。此方法,對於任意點數的以記憶體為基礎的離 散快速傅立葉轉換處理器設計可以有效的減少處理器面積 與所需的操作時脈。 本發明提出之以記憶體為基礎之快速傅立葉轉換處理 器3又计,其包含:一用以存放資料之主要記憶體、一用以 •進行分解後短點數快速傅立葉轉換之處理元件以及一控制 單元,其中该控制單元具有控制以下項目之功能:(1 )輸 入輸出資料與蝴蝶運算用之記憶體,(2)分解後之短點數 快速傅立葉轉換之計算順序,及(3)以資料置換方式進行 資料存取所需之記憶體定址。用以執行上述之方法。 【實施方式】 為了達成上述的發明目的,茲將本發明之一具體實施 097141.311 1013276286-0 1375171 ·. 10VV9日修正替換頁 t 例說明如下: X{k)=Nil x(ri)W^k 離散傅立葉轉換之定義為 ”=() 。將長點數離 散傅立葉轉換分解為數個短點數離散傅立葉轉換之方法已 在論文”IEEE TRANSACTIONS ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING, VOL. ASSP-25, NO. 3, JUNE 1977” 名稱 『Index Mappings for Multidimensional Formulation of the DFT and Convolution』中提出。本 發明在此以點數長度N=N1N2之分解方程式(1)加以說明: [n- + modN η,,λ, -1 \k = +^,^2 modN Ά=〇Χ·..,Ν2-\ (1) 方程式(1)將指標n與k映射為指標向量(nl,n2)與 (kl,k2),使其由單一維度[0,N-1]映射成二維度[0, Nl-1] X [0,N2-1]。其中森數A2與B1之選擇取決於N1 與N2間之關係。於本發明提出之方法中,方程式(1)係數 選用規則如下: 情況一:若N1與N2互質,則選用符合下列條件之A2及 B1為係數 A2 =plNl 並且 A2 =qlN2 + 1 B1 =p2N2 並且 B1 =q2Nl + 1 097141311 12 1013276286-0 I375l71
在此,pl、ql、p2及q2皆為正整數。因此,離散傅立 葉轉換之定義可寫成以下之方程式(2): «J "l =Σί «2 Ή = Y,y(Kih) 〜 (2) 情況二:若N1與N2非為互質,則選用A2 = M = i。因 此,離散傅立葉轉換之定義可寫成以下之方程式(3): ΑΓ(ΑιΛ)=Σ •1 =Σ{ ^Σχ(«..«2)^^} Ή f\ 2 (3) 本發明可由方程式⑵及⑶得知,一長點數(Μ) 快速傅立葉轉換可分別在第—及第二階段中以二較短點數 (N」點及N2 .點)快速傅立葉轉換加以計算。就定值⑽ 而言,第-階段N1點快速傅立葉轉換之原始輸入資料為 ’ ’2乂 nl_〇’ L ...,H。對應此n2之第一 p皆俨 輸出資料為y(k1,n2),“mi。就定值k: μ m l速傅立葉轉換之原始輸入資料為 Π2 l L ···,N2_1。對應此kl之第二階段 輸出資料則為x〇u,k2) k9 W)’ k2- 0,!,…,N2_卜方程式 Ί之差異在於若ni_n2非為互質則第一與第二 097141311 13 1013276286-0 1375171
" r* 1 ο ' I % Η日修正替換頁· 一_ · _ ^>2 ff »/! 階段間存在有如方程式(3)所示之旋轉因子^。 註:就情況一而言’其係數選取亦可如情況二,且本發明 之後續流程相同 現於第一階段計算N1點離散傅立葉轉換並於第二階 &计算N2點離散傅立葉轉換,以求取第一個離散傅立葉 轉換符元。先將原始輸入資料分散存放到數個記憶庫 (memory bank)中。假定N2gN1且記憶庫之數量為N2, 則可藉由方程式⑷將該原始輸入資料分散存放至N2個記 憶庫中以避免記憶體衝突。 (4) bank = nl + n2 mod N2 避免記憶體衝突之關鍵在於透過方程式⑴及⑷將 資料分散存放於記憶庫。-旦選定記憶庫,便需將資料定 址°同-記憶庫中之㈣筆#料應映射至◦到叫範圍 内之不同位址。為求簡單, 行資料定址。 在“用以下之方程式⑸執 完成第 料依序輸出 算完成之第 一個離散傅立葉轉換符元之計算後,應將資 二輪出指標係由方程式⑴映射而得。在將計 -個離散傅立葉轉換符元資料依序輸出之同 097141311 10132762S6-0 14 .1375171 车为曰修正替換頁 101. 7. π =亦以貧料置換之方式依序輪入第二個離散傅立葉轉換 符元之輸入資料。亦即,新的原始輸入資料x⑴應置於 輪出貝料X(1)之位置。計算第二個離散傅立葉轉換符元 之順序係與計算第-個離散傅立葉轉換符元時相反。 P於第階段4异M2點離散傅立葉轉換,再於第二 階段計算N1點離散傅立葉轉換,藉以求取第二個離散傅 立葉轉換符元。完成第二個離散傅立葉轉換符元之計算 後,同樣以資料置換方式依序輸出計算完成之舊資料並依 序輸入新資料。第三個離散傅立葉轉換符元復依第—個離 散傅立葉轉換符元之方式計算。 以下將以中國數位電視所需之期點快速傅立葉轉 換為例詳加說明。以τ所述之分解順序僅為可行方式之一 例0 由於3780=4χ3χ3χ3χ5χ7,本發明可分別進行3點、 4點、5點與7點之快速傅立葉轉換計算。在此,資料 分散存放於7個記憶庫。 ,’、 先依分解順序4、3、3 ' 3、5及 :段(4 .點快速傅立葉轉換)係採用分解方二算)進= 097141311 1〇13276286-0 (6)1375171
(η = 945», + 2836¾ mod3780 /ι, 3 A, = 〇, 1,2,3 U=945A:,+ 4k2 mod3780 fi2,k2 =0,...,944 上述方程式將指標n映射為向量,即由[0,3779]至 [0’ 3] x [0,944] ’ 如表一所示。 表一 第一階段之指標映射 nl = 0 nl = 1 nl=2 nl =3 ^ =0 — χ[〇] x[945 ] x[18 90] x[2835 ] 六2^1 x[2836] x[l] x[ 94 6] x[1891 ] ^2 =2 --—. x[1892] x[2837 ] x[2] x[947] • ·. ---- ^2 *944 ---- • · * • · · • · · • · * x[944] x[1889] x[28 34] x[3779 ]
表中每一列之資料為每個4點快速傅立葉轉換之原 始輸入資科。輸入順序取決於指標nl。例如,句=1列 097141311 16 1013276286-0 /1 • » /1
中:輸r序…),),(11),(21)以及 ⑷)’…對應之資料為刺6]、x[丨 x[1891],如表一所示。 叫與 由於每個 有相同之指標& 同記憶庫來避免第 點快速傅立葉轉換之原始輸入資料 故可藉由方程式(7)將資料分散存 一階段之記憶體衝突 皆具 入不 (7) 4個945點 k卜 〇,1,2 bank = nl + χ m〇d7 歷經第一階段後’原始資料已被分解為 快速傅立葉轉換之獨立群組,並分別對應於 及3。 同樣地’本發明亦可以945 = 3χ3χ3χ5χ7之順序分解 上述之945點快速傅立葉轉換,並將指標七映射為向量 (η2, Π3’ n4’ n5, n6),即由[〇, 944]映射為[〇, 2]χ[〇, 2]χ[0,2]χ [〇,4]χ[〇, 結合各階段之所有分解方程式,即可求得簡點快 速傅立葉轉換依此分解順序之完整指標映射方程式,如方 程式(8)與⑻所示,在選擇記憶料_用絲式(1〇)以 避免記憶體衝突,定址方程式則可採用方程式(11)。 n = 945nl I 1260n2 + 2940n3 + 980n4 + 1512n5 + 097141311 1013276286-0 1375171 101年7·月19日修正替換頁. 540n6 mod3780 (8) k = 945kl + 2380k2 + 3360k3 + 2520k4 + 2268k5 + 540k6 mod3780 (9) bank = nl + n2 + n3 + n4 + n5 + n6 mod7 (10) address = 135nl + 45n2 + 15n3 + 5n4 + n5 (11) ^ 繼計算第一個快速傅立葉轉換符元,亦即單數之快 速傅立葉轉換符元之後,方程式(10)及(11)中所有指標 n i將轉換為k i。對於第二個輸入之快速傅立葉轉換符元 S言,亦即雙數之快速傅立葉轉換符元,該雙數快速傅立 葉轉換符元之輸入資料xeven [ η]應被置入單數離散傅立 葉轉換符元之輸出資料Xodd[k]之位置,兩者間關係為 籲 k=n,其映射指標、記憶庫與位址應分別以方程式(9)、 (10)與(11)決定。 以下討論如何於目前雙數快速傅立葉轉換符元之資 料分配下,於計算期間持續避免資料存取時之記憶體衝 突。 為計算雙數快速傅立葉轉換符元,本發明係採用與 097141311 1013276286-0
计异早數快速傅立㈣換符元時相反之分解順序進行呀 算’亦即湖=7X5X3咖3x4,換言之,本發明係以\ 點、5點、3點、3點、3點以及4點快速傅立葉轉換之順 序執行計算。藉由類似方式,本發明可求得雙數快速傅立 葉轉換符元之完整輸人輪出指標映射方程式(12)及⑽, 其結果類似於單數快速傅立葉轉換符元之完整指標映射方 程式(8)及⑼’方程式(12)及(13)分別將輸入指標n與輸 出指標k映射為向量(al,a2,a3,认沾,⑻與(μ, b2,b3’ b4,b5,b6),即由[〇,3779]映射為[〇,6]x[〇, 4]x[0,2]x[0,2]x[〇,2]x[0,3],以計算雙數快速傅 立葉轉換符元。 n = 540al + 2268a2 + 2520a3 + 3360a4 + 2380a5 + 945a6 raod3780 (12) k = 540bl + 1512b2 + 980b3 + 2940b4 + 1260b5 + 945b6 mod3780 (13) 將輸入與輸出指標方程式(9)與(12)以及(8)與(13) 對應比較,可發現此兩組方程式恰以反序向量之關係彼此 匹配,如方程式(14)及(15)所示。 (al, a2, a3, a4, a5, a6) = (k6, k5, k4, k3, k2, 097141311 1013276286-0 1375171 % V %修正麵 kl) (14) (nl,π2,n3,n4,n5,n6) = (b6,b5,b4,b3,b2, bl) (15) 因雙數快迷傅立葉轉換符元xeven[n]之輸入資料被 置於已計算完成之單數快速傅立葉轉換符元輸出資料
Xodd [ k ]之位置’而兩者間之關係為k=n ’由此可得雙數 快速傅立葉轉換符元之記憶庫選擇與記憶體定址方程式 (16)及(17)。 bank al + a2 + a3 + a4 + a5 + a6 mod7 (16) address = 135a6 + 45a5 + I5a4 + 5a3 + a2 (17) 請注意,輸入映射方程式(12)與輸出映射方程式(9) 相同,且記憶庫選擇方程式(1〇)與(16)亦保持相同。是 以’於雙數快速傅立葉轉換符元之計算期間,藉由倒轉單 數快速傅立葉轉換符元分解順序之計算方式,可使記憶體 始終免於存取衝突。 此外,本發明發現,輸出映射方程式(13)與輸入映 射方程式(8)亦為相同,意指在將第三個快速傅立葉轉換 輸入資料xthirdU]置人已計算完成之雙數快速傅立葉轉 換輸出資料Xeven[k]之位置並令其中k=n時,該第三個 097141311 1013276286-0 20 1375171
快速傅立葉轉換輸入資料之分散儲存方式可與方程式 ⑻、⑽及⑴)所決定者相同’也即第三個快速傅立苹 轉換符元的資料存放位置跟單數快速傅立葉轉換符元之資 料存放位置一樣而又回到起始討論的狀態’ Xthird[n]= x〇dd[n]。 根據以上之實施例,本發明可藉由倒轉先前之快速 傅立葉轉換符元分解順序,設計出無記憶體衝突之可變基 數快速傅立葉轉換處理器,其可同時達到蝴蝶輸出與㈣ 輸入輸出之資料置換。 第一圖係以記憶體為基礎之_點離散傅立葉轉換 處理益設計方塊圖’其中mem_1#mem—2為二記憶區塊 (咖㈣bl〇Ck),各區塊包含Η固記憶庫(mem〇ry bank) ’各§己憶庫大小為54〇個字,附―c_包含可分別 處理短點數離散傅立葉轉換之處理單元,其計算各短點數 離散傅立葉轉換所需的時脈週期數由設計者依需求決定, 2決定計算單元所需硬體數量,控制單元主控資料存取 與處理單元之汁算。 以下將就離散傅立葉轉換處理器之運作加以閣明, 爲便於㈣,在此定社分解料算财依次為4 097141311 1013276286-0 1375171 點、3 點、3 點、3 it r φ, -t, „ 點、5點與7點離散傅立葉轉換,並將 其倒轉順序定義為第_ 弟一類順序,依次為7點、5點、3 點、3點、3點與4點離散傅立葉轉換。 假設第一個與笫-如触Λ 、弟一個離散傅立葉轉換符元分別儲存於 記憶區塊_」與_」’並假設第一個與第二個離散傅 立葉轉換符元之分解與計算順序皆為第一類順序,則根據 以上之δ兒明,本發明可知: (1) 第一、五、九、_|_二 十二...離散傅立葉轉換符元係儲存於 記憶區塊MEM」且以第一類順序計算。 (2) 第一 〃十、十四離散傅立葉轉換符元係儲存於 記憶區塊MEM—2且以第一類順序計算。 ()第一 + 、十五離散傅立葉轉換符元係儲存 於記憶區塊MEM一1且以第二類順序計算。 (4)第四、八、十二、+ a 十/、...離政傅立葉轉換符元係儲存 於記憶區塊MEM一2且以第二類順序計算。 爲說月之便帛一圖中僅以長度為㈣之離散 傅立葉轉換為例來說明取得資料存取所需指標向量之硬體 實施方式。如第二圖所示,其係由數個累加器Μ、 Α2、..·、Α5組成。於控制單元中包含3組此硬體設計, 097141311 1013276286-0 22 1375171 、月日修正替換頁、.、礙 其中2組分別用於產生資料輸入與輸出所需之指標向量, 其參數U1、U2、U3、114、q與『係由各階段之分解方程式 ()决疋而第3組則是用於產生各個短點數傅立葉轉換 所而貝料的指標向量,其與前面兩組唯一不同處是此時之 參數q ’ r皆為0,即Α4,Α5可去除。 下表二顯示以記憶體為基礎之離散傅立葉轉換處理 °十不同即時應用方法的比較結果。所有項目中,僅 有本㈣法與[美國料H,477, _可支援任何—般基數 之混合’並進行任何點數長度之快速傅立葉轉換^然而, 則所述[美國專矛|J 4,477,878]未能實現無記憶體衝突 之多記憶體架構(_卜_嶋町⑽),因而 無法減少即時應用所需之操作時脈。 &出以°己憶體為基礎之快速傅立葉轉換處理 器設計方法,伟盆"5Γ rm 士、_u> x、了同時滿足以下三項目的:(1 )蝴蝶運 算與輸入輪出資料時:欠 I之貝枓置換;(2)任何基數之混合; 及(3)支援多記憶體架構。 097141311 23 1013276286-0 1375171
表二 本發明與不同方法之比較 [Α1] [Α2] [Β2] [Α5] [A3] [A4] B[3] 本發 明 基數 所有 一般 固定基 數-r 固定 基數-r 基數- 2/4 所有 一般 資料置 換 是 是 是 是 是 記憶體 2Ν 個字 2N 個 字 2N個 字 2N個 字 2N 個 字 多重記 憶庫 否 是 否 是
[A1]:美國專利 4, 477, 878 [A2]:美國專利 5,091,875 [A3]:美國專利 7,062,523 [Α4]:美國專利 7, 164, 723 [Α5]:美國專利公開20060253514 097141311 24 1013276286-0 1375171
Ildt 7 19 年’月日修正替换更 練也崎齡知〜 [B2]:論文 L. G. Johnson “Conflict free memory addressing for dedicated FFT hardware,” IEEE Trans. Circuits Syst. II, Analog Digit. Signal Process., vol. 39, no. 5, pp. 312-316, May 1992. B[3]:論文 B. G. Jo, and Μ. H. Sunwoo, “New continuous-flow mixed-radix (CFMR) FFT processor • using novel in-place strategy, ’’ IEEE Trans. Circuits Syst. I, Reg. Papers, vol. 52, no. 5, pp. 911-919, May 2005. 綜上所述,當以本發明方法應用於中國數位電視所 需之3780點離散傅立葉#換時,僅需2N個字之記憶體即 可滿足系統需求,同時達到持續資料流與資料依序輸入輸 φ 出之目的。若欲達成與本案相同效果,[美國專利公開 20080025199]、[中國專利 01 140060. 9]、[中國專利 03107204.6]之方案需至少3N個字之記憶體,[中國專利 公開 200410090873.2]與[中國專利公開 200710044716. 1 ] 需至少 5N個字之記憶體,[中國專利公開 200610104144. 7 ]需6N個字之記憶體,而[論文Z.-X. Yang, Y.-P. Hu, C.-Y. Pan, and L. Yang, uDesign of 097141311 ♦ - 25 1013276286-0 1375171 % 7为^修正替換頁 a 3780-point IFFT processor for TDS-OFDM, 5, IEEE Trans. Broadcast., vol. 48, no. 1, pp. 57-61, Mar. 2002 ]亦至少需3N個字以上之記憶體。因此,就此應用而 言,若以本案方法設計3780點離散傅立葉轉換處理器, 則相較於以現有方式設計者可大幅縮減晶片面積。 本發明更提出一種以記憶體為基礎之(正/逆向)快速 傅立葉轉換處理器,用以執行上述之方法,其係包含:一 ® 用以存放資料之主要記憶體、一進行分解後短點數快速傅 立葉轉換之處理元件以及一控制單元,其中該控制單元具 有控制以下項目之功能:(1)輸入輸出資料與蝴蝶運算用 之記憶體,(2)分解後之短點數快速傅立葉轉換之計算順 序,及(3)以資料置換方式進行資料存取所需之記憶體定 址。用以執行上述之方法。該主要記憶體包含二記憶區塊 鲁 (memory block),亦即 MEM_1 與 MEM_2,當 MEM_1 用於快 速傅立葉轉換運算時,MEM_2則用於輸入輸出資料,反之 亦然;且,每一記憶區塊包含Μ個記憶庫(memory bank), 且每一記憶庫之大小為N/M,其申N為快速傅立葉轉換之 點數長度,Μ為由系統設計者自行設定之記憶庫數量,該 處理單元FFT_C0RE係設計為可對分解後之短點數快速傅 097141311 1013276286-0 1375171 7 19 · .月日修正替換頁1 立葉轉換進行個別計算,其計算各短點數離散傅立葉轉換 所需的時脈週期數由設計者依需求決定’此亦決定計算單 元所需硬體數量。該控制單元之第(1)項控制功能係控制 如前所述之該等記憶區塊,以將其功能切換為快速傅立葉 轉換計算或輸入輸出資料。該控制單元之第⑵項控制功 能係控制該處理元件,使其利用與同一記憶區塊之前次快 速傅立葉轉換符元分解順序相反之順序進行短點數快速傅 立葉轉換計算,從而取得快速傅立葉轉換符元,·亦即,若 該快速傅立葉轉換符元於一記憶區塊中係以ni點快速傅· 立葉轉換' N2點快速傅立葉轉換....至Nk .點快速傅立葉 轉換之順序計算,則儲存於同一記憶區塊中之次—快速傅 立葉轉換符元之計算順序為I點快速傅立葉轉換、Ν(Η) 點快速傅立葉韓換 25 Μ1 … .......S N1點快速傅立葉轉換。該控制 早το之第(3 )項控制功能係控制以資料置換之方式進行資 2存^從而進行每一記憶區塊之蝴蝶運算與資料輸入輸 含3㈣作原理如圖二之硬體設計,其中2 別用於產生請輸人與輸出所需之指標 H[j3、U4、Qikr#,夂# -參數 而莖U ϋ各階段之分財程式決定。 ''且則是用於產生各個短點數傅立葉轉換所需資料的 097141311 1013276286-0 27 1375171
指標向量,其與前面兩組唯一不同處是此時之參數q,r 皆為0。 綜上所述,以上之實施例僅是用來解說本發明之具體 實施方式,本發明之專利範圍仍應以申請專利範圍所載為 準。 【圖式簡單說明】 第一圖本發明快速傅立葉轉換處理器設計方塊圖。 第二圖本發明指標向量產生器硬體實施圖。 【主要元件符號說明】 無 097141311 1013276286-0
Claims (1)
1375171 I
、申請專利範圍: 種任意點數快速傅利Μ轉換之計算與定址方法,其特徵在於包 含下列步驟: (1) 將長點數離散傅立葉轉換的計算分解為數個短點數的離散 傅立葉轉換,並同時將其指標由單一維度映射成多維度指標向 量; 、 (2) 藉由控制這些多維度指標向量,把原始輸入資料分散存放 到數個記憶體裡,使得在不產生記憶體存取衝突的情況下同時達 到汁算期間的資料置換與記憶體完整蝴蝶點數一次存取的目的; ()®資料置換使用在已計异完成的舊資料依序輸丨與新資料 依序輪人時,為了往後計算_可以繼續保持龍存取時沒有記 憶體衝突,對於新資料的計算採取與先前資料計算時的反序操作 來達成目的; 依此方法,對紐計任意絲的以記憶體為基_快速傅立葉轉 換處理器,可以減少處理器面積與所需的操作時脈。 2. -種使用如專利制第i項所述之計算與定址方法之以記憶體為 基礎之正/逆向快速傅立葉轉換處理@,其係包含:一用以存放資 料之主要記億體、-進行分解後短點數快速傅立葉轉換之處理元件 以及-控财元,其中雜鮮元具有控制町項目之功能:⑴ 097141311 101327尽286-0 ⑸ 5171 丨61掙09丨丨Ο ι·ιΜΤ弥移吼τι;;»針線v权,… 輸入輸出資料與蝴蝶運算用之記憶體,(2)分解後之短點數快速傅 立葉轉換之計算順序’及(3)以資料置換方式進行資料存取所需之 記憶體定址。
3.如申凊專利範圍第2項所述之以記憶體為基礎之正/逆向快速傅立 葉轉換處理器,其中,該主要記憶體包含二記憶區塊,為應^」 。MEM—2 ’當MEM_1用於快速傅立葉轉換運算時,MEM」則 用於輸入輸出㈣,當mem—2用於快速傅立葉轉換運送時, 則用於輸入輸出資料。 4. 士申明專她圍第3項所述之以記紐為基礎之正/逆向快速傅立 某轉換處理11,其中,每-記憶區塊包含Μ個記憶庫,且每一記 憶庫之大小為臟,其中”快速傅立葉轉換之點數長度,Μ為 由系統設計者自行設定之記憶庫數量。 5. 如申請細_ 2彻述之以記憶體絲礎之蝴向快速脅 葉轉換處理L該處理_計__後之短_ 傅立葉轉換進行個別計算。 6. 如申請專概圍第2項所述之以輯體為基礎之^逆向快速僧 葉轉換處理H ’其中,卿單…⑴剩功能係控制如 凊專利範圍第3項所述之該兩記憶區塊,以將其功能切換為快速 立葉轉換計算或輸入輸出資料。 097141311 1013276286-0 30 1375171 7.如申請專利翻第2項所述之以記憶體為基礎之正/逆向快速傅立 葉轉換處理H,其中,該控制單元之物項控制功能係控制該處 理元件來依照申請專利範圍第i項第(3)點之步驟執行,使其利用 與同-記憶區塊之前次快速傅立葉轉換符元分解順序相反之順序進 行短點數快速傅立葉轉換計算,從而取得快速傅立葉轉換符元;亦
即,若該快速傅立轉婦元於—城韻帽點快速傅立 葉轉換、瓜點快速傅立葉轉換......至凡點快速傅立葉轉換之順序 計算,·存於同-記舰财之次i稍立_歸元之計算 順序為凡點快速傅立葉轉換、〜點快速傅立葉轉換.....至(點 快逮傅立葉轉換。 .如申轉利細第2項所述之以記憶體為基礎之正/逆向快速傅立 葉轉換處理H,其中,該控制單元之第(3)健制功能係記憶體定 址並控制時料置換之方式進行資料存取,從而進行每-記憶區塊 7蝶運算與請輸人輸出,此項控制魏為申請專利範圍第!項 第(2)點之實施。 、 月專她nm項所述之以記憶體為基叙正/逆向快速傅立 "、轉換處理器’其中,執行資料存取之記憶庫係由指標向量(%, 數’ ..·,W與方程式(a丨)所決定,其中方程式⑹之^為_常量整 而该指標向量對應每一短點數快速傅立葉轉換,亦即如申請專 097 ^.1311 31 1013276286-0 1375171 利k圍第7項所述之^點快速傅立葉轉換、的點快速傅立葉轉 換..·…至J^點快速傅立葉轉換; bank = nx + «2 + ... + «k + cmodM (a,) 〇 l〇.如申凊專利範圍第9項所述之以記憶體為基礎之正/逆向快速傅 立葉轉換處理器,其中,方程式⑹將所有資料分為Μ個群組以存 入每-記憶區塊之Μ個記憶庫,該方程式可為該指標向量、 «2, ...,《k)之任-函數’ 標向量可朗―群組中細筆資料置入« 兩個不同位址;當記憶庫數量M Ut為H ...鳴其中 之,而(¢/丨,t/2 ’…’认])m ,凡丨,I,, ’《t-Ι ’ /it+1 ’ …,而分 、私點快速傅立葉轉換...... #k) ’(W! ’ W2,…,Wk l) = (Wl,〜,… 解與計算順序為%點快速傅立葉轉換 至凡點快速傅立葉轉換或其逆向順序’係以公式⑹來決定資料位 址;
(a3) 0 address = { Σ (Π ^7 )M, }+«*_, mod(A^ / Μ) /-1 /s/+l 11·如申請專利範圍第9項所述之以記憶體為基礎之正/逆向快速傅 立葉轉換處理器’其中’該指標向量係由分解下列方程式⑹與 (as)於各階段產生,其中為例,離散傅立葉轉換之定義為 Ν-\ 州W⑻巧,分解方程式⑹與(a5)可將#點離散傅立葉轉換分 097141311 32 1013276286-0 1375171 * 曹 解為兩個較短點數之離散傅立葉轉換,即%點離散傅立葉轉換與 Μ點離散傅立葉轉換;分解方程式⑹與⑹中之係數木及界為 正整數’輸入及輪出指標分別由該輸入及輸出方程式⑹與⑹轉 換; n = N2ni+A2n2 modN (a4) 修 k = Blkl+Nlk2 modN «2, ^ = (a5) 〇 12·如申請專利範圍帛9項所述之以記憶體為基礎之正/逆向快速傅 立葉轉換處理器,其中,對應於如申請專利範圍第1〇項所述輸入 及輸出方程式之該指標向量(%,„2,,叫)可經由累加器之硬體運 用而取得。 13.如申請專利範圍第9項所述之以記憶體為基礎之正/逆向快速傅立 葉轉換處理器,其中,以該指標向她,而言,用以於 • 第^•階段計算%點離散傅立葉轉換而被存取之%筆資料的每一群 組係對應(《】,《2,...,如〇,〜+1,...,„k)>i,化+ 1,〜 叫),…,㈣,《2,...,《Η’Μ-Ι,如”..,叫),且計算完成之輸出資料係 於計算後寫回莫原來位置,而上述所需之指標向量可由累加器之 硬體運用而取得。 097141311 1013276286-0 1375171 r 101年7 ·月日修正替換頁
七、指定代表囷: (一) 本發明指定代表圖:第1圖 (二) 本代表圖之元件符號簡單說明: 無 八、本發明若有化學式時,請揭示最能顯示發明特 徵的化學式: 益 097141311 1013276286-0
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW97141311A TW201017529A (en) | 2008-10-28 | 2008-10-28 | Computation and addressing method of a eneral sized memory-based FFT processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW97141311A TW201017529A (en) | 2008-10-28 | 2008-10-28 | Computation and addressing method of a eneral sized memory-based FFT processor |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201017529A TW201017529A (en) | 2010-05-01 |
TWI375171B true TWI375171B (zh) | 2012-10-21 |
Family
ID=44830889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW97141311A TW201017529A (en) | 2008-10-28 | 2008-10-28 | Computation and addressing method of a eneral sized memory-based FFT processor |
Country Status (1)
Country | Link |
---|---|
TW (1) | TW201017529A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9459812B2 (en) | 2014-02-03 | 2016-10-04 | Ceva D.S.P. Ltd. | System and method for zero contention memory bank access in a reorder stage in mixed radix discrete fourier transform |
CN109117454B (zh) * | 2017-06-23 | 2022-06-14 | 扬智科技股份有限公司 | 3780点快速傅立叶转换处理器及其运作方法 |
-
2008
- 2008-10-28 TW TW97141311A patent/TW201017529A/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
TW201017529A (en) | 2010-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101630308B (zh) | 以内存为基础的任意点数快速傅立叶转换器的设计与寻址方法 | |
TW594502B (en) | Length-scalable fast Fourier transformation digital signal processing architecture | |
TW201229898A (en) | Mechanism for conflict detection using SIMD | |
JP2007513431A (ja) | Fftアーキテクチャおよび方法 | |
CN103955446A (zh) | 基于dsp芯片的可变长度fft计算方法 | |
WO2013097236A1 (zh) | 多粒度并行fft计算装置 | |
CN103034621B (zh) | 基2×k并行fft架构的地址映射方法及系统 | |
WO2011074128A1 (en) | Information processing apparatus, control method thereof, program, and computer-readable storage medium | |
TWI375171B (zh) | ||
Yantir et al. | An ultra-area-efficient 1024-point in-memory fft processor | |
CN113568851A (zh) | 访问存储器的方法及对应电路 | |
Bremner et al. | Canonical forms of 2× 2× 2 and 2× 2× 2× 2 arrays over 𝔽2 and 𝔽3 | |
TWI274262B (en) | Digital signal processing apparatus | |
JP2005196787A (ja) | 処理速度の向上した高速フーリエ変換装置およびその処理方法 | |
WO2013097235A1 (zh) | 并行位反序装置和方法 | |
CN102541813B (zh) | 一种多粒度并行fft蝶形计算的方法及相应的装置 | |
Garrido et al. | Continuous-flow matrix transposition using memories | |
TWI237773B (en) | Fast fourier transform processor and dynamic scaling method thereof and radix-8 fast Fourier transform computation method | |
EP3066583A1 (en) | Fft device and method for performing a fast fourier transform | |
CN106469134A (zh) | 一种用于fft处理器的数据无冲突存取方法 | |
Ghosh et al. | FPGA based implementation of FFT processor using different architectures | |
Hörig et al. | The maximum volume hard subset model for Poisson processes: simulation aspects | |
Richardson et al. | An area-efficient minimum-time FFT schedule using single-ported memory | |
US10929778B1 (en) | Address interleaving for machine learning | |
CN102622318A (zh) | 一种存储器控制电路及其控制的向量数据寻址方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |