ruby-vpi 15.0.2 → 16.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (208) hide show
  1. data/LICENSE +23 -340
  2. data/Rakefile +169 -192
  3. data/bin/generate_test.rb +26 -25
  4. data/bin/generate_test_tpl/runner.rake +4 -10
  5. data/bin/header_to_ruby.rb +3 -20
  6. data/doc/README +11 -0
  7. data/doc/Rakefile +8 -21
  8. data/doc/common.css +44 -10
  9. data/doc/common.tpl +5 -10
  10. data/doc/history.doc +8 -7
  11. data/doc/history.html +228 -560
  12. data/doc/history.rb +7 -11
  13. data/doc/{history.yml → history.yaml} +325 -128
  14. data/doc/images/{feed-icon.png → feed-icon-28x28.png} +0 -0
  15. data/doc/images/ruby/LICENSE +15 -0
  16. data/doc/images/ruby/logo-reflection.png +0 -0
  17. data/doc/images/ruby/logo-reflection.xcf +0 -0
  18. data/doc/images/ruby/logo.png +0 -0
  19. data/doc/images/{LICENSE → tango/LICENSE} +0 -0
  20. data/doc/images/{caution.png → tango/caution.png} +0 -0
  21. data/doc/images/{caution.svg → tango/caution.svg} +0 -0
  22. data/doc/images/{home.png → tango/home.png} +0 -0
  23. data/doc/images/{home.svg → tango/home.svg} +0 -0
  24. data/doc/images/{important.png → tango/important.png} +0 -0
  25. data/doc/images/{important.svg → tango/important.svg} +0 -0
  26. data/doc/images/{next.png → tango/next.png} +0 -0
  27. data/doc/images/{next.svg → tango/next.svg} +0 -0
  28. data/doc/images/{note.png → tango/note.png} +0 -0
  29. data/doc/images/{note.svg → tango/note.svg} +0 -0
  30. data/doc/images/{prev.png → tango/prev.png} +0 -0
  31. data/doc/images/{prev.svg → tango/prev.svg} +0 -0
  32. data/doc/images/{tip.png → tango/tip.png} +0 -0
  33. data/doc/images/{tip.svg → tango/tip.svg} +0 -0
  34. data/doc/images/{up.png → tango/up.png} +0 -0
  35. data/doc/images/{up.svg → tango/up.svg} +0 -0
  36. data/doc/images/{warning.png → tango/warning.png} +0 -0
  37. data/doc/images/{warning.svg → tango/warning.svg} +0 -0
  38. data/doc/intro.inc +105 -36
  39. data/doc/lib/doc_format.rb +151 -29
  40. data/doc/lib/doc_proxy.rb +28 -69
  41. data/doc/lib/erb_content.rb +10 -22
  42. data/doc/lib/erb_proxy.rb +13 -24
  43. data/doc/manual.doc +16 -60
  44. data/doc/manual.html +257 -340
  45. data/doc/memo.doc +2 -0
  46. data/doc/memo.html +11 -11
  47. data/doc/readme.doc +36 -2
  48. data/doc/readme.html +214 -51
  49. data/doc/rss.erb +3 -3
  50. data/doc/rss.xml +217 -269
  51. data/ext/Rakefile +7 -22
  52. data/ext/common.h +10 -21
  53. data/ext/extconf.rb +5 -0
  54. data/ext/main.c +2 -18
  55. data/ext/main.h +1 -16
  56. data/ext/relay.c +3 -17
  57. data/ext/relay.h +3 -17
  58. data/ext/verilog.h +6 -18
  59. data/ext/vlog.c +3 -21
  60. data/ext/vlog.h +3 -17
  61. data/lib/ruby-vpi/erb.rb +7 -20
  62. data/lib/ruby-vpi/float.rb +6 -20
  63. data/lib/ruby-vpi/integer.rb +27 -47
  64. data/lib/ruby-vpi/rake.rb +4 -19
  65. data/lib/ruby-vpi/rcov.rb +6 -21
  66. data/lib/ruby-vpi/rdoc.rb +3 -21
  67. data/lib/ruby-vpi/runner.rb +28 -29
  68. data/lib/ruby-vpi/runner_proxy.rb +5 -21
  69. data/lib/ruby-vpi/verilog_parser.rb +5 -20
  70. data/lib/ruby-vpi/vpi.rb +420 -376
  71. data/lib/ruby-vpi.rb +26 -32
  72. data/ref/c/annotated.html +1 -1
  73. data/ref/c/common_8h.html +1 -1
  74. data/ref/c/files.html +1 -1
  75. data/ref/c/functions.html +1 -1
  76. data/ref/c/functions_vars.html +1 -1
  77. data/ref/c/globals.html +1 -1
  78. data/ref/c/globals_0x63.html +1 -1
  79. data/ref/c/globals_0x65.html +1 -1
  80. data/ref/c/globals_0x66.html +1 -1
  81. data/ref/c/globals_0x6d.html +1 -1
  82. data/ref/c/globals_0x70.html +1 -1
  83. data/ref/c/globals_0x72.html +1 -1
  84. data/ref/c/globals_0x73.html +1 -1
  85. data/ref/c/globals_0x74.html +1 -1
  86. data/ref/c/globals_0x76.html +1 -1
  87. data/ref/c/globals_0x78.html +1 -1
  88. data/ref/c/globals_defs.html +1 -1
  89. data/ref/c/globals_defs_0x65.html +1 -1
  90. data/ref/c/globals_defs_0x70.html +1 -1
  91. data/ref/c/globals_defs_0x76.html +1 -1
  92. data/ref/c/globals_defs_0x78.html +1 -1
  93. data/ref/c/globals_enum.html +1 -1
  94. data/ref/c/globals_eval.html +1 -1
  95. data/ref/c/globals_func.html +1 -1
  96. data/ref/c/globals_type.html +1 -1
  97. data/ref/c/globals_vars.html +1 -1
  98. data/ref/c/index.html +1 -1
  99. data/ref/c/main_8c.html +1 -1
  100. data/ref/c/main_8h.html +1 -1
  101. data/ref/c/relay_8c.html +1 -1
  102. data/ref/c/relay_8h.html +1 -1
  103. data/ref/c/structt__cb__data.html +1 -1
  104. data/ref/c/structt__vpi__delay.html +1 -1
  105. data/ref/c/structt__vpi__error__info.html +1 -1
  106. data/ref/c/structt__vpi__strengthval.html +1 -1
  107. data/ref/c/structt__vpi__systf__data.html +1 -1
  108. data/ref/c/structt__vpi__time.html +1 -1
  109. data/ref/c/structt__vpi__value.html +1 -1
  110. data/ref/c/structt__vpi__vecval.html +1 -1
  111. data/ref/c/structt__vpi__vlog__info.html +1 -1
  112. data/ref/c/verilog_8h.html +1 -1
  113. data/ref/c/vlog_8c.html +1 -1
  114. data/ref/c/vlog_8h.html +1 -1
  115. data/ref/c/vpi__user_8h.html +1 -1
  116. data/ref/ruby/classes/ERB.html +5 -5
  117. data/ref/ruby/classes/ERB.src/{M000026.html → M000024.html} +15 -15
  118. data/ref/ruby/classes/FileUtils.html +10 -10
  119. data/ref/ruby/classes/FileUtils.src/{M000027.html → M000025.html} +4 -4
  120. data/ref/ruby/classes/FileUtils.src/{M000028.html → M000026.html} +4 -4
  121. data/ref/ruby/classes/Float.html +5 -5
  122. data/ref/ruby/classes/Float.src/{M000022.html → M000020.html} +5 -5
  123. data/ref/ruby/classes/Integer.html +20 -56
  124. data/ref/ruby/classes/Integer.src/M000008.html +11 -11
  125. data/ref/ruby/classes/Integer.src/M000009.html +4 -4
  126. data/ref/ruby/classes/Integer.src/M000010.html +4 -4
  127. data/ref/ruby/classes/Integer.src/M000011.html +4 -4
  128. data/ref/ruby/classes/Integer.src/M000012.html +4 -4
  129. data/ref/ruby/classes/Integer.src/M000013.html +4 -4
  130. data/ref/ruby/classes/Integer.src/M000016.html +12 -9
  131. data/ref/ruby/classes/Integer.src/M000017.html +18 -9
  132. data/ref/ruby/classes/Integer.src/M000018.html +12 -12
  133. data/ref/ruby/classes/Integer.src/M000019.html +17 -18
  134. data/ref/ruby/classes/RDoc.src/M000053.html +25 -25
  135. data/ref/ruby/classes/RubyVpi/Config.html +3 -3
  136. data/ref/ruby/classes/RubyVpi.html +11 -5
  137. data/ref/ruby/classes/RubyVpi.src/{M000029.html → M000027.html} +103 -101
  138. data/ref/ruby/classes/String.html +21 -15
  139. data/ref/ruby/classes/String.src/M000021.html +36 -0
  140. data/ref/ruby/classes/String.src/{M000024.html → M000022.html} +24 -24
  141. data/ref/ruby/classes/String.src/M000023.html +5 -23
  142. data/ref/ruby/classes/VerilogParser/Module/Parameter.src/M000007.html +5 -5
  143. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000003.html +7 -7
  144. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000004.html +4 -4
  145. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000005.html +4 -4
  146. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000006.html +4 -4
  147. data/ref/ruby/classes/VerilogParser/Module.src/M000002.html +20 -20
  148. data/ref/ruby/classes/VerilogParser.html +6 -0
  149. data/ref/ruby/classes/VerilogParser.src/M000001.html +20 -20
  150. data/ref/ruby/classes/Vpi/Handle.html +89 -88
  151. data/ref/ruby/classes/Vpi/Handle.src/M000036.html +18 -0
  152. data/ref/ruby/classes/Vpi/Handle.src/M000037.html +5 -5
  153. data/ref/ruby/classes/Vpi/Handle.src/M000038.html +5 -5
  154. data/ref/ruby/classes/Vpi/Handle.src/M000039.html +5 -5
  155. data/ref/ruby/classes/Vpi/Handle.src/M000040.html +8 -5
  156. data/ref/ruby/classes/Vpi/Handle.src/M000041.html +8 -8
  157. data/ref/ruby/classes/Vpi/Handle.src/M000042.html +7 -6
  158. data/ref/ruby/classes/Vpi/Handle.src/M000043.html +31 -9
  159. data/ref/ruby/classes/Vpi/Handle.src/M000044.html +74 -31
  160. data/ref/ruby/classes/Vpi/Handle.src/M000045.html +17 -74
  161. data/ref/ruby/classes/Vpi/Handle.src/M000046.html +11 -17
  162. data/ref/ruby/classes/Vpi/Handle.src/M000048.html +31 -0
  163. data/ref/ruby/classes/Vpi/Handle.src/M000049.html +53 -52
  164. data/ref/ruby/classes/Vpi/S_vpi_time.src/M000050.html +4 -4
  165. data/ref/ruby/classes/Vpi/S_vpi_time.src/M000051.html +5 -5
  166. data/ref/ruby/classes/Vpi/S_vpi_value.html +15 -15
  167. data/ref/ruby/classes/Vpi/S_vpi_value.src/{M000036.html → M000033.html} +5 -5
  168. data/ref/ruby/classes/Vpi/S_vpi_value.src/M000034.html +5 -5
  169. data/ref/ruby/classes/Vpi/S_vpi_value.src/M000035.html +5 -5
  170. data/ref/ruby/classes/Vpi.html +48 -19
  171. data/ref/ruby/classes/Vpi.src/M000028.html +28 -0
  172. data/ref/ruby/classes/Vpi.src/M000029.html +18 -0
  173. data/ref/ruby/classes/Vpi.src/M000030.html +25 -15
  174. data/ref/ruby/classes/Vpi.src/M000031.html +9 -5
  175. data/ref/ruby/classes/Vpi.src/M000032.html +9 -25
  176. data/ref/ruby/created.rid +1 -1
  177. data/ref/ruby/files/bin/generate_test_rb.html +2 -1
  178. data/ref/ruby/files/bin/header_to_ruby_rb.html +1 -1
  179. data/ref/ruby/files/lib/ruby-vpi/erb_rb.html +7 -1
  180. data/ref/ruby/files/lib/ruby-vpi/float_rb.html +7 -1
  181. data/ref/ruby/files/lib/ruby-vpi/integer_rb.html +7 -1
  182. data/ref/ruby/files/lib/ruby-vpi/rake_rb.html +7 -1
  183. data/ref/ruby/files/lib/ruby-vpi/rcov_rb.html +7 -1
  184. data/ref/ruby/files/lib/ruby-vpi/rdoc_rb.html +1 -1
  185. data/ref/ruby/files/lib/ruby-vpi/runner_proxy_rb.html +1 -1
  186. data/ref/ruby/files/lib/ruby-vpi/runner_rb.html +1 -1
  187. data/ref/ruby/files/lib/ruby-vpi/verilog_parser_rb.html +1 -1
  188. data/ref/ruby/files/lib/ruby-vpi/vpi_rb.html +1 -1
  189. data/ref/ruby/files/lib/ruby-vpi_rb.html +7 -1
  190. data/ref/ruby/fr_method_index.html +34 -34
  191. data/samp/counter/counter_rspec_runner.rake +4 -0
  192. data/samp/counter/counter_xunit_runner.rake +4 -0
  193. data/samp/pipelined_alu/Hw5UnitModel.rb +3 -19
  194. data/samp/pipelined_alu/README +38 -13
  195. data/samp/pipelined_alu/TestHw5UnitModel.rb +9 -20
  196. data/samp/pipelined_alu/hw5_unit.v +1 -16
  197. data/samp/pipelined_alu/hw5_unit_test_runner.rake +4 -0
  198. data/samp/pipelined_alu/hw5_unit_test_spec.rb +3 -20
  199. data/samp/pipelined_alu/int_gen.rb +6 -20
  200. metadata +47 -43
  201. data/doc/LICENSE +0 -397
  202. data/doc/images/feed-icon.LICENSE +0 -2
  203. data/doc/images/feed-icon.svg +0 -18
  204. data/ref/ruby/classes/Integer.src/M000020.html +0 -25
  205. data/ref/ruby/classes/Integer.src/M000021.html +0 -30
  206. data/ref/ruby/classes/String.src/M000025.html +0 -18
  207. data/ref/ruby/classes/Vpi/Handle.src/M000047.html +0 -24
  208. data/ref/ruby/classes/Vpi.src/M000033.html +0 -22
