5 Project Options


5.1 Waveform
5.1.1 Select Waveform

Supported. The operation is the same as Veritak. Please see veritak tutorial.

5.1.2 $dumpon/$dumpoff

This is new feature. You can control on /off state of VeritakSV's waveform processing by source level.
To enable this, you should check following boxes on project setting.


Apply $dumpon/$dumpoff/$dumpclear for waveforms
Save all sim data.



Here is an example.

initial begin

    repeat(100) begin
        #1000000;
        $dumpoff;//mark x on all of waveforms and disable waveform operation
        $display("dumpoff=%t",$time);
        #1000000;
        $dumpon;//enable all waveform operation
        $display("dupon=%t",$time);
    end

end

Note all waveforms become x while $dumpoff. So, this saves memory consumption for waveforms. You can check the consumption for waveform by the bottom bar "DispDisk= xx MB". When $dumpoff is enabled, DispDisk value should not be increased.




5.1.3 $dumpclear

It behaviors as $dumpoff at time0 on anytime.

For extremely long simulations,if you do not want to use a lot of memory , but you want to see the waveforms when some triggering signal (the error) becomes active,this is it.
$dumpclear clears all histories of waveforms, forgets everything (means all waveforms become x), but gets free memory instead.

initial begin

   repeat(100) begin
      #1000000;
      $dumpoff;//mark x on all of waveforms and disable waveform operation
      $display("dumpoff=%t",$time);
      #1000000;
      $dumpon;//enable all waveform operation
      $display("dupon=%t",$time);
   end
end

reg err=0;

task do_some_test;

      #3700000;//Time must be consumed for each $dumpon/$dumpoff/$dumpclear
      err=$random;
      $display("err=%b",err);

endtask

initial begin

        repeat(10000000) begin
            $dumpon();
            do_some_test();
            if (!err) $dumpclear();//It means all of waveform histories are cleared.
            #1;//Time must be consumed for each $dumpon/$dumpoff/$dumpclear
        end
end

5.2 State Save

Currently it saves entire simulator state to StateSave file just After compilation There are several restrictions below.

When is this feature useful?


You have long compile time and need to do some regression tests for slightly different parameters, then this feature should be useful. Because loading time is far less than compile time per each test. Slightly different parameters can be used by using $test$plusargs /$value$plusargs system tasks. Please note available parameters that can be changed as invoked parameters are only XX$plusargs , other parameters, such as -Define etc.. can not be changed. This is true for the options for compiler ,such as Save All Sim Data..However,Inculde path can be referred in run time, so they should be specified in the project as original project.

Another advantage of using state-file is reduction of compile-time memory. For example, memory footprint becomes 2.4GB after loading statesave-file whereas 3.6GB was necessary for compilation and runtime. Loading Time is 2sec whereas compile time is 2min.

1) Make State Save Project

Check After compilation and Make Load Project in your project as below. Save and Load it.


After Compilation, you should see Saving... in compiler pane.


2) Load the project

State save file's project is made in the same folder as "Load_ + project_name + _version".vtakprj.

Load the project. Loading time is around 1-2 sec in nominal situation.

5.3 VCD Comparison
5.3.1 Veritak-VCD comparison

You can compare Veritak waveform and VCD waveform by clicking menu->utility->entier waveform comparison.
Please note at least one (empty) waveform should be displayed when this feature is enabled ,and checking "check by red Marker" in dialog
by clicking ->menu->utility->Add VCD Start Time Offset.



5.3.2 VCD- VCD comparison
  
You can compare VCD-VCD files.as described above as well. In addition you can use command line as below.
   
   VeritakWin.exe file1.vcd file2.vcd

   An example of Batch file is shown in Commands/vcd_comparison. In command line, if there is no difference between 2 VCD files, VeritakWin returns immediately, but if there is a difference between 2 VCD file, VeritakWin displays different signals by showing red mark by time order as above automatically.