I believe someone would have noticed that the verilogAMS running in ams simulator writes into file as and when the simulation runs, while the verilogA which runs on spectre writes all data at once towards the end of the file. I would like to know if it's possible to make the verilogA write continuously so that even if simulation crashes, the probed data I want is writen safely. In fact for noise test intermediate check can be done only if some data is written. This can easily give us the information as to whether we need to continue the simulation or kill it.
I have a verilogA which is written as below :
$strobe(" Cross Time = %9.9g \n", $abstime);
Cross_point= $abstime*1e9 ;
$fwrite(fp,"%9.9g \n",Cross_point);
The verilogAMS code for punching out the edges into a file is :
always @(posedge osc_in) begin
$fwrite(file,"%f\n",$realtime);
end
I'm finding that AMS simulator takes much more time to run than spectre and hence would like to use verilogA, while it doesn't write real time. If it's possible to do file write real time, it would be great.