如何在VHDL中将同一行写入多个文件

时间:2016-01-15 00:06:50

标签: file copy line vhdl

我实际上想在VHDL中用两个不同的文本文件写一行同一行。

首先我天真地尝试用这种方式写入两个文件:
write (v_lineBuffer, v_string);
writeline(f_output1, v_lineBuffer);
writeline(f_output2, v_lineBuffer);

直到我意识到在 writeline()之后刷新 v_lineBuffer

我也试着复制一行:
write(v_lineBuffer1, v_string);
v_lineBuffer2 := v_lineBuffer1;
writeline(f_output1, v_lineBuffer1);
writeline(f_output2, v_lineBuffer2);

但是我尝试将 v_lineBuffer1 复制到 v_lineBuffer2 时,ModelSim崩溃了

有人可以帮忙吗?谢谢!

1 个答案:

答案 0 :(得分:5)

VHDL中的行类型是所谓的访问类型,它对应于其他语言中的指针。如果要复制内容变量指向另一个变量,请使用

v_lineBuffer2 := new string'(v_lineBuffer1.all);