1 xilinx fir ip 簡介
1)符合 AXI4-Stream 的接口
2)高性能有限脈沖響應(yīng)(FIR),多相抽取器,多相內(nèi)插器,半帶,半帶抽取器和半帶內(nèi)插器,希爾伯特變換和內(nèi)插濾波器實現(xiàn)
3)最多支持 256 組系數(shù),處理一組以上時,每組 2 至 2048 個系數(shù)。
4)輸入數(shù)據(jù)高達 49 位精度
5)濾波器系數(shù)高達 49 位精度
6)支持多達 1024 個交錯數(shù)據(jù)通道
7)支持高級交錯數(shù)據(jù)通道序列
8)通過共享控制邏輯支持多個并行數(shù)據(jù)通道
9)插值和抽取因子通常最多為 64,單通道濾波器的最大為 1024
10)支持大于時鐘頻率的采樣頻率
11)在線系數(shù)重裝能力
12)用戶可選的輸出舍入
13)高效的多列結(jié)構(gòu),適用于所有過濾器的實現(xiàn)和優(yōu)化
Fir 公式
常規(guī)抽頭延遲線 FIR 濾波器表示
2 設(shè)計驗證思路
如上圖所示,混頻模塊內(nèi)部包含兩個 dds 模塊,一個產(chǎn)生 2khz sine 波,一個產(chǎn)生 3khz sine 波,然后相乘得到 1khz+6khz 的混頻,然后使用 xilinx FIR IP 設(shè)計一個低通濾波器濾掉 6khz,最后只剩 1khz。
3 matlab fdatool 設(shè)計低通濾波器
1)打開 fdatool
2)低通濾波器設(shè)計
Fs=44100;
Fpass =3000;
Fstop =5000;
Apass = 1;
Astop =120;
幅頻響應(yīng)如下圖所示。
3 系數(shù)量化
4)matlab 導(dǎo)出 .coe
4 xilinx FIR IP的設(shè)置與仿真
如上圖所示,左側(cè)包含 IP Symbol、Freq.Response、Implementation Details 和 CoefficientReload。右側(cè)包括 Filter Options、Channel Specification、Implementation、Detailed Implementation、Interface 和 Summary.
1) Filter Options
(1)系數(shù)源(Coefficient Source):直接在 GUI 中使用系數(shù)矢量參數(shù)或使用由 CoefficientFile 參數(shù)指定的 .coe 文件,指定要使用的系數(shù)輸入。
(2)系數(shù)向量(Coefficient Vector ):用于直接在 GUI 中指定濾波器系數(shù)。過濾器系數(shù)使用逗號分隔列表以十進制形式指定,與過濾器系數(shù)數(shù)據(jù)文件中的 coefdata 字段相同。與 .coe 文件一樣,可以使用 FIR 編譯器根據(jù)您的要求適當量化的非整數(shù)實數(shù)來指定濾波器系數(shù)。
(3)濾波器類型(Filter Typ ):支持五種濾波器類型:單速率 FIR,插值 FIR,抽取 FIR,希爾伯特變換和插值 FIR。
2) Channel Specification
(1)選擇格式(Select format ):選擇用于指定硬件過采樣率,內(nèi)核可用于處理輸入采樣并生成輸出的時鐘周期數(shù)的格式。該值直接影響核心實現(xiàn)和所使用資源的并行度。選擇“頻率規(guī)格”后,可以指定“輸入采樣頻率”和“時鐘頻率”。這些值之間的比率以及其他核心參數(shù)決定了硬件過采樣率。
選擇“輸入采樣周期”時,可以指定輸入采樣之間的時鐘周期數(shù)。同樣,選 擇“輸出采樣周期”時,可以指定輸出采樣之間的時鐘周期數(shù)。
(2)采樣周期(Sample Period ):輸入或輸出采樣之間的時鐘周期數(shù)。當指定了多個通道時,該值應(yīng)該是時分多路復(fù)用輸入樣本數(shù)據(jù)流之間時鐘周期的整數(shù)??梢允褂梅謹?shù)采樣周期來指定大于時鐘頻率的采樣頻率 。
(3)輸入采樣頻率(Input Sampling Frequency ):該字段可以是整數(shù)或?qū)崝?shù)值;它指定一個通道的采樣頻率。根據(jù)時鐘頻率和濾波器參數(shù)(例如插值率和通道數(shù))設(shè)置上限。
(4)時鐘頻率(Clock Frequency ):此字段可以是整數(shù)或?qū)崝?shù)值。限制是根據(jù)采樣頻率,內(nèi)插率和通道數(shù)設(shè)置的。該領(lǐng)域僅影響體系結(jié)構(gòu)選擇。最終的實現(xiàn)可能無法達到指定的時鐘速率。
3) Implementation
(1)系數(shù)類型(Coefficient Type ):系數(shù)數(shù)據(jù)可以指定為有符號或無符號。
(2)輸入數(shù)據(jù)小數(shù)位(Input Data Fractional Bits ):用于表示過濾器輸入數(shù)據(jù)樣本的小數(shù)部分的輸入數(shù)據(jù)寬度位數(shù)。該字段僅供參考。它與系數(shù)小數(shù)位一起使用,以計算濾波器的輸出小數(shù)位值。此參數(shù)在 IP 集成器中自動設(shè)置,但也可以被覆蓋。
(3)輸出舍入模式(Output Rounding Mode ):指定要應(yīng)用于過濾器輸出的舍入類型。
(4)輸出小數(shù)位(Output Fractional Bits ):此字段報告用于表示濾波器輸出樣本小數(shù)部分的輸出寬度位數(shù)
4) Interface
5) Freq.Response
將混頻信號和經(jīng)過 xilinx FIR IP 濾波后信號寫出 matlab 觀察時域和頻域 。
1 混頻信號
濾波前的 1khz+6khz 的混頻信號。
2 濾波后
如上所示,經(jīng)過濾波后 6khz 完全被濾除,只剩下 1khz 信號。仿真驗證成功。
? ? ? ?責任編輯:pj
評論
查看更多