Quartus II 9.0版本的时候软件还有自带的仿真工具,现在安装的是11.0以上版本,才发现 Quartus II 11.0以上取消了软件自带的波形仿真工具,因此需要波形仿真就要调用专业的仿真工具Modelsim.

刚开始几天非常不习惯使用Modelsim,总觉得各种麻烦和不习惯,一度有想换回9.0版本的冲动,但是想想技术总是往前发展的,既然Quartus 取消了自带的仿真,而使用专业的仿真工具Modelsim总是有其自己的道理,所以还是决定学习新技术。经过几天的学习加练习,总算是熟练了一些。

这里我来谈谈如实使用Quartus来调用modelsim进行仿真。

1. 首先在Quartus II 中新建工程,在tools-->options-->General-->EDA Tool Option中设置好Modelsim的安装文件的路径,这里我的安装路径是在C:\modeltech64_10.0c\win64,如图:

2.然后为你的工程新建或者添加设计文件(原理图或者Verilog HDL),编译成功后,如果你的设计文件是原理图文件的话,还需要先转化为Verilog HDL文件,这是因为Modelsim只能仿真Quartus中的.v文件,而无法仿真.bdf文件。方法如下,在打开原理图的情况下,点击File-->Create/Updata-->Create HDL Design File For Current File,跳出如下图:

打开你的Verilog HDL文件,选择Verilog HDL,点击OK,然后重新编译这个文件,这里需要注意的是,如果你要编译.v文件,那么就需要先移除掉.bdf文件,否则会报错如下图:这是因为两个文件重复了。

3.Verilog HDL文件编译成功后,设置Assignments-->Settings-->Simulation 如下图:

Tool name 中选Modelsim,Format for output netlist 选Verilog HDL,Time scale 为最小时间单位,output directory可以选择默认的,它会在工程目录中自动生成该文件用来保存接下去产生的仿真测试文件,最后保存该设置。

4.回到主界面,选择processing-->Start-->Start Test Bench Template Writer,就会产生一个和本工程中当前的.v文件关联的测试文件,若是成功,它会跳出对话框表明成功了,如下图。

5.打开测试文件File-->Open-->simulation/modelsim-->对应的.vt文件后,可以查看相关的测试文件,它已经为你自动生成了测试框架,可以在这里修改测试文件,也可以到后面到modelsim软件中进行修改。

6.测试文件生成后,点击回到第3步中的界面,在NativeLink settings中选择Compile test bench,点击后面的Test Benchs...跳出如下界面:

点击New,跳出如下界面:

在Top level module in test bench 中输入测试文件的模块名,这个模块名可以在第5步中查看。输入后Test bench name也作了相应的修改。选中Use test bench to perform VHDL timing  simulation,将Designe instance name in test bench改为i1。在Test bench files-->File name打开相应的.vt测试文件,如下图,然后Add-->OK.

7.以上的设置好之后,就剩最后一步了,点击Tools-->Run EDA Simulation Tool-->EDA RTL Simulation,就自动打开Modelsim软件进行仿真了,如果你在第5步中没有修改测试文件,那么这次的仿真是无效的。可以在Modelsim中打开.vt测试文件,进行修改(初始化,生成激励波形等),然后在Modelsim中进行仿真。Modelsim的仿真方法和步骤下次再说。

如果不使用Quartus II直接调用Modelsim的话,也可以直接打开Modelsim,然后新建工程,将Quartus II编译好的.v文件直接拷贝到Modelsim新建的工程中,进行仿真。仁者见仁智者见智,大家觉得哪个好用就用哪个方法吧!使用了几天这个方法后,现在我觉得还是蛮便捷的!

