将创建日期添加到SystemVerilog中的文件名

时间:2017-01-19 12:12:29

标签: system-verilog

我需要创建一个报告(.txt),我想引用每个测试会话,所以我希望每次模拟时都将日期添加到我的报告名称中。 与Report_01-19-2017-12:53.txt一样 到目前为止,我已经能够使用以下内容创建一个日期为的文件:

$system("date > sDate");

或在我的模拟软件上显示:

$system("date");

到目前为止,我的代码看起来像:

 string     filename;
 reg [8*30:1]   data; // the date is of 29 characters in size
 string     sDate;
 integer    scan_file,data_file    ;
 initial begin
      $system("date > data");
      data_file = $fopen("data", "r");
      scan_file = $fscanf(sDate,"%s", data); 
      $fclose("data"); 
      [...]
      filename = {filename,sDate};
     Report_Task = $fopen(filename,"a");   [...]
   end

sDate什么都不包含,日期包含日期...... 我为stringreg

尝试了filenamesDate

2 个答案:

答案 0 :(得分:2)

您可以使用svlib而不是通过文件来获取日期。 documentation的第9章说明了如何获取有关当前时间的信息。

答案 1 :(得分:0)

你不是说

scan_file = $fscanf(data_file, "%s", sDate);

其中,如果读取成功,scan_file将等于1(读取的项目数)。 (所以,你可能不想把它称为scan_file。)

相关问题