将文件读入Verilog

Awa*_*ain 2 file-io verilog

我试图读取包含整数的文本文件.我在项目文件夹中有这个txt文件.我正在尝试使用此代码,但它正在获取char $fgetc.现在我想做的是如何从文本中获取整数?

这是代码:

integer file;
reg [31:0] char;

begin 
  file=$fopen ("Links.txt","rb");
  char=$fgetc(file);
  $display("char=%d", char);
end
Run Code Online (Sandbox Code Playgroud)

PS:这是我第一次,我正在阅读任何文件.

Mor*_*gan 5

此解决方案之前使用SystemVerilog发布,此处编辑verion用于Verilog兼容语法.

integer               data_file    ; // file handler
integer               scan_file    ; // file handler
reg [21:0] captured_data;
`define NULL 0    

initial begin
  data_file = $fopen("data_file.dat", "r");
  if (data_file == `NULL) begin
    $display("data_file handle was NULL");
    $finish;
  end
end

always @(posedge clk) begin
  scan_file = $fscanf(data_file, "%d\n", captured_data); 
  if (!$feof(data_file)) begin
    //use captured_data as you would any other wire or reg value;
  end
end
Run Code Online (Sandbox Code Playgroud)