Quartus 添加外部modelsim仿真工具

Quartus 添加外部modelsim仿真工具

1.为本工程生成test bench文件(.vt)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EXCeGDT1-1664978567821)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20221005220225088.png)]

2.在toools中选择options,并添加路径

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-itsvbRmK-1664978567822)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20221005215542760.png)]

3.在assignments中选择settings

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KZLVtWW5-1664978567822)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20221005215558373.png)]

其中需要注意的部分如下图所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kVhpPaJZ-1664978567823)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20221005215628762.png)]

点击test benches…,new一个新的test bench,之后如下图

在这里插入图片描述

首先根据步骤1中,生成的test bench的module的名称填写name,注意一名称一定要保持一致

之后可以自行设置仿真的时间

最后添加步骤一中生成的test bench文件

最后添加步骤一中生成的test bench文件

在这里插入图片描述

3.写仿真文件(示例)

`timescale 1 ps/ 1 ps
module IC_homework2_vlg_tst();
// constants                                           
// general purpose registers
reg eachvec;
// test vector input registers
reg [2:0]datain_sig;
// wires                                               
wire [7:0]dataout_sig;


// assign statements (if any)                          
decoder_3_8 i1
(
	.datain(datain_sig) ,	// input [2:0] datain_sig
	.dataout(dataout_sig) 	// output [7:0] dataout_sig
);
initial                                                
begin                                                  
	datain_sig<=3'b0;						
end                                                    
always @(*)begin                                                  
	#10 datain_sig<=datain_sig+1;
end                                                    
endmodule

.v文件如下(最简单的一个38译码器)

module decoder_3_8(
input [2:0] datain,
output reg [7:0]dataout
);
always @(*)begin 
	case(datain)
		3'b000:dataout<=8'b0000_0001;
		3'b001:dataout<=7'b0000_0010;
		3'b010:dataout<=7'b0000_0100;
		3'b011:dataout<=7'b0000_1000;
		3'b100:dataout<=7'b0001_0000;
		3'b101:dataout<=7'b0010_0000;
		3'b110:dataout<=7'b0100_0000;
		3'b111:dataout<=7'b1000_0000;
		default:dataout<=7'b0000_0001;
	endcase 
end 

endmodule 

注意事项

注意quartus可以设置不同的顶层模块,但要注意换顶层模块之后需要再编译一次才能够运行modelsim,否则报错

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值