Quartus II与 ModelSim功能仿真与后仿真扫盲(转)
本文主要描述了如何在QUARTUS II 中輸入程序文件,生成網(wǎng)表及標準延時文件,然后通過MODELSIM 進行功能仿真與后仿真的過程,主要為圖解,含全部代碼及仿真波形。
工具:
- Quartus II 5.0 sp1
- ModelSim SE 6.1b
- 芯片:MAX II :EMP570T100I5
- 語言:Verilog HDL
- 程序功能:太簡單了,自己看源程序吧
源程序:
module sim(reset,clk_in,clk_o1,clk_o2);
input reset,clk_in;
output clk_o1,clk_o2;
reg clk_o2;
assign clk_o1 = clk_in;
always @(negedge reset or posedge clk_in) //
begin
if(!reset)
clk_o2 = 0;
else
clk_o2 = ~clk_o2;
end
endmodule
測試程序:
`timescale 1ns/1ns
module testsim;
reg reset,clk_in;
wire clk_o1,clk_o2;
sim aa(.reset(reset),.clk_in(clk_in),.clk_o1(clk_o1), .clk_o2(clk_o2));
//sim aa(reset,clk_in,clk_o1,clk_o2);
always
#5000 clk_in = ~clk_in;
initial
begin
clk_in = 0;
reset = 0;
#10000;
reset = 1;
#1000000 $stop;
end
endmodule
測試程序注意:
例化時,最好用名稱關(guān)聯(lián)的方法進行例化,我曾試過用位置關(guān)聯(lián)的方法,但后仿真不正常。不知道是不是Modelsim 在語法上的要求。
一、 程序輸入與網(wǎng)表、延時文件的生成,相關(guān)庫文件的拷貝
在建立Quartus II 源文件時,選擇modelsim 作為仿真工具,這個不詳說了。
輸入文件sim.v,testsim.v,開始編譯Start Complation,源文件在QII 的工程目錄sim 下,
?
下圖為生成的網(wǎng)表文件及延時文件,在目錄QII 工程sim\simulation\modelsim\work,其中,maxii_atoms.v 是MAX II系列CPLD 的庫文件,在QII 安裝目錄\quartus50\eda\sim_lib 下拷貝過來,同時,將sim 工程目錄下的測試文件testsim.v 拷到該目錄,為后仿真做準備。
?
二、 前仿真
1、選擇QII 工程目錄sim 為當前工作目錄
?
2、編譯源文件 sim.v , testsim.v
?
3、新建一個work 庫
?
4、編譯源文件 sim.v , testsim.v
?
5、將信號加到波形窗口
?
6、點擊RUN ALL 按鈕,進行仿真,功能仿真完成
?
三、 后仿真
1、前面已經(jīng)生成相關(guān)網(wǎng)表、延時文件,并已經(jīng)拷貝需要的文件了。現(xiàn)在,將工作目錄變換到生成的網(wǎng)表文件、延時文件所在目錄,這里為
..sim/simulation/modelsim并新建一個工作庫,與功能仿真一樣操作。
?
2、編譯以下三個文件
?
3、選擇菜單simulate —> start simulation。選擇SDF 卡片,點擊browse,選擇延時文件sim_v.sdo Apply to Region 中,填寫測試文件中例化用的名字,這里為aa。點擊OK。
?
4、再選擇Design 卡片頁選擇 WORK—>testsim點擊OK,到下一步選擇要顯示的信號
?
5、將要顯示的信號加入波形窗口。
?
6、點擊RUN ALL,開始仿真,后仿真步驟完成
?
總結(jié)
以上是生活随笔為你收集整理的Quartus II与 ModelSim功能仿真与后仿真扫盲(转)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么选主板
- 下一篇: 工程师的NIOS II学习笔记(转)