新聞中心

        EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于Nios的FFT算法軟硬件協(xié)同設(shè)計

        基于Nios的FFT算法軟硬件協(xié)同設(shè)計

        作者: 時間:2010-12-07 來源:網(wǎng)絡(luò) 收藏

        摘要:在深入研究自定制指令的接口的基礎(chǔ)上,利用Matlab/DSP Builder建立快速傅里葉變換核心運算指令基本模型,然后用Altera公司提供的Singacompiler工具對其進(jìn)行編譯,產(chǎn)生 QuartusⅡ能夠識別的VHDL源程序,并將此程序在中自定制成相關(guān)的運算指令。利用自定制的運算指令,在中利用C語言 編寫基于Nios的FFT程序,實現(xiàn)了FFT運算的協(xié)同設(shè)計。經(jīng)測試表明,將FFT加入到Nios嵌入式處理器指令集中,可以幫助系統(tǒng)完成 復(fù)雜的數(shù)據(jù)處理任務(wù),增強(qiáng)Nios系統(tǒng)的實時處理能力。該設(shè)計方法打破了間的屏障,大大加快了系統(tǒng)的功能驗證。
        關(guān)鍵詞:FFT;自定制指令;軟硬件協(xié)同設(shè)計;EP2C5Q208C8

        在自動控制領(lǐng)域,往往要對被控對象進(jìn)行狀態(tài)檢測,從而作出下一步的處理,達(dá)到控制的目的,因此自動控制系統(tǒng)離不開對被控系統(tǒng)的狀態(tài)進(jìn)行監(jiān)測,以便對其進(jìn)行 處理,例如滾動軸承故障、電動機(jī)故障等均可以利用頻譜分析法對其進(jìn)行狀態(tài)監(jiān)測和故障診斷。要檢測被控對象的狀態(tài),就離不開數(shù)字信號處理,因此,數(shù)字信號處 理應(yīng)用廣泛。并且FFT(快速傅里葉變換)促進(jìn)了數(shù)字信號處理的發(fā)展,它可應(yīng)用傅里葉變換理論所能涉及的任何領(lǐng)域。對于FFT工程的實現(xiàn)方法有軟件法和硬 件法,即通過軟件程序完成FFT運算,這種方法可適用于各種數(shù)字信號處理的應(yīng)用場合,很靈活,但缺點是不能進(jìn)行實時處理。而使用專用硬件完成數(shù)字信號處理 的方法能夠?qū)崿F(xiàn)實時處理,但外圍電路相對復(fù)雜,不易擴(kuò)展,靈活性差,且價格昂貴。因此人們一方面尋求結(jié)構(gòu)簡單、運算速度快,存儲量小的FFI實現(xiàn)方法,另 一方面采用先進(jìn)的VLSI技術(shù)改進(jìn)實現(xiàn)FFT的硬件結(jié)構(gòu),將硬件化。
        Nios嵌入式處理器是FPGA生產(chǎn)廠商Althera推出的軟核CPU,它是一種面向用戶的、可靈活定制的通用RISC嵌入式CPU。用戶可以在 Nios指令系統(tǒng)中增加用戶自定義指令,以增強(qiáng)對強(qiáng)實時軟件算法的處理能力,可以把一個復(fù)雜的標(biāo)準(zhǔn)指令序列簡化為一條用硬件實現(xiàn)的單個指令。特別是在需要 使用大量FFT算法的場合,可以根據(jù)用戶的需要,定制專門的FFT處理器硬件和定制一些諸如復(fù)數(shù)乘法或復(fù)數(shù)加法等傳統(tǒng)運算指令,使Nios系統(tǒng)不但具有常 規(guī)數(shù)字信號處理器功能,而且具有軟件實現(xiàn)FFT運算處理的特點。

        1 FFT算法原理
        1.1 按時間抽取的基-2 FFT算法
        設(shè)序列x(n)長度為N,且滿足N=2M,M為正整數(shù)。按n的奇偶把x(n)分解為2個N/2點的子序列:
        a.JPG
        則可將DFT化為:
        b.JPG
        式中,X1(k)與X2(k)分別是x1(r)及x2(r)的N/2點DFT。


        上一頁 1 2 3 4 下一頁

        關(guān)鍵詞: Nios FFT 算法 軟硬件

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 翁牛特旗| 奇台县| 中西区| 集安市| 姜堰市| 库伦旗| 开远市| 万载县| 东阿县| 苗栗市| 仁化县| 牟定县| 三都| 屏东县| 富川| 关岭| 澎湖县| 贵德县| 区。| 城口县| 江油市| 湘阴县| 婺源县| 吉安县| 九台市| 连山| 华宁县| 雷波县| 赤壁市| 翁牛特旗| 磐安县| 肃北| 玉山县| 旬邑县| 黄骅市| 兴国县| 申扎县| 绍兴市| 安福县| 铜梁县| 中江县|