@@ -1,12 +1,63 @@
1
+ -
2
+ Version: 16.0.0
3
+
4
+ Date: 2007-05-02
5
+
6
+ Record: |
7
+ This release adds support for the "Cadence NC-Sim / NC-Verilog":http://www.cadence.com/products/functional_ver/nc-verilog/ simulator, improves the project website and documentation, simplifies interaction with VPI, and comes with a more permissive license.
8
+
9
+
10
+ h2. Caution
11
+
12
+ * The @Integer.ensure_min@ and @Integer.ensure_max@ methods have been removed from the <tt>ruby-vpi/integer.rb</tt> library because Ruby already has idioms for these operations: <pre>
13
+ >> 5.ensure_min 10
14
+ => 10
15
+ >> [5, 10].max
16
+ => 10
17
+
18
+ >> 5.ensure_max 10
19
+ => 5
20
+ >> [5, 10].min
21
+ => 5
22
+ </pre>
23
+
24
+ * Ruby-VPI is now developed under a "more permissive license":readme.html#intro.license that better reflects my ethical beliefs than "the previous license":http://www.gnu.org/copyleft/gpl.html.
25
+
26
+
27
+ h2. New features
28
+
29
+ * The "Cadence NC-Sim / NC-Verilog":http://www.cadence.com/products/functional_ver/nc-verilog/ (ncsim) simulator is now supported.
30
+
31
+ * VPI structures (whose names begin with "S_") now allow initialization of their members through their constructor, in the style of Ruby on Rails. For example, the expression @time = S_vpi_time.new :type => VpiSuppressTime@ is equivalent to: <code>
32
+ time = S_vpi_time.new
33
+ time.type = VpiSuppressTime
34
+ </code>
35
+
36
+ * Added the @Vpi::Handle.cbValueChange@ method which simplifies the registration of a value-change callback for a particular VPI handle. For instance, the user manual's "example of setting up a value-change callback":manual.html#ex..callback can now be written as follows: <code>
37
+ Counter.count.cbValueChange do |s_cb_data|
38
+ puts "hello from callback! time=#{s_cb_data.time.to_i} count=#{s_cb_data.obj.intVal}"
39
+ end
40
+ </code>
41
+
42
+
43
+ h2. Details
44
+
45
+ * Revised the project website according to the "Producing OSS":http://producingoss.com guidelines.
46
+
47
+ * Added instructions for checking out source code and generating documentation.
48
+
49
+
1
50
  -