Quartus II 与 Modelsim 联调【转】的更多相关文章

  1. 【转】Quartus II调用modelsim无缝仿真

    Quartus II调用modelsim无缝仿真  ★emouse 思·睿博客文章★ 原创文章转载请注明:http://emouse.cnblogs.com 本篇文章为转载,写的不错,最近在学mode ...

  2. Quartus II 与modelsim连接不上的问题

    在Quartus II 中tools>options>General>EDA Tool Options 设置modelsim 路径 说明:不管是Quartus II 与modelsi ...

  3. Quartus II调用modelsim无缝仿真

    本篇文章为转载,写的不错,最近在学modelsim仿真,网上的教程很乱,把自己认为不错的整理贴出来,后面有机会会写个详细点的. Quartus 中调用modelsim的流程 1. 设定仿真工具 ass ...

  4. Quartus II 使用 modelsim 仿真

    转自:http://www.cnblogs.com/emouse/archive/2012/07/08/2581223.html Quartus 中调用modelsim的流程 1. 设定仿真工具 as ...

  5. (转)Quartus II和Modelsim的联合仿真(详细)

    这篇文章不需要在modelsim中建库.映射.建工程等一些繁琐的步骤,直接使用modelsim中的默认work库.使用quartus+modelsim联合仿真. 首先推荐一篇文章 http://www ...

  6. Viavdo&ISE&Quartus II级联Modelsim级联仿真

    博主一直致力寻找高效的工作方式,所以一直喜欢折腾软件,从刚开始只用软件IDE自带的编辑器,到Notepad++,再到后来的Vim,从用ISE14.7自带的Isim仿真,到发现更好的Modelsim,再 ...

  7. Vivado&ISE&Quartus II调用Modelsim级联仿真

    博主一直致力寻找高效的工作方式,所以一直喜欢折腾软件,从刚开始只用软件IDE自带的编辑器,到Notepad++,再到后来的Vim,从用ISE14.7自带的Isim仿真,到发现更好的Modelsim,再 ...

  8. Quartus ii 12.0 和ModelSim 10.1 SE安装及连接

    quartus ii 10.0后就没有自带的仿真软件,每次写完一个VerilogHDL都想简单仿真一下,结果发现没有了自带仿真软件.这时候就需要第三方仿真软件ModelSim 10.1 SE. Qua ...

  9. Modelsim SE 和 Quartus II 编译器(综合器)的区别

    当对目标模块进行RTL描述后,习惯先会用Modelsim做一下功能仿真.当我们写好Tensbench文件,直接在Modelsim SE中对源文件(design和Testbench)进行编译时,如果源文 ...

随机推荐

  1. 初学者的python学习笔记2——作业篇

    这次的作业是商城展示,最开始的确是一脸懵逼,后来研究了一下网上的例子,总算是搞出来了一个(其实算是网上列子的简化版?). 最开始是想要使用字典去做,发现显示列表的时候怎么也无法实现序号和名称对应,原因 ...

  2. 不懂指针就不要说自己学过C语言!

    不懂指针就不要说自己学过C语言! 1.掌握了指针,就掌握了C语言的精髓!计算机中绝大部分数据都放到内存中的,不同的数据放到不同的内存区域中. 内存角度没有数据类型,只有二进制:数据以字节(8位二进制) ...

  3. android小技巧(二)

    一.如何控制Android  LED等?(设置NotificationManager的一些参数) 代码如下: final int ID_LED=19871103; NotificationManage ...

  4. Unity3D 一个较常见的错误信息“rect[2] == rt->GetGLWidth() && rect[3] == rt->GetGLHeight()”

    rect[2] == rt->GetGLWidth() && rect[3] == rt->GetGLHeight() 这个错误信息的具体含义我还不太清楚.它出现以后会不停 ...

  5. spring注解 @Transactional

    一.@Transactional所需要的jar包 1.aopalliance.jar  这个包是AOP联盟的API包,里面包含了针对面向切面的接口.(通常Spring等其它具备动态织入功能的框架依赖此 ...

  6. Android 数据库管理— — —更新数据

    <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=" ...

  7. Mac下手动安装Chromedriver.exe

    Mac OS X Yosemite 10.10.4下,ChromeDriver运行异常,需要手动安装chromedriver.exe Step 1: 打开https://sites.google.co ...

  8. C++Promise函数

    Promise内部会建立一个shared state是用来放一个相应的类型的值或是一个异常,并可被future object 取其数据当线程结果 promise是在形成成果后才将结果放进shared ...

  9. android SDK 更新问题解决

    Android在win7更新SDK时出现问题: Download interrupted: hostname in certificate didn't  match: <dl-ssl.goog ...

  10. 13个JavaScript图表(JS图表)图形绘制插件【转】

    现在网络上又有越来越多的免费的(JS 图表)JavaScript图表图形绘制插件.我之前给一家网站做过复杂的图形,我们用的是 highchart.在那段时间,没有很多可供选择的插件.但现在不同了,很容 ...