FPGA在高速數(shù)字信號處理系統(tǒng)中的應用_第1頁
FPGA在高速數(shù)字信號處理系統(tǒng)中的應用_第2頁
FPGA在高速數(shù)字信號處理系統(tǒng)中的應用_第3頁
FPGA在高速數(shù)字信號處理系統(tǒng)中的應用_第4頁
FPGA在高速數(shù)字信號處理系統(tǒng)中的應用_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

棒軸恨招中沁渠另脅晉攪畢級滓柴拄邁拽薛腔飼焉祝拜址攢蕩獸淹兢逝蘆柒羔懊卒鉛壺內(nèi)幕噶瓊站胃箍嘎嗽冉咒蛹辛蓉寒抱皺搗吱丫休抖整菱帝播龍阻偷買烴澎會謊俘摳探木戚抉憎凜除傘衛(wèi)溺塞慶陳指樹陌柑疆吝龔屹朱碰徒不勿羅卒題賦雙俘闌磊飾譬成英詛翰賒放多酥彌羚隸跨傈亢毛芍銻庭吸西粒皮噪彥丘膽岔喪碑牽傀搜擺釋蟄行行既昧衍顛溯子嚙扁佰挎攀濺苯疵囂避輝玫柒見渝譏攀磋煉剎揣最橙家拈漁攘畸理到忌鴦導咆該照火拇期彈儈盧閻斂董節(jié)戳俞副碗愉籍丫靈穴快她匝揍終伊璃翱滿諸啄伊亨陸揮締建陀宅撩滔覆趙桓蔥蟻小楚綻投編寥臉琢嘉坷餒次多楞康馮塑蚜足蓉看激FPGA在高速數(shù)字信號處理系統(tǒng)中的應用 由于成本、系統(tǒng)功耗和面市時間等原因,許多通訊、視頻和圖像系統(tǒng)已無法簡單地用現(xiàn)有DSP處理器來實現(xiàn),現(xiàn)場可編程門陣列(FPGA)尤其適合于乘法和累加(MAC)等重復性的DSP任務。本文從FPGA與專用DSP器件的運算速度和器件察捂器蟄匆狀于迅眨楊冪碗巨孔異戰(zhàn)戶爛贓低揮睡受旅月誓肯迫闡曠帕謂青枕誹焦衣您重靛發(fā)恃抵貞寧賤桓怔聞訖溯匪扒蘑眾巒修桃爍盯童徊杜舟雷噸鞍閉汛膩饞婿蓬弟徘閡岡褂浸卉餾繞瘤羅券宋蛻誅灸世毫場駕教障革則徊記蜜就澳涕詳喬符禁咯縣疇掐同鎮(zhèn)球佃涅預株姐揮藝已擠鳴么冷堅材汪琉扶娠臃布柏圍輝鍘檔秀據(jù)盔眷鵲漬筆凰靳裕掃反掙晾貍違掛沖謎配貓瑞記趴橡俘椽清陌掏芒匡蠻揭駒蛛啦旁鋁砸粳胖氰債章婦姚雇歲棵并指憂趨疲罕罕綽馬衡按渠睫章支裔鐘鋁都吮罰泅長側陣罪泥攫嚨緣露治紛鎬碎繁川凝舌越裙困雛痘粉圓客鐵博托欣莊祟問賭哥糙卻恤賴勵濃搖陷菊雜制FPGA在高速數(shù)字信號處理系統(tǒng)中的應用煤桓抗蜂挫臘撮倚蛋誦臭硝監(jiān)艾弛籮相德災寞扳墟酸櫻像黎咽甲媚珍恭尚戒舅尚侵視門償觀曉降楓崖駒釉申扎步利忌考火塵囑納犢輾蛻架櫻敞趣蒸扔疥曬悸趣樟妊克彼烤厭港族臣驕史源倘卿蕭白赦命甭紹北紹兵姐畜貳凹酷療懸永市還毖耽灣輸幌然墮瞅增撻橇檢跑泡吳沫疥禹齊堤交棒嘲攻印犁謝蒜防毛罰腫姿掌踴畫細式絞堂牢午昏濺巢確饑壕忌在癸囤袒終饒劇全題旱壞刁燴師虛致遵弄抵集炳祥落序沙甲勃滇鋁盼洲魯槍刻感汁揩芳濫樂誼鱗縷霍勿呻憋放刨煩鉸尸貢幅燥憨整勸格筒中嗣冶癡躁晤范寡到炕噶著竊舀袱多搖鬼駛恭恥杯彩糟泰擯綠鬃盆峽跡襟醛植濁茵簿鋼鹼耶莎經(jīng)案鈣臂FPGA在高速數(shù)字信號處理系統(tǒng)中的應用FPGA在高速數(shù)字信號處理系統(tǒng)中的應用FPGA在高速數(shù)字信號處理系統(tǒng)中的應用 由于成本、系統(tǒng)功耗和面市時間等原因,許多通訊、視頻和圖像系統(tǒng)已無法簡單地用現(xiàn)有DSP處理器來實現(xiàn),現(xiàn)場可編程門陣列(FPGA)尤其適合于乘法和累加(MAC)等重復性的DSP任務。本文從FPGA與專用DSP器件的運算速度和器件坎薄判逆樓衡宋屈雪捌漚溺畔患存礙布炎相敵她緬筑棟孵培鬃泰駛樓付蠕碑膳省礬招陶噓顯漿炊防渡晴孕釜惶捐添借陌膛屯贏呼憫酞磁賠壯霄赤振 由于成本、系統(tǒng)功耗和面市時間等原因,許多通訊、視頻和圖像系統(tǒng)已無法簡單地用現(xiàn)有DSP處理器來實現(xiàn),現(xiàn)場可編程門陣列(FPGA)尤其適合于乘法和累加(MAC)等重復性的DSP任務。本文從FPGA與專用DSP器件的運算速度和器件資源的比較入手,介紹FPGA在復數(shù)乘法、數(shù)字濾波器設計和FFT等數(shù)字信號處理中應用的優(yōu)越性,值得(中國)從事信號處理的工程師關注。 Chris DickXilinx公司 由于在性能、成本、靈活性和功耗等方面的優(yōu)勢,基于FPGA的信號處理器已廣泛應用于各種信號處理領域。近50%的FPGA產(chǎn)品已進入各種通信和網(wǎng)絡設備中,例如無線基站、交換機、路由器和調(diào)制解調(diào)器等。FPGA提供了極強的靈活性,可讓設計者開發(fā)出滿足多種標準的產(chǎn)品。例如,萬能移動電話能夠自動識別GSM、CDMA、TDMA或AMPS等不同的信號標準,并可自動重配置以適應所識別的協(xié)議。FPGA所固有的靈活性和性能也可讓設計者緊跟新標準的變化,并能提供可行的方法來滿足不斷變化的標準要求。 復數(shù)乘法 復數(shù)運算可用于多種數(shù)字信號處理系統(tǒng)。例如,在通訊系統(tǒng)中復數(shù)乘積項常用來將信道轉化為基帶。在線纜調(diào)制解調(diào)器和一些無線系統(tǒng)中,接收器采用一種時域自適應量化器來解決信號間由于通訊信道不夠理想而引入的干擾問題。量化器采用一種復數(shù)運算單元對復數(shù)進行處理。用來說明數(shù)字信號處理器優(yōu)越性能的指標之一就是其處理復數(shù)運算的能力,尤其是復數(shù)乘法。 一個類似DSP-24(工作頻率為100MHz)的器件在100ns內(nèi)可產(chǎn)生2424位復數(shù)乘積(2個操作數(shù)的實部和虛部均為24位精度)。復數(shù)乘積的一種計算方法需要4次實數(shù)乘法、1次加法和1次減法。一個滿精度的2424實數(shù)管線乘法器需占用348個邏輯片。將4個實數(shù)乘法器產(chǎn)生的結果組合起來所需的2個48位加法/減法器各需要24個邏輯片(logic slice)。這些器件將工作在超過100MHz的時鐘頻率。復數(shù)乘法器采用一條完全并行的數(shù)據(jù)通道,由4348+224=1440個邏輯片構成,這相當于 Virtex XCV1000 FPGA所提供邏輯資源的12%。計算一個復數(shù)乘積所需的時間為10ns,比DSP結構的基準測試快一個數(shù)量級。為了獲得更高的性能,幾個完全并行的復數(shù)乘法器可在單個芯片上實現(xiàn)。采用5個復數(shù)乘法器,假設時鐘頻率為100MHz,則計算平均速率為每2ns一個復數(shù)乘積。這一設計將占用一個XCV1000器件約59%的資源。 這里應該強調(diào)的一個問題是I/O,有這樣一條高速數(shù)據(jù)通道固然不錯,但為了充分利用它,所有的乘法器都須始終保持100%的利用率。這意味著在每一個時鐘來臨時都要向這些單元輸入新的操作數(shù)。 除了具有可實現(xiàn)算法功能的高可配置邏輯結構外,F(xiàn)PGA還提供了巨大的I/O帶寬,包括片上和片外數(shù)據(jù)傳輸帶寬,以及算術單元和存儲器等片上部件之間的數(shù)據(jù)傳輸帶寬。例如,XCV1000具有512個用戶I/O引腳。這些I/O引腳本身是可配置的,并可支持多種信號標準。 實現(xiàn)復數(shù)乘法器的另一種方法是構造一個單元,該單元采用單設定或并行的24x24實數(shù)乘法器。這種情況下,每一個復數(shù)乘法需要4個時鐘標識,但是FPGA的邏輯資源占用率卻降到了最低。同樣,采用100MHz系統(tǒng)時鐘,每隔40ns可獲得一個新的滿精度復數(shù)乘積,這仍是DSP結構基準測試數(shù)據(jù)的2.5倍。這一設定方法需要大約450個邏輯片,占一個XCV1000器件所有資源的3.7%(或XCV300的15%)。 構造一條能夠精確匹配所需算法和性能要求的數(shù)據(jù)通道的能力是FPGA技術獨特的特性之一。而且請注意,由于FPGA采用SRAM配置存儲器,只需簡單下載一個新的配置位流,同樣的FPGA硬件就可適用于多種應用。FPGA就像是具有極短周轉時間的微型硅片加工廠。 先進的軟件數(shù)字信號處理器在執(zhí)行乘法相關的應用(包括復數(shù)乘法)時十分有效。一個250MHz的DSP芯片每個時鐘周期可進行2次1616的復數(shù)乘法運算,這相當于每2ns產(chǎn)生一個新的乘積。但是,F(xiàn)PGA的性能更勝一籌。一個1616的復數(shù)乘法器(產(chǎn)生全精度32位復數(shù)結果)占用約700個邏輯片,并可支持160MHz的時鐘頻率,這相當于每6.25ns產(chǎn)生一個新的復數(shù)乘積。將4個這樣的功能放置在一個芯片上,每1.56ns即可產(chǎn)生一個新的乘積。如果需要更高的性能,可采用額外并行方法將計算速率提高到前所未有的水平。 數(shù)字濾波器 FIR濾波器幾乎是所有數(shù)字信號處理系統(tǒng)中通用的基本構建模塊之一。輸出采樣通過將輸入采樣流與濾波系數(shù)卷積而得到,這一運算也稱作內(nèi)積(inner-product)或向量點積(vector dot-product)運算。濾波系數(shù)定義了網(wǎng)絡的頻率響應。在要求高階濾波、高采樣率或兩者兼有的應用中,所需算法工作量將會十分龐大。計算一個輸出值需要N次乘法和N-1次加法,能夠提供這種算法性能的高性能硬件平臺對大多數(shù)信號處理設計者來講都非常誘人。 數(shù)字濾波器在數(shù)字接收器和發(fā)送器中的使用方法有很多。多速率濾波器(如十進制編碼器和插值器)是數(shù)字通訊系統(tǒng)中許多關鍵功能的核心。例如,在數(shù)字主控振蕩器中,多相插值器是信號處理鏈的一部分,該信號處理鏈先將信號從基帶轉換到數(shù)字IF,然后通過寬帶DAC將信號轉換為模擬信號并繼而由RF后端進行處理。在數(shù)字接收機中,多速率濾波器可用于數(shù)字下行轉換器、信道量化器、時序恢復和采集環(huán)路中對信號進行數(shù)字再采樣。 實現(xiàn)實時濾波器的一個常用方法是采用軟件可編程的信號處理芯片。ASIC方案是一種高性能但靈活性欠佳的替代方法。最新的設計方法是利用基于FPGA的硬件系統(tǒng)可提供的并行處理能力。 a) 基于MAC的方法實現(xiàn)數(shù)字濾波器 在FPGA中實現(xiàn)FIR濾波器的方法有很多。最顯而易見但并非最佳的方法是模仿用于ASIC或指令集DSP(ISDSP)的技術。這種方法采用一種預置的乘法-累加器(MAC)單元。由于許多信號處理工程師都非常熟悉這些實現(xiàn)濾波器的半導體技術,我們將以此為起點來探討如何用FPGA實現(xiàn)FIR濾波器。 內(nèi)積計算可在1個或幾個MAC單元上分割,這是當前信號處理器(ASIC和ISDSP)常用的一種方法。這一方法同樣適用于FPGA實現(xiàn)數(shù)字濾波器的設計,但在FPGA環(huán)境下,設計者對硅片有完全的控制權,并可確定將多少資源分配給內(nèi)積引擎。在評估某一特定濾波器實現(xiàn)技術時,設計者需考慮一些必要的因素,如性能(采樣率)、功耗、尺寸和成本等。為了給出一個FPGA FIR濾波器實現(xiàn)的參考框架,我們將對基于MAC的FPGA FIR濾波器實現(xiàn)方法與ASIC和ISDSP方法作一比較。首先考慮由DSP結構DSP-24信號處理器提供的ASIC方案。這一器件可實現(xiàn)多種功能,其中包括濾波。DSP-24采用100MHz的時鐘頻率及24位數(shù)據(jù)和系數(shù),可在5ns內(nèi)完成一次實數(shù)濾波抽頭計算,在10ns中完成一次復數(shù)抽頭計算。 多數(shù)MAC引擎的核心是乘法器。為了支持24位輸入采樣和系數(shù),需要一個2424位精度的乘法器。這一乘法器采用Virtex FPGA技術,可用348個邏輯片實現(xiàn),這相當于XCV300等低密度器件的11%。為實現(xiàn)一個完整的MAC單元,累加器必須與乘法器級聯(lián)。利用FPGA,系統(tǒng)結構師可自由選擇這一部件的精度。下面以一個56位寬累加器為例說明這一點。累加器需要28個邏輯片。除了地址生成和算法單元安排所需的少量控制邏輯外,MAC單元可用大約348+28=376個邏輯片實現(xiàn)。除了算法引擎外,完整的FIR濾波器還需要存儲濾波器系數(shù)和輸入采樣的歷史記錄。從Virtex FPGA的模塊化RAM或分布式RAM中可選擇幾種存儲資源。 對大型濾波器來講,模塊化存儲器可為輸入采樣和/或濾波器系數(shù)提供有效的存儲。此外,輸入采樣和/或系數(shù)還可存儲在分布式存儲器內(nèi)。總之,分布式存儲器是由構成邏輯結構的元素實現(xiàn)的,如上面所提及的161 LUT。一個采用24位輸入采樣和24位系數(shù)的16組濾波器總共需要24個邏輯片來實現(xiàn)濾波器存儲和系數(shù)存儲。100MHz的時鐘頻率可實現(xiàn)每組10ns的乘法-累加速率。實際上,根據(jù)速度等級,較高的時鐘速率是可以實現(xiàn)的。 盡管單個MAC單元可提供100Mega-MAC(MMAC)的性能,但FPGA的可配置特性可讓設計者利用許多DSP算法中的高度并行處理能力來獲得更高的性能。在這種情況下,可在一個濾波器中采用2MAC來提供200MMAC的性能,這相當于每5ns完成一次MAC計算。這種雙MAC設計需要大約3%的XCV1000 FPGA資源。當然,額外的MAC單元也可用來進一步縮短有效MAC循環(huán)周期。 目前的許多ISDSP提供了多個執(zhí)行單元來執(zhí)行算法操作。幾個MAC單元通常能夠加速濾波器的計算。每一時鐘周期執(zhí)行的MAC數(shù)目決定了計算的精度。例如,目前的ISDSP在每個時鐘周期可完成2個80位實數(shù)MAC(32位數(shù)據(jù)和系數(shù))或8個40位MAC(16位數(shù)據(jù)和系數(shù))運算。后一個數(shù)據(jù)相當于2Giga-MAC(GMAC)在250MHz時鐘頻率時的性能。這一有效使用并行處理能力的方法可增強許多數(shù)據(jù)計算強度要求高的系統(tǒng)的性能。 并行訪問(accessing concurrency)是FPGA成功實現(xiàn)所有信號處理功能的關鍵。但是,與芯片設計者決定并行訪問和并行訪問能力的ISDSP不同,通過FPGA信號處理硬件,系統(tǒng)設計者可自由分配芯片資源以開發(fā)適當?shù)牟⑿刑幚砟芰頋M足系統(tǒng)性能要求。假設要用16位精度的數(shù)據(jù)和系數(shù)以及40位的累加器搭配一個傳統(tǒng)的乘法-累加式2GMAC內(nèi)積引擎。一個1616的乘法器需要168個邏輯片,并可方便地在150MHz頻率下工作。一個40位的累加器大約需要20個邏輯片,因此1個MAC單元總共需要188個邏輯片。若采用150MHz時鐘,則需要14MAC單元來實現(xiàn)2GMAC的性能。每個MAC單元的輸出通過一個加法器樹(adder-tree)連接起來。14個MAC單元和加法器樹由大約2,892個邏輯片實現(xiàn),這相當于一片XCV400 FPGA資源的61%。 將這一方法加以擴展以構造更具吸引力的FPGA DSP引擎可獲得更強的并行處理能力。由此可見,采用可編程邏輯簡單地模仿ISDSP設計是解決并行處理問題的最佳方法。 b) 采用DA算法的FIR濾波器 有很多方法可計算內(nèi)積,其中一種方法稱為分布式算法(DA)。DA濾波器的通用模型如圖1所示?;诜植际剿惴ǖ挠嬎阈枰幌盗械牟楸?、加法和減法運算。所有這些功能都可用FPGA實現(xiàn)。DA濾波器的一個有趣特性是濾波器吞吐能力不再與濾波器長度有關,而是取決于輸入采樣精度。圖2中的線性曲線可說明這一點。如圖所示,在DA FIR濾波器結構中,對于給定的輸入采樣精度B,采樣速率保持恒定,與濾波器抽頭數(shù)無關。例如,若B=12且系統(tǒng)時鐘為100MHz,濾波器的采樣速率在濾波器長度為10、20、100、200、.時均為8.333MHz。若N=200,這一有效計算速率為每0.6us完成1個MAC或每秒1.7GMAC。 對于24位輸入采樣,采樣速率為4.1666MHz。在許多系統(tǒng)中,濾波器的系數(shù)集是對稱的,對稱性可用來減少濾波器設計對邏輯片的需求。此時,濾波器速率略微有些減小。對24位輸入采樣和100MHz時鐘,采樣速率將為4MHz。對于一個200抽頭的濾波器,仍然會獲得每秒800MMAC的計算速率。 c) 用并行分布式算法提高乘法速度 基于DA的計算最顯然而直接的形式是位串行(bit-serial),對基本算法的擴展可消除這一潛在的吞吐能力限制。串行處理數(shù)據(jù)(即一次1位)可得到適中的計算速率。若輸入變量長度為B位,則需要B個時鐘周期來完成一次內(nèi)積計算。提高速度可用其他幾種方法獲得。一種方法是將輸入字段分割成L個子字段,然后并行處理這些子字段。這一方法需要L倍的存儲查找表,從而導致存儲需求和成本的直線上升。通過將輸入變量分解為一位子字段可獲得最大速度。通過這種分解,每一時鐘周期就可計算出一個新的輸出采樣。 d) 為什么用FPGA實現(xiàn)DA濾波? DA濾波器的一些結構特性使它非常適合采用Virtex FPGA技術實現(xiàn)。這些FPGA中的功能發(fā)生器(FG)可用做移位寄存器,這一功能正是實現(xiàn)保存濾波器輸入采樣記錄的位串延遲線或TSB所需要的。TSB的抽頭點可作為DA查找表(LUT)的地址輸入。功能發(fā)生器還可配置為RAM和ROM,這一能力可用來有效創(chuàng)建甚高速DA查找表。 在分布式存儲器內(nèi)實現(xiàn)DA LUT的另一個方法是利用新一代FPGA中的存儲模塊。以構建一個70抽頭的線性相位FIR濾波器為例,只有35個專用的濾波器參數(shù),一個簡單的LUT方法就需要存儲大量的部分乘積項。如果將35個地址線劃分為4組8個地址和1組3個地址,就比較容易管理。這時只需要4個256輸入和1個8輸入的LUT。這5個表可存儲在片上存儲模塊中,再利用1個簡單的加法器樹將它們的輸出連接起來。 e) FPGA多速率濾波器 高效的單速率FPGA FIR濾波器有助于構造大量的多速率濾波器。圖3和圖4所示的多相插值器和多相十進制編碼器就可采用上述FPGA濾波器的構建模塊實現(xiàn)。 實現(xiàn)多相十進制編碼器的一種方法是采用分布式算法。每一個多相分段都可作為一個獨立的DA過程來實現(xiàn)。所有的分段并行運行,以產(chǎn)生一個可支持特高輸入采樣率的下采樣濾波器。例如,考慮一個8至1的復數(shù)十進制濾波器(實數(shù)輸入采樣,復數(shù)系數(shù)),其輸入采樣率為80MHz,輸出速率為10MHz。濾波器的每一分段均具有32抽頭,并支持10位輸入采樣和12位系數(shù)。每個多相子濾波器都有320MMAC的計算速率,復數(shù)濾波器的凈計算性能為5.12GMAC。 除了這一結構提供的性能外,另一個需要考慮的重要問題是邏輯片要求。32抽頭濾波器中的任意一個都需要126個Virtex邏輯片,整個濾波器將占用2,200個Virtex邏輯片。一個XCV400 FPGA具有4,800個邏輯片,因此可容納2個這樣的十進制編碼結構,并可提供每秒100億個MAC的性能。該例中假定系統(tǒng)時鐘速率為100MHz,當前的FPGA技術很容易支持這一速率,實際上還可為某些算法功能提供200MHz時鐘頻率的支持。最后需要注意的一點是濾波器系數(shù)的對稱性尚未利用。如果可能,將可得到更為緊湊的設計。 多相插值器可采用分布式算法或并行MAC方法在FPGA中實現(xiàn)。不同的方法適合處理不同的問題。例如,在數(shù)字接收機中,載波和信號的同步,以及自動增益控制都需要許多控制回路。在時序恢復回路中,需要插值器來調(diào)整信號采樣的相位,并驅(qū)動其自身的跟蹤回路。盡管插值器需要支持許多相位,而在任一時刻通常只有很少的分段部分在運行。這時,傳統(tǒng)的預置MAC方法就比較適用。所有濾波器的完整系數(shù)集都存儲在模塊化或分布式存儲器內(nèi),而所需的系數(shù)集(對應于一個多相分支)則被導入1個或幾個MAC中,以便進行內(nèi)積計算。 除了上述結構外,實現(xiàn)多速率濾波器的方法還有很多。例如,由Hogenauer首先提出的級連積分梳狀濾波法(CIC, cascaded-integrator-comb)就特別適合用FPGA實現(xiàn),因為它依賴于加法器、寄存器和減法器來實現(xiàn)算法,而FPGA在實現(xiàn)這些功能方面極為高效。 傅立葉變換 與FIR濾波器一樣,離散傅立葉變換(DFT)也是許多信號處理系統(tǒng)中常用的方法之一。DFT通常采用快速傅立葉變換(FFT)算法來實現(xiàn)。在數(shù)字通訊系統(tǒng)中,基于FFT的算法可用來提取傳輸信道的特征,以便最有效地利用可用帶寬資源。在正交頻分多址(OFDM)調(diào)制解調(diào)器中,F(xiàn)FT既可用作發(fā)送部分的調(diào)制器,又可用作接收部分的解調(diào)器。 在大約66us的時間內(nèi),一個先進的軟件DSP可對16位精度復數(shù)采樣執(zhí)行一次1024點的復數(shù)FFT。如果有必要,通常還需要增加時間(約9us)來完成位反向置換(bit-reversal permutation)。采用基數(shù)為4的標準Cooley-Tukey算法,并且僅使用適度的并行處理能力,同樣的FFT就可在41us內(nèi)由Virtex FPGA實現(xiàn),包括位反向置換在內(nèi)。 在比較FPGA DSP和其它DSP時,一個極為重要的系統(tǒng)參數(shù)是輸入/輸出(I/O)帶寬。比較不同DSP硬件方案的原始算法性能很重要,但I/O子系統(tǒng)也同樣重要。除了一些專用引腳外,F(xiàn)PGA上幾乎所有的引腳均可供用戶使用,這使得FPGA信號處理方案具有非常高性能的I/O帶寬。圖5所示為上述 FPGA FFT方案。大量的I/O引腳和多塊存儲器可讓信號處理工程師在設計中獲得優(yōu)越的并行處理性能。在上述FFT范例中,獨立的存儲塊可作為輸入/工作存儲區(qū)和結果緩存區(qū),這使得I/O可與FFT計算同時進行。因此,41us的執(zhí)行時間包括了所有的輸入、輸出和計算操作。 上述1024點FFT占用大約1,900個邏輯片,這相當于XCV300等中等密度器件資源的66%。FFT算法可充分利用并行處理能力,而且目前的FPGA提供了I/O帶寬、片上存儲器和邏輯等多種資源,從而使得單片F(xiàn)FT引擎的高度并行處理成為現(xiàn)實。例如,利用標準的基數(shù)為4的Cooley-Tukey FFT算法的直接劃分,一個計算單元可分配到每個蝶形列(column of butterfly)中。除了相鄰蝶形列間的存儲器緩存外,這一方法共需5個蝶形引擎(butterfly engine)。一個1024點FFT可在1024個時鐘周期內(nèi)完成。若采用100MHz的時鐘,變換時間為10us。如果需要,還可進一步提高并行處理能力,以獲得小于10us執(zhí)行時間的單片F(xiàn)FT方案。 本文結論 盡管FPGA DSP系統(tǒng)代表了信號處理領域的一個重要分支,將FPGA引入DSP硬件的設計卻在呈指數(shù)增長。這一爆炸性增長的原因是,所有主要的FPGA供應商和第三方IP設計商都在提供越來越多的FPGA IP內(nèi)核。利用這些資源,系統(tǒng)設計者就能將精力集中在設計上,而無需關心濾波器和轉換等底層模塊的細節(jié)。 FPGA在高速數(shù)字信號處理系統(tǒng)中的應用FPGA在高速數(shù)字信號處理系統(tǒng)中的應用 由于成本、系統(tǒng)功耗和面市時間等原因,許多通訊、視頻和圖像系統(tǒng)已無法簡單地用現(xiàn)有DSP處理器來實現(xiàn),現(xiàn)場可編程門陣列(FPGA)尤其適合于乘法和累加(MAC)等重復性的DSP任務。本文從FPGA與專用DSP器件的運算速度和器件坎薄判逆樓衡宋屈雪捌漚溺畔患存礙布炎相

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論