2
51
  Version: 15.0.2
3
52
 
4
53
  Date: 2007-01-22
5
54
 
6
- Summary: |
55
+ Record: |
7
56
  This release fixes problems with linking of the C extension and installation of the gem.
8
57
 
9
- Details: |
58
+
59
+ h2. Details
60
+
10
61
  * Added checks for POSIX threads & Ruby libraries before creating makefile. Otherwise the <tt>.so</tt> files were not being linked to those libraries on the MASC machine!
11
62
 
12
63
  * The *make* program on the MASC machine does not like an empty Makefile. It was causing gem installation to fail.
@@ -17,13 +68,17 @@
17
68
 
18
69
  Date: 2007-01-15
19
70
 
20
- Summary: |
21
- This release fixes a problem with compilation of the C extension and improves the user documentation's appearance.
71
+ Record: |
72
+ This release fixes another problem with compilation of the C extension and improves the user documentation's appearance.
22
73
 
23
- Acknowledgment: |
24
- Thanks to Derek Graham for reporting the problem.
25
74
 
26
- Details: |
75
+ h2. Thanks
76
+
77
+ * Derek Graham reported the problem with compilation of the C extension.
78
+
79
+
80
+ h2. Details
81
+
27
82
  * Restored the monkey patch, which was removed in release 14.0.0, for the SWIG @va_list@ problem.
28
83
 
29
84
  * Made table of contents in-line with the content in user documentation.
@@ -36,13 +91,17 @@
36
91
 
37
92
  Date: 2007-01-13
38
93
 
39
- Summary: |
94
+ Record: |
40
95
  This release fixes a problem with compilation of the C extension, and makes clock generation code correctly affect Ruby prototypes.
41
96
 
42
- Acknowledgment: |
43
- Thanks to Derek Graham for reporting the problem with compilation of the C extension.
44
97
 
45
- Notice: |
98
+ h2. Thanks
99
+
100
+ * Derek Graham reported the problem with compilation of the C extension.
101
+
102
+
103
+ h2. Caution
104
+
46
105
  * The @Vpi::advance_time@ method (instead of the @Vpi::simulate@ method) now invokes the design's @simulate!@ method when prototyping is enabled.
47
106
 
48
107
  This makes clock generation code (passed to the @RubyVpi::init_bench@ method) affect Ruby prototypes, just as it affects a real Verilog design.
@@ -57,7 +116,9 @@
57
116
 
58
117
  * Added utility methods for accessing the @value@ field in the @Vpi::S_vpi_value@ structure.
59
118
 
60
- Details: |
119
+
120
+ h2. Details
121
+
61
122
  * Fixed problem with incorrect Ruby library flag in <tt>ext/extconf.rb</tt>. It happens that the @mkmf@ library determines the correct library flag all by itself!
62
123
 
63
124
  * Added new "prototyping section":manual.html#usage.prototyping to user manual.
@@ -70,10 +131,12 @@
70
131
 
71
132
  Date: 2006-12-30
