Quartus II与 ModelSim功能仿真与后仿真扫盲(转)

时间:2007-04-20   作者:yangyh80@21cn.com

本文主要描述了如何在QUARTUS II 中输入程序文件,生成网表及标准延时文件,然后通过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
测试程序注意:
例化时,最好用名称关联的方法进行例化,我曾试过用位置关联的方法,但后仿真不正常。不知道是不是Modelsim 在语法上的要求。

一、 程序输入与网表、延时文件的生成,相关库文件的拷贝
在建立Quartus II 源文件时,选择modelsim 作为仿真工具,这个不详说了。
输入文件sim.v,testsim.v,开始编译Start Complation,源文件在QII 的工程目录sim 下,
 
下图为生成的网表文件及延时文件,在目录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、前面已经生成相关网表、延时文件,并已经拷贝需要的文件了。现在,将工作目录变换到生成的网表文件、延时文件所在目录,这里为
..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,开始仿真,后仿真步骤完成
 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值