使用modelsim仿真调用Xilinx IP核的通用方法

 

 

 

使用do文件进行仿真时出现“failed tofind ‘glbl’in hierarchical name ‘/glbl/GSR‘“的解决办法

 

步骤2:将glbl作为顶级模块仿真

在ModelSIM error "Failed to find 'glbl' in hierarchical n | Forum for Electronics (edaboard.com)网业中,有人提到:

 

image

 

所以在do文件里加一句:vsim [options] work.my_design work.glbl即可。

注意:my_design就是工程的激励文件名。

# 退出当前仿真
quit -sim
# 清除命令和信息
.main clear
#创建一个库目录 modelsim_lib
vlib ./modelsim_lib
#创建一个库的子目录 modelsim_lib/user
vlib ./modelsim_lib/user
#user库名称与库的路径对应
vmap user ./modelsim_lib/user
#将仿真文件编译进指定的库中
#vlog -incr -work user "D:/usms/do_sim_test_example/rtl/counter.v"
#vlog -incr -work user "D:/usms/do_sim_test_example/rtl/tb_counter.v"

vlog -incr -work user "D:/usms/do_sim_test_example_ip/rtl/*.v"

#--------------fifo_ip中comile.do------------------------------
vlib modelsim_lib/work
vlib modelsim_lib/msim

vlib modelsim_lib/msim/xil_defaultlib
vlib modelsim_lib/msim/xpm
vlib modelsim_lib/msim/fifo_generator_v13_2_4

vmap xil_defaultlib modelsim_lib/msim/xil_defaultlib
vmap xpm modelsim_lib/msim/xpm
vmap fifo_generator_v13_2_4 modelsim_lib/msim/fifo_generator_v13_2_4

vlog -work xil_defaultlib -64 -incr -sv \
"D:/Xilinx/Vivado/2019.1/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
"D:/Xilinx/Vivado/2019.1/data/ip/xpm/xpm_memory/hdl/xpm_memory.sv" \

vcom -work xpm -64 -93 \
"D:/Xilinx/Vivado/2019.1/data/ip/xpm/xpm_VCOMP.vhd" \

vlog -work fifo_generator_v13_2_4 -64 -incr \
"../top.ip_user_files/ipstatic/simulation/fifo_generator_vlog_beh.v" \

vcom -work fifo_generator_v13_2_4 -64 -93 \
"../top.ip_user_files/ipstatic/hdl/fifo_generator_v13_2_rfs.vhd" \

vlog -work fifo_generator_v13_2_4 -64 -incr \
"../top.ip_user_files/ipstatic/hdl/fifo_generator_v13_2_rfs.v" \

vlog -work xil_defaultlib -64 -incr \
"../top.srcs/sources_1/ip/flash_fifo/sim/flash_fifo.v" \

#启动仿真,并指定优化选项,翻转包含的全部库,以及顶层文件
vsim -voptargs="+acc"  \
-L user \
-L xil_defaultlib          \
-L xpm                     \
-L fifo_generator_v13_2_4  \
-L unisims_ver             \
-L unimacro_ver            \
-L secureip                \
-lib user top_tb glbl

#Add signal into wave window
#do wave.do
############################## 运行#############################
run 10us
sim.do

 

 

 

如何使用modelsim/questasim独立仿真xilinx的IP

 https://blog.csdn.net/qq_43445577/article/details/115255784

 

 

ModelSim的TCL脚本仿真流程【超详细案例教学】

############################## 基础配置#############################
#退出当前仿真
quit -sim
#清除命令和信息
.main clear

##############################编译和仿真文件#############################
#编译修改后的文件,这里把设计文件和仿真文件分开放了,所以写两个
vlog "../rtl/*.v"
vlog "../sim/*.v"
#vsim用于仿真
#-voptargs=+acc:加快仿真速度 work.xxxxxxxx:仿真的顶层设计模块的名称 -t ns:仿真时间分辨率
vsim -t ns -voptargs=+acc work.tb_complex_fsm

############################## 添加波形模板#############################
# 添加虚拟类型
virtual    type {
{01 IDLE}
{02 HALF}
{04 ONE}
{08 ONE_HALF}
{16 TWO}
} vir_new_signal
#添加波形区分说明
add wave -divider {tb_complex_fsm} 
#添加波形
add wave tb_complex_fsm/*
add wave -divider {complex_fsm_inst}
add wave -radix decimal tb_complex_fsm/complex_fsm_inst/* 
virtual    function {(vir_new_signal)tb_complex_fsm/complex_fsm_inst/state} new_state
add wave  -color red  -itemcolor blue  tb_complex_fsm/complex_fsm_inst/new_state

###常用添加波形指令
#-radix red -----设置波形颜色
#-itemcolor Violet -----设置波形名字颜色
#常用颜色:red,blue,yellow,pink,orange,cyan,violet
#-radix decimal----定义显示进制形式
#常用进制有 binary, ascii, decimal, octal, hex, symbolic, time, and default

## 配置时间线单位(不配置时默认为ns)
configure wave -timelineunits us
############################## 运行#############################
run 10us
sim.do

 

https://blog.csdn.net/L_Carpediem/article/details/134223621

 

 

 

 

 

 

image

 

 

image

 

 

 

 

 

 

 

 

 

 

 

使用modelsim仿真调用Xilinx IP核的通用方法

https://blog.csdn.net/weixin_39789553/article/details/108595621

 

vivado 和 modesim 联合仿真&&快速修改重仿

https://blog.csdn.net/gaoxcv/article/details/116159396

 

image

 

 

 

 

quit -sim
.main clear

#创建一个库目录 modelsim_lib
vlib ./modelsim_lib
#创建一个库的子目录 modelsim_lib/user
vlib ./modelsim_lib/user
#user库名称与库的路径对应
vmap user ./modelsim_lib/user
#将仿真文件编译进指定的库中

vlog -incr -work user "D:/usms/do_sim_test_example/rtl/counter.v"
vlog -incr -work user "D:/usms/do_sim_test_example/rtl/tb_counter.v"

#启动仿真,并指定优化选项,翻转包含的全部库,以及顶层文件
vsim -voptargs="+acc"  \
-L user \
-lib user tb_counter
sim.do

 

 

image

 

posted on 2025-11-26 15:29  taylorrrrrrrrrr  阅读(27)  评论(0)    收藏  举报