72
133
 
73
- Summary: |
134
+ Record: |
74
135
  This release adds support for simulation callbacks, renders Verilog benches _fully simplified_, and revises the user manual to reflect major changes.
75
136
 
76
- Notice: |
137
+
138
+ h2. Caution
139
+
77
140
  * The @Vpi::relay_verilog@ method has been replaced by @Vpi::simulate@.
78
141
 
79
142
  Please update you tests accordingly, because invoking the @Vpi::relay_verilog@ method directly will cause your tests to freeze/hang.
@@ -92,7 +155,9 @@
92
155
 
93
156
  * Added the @Vpi::simulation_time@ method, which gives you the current simulation time as a 64-bit integer.
94
157
 
95
- Details: |
158
+
159
+ h2. Details
160
+
96
161
  * Removed the monkey patch for the SWIG @va_list@ problem -- it no longer occurs.
97
162
 
98
163
  * Cleansed the appearance of the user documentation.
@@ -110,10 +175,12 @@
110
175
 
111
176
  Date: 2006-12-27
112
177
 
113
- Summary: |
178
+ Record: |
114
179
  This release fixes a _major_ instability bug, simplifies generated Verilog benches, and purifies the API reference documentation.
115
180
 
116
- Notice: |
181
+
182
+ h2. Caution
183
+
117
184
  * The @$ruby_init@ and @$ruby_relay@ system task/functions have been removed. Generated Verilog benches no longer use them.
118
185
  ** To pass your own command-line options to Ruby, set the @RUBYOPT@ environment variable before running a test.
119
186
 
@@ -121,7 +188,9 @@
121
188
 
122
189
  * You can now choose when @Vpi::relay_verilog@ is triggered: upon positive/negative edge of the clock signal, or any other criteria. This is done by passing a block to the @RubyVpi::init_bench@ method (see "the API reference documentation":../ref/ruby/classes/RubyVpi.html for details).
123
190
 
124
- Details: |
191
+
192
+ h2. Details
193
+
125
194
  * Fixed a major instability bug that was randomly causing segmentation faults and pthread assertion failures.
126
195
 
127
196
  The problem was that the @$ruby_init@ system task/function was mischeviously unlocking a pthread mutex. From then onward, all code assumed that the mutex was still locked -- but in reality, the mutex was already unlocked.
@@ -138,10 +207,12 @@
138
207
 
139
208
  Date: 2006-12-22
140
209
 
141
- Summary: |
210
+ Record: |
142
211
  This release adds interactive debugging support, adds new sections to the user manual, and cleanses some internals.
143
212
 
144
- Notice: |
213
+
214
+ h2. Caution
215
+
145
216
  * The <tt>lib/ruby-vpi/rspec.rb</tt> and <tt>lib/ruby-vpi/xx.rb</tt> files have been removed because they are no longer necessary.
146
217
 
147
218
  * rSpec 0.7.0 or newer is now required because the sample tests utilize the @should ==@ syntax.
@@ -153,7 +224,9 @@
153
224
 
154
225
  * Status messages, which are shown during initialization of a Ruby bench, now appear in your simulator's log files.
155
226
 
156
- Details: |
227
+
228
+ h2. Details
229
+
157
230
  * ruby-debug is now a gem dependency for Ruby-VPI.
158
231
 
159
232
  * Added documentation about "test runners":manual.html#usage.test-runner and the "interactive debugger":manual.html#usage.debugger in the user manual.
@@ -168,7 +241,7 @@
168
241
 
169
242
  Date: 2006-12-18
170
243
 
171
- Summary: |
244
+ Record: |
172
245
  This release fixes a problem in the 12.0.1 gem, where the *generate_test.rb* and *header_to_ruby.rb* tools were not being installed properly.
173
246
 
174
247
 
@@ -177,13 +250,17 @@
177
250
 
178
251
  Date: 2006-12-18
179
252
 
180
- Summary: |
253
+ Record: |
181
254
  This release fixes a problem in code coverage analysis.
182
255
 
183
- Acknowledgment: |
184
- Thanks to Mauricio Fernandez for helping me solve the problem.
185
256
 
186
- Details: |
257
+ h2. Thanks
258
+
259
+ * Mauricio Fernandez helped me solve the problem with code coverage analysis.
260
+
261
+
262
+ h2. Details
263
+
187
264
  Previously, code coverage reports were not providing any useful information because they were being generated _before_ the test had a chance to run. This problem has been fixed -- code coverage reports are now generated _after_ the test has finished running.
188
265
 
189
266
  This problem occurred because I had forgotten that @Kernel.at_exit@ invokes the blocks passed to it in _reverse_ order. So, the coverage report was being generated before Test::Unit had a chance to run (it also uses @Kernel.at_exit@).
@@ -194,10 +271,12 @@
194
271
 
195
272
  Date: 2006-12-07
196
273
 
197
- Summary: |
274
+ Record: |
198
275
  This release adds support for the "test/spec":http://chneukirchen.org/blog/archive/2006/10/announcing-test-spec-0-2-a-bdd-interface-for-test-unit.html library, fixes some bugs, and improves the user manual and generated tests.
199
276
 
200
- Notice: |
277
+
278
+ h2. Caution
279
+
201
280
  * Icarus Verilog 0.8 has been demoted to a "mostly acceptable":manual.html#setup.reqs status.
202
281
 
203
282
  * Generated Verilog benches no longer supply the <tt>-w</tt> option to the @$ruby_init@ task.
@@ -213,7 +292,9 @@
213
292
  ** now supplies a third argument to the @MERGER@ command.
214
293
  ** no longer replaces existing files with newly generated content during the *update* action. Instead, it now writes the newly generated output to a <tt>.new</tt> file and then invokes the @MERGER@ command.
215
294
 
216
- Details: |
295
+
296
+ h2. Details
297
+
217
298
  * The @Vpi::Handle@ class has two new methods: @x!@ and @z!@, which set the handle's logic value to _unknown_ and _high impedance_ respectively.
218
299
 
219
300
  * The tests for the simple up-counter example were randomly failing because the specifications were not asserting the design's @reset@ signal long enough. So the design was getting into weird states and behaving in a non-deterministic way. This problem has been fixed.
@@ -243,16 +324,22 @@
243
324
 
244
325
  Date: 2006-11-15
245
326
 
246
- Summary: |
327
+ Record: |
247
328
  This release fixes a bug in the automated test generator, unifies the user manual and the website into a single documentation system, and adds support for rSpec 0.7.2.
248
329
 
249
- Acknowledgment: |
250
- Thanks to John Burr for finding the bug in the automated test generator.
251
330
 
