首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VHDL - Vivado - Vivado模拟器检索旧文件而不是新生成的文件

VHDL - Vivado - Vivado模拟器检索旧文件而不是新生成的文件
EN

Stack Overflow用户
提问于 2022-04-23 23:04:27
回答 1查看 66关注 0票数 0

我正在vivado 2020.2中构建一个vhdl项目。

我的工作目录位于我的O.S.的本地桌面上,它有以下结构:

代码语言:javascript
复制
script\
    datasets\
        gentestdata.py
        testdata\
            test_data.txt
src\
  <<source files here>>
tst\
  <<testbenches here>>
vivado\
  <<project directory here>>

我有以下不纯函数从脚本生成的文件test_data.txt加载数据:

代码语言:javascript
复制
impure function gen_datain(dataset_path: in string) return datain_type is

file text_header: text is in dataset_path;
variable text_line: line;
variable line_i: bit_vector(0 to neuron_rom_width-1);
variable dataset_content: datain_type;

begin
for i in dataset_content'range loop
    if i = 101 then
        readline(text_header, text_line);
        read(text_line, line_i);
    else
        readline(text_header, text_line);
        read(text_line, line_i);
    end if;
    dataset_content(i) := makesfixed(line_i);
end loop;
file_close(text_header);
return dataset_content;
end function;

文件test_data.txt由Python gentestdata.py自动生成。每次运行这个脚本时,test_data.txt的内容都会发生变化,在vivado环境中加载的数据也会发生变化,但是即使旧版本的test_data.txt已经被更新的版本所取代,模拟器仍然会加载旧的数据。我怎样才能纠正这种行为。我试着关闭vivado重新启动O.S。

我的问题是,你知道这种行为的原因,以及如何纠正这种行为?

谢谢大家

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-24 02:06:16

当向GUI项目添加文件时,Vivado允许用户“将文件复制到项目”,对副本说“否”。这里有一个复选框或单选按钮。Vivado将尝试将它自己的本地副本埋在它的层次结构中。Vivado可以自由地删除和重新添加自己的文件夹,如果您的文件是其中的一部分,它可能会变得混乱。

您可能需要重新开始一个新的Gui项目,以便使项目处于不修改文件的状态。

最终的解决方案是在没有GUI的非项目模式下使用Vivado。这在基于Linux的脚本驱动环境中比在Windows中工作得更好。在非项目中,Vivado不会破坏您的文件。

请参见:

https://docs.xilinx.com/r/en-US/ug892-vivado-design-flows-overview

有关项目和非项目构建工作流程之间的权衡的更多信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71984241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档