Quartus和modelsim联合仿真流程

发布时间 2023-11-20 10:56:58作者: 京多安

本实验以实现半加器为例。

1.建立half_adder文件夹和四个小文件夹

image

2.rtl文件夹写.v文件,即程序代码

image
代码实现如下:

module half_addr
(
	input wire       in_1,
	input wire       in_2,
	
	output wire      sum,
	output wire      count
);

assign {count,sum} = in_1+in_2;
endmodule

3.打开quartus软件新建工程

image

将工程文件保存在之前建立好的par文件夹中,工程名设为half_addr
image

选好自己的芯片型号,再配置相关信息
image
image

4.添加写好的代码文件

image
image
点击add,再点击apply应用,再OK
image

最后编译查找语法错误
image

可以查看RTL视图,代码已经被综合成半加器
image
image

5.接下来进行仿真

首先在sim文件夹里新建一个仿真文件,进行仿真文件的编写
image
仿真代码如下:

`timescale 1ns/1ns
module tb_half_adder();
reg     in_1;   
reg     in_2;

wire    sum;
wire    count;

initial
	begin
		in_1   <=  1'b0;
		in_2   <=  1'b0;
	end

always #10 in_1 <= {$random} %2;
always #10 in_2 <= {$random} %2;

initial
	begin
		$timeformat(-9,0,"ns",6);
		$monitor("@time %t:in_1=%b in_2=%b sel=%b out=%b",$time,in_1,in_2,sum,count);
	end

half_adder  half_adder_inst
(
	.in_1(in_1),  
	.in_2(in_2),
	
	.sum(sum),
	.count(count)
);

endmodule

回到quartus添加测试文件,与之前同样的步骤
image
image
添加完之后进行仿真设置
image
点击左侧simulation那一栏
image
设置正确后添加test benches文件
image
点击new
image
先设置相关信息,注意名称要与测试文件模块名称一致
image
再将其添加,选进,add,OK
image
再OK
image
Apply再OK
image

6.直接点击仿真

image
图像如下:
image
结果正确