OpenCores
URL https://opencores.org/ocsvn/socgen/socgen/trunk

Subversion Repositories socgen

[/] [socgen/] [trunk/] [doc/] [src/] [guides/] [guide_verification.html] - Diff between revs 28 and 94

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 28 Rev 94
Line 18... Line 18...
</h2>
</h2>
<h2><a name="manifesto"></a>Verification Guidelines</h2>
<h2><a name="manifesto"></a>Verification Guidelines</h2>
<p><br>
<p><br>
<br>
<br>
</p>
</p>
<p>Verification is the art of stimulating&nbsp; a component&nbsp;
<p>Verification is the process of stimulating&nbsp; a component&nbsp;
module and checking that it produces the correct outputs. Stimulations
module and checking that it produces the correct outputs. Stimulations
are designed to
are designed to
ensure that all of the components functions are exercised and any
ensure that all of the components functions are exercised and any
deviation from the expected behaviour&nbsp; is reported as an error.
deviation from the expected behaviour&nbsp; is reported as an error.
Every
Every
Line 164... Line 164...
  <li><big>Message&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  <li><big>Message&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 
 
 
 
 
 
 
 
 
 
    </big><br>
    </big><br>
  </li>
  </li>
</ul>
</ul>
<br style="font-family: serif;">
<br style="font-family: serif;">
<br style="font-family: serif;">
<br style="font-family: serif;">
Line 182... Line 183...
 style="font-family: serif;"><br>
 style="font-family: serif;"><br>
<br>
<br>
<br>
<br>
&nbsp;<span style="font-family: serif;"> </span></code><span
&nbsp;<span style="font-family: serif;"> </span></code><span
 style="font-family: serif;"><code><span style="font-family: serif;">Do
 style="font-family: serif;"><code><span style="font-family: serif;">Do
not interweave threads in the test_define blocks. Each block should
not interweave threads in the test_define blocks. Each fork/join block
 
should
only access a single BFM.</span><br style="font-family: serif;">
only access a single BFM.</span><br style="font-family: serif;">
<br style="font-family: serif;">
<br style="font-family: serif;">
<br style="font-family: serif;">
<br style="font-family: serif;">
<span style="font-family: serif;">&nbsp; Plan on designs where you will
<span style="font-family: serif;">&nbsp; Plan on designs where you will
need to test multiple instances of a component</span><br
need to test multiple instances of a component</span><br
Line 247... Line 249...
</p>
</p>
<big><code>
<big><code>
./sim<br>
./sim<br>
&nbsp; +/bin<br>
&nbsp; +/bin<br>
&nbsp;&nbsp; &nbsp;&nbsp; Makefile<br>
&nbsp;&nbsp; &nbsp;&nbsp; Makefile<br>
&nbsp; +/bench<br>
 
&nbsp;&nbsp; &nbsp;&nbsp; +verilog<br>
 
&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; TestBench<br>
 
&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; +models<br>
 
&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; model1<br>
 
&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; model2<br>
 
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; .<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; .<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; .<br>
 
&nbsp; +/lib<br>
&nbsp; +/lib<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; +lib_part1<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; +lib_part1<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lib_part(s).v<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lib_part(s).v<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; +lib_part2<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; +lib_part2<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
</code><code>&nbsp; +/run</code><br>
</code><code>&nbsp; +/run</code><br>
<code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; +test_case1<br>
<code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; +/test_case1<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; filelist<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dmp_define<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dmp_define<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; modellist<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dut<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; test_define<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; test_define<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; liblist<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; +/test_case2<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TB.defs<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; +test_case2<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp; +/log<br>
&nbsp; +/xml<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; test_case1.log<br>
&nbsp;</code><code>&nbsp;&nbsp;&nbsp;&nbsp; test_case1.xml<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; test_case2.log<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; test_case2.xml<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
 
&nbsp; +/out<br>
 
&nbsp;</code><code>&nbsp;&nbsp;&nbsp;&nbsp; test_case1.vcd<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; test_case2.vcd<br>
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .</code><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .</code><br>
</big>
</big>
<code><ouabache design="" works=""><big><br>
<code><ouabache design="" works=""><br>
<br>
 
<br>
 
</big>
 
<br>
 
</ouabache></code>
</ouabache></code>
<p>Each component will have a ./sim directory for the test suite.
<p>Each component will have a ./sim directory for the test suite.
Typing:<br>
Typing:<br>
</p>
</p>
<p><big><big><br>
<p><big><big><br>
Line 499... Line 476...
`include
`include
"../../../../../children/logic/ip/ps2_interface/rtl/gen/sim/ps2_interface.v"<br>
"../../../../../children/logic/ip/ps2_interface/rtl/gen/sim/ps2_interface.v"<br>
`include "../../../../../children/logic/ip/uart/rtl/gen/sim/uart.v"<br>
`include "../../../../../children/logic/ip/uart/rtl/gen/sim/uart.v"<br>
</p>
</p>
<code style="font-family: monospace;"></code>
<code style="font-family: monospace;"></code>
<span style="font-family: monospace;">--------------------------------------------------------------------------------------------------------------------------------------</span>
<span style="font-family: monospace;">-------------------------------------------------------------------------------------------------------------------------------------</span>
<p><br>
<p></p>
</p>
 
<p>The filelist uses `include statements to load all the rtl files into
 
the simulation.The paths are&nbsp; relative from the test_case run
 
directory. Note that all the verilog files have been post-processed and
 
search directories or include directories are not needed.
 
</p>
 
<p><br>
<p><br>
</p>
</p>
<h2><a name="manifesto"></a>liblist</h2>
<h2><a name="manifesto"></a>liblist</h2>
<p><span style="font-family: monospace;">--------------------------------------------------------------------------------------------------------------------------------------</span>
<p><span style="font-family: monospace;">--------------------------------------------------------------------------------------------------------------------------------------</span>
</p>
</p>
Line 1304... Line 1275...
<br>
<br>
</p>
</p>
<p><br>
<p><br>
<br>
<br>
</p>
</p>
<p><br>
<p></p>
<br>
<p></p>
</p>
 
<p><br>
 
<br>
 
</p>
 
<p><br>
 
</p>
 
<p><br>
 
</p>
 
<p><br>
 
</p>
 
<p>This is a test<br>
 
</p>
 
<p><br>
<p><br>
&nbsp;<br>
&nbsp;<br>
</p>
</p>
<p><br>
<p><br>
<br>
<br>

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.