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. Android事件分发机制(下)

    这篇文章继续讨论Android事件分发机制,首先我们来探讨一下,什么是ViewGroup?它和普通的View有什么区别? 顾名思义,ViewGroup就是一组View的集合,它包含很多的子View和子 ...

  2. run方法和start方法的不同

    run 方法只不过是对对象方法的简单调用,在主线程中的执行时间是固定的 而start方法是开启一个线程,起执行时间是不固定的.

  3. Java Json Object 互转

    官方网址: http://json-lib.sourceforge.net/ 需要准备的jar包 1. json-lib-2.4-jdk15.jar        目前最新版, 下载地址  http: ...

  4. AngularJs angular.identity和angular.noop详解

    angular.identity 函数返回本身的第一个参数.这个函数一般用于函数风格. ----------以上是官网对该接口的说明,只能说这个文档写得也太二,让人完全看不懂.要理解它的用途,可直接看 ...

  5. Spark源码学习1.7——Master.scala

    master第一步是加载系统定义的环境变量,如worker的超时时间.系统保留的Application数目等:第二步,加载worker的信 息,地址.id等:第三步,加载Application的信息, ...

  6. SQL SERVER 2008 r2安装失败之Integration Service

    因工作需要,遂把以前的2008升级到r2,升级失败,具体原因忘了,卸载2008,清了注册表删了文件,结果安装的时候失败了,如下图: 下一步-有错误日志和错误的序列号,错误日志在C:\Program F ...

  7. linux下crontab命令的使用

    1.crond crond是Linux下的一个守护进程,与windows下的计划任务类似,当操作系统安装完成后,默认会安装并启动进程,Linux下的任务调度分为两类,系统任务调度和用户任务调度. 系统 ...

  8. js判断是否存在指定变量或函数

    //是否存在指定变量 function isExitsVariable(variableName) { try { if (typeof(eval(variableName)) == "un ...

  9. 听课程C# Intermediate: Classes, Interfaces and OOP的笔记,持续修改更新ing

    在第二章第7节中,我尝试并给我的Vistal Studio 2015加装了Resharper,感觉非常好用,现在就分享下我的一点心得. 首先为了防止Resharper的快捷键失灵,可以先重置所有的 V ...

  10. 什么是 kNN 算法?

    学习 machine learning 的最低要求是什么?  我发觉要求可以很低,甚至初中程度已经可以.  首先要学习一点 Python 编程,譬如这两本小孩子用的书:[1][2]便可.   数学方面 ...