本帖最后由 swe21 于 2012-5-16 17:08 编辑
大家好,verilog读取文本文件里面的数据,读到数据的末尾应该就不读了网上查了一下,$feof()命令有这个功能 ,当读到数据末尾时,
$feof(<文件句柄>)!=0,其他时候$feof(<文件句柄>)=0;
可是我用modelsim验证的时候为什么$feof()一直为零呢?
附上代码:
module file;
integer file,cnt;
reg [3:0] dat;
reg clk ;
reg en;
reg feof;
initial
clk = 0;
always #5 clk = ~clk;
initial begin
file = $fopen("data_in.txt","r");
feof = $feof(file);
if (file==0)
begin
$display("file open is failed");
end
while(!$feof(file))begin
@ (posedge clk)
if(en)
cnt =
$fscanf( file,"%b",dat );
end
$fclose(file);
end
endmodule
|