252
- Notice: |
331
+ h2. Thanks
332
+
333
+ * John Burr found the bug in the automated test generator.
334
+
335
+
336
+ h2. Caution
337
+
253
338
  * The user manual is now available _only_ in HTML format. If you still wish to have a plain-text version, you can use a text-based browser, such as "lynx":http://lynx.browser.org/, to perform the necessary conversion.
254
339
 
255
- Details: |
340
+
341
+ h2. Details
342
+
256
343
  * The automated test generator no longer crashes when parsing a Verilog module declaration that contains multiple module parameters.
257
344
 
258
345
  * The user manual and the website are now written using a custom documentation system based on RedCloth and ERB instead of DocBook-XML. This makes it easier to edit the user manual and reuse its content in other areas of the website.
@@ -263,16 +350,22 @@
263
350
 
264
351
  Date: 2006-11-08
265
352
 
266
- Summary: |
353
+ Record: |
267
354
  This release fixes a bug in generated benches, improves the "the @Vpi::Handle@ class":../ref/ruby/classes/Vpi/Handle.html, and improves performance by roughly 20%.
268
355
 
269
- Acknowledgment: |
270
- Thanks to Matt Fischler for finding the bug in generated benches (see below).
271
356
 
272
- Notice: |
357
+ h2. Thanks
358
+
359
+ * Matt Fischler found the bug in generated benches (see below).
360
+
361
+
362
+ h2. Caution
363
+
273
364
  * A bug in generated Verilog and Ruby benches, which caused the <pre>ruby: no such file to load -- ruby-vpi (LoadError)</pre> error, has been fixed. Please regenerate your tests to apply this bug fix to your tests.
274
365
 
275
- Details: |
366
+
367
+ h2. Details
368
+
276
369
  * The class @SWIG::TYPE_p_unsigned_int@ has been aliased as @Vpi::Handle@ for easier access.
277
370
 
278
371
  * @Vpi::Handle.to_s@ and @Vpi::Handle.inspect@ now produce more informative output. For example, what used to appear as <pre>#<SWIG::TYPE_p_unsigned_int:0x2aaab6574fa0></pre> now appears as <pre>#<Vpi::Handle vpiModule fullName=counter_rspec_bench, size=-1, file=counter_rspec_bench.v, lineNo=2></pre> in this release.
@@ -298,17 +391,21 @@
298
391
 
299
392
  Date: 2006-11-05
300
393
 
301
- Summary: |
394
+ Record: |
302
395
  This release shortens generated Ruby benches and uses the less confusing notation for defining "singleton methods":http://wiki.rubygarden.org/Ruby/page/show/SingletonTutorial in generated designs and prototypes.
303
396
 
304
- Notice: |
397
+
398
+ h2. Caution
399
+
305
400
  * The arguments for the "@RubyVPI.init_bench@ method":../ref/ruby/classes/RubyVpi.html have changed.
306
401
 
307
402
  * *generate_test.rb* no longer emits undocumented status indicators: _name_ and _format_.
308
403
 
309
404
  * The source code is no longer distributed as a *zip* package, because it seems to be quite underutilized in comparison to the *tgz* and *gem* packages.
310
405
 
311
- Details: |
406
+
407
+ h2. Details
408
+
312
409
  * Generated Ruby benches have been shortened to just _one_ line of code!
313
410
 
314
411
  * The less confusing notation of <code>def some_object.a_singleton_method
@@ -328,13 +425,17 @@
328
425
 
329
426
  Date: 2006-11-05
330
427
 
331
- Summary: |
428
+ Record: |
332
429
  This release adds the ability to access a handle's children and reduces the amount of code produced by the automated test generator.
333
430
 
334
- Acknowledgment: |
335
- Thanks to Matt Fischler for finding the problem of misdirected compilation errors in Verilog benches.
336
431
 
337
- Notice: |
432
+ h2. Thanks
433
+
434
+ * Matt Fischler found the problem of misdirected compilation errors in Verilog benches.
435
+
436
+
437
+ h2. Caution
438
+
338
439
  * The way in which Ruby-VPI and generated tests interact has changed: the design is now a VPI handle object and the <tt>design.rb</tt> and <tt>proto.rb</tt> files define "singleton methods":http://wiki.rubygarden.org/Ruby/page/show/SingletonTutorial for that object.
339
440
  ** I suggest that you regenerate your existing tests (just run *generate_test.rb* again) whilst employing the service of a text merging tool (see the user manual).
340
441
 
@@ -343,7 +444,9 @@
343
444
  * *generate_test.rb* no longer accepts the <pre>-s</pre> and <pre>-u</pre> options. Use their longer counterparts <pre>--rspec</pre> and <pre>--xunit</pre> instead.
344
445
 
345
446
 
346
- Details: |
447
+
448
+ h2. Details
449
+
347
450
  h3. Automated test generator
348
451
 
349
452
  * Generated Verilog benches no longer divert compilation errors from Verilog design files. That is, if the Verilog simulator finds compilation errors in a Verilog design file, it will report that the Verilog design file is at fault (instead of reporting that the generated Verilog bench is at fault).
@@ -369,16 +472,22 @@
369
472
 
370
473
  Date: 2006-10-28
371
474
 
372
- Summary: |
475
+ Record: |
373
476
  This release improves the automated test generator and adds new content to the user manual.
374
477
 
375
- Acknowledgment: |
376
- Thanks to Matt Fischler for helping test and debug the installation of Ruby-VPI on Windows.
377
478
 
378
- Notice: |
479
+ h2. Thanks
480
+
481
+ * Matt Fischler helped test and debug the installation of Ruby-VPI on Windows.
482
+
483
+
484
+ h2. Caution
485
+
379
486
  * The command-line options for *generate_test.rb* have changed. Run the command <pre>generate_test.rb --help</pre> for details.
380
487
 
381
- Details: |
488
+
489
+ h2. Details
490
+
382
491
  * Test runners now attempt to resolve paths in @SIMULATOR_SOURCES@ by searching for them within the directories specified in @SIMULATOR_INCLUDES@.
383
492
 
384
493
  * Synopsys VCS is now used in a better way (via the <pre>-load</pre> option).
@@ -404,16 +513,22 @@
404
513
 
405
514
  Date: 2006-10-24
406
515
 
407
- Summary: |
516
+ Record: |
408
517
  This release simplifies configuration of generated tests.
409
518
 
410
- Acknowledgment: |
411
- Thanks to "students in CMPE-126":http://www.soe.ucsc.edu/classes/cmpe126/Fall06/ for their comments.
412
519
 
413
- Notice: |
520
+ h2. Thanks
521
+
522
+ * "Students in the CMPE-126 class":http://www.soe.ucsc.edu/classes/cmpe126/Fall06/ for their comments and criticisms.
523
+
524
+
525
+ h2. Caution
526
+
414
527
  * Generated runners now have a @SIMULATOR_INCLUDES@ array, whose entries specify places where Verilog source files, needed by the Verilog design, reside.
