Vhdl 使用ModelSim,如何将波形更新到最新的数据集?

Vhdl 使用ModelSim,如何将波形更新到最新的数据集?,vhdl,modelsim,intel-fpga,Vhdl,Modelsim,Intel Fpga,背景:ModelSim v10.4d与quartus v16.0一起安装 我编写了一个.do文件,用ModelSim模拟我的设计 my.do文件中的步骤包括: 1- vcom *.vhd : compile all sources files and testbench 2- vsim work.my_tb : load testbench for simulation 3- log * -r : tell modelsim to record everything 4- run xx us :

背景:ModelSim v10.4d与quartus v16.0一起安装

我编写了一个.do文件,用ModelSim模拟我的设计

my.do文件中的步骤包括:

1- vcom *.vhd : compile all sources files and testbench
2- vsim work.my_tb : load testbench for simulation
3- log * -r : tell modelsim to record everything
4- run xx us : run simulation for a certain time
然后我手动将信号添加到波形窗口

此流程工作正常,但当我修改一些代码并重新执行.do文件时,问题发生了:

第二次运行.do文件将更新数据集文件.wlf。但是波形窗口中的信号仍然在旧数据集中。我尝试了以下两种方法来更新信号:

1- file->open->new dataset, signals in the waveform window are NOT updated to the new dataset.
2- file->open->new dataset, then file->dataset browser-> close old dataset,
this will delete those signals in the waveform window. Then I had to add 
those signals manually a second time, then the signals are up to date, but 
this wastes a lot of time.

因此,我想知道是否有更简单的方法将波形窗口中的信号更新到新数据集?

ModelSim会在已根据ModelSim编译的代码与更新的代码不同时显示一个警报对话框。因此,对数据集所做的任何更改都会导致显示此框。我想你一定是无意中单击了“覆盖更改”。点击“重新加载”按钮将用新信号更新Modelsim。

我无法重现您的问题。如果我在活动模拟期间运行vsim work.[…],旧模拟将终止,新模拟将启动:modelsim将清空我的波形窗口。。。然后我必须再次添加信号。@JHBonarius是的,在我的.do文件中,我禁用了
vsim tb
,如果
dataset info存在
返回1,这就是为什么它没有重新启动新的simu;现在我找到了一种解决我原来问题的方法:我确实将当前信号的波形保存到一个
波形中。如果
数据集信息存在,do
返回1,最后我查看
波形是否存在。do
存在,如果是,加载它。但这不是真正的波形更新,它只是重新加载整个模拟和波形。嗯,但是您是否重新启动模拟(
restart-f
)以加载新编译的实体?这将清除波形。