请教modelsim仿真教程 secureip不可用

&ModelSim提供了简单仿真方式,还有一种要建立project,目前这种方式暂时够我用了。总结了以下,做了一个简单的《modelsim quick start》。&&简单方针模式下面,操作步骤如下(黄色字符部分为每个操作对应的script指令,打开modelsim软件,在script窗口输入这些指令即可):1.新建library。&#8220;file-&new-&library"。选择library种类为&#8220;Create: a new library and a logical mapping to it&#8221;。vlib newlibvmap newlib newlib&<pile所有的源程序。"compile-&compile"在弹出对话框选择要编译的源文件即可。compile所有的源程序之后,会将这些编译后的文件全部添加到新建的Library中去。VHDL程序使用:vcom -work newlib sourcecode.vdl Verilog程序使用:vlog -work newlib sourcecode.v&&(A:源文件编译的前后顺序,对结果没有影响. B:如果前面使用的newlib名字是work,则不许要在这里指定工作lib。)&3.loading module到simulator里面。点击work左侧&#8220;+&#8221;号,展开lib,双击我们要观察的module。此时,会有signal窗口弹出(窗口标题是vsim)。vsim &lib_name.module_name(ATT:可能会因为vopt的缘故使得一些不重要signal被modelsim自动忽略,需添加选项 -novopt,即,vsim -novopt module_name)4.调整窗口,准备调试。&#8220;view-&..."来打开想要观察的window。(如果wave,signals等窗口都在,就不用执行这一步了)view&signals source wave5.添加要观察的signal到wave viewer里面。在对应的信号上右键&#8220;Add -& to wave -& all items in region"。add wave -r /*&add signal_name&添加单个信号到wave窗口6.点击run快捷按钮或者是,simulate-&run,开始仿真&run 500(运行500单位时间)run @ 3000(特定时刻观察)run -all (运行,直到testbench定义的stop时间)7.可以使用breakbutton来终止run,&#8220;simulate-&break&#8221;break8.设置断点,直接单击要设置断点行的左侧 (不是所有行都可以设置断点,不同版本软件下自行实验)。当程序停止在设置的断点上时,通过以下方法查看变量值:1)在signal window里面直接看变量的值2)在source window里面,鼠标指针停留在变量上面时,会自动显示该变量的值(不确定是否全部版本都有)。3)在source window里面,右键examine。4)使用examine命令。在script窗口输入&#8220;examine var&#8221;9.wave观察观察一个数组时,可以选择用二进制,十进制,十六进制,还可以设置有符号无符号。还可以把它转化为analog方式,如调试一个供da使用sine输出,可以选择用analog方式来查看dout。&Extra topic:compile the ISE standard lib for modelsim SE:1. use the ISE native tools.(Preferred)$ise_install_path/ise/bin/lin64/compxlibgui(compxlib is available for cmdline only)ATT: u'd better run it as root.&2. Copy compiled libs from modelsim XE.&3. compile the library in modelsim.cd $modelsim_install_path/mkdir ise_libcd ise_libmkdir unisim_vervlib unisim_vervmap unisim_ver unisim_vervlog -work unisim_ver $ise_install_path/ise/verilog/src/unisim/*.v(source code for VHDL is in another dir)Do such for all libs.&u need to modify the modelsim.ini before using the lib:&$ise_install_path/ise/modelsim.iniadd the flowing context(before[vcom]):&&&unisim = $MODEL_TECH/../ise/unisimsimprim = $MODEL_TECH/../ise/simprimxilinxcorelib = $MODEL_TECH/../ise/xilinxcorelibcpld = $MODEL_TECH/../ise/cpldsecureip = $MODEL_TECH/../ise/secureipunimacro = $MODEL_TECH/../ise/unimacrocpld_ver = $MODEL_TECH/../ise/cpld_versimprims_ver = $MODEL_TECH/../ise/simprims_veruni9000_ver = $MODEL_TECH/../ise/uni9000_verunimacro_ver = $MODEL_TECH/../ise/unimacro_verunisims_ver = $MODEL_TECH/../ise/unisims_verxilinxcorelib_ver = $MODEL_TECH/../ise/xilinxcorelib_ver&&=========================分割线=================================其他一些零碎:1.在当前工作目录下,会产生一个名为transcript的文本文件,里面记录了你在modelsim中的所有操作。&
阅读(...) 评论()请教modelsim
secureip不可用 | 电子创新网赛灵思中文社区在ModelSim中添加Xilinx仿真库_牛宝宝文章网在ModelSim中添加Xilinx仿真库专题:在ModelSim中添加Xilinx仿真库说明:l ModelSim一定要安装在不带空格的目录下,即不要安装在“Program Files”目录下。(wWW.NIUBb.NeT]如作者是安装在D:\softwares\Modelsim目录下。l ISE软件也最好安装在不带空格的目录下。1、找到开始菜单-&程序-&Xilinx ISE Design Suite 11 -& ISE -& Accessories -& Simulation Library Compilation Wizard.2、选定ModelSim的版本,以及指定ModelSim的安装路径。3、选择Both VHDL and Verilog。4、选择支持哪些系列的芯片,看自己需要增减。5、默认选全上即可。6、指定编译完后的库存放位置,这里作者在modelsim安装目录下新建了xilinx_lib的文件夹,并指定到这里。(注意不要指向带空格的路径)7、运行 Lauch Compile Process,即开始编译库文件,需要几十分钟。编译完成后应该在xilinx_lib目录下多出如下文件夹:8、右键打开modelsim目录下的modelsim.ini文件,先将其“只读”属性去掉。然后用记事本打开。在[Library]下面添加如下代码,即之前编译好的Xilinx库的路径。unimacro = D:/softwares/modelsim/xilinx_lib/unimacrounimacro_ver = D:/softwares/modelsim/xilinx_lib/unimacro_verunisim = D:/softwares/modelsim/xilinx_lib/unisimunisims_ver = D:/softwares/modelsim/xilinx_lib/unisims_versecureip = D:\softwares\modelsim\xilinx_lib/secureipxilinxcorelib = D:/softwares/modelsim/xilinx_lib/xilinxcorelibxilinxcorelib_ver = D:/softwares/modelsim/xilinx_lib/xilinxcorelib_versimprim = D:/softwares/modelsim/xilinx_lib/simprimsimprims_ver = D:/softwares/modelsim/xilinx_lib/simprims_ver9、再次打开ModelSim,即可以看到Xilinx的库已经默认出现在了库列表里。以后仿真Xilinx的IP核时,就不用每次都添加库了。未完待续,更多精彩请关注比比读小说网微信公众号转载请保留本文连接:分享到:相关文章声明:《在ModelSim中添加Xilinx仿真库》由“清曲渐离伤”分享发布,如因用户分享而无意侵犯到您的合法权益,请联系我们删除。TA的分享Modelsim仿真tcl脚本与wave.do文件
单片机&嵌入式
单片机应用
嵌入式操作系统
学习工具&教程
学习和开发单片机的必备工具
(有问必答)
(带你轻松入门)
电子元件&电路模块
当前位置: >>
>> 浏览文章
Modelsim仿真tcl脚本与wave.do文件
&Modelsim的仿真,如果一直使用图形界面建工程,编译,仿真,一个个加入观察波形的话,未免复杂了一些,尤其是当工程较大,需要观察的信号较多时,下面贴出一些常用的tcl脚本命令和wave.do常用语法:
vsim.tcl仿真脚本:
vlib compress_lib
vmap compress_lib compress_lib
set verilog_file_list [ glob verilog/compress/*.v ]
foreach i $verilog_file_list {
vlog -work compress_lib $i
vlib uncompress_lib
vmap uncompress_lib uncompress_lib
set verilog_file_list [ glob verilog/uncompress/*.v ]
foreach i $verilog_file_list {
vlog -work uncompress_lib $i
vlib common_lib
vmap common_lib common_lib
set verilog_file_list [ glob verilog/common/*.v ]
foreach i $verilog_file_list {
vlog -work common_lib $i
vlib work_lib
vmap work work_lib
set verilog_file_list [ glob verilog/*.v ]
foreach i $verilog_file_list {
vlog -L compress_lib -L uncompress_lib -L common_lib -work work_lib $i
vsim -t ps -voptargs=\&+acc\& -L secureip -L xilinxcorelib -L unisims_ver &-L compress_lib -L uncompress_lib -L common_lib common_lib.glbl &work_lib.testbench
# Turn off IEEE library warnings
set NumericStdNoWarnings 1
set StdArithNoWarnings 1
do wave_me.do
wave.do波形观察文件内容示例:
onerror {resume}
quietly WaveActivateNextPane {} 0
add wave -noupdate -format Logic -radix binary /testbench/clk_200
add wave -noupdate -format Logic -radix binary /testbench/rstn
add wave -noupdate -divider {incross fifo in &signals}
add wave -noupdate -format Logic -radix binary /testbench/stest_wvalid
add wave -noupdate -format Logic -radix binary /testbench/stest_wready
add wave -noupdate -format Logic -radix hex /testbench/matlab_in
add wave -noupdate -format Logic -radix decimal /testbench/stest_wdata_re
add wave -noupdate -format Logic -radix hex /testbench/stest_wdata
add wave -noupdate -divider {signals}
add wave -noupdate -format Logic -radix binary /testbench/clk_200
add wave -noupdate -format Logic -radix binary /testbench/incross_m_valid
add wave -noupdate -format Logic -radix binary /testbench/incross_m_ready
add wave -noupdate -format Logic -radix decimal /testbench/incross_m_data_re
add wave -noupdate -format Logic -radix decimal /testbench/s_axi_tdata
add wave -noupdate -format Logic -radix decimal /testbench/incross_wr_data_count
add wave -noupdate -format Logic -radix decimal /testbench/incross_rd_data_count
TreeUpdate [SetDefaultTree]
WaveRestoreCursors {{Cursor 1} {200 ns} 0}
WaveRestoreZoom {0 ps} {200 ns}
configure wave -namecolwidth 150
configure wave -valuecolwidth 100
configure wave -justifyvalue left
configure wave -signalnamewidth 1
configure wave -snapdistance 10
configure wave -datasetprefix 0
configure wave -rowmargin 4
configure wave -childrowmargin 2
configure wave -gridoffset 0
configure wave -gridperiod 1
configure wave -griddelta 40
configure wave -timeline 0
【】【】【】【】
上一篇:下一篇:
CopyRight @
单片机教程网
, All Rights Reserved}

我要回帖

更多关于 modelsim教程 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信