在FPGA設計中使用Precision RTL 綜合實(shí)例
數字濾波器通常分成有限脈沖響應(finite impulse response,也就是FIR)和
無(wú)限脈沖響應(infinite impulse response,也就是IIR)兩大類(lèi)。FIR 濾波器相對
于IIR濾波器而言,優(yōu)點(diǎn)是相位線(xiàn)性和性能穩定,應用范圍廣,缺點(diǎn)是需要長(cháng)的
沖擊響應(即高階數)才能得到理想的結果,實(shí)現難度較大。因此在FPGA 上實(shí)
現高性能FIR 濾波器是很具有挑戰性的。下面我們用幾種不同的方法來(lái)完成FIR
濾波器設計,并進(jìn)行比較。
FIR 濾波器的系數為{11,-69, -51, 61, 85, -72, -198, -37, 234,
72,-631,-922,594,4185,8139,9871,8139,4185,594,-922,-631,72,
234,-37,-198,-72,85,61,-51,-69,11}。兩路輸入,輸入信號位寬為7,
輸出信號位寬為23。
設計輸入為VHDL 語(yǔ)言,輸入輸出信號聲明如下:
entity receive_low_pass_filter is
port (chip_input_i : in signed(6 downto 0);
chip_input_q : in signed(6 downto 0);
clk : in std_logic;
reset : in std_logic;
data_i_channel_output : out signed(22 downto 0);
data_q_channel_output : out signed(22 downto 0) );
end receive_low_pass_filter;
第一種方法:使用Altera 公司的QuartusII3.0 單獨完成整個(gè)設計過(guò)程,
在Quartus 中新建一個(gè)項目(project),然后將VHDL 文件添加進(jìn)去,我們選
擇APEX 系列20K1000EBC652 芯片,執行Start Compilation,得到時(shí)序分析報
告,發(fā)現最大頻率為72.19MHz。
第二種方法:使用Precision RTL 綜合在不使用任何約束條件下對VHDL 文件
進(jìn)行綜合,如圖2 所示。
圖 2 Precision RTL 綜合界面
用綜合得到的網(wǎng)表文件(EDIF 文件)代替Quartus 項目中的VHDL 文件,執
行Start Compilation,得到時(shí)序分析報告,發(fā)現最大頻率為95.2MHz。
B 時(shí)序仿真
圖4 仿真結果
以上實(shí)例充分驗證了Precision RTL 綜合在FPGA 設計中的重要作用,它對我們設計水平的提高有很大幫助。
評論