基于fpga的數(shù)字信號(hào)處理方法

基于fpga的數(shù)字信號(hào)處理方法

ID:11830426

大小:1.45 MB

頁(yè)數(shù):17頁(yè)

時(shí)間:2018-07-14

基于fpga的數(shù)字信號(hào)處理方法_第1頁(yè)
基于fpga的數(shù)字信號(hào)處理方法_第2頁(yè)
基于fpga的數(shù)字信號(hào)處理方法_第3頁(yè)
基于fpga的數(shù)字信號(hào)處理方法_第4頁(yè)
基于fpga的數(shù)字信號(hào)處理方法_第5頁(yè)
資源描述:

《基于fpga的數(shù)字信號(hào)處理方法》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。

1、基于FPGA的數(shù)字信號(hào)處理方法簡(jiǎn)介姬耀1引言數(shù)字信號(hào)處理就是用數(shù)值計(jì)算的方式對(duì)信號(hào)進(jìn)行加工的理論和技術(shù),主要研究有關(guān)數(shù)字濾波技術(shù)、離散變換快速算法以及譜分析方法。現(xiàn)場(chǎng)可編程門陣列(FieldProgrammableGateArrays,F(xiàn)PGA)以其豐富的邏輯資源和I/O引腳、低功耗、高可靠性以及可重構(gòu)等特點(diǎn),與通用DSP解決方案相比,F(xiàn)PGA器件在不犧牲靈活性的條件下,提供了更高的性能,逐步成為較為理想的實(shí)現(xiàn)平臺(tái)。FPGA的設(shè)計(jì)描述通常分為四個(gè)抽象級(jí),由低到高依次為:物理級(jí)、寄存器傳輸級(jí)(RegisterTransferLevel,RTL)、行為級(jí)和系統(tǒng)級(jí)。傳統(tǒng)的FPGA設(shè)計(jì)基于自頂向下設(shè)

2、計(jì)方法采用硬件描述語(yǔ)言(HardwareDescriptionLanguage,HDL)與VerilogHDL進(jìn)行。隨著FPGA在性能和密度上的發(fā)展十分迅猛,傳統(tǒng)開發(fā)方法出現(xiàn)不足,高層次綜合(HighLevelSynthesis,HLS)應(yīng)運(yùn)而生最近幾年其相關(guān)技術(shù)日趨成熟且被廣泛使用。這種高層次綜合可以使算法和軟件工程師們?cè)跓o(wú)需擁有HDL和硬件知識(shí)的基礎(chǔ)上,使用FPGA進(jìn)行算法驗(yàn)證、移植和計(jì)算加速。本文主要介紹基于FPGA的數(shù)字信號(hào)處理的傳統(tǒng)設(shè)計(jì)方法、高層次綜合設(shè)計(jì)VIVADOHLS、OpenCL、SystemGenerator、DSPBuilder以及NI專用LabVIEWFPGA的設(shè)計(jì)工

3、具。2高層次設(shè)計(jì)方法高層次綜合的概念最早在20世紀(jì)70年代被提出,是在一定的約束下,將系統(tǒng)層和算法層轉(zhuǎn)化成RTL級(jí)描述的方法和過(guò)程。系統(tǒng)層和算法層可以用相比于HDL更高級(jí)的編程語(yǔ)言,如Java、C、C++、Matlab等進(jìn)行更加簡(jiǎn)潔、直觀描述。為了便于設(shè)計(jì)者進(jìn)行高層次、系統(tǒng)級(jí)的設(shè)計(jì),所以需要將底層的綜合過(guò)程交給開發(fā)工具進(jìn)行。90年代中期的時(shí)候,Synopsys、Cadence和MentorGraphics等EDA公司推出了商業(yè)化的、基于HDL語(yǔ)言的HLS開發(fā)工具,但是不成熟技術(shù)導(dǎo)致了市場(chǎng)化的失敗。近年來(lái),基于高級(jí)編程語(yǔ)言的HLS開發(fā)工具在解決了前一代開發(fā)工具的不足的基礎(chǔ)上,迅速發(fā)展,已在FP

