Quartus如何進行仿真

一、Quartus中仿真的基本概念

仿真是設計電路的重要步驟之一。在Quartus II軟件中,仿真是通過ModelSim仿真器實現的。Quartus II軟件提供兩種類型的仿真:

1)Gate-Level(門級)仿真:在此仿真中,輸入和輸出的信號以邏輯門的狀態出現,因為仿真是在這些邏輯門之間進行的。

2)RTL(Register-Transfer-Level)仿真:在此仿真中,輸入和輸出的信號以邏輯值的形式出現,由寄存器之間的傳輸決定。

二、Quartus中基於ModelSim的仿真流程

以下是基於ModelSim的仿真流程:

1)打開Quartus II軟件,在工程管理器中選擇需要仿真的設計。

2)在文件菜單中選擇“仿真”>“創建仿真設置”,選擇使用ModelSim仿真器。

3)選擇仿真級別。對於不需要仿真全部設計的情況,可以選擇仿真觸發器級別或頂層電路級別。

4)選擇仿真波形編譯器。此編譯器將會把仿真輸出到一個或多個文件中。要實現此過程,首先要創建一個仿真文件列表,明確每個仿真參考的硬件描述語言源文件。接下來,可以編譯波形文件和仿真目標代碼。

5)運行仿真。Quartus II軟件將會自動啟動ModelSim仿真器來運行測試。

6)查看仿真結果。ModelSim仿真器將會顯示波形數據,而Quartus II軟件負責圖形化顯示波形數據。對於Quartus II軟件提供的獨立仿真窗口,可以調整仿真操作和完全獨立的波形窗口。

三、Quartus中的仿真說明

注意以下幾點:

1)在進行仿真之前,必須進行邏輯分析來確保設計中沒有錯誤。

2)若進行門級仿真,必須已將邏輯元件和宏處理器映射到FPGA芯片上,且不能繼續進行電路、時序和布局仿真。

3)若進行RTL仿真,元件必須配合時鐘周期進行測試,以避免時序問題。

四、基於VHDL進行仿真的示例代碼

entity JKFFD is
 Port ( J : in STD_LOGIC;
 K : in STD_LOGIC;
 Clk : in STD_LOGIC;
 Q : out STD_LOGIC;
 NQ : out STD_LOGIC);
end JKFFD;

architecture Behavioral of JKFFD is
begin
 JK: process (Clk)
    begin
     if rising_edge(clk) then
      if (J = '1' and K = '0')
       then Q <= '1'; NQ <= '0';
      elsif (J = '0' and K = '1')
       then Q <= '0'; NQ <= '1';
      elsif (J = '1' and K = '1')
       then Q <= not Q; NQ <= not(NQ);
      else Q <= Q; NQ <= NQ;
      end if;
     end if;
    end process JK;
end Behavioral;

五、基於Verilog進行仿真的示例代碼

module and_gate (input a, input b, output o);
 assign o = a & b;
endmodule

module test_bench;
 reg a, b;
 wire o;
 parameter PERIOD = 10;

 and_gate and1(.a(a), .b(b), .o(o));

 initial begin
     a=0; b=0;
     #PERIOD a=0; b=1;
     #PERIOD a=1; b=0;
     #PERIOD a=1; b=1;
     #PERIOD $finish;
  end

 always #1 $display("a = %b, b = %b, c = %b", a, b, o);
endmodule

六、使用ModelSim進行仿真的示例代碼

## 編譯Testbench和Design
vlog testbench.v
vlog  design.v

## 綜合
vopt design design_test

## 仿真
vsim -novopt design_test

## GUI展示結果
add wave -r /*
run 50ns

七、小結

Quartus II軟件提供了多種在仿真方面的選項,包括門級仿真和RTL仿真。Quartus II軟件與ModelSim仿真器共同工作,以對設計進行仿真。通過本篇文章,讀者現在應該已經了解了如何使用Quartus II軟件通過ModelSim仿真器進行硬件設計的仿真。

原創文章,作者:XALYP,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/333842.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
XALYP的頭像XALYP
上一篇 2025-02-01 13:34
下一篇 2025-02-01 13:34

相關推薦

發表回復

登錄後才能評論