ruby-vpi 18.0.1 → 18.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/doc/history.html +64 -41
- data/doc/history.inc +7 -1
- data/doc/history.yaml +14 -0
- data/doc/manual.html +129 -129
- data/doc/memo.html +4 -4
- data/doc/readme.html +11 -11
- data/doc/rss.erb +1 -2
- data/doc/rss.xml +7 -252
- data/lib/ruby-vpi/runner_boot_loader.rb +1 -1
- data/ref/c/annotated.html +1 -1
- data/ref/c/common_8h.html +1 -1
- data/ref/c/files.html +1 -1
- data/ref/c/functions.html +1 -1
- data/ref/c/functions_vars.html +1 -1
- data/ref/c/globals.html +1 -1
- data/ref/c/globals_0x63.html +1 -1
- data/ref/c/globals_0x65.html +1 -1
- data/ref/c/globals_0x66.html +1 -1
- data/ref/c/globals_0x6d.html +1 -1
- data/ref/c/globals_0x70.html +1 -1
- data/ref/c/globals_0x72.html +1 -1
- data/ref/c/globals_0x73.html +1 -1
- data/ref/c/globals_0x74.html +1 -1
- data/ref/c/globals_0x76.html +1 -1
- data/ref/c/globals_0x78.html +1 -1
- data/ref/c/globals_defs.html +1 -1
- data/ref/c/globals_defs_0x65.html +1 -1
- data/ref/c/globals_defs_0x70.html +1 -1
- data/ref/c/globals_defs_0x76.html +1 -1
- data/ref/c/globals_defs_0x78.html +1 -1
- data/ref/c/globals_enum.html +1 -1
- data/ref/c/globals_eval.html +1 -1
- data/ref/c/globals_func.html +1 -1
- data/ref/c/globals_type.html +1 -1
- data/ref/c/globals_vars.html +1 -1
- data/ref/c/index.html +1 -1
- data/ref/c/main_8c.html +1 -1
- data/ref/c/main_8h.html +1 -1
- data/ref/c/relay_8c.html +1 -1
- data/ref/c/relay_8h.html +1 -1
- data/ref/c/structt__cb__data.html +1 -1
- data/ref/c/structt__vpi__delay.html +1 -1
- data/ref/c/structt__vpi__error__info.html +1 -1
- data/ref/c/structt__vpi__strengthval.html +1 -1
- data/ref/c/structt__vpi__systf__data.html +1 -1
- data/ref/c/structt__vpi__time.html +1 -1
- data/ref/c/structt__vpi__value.html +1 -1
- data/ref/c/structt__vpi__vecval.html +1 -1
- data/ref/c/structt__vpi__vlog__info.html +1 -1
- data/ref/c/verilog_8h.html +1 -1
- data/ref/c/vlog_8c.html +1 -1
- data/ref/c/vlog_8h.html +1 -1
- data/ref/c/vpi__user_8h.html +1 -1
- data/ref/ruby/created.rid +1 -1
- data/ref/ruby/files/lib/ruby-vpi/runner_boot_loader_rb.html +1 -1
- metadata +2 -2
data/doc/memo.html
CHANGED
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
|
|
26
26
|
<div id="Pending_tasks" class="section">
|
|
27
27
|
<h1 class="title">
|
|
28
|
-
<a href="#a-
|
|
28
|
+
<a href="#a-607418218">1</a>
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
|
|
71
71
|
<div id="Finished_tasks" class="section">
|
|
72
72
|
<h1 class="title">
|
|
73
|
-
<a href="#a-
|
|
73
|
+
<a href="#a-607422868">2</a>
|
|
74
74
|
|
|
75
75
|
|
|
76
76
|
|
|
@@ -160,7 +160,7 @@
|
|
|
160
160
|
|
|
161
161
|
<div id="Obsolete_tasks" class="section">
|
|
162
162
|
<h1 class="title">
|
|
163
|
-
<a href="#a-
|
|
163
|
+
<a href="#a-607428258">3</a>
|
|
164
164
|
|
|
165
165
|
|
|
166
166
|
|
|
@@ -199,7 +199,7 @@
|
|
|
199
199
|
<hr style="display: none"/>
|
|
200
200
|
<div id="toc">
|
|
201
201
|
<h1 id="toc:contents">Contents</h1>
|
|
202
|
-
<ul><li><span class="hide">1 </span><a id="a-
|
|
202
|
+
<ul><li><span class="hide">1 </span><a id="a-607418218" href="#Pending_tasks">Pending tasks</a></li><li><span class="hide">2 </span><a id="a-607422868" href="#Finished_tasks">Finished tasks</a></li><li><span class="hide">3 </span><a id="a-607428258" href="#Obsolete_tasks">Obsolete tasks</a></li></ul>
|
|
203
203
|
|
|
204
204
|
</div>
|
|
205
205
|
</body>
|
data/doc/readme.html
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
</div>
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
<div id="body"><div style="float: right">Version 18.0.
|
|
20
|
+
<div id="body"><div style="float: right">Version 18.0.2</div>
|
|
21
21
|
<h1 style="padding-top: 0">Ruby-VPI</h1>
|
|
22
22
|
|
|
23
23
|
<p><a href="http://www.ruby-lang.org"><img src="images/ruby/logo-reflection.png" alt="Logo of the Ruby programming language" style="margin: 0; margin-left: 2em; margin-bottom: 1em; float: right"/></a></p>
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
|
|
43
43
|
<div id="resources" class="section">
|
|
44
44
|
<h1 class="title">
|
|
45
|
-
<a href="#a-
|
|
45
|
+
<a href="#a-607228958">1</a>
|
|
46
46
|
|
|
47
47
|
|
|
48
48
|
|
|
@@ -53,8 +53,8 @@
|
|
|
53
53
|
<div id="Records" class="paragraph">
|
|
54
54
|
<p class="title">Records</p>
|
|
55
55
|
<ul>
|
|
56
|
-
<li><a href="history.html#a18.0.
|
|
57
|
-
– release notes for version 18.0.
|
|
56
|
+
<li><a href="history.html#a18.0.2">What’s new</a>
|
|
57
|
+
– release notes for version 18.0.2.
|
|
58
58
|
<ul>
|
|
59
59
|
<li><a href="history.html">History</a>
|
|
60
60
|
– a record of all release notes.</li>
|
|
@@ -122,7 +122,7 @@
|
|
|
122
122
|
|
|
123
123
|
<div id="intro.features" class="section">
|
|
124
124
|
<h1 class="title">
|
|
125
|
-
<a href="#a-
|
|
125
|
+
<a href="#a-607249798">2</a>
|
|
126
126
|
|
|
127
127
|
|
|
128
128
|
|
|
@@ -193,7 +193,7 @@
|
|
|
193
193
|
|
|
194
194
|
<div id="intro.reqs" class="section">
|
|
195
195
|
<h1 class="title">
|
|
196
|
-
<a href="#a-
|
|
196
|
+
<a href="#a-607272338">3</a>
|
|
197
197
|
|
|
198
198
|
|
|
199
199
|
|
|
@@ -291,7 +291,7 @@
|
|
|
291
291
|
|
|
292
292
|
<div id="intro.applications" class="section">
|
|
293
293
|
<h1 class="title">
|
|
294
|
-
<a href="#a-
|
|
294
|
+
<a href="#a-607276548">4</a>
|
|
295
295
|
|
|
296
296
|
|
|
297
297
|
|
|
@@ -337,7 +337,7 @@
|
|
|
337
337
|
|
|
338
338
|
<div id="intro.appetizers" class="section">
|
|
339
339
|
<h1 class="title">
|
|
340
|
-
<a href="#a-
|
|
340
|
+
<a href="#a-607279658">5</a>
|
|
341
341
|
|
|
342
342
|
|
|
343
343
|
|
|
@@ -405,7 +405,7 @@
|
|
|
405
405
|
|
|
406
406
|
<div id="intro.license" class="section">
|
|
407
407
|
<h1 class="title">
|
|
408
|
-
<a href="#a-
|
|
408
|
+
<a href="#a-607284018">6</a>
|
|
409
409
|
|
|
410
410
|
|
|
411
411
|
|
|
@@ -451,7 +451,7 @@ IMPLIED, INCLUDING <span class="caps">BUT NOT LIMITED TO THE WARRANTIES OF MERCH
|
|
|
451
451
|
|
|
452
452
|
<div id="intro.related-works" class="section">
|
|
453
453
|
<h1 class="title">
|
|
454
|
-
<a href="#a-
|
|
454
|
+
<a href="#a-607290678">7</a>
|
|
455
455
|
|
|
456
456
|
|
|
457
457
|
|
|
@@ -472,7 +472,7 @@ IMPLIED, INCLUDING <span class="caps">BUT NOT LIMITED TO THE WARRANTIES OF MERCH
|
|
|
472
472
|
|
|
473
473
|
<div id="intro.related-works.pli" class="section">
|
|
474
474
|
<h2 class="title">
|
|
475
|
-
<a href="#a-
|
|
475
|
+
<a href="#a-607287248">7.1</a>
|
|
476
476
|
|
|
477
477
|
|
|
478
478
|
|
data/doc/rss.erb
CHANGED
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
|
|
4
4
|
require 'history'
|
|
5
5
|
require 'date'
|
|
6
|
-
require 'time'
|
|
7
6
|
%>
|
|
8
7
|
<?xml version="1.0" encoding="utf-8"?>
|
|
9
8
|
<rss version="2.0">
|
|
@@ -12,7 +11,7 @@
|
|
|
12
11
|
<link><%= PROJECT_URL %></link>
|
|
13
12
|
<description><%= PROJECT_DETAIL %></description>
|
|
14
13
|
<%
|
|
15
|
-
@history[0,
|
|
14
|
+
@history[0,1].each do |entry|
|
|
16
15
|
link = HISTORY_URL + '#' + entry['Version'].to_html_anchor
|
|
17
16
|
|
|
18
17
|
stamp = Time.parse entry['Date'].to_s
|
data/doc/rss.xml
CHANGED
|
@@ -5,266 +5,21 @@
|
|
|
5
5
|
<link>http://ruby-vpi.rubyforge.org</link>
|
|
6
6
|
<description>Ruby-VPI is a Ruby interface to IEEE 1364-2005 Verilog VPI and a platform for unit testing, rapid prototyping, and systems integration of Verilog modules through Ruby. It lets you create complex Verilog test benches easily and wholly in Ruby.</description>
|
|
7
7
|
<item>
|
|
8
|
-
<title>Version 18.0.
|
|
9
|
-
<link>http://ruby-vpi.rubyforge.org/doc/history.html#a18.0.
|
|
10
|
-
<guid>http://ruby-vpi.rubyforge.org/doc/history.html#a18.0.
|
|
11
|
-
<description><h1 id="18.0.
|
|
8
|
+
<title>Version 18.0.2 released</title>
|
|
9
|
+
<link>http://ruby-vpi.rubyforge.org/doc/history.html#a18.0.2</link>
|
|
10
|
+
<guid>http://ruby-vpi.rubyforge.org/doc/history.html#a18.0.2</guid>
|
|
11
|
+
<description><h1 id="18.0.2">Version 18.0.2 (2007-08-03)</h1>
|
|
12
12
|
|
|
13
|
-
<p>This release fixes
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
<h2>Thanks</h2>
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
<ul>
|
|
20
|
-
<li>Calvin Wong reported the bugs listed in the Repairs section.</li>
|
|
21
|
-
</ul>
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
<h2>Repairs</h2>
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
<ul>
|
|
28
|
-
<li>VCS does not acknowledge passage of time when cbReadWriteSynch callback is used, so I reverted back to using the cbAfterDelay callback (as was done in version 17.0.0).</li>
|
|
29
|
-
</ul>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
<ul>
|
|
33
|
-
<li>Ruby-VPI did not give control back to the Verilog simulator before it exited. As a result, the Verilog simulator did not have a chance to do any clean up or finish any pending tasks that remained in the simulation.</li>
|
|
34
|
-
</ul></description>
|
|
35
|
-
<pubDate>Thu, 02 Aug 2007 00:00:00 PDT</pubDate>
|
|
36
|
-
</item>
|
|
37
|
-
<item>
|
|
38
|
-
<title>Version 18.0.0 released</title>
|
|
39
|
-
<link>http://ruby-vpi.rubyforge.org/doc/history.html#a18.0.0</link>
|
|
40
|
-
<guid>http://ruby-vpi.rubyforge.org/doc/history.html#a18.0.0</guid>
|
|
41
|
-
<description><h1 id="18.0.0">Version 18.0.0 (2007-07-31)</h1>
|
|
42
|
-
|
|
43
|
-
<p>This release restores support for Synopsys VCS and Cadence NC-Sim, improves portability and performance, and enhances the VPI abstraction layer.</p>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
<h2>Thanks</h2>
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
<ul>
|
|
50
|
-
<li>Calvin Wong discovered <a href="http://rubyforge.org/forum/message.php?msg_id=25691">how to bypass the following error</a> emitted by Synopsys VCS when loading the Ruby-VPI shared object file.
|
|
51
|
-
|
|
52
|
-
<pre>
|
|
53
|
-
Could not open library specified in -load option obj/vcs
|
|
54
|
-
obj/vcs: undefined symbol: vpi_put_data
|
|
55
|
-
</pre></li>
|
|
56
|
-
</ul>
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
<h2>Caution</h2>
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
<ul>
|
|
63
|
-
<li><a href="http://www.swig.org/">SWIG</a> is now required in order to compile and install Ruby-VPI.</li>
|
|
64
|
-
</ul>
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
<ul>
|
|
68
|
-
<li><code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.put_value</code> no longer checks whether the value written matches the value read back after writing because that only works when there is no VPI delay associated with the write.</li>
|
|
69
|
-
</ul>
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
<ul>
|
|
73
|
-
<li>When <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.put_value</code> is used to write a value to a wire (VpiNet), it now <em>forces</em> the value. This is done to ensure portability:
|
|
74
|
-
|
|
75
|
-
<p>Synopsys VCS and Cadence NC-Sim forget the value written to a wire during the next simulation time step, whereas Mentor Modelsim and GPL Cver remember the value (thereby treating wires as registers).</p>
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
<p>Note that you have to release a forced value (using <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.release_value</code>) on a wire after writing to the wire if you want the design under test have the ability to update the value of the wire later on:</p>
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
<pre class="code">
|
|
82
|
-
your_wire.intVal = <span style="color:#00D; font-weight:bold">15</span>
|
|
83
|
-
your_wire.release_value
|
|
84
|
-
advance_time <span style="color:#888"># let the Verilog DUT modify your_wire</span>
|
|
85
|
-
</pre>
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
<p>In addition, you can check if a wire has a forced value using the <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.value_forced?</code> method.</p></li>
|
|
89
|
-
</ul>
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
<ul>
|
|
93
|
-
<li>If the format is not specified, <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.get_value</code> now assumes that you want to read the value in VpiIntVal format (because this is the most common case).</li>
|
|
94
|
-
</ul>
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
<ul>
|
|
98
|
-
<li>The definition of &#8220;Derivatives&#8221; has been reworded for clarity in the <a href="readme.html#intro.license">project license</a>.</li>
|
|
99
|
-
</ul>
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
<h2>Repairs</h2>
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
<ul>
|
|
106
|
-
<li>Synopsys VCS and Cadence NC-Sim simulators now correctly load Ruby-VPI. Also, the 64-bit versions of these simulators are now supported.</li>
|
|
107
|
-
</ul>
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
<h2>Improvements</h2>
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
<ul>
|
|
114
|
-
<li>Added &#8220;force_value&#8221;, &#8220;release_value&#8221;, and &#8220;value_forced?&#8221; methods to the <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span></code> class.</li>
|
|
115
|
-
</ul>
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
<ul>
|
|
119
|
-
<li><code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.put_value</code> now tries to automatically detect the format of the value to be written. As a result, you can now write <code class="code">your_handle.put_value <span style="color:#00D; font-weight:bold">35</span></code> in lieu of writing <code class="code">your_handle.intVal = <span style="color:#00D; font-weight:bold">35</span></code>.</li>
|
|
120
|
-
</ul>
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
<ul>
|
|
124
|
-
<li><code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.inspect</code> now shows the hexStrVal of the handle (because it is a common case to want to see a handle&#8217;s logic value along with its other information).</li>
|
|
125
|
-
</ul>
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
<ul>
|
|
129
|
-
<li>Added method caching (memoizing) for VPI property accesses on handles.</li>
|
|
130
|
-
</ul></description>
|
|
131
|
-
<pubDate>Tue, 31 Jul 2007 00:00:00 PDT</pubDate>
|
|
132
|
-
</item>
|
|
133
|
-
<item>
|
|
134
|
-
<title>Version 17.0.0 released</title>
|
|
135
|
-
<link>http://ruby-vpi.rubyforge.org/doc/history.html#a17.0.0</link>
|
|
136
|
-
<guid>http://ruby-vpi.rubyforge.org/doc/history.html#a17.0.0</guid>
|
|
137
|
-
<description><h1 id="17.0.0">Version 17.0.0 (2007-07-22)</h1>
|
|
138
|
-
|
|
139
|
-
<p>This release makes the Ruby-VPI testing framework more lightweight by reducing the number of files and parameters involved.</p>
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
<h2>Caution</h2>
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
<ul>
|
|
146
|
-
<li>The <strong>generate_test.rb</strong> and <strong>convert.rb</strong> executables have been replaced by a single <strong>ruby-vpi</strong> executable to avoid name conflicts with other software. They are now accessed using the <pre>ruby-vpi generate</pre> and <pre>ruby-vpi convert</pre> commands respectively.</li>
|
|
147
|
-
</ul>
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
<ul>
|
|
151
|
-
<li>The <tt>--name</tt> parameter has been removed from the automated test generator. Similarly, you can no longer insert an arbitrary name in a test&#8217;s file names (see the <a href="manual.html#Do_not_rename_generated_files">user manual</a> for details).</li>
|
|
152
|
-
</ul>
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
<ul>
|
|
156
|
-
<li>The <code class="code"><span style="color:#036; font-weight:bold">DEBUG</span></code> environment variable, which controls wether the test runner starts the interactive debugger, has been renamed to <code class="code"><span style="color:#036; font-weight:bold">DEBUGGER</span></code>.</li>
|
|
157
|
-
</ul>
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
<ul>
|
|
161
|
-
<li>The <code class="code"><span style="color:#036; font-weight:bold">SIMULATOR_TARGET</span></code> and <code class="code"><span style="color:#036; font-weight:bold">SIMULATOR_INCLUDES</span></code> parameters have been eliminated from test runners. The former is detected automatically. As for the latter, you can specify paths to directories in the <code class="code"><span style="color:#036; font-weight:bold">SIMULATOR_SOURCES</span></code> parameter instead.</li>
|
|
162
|
-
</ul>
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
<ul>
|
|
166
|
-
<li>The <tt>bench.rb</tt> and <tt>bench.v</tt> files of a generated test are (1) no longer generated by the test generator and (2) are now ignored. You must move the functionality provided by these files into <tt>design.rb</tt> and your Verilog module&#8217;s source file respectively.</li>
|
|
167
|
-
</ul>
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
<ul>
|
|
171
|
-
<li>The <tt>design.rb</tt> and <tt>proto.rb</tt> files are now loaded into a separate namespace (Ruby module). For example, if the Verilog module under test has the name &#8220;counter&#8221; and the <tt>design.rb</tt> file defines a class named &#8220;Foo&#8221;, then that class will be accessible as &#8220;Counter::Foo&#8221;.</li>
|
|
172
|
-
</ul>
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
<ul>
|
|
176
|
-
<li>The global <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::simulate</code> method has been replaced by the <code class="code">cycle!</code> method in the <tt>design.rb</tt> file.</li>
|
|
177
|
-
</ul>
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
<ul>
|
|
181
|
-
<li>The <code class="code">simulate!</code> method in the <tt>proto.rb</tt> file has been renamed to <code class="code">feign!</code> for accuracy.</li>
|
|
182
|
-
</ul>
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
<ul>
|
|
186
|
-
<li>The <code class="code"><span style="color:#036; font-weight:bold">RubyVpi</span></code> module has been renamed to <code class="code"><span style="color:#036; font-weight:bold">RubyVPI</span></code>.</li>
|
|
187
|
-
</ul>
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
<ul>
|
|
191
|
-
<li>RSpec &gt;= 1.0.0 is now required by Ruby-VPI.</li>
|
|
192
|
-
</ul>
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
<ul>
|
|
196
|
-
<li>The <a href="readme.html#intro.license">project license</a> has been further simplified.</li>
|
|
197
|
-
</ul>
|
|
13
|
+
<p>This release fixes a bug in error reporting.</p>
|
|
198
14
|
|
|
199
15
|
|
|
200
16
|
<h2>Repairs</h2>
|
|
201
17
|
|
|
202
18
|
|
|
203
19
|
<ul>
|
|
204
|
-
<li>
|
|
205
|
-
</ul>
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
<ul>
|
|
209
|
-
<li>The specification now begins to execute at simulation time 0. Previously it began at simulation time 1.</li>
|
|
210
|
-
</ul>
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
<h2>Improvements</h2>
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
<ul>
|
|
217
|
-
<li>The <tt>bench.rb</tt> and <tt>bench.v</tt> files of a generated test have been eliminated!
|
|
218
|
-
|
|
219
|
-
<p>One important benefit is that the Ruby interface to the Verilog module under test is now a direct reference, whereas previously it was an <em>indirect</em> reference (it pointed to the Verilog module defined in <tt>bench.v</tt>, which in turn wrapped around the actual Verilog module under test).</p>
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
<p>As a result, you can now access the internals of the Verilog module under test by simply calling methods on the Ruby interface, as you would naturally expect to be the case.</p></li>
|
|
223
|
-
</ul>
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
<ul>
|
|
227
|
-
<li>The &#8220;a&#8221; accessor, which returns an <em>array</em> of child handles, has been added to <a href="manual.html#tbl:accessors">the method naming format</a> for accessing child handles.</li>
|
|
228
|
-
</ul>
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
<ul>
|
|
232
|
-
<li>All parameter objects in the Verilog module under test are automatically made available as constants. For example, if the Verilog module under test has the name <code class="code">counter</code> and has a parameter object named <code class="code"><span style="color:#036; font-weight:bold">WIDTH</span></code>, then you can access the integer value of that parameter using <code class="code"><span style="color:#036; font-weight:bold">Counter</span>::<span style="color:#036; font-weight:bold">WIDTH</span></code>.</li>
|
|
233
|
-
</ul>
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
<ul>
|
|
237
|
-
<li>The automated test generator now tries to automatically detect the clock and reset signal from Verilog module declarations.</li>
|
|
238
|
-
</ul>
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
<ul>
|
|
242
|
-
<li>The automated test generator now supports Verilog 95 style module declarations.</li>
|
|
243
|
-
</ul>
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
<ul>
|
|
247
|
-
<li>Exceptions are now raised when you try to write to a read-only VPI property, such as <code class="code"><span style="color:#036; font-weight:bold">VpiName</span></code>.</li>
|
|
248
|
-
</ul>
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
<ul>
|
|
252
|
-
<li>Added <code class="code">high?</code>, <code class="code">high!</code>, <code class="code">low?</code>, and <code class="code">low!</code> methods to the <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span></code> class.</li>
|
|
253
|
-
</ul>
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
<ul>
|
|
257
|
-
<li>Revised the user manual by removing unnecessary sections and adding newer material from my master&#8217;s thesis.</li>
|
|
258
|
-
</ul>
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
<h2>Contributions</h2>
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
<ul>
|
|
265
|
-
<li>Added Jacinto Shy II&#8217;s <a href="http://jacintoshy.blogspot.com/2007/05/hacking-verilog-with-ruby-part-2.html">register file example</a> to Ruby-VPI. It can be found in <tt>samp/register_file/</tt>.</li>
|
|
20
|
+
<li>Unhandled Ruby exceptions and errors were not being printed to the screen because Ruby-VPI unconditionally gave control back to the Verilog simulator before it exited.</li>
|
|
266
21
|
</ul></description>
|
|
267
|
-
<pubDate>
|
|
22
|
+
<pubDate>Fri, 03 Aug 2007 00:00:00 PDT</pubDate>
|
|
268
23
|
</item>
|
|
269
24
|
</channel>
|
|
270
25
|
</rss>
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
# return control to the simulator before Ruby exits.
|
|
12
12
|
# otherwise, the simulator will not have a chance to do
|
|
13
13
|
# any clean up or finish any pending tasks that remain
|
|
14
|
-
at_exit {relay_verilog}
|
|
14
|
+
at_exit {relay_verilog unless $!}
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
require 'rubygems'
|
data/ref/c/annotated.html
CHANGED
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
<tr><td class="indexkey"><a class="el" href="structt__vpi__vecval.html">t_vpi_vecval</a></td><td class="indexvalue"></td></tr>
|
|
28
28
|
<tr><td class="indexkey"><a class="el" href="structt__vpi__vlog__info.html">t_vpi_vlog_info</a></td><td class="indexvalue"></td></tr>
|
|
29
29
|
</table>
|
|
30
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
30
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
31
31
|
<a href="http://www.doxygen.org/index.html">
|
|
32
32
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
33
33
|
</body>
|
data/ref/c/common_8h.html
CHANGED
|
@@ -140,7 +140,7 @@ Pass aroung this value instead of zero and non-zero integers. <dl compact><dt><b
|
|
|
140
140
|
|
|
141
141
|
</div>
|
|
142
142
|
</div><p>
|
|
143
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
143
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
144
144
|
<a href="http://www.doxygen.org/index.html">
|
|
145
145
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
146
146
|
</body>
|
data/ref/c/files.html
CHANGED
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
<tr><td class="indexkey"><a class="el" href="vlog_8h.html">vlog.h</a></td><td class="indexvalue">Interface between C and Verilog code </td></tr>
|
|
28
28
|
<tr><td class="indexkey"><a class="el" href="vpi__user_8h.html">vpi_user.h</a></td><td class="indexvalue"></td></tr>
|
|
29
29
|
</table>
|
|
30
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
30
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
31
31
|
<a href="http://www.doxygen.org/index.html">
|
|
32
32
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
33
33
|
</body>
|
data/ref/c/functions.html
CHANGED
|
@@ -175,7 +175,7 @@ Here is a list of all struct and union fields with links to the structures/union
|
|
|
175
175
|
<li>version
|
|
176
176
|
: <a class="el" href="structt__vpi__vlog__info.html#3ff076199159904aa9869e0fb1476bad">t_vpi_vlog_info</a>
|
|
177
177
|
</ul>
|
|
178
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
178
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
179
179
|
<a href="http://www.doxygen.org/index.html">
|
|
180
180
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
181
181
|
</body>
|
data/ref/c/functions_vars.html
CHANGED
|
@@ -175,7 +175,7 @@
|
|
|
175
175
|
<li>version
|
|
176
176
|
: <a class="el" href="structt__vpi__vlog__info.html#3ff076199159904aa9869e0fb1476bad">t_vpi_vlog_info</a>
|
|
177
177
|
</ul>
|
|
178
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
178
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
179
179
|
<a href="http://www.doxygen.org/index.html">
|
|
180
180
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
181
181
|
</body>
|
data/ref/c/globals.html
CHANGED
|
@@ -50,7 +50,7 @@ Here is a list of all functions, variables, defines, enums, and typedefs with li
|
|
|
50
50
|
<li>bool
|
|
51
51
|
: <a class="el" href="common_8h.html#f6a258d8f3ee5206d682d799316314b1">common.h</a>
|
|
52
52
|
</ul>
|
|
53
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
53
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
54
54
|
<a href="http://www.doxygen.org/index.html">
|
|
55
55
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
56
56
|
</body>
|
data/ref/c/globals_0x63.html
CHANGED
|
@@ -112,7 +112,7 @@ Here is a list of all functions, variables, defines, enums, and typedefs with li
|
|
|
112
112
|
<li>common_printf
|
|
113
113
|
: <a class="el" href="common_8h.html#a2ee406785247606fd3daddbed14cbaf">common.h</a>
|
|
114
114
|
</ul>
|
|
115
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
115
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
116
116
|
<a href="http://www.doxygen.org/index.html">
|
|
117
117
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
118
118
|
</body>
|
data/ref/c/globals_0x65.html
CHANGED
|
@@ -50,7 +50,7 @@ Here is a list of all functions, variables, defines, enums, and typedefs with li
|
|
|
50
50
|
<li>EETERN
|
|
51
51
|
: <a class="el" href="vpi__user_8h.html#17207c0c9000e05cf0c7bcde1c10293d">vpi_user.h</a>
|
|
52
52
|
</ul>
|
|
53
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
53
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
54
54
|
<a href="http://www.doxygen.org/index.html">
|
|
55
55
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
56
56
|
</body>
|
data/ref/c/globals_0x66.html
CHANGED
|
@@ -50,7 +50,7 @@ Here is a list of all functions, variables, defines, enums, and typedefs with li
|
|
|
50
50
|
<li>false
|
|
51
51
|
: <a class="el" href="common_8h.html#f6a258d8f3ee5206d682d799316314b1e9de385ef6fe9bf3360d1038396b884c">common.h</a>
|
|
52
52
|
</ul>
|
|
53
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
53
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
54
54
|
<a href="http://www.doxygen.org/index.html">
|
|
55
55
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
56
56
|
</body>
|
data/ref/c/globals_0x6d.html
CHANGED
|
@@ -57,7 +57,7 @@ Here is a list of all functions, variables, defines, enums, and typedefs with li
|
|
|
57
57
|
: <a class="el" href="main_8c.html#5744de41392bc2f3a3285c7203a77229">main.c</a>
|
|
58
58
|
, <a class="el" href="main_8h.html#5744de41392bc2f3a3285c7203a77229">main.h</a>
|
|
59
59
|
</ul>
|
|
60
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
60
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
61
61
|
<a href="http://www.doxygen.org/index.html">
|
|
62
62
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
63
63
|
</body>
|
data/ref/c/globals_0x70.html
CHANGED
|
@@ -82,7 +82,7 @@ Here is a list of all functions, variables, defines, enums, and typedefs with li
|
|
|
82
82
|
<li>PROTO_PARAMS()
|
|
83
83
|
: <a class="el" href="vpi__user_8h.html#7db22f87fed5d61de6ce0279828a06a8">vpi_user.h</a>
|
|
84
84
|
</ul>
|
|
85
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
85
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
86
86
|
<a href="http://www.doxygen.org/index.html">
|
|
87
87
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
88
88
|
</body>
|
data/ref/c/globals_0x72.html
CHANGED
|
@@ -65,7 +65,7 @@ Here is a list of all functions, variables, defines, enums, and typedefs with li
|
|
|
65
65
|
: <a class="el" href="relay_8h.html#c1a02ebdb76a321bac689ac9b30f0422">relay.h</a>
|
|
66
66
|
, <a class="el" href="relay_8c.html#c1a02ebdb76a321bac689ac9b30f0422">relay.c</a>
|
|
67
67
|
</ul>
|
|
68
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
68
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
69
69
|
<a href="http://www.doxygen.org/index.html">
|
|
70
70
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
71
71
|
</body>
|
data/ref/c/globals_0x73.html
CHANGED
|
@@ -66,7 +66,7 @@ Here is a list of all functions, variables, defines, enums, and typedefs with li
|
|
|
66
66
|
<li>s_vpi_vlog_info
|
|
67
67
|
: <a class="el" href="vpi__user_8h.html#4d989aa964a0d69d3e1da525725573c8">vpi_user.h</a>
|
|
68
68
|
</ul>
|
|
69
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
69
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
70
70
|
<a href="http://www.doxygen.org/index.html">
|
|
71
71
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
72
72
|
</body>
|
data/ref/c/globals_0x74.html
CHANGED
|
@@ -50,7 +50,7 @@ Here is a list of all functions, variables, defines, enums, and typedefs with li
|
|
|
50
50
|
<li>true
|
|
51
51
|
: <a class="el" href="common_8h.html#f6a258d8f3ee5206d682d799316314b108f175a5505a10b9ed657defeb050e4b">common.h</a>
|
|
52
52
|
</ul>
|
|
53
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
53
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
54
54
|
<a href="http://www.doxygen.org/index.html">
|
|
55
55
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
56
56
|
</body>
|
data/ref/c/globals_0x76.html
CHANGED
|
@@ -896,7 +896,7 @@ Here is a list of all functions, variables, defines, enums, and typedefs with li
|
|
|
896
896
|
<li>vpiZ
|
|
897
897
|
: <a class="el" href="vpi__user_8h.html#926969d440ea7547404cbac67367fe5f">vpi_user.h</a>
|
|
898
898
|
</ul>
|
|
899
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
899
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
900
900
|
<a href="http://www.doxygen.org/index.html">
|
|
901
901
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
902
902
|
</body>
|
data/ref/c/globals_0x78.html
CHANGED
|
@@ -50,7 +50,7 @@ Here is a list of all functions, variables, defines, enums, and typedefs with li
|
|
|
50
50
|
<li>XXTERN
|
|
51
51
|
: <a class="el" href="vpi__user_8h.html#d3973263496fbe347baaf726dac775c5">vpi_user.h</a>
|
|
52
52
|
</ul>
|
|
53
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
53
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
54
54
|
<a href="http://www.doxygen.org/index.html">
|
|
55
55
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
56
56
|
</body>
|
data/ref/c/globals_defs.html
CHANGED
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
<li>common_printf
|
|
107
107
|
: <a class="el" href="common_8h.html#a2ee406785247606fd3daddbed14cbaf">common.h</a>
|
|
108
108
|
</ul>
|
|
109
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
109
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
110
110
|
<a href="http://www.doxygen.org/index.html">
|
|
111
111
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
112
112
|
</body>
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
<li>EETERN
|
|
45
45
|
: <a class="el" href="vpi__user_8h.html#17207c0c9000e05cf0c7bcde1c10293d">vpi_user.h</a>
|
|
46
46
|
</ul>
|
|
47
|
-
<hr size="1"><address style="align: right;"><small>Generated on
|
|
47
|
+
<hr size="1"><address style="align: right;"><small>Generated on Fri Aug 3 23:04:20 2007 for Ruby-VPI by
|
|
48
48
|
<a href="http://www.doxygen.org/index.html">
|
|
49
49
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
|
|
50
50
|
</body>
|