4、GA設(shè)計(jì)的市場(chǎng)中占有了一席之地,基于高層次綜合的FPGA設(shè)計(jì)也已經(jīng)逐步進(jìn)入市場(chǎng)化和商業(yè)化。2.1基于C/C++的工具簡(jiǎn)介XilinxVIVADOHLS編譯器為我們提供了與面向標(biāo)準(zhǔn)處理器或?qū)S锰幚砥鞯膽?yīng)用開發(fā)的編譯器相類似的集成編譯支持環(huán)境,XilinxVIVADOHLS與其他各種處理器編譯器在對(duì)C語(yǔ)言程序或C++語(yǔ)言程序的編譯、分析和優(yōu)化擁有相同的關(guān)鍵技術(shù),而區(qū)別在于應(yīng)用所面向的執(zhí)行目標(biāo)。通過(guò)把FPGA作為執(zhí)行目標(biāo),XilinxVIVADOHLS使得軟件開發(fā)工程師能夠借助它來(lái)實(shí)現(xiàn)代碼的優(yōu)化,并且不受單一存儲(chǔ)空間或者有限的開發(fā)資源這些開發(fā)瓶頸的限制,從而使得計(jì)算量密集型軟件算法得以被實(shí)際應(yīng)用。

5、XilinxVIVADOHLS所使用的應(yīng)用代碼同其他處理器編譯器一樣面向的范疇一樣,通過(guò)操作語(yǔ)句、條件語(yǔ)句、循環(huán)語(yǔ)句、以及函數(shù)等4個(gè)范疇來(lái)分析程序。在HLS中,循環(huán)和函數(shù)之間的主要區(qū)別是相關(guān)的術(shù)語(yǔ)。系統(tǒng)的循環(huán)和函數(shù)并行執(zhí)行。而循環(huán)中,因?yàn)樵谘h(huán)迭代和運(yùn)算符間有一個(gè)清晰的結(jié)構(gòu)差異,這種轉(zhuǎn)換通常稱為流水線。對(duì)函數(shù)而言,外循環(huán)和內(nèi)循環(huán)相處于同一層次,這導(dǎo)致如果長(zhǎng)期使用它可能會(huì)出現(xiàn)流水線混亂。在使用HLS時(shí),我們可以避免這種混亂,因?yàn)楹瘮?shù)調(diào)用執(zhí)行的并行化可以使得數(shù)據(jù)流優(yōu)化。數(shù)據(jù)流優(yōu)化指令使得HLS在給定的程序?qū)哟谓Y(jié)構(gòu)中對(duì)所有的函數(shù)創(chuàng)建獨(dú)立的硬件模塊。這些獨(dú)立的硬件模塊可以并行執(zhí)行并且具有獨(dú)立的同步數(shù)

6、據(jù)傳輸過(guò)程。除了XilinxVivadoHLS外Altera公司針對(duì)自己的器件也有OpenCL工具進(jìn)行對(duì)C等高級(jí)語(yǔ)言設(shè)計(jì)自動(dòng)編譯。2.2基于MATLAB的工具簡(jiǎn)介AlteraDSPBuilder將TheMathWorksMATLAB和Simulink系統(tǒng)級(jí)設(shè)計(jì)工具的算法開發(fā)、仿真和驗(yàn)證功能與VHDL綜合、仿真和Altera開發(fā)工具整合在一起,實(shí)現(xiàn)了這些工具的集成。DSPBuilder在算法友好的開發(fā)環(huán)境中幫助設(shè)計(jì)人員生成DSP設(shè)計(jì)硬件表征,從而縮短了DSP設(shè)計(jì)周期。已有的MATLAB函數(shù)和Simulink模塊可以和AlteraDSPBuilder模塊以及Altera知識(shí)產(chǎn)權(quán)(IP)MegaC

7、ore功能相結(jié)合,將系統(tǒng)級(jí)設(shè)計(jì)實(shí)現(xiàn)和DSP算法開發(fā)相鏈接。DSPBuilder支持系統(tǒng)、算法和硬件設(shè)計(jì)共享一個(gè)公共開發(fā)平臺(tái)。設(shè)計(jì)人員可以使用DSPBuilder模塊迅速生成Simulink系統(tǒng)建模硬件。DSPBuilder包括比特和周期精度的Simulink模塊,涵蓋了算法和存儲(chǔ)功能等基本操作??梢允褂肈SPBuilder模型中的MegaCore功能實(shí)現(xiàn)復(fù)雜功能的集成。DSPBuilder是一個(gè)系統(tǒng)級(jí)(或算法

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。