doc/readme.html in ruby-vpi-13.0.0 vs doc/readme.html in ruby-vpi-14.0.0
- old
+ new
@@ -7,10 +7,13 @@
<title>Welcome to Ruby-VPI</title>
</head>
<body>
<div id="navigation">
+ <p><a type="application/rss+xml" href="http://ruby-vpi.rubyforge.org/doc/rss.xml"><img src="images/feed-icon.png" title="RSS feed for this project." alt="RSS feed for this project." /></a></p>
+
+
<ul>
<li><a href="manual.html#usage.tutorial">Tutorial</a>
– learn how to use Ruby-VPI quickly.</li>
</ul>
@@ -69,35 +72,38 @@
</ul>
</div>
- <h1 id="anchor113">Welcome to Ruby-VPI
-<a type="application/rss+xml" href="http://ruby-vpi.rubyforge.org/doc/rss.xml"><img src="images/feed-icon.png" title="RSS feed for this project." alt="RSS feed for this project." /></a></h1>
+ <h1 id="anchor122">1 Welcome to Ruby-VPI</h1>
- <blockquote>
- <p>Ruby-VPI is a <a href="http://www.ruby-lang.org">Ruby</a> interface to <a href="http://ieeexplore.ieee.org/xpl/standardstoc.jsp?isnumber=33945">Verilog <span class="caps">VPI</span></a>. It lets you create complex Verilog test benches easily and wholly in Ruby.</p>
- </blockquote>
+ <p>Ruby-VPI is a <a href="http://www.ruby-lang.org">Ruby</a> interface to <a href="http://ieeexplore.ieee.org/xpl/standardstoc.jsp?isnumber=33945"><span class="caps">IEEE 1364</span>-2005 Verilog <span class="caps">VPI</span></a>. It lets you create complex Verilog test benches easily and wholly in Ruby.</p>
- <h2 id="intro.features">Features</h2>
+ <h2 id="intro.features">1.1 Features</h2>
+ <h3 id="anchor123">1.1.1 Portable</h3>
+
+
<ul>
<li>Supports the <em>entire</em> <a href=":http://ieeexplore.ieee.org/xpl/standardstoc.jsp?isnumber=33945"><span class="caps">IEEE</span> Std 1364-2005</a> VPI standard.</li>
</ul>
<ul>
<li>Works with all <a href="manual.html#setup.reqs">major Verilog simulators</a> available today.
<ul>
- <li>Compile <em>once</em> (during <a href="manual.html#setup.installation">installation</a>) and use forever!</li>
+ <li>Compiled <em>just once</em> during <a href="manual.html#setup.installation">installation</a> and used forever!</li>
</ul></li>
</ul>
+ <h3 id="anchor124">1.1.2 Agile</h3>
+
+
<ul>
<li>Enables <a href="http://agilemanifesto.org/">agile practices</a> such as
<ul>
<li><a href="http://www.testdriven.com">test-driven</a> development</li>
<li><a href="http://behaviour-driven.org">behavior-driven</a> development</li>
@@ -107,18 +113,22 @@
<ul>
<li>Eliminates unneccesary work:
<ul>
- <li><a href="manual.html#usage.tutorial.specification">Specifications</a> are <em>readable</em>, portable, and executable.</li>
+ <li><a href="manual.html#usage.tutorial.specification">Specifications</a> are readable, portable, and <em>executable</em>.</li>
<li>The <a href="manual.html#usage.tools.generate-test">automated test generator</a> helps you accomodate design changes with <em>minimal</em> effort.</li>
+ <li>There is absolutely <em>no compiling</em>!</li>
</ul></li>
</ul>
+ <h3 id="anchor125">1.1.3 Powerful</h3>
+
+
<ul>
- <li>Utilizes the <a href="http://www.ruby-lang.org/en/about/">power and elegance</a> of Ruby:
+ <li>Inherits the <a href="http://www.ruby-lang.org/en/about/">power and elegance</a> of Ruby:
<ul>
<li>Unlimited length integers</li>
<li>Regular expressions</li>
<li>Multi-threading</li>
<li>System calls and I/O</li>
@@ -126,32 +136,58 @@
</ul></li>
</ul>
<ul>
+ <li>Uses <a href="http://rubyforge.org/projects/ruby-debug/">ruby-debug</a> for <a href="manual.html#usage.debugger">interactive debugging</a>.</li>
+ <li>Uses <a href="http://eigenclass.org/hiki.rb?rcov">rcov</a> for test <a href="manual.html#usage.test-runner.env-vars">coverage analysis and report generation</a>.</li>
+ </ul>
+
+
+ <h3 id="anchor126">1.1.4 Free</h3>
+
+
+ <ul>
<li>Gives you the <em>freedom</em> to study, modify, and distribute this software, in accordance with the <a href="http://www.gnu.org/copyleft/gpl.html"><span class="caps">GNU</span> General Public License</a>.</li>
</ul>
- <h3 id="intro.applications">Applications</h3>
+ <h2 id="intro.applications">1.2 Applications</h2>
- <p>Here is a modest sampling of tasks, paraphrased from <a href="http://embedded.eecs.berkeley.edu/Alumni/pinhong/scriptEDA/">Pin Hong</a>, that Ruby-VPI can be used to perform.</p>
+ <p>Here is a modest sampling of tasks that Ruby-VPI can be used to perform.</p>
<ul>
+ <li>From the second edition of <a href="http://www.sutherland-hdl.com/publications.html"><em>The Verilog <span class="caps">PLI</span> Handbook</em></a>:
+ <ul>
+ <li>C language bus-functional models</li>
+ <li>Reading test vector files</li>
+ <li>Delay calculation</li>
+ <li>Custom output displays</li>
+ <li>Co-simulation</li>
+ <li>Design debug utilities</li>
+ <li>Simulation analysis</li>
+ </ul></li>
+ </ul>
+
+
+ <ul>
+ <li>Adapted from <a href="http://embedded.eecs.berkeley.edu/Alumni/pinhong/scriptEDA/">Pin Hong’s</a> observations:
+ <ul>
<li>Writing hardware models in Ruby</li>
- <li>Dumping/processing netlist data from Verilog database</li>
- <li>Dumping/processing simulation data</li>
+ <li>Dumping or processing netlist data from Verilog database</li>
+ <li>Dumping or processing simulation data</li>
<li>Feeding dynamic simulation stimuli</li>
<li>Back-annotating delay information</li>
<li>Interactive logic simulation</li>
<li>Building a distributed simulation</li>
+ </ul></li>
</ul>
- <h3 id="intro.appetizers">Appetizers</h3>
+ <h2 id="intro.appetizers">1.3 Appetizers</h2>
<p>Here is a modest sampling of code to whet your appetite.</p>
@@ -189,9 +225,9 @@
<li>Simulate fifteen clock cycles:</li>
</ul>
<blockquote>
- <p><code class="code"><span style="color:#00D; font-weight:bold">15</span>.times { relay_verilog }</code></p>
+ <p><code class="code"><span style="color:#00D; font-weight:bold">15</span>.times { simulate }</code></p>
</blockquote>
</body>
</html>