1. 程式人生 > >使用fdatool生成Xilinx中FIR濾波器IP核的係數

使用fdatool生成Xilinx中FIR濾波器IP核的係數

  1. 在MATLAB命令視窗輸入fdatool後回車,開啟“Filter Designer & Analysis Tool”工具介面:
    這裡寫圖片描述
  2. 點選左下角的Set quantization parameter,設定Filter arithmetic為Fixed-point(定點,由於有些FPGA中是不能直接對浮點數進行操作的,只能採用定點數進行數值運算,參考http://blog.csdn.net/gsh_hello_world/article/details/78742769):
    這裡寫圖片描述
  3. 點選左下角的Design filter,進入濾波器引數設定頁面,在其中設定取樣頻率(Fs)、通帶頻率(Fpass)、阻帶頻率(Fstop)、通帶衰減(Apass)以及阻帶衰減(Astop)等引數,並點選最下面的“Design Filter”按鈕生成濾波器係數:
    這裡寫圖片描述
  4. Targets —> XILINX Coefficient(.COE) File匯出coe檔案,此檔案中的係數是以定點十六進位制表示的,每個資料長度為16位(由Numerator word length決定),其為實際浮點資料左移17位(由Numerator frac. length決定)得到,例如實際浮點資料第一個係數為0.001,定點表示為0x0081((int)0.001 * 2 ^ 17 = 131 = 0x0081,即0.001左移17位):
    這裡寫圖片描述
  5. 也可以點選File —> Export匯出濾波器係數到matlab的工作區workspace,快捷鍵Ctrl+E,這種方式匯出的是實際浮點資料:
    這裡寫圖片描述
  6. 在ISE中新建一個FIR濾波器IP核,在第一頁設定中將“Select Source”改為“COE File”,然後在下面選擇上一步生成的coe檔案即可:
    這裡寫圖片描述

    之後生成IP核的步驟參考部落格:http://blog.csdn.net/weiweiliulu/article/details/40151053