电子说
问题描述
在vivado中调用第三方仿真软件modelsim或questasim进行仿真,会遇到如下情形:
1,通过仿真得到了波形文件,想要把波形数据存成文本文件,导入matlab或其他分析软件进行分析
2,通过matlab生成了前端数据,或者通过硬件采集到了前端数据,想要把得到的文本文件数据作为fpga代码的仿真输入源,验证自己代码的正确性
这就涉及到了在tb仿真文件中对文本文件进行操作。
解决方法
首先除了通用的库文件外,还需加上use std.textio.all这句,得以运用文本操作语句。
然后声明文本文件名字(文本类型可自行选择),及变量类型,然后就是读写文件。
写文件
file data_text : text is out “data_text.out”
process(opclk)
variable lj:line;
begin
if rising_edge(opclk) then
if (data_vld ='1') then
write(lj,conv_integer(data_out));
writeline(data_text,lj);
end if;
endif;
end;
读文件
file data_text : text is in “data_text.out”
if endfile (data_text) = false then
readline(data_text,lj);
read(lj,data_temp);
end if;
Tips:
全部0条评论
快来发表一下你的评论吧 !