modelsim的工程仿真流程--2

引言

首先建立一个工程,然后向工程中添加设计文件,接下来编译设计文件,之后运行仿真。

创建工程及工程库

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此时可以看到在workspace窗口开始有了project标签,由于新建的工程中没有文件,所以显示为空白区域。至此创建工程结束,接下来可以向工程中添加文件。

加载设计文件

一般来说,我们不需要在这里创建新文件,我们往往是独添加设计文件。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

运行仿真

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

保存波形文件wlf

在这里插入图片描述
mpf为modelsim的工程文件
wlf为波形文件,也就是说可以在运行了过后,把波形保存下来,以免每一次打开都要重新运行。
打开wlf文件,后直接点击add wave即可,而不需要再次run -all
在这里插入图片描述

基本仿真流程与工程仿真流程方法对比

https://blog.csdn.net/ciscomonkey/article/details/87654997
上一章讲了基本的仿真流程,这种方法不用创建工程,而是直接创建library库,通过编译文件后,然后导入库,进行仿真测试。
本章是用先建立工程,然后再向工程中添加入文件,最后完成仿真。其实二者区别不大,
前者只是库的概念,后者是工程的概念。
都是向其中添加文件,实现仿真。

note:如果是调用了IP核,仍然要把IP的.v文件导入。

附录

module test;
wire sum,c_out;
reg a,b,c_in;

fulladd  fadd(sum,c_out,a,b,c_in);
/*
initial
begin    
    #15 force fadd.sum=a&b&c_in;
    #20 release fadd.sum;
    
    #10 $stop;    
end
*/
initial
begin
        a=0;b=0;c_in=0;
    #10 a=0;b=0;c_in=1;
    #10 a=0;b=1;c_in=0;
    #10 a=0;b=1;c_in=1;
    #10 a=1;b=0;c_in=0;
    #10 a=1;b=0;c_in=1;
    #10 a=1;b=1;c_in=0;
    #10 a=1;b=1;c_in=1;
    #10 $stop;
end
endmodule
module fulladd(sum,c_out,a,b,c_in);
output sum,c_out;
input a,b,c_in;

wire s1,c1,c2;

xor (s1,a,b);
and (c1,a,b);
xor (sum,s1,c_in);
and (c2,s1,c_in);
or (c_out,c2,c1);

endmodule
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值