新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于FPGA的FIR數(shù)字濾波器設(shè)計(jì)方案(二)

基于FPGA的FIR數(shù)字濾波器設(shè)計(jì)方案(二)

作者: 時(shí)間:2013-11-04 來(lái)源:網(wǎng)絡(luò) 收藏

模型搭建好之后,需要確定16階的系數(shù),在這使用Matlab中的FDATool濾波器設(shè)計(jì)工具來(lái)確定。確定好濾波器的指標(biāo):

  (1)設(shè)計(jì)一個(gè)16階的 濾波器;

 ?。?)低通濾波器;

 ?。?)采樣頻率fs為16 384 Hz,截頻點(diǎn)頻率fs為533 Hz;

 ?。?)輸入序列位寬為16位。

  在設(shè)計(jì)濾波器界面中,如圖4所示,進(jìn)行下列選擇:

 ?。?)濾波器類型(Filter Type)為低通(Lowpass);

  (2)設(shè)計(jì)方法(Design Method)為,采用窗口法(Window);

 ?。?)濾波器階數(shù)(Filter Order)定制為15(設(shè)置為15 階而不是16階,是由于設(shè)計(jì)的16階FIR濾波器的常系數(shù)項(xiàng)h(0)=0);

 ?。?)濾波器窗口類型為Kaiser,Beta為0.5.

  所有的選項(xiàng)確定好后,在FDATool濾波器設(shè)計(jì)界面中點(diǎn)擊“Design Filter”,Matlab就會(huì)計(jì)算濾波器系數(shù)并作相關(guān)分析。圖5所示為濾波器的幅頻響應(yīng)。

  基于FPGA的FIR數(shù)字濾波器設(shè)計(jì)方案(二)

  由于所有的模塊都在同一個(gè)Simulink圖中,這時(shí)的Simulink設(shè)計(jì)圖顯得很復(fù)雜,不利于閱讀和排錯(cuò),因此把FIR模型做成一個(gè)子系統(tǒng)在設(shè)計(jì)圖中顯示出來(lái),如圖7所示,這就是Matlab中的層次化設(shè)計(jì),在頂層設(shè)計(jì)圖中,濾波器作為名稱是SubFIR_533_16js的一個(gè)模塊出現(xiàn)。同時(shí),圖7中還設(shè)置了其他模塊,包括仿真信號(hào)輸入模塊、Signal Tap Ⅱ信號(hào)實(shí)時(shí)監(jiān)測(cè)模塊、Signal Compiler模塊、硬件開發(fā)板模塊、TestBench模塊。

  基于FPGA的FIR數(shù)字濾波器設(shè)計(jì)方案(二)

  這樣整個(gè)濾波器的Simulink電路設(shè)計(jì)模型就完成了,然后要對(duì)該模型進(jìn)行系統(tǒng)級(jí)仿真,查看其仿真結(jié)果,在頻率為533 Hz的波形輸入上加入了頻率為3 600 Hz的擾動(dòng)波形,其Simulink仿真結(jié)果如圖8所示。

  基于FPGA的FIR數(shù)字濾波器設(shè)計(jì)方案(二)

  圖中,上面的波形是533 Hz的輸出,中間的波形是533 Hz加上3600 Hz高頻干擾后的輸出,下面的波形是經(jīng)過(guò)濾波后的輸出。

3.2 從模型文件到Verilog代碼的RTL級(jí)轉(zhuǎn)換和編譯適配

  利用Signal Compiler模塊將電路模型文件即Simu-link 模塊文件(。mdl)轉(zhuǎn)換成RTL 級(jí)的Verilog 代碼表述和Tcl(工具命令語(yǔ)言)腳本。這種轉(zhuǎn)換


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: FPGA FIR 數(shù)字濾波器

評(píng)論


相關(guān)推薦

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

關(guān)閉