新聞中心

        EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 用FPGA實現(xiàn)音頻采樣率的轉(zhuǎn)換

        用FPGA實現(xiàn)音頻采樣率的轉(zhuǎn)換

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

        減少運算次數(shù)之方法的數(shù)學推導(dǎo)在技術(shù)文獻中已有廣泛論述。實踐結(jié)果表明,盡管有必要級聯(lián)濾波器電路,但必須對級聯(lián)的數(shù)數(shù)加以限制。如果使用級聯(lián)級數(shù)過多,就可能超過實現(xiàn)設(shè)計的可用資源。如果用作為目標架構(gòu),實踐證明兩級電路最好。

        整個電路由用于過采樣的兩個相對簡單的濾波器和一個簡單的線性插值器組成。這種結(jié)構(gòu)可以有效地映射到

        設(shè)計實現(xiàn)

        可以在Simulink中用Synplify DSP模塊集和Simulink的濾波器設(shè)計與分析(FDA)工具實現(xiàn)該電路。FDA工具可幫助生成和驗證各種FIR和IIR濾波器。該工具是Simulink信號處理工具箱的組成部分,Synplify DSP就是使用此工具箱實現(xiàn)濾波器結(jié)構(gòu)。

        Synplify DSP模塊集或FDA工具提供的所有電路元件在PortIN和PortOUT描述之間都有定義,它們能夠生成VHDL或Verilog代碼。 Simulink模塊集中的FFT和SCOPE元件對動態(tài)響應(yīng)進行頻譜分析和驗證。這些模塊專門用于功能驗證,包括浮點到定點功能(量化)。這些模塊都不用硬件實現(xiàn)。

        算法實現(xiàn)的第一部分包括兩個FIR濾波器:第一個濾波器有512個抽頭,第二個濾波器有6?個抽頭。因此,由過采樣生成的RTL代碼共含有576個乘法運算,這正是使用顯得并不具有商業(yè)可行性的原因。這么大的FPGA會受到成本制約,因為需要用到有 6?0個DSP48模塊的特大型Xilinx Virtex-5 XC5VSX95T器件。

        未映射到專用硬件結(jié)構(gòu)(DSP模塊)的所有乘法運算都必須用通用邏輯資源(LUT或寄存器)構(gòu)建。這樣會導(dǎo)致資源要求上升而最高時鐘速度下降。與通用邏輯單元相比,專用的DSP48模塊作為乘法器會有效得多(圖4)。

        4.jpg
        圖4:用Simulink的濾波器設(shè)計與分析(FDA)工具實現(xiàn)濾波器。

        設(shè)計優(yōu)化

        Synplify DSP的折疊選項可用來盡量減少所用乘法器的數(shù)量。在低采樣頻率下工作的電路尤其可從這一優(yōu)化中受益。

        其原理很簡單。通常,每個乘法運算使用一個硬件乘法器,即使對于千赫級采樣頻率也是如此。然而,F(xiàn)PGA能以數(shù)百兆赫級的時鐘速度工作。如果硬件乘法器在FPGA的系統(tǒng)頻率下工作,就可以用時間多路復(fù)用過程按時序處理乘法運算。

        假設(shè)電路的采樣頻率是3MHz,而FPGA最高可以在120MHz頻率下運行。如果以系統(tǒng)頻率運行乘法器,則每個硬件乘法器可以執(zhí)行40次運算。此時所需硬件可以減少40倍。也就是說可以將上述器(或使用低采樣頻率的任何其他電路)“折疊”到僅需要很少硬件乘法器的程度。所以,也可以在現(xiàn)有最小的低成本FPGA中實現(xiàn)這種器,從而真正取代DSP。

        當然,還可能將計算量特別大的算法從DSP卸載到FPGA,從而減輕處理器的負荷。如果您的DSP應(yīng)用已經(jīng)超過性能極限,而且您已經(jīng)為針對特定DSP架構(gòu)的應(yīng)用源代碼作出大量投入,那么這種方法尤其有用(圖5)。

        5.jpg
        圖5:可以用折疊功能顯著減少所需的FPGA資源。



        關(guān)鍵詞: FPGA 音頻 采樣率 轉(zhuǎn)換

        評論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 江山市| 长汀县| 芜湖县| 岳阳县| 谢通门县| 双流县| 延边| 葫芦岛市| 水城县| 西乡县| 谷城县| 柘城县| 个旧市| 甘孜县| 东光县| 商洛市| 贞丰县| 牟定县| 开平市| 玉山县| 仪征市| 扎鲁特旗| 怀仁县| 五峰| 武汉市| 永泰县| 中西区| 卢氏县| 岗巴县| 仙居县| 革吉县| 阳原县| 江门市| 通道| 明水县| 河池市| 革吉县| 柞水县| 屏东县| 潞城市| 中牟县|