用FPGA實現(xiàn)音頻采樣率的轉(zhuǎn)換
顯然,用FPGA實現(xiàn)音頻頻率的采樣率轉(zhuǎn)換器存在以下問題:
1. 算法問題:
a. 可能的最高信噪比
b. 原始信號所載信息的可能最小變化
c. 算法的有效描述,因為FPGA中的資源消耗在很大程度上取決于描述的質(zhì)量
d. 量化
2. 實現(xiàn)問題:
a. 邏輯正確的算法實現(xiàn)
b. FPGA資源限制
c. 速度優(yōu)化實現(xiàn)
d. 延遲
轉(zhuǎn)換需要較高的時鐘速度,因為具體實現(xiàn)取決于對轉(zhuǎn)換信號的足夠過采樣。FPGA系統(tǒng)時鐘頻率與待轉(zhuǎn)換信號的頻率差異必須相應(yīng)較大。
FDA 工具可幫助生成和驗證各種FIR和IIR濾波器。該工具是Simulink信號處理工具箱的組成部分,Synplify DSP就是使用此工具箱實現(xiàn)濾波器結(jié)構(gòu)
對于CD質(zhì)量的音頻信號,還要求信噪比不得低于100dB。專業(yè)應(yīng)用甚至需要大于 120dB的音頻信號。就信號質(zhì)量而言,其他低頻信號(如控制電路算法)遠不如音頻信號那樣苛刻。
算法
多相FIR濾波器結(jié)構(gòu)需要轉(zhuǎn)換采樣率(異步重采樣)。算法包括兩步,第一步是頻率過采樣,第二步是線性插值,這是從給定頻率生成不同頻率時需要的。這兩個頻率相互異步。
以單步方式進行信號重采樣所需資源較多,因為濾波器會較復(fù)雜。這種實現(xiàn)需要數(shù)百萬次乘法運算。這樣的描述效率很低的,應(yīng)當加以避免。如果線性插值在第二步實現(xiàn),那么結(jié)構(gòu)就會簡單得多(圖3)。
圖3:分兩步實現(xiàn)采樣率轉(zhuǎn)換器(一、過采樣;二、線性插值)以提高效率。
高效地描述過采樣(第一步)是讓 FPGA實現(xiàn)節(jié)省資源的唯一方法。如果用若干級聯(lián)級而非單一運算步驟來實現(xiàn)這部分電路,所需運算數(shù)量就會大大減少。
在算法實現(xiàn)時,必須確定執(zhí)行運算的目標架構(gòu)(DSP或FPGA)。與具有固定架構(gòu)的數(shù)字信號處理器不同,F(xiàn)PGA可實現(xiàn)任何架構(gòu)。不過,當實現(xiàn)大量單獨的乘法運算時,F(xiàn)PGA最終會受到器件尺寸的限制。
所需乘法器的數(shù)量將隨著濾波器抽頭的增加而增加。每個抽頭都需要使用一個DSP模塊或乘法器。當級聯(lián)重采樣電路時,各濾波器必須執(zhí)行復(fù)雜程度很低的功能。從理論上講,單獨的級越多,濾波器的實現(xiàn)就越好。
評論