欢迎来到天天文库
浏览记录
ID:27523461
大小:154.00 KB
页数:6页
时间:2018-12-04
《Xilinx ISE是如何调用ModelSim进行仿真的.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、XilinxISE是如何调用ModelSim进行仿真的 在我们用ModelSim仿真的时候经常是修改一点一点修改代码,这样会造成一个无奈的操作循环:修改代码--->编译代码--->仿真设置--->进入仿真页面--->添加需要观察的波形--->运行仿真。如果仿真结果不理想,还得需要重新修改代码,重复上述的操作。 计算机擅长做重复的事情,为什么不让计算机代劳呢? 我们可以参照XilinxISE是如何调用ModelSim进行仿真的,尤其是脚本的编写。 下面一个脚本是我用ISE10.1建立了一个AES256的工程,然后在调用ModelSim6
2、.5的时候,ISE会生成这几个脚本文件,AES256_tb.fdo,AES256_tb_wave.fdo和AES256_tb.udo。 下面的代码是AES256_tb.fdo文件的内容。 1:vlibwork#创建名字是work的库,这个仿真之前必须做的2:vcom-explicit-93“SBOX_ROM.vhd”#编译vhd代码3:vcom-explicit-93“Inv_SBOX_ROM.vhd”4:vcom-explicit-93“AES_package.vhd”5:vcom-explicit-93“subbytes.vhd”6:
3、vcom-explicit-93“SBOX_ROM_reg.vhd”7:vcom-explicit-93“round_key_BRAM.vhd”8:vcom-explicit-93“Inv_subbytes.vhd”9:vcom-explicit-93“Keyexpansion_Yao.vhd”10:vcom-explicit-93“AES256_ENC_DEC.vhd”11:vcom-explicit-93“AES256_TOP.vhd”12:vcom-explicit-93“AES256_tb.vhd”13:vsim-t1ps-libwo
4、rkAES256_tb#进入仿真设置,时间单位为1ps,库指定为work,AES256_tb就是指你的top层设计的名字14:do{AES256_tb_wave.fdo}#执行*.fdo文件,用来添加信号和变量或者内部的寄存器到波形(WAVE)窗口15:viewwave#打开波形窗口16:viewstructure#打开架构(structure)窗口17:viewsignals#打开信号列表窗口18:run1000ns#运行1000ns19:do{AES256_tb.udo}#运行用户定义的脚本只要编译的时候没有出现语法错误或者是找不到定义的
5、库文件等错误提示,一般会很容易的看到仿真的波形,而不用手动进行操作。这样方便了仿真的整个过程,而无需用很多鼠标点击操作。 现在通过一个具体的实例来说明如何运用脚本来实现ModelSim的仿真。 工具版本:ISE10.1,ModelSim6.5a1.创建ISE工程 首先通过ISE创建test.vhd和test_tb.vhd文件并添加到工程中,这里不细说如何创建HDL源代码。 然后配置ISE的仿真器,右键选中FPGA芯片,点击properTIes,然后在Simulator选择Modelsim-SEVHDL。 图1.工程属性 在so
6、urce窗口选择“BehavioralSimulaTIon”,可以看到工程中的test_tb.vhd(testbench文件)。选中test_tb.vhd文件,在Process窗口中双击SimulateBehavioralModel,ISE开始调用ModelSim,这是ISE自动生成了三个脚本文件:test_tb.fdo,test_tb_wave.fdo和test_tb.udo。 图2.BehavioralSimulaTIon窗口 看看三个脚本文件的内容吧。test_tb.fdo内容如下:1:vlibwork#添加library2:vco
7、m-explicit-93“test.vhd”#编译test的顶层文件3:vcom-explicit-93“test_tb.vhd”#编译test_tb的testbench文件4:vsim-t1ps-libworktest_tb#进入仿真,时间单位1ps,仿真test_tb5:do{test_tb_wave.fdo}#执行*.fdo脚本文件,用于添加仿真波形6:viewwave#打开波形窗口7:viewstructure#打开structure窗口8:viewsignals#打开信号窗口9:run1000ns#仿真运行1000ns10:do{
8、test_tb.udo}#执行*.udo脚本文件,用于执行用户定义的脚本命令test_tb_wave.fdo内容如下(): 1:##ProjectNavigato
此文档下载收益归作者所有