Quartus.II调用ModelSim仿真实例
1、建立工程如下2.如果是第一次使用modelsim,需要建立Quartusii12.0和modelsim的链接。QuartusII12.0-》Tools-》option-》EDATooloptions再选择自己的软件和对应的安装文件夹,如下3.建立测试文件(testbench)可以自己写,也可以用quartusII自己生成(生成的只是模版,功能需要自己添加),注:testbench的输出为要测试文件的输入,即测试文件是为要测试文件产生信号用的,因此testbench的input为reg变量,输出为wire变量,具体操纵如下4.打开测试文本,添加测试的信号功能(注:上步生成的文件后缀为.vt,在所建工程下的simulation\modelsim\下面)。5.添加信号功能如下。6.复制测试文件模块名(供下步添加testbenchname用)添加测试文件。assignment-》setting-》7、开始仿真Tools-》run-》simulationtool8.结果(若没有自动运行,需按simulation和addwave)程序
//and3dataflow
moduleand3_df(x1,x2,x3,z1);
inputx1,x2,x3;
outputz1;
wirex1,x2,x3;
wirez1;
assignz1=x1&x2&x3;
endmodule
testbench
`timescale1ns/1ps
moduleand3_df_vlg_tst();
//constants
//generalpurposeregisters
//========================
regx1;//inputsareregfortestbench
regx2;
regx3;
//wires
wirez1;//outputsarewirefortestbench
//============================
//assignstatements(ifany)
and3_dfi1(
//portmap-connectionbetweenmasterportsandsignals/registers
.x1(x1),
.x2(x2),
.x3(x3),
.z1(z1)
);
initial
begin:APPlicable
//codethatexecutesonlyonce
//insertcodehere--》begin
//=============================================
reg[3:0]invect;//testinvect
for(invect=0;invect《8;invect=invect+1)
begin
{x1,x2,x3}=invect[3:0];
#10$display(“x1x2x3=%b,z1=%b”,
{x1,x2,x3},z1);
end
//==============================================
//--》end
end
endmodule
资料很实用,谢谢楼主! 谢谢你共享的资料 资料的确是很全面 以后多交流交流 感谢分享,提供的例程很实用 谢谢lz分享,很有用 谢谢你共享的资料 有时间需要好好看看 不错 很详细的资料 感谢分享,提供的例程很实用 非常感谢楼主分享 楼主好人,资料很好。谢谢楼主! 应用还是很广泛的 资料够全的,多谢分享 应用还是很广泛的 谢谢lz分享,很有用 资料很实用,谢谢楼主! 共享的资料比较详细谢谢
页:
[1]
2