仿真前的准备工作:在modelsim中添加lattice仿真库:
1.去除modelsim安装目录下modelsim.ini的只读属性。
2.打开modelsim,更改目录File>Change directory (这里是库要存放的地方,一般放在modelsim的根目录下的,如D:modeltech_10.1aLattice)
3.新建一个库File>New>Library,取个名字(我使用MACHXO2系列芯片,取了machxo2)
)
4.编译库Compile>Compile,出现编译对话框,在Library项中选择刚刚新建的lattice;查找范围选择你安装Diamond仿真库的目录(我的是D:lsccdiamond3.4_x64cae_librarysimulationverilogmachxo2,如果你是用vhdl编写代码的则选择vhdl)。全选,编译。
等待编译完成。保持Library machxo2不变,编译D:lsccdiamond3.4_x64cae_librarysimulationverilogpmi中的内容。(这里存放了一些IP核的仿真库)等待编译完成,点击Done完成。退出Modelsim。
5.打开modelsim.ini,在[Library]下多了一行machxo2=machxo2
将其改成machxo2 = D:modeltech_10.1aLatticemachxo2
保存退出,并恢复只读属性。
这时我们在打开modelsim就会发现library队列里多了machxo2。
新建仿真文件:
还是第二课里面的demo1工程,下面针对这个工程建立对应的仿真文件。
1.右击Input Files,Add->New File,选中Verilog Files文件类型,输入文件名和保存路径(不能有中文哦)。
在新建的仿真文件下输入仿真测试程序:
保存,上面的程序你现在看不懂没关系,继续学习你就能看懂了。好了,仿真文件我们已经建立好了,接下来准备仿真。
开始仿真:
打开lattice diamond,
tools>options>environment>Directionaries>modelsim安装目录/win32即可。点击OK
2.点击simulation wizard ,输入名称和路径
3 选中tb_demo1_andgate.v文件,添加testbench文件。点击Next。
4. modelsim自动被调用并跳转到project栏。右键其中一个,选择编译全部。
编译完应该出现以下结果表示无错误:
5.选择Simulate>start simulation 在libraries下添加machxo2库
然后点击design 标签,展开work ,左键点击tb。然后点击OK开始仿真。(下面的Optimization选项不要勾上)
如果仿真过程中出现以下错误,可直接单击确认跳过,不妨碍后面的仿真:
6.在object栏右键要查看的信号。Addto>wave>selected signale。也可以按住Ctrl键多个文件一起选中。
7.设置好单步仿真步长和显示单位。
点击工具栏的Run-All按钮:
运行得到仿真结果。
注意事项:在编写testbench文件时需要在文件里包含语句。
• GSR GSR_INST(.GSR(1'b1));
• PUR PUR_INST(.PUR(1'b1));