415
528
 
416
- Details: |
529
+
530
+ h2. Details
531
+
417
532
  * Generated Verilog benches now inherit all @`include@ and @`define@ directives from the Verilog design in a simpler manner.
418
533
  * A generated test no longer requires its Verilog design to reside in the same directory.
419
534
  * The sample tests have been updated accordingly.
@@ -424,13 +539,17 @@
424
539
 
425
540
  Date: 2006-10-21
426
541
 
427
- Summary: |
542
+ Record: |
428
543
  This release adds an integer library and renames the vpi_util library.
429
544
 
430
- Notice: |
545
+
546
+ h2. Caution
547
+
431
548
  * The *vpi_util* library has been renamed to *vpi*. This change should not affect your code unless you explicitly imported this library via @require 'ruby-vpi/vpi_util'@. In which case, you should update your code to use @require 'ruby-vpi/vpi'@ accordingly.
432
549
 
433
- Details: |
550
+
551
+ h2. Details
552
+
434
553
  * An integer library has been added to simplify common tasks related to hardware and the binary number system. You can import this library for use via @require 'ruby-vpi/integer'@.
435
554
 
436
555
 
@@ -439,16 +558,20 @@
439
558
 
440
559
  Date: 2006-10-13
441
560
 
442
- Summary: |
561
+ Record: |
443
562
  This release renames some identifiers for consistency, updates the documentation, and improves integration with RubyGems.
444
563
 
445
- Notice: |
564
+
565
+ h2. Caution
566
+
446
567
  * The @RubyVPI@ module has been renamed to @RubyVpi@.
447
568
 
448
569
  * The @PROTO@ environment variable has been renamed to @PROTOTYPE@.
449
570
  ** In addition to using *unset*, you can now disable simulation of the prototype by assigning an empty value to this variable.
450
571
 
451
- Details: |
572
+
573
+ h2. Details
574
+
452
575
  * We now use "Darcs":http://darcs.net for revision control, instead of Subversion. The source repository can now be accessed at "http://ruby-vpi.rubyforge.org/src/ruby-vpi":http://ruby-vpi.rubyforge.org/src/ruby-vpi.
453
576
 
454
577
  * The source code is now distributed in tar.gz and zip form, in addition to gem.
@@ -466,15 +589,19 @@
466
589
 
467
590
  Date: 2006-09-30
468
591
 
469
- Summary: |
592
+ Record: |
470
593
  This release fixes a bug in generated Verilog benches, includes parsed constants in generated tests, and adds new methods to handles.
471
594
 
472
- Notice: |
595
+
596
+ h2. Caution
597
+
473
598
  * Handles now have two new methods:
474
599
  ** @handle.x?@ checks if the logic value is "don't care"
475
600
  ** @handle.z?@ checks if the logic value is high impedance
476
601
 
477
- Details: |
602
+
603
+ h2. Details
604
+
478
605
  * Module instantiation code in generated Verilog benches has been fixed. Whitespace between the module type and instance variable was missing.
479
606
 
480
607
  * The test generator tool now provides parsed Verilog constants and include-directives in generated Verilog benches; and parsed Verilog constants in generated Ruby designs.
@@ -488,13 +615,17 @@
488
615
 
489
616
  Date: 2006-09-15
490
617
 
491
- Summary: |
618
+ Record: |
492
619
  This release adds initial support for code coverage analysis via the "rcov library":http://eigenclass.org/hiki.rb?rcov.
493
620
 
494
- Acknowledgment: |
495
- Thanks to Mauricio Fernandez for helping me use rcov without its runner.
496
621
 
497
- Details: |
622
+ h2. Thanks
623
+
624
+ * Mauricio Fernandez helped me use rcov without its runner.
625
+
626
+
627
+ h2. Details
628
+
498
629
  * Added initial support (full capabilites of the rcov library, such as its various analysis modes, are not yet utilized) for code coverage analysis, which can be enabled by setting the @COVERAGE@ environment variable to a non-empty value before running a test.
499
630
  ** For example, you can run a test with the GPL Cver simulator while enabling the generation of code coverage reports as follows: <pre>export COVERAGE=1; rake cver</pre>
500
631
 
@@ -506,10 +637,12 @@
506
637
 
507
638
  Date: 2006-08-29
508
639
 
509
- Summary: |
640
+ Record: |
510
641
  This release simplifies running of multiple tests, restores compatibility with Synopsys VCS, and better integrates with RubyGems.
511
642
 
512
- Details: |
643
+
644
+ h2. Details
645
+
513
646
  * Added <tt>lib/ruby-vpi/runner_proxy.rb</tt> library which, when embedded into a Rakefile, runs all generated tests in the working directory with any specified arguments. For example, have a look at the <tt>samp/counter/Rakefile</tt> file.
514
647
 
515
648
  * Fixed a bug that prevented one from running tests with Synopsys VCS.
@@ -526,10 +659,12 @@
526
659
 
527
660
  Date: 2006-08-29
528
661
 
529
- Summary: |
662
+ Record: |
530
663
  This release distributes Ruby-VPI as a gem, improves portability of generated tests, and fixes a bug.
531
664
 
532
- Notice: |
665
+
666
+ h2. Caution
667
+
533
668
  * @put_value()@ now accomodates register value overflows when verifying the value it has written.
534
669
 
535
670
  * The test generator's templates and the examples have been updated as follows:
@@ -540,7 +675,9 @@
540
675
 
541
676
  * The <tt>src/</tt> directory has been renamed to <tt>ext/</tt> to follow RubyGems convention.
542
677
 
543
- Details: |
678
+
679
+ h2. Details
680
+
544
681
  * Ruby-VPI is now distributed only as a "source gem":http://www.rubygems.org. You can decompress the gem without installing it onto your system by running the command <pre>gem install -i output_directory ruby-vpi-7.0.0.gem</pre>. In addition, you can still obtain the source code directly from the Subversion repository.
545
682
 
546
683
  * The tools in <tt>bin/</tt> become available in your system's <tt>bin/</tt> directory when the gem is installed.
@@ -558,14 +695,18 @@
558
695
 
559
696
  Date: 2006-08-27
560
697
 
561
- Summary: |
698
+ Record: |
562
699
  This release adds support for the GPL Cver simulator, provides both binary and source packages, and explicitly defines the version numbering system.
563
700
 
564
- Notice: |
701
+
702
+ h2. Caution
703
+
565
704
  * Ruby-VPI now only needs to be built once.
566
705
  ** You can run tests with different Verilog simulators without having to re-compile Ruby-VPI.
567
706
 
568
- Details: |
707
+
708
+ h2. Details
709
+
569
710
  * The GPL Cver simulator is now supported.
570
711
 
571
712
  * Release packages are now available in both source and binary form.
@@ -593,15 +734,19 @@
593
734
 
594
735
  Date: 2006-08-26
595
736
 
596
- Summary: |
737
+ Record: |
597
738
  This release beautifies generated tests, adds checks to find signal width bugs, and includes a new tool.
598
739
 
599
- Notice: |
740
+
741
+ h2. Caution
742
+
600
743
  * @put_value()@ now returns the value it puts. Therefore, it is easier to chain together a series of assignments: @foo.intVal = bar.intVal = baz.intVal = 10@
601
744
 
602
745
  * @put_value()@ now verifies that the value it puts was written correctly. This helps to find bugs regarding invalid assumptions about the number of bits supported by a signal.
603
746
 
604
- Details: |
747
+
748
+ h2. Details
749
+
605
750
  * The test generator now uses ERB templates which ensures nice indentation of generated output.
606
751
 
607
752
  * The test generator now decouples Ruby-VPI paths from Verilog benches via the RUBYLIB environment variable.
@@ -616,10 +761,12 @@
616
761
 
617
762
  Date: 2006-08-09
618
763
 
619
- Summary: |
764
+ Record: |
620
765
  This release simplifies generated tests and fixes a bug.
621
766
 
622
- Details: |
767
+
768
+ h2. Details
769
+
623
770
  * The test generator now produces simpler Ruby benches and specifications.
624
771
  ** A template used by generated specifications has been added.
625
772
  ** The counter example and tutorial have also been simplified accordingly.
@@ -632,10 +779,12 @@
632
779
 
633
780
  Date: 2006-08-07
634
781
 
635
- Summary: |
782
+ Record: |
636
783
  This release adds support and documentation for rapid prototyping of Verilog designs in Ruby.
637
784
 
638
- Notice: |
785
+
786
+ h2. Caution
787
+
639
788
  * The directory structure has been reorganized as follows:
640
789
  ** <tt>ext</tt> &rarr; <tt>src</tt>
641
790
  ** <tt>tools</tt> &rarr; <tt>bin</tt>
@@ -643,7 +792,9 @@
643
792
 
644
793
  * All template files have been moved into the <tt>tpl</tt> directory.
645
794
 
646
- Details: |
795
+
796
+ h2. Details
797
+
647
798
  * Support for prototyping designs in Ruby, before they are implemented in Verilog, has been added.
648
799
  ** The _same_ specification can be used to verify both prototype _and_ design! :-)
649
800
  ** The tutorial in the user manual has been updated to discuss prototyping.
@@ -657,13 +808,17 @@
657
808
 
658
809
  Date: 2006-08-04
659
810
 
660
- Summary: |
811
+ Record: |
661
812
  This release fixes unreadable syntax coloring in the user manual.
662
813
 
663
- Acknowledgment: |
664
- * Thanks to Todd Nagengast and Matt Fischler for notifying me about unreadable text in the user manual.
665
814
 
666
- Details: |
815
+ h2. Thanks
816
+
817
+ * Todd Nagengast and Matt Fischler notified me about unreadable text in the user manual.
818
+
819
+
820
+ h2. Details
821
+
667
822
  * Source code comments in the user manual are now readable.
668
823
 
669
824
  * The <tt>README</tt> and <tt>HISTORY</tt> files have been converted to "textile":http://www.textism.com/tools/textile/ format.
@@ -674,13 +829,17 @@
674
829
 
675
830
  Date: 2006-07-29
676
831
 
677
- Summary: |
832
+ Record: |
678
833
  This release adds a tutorial to the user manual, and improves the tools and examples.
679
834
 
680
- Acknowledgment: |
681
- * Thanks to Phil Tomson for correcting the URL of the RHDL website, in the user manual.
682
835
 
683
- Details: |
836
+ h2. Thanks
837
+
838
+ * Phil Tomson corrected the URL of the RHDL website in the user manual.
839
+
840
+
841
+ h2. Details
842
+
684
843
  h3. User manual
685
844
 
686
845
  * A tutorial, based on the counter example, has been added to the user manual.
@@ -709,18 +868,24 @@
709
868
 
710
869
  Date: 2006-07-22
711
870
 
712
- Summary: |
871
+ Record: |
713
872
  This release enhances the VPI utility layer and adds new content to the user manual.
714
873
 
715
- Acknowledgment: |
716
- * Thanks to Jan Decaluwe for correcting the description of MyHDL in the user manual.
717
874
 
718
- Notice: |
875
+ h2. Thanks
876
+
877
+ * Jan Decaluwe corrected the description of MyHDL in the user manual.
878
+
879
+
880
+ h2. Caution
881
+
719
882
  * SWIG is no longer required for users because its output is included in the release package.
720
883
 
721
884
  * The @handle.value@ and @handle.value=@ methods have been removed.
722
885
 
723
- Details: |
886
+
887
+ h2. Details
888
+
724
889
  * The VPI utility layer provides access to VPI properties of handles in a "simpler, more powerful way":manual.html#background.org.vpi.
725
890
 
726
891
  ** All VPI properties, except delay values, are now accessible from a handle.
@@ -737,18 +902,24 @@
737
902
 
738
903
  Date: 2006-05-25
739
904
 
740
- Summary: |
905
+ Record: |
741
906
  This release adds a comprehensive user manual, upgrades from make to "Rake":http://rake.rubyforge.org, and improves the test generation tool.
742
907
 
743
- Acknowledgment: |
744
- * Thanks to Jose Renau for solving the problem of strange delays that occurred whenever a design was reset.
745
908
 
746
- Notice: |
909
+ h2. Thanks
910
+
911
+ * Jose Renau solved the problem of strange delays that occurred whenever a design was reset.
912
+
913
+
914
+ h2. Caution
915
+
747
916
  * Rake has replaced the role of *make*. All makefiles have been converted accordingly.
748
917
 
749
918
  * The test generation tool now generates multiple files (runner, bench, design, spec) and makes backups of existing files. See its help information for details.
750
919
 
751
- Details: |
920
+
921
+ h2. Details
922
+
752
923
  * A comprehensive user manual, written in DocBook-XML, has been added.
753
924
 
754
925
  * Support for RSpec 0.5.4 has been added.
@@ -764,13 +935,17 @@
764
935
 
765
936
  Date: 2006-05-13
766
937
 
767
- Summary: |
938
+ Record: |
768
939
  This release adds a tool which generates test benches, and adds support for "Behavior Driven Development":http://behaviour-driven.org via the "RSpec":http://rspec.rubyforge.org library.
