ModelSim新手使用手册

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ModelSim最基本的操作,初次使用ModelSim的同学,可以看看,相互学习。

无论学哪种语言,我都希望有个IDE来帮助我创建一个工程,管理工程里的文件,能够检查我编写代码的语法错误,能够编译运行出现结果,看看和预期的结果有没有出入,对于Verilog语言,我用过Altera的Quartus II,Xilinx的ISE,还有ModelSim(我用的是Altera 官网的ModelSim_Altera),甚至MAXPlus II,不过感觉这软件太老了,建议还是前三者吧。

学Verilog,找一本好书很重要,参考网友的建议,我也买了一本夏宇闻老师的《Verilog 数字系统设计教程》,用Quartus II来编写代码,个人觉得它的界面比ISE和ModelSim友好,我一般用它编写代码综合后自动生成testbench,然后可以直接调用ModelSim仿真,真的很方便,但学着学着,发现夏老师书里的例子很多都是不可综合的,比如那些系统命令,导致很多现象都发现不了,偶然间我直接打开了ModelSim,打开了软件自带的英文文档,步骤是:Help ->PDF Documentation->Tutorial如下所示:

打开文档的一部分目录:

往下读发现其实ModelSim可以直接创建工程,并仿真的。下面以奇偶校验为例叙述其使用过程(当然前提是你在Altera官网下载了ModelSim并正确安装了)。

1.打开软件,新建一个工程,并保存到自定义的目录中(最好别含中文路径)

2.点击Project,弹出窗口问是否关闭当前工程,点击Yes,接着又弹出如下窗口

我个人的习惯是把Project Name和Default Library Name写成一样,自己定义Project Location。又弹出如下窗口:

3.点击Close(我的版本不能Create New File,其实新建好了工程一样可以新建.v文件),然后点击屏幕下方的Project标签:

如果一开始不是如上图所示的界面,那么可以点击如下图所示红色标记的按键变成上图界面:

4.在屏幕空白处右击鼠标,出现如下窗口:

5.现在可以选New File或者Existing File(首先你已经编写好了)。这里选择New File,写上File Name,勾选好type,这里选Verilog语言:

6.双击parity.v文件,可以进行编辑了

然后编写代码:

// **************************************************************

//目标:求一个八位二进制数的奇校验位

//作者: 杨海平江南大学物联网工程学院

//日期: 2015/4/15

//版本: V 1.0

//摘要: 奇校验是指如果一个二进制数有奇数个1,则其奇校验位为0,否则为1 // **************************************************************

module parity(rst_n,dat_i,dat_o);

input rst_n;

input[7:0] dat_i;

output dat_o;

assign dat_o = !rst_n ? 1'b0 : ^dat_i ? 1'b0 : 1'b1;

endmodule

和编写parity.v文件一样,编写测试脚本,名字为paritytst.v:

测试代码如下:

`timescale 1 ps/ 1 ps

module paritytst();

reg rst_n;

reg[7:0] dat_i;

wire dat_o;

parity i1(.rst_n(rst_n),

.dat_i(dat_i),

.dat_o(dat_o)

);

initial

begin

rst_n <= 0;

#5 rst_n <= 1;dat_i <= 8'b00110011;

#20 dat_i <= 8'b00110011;

#20 dat_i <= 8'b00100011;

#20 dat_i <= 8'b00111011;

#20 $stop;

end

endmodule

7.左击任意文件,选中它,然后右击选择编译全部

点击屏幕下方的Transcript,可以查看文件编译情况

如果出错,则出现如下提示,双击任意一段红色字段,都会弹出错误信息,帮助你修改代码

修改好了代码之后,就可以进行仿真了

点击ok,再点击屏幕下方的sim标签(新出现的)

再点击i1左边的"+"号,右击我选中的蓝色部分,

点击Add Wave,再点击屏幕下方的

出现下图界面:

全部选中它们,右击:

点击Add Wave,然后点击屏幕下方的wave:

出现如下界面:

再点击simulate:

Run all后就出现仿真图形了(在wave标签下显示,图形可用键盘上的"+","-"进行放大缩小):

ok,大功告成!!!

相关文档
最新文档