| |
练习使用Altera公司的Quartus II9.0软件与Modelsim 6.5e联合仿真把实验过程及遇到的问题总结如下:在练习的过程中难免会出现这样的那样的问题,和平时在纸上写程序不同,这哪怕错一个字母都会出现好多错误,所以以后再练习过程中一定不能着急,发现错误慢慢排查,最终一定能熟练地掌握这门语言。因此把自己平时做的实验练习总结下来,在做的过程中那出现错误都记下来,方便日后查验。
1、打开quartus II,在菜单栏点击:<File>--><New Progect Wizard...>如下图所示:
2、出现:New Project Wizard:Introduction,单击<Next>,出现路径如图:
3、此时可直接点《Finish》
4、《File》--》《New》
选择《Verilog hdl File》--》《OK》,出现编辑框,输入如下文件:
module tryfunct(clk,n,result,reset);
endmodule
5、选择《Processing》--》《Start》--》《Start Analysis&Synthesis》或点击如下按钮,完成综合。
6.《Processing》--》《Start》--》《Start Test Bench Template Writer》:
7、打开编译好的测试文件:《File》--》《Open》,一般在本文件夹的《simulation》-》《modelsim》中,把文件类型设置成《*.*》才能看到一个文件:《tryfunct.vt》,打开此文件。最好把里面的内容删除,重新编写如下程序:
module
endmodule
这样编写完后可以用第五步的方法进行综合:《Processing》--》《Start》--》《Start Analysis&Synthesis》
7、接下来是联合Modelsim进行仿真了,如果是第一次使用需要进行一些设置:《Tools》--》《Options》--》《EDA Tools Options》的《Modelsim》中键入modelsim 6.5e的文件路径。如不会可以百度搜索详细内容。这里不再敖述。
8、点击《Assignments》--》《Settings》,展开《EDA Tools Setting》,在《Simulation》中输入《Tool name》-》《ModelSim》;《Fomate for output netlist》-》《Verilog HDL》;《Time scale》-》《1 ns》然后点击《Test Bench》--》《New》输入下图中的内容:从上至下依次为:测试文件名:《tryfunct》,测试文件模块名:《tryfunctTop》,引用的模块命名《m》,加入那个测试文件后《OK》《OK》《OK》
然后《Tools》--》《Run EDA Simulation Tool》--》《EDA RTL Simulation》出现如下界面(展开work后):
不是预想的情况,没有把测试文件加载进来,可能是文件有错误,可以手工编译,点击modelsim中的《Compile》--》《Compile》找到《tryfunct.vt》进行编译《Compile》发现果真有错误,如下:
# ** Error: G:/verilog/tryfunct/simulation/modelsim/tryfunct.vt(4): near "reg": syntax error, unexpected "reg", expecting ';'双击,查找发现“module tryfunctTop”后没有分号,加上分号后再编译,通过,发现work中多了一个文件《tryfunctTop》双击后出现下图,右键单击如图所示:
后发现不能停止,《Simulate》--》《Break》退出后分析测试文件发现
for(i=4'b0;i<=15;i=i+1)
这一段由于i为‘0000’-‘1111’最大为15,所以会一直执行,去掉等号,重新编译,仿真波形如图所示:
总结: