ModelSim SE 快速入门.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ModelSim SE 快速入门

ModelSim SE 快速入门 本文以ModelSim SE 5.6版本为基础,介绍ModelSim SE的最基本用法,高深的我也不会 。 ??? 当你安装完ModelSim SE之后,可以将你的ModelSim SE的起始路径设置为你的工作目录(如e:\verilog),具体方法是在右键单击执行文件ModelSim SE的图标再点击属性栏,就可以看到ModelSim SE的起始位置,改为你的工作目录就可。 ??? 学习verilog语言也必须学习写它的testbench文件,即测试文件。建议从最开始就学习写,写一个程序写一个testbench。 ModelSim SE仿真用的文件也就是testbench文件。Testbench文件可以在仿真中发现你的逻辑错误,对于以后作较大的程序更适用。而避免让你在实际调试中的出现很多的问题而无头绪。 ??? 好,现在假设你在e:\verilog目录下有一个\div目录,该目录下有两个文件div.v和tdiv.v为一个分频时序描述文件和它的testbench文件。文件内容如下: e:\verilog\div\div.v module div(clk_i,clk_o,reset); parameter DIV_N = 4; input clk_i; input reset; output clk_o; reg clk_o; integer count; always @ (negedge reset or posedge clk_i) begin?? ??? if(!reset)??????? ??????? count = 0; ??? else ??????? if(count == 3) ??????????? count = 0; ??????? else ??????????? count = count + 1;??????????? end always @ (negedge reset or posedge clk_i) begin?? ??? if(!reset)??????? ??????? clk_o = 0; ??? else ??? begin ??????? if(count = (DIV_N/2 - 1)) ??????????? clk_o = 0; ??????? else ??????????? clk_o = 1; ??? end ??????????????????? end e:\verilog\div\tdiv.v module testdiv; reg clk_i; reg reset; wire clk_o; always #50 clk_i = ~clk_i; initial begin ??? #0??? reset = 0;clk_i = 0; ??? #100? reset = 1; ??? #2000 $stop; ??? end div div1(.clk_i(clk_i),.clk_o(clk_o),.reset(reset)); endmodule 下面是我们的仿真步骤: 启动ModelSim SE, 首先看到在在ModelSim SE右边的窗口有ModelSim 这样的提示符。在提示符后,顺序运行以下命令: ??? vlib work? 该命令的作用是在该目录下建立一个work目录,请注意不要用操作系统来新建一个work的文件夹,因为用操作系统建立的work文件夹并没有ModelSim SE自动生成的_info文件。 ??????? vmap work work??? 该命令的作用是将目前的逻辑工作库work和实际工作库work映射对应。 ??? vlog div.v? tdiv.v? 该命令的作用是编译这些文件,要注意的是文件可以单独分开编译,但是一定要先编译被调用的文件。假如是VHDL文件就可以用vcom file1,file2命令来编译。 ??? vsim testdiv? 仿真命令, 注意后面的参数必须为tdiv.v中的模块名。 ??? add wave/testdiv/ * 该命令的作用是将testbench文件tdiv.v中模块testdiv下所有的信号变量加到波形文件中去。这时候你也可以看到wave文件被打开。 ??? run 2000? 该命令的作用是运行2000个单位时间的仿真。也可以用run –all命令来一直仿真下去。 ??? 这时候就可以在wave窗口文件中看到你的仿真结果。 ??? 当然也可以观察其它窗口的结果,用view命令显示???? ???? view * 观察包括signals、wave、dataflow等窗口文件。也可以分别打开。例如用view signals来观察信号变量。

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档