769
940
 
770
- Acknowledgment: |
771
- * Thanks to Scott L Holmes for helping me "use the RSpec library without its runner":http://article.gmane.org/gmane.comp.lang.ruby.general/150087 program.
772
941
 
773
- Details: |
942
+ h2. Thanks
943
+
944
+ * Scott L Holmes helped me "use the RSpec library without its runner":http://article.gmane.org/gmane.comp.lang.ruby.general/150087 program.
945
+
946
+
947
+ h2. Details
948
+
774
949
  * A tool, which generates most of a Ruby-VPI test bench from a Verilog 2001 module declaration, has been added.
775
950
 
776
951
  * Ability to use RSpec in a test bench has been added.
@@ -787,13 +962,17 @@
787
962
 
788
963
  Date: 2006-04-28
789
964
 
790
- Summary: |
965
+ Record: |
791
966
  This release adds simple ways of reading and writing values to VPI handles, adds documentation for the VPI utility layer, and fixes the pipelined ALU example.
792
967
 
793
- Notice: |
968
+
969
+ h2. Caution
970
+
794
971
  * The *msim* Makefile target for Mentor Modelsim has been renamed back to *vsim*.
795
972
 
796
- Details: |
973
+
974
+ h2. Details
975
+
797
976
  * Simple, consistent ways of reading and writing values to handles have been added to the VPI utility layer. These ways are described in the @SWIG::TYPE_p_unsigned_int@ class' documentation.
798
977
 
799
978
  * The makefiles now use the *rbconfig* library to determine the default compiler and linker flags for Ruby.
@@ -814,16 +993,22 @@
814
993
 
815
994
  Date: 2006-04-23
816
995
 
817
- Summary: |
996
+ Record: |
818
997
  This release adds support for the _entire_ "IEEE Std. 1364-2005":http://ieeexplore.ieee.org/xpl/standardstoc.jsp?isnumber=33945 VPI interface, and updates the examples into unit tests.
819
998
 
820
- Acknowledgment: |
821
- * Thanks to the "SWIG developers":http://www.swig.org/guilty.html for making this project _much_ easier! ;-)
822
999
 
823
- Notice: |
1000
+ h2. Thanks
1001
+
1002
+ * The "SWIG developers":http://www.swig.org/guilty.html made this project _much_ easier! ;-)
1003
+
1004
+
1005
+ h2. Caution
1006
+
824
1007
  * The *vsim* Makefile target for Mentor Modelsim has been renamed to *msim*.
825
1008
 
826
- Details: |
1009
+
1010
+ h2. Details
1011
+
827
1012
  * The Ruby interface to VPI is now generated by "SWIG":http://www.swig.org.
828
1013
  ** The main @VPI@ module has been renamed to @Vpi@.
829
1014
  ** The @VPI::Handle@ class has been removed.
@@ -847,16 +1032,22 @@
847
1032
 
848
1033
  Date: 2006-04-17
849
1034
 
850
- Summary: |
1035
+ Record: |
851
1036
  This release fixes major bugs, adds support for Mentor Modelsim, and removes the @$ruby_task@ callback.
852
1037
 
853
- Acknowledgment: |
854
- * Thanks to Nobu Nakada for explaining the "cross-thread violation on rb_gc()":http://article.gmane.org/gmane.comp.lang.ruby.general/146653 error.
855
1038
 
856
- Notice: |
1039
+ h2. Thanks
1040
+
1041
+ * Nobu Nakada explained the "cross-thread violation on rb_gc()":http://article.gmane.org/gmane.comp.lang.ruby.general/146653 error.
1042
+
1043
+
1044
+ h2. Caution
1045
+
857
1046
  * Removed @$ruby_task@ callback and ability to dynamically register system tasks from Ruby because inter-process communication is complicated at present.
858
1047
 
859
- Details: |
1048
+
1049
+ h2. Details
1050
+
860
1051
  * The "cross-thread violation on rb_gc()" error has been fixed.
861
1052
  ** The "stack level too deep (SystemStackError)" error has been fixed.
862
1053
  ** The test/unit library can be used in Ruby test bench.
@@ -875,18 +1066,22 @@
875
1066
 
876
1067
  Date: 2006-02-26
877
1068
 
878
- Summary: |
1069
+ Record: |
879
1070
  This release adds enough Verilog VPI functionality to make Ruby-VPI usable for simple test benches:
880
1071
  * access Verilog objects through VPI handles
881
1072
  * read and change VPI handle values
882
1073
  * stop, finish, restart the simulation
883
1074
 
884
- Acknowledgment: |
885
- * Thanks to Jose Renau for helping me debug how Synopsys VCS works with Verilog VPI. The problem was that VCS required calltf signatures to be @void (*)(void)@, whereas the Verilog standard defines a calltf signature as @PLI_INT32 (*)(PLI_BYTE8*)@.
886
1075
 
887
- * Thanks to Ross Bamford, Eric Hodel, and Yukihiro Matsumoto for "helping me discover":http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/180662 why the @SystemStackError@ was happening.
1076
+ h2. Thanks
1077
+
1078
+ * Jose Renau helped me debug how Synopsys VCS works with Verilog VPI. The problem was that VCS required calltf signatures to be @void (*)(void)@, whereas the Verilog standard defines a calltf signature as @PLI_INT32 (*)(PLI_BYTE8*)@.
1079
+
1080
+ * Ross Bamford, Eric Hodel, and Yukihiro Matsumoto "helped me discover":http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/180662 why the @SystemStackError@ was happening.
1081
+
1082
+
1083
+ h2. Details
888
1084
 
889
- Details: |
890
1085
  * Implemented some Verilog VPI functionality:
891
1086
  ** @VPI::handle_by_name(string, VPI::Handle)@ &rarr; @VPI::Handle@
892
1087
  ** @VPI::handle_by_name(string)@ &rarr; @VPI::Handle@
@@ -917,10 +1112,12 @@
917
1112
 
918
1113
  Date: 1999-10-31
919
1114
 
920
- Summary: |
1115
+ Record: |
921
1116
  This is Kazuhiro HIWADA's initial testing release of Ruby-VPI. See its "original announcement":http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/18193 and "source code":http://rubyforge.org/frs/?group_id=1339&release_id=8852.
922
1117
 
923
- Details: |
1118
+
1119
+ h2. Details
1120
+
924
1121
  * Added ability to relay control from Verilog test bench to Ruby (using @$ruby_callback@) and vice versa (using @PLI::relay_Verilog@).
925
1122
 
926
1123
  * Tested and developed using Ruby 1.4 and Verilog-XL from Cadence systems, on a SPARC machine running Solaris 2.6.