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-tw/n/333842.html

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

相關推薦

發表回復

登錄後才能評論