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.然后为你的工程新建或者添加设计文件(原理图或者VerilogHDL),编译成功后,如果你的设计文件是原理图文件的话,还需要先转化为VerilogHDL文件,这是因为Modelsim只能仿真Quartus中的.v文件,而无法仿真.bdf文件。方法如下,在打开原理图的情况下,点击File-->Create/Updata-->CreateHDLDesignFileForCurrentFile,跳出如下图:
打开你的VerilogHDL文件,选择VerilogHDL,点击OK,然后重新编译这个文件,这里需要注意的是,如果你要编译.v文件,那么就需要先移除掉.bdf文件,否则会报错如下图:这是因为两个文件重复了。
3.VerilogHDL文件编译成功后,设置Assignments-->Settings-->Simulation如下图:
Toolname中选Modelsim,Formatforoutputnetlist选VerilogHDL,Timescale为最小时间单位,outputdirectory可以选择默认的,它会在工程目录中自动生成该文件用来保存接下去产生的仿真测试文件,最后保存该设置。
4.回到主界面,选择processing-->Start-->StartTestBenchTemplateWriter,就会产生一个和本工程中当前的.v文件关联的测试文件,若是成功,它会跳出对话框表明成功了,如下图。
5.打开测试文件File-->Open-->simulation/modelsim-->对应的.vt文件后,可以查看相关的测试文件,它已经为你自动生成了测试框架,可以在这里修改测试文件,也可以到后面到modelsim软件中进行修改。
6.测试文件生成后,点击回到第3步中的界面,在NativeLinksettings中选择Compiletestbench,点击后面的TestBenchs...跳出如下界面:
在Toplevelmoduleintestbench中输入测试文件的模块名,这个模块名可以在第5步中查看。输入后Testbenchname也作了相应的修改。选中UsetestbenchtoperformVHDLtimingsimulation,将Designeinstancenameintestbench改为i1。在Testbenchfiles-->Filename打开相应的.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新建的工程中,进行仿真。仁者见仁智者见智,大家觉得哪个好用就用哪个方法吧!使用了几天这个方法后,现在我觉得还是蛮便捷的!
如何在modelsim里面使用quartus中生成的rom文件 包括初始化的mif和hex:
1. 在QuartusII中生成rom的初始化文件,可以是hex,也可以是mif。MIF文件的格式很简单明了,所以我一向都是用MIF。
2.下载convert_hex2ver.dll文件,convert_hex2ver.dll就是把hex文件转换成ModelSim 能认出来的ver文件的动态链接库文件。新版本的QuartusII中已经不带此文件了。需要在网上找一份。(老版本的软件里带了此文件(路径:quartusXX/eda/mentor/modelsim/),应当可以用。)
3.将convert_hex2ver.dll文件放在modelsim安装路径的win32目录下;
4. 在ModelSim安装的目录下找到 modelsim.ini文件,将其只读属性去掉,在“; List of dynamically loaded objects for Verilog PLI applications,”后填入一行“Veriuser = convert_hex2ver.dll”。保存文件,将只读属性改回来。
5.需要将MIF文件复制到ModelSim仿真工程的文件夹下!你运行一次编译和仿真后,会看到自动生成的.ver文件,该文件名同你的MIF文件。
用quartus生成的rom和ram文件中有关于初始化文件(mif,hex)地址和名字的表示,因为必须把mif和hex放在modelsim的工程文件夹下面 所以 相对的在rom和ram里面的初始化文件地址也必须改成./xx.mif或者./xx.hex 切记
如果想在Quartus II中使用ModelSim 编译的时候却出现了类似下面的错误 Error: Can't launch the ModelSim-Altera software -- the path to the location of the executables for the ModelSim-Altera software were not specified or the executables were not found at specified path. Error: You can specify the path inthe EDA Tool Options page of the Options dialog box or using the Tcl command set_user_option. Error: NativeLink simulation flow was NOT successful 解决的办法:在Quartus II中正确设置ModelSim的路径 Tools -> Options -> General -> EDA Tool Options: |