ruby-vpi 16.0.1 → 17.0.0

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.
Files changed (247) hide show
  1. data/LICENSE +19 -19
  2. data/README +1 -1
  3. data/Rakefile +35 -32
  4. data/bin/convert.rb +28 -0
  5. data/bin/generate/design.rb +16 -0
  6. data/bin/generate/proto.rb +13 -0
  7. data/bin/generate/runner.rake +33 -0
  8. data/bin/generate/spec.rb +45 -0
  9. data/bin/generate.rb +177 -0
  10. data/bin/ruby-vpi +56 -0
  11. data/doc/Rakefile +20 -4
  12. data/doc/common.css +92 -33
  13. data/doc/common.inc +13 -0
  14. data/doc/common.tpl +42 -28
  15. data/doc/history.doc +11 -11
  16. data/doc/history.html +769 -248
  17. data/doc/history.inc +909 -0
  18. data/doc/history.rb +9 -0
  19. data/doc/history.yaml +69 -0
  20. data/doc/intro.inc +170 -178
  21. data/doc/lib/doc_format.rb +57 -144
  22. data/doc/lib/doc_proxy.rb +504 -88
  23. data/doc/lib/erb_content.rb +8 -8
  24. data/doc/lib/erb_proxy.rb +17 -17
  25. data/doc/manual.doc +626 -777
  26. data/doc/manual.html +1541 -1031
  27. data/doc/memo.doc +38 -36
  28. data/doc/memo.html +64 -28
  29. data/doc/readme.doc +4 -31
  30. data/doc/readme.html +221 -163
  31. data/doc/rss.erb +1 -1
  32. data/doc/rss.xml +73 -1761
  33. data/ext/Rakefile +6 -5
  34. data/ext/main.c +17 -15
  35. data/ext/relay.c +4 -7
  36. data/ext/relay.h +2 -2
  37. data/ext/swig_vpi.h +2 -2
  38. data/ext/swig_vpi.i +1 -2
  39. data/ext/swig_wrap.cin +12 -16
  40. data/ext/vlog.c +5 -5
  41. data/ext/vlog.h +2 -2
  42. data/lib/ruby-vpi/erb.rb +3 -3
  43. data/lib/ruby-vpi/float.rb +2 -2
  44. data/lib/ruby-vpi/rcov.rb +5 -7
  45. data/lib/ruby-vpi/runner.rb +43 -41
  46. data/lib/ruby-vpi/runner_boot_loader.rb +117 -0
  47. data/lib/ruby-vpi/runner_proxy.rb +6 -8
  48. data/lib/ruby-vpi/util.rb +10 -0
  49. data/lib/ruby-vpi/verilog_parser.rb +28 -56
  50. data/lib/ruby-vpi/vpi.rb +168 -123
  51. data/lib/ruby-vpi.rb +22 -143
  52. data/ref/c/annotated.html +1 -1
  53. data/ref/c/common_8h.html +1 -1
  54. data/ref/c/files.html +1 -1
  55. data/ref/c/functions.html +1 -1
  56. data/ref/c/functions_vars.html +1 -1
  57. data/ref/c/globals.html +1 -1
  58. data/ref/c/globals_0x63.html +1 -1
  59. data/ref/c/globals_0x65.html +1 -1
  60. data/ref/c/globals_0x66.html +1 -1
  61. data/ref/c/globals_0x6d.html +1 -1
  62. data/ref/c/globals_0x70.html +1 -1
  63. data/ref/c/globals_0x72.html +1 -1
  64. data/ref/c/globals_0x73.html +1 -1
  65. data/ref/c/globals_0x74.html +1 -1
  66. data/ref/c/globals_0x76.html +1 -1
  67. data/ref/c/globals_0x78.html +1 -1
  68. data/ref/c/globals_defs.html +1 -1
  69. data/ref/c/globals_defs_0x65.html +1 -1
  70. data/ref/c/globals_defs_0x70.html +1 -1
  71. data/ref/c/globals_defs_0x76.html +1 -1
  72. data/ref/c/globals_defs_0x78.html +1 -1
  73. data/ref/c/globals_enum.html +1 -1
  74. data/ref/c/globals_eval.html +1 -1
  75. data/ref/c/globals_func.html +1 -1
  76. data/ref/c/globals_type.html +1 -1
  77. data/ref/c/globals_vars.html +1 -1
  78. data/ref/c/index.html +1 -1
  79. data/ref/c/main_8c.html +1 -1
  80. data/ref/c/main_8h.html +1 -1
  81. data/ref/c/relay_8c.html +1 -1
  82. data/ref/c/relay_8h.html +1 -1
  83. data/ref/c/structt__cb__data.html +1 -1
  84. data/ref/c/structt__vpi__delay.html +1 -1
  85. data/ref/c/structt__vpi__error__info.html +1 -1
  86. data/ref/c/structt__vpi__strengthval.html +1 -1
  87. data/ref/c/structt__vpi__systf__data.html +1 -1
  88. data/ref/c/structt__vpi__time.html +1 -1
  89. data/ref/c/structt__vpi__value.html +1 -1
  90. data/ref/c/structt__vpi__vecval.html +1 -1
  91. data/ref/c/structt__vpi__vlog__info.html +1 -1
  92. data/ref/c/verilog_8h.html +1 -1
  93. data/ref/c/vlog_8c.html +1 -1
  94. data/ref/c/vlog_8h.html +1 -1
  95. data/ref/c/vpi__user_8h.html +1 -1
  96. data/ref/ruby/classes/ERB.html +5 -5
  97. data/ref/ruby/classes/ERB.src/{M000024.html → M000026.html} +0 -0
  98. data/ref/ruby/classes/FileUtils.html +11 -11
  99. data/ref/ruby/classes/FileUtils.src/{M000025.html → M000027.html} +0 -0
  100. data/ref/ruby/classes/FileUtils.src/{M000026.html → M000028.html} +0 -0
  101. data/ref/ruby/classes/Float.html +6 -6
  102. data/ref/ruby/classes/Float.src/{M000020.html → M000021.html} +0 -0
  103. data/ref/ruby/classes/Integer.html +65 -65
  104. data/ref/ruby/classes/Integer.src/M000009.html +12 -5
  105. data/ref/ruby/classes/Integer.src/M000010.html +5 -5
  106. data/ref/ruby/classes/Integer.src/M000011.html +5 -5
  107. data/ref/ruby/classes/Integer.src/M000012.html +5 -5
  108. data/ref/ruby/classes/Integer.src/M000013.html +5 -5
  109. data/ref/ruby/classes/Integer.src/M000014.html +18 -0
  110. data/ref/ruby/classes/Integer.src/M000017.html +12 -18
  111. data/ref/ruby/classes/Integer.src/M000018.html +18 -12
  112. data/ref/ruby/classes/Integer.src/M000019.html +12 -17
  113. data/ref/ruby/classes/Integer.src/M000020.html +30 -0
  114. data/ref/ruby/classes/RDoc.html +5 -5
  115. data/ref/ruby/classes/RDoc.src/{M000053.html → M000058.html} +0 -0
  116. data/ref/ruby/classes/{RubyVpi/Config.html → RubyVPI.html} +20 -6
  117. data/ref/ruby/classes/String.html +34 -15
  118. data/ref/ruby/classes/String.src/M000022.html +5 -28
  119. data/ref/ruby/classes/String.src/M000023.html +5 -5
  120. data/ref/ruby/classes/String.src/{M000021.html → M000024.html} +0 -0
  121. data/ref/ruby/classes/String.src/M000025.html +41 -0
  122. data/ref/ruby/classes/VerilogParser/Module/Port.html +16 -36
  123. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000006.html +10 -5
  124. data/ref/ruby/classes/VerilogParser/Module/Port.src/{M000004.html → M000007.html} +4 -4
  125. data/ref/ruby/classes/VerilogParser/Module/Port.src/{M000005.html → M000008.html} +4 -4
  126. data/ref/ruby/classes/VerilogParser/Module.html +28 -9
  127. data/ref/ruby/classes/VerilogParser/Module.src/M000005.html +29 -0
  128. data/ref/ruby/classes/VerilogParser.html +5 -39
  129. data/ref/ruby/classes/VerilogParser.src/M000004.html +26 -0
  130. data/ref/ruby/classes/Vpi/Handle.html +179 -77
  131. data/ref/ruby/classes/Vpi/Handle.src/M000035.html +18 -0
  132. data/ref/ruby/classes/Vpi/Handle.src/M000036.html +5 -5
  133. data/ref/ruby/classes/Vpi/Handle.src/M000037.html +5 -5
  134. data/ref/ruby/classes/Vpi/Handle.src/M000038.html +5 -5
  135. data/ref/ruby/classes/Vpi/Handle.src/M000039.html +5 -5
  136. data/ref/ruby/classes/Vpi/Handle.src/M000040.html +5 -8
  137. data/ref/ruby/classes/Vpi/Handle.src/M000041.html +5 -8
  138. data/ref/ruby/classes/Vpi/Handle.src/M000042.html +5 -9
  139. data/ref/ruby/classes/Vpi/Handle.src/M000043.html +8 -31
  140. data/ref/ruby/classes/Vpi/Handle.src/M000044.html +8 -74
  141. data/ref/ruby/classes/Vpi/Handle.src/M000045.html +9 -17
  142. data/ref/ruby/classes/Vpi/Handle.src/M000046.html +31 -11
  143. data/ref/ruby/classes/Vpi/Handle.src/M000047.html +86 -0
  144. data/ref/ruby/classes/Vpi/Handle.src/M000048.html +17 -18
  145. data/ref/ruby/classes/Vpi/Handle.src/M000050.html +18 -0
  146. data/ref/ruby/classes/Vpi/Handle.src/M000051.html +24 -0
  147. data/ref/ruby/classes/Vpi/Handle.src/M000053.html +31 -0
  148. data/ref/ruby/classes/Vpi/Handle.src/M000054.html +89 -0
  149. data/ref/ruby/classes/Vpi/S_vpi_time.html +16 -16
  150. data/ref/ruby/classes/Vpi/S_vpi_time.src/{M000050.html → M000055.html} +4 -4
  151. data/ref/ruby/classes/Vpi/S_vpi_time.src/{M000051.html → M000056.html} +5 -5
  152. data/ref/ruby/classes/Vpi/S_vpi_value.html +15 -15
  153. data/ref/ruby/classes/Vpi/S_vpi_value.src/{M000035.html → M000032.html} +5 -5
  154. data/ref/ruby/classes/Vpi/S_vpi_value.src/M000033.html +5 -5
  155. data/ref/ruby/classes/Vpi/S_vpi_value.src/M000034.html +5 -5
  156. data/ref/ruby/classes/Vpi.html +6 -42
  157. data/ref/ruby/classes/Vpi.src/M000029.html +15 -5
  158. data/ref/ruby/classes/Vpi.src/M000030.html +24 -24
  159. data/ref/ruby/classes/Vpi.src/M000031.html +6 -8
  160. data/ref/ruby/created.rid +1 -1
  161. data/ref/ruby/files/bin/{header_to_ruby_rb.html → convert_rb.html} +5 -5
  162. data/ref/ruby/files/bin/{generate_test_rb.html → generate_rb.html} +8 -21
  163. data/ref/ruby/files/lib/ruby-vpi/erb_rb.html +1 -1
  164. data/ref/ruby/files/lib/ruby-vpi/float_rb.html +1 -1
  165. data/ref/ruby/files/lib/ruby-vpi/integer_rb.html +1 -1
  166. data/ref/ruby/files/lib/ruby-vpi/rake_rb.html +1 -1
  167. data/ref/ruby/files/lib/ruby-vpi/rcov_rb.html +1 -1
  168. data/ref/ruby/files/lib/ruby-vpi/rdoc_rb.html +1 -1
  169. data/ref/ruby/files/lib/ruby-vpi/runner_boot_loader_rb.html +197 -0
  170. data/ref/ruby/files/lib/ruby-vpi/runner_boot_loader_rb.src/M000001.html +17 -0
  171. data/ref/ruby/files/lib/ruby-vpi/runner_boot_loader_rb.src/M000002.html +18 -0
  172. data/ref/ruby/files/lib/ruby-vpi/runner_proxy_rb.html +1 -1
  173. data/ref/ruby/files/lib/ruby-vpi/runner_rb.html +6 -19
  174. data/ref/ruby/files/lib/ruby-vpi/util_rb.html +101 -0
  175. data/ref/ruby/files/lib/ruby-vpi/verilog_parser_rb.html +8 -1
  176. data/ref/ruby/files/lib/ruby-vpi/vpi_rb.html +1 -1
  177. data/ref/ruby/files/lib/ruby-vpi_rb.html +2 -14
  178. data/ref/ruby/fr_class_index.html +1 -3
  179. data/ref/ruby/fr_file_index.html +4 -2
  180. data/ref/ruby/fr_method_index.html +56 -51
  181. data/ref/ruby/index.html +1 -1
  182. data/samp/counter/RSpec/Rakefile +1 -0
  183. data/samp/counter/RSpec/counter_design.rb +15 -0
  184. data/samp/counter/RSpec/counter_proto.rb +10 -0
  185. data/samp/counter/RSpec/counter_runner.rake +44 -0
  186. data/samp/counter/RSpec/counter_spec.rb +39 -0
  187. data/samp/counter/Rakefile +1 -1
  188. data/samp/counter/counter.v +7 -7
  189. data/samp/counter/xUnit/Rakefile +1 -0
  190. data/samp/counter/xUnit/counter_bench.rb +95 -0
  191. data/samp/counter/{counter_xunit_bench.v → xUnit/counter_bench.v} +0 -0
  192. data/samp/counter/xUnit/counter_design.rb +15 -0
  193. data/samp/counter/xUnit/counter_proto.rb +10 -0
  194. data/samp/counter/xUnit/counter_runner.rake +44 -0
  195. data/samp/counter/{counter_xunit_spec.rb → xUnit/counter_spec.rb} +9 -9
  196. data/samp/pipelined_alu/Rakefile +1 -1
  197. data/samp/pipelined_alu/TestHw5UnitModel.rb +4 -5
  198. data/samp/pipelined_alu/hw5_unit.v +55 -85
  199. data/samp/pipelined_alu/hw5_unit_design.rb +51 -0
  200. data/samp/pipelined_alu/hw5_unit_proto.rb +4 -0
  201. data/samp/pipelined_alu/hw5_unit_runner.rake +43 -0
  202. data/samp/pipelined_alu/hw5_unit_spec.rb +64 -0
  203. data/samp/register_file/LICENSE +20 -0
  204. data/samp/register_file/README +4 -0
  205. data/samp/register_file/Rakefile +1 -0
  206. data/samp/register_file/register_file.v +18 -0
  207. data/samp/register_file/register_file_design.rb +11 -0
  208. data/samp/register_file/register_file_proto.rb +11 -0
  209. data/samp/register_file/register_file_runner.rake +43 -0
  210. data/samp/register_file/register_file_spec.rb +58 -0
  211. metadata +78 -66
  212. data/bin/generate_test.rb +0 -200
  213. data/bin/generate_test_tpl/bench.rb +0 -89
  214. data/bin/generate_test_tpl/bench.v +0 -26
  215. data/bin/generate_test_tpl/design.rb +0 -11
  216. data/bin/generate_test_tpl/proto.rb +0 -16
  217. data/bin/generate_test_tpl/runner.rake +0 -42
  218. data/bin/generate_test_tpl/spec.rb +0 -37
  219. data/bin/header_to_ruby.rb +0 -27
  220. data/ref/ruby/classes/Integer.src/M000008.html +0 -25
  221. data/ref/ruby/classes/Integer.src/M000016.html +0 -25
  222. data/ref/ruby/classes/RubyVpi.html +0 -199
  223. data/ref/ruby/classes/RubyVpi.src/M000027.html +0 -121
  224. data/ref/ruby/classes/VerilogParser/Module/Parameter.html +0 -160
  225. data/ref/ruby/classes/VerilogParser/Module/Parameter.src/M000007.html +0 -19
  226. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000003.html +0 -21
  227. data/ref/ruby/classes/VerilogParser/Module.src/M000002.html +0 -34
  228. data/ref/ruby/classes/VerilogParser.src/M000001.html +0 -34
  229. data/ref/ruby/classes/Vpi/Handle.src/M000049.html +0 -69
  230. data/ref/ruby/classes/Vpi.src/M000028.html +0 -28
  231. data/ref/ruby/classes/Vpi.src/M000032.html +0 -22
  232. data/samp/counter/counter_rspec_bench.rb +0 -86
  233. data/samp/counter/counter_rspec_bench.v +0 -9
  234. data/samp/counter/counter_rspec_design.rb +0 -8
  235. data/samp/counter/counter_rspec_proto.rb +0 -13
  236. data/samp/counter/counter_rspec_runner.rake +0 -52
  237. data/samp/counter/counter_rspec_spec.rb +0 -39
  238. data/samp/counter/counter_xunit_bench.rb +0 -86
  239. data/samp/counter/counter_xunit_design.rb +0 -8
  240. data/samp/counter/counter_xunit_proto.rb +0 -13
  241. data/samp/counter/counter_xunit_runner.rake +0 -52
  242. data/samp/pipelined_alu/hw5_unit_test_bench.rb +0 -86
  243. data/samp/pipelined_alu/hw5_unit_test_bench.v +0 -14
  244. data/samp/pipelined_alu/hw5_unit_test_design.rb +0 -61
  245. data/samp/pipelined_alu/hw5_unit_test_proto.rb +0 -7
  246. data/samp/pipelined_alu/hw5_unit_test_runner.rake +0 -52
  247. data/samp/pipelined_alu/hw5_unit_test_spec.rb +0 -68
data/doc/history.html CHANGED
@@ -8,52 +8,203 @@
8
8
  <title>Release history</title>
9
9
  </head>
10
10
  <body>
11
- <h1 style="margin-top: 0">Release history</h1>
11
+ <div id="toc-links">
12
+ <a href="#toc:contents">Contents</a> &middot;
13
+
14
+ <a href="readme.html" style="color: green; font-size: larger;">Home page</a>
15
+ </div>
16
+
17
+ <div id="body">
18
+ <hr style="display: none"/>
19
+
20
+ <div id="Release_history" class="front_cover">
21
+ <h1 class="title"><big>Release history</big></h1>
22
+
23
+ <p>This is a record of important changes that have occurred with each release.</p>
24
+
25
+
26
+ <p>
27
+ <div id="Version_numbering_system" class="paragraph">
28
+ <p class="title">Version numbering system</p>
29
+ Ruby-VPI uses the <a href="http://www.rubygems.org/read/chapter/7">RubyGems rational versioning policy</a> to number its releases. This &#8220;major.minor.build&#8221; numbering policy <a href="http://ablog.apress.com/?p=738">is summarized</a> as follows.
30
+
31
+
32
+ <ul>
33
+ <li>When the <strong>major</strong> number increases, functionally <em>incompatible changes</em> have occurred. Thus, what may have worked in the previous version may not work in the new one.</li>
34
+ </ul>
35
+
36
+
37
+ <ul>
38
+ <li>When the <strong>minor</strong> number increases, functionally <em>compatible changes</em> have occurred. Thus, what worked in the previous version will work in the new one.</li>
39
+ </ul>
12
40
 
13
- <p style="text-align:center;"><a href="readme.html"><img src="images/tango/home.png" title="Return to main page" alt="Return to main page" /></a></p>
14
41
 
15
- <div id="menu">
16
- <a href="#index">Contents</a>
42
+ <ul>
43
+ <li>When the <strong>build</strong> number increases, the <em>underlying implementation</em> has changed. The functionality has not changed and no features have been added. Thus, what worked in the previous version will work in the new one.</li>
44
+ </ul>
17
45
  </div>
46
+ </p>
18
47
 
19
- <div id="index">
20
- <h1>Contents</h1>
21
- <ul><li><a id="a-607191348" href="#Release_history">Release history</a><ul><li><a id="a-607192548" href="#Version_numbering_system">Version numbering system</a></li></ul></li><li><a id="a-607193858" href="#a16.0.1">Version 16.0.1 (2007-05-27)</a><ul><li><a id="a-607194788" href="#Thanks">Thanks</a></li><li><a id="a-607195618" href="#Repairs">Repairs</a></li></ul></li><li><a id="a-607196608" href="#a16.0.0">Version 16.0.0 (2007-05-02)</a><ul><li><a id="a-607197528" href="#Caution">Caution</a></li><li><a id="a-607198388" href="#New_features">New features</a></li><li><a id="a-607199328" href="#Details">Details</a></li></ul></li><li><a id="a-607200328" href="#a15.0.2">Version 15.0.2 (2007-01-22)</a><ul><li><a id="a-607201258" href="#Details-607201258">Details</a></li></ul></li><li><a id="a-607202268" href="#a15.0.1">Version 15.0.1 (2007-01-15)</a><ul><li><a id="a-607203198" href="#Thanks-607203198">Thanks</a></li><li><a id="a-607204028" href="#Details-607204028">Details</a></li></ul></li><li><a id="a-607205048" href="#a15.0.0">Version 15.0.0 (2007-01-13)</a><ul><li><a id="a-607205978" href="#Thanks-607205978">Thanks</a></li><li><a id="a-607206808" href="#Caution-607206808">Caution</a><ul><li><a id="a-607207738" href="#New_features-607207738">New features</a></li></ul></li><li><a id="a-607208788" href="#Details-607208788">Details</a></li></ul></li><li><a id="a-607209788" href="#a14.0.0">Version 14.0.0 (2006-12-30)</a><ul><li><a id="a-607210708" href="#Caution-607210708">Caution</a><ul><li><a id="a-607211658" href="#New_features-607211658">New features</a></li></ul></li><li><a id="a-607212698" href="#Details-607212698">Details</a></li></ul></li><li><a id="a-607213708" href="#a13.0.0">Version 13.0.0 (2006-12-27)</a><ul><li><a id="a-607214628" href="#Caution-607214628">Caution</a><ul><li><a id="a-607215558" href="#New_features-607215558">New features</a></li></ul></li><li><a id="a-607216618" href="#Details-607216618">Details</a></li></ul></li><li><a id="a-607217618" href="#a12.1.0">Version 12.1.0 (2006-12-22)</a><ul><li><a id="a-607218548" href="#Caution-607218548">Caution</a><ul><li><a id="a-607219478" href="#New_features-607219478">New features</a></li></ul></li><li><a id="a-607220518" href="#Details-607220518">Details</a></li></ul></li><li><a id="a-607221528" href="#a12.0.2">Version 12.0.2 (2006-12-18)</a></li><li><a id="a-607222458" href="#a12.0.1">Version 12.0.1 (2006-12-18)</a><ul><li><a id="a-607223388" href="#Thanks-607223388">Thanks</a></li><li><a id="a-607224218" href="#Details-607224218">Details</a></li></ul></li><li><a id="a-607225218" href="#a12.0.0">Version 12.0.0 (2006-12-07)</a><ul><li><a id="a-607226148" href="#Caution-607226148">Caution</a></li><li><a id="a-607227008" href="#Details-607227008">Details</a><ul><li><a id="a-607227938" href="#Test_generation">Test generation</a></li></ul></li></ul></li><li><a id="a-607229098" href="#a11.1.1">Version 11.1.1 (2006-11-15)</a><ul><li><a id="a-607230028" href="#Thanks-607230028">Thanks</a></li><li><a id="a-607230858" href="#Caution-607230858">Caution</a></li><li><a id="a-607231728" href="#Details-607231728">Details</a></li></ul></li><li><a id="a-607232728" href="#a11.1.0">Version 11.1.0 (2006-11-08)</a><ul><li><a id="a-607233658" href="#Thanks-607233658">Thanks</a></li><li><a id="a-607234488" href="#Caution-607234488">Caution</a></li><li><a id="a-607235348" href="#Details-607235348">Details</a></li></ul></li><li><a id="a-607236368" href="#a11.0.0">Version 11.0.0 (2006-11-05)</a><ul><li><a id="a-607237288" href="#Caution-607237288">Caution</a></li><li><a id="a-607238148" href="#Details-607238148">Details</a></li></ul></li><li><a id="a-607239158" href="#a10.0.0">Version 10.0.0 (2006-11-05)</a><ul><li><a id="a-607240088" href="#Thanks-607240088">Thanks</a></li><li><a id="a-607240918" href="#Caution-607240918">Caution</a></li><li><a id="a-607241778" href="#Details-607241778">Details</a><ul><li><a id="a-607242708" href="#Automated_test_generator">Automated test generator</a></li><li><a id="a-607243908" href="#User_manual">User manual</a></li></ul></li></ul></li><li><a id="a-607244998" href="#a9.0.0">Version 9.0.0 (2006-10-28)</a><ul><li><a id="a-607245908" href="#Thanks-607245908">Thanks</a></li><li><a id="a-607246738" href="#Caution-607246738">Caution</a></li><li><a id="a-607247598" href="#Details-607247598">Details</a></li></ul></li><li><a id="a-607248608" href="#a8.2.0">Version 8.2.0 (2006-10-24)</a><ul><li><a id="a-607249508" href="#Thanks-607249508">Thanks</a></li><li><a id="a-607250338" href="#Caution-607250338">Caution</a></li><li><a id="a-607251218" href="#Details-607251218">Details</a></li></ul></li><li><a id="a-607252228" href="#a8.1.0">Version 8.1.0 (2006-10-21)</a><ul><li><a id="a-607253118" href="#Caution-607253118">Caution</a></li><li><a id="a-607253988" href="#Details-607253988">Details</a></li></ul></li><li><a id="a-607254998" href="#a8.0.0">Version 8.0.0 (2006-10-13)</a><ul><li><a id="a-607255888" href="#Caution-607255888">Caution</a></li><li><a id="a-607256748" href="#Details-607256748">Details</a></li></ul></li><li><a id="a-607257768" href="#a7.3.0">Version 7.3.0 (2006-09-30)</a><ul><li><a id="a-607258658" href="#Caution-607258658">Caution</a></li><li><a id="a-607259528" href="#Details-607259528">Details</a></li></ul></li><li><a id="a-607260548" href="#a7.2.0">Version 7.2.0 (2006-09-15)</a><ul><li><a id="a-607261448" href="#Thanks-607261448">Thanks</a></li><li><a id="a-607262278" href="#Details-607262278">Details</a></li></ul></li><li><a id="a-607263298" href="#a7.1.0">Version 7.1.0 (2006-08-29)</a><ul><li><a id="a-607264178" href="#Details-607264178">Details</a></li></ul></li><li><a id="a-607265198" href="#a7.0.0">Version 7.0.0 (2006-08-29)</a><ul><li><a id="a-607266088" href="#Caution-607266088">Caution</a></li><li><a id="a-607266948" href="#Details-607266948">Details</a></li></ul></li><li><a id="a-607267958" href="#a6.3.0">Version 6.3.0 (2006-08-27)</a><ul><li><a id="a-607268858" href="#Caution-607268858">Caution</a></li><li><a id="a-607269728" href="#Details-607269728">Details</a></li></ul></li><li><a id="a-607270738" href="#a6.2.0">Version 6.2.0 (2006-08-26)</a><ul><li><a id="a-607271638" href="#Caution-607271638">Caution</a></li><li><a id="a-607272498" href="#Details-607272498">Details</a></li></ul></li><li><a id="a-607273508" href="#a6.1.0">Version 6.1.0 (2006-08-09)</a><ul><li><a id="a-607274398" href="#Details-607274398">Details</a></li></ul></li><li><a id="a-607275418" href="#a6.0.0">Version 6.0.0 (2006-08-07)</a><ul><li><a id="a-607276308" href="#Caution-607276308">Caution</a></li><li><a id="a-607277168" href="#Details-607277168">Details</a></li></ul></li><li><a id="a-607278188" href="#a5.1.1">Version 5.1.1 (2006-08-04)</a><ul><li><a id="a-607279088" href="#Thanks-607279088">Thanks</a></li><li><a id="a-607279908" href="#Details-607279908">Details</a></li></ul></li><li><a id="a-607280928" href="#a5.1.0">Version 5.1.0 (2006-07-29)</a><ul><li><a id="a-607281838" href="#Thanks-607281838">Thanks</a></li><li><a id="a-607282658" href="#Details-607282658">Details</a><ul><li><a id="a-607283568" href="#User_manual-607283568">User manual</a></li><li><a id="a-607284508" href="#Examples">Examples</a></li><li><a id="a-607285388" href="#a_span_class__caps__VPI__span__utility_layer"><span class="caps">VPI</span> utility layer</a></li></ul></li></ul></li><li><a id="a-607287108" href="#a5.0.0">Version 5.0.0 (2006-07-22)</a><ul><li><a id="a-607288008" href="#Thanks-607288008">Thanks</a></li><li><a id="a-607288858" href="#Caution-607288858">Caution</a></li><li><a id="a-607289718" href="#Details-607289718">Details</a></li></ul></li><li><a id="a-607290728" href="#a4.0.0">Version 4.0.0 (2006-05-25)</a><ul><li><a id="a-607291638" href="#Thanks-607291638">Thanks</a></li><li><a id="a-607292468" href="#Caution-607292468">Caution</a></li><li><a id="a-607293338" href="#Details-607293338">Details</a></li></ul></li><li><a id="a-607294368" href="#a3.2.0">Version 3.2.0 (2006-05-13)</a><ul><li><a id="a-607295278" href="#Thanks-607295278">Thanks</a></li><li><a id="a-607296118" href="#Details-607296118">Details</a></li></ul></li><li><a id="a-607297138" href="#a3.1.0">Version 3.1.0 (2006-04-28)</a><ul><li><a id="a-607298038" href="#Caution-607298038">Caution</a></li><li><a id="a-607298918" href="#Details-607298918">Details</a></li></ul></li><li><a id="a-607300288" href="#a3.0.0">Version 3.0.0 (2006-04-23)</a><ul><li><a id="a-607301458" href="#Thanks-607301458">Thanks</a></li><li><a id="a-607304218" href="#Caution-607304218">Caution</a></li><li><a id="a-607307438" href="#Details-607307438">Details</a></li></ul></li><li><a id="a-607308988" href="#a2.0.0">Version 2.0.0 (2006-04-17)</a><ul><li><a id="a-607309908" href="#Thanks-607309908">Thanks</a></li><li><a id="a-607310738" href="#Caution-607310738">Caution</a></li><li><a id="a-607311598" href="#Details-607311598">Details</a></li></ul></li><li><a id="a-607312618" href="#a1.0.0">Version 1.0.0 (2006-02-26)</a><ul><li><a id="a-607313518" href="#Thanks-607313518">Thanks</a></li><li><a id="a-607314348" href="#Details-607314348">Details</a></li></ul></li><li><a id="a-607315358" href="#a0.0.0">Version 0.0.0 (1999-10-31)</a><ul><li><a id="a-607316258" href="#Details-607316258">Details</a></li></ul></li></ul>
48
+ </div>
49
+
22
50
 
23
- </div>
24
- <h1><a id="Release_history" href="#a-607191348">1</a> &nbsp; Release history</h1>
51
+ <hr style="display: none"/>
25
52
 
53
+ <div id="a17.0.0" class="section">
54
+ <h1 class="title">
55
+ <a href="#a-607354788">2</a>
26
56
 
27
- <p>This is a record of important changes that have occurred with each release.</p>
57
+ &nbsp;
28
58
 
59
+ Version 17.0.0 (2007-07-22)
60
+ </h1>
29
61
 
30
- <h2><a id="Version_numbering_system" href="#a-607192548">1.1</a> &nbsp; Version numbering system</h2>
62
+ <p>This release makes the Ruby-VPI testing framework more lightweight by reducing the number of files and parameters involved.</p>
31
63
 
32
64
 
33
- <p>Ruby-VPI uses the <a href="http://www.rubygems.org/read/chapter/7">RubyGems rational versioning policy</a> to number its releases. This &#8220;major.minor.build&#8221; numbering policy <a href="http://ablog.apress.com/?p=738">is summarized</a> as follows.</p>
65
+ <h2>Caution</h2>
34
66
 
35
67
 
36
68
  <ul>
37
- <li>When the <strong>major</strong> number increases, functionally <em>incompatible changes</em> have occurred. Thus, what may have worked in the previous version may not work in the new one.</li>
69
+ <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>
38
70
  </ul>
39
71
 
40
72
 
41
73
  <ul>
42
- <li>When the <strong>minor</strong> number increases, functionally <em>compatible changes</em> have occurred. Thus, what worked in the previous version will work in the new one.</li>
74
+ <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>
43
75
  </ul>
44
76
 
45
77
 
46
78
  <ul>
47
- <li>When the <strong>build</strong> number increases, the <em>underlying implementation</em> has changed. The functionality has not changed and no features have been added. Thus, what worked in the previous version will work in the new one.</li>
79
+ <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>
80
+ </ul>
81
+
82
+
83
+ <ul>
84
+ <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>
85
+ </ul>
86
+
87
+
88
+ <ul>
89
+ <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>
90
+ </ul>
91
+
92
+
93
+ <ul>
94
+ <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>
95
+ </ul>
96
+
97
+
98
+ <ul>
99
+ <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>
48
100
  </ul>
49
101
 
50
102
 
51
- <h1 ><a id="a16.0.1" href="#a-607193858">2</a> &nbsp; Version 16.0.1 (2007-05-27)</h1>
103
+ <ul>
104
+ <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>
105
+ </ul>
106
+
52
107
 
53
- <p>This release restores support for installation on Mac <span class="caps">OS X</span>.</p>
108
+ <ul>
109
+ <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>
110
+ </ul>
54
111
 
55
112
 
56
- <h2><a id="Thanks" href="#a-607194788">2.1</a> &nbsp; Thanks</h2>
113
+ <ul>
114
+ <li>RSpec &gt;= 1.0.0 is now required by Ruby-VPI.</li>
115
+ </ul>
116
+
117
+
118
+ <ul>
119
+ <li>The <a href="readme.html#intro.license">project license</a> has been further simplified.</li>
120
+ </ul>
121
+
122
+
123
+ <h2>Repairs</h2>
124
+
125
+
126
+ <ul>
127
+ <li>Restored support for Enumerable methods in <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span></code>.</li>
128
+ </ul>
129
+
130
+
131
+ <ul>
132
+ <li>The specification now begins to execute at simulation time 0. Previously it began at simulation time 1.</li>
133
+ </ul>
134
+
135
+
136
+ <h2>Improvements</h2>
137
+
138
+
139
+ <ul>
140
+ <li>The <tt>bench.rb</tt> and <tt>bench.v</tt> files of a generated test have been eliminated!
141
+
142
+ <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>
143
+
144
+
145
+ <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>
146
+ </ul>
147
+
148
+
149
+ <ul>
150
+ <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>
151
+ </ul>
152
+
153
+
154
+ <ul>
155
+ <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>
156
+ </ul>
157
+
158
+
159
+ <ul>
160
+ <li>The automated test generator now tries to automatically detect the clock and reset signal from Verilog module declarations.</li>
161
+ </ul>
162
+
163
+
164
+ <ul>
165
+ <li>The automated test generator now supports Verilog 95 style module declarations.</li>
166
+ </ul>
167
+
168
+
169
+ <ul>
170
+ <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>
171
+ </ul>
172
+
173
+
174
+ <ul>
175
+ <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>
176
+ </ul>
177
+
178
+
179
+ <ul>
180
+ <li>Revised the user manual by removing unnecessary sections and adding newer material from my master&#8217;s thesis.</li>
181
+ </ul>
182
+
183
+
184
+ <h2>Contributions</h2>
185
+
186
+
187
+ <ul>
188
+ <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>
189
+ </ul>
190
+
191
+ </div>
192
+
193
+ <hr style="display: none"/>
194
+
195
+ <div id="a16.0.1" class="section">
196
+ <h1 class="title">
197
+ <a href="#a-607357728">3</a>
198
+
199
+ &nbsp;
200
+
201
+ Version 16.0.1 (2007-05-27)
202
+ </h1>
203
+
204
+ This release restores support for installation on Mac <span class="caps">OS X</span>.
205
+
206
+
207
+ <h2>Thanks</h2>
57
208
 
58
209
 
59
210
  <ul>
@@ -61,20 +212,30 @@
61
212
  </ul>
62
213
 
63
214
 
64
- <h2><a id="Repairs" href="#a-607195618">2.2</a> &nbsp; Repairs</h2>
215
+ <h2>Repairs</h2>
65
216
 
66
217
 
67
218
  <ul>
68
219
  <li>Shared-object files have a file extension of <tt>.so</tt> in Linux and <tt>.bundle</tt> on Mac <span class="caps">OS X</span>. Previously, only the Linux file extension was supported.</li>
69
220
  </ul>
70
221
 
222
+ </div>
223
+
224
+ <hr style="display: none"/>
225
+
226
+ <div id="a16.0.0" class="section">
227
+ <h1 class="title">
228
+ <a href="#a-607363398">4</a>
71
229
 
72
- <h1 ><a id="a16.0.0" href="#a-607196608">3</a> &nbsp; Version 16.0.0 (2007-05-02)</h1>
230
+ &nbsp;
73
231
 
74
- <p>This release adds support for the <a href="http://www.cadence.com/products/functional_ver/nc-verilog/">Cadence NC-Sim / NC-Verilog</a> simulator, improves the project website and documentation, simplifies interaction with <span class="caps">VPI</span>, and comes with a more permissive license.</p>
232
+ Version 16.0.0 (2007-05-02)
233
+ </h1>
75
234
 
235
+ This release adds support for the <a href="http://www.cadence.com/products/functional_ver/nc-verilog/">Cadence NC-Sim / NC-Verilog</a> simulator, improves the project website and documentation, simplifies interaction with VPI, and comes with a more permissive license.
76
236
 
77
- <h2><a id="Caution" href="#a-607197528">3.1</a> &nbsp; Caution</h2>
237
+
238
+ <h2>Caution</h2>
78
239
 
79
240
 
80
241
  <ul>
@@ -97,7 +258,7 @@
97
258
  </ul>
98
259
 
99
260
 
100
- <h2><a id="New_features" href="#a-607198388">3.2</a> &nbsp; New features</h2>
261
+ <h2>New features</h2>
101
262
 
102
263
 
103
264
  <ul>
@@ -106,7 +267,7 @@
106
267
 
107
268
 
108
269
  <ul>
109
- <li><span class="caps">VPI</span> structures (whose names begin with &#8220;S_&#8221;) now allow initialization of their members through their constructor, in the style of Ruby on Rails. For example, the expression <code class="code">time = <span style="color:#036; font-weight:bold">S_vpi_time</span>.new <span style="color:#A60">:type</span> =&gt; <span style="color:#036; font-weight:bold">VpiSuppressTime</span></code> is equivalent to: <pre class="code">
270
+ <li>VPI structures (whose names begin with &#8220;S_&#8221;) now allow initialization of their members through their constructor, in the style of Ruby on Rails. For example, the expression <code class="code">time = <span style="color:#036; font-weight:bold">S_vpi_time</span>.new <span style="color:#A60">:type</span> =&gt; <span style="color:#036; font-weight:bold">VpiSuppressTime</span></code> is equivalent to: <pre class="code">
110
271
  time = <span style="color:#036; font-weight:bold">S_vpi_time</span>.new
111
272
  time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
112
273
  </pre></li>
@@ -114,19 +275,19 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
114
275
 
115
276
 
116
277
  <ul>
117
- <li>Added the <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.cbValueChange</code> method which simplifies the registration of a value-change callback for a particular <span class="caps">VPI</span> handle. For instance, the user manual&#8217;s <a href="manual.html#ex..callback">example of setting up a value-change callback</a> can now be written as follows: <pre class="code">
278
+ <li>Added the <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.cbValueChange</code> method which simplifies the registration of a value-change callback for a particular VPI handle. For instance, the user manual&#8217;s <a href="manual.html#ex..callback">example of setting up a value-change callback</a> can now be written as follows: <pre class="code">
118
279
  <span style="color:#036; font-weight:bold">Counter</span>.count.cbValueChange <span style="color:#080; font-weight:bold">do</span> |s_cb_data|
119
- puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">hello from callback! time=</span><span style="background: #eee"><span style="font-weight: bold; color: #888">#{</span>s_cb_data.time.to_i<span style="font-weight: bold; color: #888">}</span></span><span style="color:#D20"> count=</span><span style="background: #eee"><span style="font-weight: bold; color: #888">#{</span>s_cb_data.obj.intVal<span style="font-weight: bold; color: #888">}</span></span><span style="color:#710">&quot;</span></span>
280
+ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">hello from callback! time=</span><span style="background: #eee"><span style="font-weight: bold; color: #888">#{</span>s_cb_data.time.to_i<span style="font-weight: bold; color: #888">}</span></span><span style="color:#D20"> count=</span><span style="background: #eee"><span style="font-weight: bold; color: #888">#{</span>s_cb_data.obj.intVal<span style="font-weight: bold; color: #888">}</span></span><span style="color:#710">&quot;</span></span>
120
281
  <span style="color:#080; font-weight:bold">end</span>
121
282
  </pre></li>
122
283
  </ul>
123
284
 
124
285
 
125
- <h2><a id="Details" href="#a-607199328">3.3</a> &nbsp; Details</h2>
286
+ <h2>Details</h2>
126
287
 
127
288
 
128
289
  <ul>
129
- <li>Revised the project website according to the <a href="http://producingoss.com">Producing <span class="caps">OSS</span></a> guidelines.</li>
290
+ <li>Revised the project website according to the <a href="http://producingoss.com">Producing OSS</a> guidelines.</li>
130
291
  </ul>
131
292
 
132
293
 
@@ -134,31 +295,51 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
134
295
  <li>Added instructions for checking out source code and generating documentation.</li>
135
296
  </ul>
136
297
 
298
+ </div>
299
+
300
+ <hr style="display: none"/>
301
+
302
+ <div id="a15.0.2" class="section">
303
+ <h1 class="title">
304
+ <a href="#a-607366358">5</a>
305
+
306
+ &nbsp;
137
307
 
138
- <h1 ><a id="a15.0.2" href="#a-607200328">4</a> &nbsp; Version 15.0.2 (2007-01-22)</h1>
308
+ Version 15.0.2 (2007-01-22)
309
+ </h1>
139
310
 
140
- <p>This release fixes problems with linking of the C extension and installation of the gem.</p>
311
+ This release fixes problems with linking of the C extension and installation of the gem.
141
312
 
142
313
 
143
- <h2><a id="Details-607201258" href="#a-607201258">4.1</a> &nbsp; Details</h2>
314
+ <h2>Details</h2>
144
315
 
145
316
 
146
317
  <ul>
147
- <li>Added checks for <span class="caps">POSIX</span> threads &#38; Ruby libraries before creating makefile. Otherwise the <tt>.so</tt> files were not being linked to those libraries on the <span class="caps">MASC</span> machine!</li>
318
+ <li>Added checks for POSIX threads &#38; Ruby libraries before creating makefile. Otherwise the <tt>.so</tt> files were not being linked to those libraries on the MASC machine!</li>
148
319
  </ul>
149
320
 
150
321
 
151
322
  <ul>
152
- <li>The <strong>make</strong> program on the <span class="caps">MASC</span> machine does not like an empty Makefile. It was causing gem installation to fail.</li>
323
+ <li>The <strong>make</strong> program on the MASC machine does not like an empty Makefile. It was causing gem installation to fail.</li>
153
324
  </ul>
154
325
 
326
+ </div>
327
+
328
+ <hr style="display: none"/>
155
329
 
156
- <h1 ><a id="a15.0.1" href="#a-607202268">5</a> &nbsp; Version 15.0.1 (2007-01-15)</h1>
330
+ <div id="a15.0.1" class="section">
331
+ <h1 class="title">
332
+ <a href="#a-607369408">6</a>
157
333
 
158
- <p>This release fixes another problem with compilation of the C extension and improves the user documentation&#8217;s appearance.</p>
334
+ &nbsp;
159
335
 
336
+ Version 15.0.1 (2007-01-15)
337
+ </h1>
160
338
 
161
- <h2><a id="Thanks-607203198" href="#a-607203198">5.1</a> &nbsp; Thanks</h2>
339
+ This release fixes another problem with compilation of the C extension and improves the user documentation&#8217;s appearance.
340
+
341
+
342
+ <h2>Thanks</h2>
162
343
 
163
344
 
164
345
  <ul>
@@ -166,11 +347,11 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
166
347
  </ul>
167
348
 
168
349
 
169
- <h2><a id="Details-607204028" href="#a-607204028">5.2</a> &nbsp; Details</h2>
350
+ <h2>Details</h2>
170
351
 
171
352
 
172
353
  <ul>
173
- <li>Restored the monkey patch, which was removed in release 14.0.0, for the <span class="caps">SWIG</span> <code class="code">va_list</code> problem.</li>
354
+ <li>Restored the monkey patch, which was removed in release 14.0.0, for the SWIG <code class="code">va_list</code> problem.</li>
174
355
  </ul>
175
356
 
176
357
 
@@ -183,13 +364,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
183
364
  <li>Added printer-friendly stylesheet for user documentation.</li>
184
365
  </ul>
185
366
 
367
+ </div>
368
+
369
+ <hr style="display: none"/>
370
+
371
+ <div id="a15.0.0" class="section">
372
+ <h1 class="title">
373
+ <a href="#a-607372878">7</a>
186
374
 
187
- <h1 ><a id="a15.0.0" href="#a-607205048">6</a> &nbsp; Version 15.0.0 (2007-01-13)</h1>
375
+ &nbsp;
188
376
 
189
- <p>This release fixes a problem with compilation of the C extension, and makes clock generation code correctly affect Ruby prototypes.</p>
377
+ Version 15.0.0 (2007-01-13)
378
+ </h1>
190
379
 
380
+ <p>This release fixes a problem with compilation of the C extension, and makes clock generation code correctly affect Ruby prototypes.</p>
191
381
 
192
- <h2><a id="Thanks-607205978" href="#a-607205978">6.1</a> &nbsp; Thanks</h2>
382
+
383
+ <h2>Thanks</h2>
193
384
 
194
385
 
195
386
  <ul>
@@ -197,7 +388,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
197
388
  </ul>
198
389
 
199
390
 
200
- <h2><a id="Caution-607206808" href="#a-607206808">6.2</a> &nbsp; Caution</h2>
391
+ <h2>Caution</h2>
201
392
 
202
393
 
203
394
  <ul>
@@ -210,7 +401,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
210
401
  </ul>
211
402
 
212
403
 
213
- <h3><a id="New_features-607207738" href="#a-607207738">6.2.1</a> &nbsp; New features</h3>
404
+ <h3>New features</h3>
214
405
 
215
406
 
216
407
  <ul>
@@ -228,7 +419,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
228
419
  </ul>
229
420
 
230
421
 
231
- <h2><a id="Details-607208788" href="#a-607208788">6.3</a> &nbsp; Details</h2>
422
+ <h2>Details</h2>
232
423
 
233
424
 
234
425
  <ul>
@@ -245,13 +436,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
245
436
  <li>Fixed some broken URLs in user documentation.</li>
246
437
  </ul>
247
438
 
439
+ </div>
440
+
441
+ <hr style="display: none"/>
442
+
443
+ <div id="a14.0.0" class="section">
444
+ <h1 class="title">
445
+ <a href="#a-607376468">8</a>
446
+
447
+ &nbsp;
248
448
 
249
- <h1 ><a id="a14.0.0" href="#a-607209788">7</a> &nbsp; Version 14.0.0 (2006-12-30)</h1>
449
+ Version 14.0.0 (2006-12-30)
450
+ </h1>
250
451
 
251
- <p>This release adds support for simulation callbacks, renders Verilog benches <em>fully simplified</em>, and revises the user manual to reflect major changes.</p>
452
+ This release adds support for simulation callbacks, renders Verilog benches <em>fully simplified</em>, and revises the user manual to reflect major changes.
252
453
 
253
454
 
254
- <h2><a id="Caution-607210708" href="#a-607210708">7.1</a> &nbsp; Caution</h2>
455
+ <h2>Caution</h2>
255
456
 
256
457
 
257
458
  <ul>
@@ -268,7 +469,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
268
469
  </ul>
269
470
 
270
471
 
271
- <h3><a id="New_features-607211658" href="#a-607211658">7.1.1</a> &nbsp; New features</h3>
472
+ <h3>New features</h3>
272
473
 
273
474
 
274
475
  <ul>
@@ -291,11 +492,11 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
291
492
  </ul>
292
493
 
293
494
 
294
- <h2><a id="Details-607212698" href="#a-607212698">7.2</a> &nbsp; Details</h2>
495
+ <h2>Details</h2>
295
496
 
296
497
 
297
498
  <ul>
298
- <li>Removed the monkey patch for the <span class="caps">SWIG</span> <code class="code">va_list</code> problem&#8212;it no longer occurs.</li>
499
+ <li>Removed the monkey patch for the SWIG <code class="code">va_list</code> problem&#8212;it no longer occurs.</li>
299
500
  </ul>
300
501
 
301
502
 
@@ -317,13 +518,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
317
518
  </ul></li>
318
519
  </ul>
319
520
 
521
+ </div>
522
+
523
+ <hr style="display: none"/>
320
524
 
321
- <h1 ><a id="a13.0.0" href="#a-607213708">8</a> &nbsp; Version 13.0.0 (2006-12-27)</h1>
525
+ <div id="a13.0.0" class="section">
526
+ <h1 class="title">
527
+ <a href="#a-607379488">9</a>
322
528
 
323
- <p>This release fixes a <em>major</em> instability bug, simplifies generated Verilog benches, and purifies the <span class="caps">API</span> reference documentation.</p>
529
+ &nbsp;
324
530
 
531
+ Version 13.0.0 (2006-12-27)
532
+ </h1>
325
533
 
326
- <h2><a id="Caution-607214628" href="#a-607214628">8.1</a> &nbsp; Caution</h2>
534
+ This release fixes a <em>major</em> instability bug, simplifies generated Verilog benches, and purifies the API reference documentation.
535
+
536
+
537
+ <h2>Caution</h2>
327
538
 
328
539
 
329
540
  <ul>
@@ -334,15 +545,15 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
334
545
  </ul>
335
546
 
336
547
 
337
- <h3><a id="New_features-607215558" href="#a-607215558">8.1.1</a> &nbsp; New features</h3>
548
+ <h3>New features</h3>
338
549
 
339
550
 
340
551
  <ul>
341
- <li>You can now choose when <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::relay_verilog</code> is triggered: upon positive/negative edge of the clock signal, or any other criteria. This is done by passing a block to the <code class="code"><span style="color:#036; font-weight:bold">RubyVpi</span>::init_bench</code> method (see <a href="../ref/ruby/classes/RubyVpi.html">the <span class="caps">API</span> reference documentation</a> for details).</li>
552
+ <li>You can now choose when <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::relay_verilog</code> is triggered: upon positive/negative edge of the clock signal, or any other criteria. This is done by passing a block to the <code class="code"><span style="color:#036; font-weight:bold">RubyVpi</span>::init_bench</code> method (see <a href="../ref/ruby/classes/RubyVpi.html">the API reference documentation</a> for details).</li>
342
553
  </ul>
343
554
 
344
555
 
345
- <h2><a id="Details-607216618" href="#a-607216618">8.2</a> &nbsp; Details</h2>
556
+ <h2>Details</h2>
346
557
 
347
558
 
348
559
  <ul>
@@ -358,7 +569,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
358
569
 
359
570
 
360
571
  <ul>
361
- <li>Excluded internal stuff from the <span class="caps">API</span> reference documentation for Ruby.</li>
572
+ <li>Excluded internal stuff from the API reference documentation for Ruby.</li>
362
573
  </ul>
363
574
 
364
575
 
@@ -366,13 +577,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
366
577
  <li>Removed system-dependent path <tt>/usr/bin/ruby</tt> from the tools.</li>
367
578
  </ul>
368
579
 
580
+ </div>
581
+
582
+ <hr style="display: none"/>
583
+
584
+ <div id="a12.1.0" class="section">
585
+ <h1 class="title">
586
+ <a href="#a-607384938">10</a>
369
587
 
370
- <h1 ><a id="a12.1.0" href="#a-607217618">9</a> &nbsp; Version 12.1.0 (2006-12-22)</h1>
588
+ &nbsp;
371
589
 
372
- <p>This release adds interactive debugging support, adds new sections to the user manual, and cleanses some internals.</p>
590
+ Version 12.1.0 (2006-12-22)
591
+ </h1>
373
592
 
593
+ This release adds interactive debugging support, adds new sections to the user manual, and cleanses some internals.
374
594
 
375
- <h2><a id="Caution-607218548" href="#a-607218548">9.1</a> &nbsp; Caution</h2>
595
+
596
+ <h2>Caution</h2>
376
597
 
377
598
 
378
599
  <ul>
@@ -385,7 +606,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
385
606
  </ul>
386
607
 
387
608
 
388
- <h3><a id="New_features-607219478" href="#a-607219478">9.1.1</a> &nbsp; New features</h3>
609
+ <h3>New features</h3>
389
610
 
390
611
 
391
612
  <ul>
@@ -401,7 +622,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
401
622
  </ul>
402
623
 
403
624
 
404
- <h2><a id="Details-607220518" href="#a-607220518">9.2</a> &nbsp; Details</h2>
625
+ <h2>Details</h2>
405
626
 
406
627
 
407
628
  <ul>
@@ -420,21 +641,41 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
420
641
 
421
642
 
422
643
  <ul>
423
- <li>Removed code that wasn&#8217;t being used, according to code coverage analysis, from the pipelined <span class="caps">ALU</span> sample.</li>
644
+ <li>Removed code that wasn&#8217;t being used, according to code coverage analysis, from the pipelined ALU sample.</li>
424
645
  </ul>
425
646
 
647
+ </div>
648
+
649
+ <hr style="display: none"/>
650
+
651
+ <div id="a12.0.2" class="section">
652
+ <h1 class="title">
653
+ <a href="#a-607387958">11</a>
654
+
655
+ &nbsp;
426
656
 
427
- <h1 ><a id="a12.0.2" href="#a-607221528">10</a> &nbsp; Version 12.0.2 (2006-12-18)</h1>
657
+ Version 12.0.2 (2006-12-18)
658
+ </h1>
428
659
 
429
- <p>This release fixes a problem in the 12.0.1 gem, where the <strong>generate_test.rb</strong> and <strong>header_to_ruby.rb</strong> tools were not being installed properly.</p>
660
+ This release fixes a problem in the 12.0.1 gem, where the <strong>generate_test.rb</strong> and <strong>header_to_ruby.rb</strong> tools were not being installed properly.
430
661
 
662
+ </div>
663
+
664
+ <hr style="display: none"/>
431
665
 
432
- <h1 ><a id="a12.0.1" href="#a-607222458">11</a> &nbsp; Version 12.0.1 (2006-12-18)</h1>
666
+ <div id="a12.0.1" class="section">
667
+ <h1 class="title">
668
+ <a href="#a-607390818">12</a>
433
669
 
434
- <p>This release fixes a problem in code coverage analysis.</p>
670
+ &nbsp;
435
671
 
672
+ Version 12.0.1 (2006-12-18)
673
+ </h1>
436
674
 
437
- <h2><a id="Thanks-607223388" href="#a-607223388">11.1</a> &nbsp; Thanks</h2>
675
+ <p>This release fixes a problem in code coverage analysis.</p>
676
+
677
+
678
+ <h2>Thanks</h2>
438
679
 
439
680
 
440
681
  <ul>
@@ -442,7 +683,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
442
683
  </ul>
443
684
 
444
685
 
445
- <h2><a id="Details-607224218" href="#a-607224218">11.2</a> &nbsp; Details</h2>
686
+ <h2>Details</h2>
446
687
 
447
688
 
448
689
  <p>Previously, code coverage reports were not providing any useful information because they were being generated <em>before</em> the test had a chance to run. This problem has been fixed&#8212;code coverage reports are now generated <em>after</em> the test has finished running.</p>
@@ -450,13 +691,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
450
691
 
451
692
  <p>This problem occurred because I had forgotten that <code class="code"><span style="color:#036; font-weight:bold">Kernel</span>.at_exit</code> invokes the blocks passed to it in <em>reverse</em> order. So, the coverage report was being generated before Test::Unit had a chance to run (it also uses <code class="code"><span style="color:#036; font-weight:bold">Kernel</span>.at_exit</code>).</p>
452
693
 
694
+ </div>
695
+
696
+ <hr style="display: none"/>
697
+
698
+ <div id="a12.0.0" class="section">
699
+ <h1 class="title">
700
+ <a href="#a-607394448">13</a>
453
701
 
454
- <h1 ><a id="a12.0.0" href="#a-607225218">12</a> &nbsp; Version 12.0.0 (2006-12-07)</h1>
702
+ &nbsp;
455
703
 
456
- <p>This release adds support for the <a href="http://chneukirchen.org/blog/archive/2006/10/announcing-test-spec-0-2-a-bdd-interface-for-test-unit.html">test/spec</a> library, fixes some bugs, and improves the user manual and generated tests.</p>
704
+ Version 12.0.0 (2006-12-07)
705
+ </h1>
457
706
 
707
+ This release adds support for the <a href="http://chneukirchen.org/blog/archive/2006/10/announcing-test-spec-0-2-a-bdd-interface-for-test-unit.html">test/spec</a> library, fixes some bugs, and improves the user manual and generated tests.
458
708
 
459
- <h2><a id="Caution-607226148" href="#a-607226148">12.1</a> &nbsp; Caution</h2>
709
+
710
+ <h2>Caution</h2>
460
711
 
461
712
 
462
713
  <ul>
@@ -493,7 +744,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
493
744
  </ul>
494
745
 
495
746
 
496
- <h2><a id="Details-607227008" href="#a-607227008">12.2</a> &nbsp; Details</h2>
747
+ <h2>Details</h2>
497
748
 
498
749
 
499
750
  <ul>
@@ -511,7 +762,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
511
762
  </ul>
512
763
 
513
764
 
514
- <h3><a id="Test_generation" href="#a-607227938">12.2.1</a> &nbsp; Test generation</h3>
765
+ <h3>Test generation</h3>
515
766
 
516
767
 
517
768
  <ul>
@@ -547,13 +798,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
547
798
  <li>Specifications generated in the <strong>generic</strong> format no longer contain a class that is instantiated in the generated Ruby bench.</li>
548
799
  </ul>
549
800
 
801
+ </div>
802
+
803
+ <hr style="display: none"/>
804
+
805
+ <div id="a11.1.1" class="section">
806
+ <h1 class="title">
807
+ <a href="#a-607397488">14</a>
808
+
809
+ &nbsp;
550
810
 
551
- <h1 ><a id="a11.1.1" href="#a-607229098">13</a> &nbsp; Version 11.1.1 (2006-11-15)</h1>
811
+ Version 11.1.1 (2006-11-15)
812
+ </h1>
552
813
 
553
- <p>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.</p>
814
+ 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.
554
815
 
555
816
 
556
- <h2><a id="Thanks-607230028" href="#a-607230028">13.1</a> &nbsp; Thanks</h2>
817
+ <h2>Thanks</h2>
557
818
 
558
819
 
559
820
  <ul>
@@ -561,15 +822,15 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
561
822
  </ul>
562
823
 
563
824
 
564
- <h2><a id="Caution-607230858" href="#a-607230858">13.2</a> &nbsp; Caution</h2>
825
+ <h2>Caution</h2>
565
826
 
566
827
 
567
828
  <ul>
568
- <li>The user manual is now available <em>only</em> in <span class="caps">HTML</span> format. If you still wish to have a plain-text version, you can use a text-based browser, such as <a href="http://lynx.browser.org/">lynx</a>, to perform the necessary conversion.</li>
829
+ <li>The user manual is now available <em>only</em> in HTML format. If you still wish to have a plain-text version, you can use a text-based browser, such as <a href="http://lynx.browser.org/">lynx</a>, to perform the necessary conversion.</li>
569
830
  </ul>
570
831
 
571
832
 
572
- <h2><a id="Details-607231728" href="#a-607231728">13.3</a> &nbsp; Details</h2>
833
+ <h2>Details</h2>
573
834
 
574
835
 
575
836
  <ul>
@@ -578,16 +839,26 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
578
839
 
579
840
 
580
841
  <ul>
581
- <li>The user manual and the website are now written using a custom documentation system based on RedCloth and <span class="caps">ERB</span> instead of DocBook-XML. This makes it easier to edit the user manual and reuse its content in other areas of the website.</li>
842
+ <li>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.</li>
582
843
  </ul>
583
844
 
845
+ </div>
846
+
847
+ <hr style="display: none"/>
584
848
 
585
- <h1 ><a id="a11.1.0" href="#a-607232728">14</a> &nbsp; Version 11.1.0 (2006-11-08)</h1>
849
+ <div id="a11.1.0" class="section">
850
+ <h1 class="title">
851
+ <a href="#a-607400778">15</a>
586
852
 
587
- <p>This release fixes a bug in generated benches, improves the <a href="../ref/ruby/classes/Vpi/Handle.html">the <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span></code> class</a>, and improves performance by roughly 20%.</p>
853
+ &nbsp;
588
854
 
855
+ Version 11.1.0 (2006-11-08)
856
+ </h1>
589
857
 
590
- <h2><a id="Thanks-607233658" href="#a-607233658">14.1</a> &nbsp; Thanks</h2>
858
+ This release fixes a bug in generated benches, improves the <a href="../ref/ruby/classes/Vpi/Handle.html">the <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span></code> class</a>, and improves performance by roughly 20%.
859
+
860
+
861
+ <h2>Thanks</h2>
591
862
 
592
863
 
593
864
  <ul>
@@ -595,7 +866,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
595
866
  </ul>
596
867
 
597
868
 
598
- <h2><a id="Caution-607234488" href="#a-607234488">14.2</a> &nbsp; Caution</h2>
869
+ <h2>Caution</h2>
599
870
 
600
871
 
601
872
  <ul>
@@ -603,7 +874,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
603
874
  </ul>
604
875
 
605
876
 
606
- <h2><a id="Details-607235348" href="#a-607235348">14.3</a> &nbsp; Details</h2>
877
+ <h2>Details</h2>
607
878
 
608
879
 
609
880
  <ul>
@@ -614,18 +885,18 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
614
885
  <ul>
615
886
  <li><code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.to_s</code> and <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.inspect</code> now produce more informative output. For example, what used to appear as <pre>#&lt;SWIG::TYPE_p_unsigned_int:0x2aaab6574fa0&gt;</pre> now appears as <pre>#&lt;Vpi::Handle vpiModule fullName=counter_rspec_bench, size=-1, file=counter_rspec_bench.v, lineNo=2&gt;</pre> in this release.
616
887
  <ul>
617
- <li>You can also provide a list of <span class="caps">VPI</span> properties, as names or integer constants, to those methods to see additional information in the output.</li>
888
+ <li>You can also provide a list of VPI properties, as names or integer constants, to those methods to see additional information in the output.</li>
618
889
  </ul></li>
619
890
  </ul>
620
891
 
621
892
 
622
893
  <ul>
623
- <li><code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span></code> now implements all methods from <code class="code"><span style="color:#036; font-weight:bold">Enumerable</span></code>, such as <code class="code">map</code>, <code class="code">each</code>, <code class="code">select</code>, and so on. However, unlike their counterparts in <code class="code"><span style="color:#036; font-weight:bold">Enumerable</span></code>, these methods also accept a list of <span class="caps">VPI</span> properties, as names or integer constants. Thus, you are now able to write <code class="code">handle.select(<span style="color:#A60">:reg</span>, <span style="color:#A60">:net</span>) {|h| h.size &gt; <span style="color:#00D; font-weight:bold">5</span>}</code> to obtain a list of child handles to registers and nets whose capacity is greater than 5 bits.</li>
894
+ <li><code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span></code> now implements all methods from <code class="code"><span style="color:#036; font-weight:bold">Enumerable</span></code>, such as <code class="code">map</code>, <code class="code">each</code>, <code class="code">select</code>, and so on. However, unlike their counterparts in <code class="code"><span style="color:#036; font-weight:bold">Enumerable</span></code>, these methods also accept a list of VPI properties, as names or integer constants. Thus, you are now able to write <code class="code">handle.select(<span style="color:#A60">:reg</span>, <span style="color:#A60">:net</span>) {|h| h.size &gt; <span style="color:#00D; font-weight:bold">5</span>}</code> to obtain a list of child handles to registers and nets whose capacity is greater than 5 bits.</li>
624
895
  </ul>
625
896
 
626
897
 
627
898
  <ul>
628
- <li>The <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.[]</code>, <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.get_value</code>, and <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.put_value</code> methods now accept names of <span class="caps">VPI</span> properties as well as their integer constants. Thus, you are now able to write <code class="code">handle[<span style="color:#A60">:reg</span>, <span style="color:#A60">:net</span>]</code> to obtain a list of handles to all child registers and nets.</li>
899
+ <li>The <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.[]</code>, <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.get_value</code>, and <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.put_value</code> methods now accept names of VPI properties as well as their integer constants. Thus, you are now able to write <code class="code">handle[<span style="color:#A60">:reg</span>, <span style="color:#A60">:net</span>]</code> to obtain a list of handles to all child registers and nets.</li>
629
900
  </ul>
630
901
 
631
902
 
@@ -635,7 +906,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
635
906
 
636
907
 
637
908
  <ul>
638
- <li><code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.method_missing</code> has been fixed to accept operations with multiple underscores. For example, before this release, you could not write <code class="code">handle.find_all_reg {|r| r.name =~ <span style="background-color:#fff0ff"><span style="color:#404">/</span><span style="color:#808">foo</span><span style="color:#404">/</span></span>}</code> because the &#8220;find_all_reg&#8221; method would be interpreted as the operation &#8220;find&#8221; and the <span class="caps">VPI</span> property &#8220;all_reg&#8221;.</li>
909
+ <li><code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.method_missing</code> has been fixed to accept operations with multiple underscores. For example, before this release, you could not write <code class="code">handle.find_all_reg {|r| r.name =~ <span style="background-color:#fff0ff"><span style="color:#404">/</span><span style="color:#808">foo</span><span style="color:#404">/</span></span>}</code> because the &#8220;find_all_reg&#8221; method would be interpreted as the operation &#8220;find&#8221; and the VPI property &#8220;all_reg&#8221;.</li>
639
910
  </ul>
640
911
 
641
912
 
@@ -645,7 +916,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
645
916
 
646
917
 
647
918
  <ul>
648
- <li>The <code class="code"><span style="color:#036; font-weight:bold">IntegerGenerator</span></code> class, in the pipelined <span class="caps">ALU</span> example, has been fixed so that multiple instances do not interfere with the generation of each other&#8217;s prime integers.</li>
919
+ <li>The <code class="code"><span style="color:#036; font-weight:bold">IntegerGenerator</span></code> class, in the pipelined ALU example, has been fixed so that multiple instances do not interfere with the generation of each other&#8217;s prime integers.</li>
649
920
  </ul>
650
921
 
651
922
 
@@ -653,13 +924,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
653
924
  <li>Due to a bug in the <tt>Rakefile</tt>, the reference documentation was not included in the previous few releases. This has been fixed.</li>
654
925
  </ul>
655
926
 
927
+ </div>
928
+
929
+ <hr style="display: none"/>
930
+
931
+ <div id="a11.0.0" class="section">
932
+ <h1 class="title">
933
+ <a href="#a-607403528">16</a>
656
934
 
657
- <h1 ><a id="a11.0.0" href="#a-607236368">15</a> &nbsp; Version 11.0.0 (2006-11-05)</h1>
935
+ &nbsp;
658
936
 
659
- <p>This release shortens generated Ruby benches and uses the less confusing notation for defining <a href="http://wiki.rubygarden.org/Ruby/page/show/SingletonTutorial">singleton methods</a> in generated designs and prototypes.</p>
937
+ Version 11.0.0 (2006-11-05)
938
+ </h1>
660
939
 
940
+ This release shortens generated Ruby benches and uses the less confusing notation for defining <a href="http://wiki.rubygarden.org/Ruby/page/show/SingletonTutorial">singleton methods</a> in generated designs and prototypes.
661
941
 
662
- <h2><a id="Caution-607237288" href="#a-607237288">15.1</a> &nbsp; Caution</h2>
942
+
943
+ <h2>Caution</h2>
663
944
 
664
945
 
665
946
  <ul>
@@ -677,7 +958,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
677
958
  </ul>
678
959
 
679
960
 
680
- <h2><a id="Details-607238148" href="#a-607238148">15.2</a> &nbsp; Details</h2>
961
+ <h2>Details</h2>
681
962
 
682
963
 
683
964
  <ul>
@@ -687,11 +968,11 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
687
968
 
688
969
  <ul>
689
970
  <li>The less confusing notation of <pre class="code"><span style="color:#080; font-weight:bold">def</span> some_object.a_singleton_method
690
- do_stuff
971
+ do_stuff
691
972
  <span style="color:#080; font-weight:bold">end</span></pre> is now used instead of the <pre class="code"><span style="color:#080; font-weight:bold">class</span> &lt;&lt; <span style="color:#B06; font-weight:bold">some_object</span>
692
- <span style="color:#080; font-weight:bold">def</span> <span style="color:#06B; font-weight:bold">a_singleton_method</span>
693
- do_stuff
694
- <span style="color:#080; font-weight:bold">end</span>
973
+ <span style="color:#080; font-weight:bold">def</span> <span style="color:#06B; font-weight:bold">a_singleton_method</span>
974
+ do_stuff
975
+ <span style="color:#080; font-weight:bold">end</span>
695
976
  <span style="color:#080; font-weight:bold">end</span></pre> notation.
696
977
  <ul>
697
978
  <li>The tutorial and examples have been updated accordingly.</li>
@@ -700,16 +981,26 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
700
981
 
701
982
 
702
983
  <ul>
703
- <li>The pipelined <span class="caps">ALU</span> example now has an updated <code class="code"><span style="color:#036; font-weight:bold">IntegerGenerator</span></code> class.</li>
984
+ <li>The pipelined ALU example now has an updated <code class="code"><span style="color:#036; font-weight:bold">IntegerGenerator</span></code> class.</li>
704
985
  </ul>
705
986
 
987
+ </div>
988
+
989
+ <hr style="display: none"/>
990
+
991
+ <div id="a10.0.0" class="section">
992
+ <h1 class="title">
993
+ <a href="#a-607406538">17</a>
994
+
995
+ &nbsp;
706
996
 
707
- <h1 ><a id="a10.0.0" href="#a-607239158">16</a> &nbsp; Version 10.0.0 (2006-11-05)</h1>
997
+ Version 10.0.0 (2006-11-05)
998
+ </h1>
708
999
 
709
- <p>This release adds the ability to access a handle&#8217;s children and reduces the amount of code produced by the automated test generator.</p>
1000
+ This release adds the ability to access a handle&#8217;s children and reduces the amount of code produced by the automated test generator.
710
1001
 
711
1002
 
712
- <h2><a id="Thanks-607240088" href="#a-607240088">16.1</a> &nbsp; Thanks</h2>
1003
+ <h2>Thanks</h2>
713
1004
 
714
1005
 
715
1006
  <ul>
@@ -717,11 +1008,11 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
717
1008
  </ul>
718
1009
 
719
1010
 
720
- <h2><a id="Caution-607240918" href="#a-607240918">16.2</a> &nbsp; Caution</h2>
1011
+ <h2>Caution</h2>
721
1012
 
722
1013
 
723
1014
  <ul>
724
- <li>The way in which Ruby-VPI and generated tests interact has changed: the design is now a <span class="caps">VPI</span> handle object and the <tt>design.rb</tt> and <tt>proto.rb</tt> files define <a href="http://wiki.rubygarden.org/Ruby/page/show/SingletonTutorial">singleton methods</a> for that object.
1015
+ <li>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 <a href="http://wiki.rubygarden.org/Ruby/page/show/SingletonTutorial">singleton methods</a> for that object.
725
1016
  <ul>
726
1017
  <li>I suggest that you regenerate your existing tests (just run <strong>generate_test.rb</strong> again) whilst employing the service of a text merging tool (see the user manual).</li>
727
1018
  </ul></li>
@@ -729,7 +1020,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
729
1020
 
730
1021
 
731
1022
  <ul>
732
- <li>You can now access a handle&#8217;s children by simply calling methods on it. In the event that a child handle has the same name as a <span class="caps">VPI</span> property, the child is given priority. However, you can always access <span class="caps">VPI</span> properties explicitly via the <code class="code">get_value</code> and <code class="code">put_value</code> methods.</li>
1023
+ <li>You can now access a handle&#8217;s children by simply calling methods on it. In the event that a child handle has the same name as a VPI property, the child is given priority. However, you can always access VPI properties explicitly via the <code class="code">get_value</code> and <code class="code">put_value</code> methods.</li>
733
1024
  </ul>
734
1025
 
735
1026
 
@@ -738,10 +1029,10 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
738
1029
  </ul>
739
1030
 
740
1031
 
741
- <h2><a id="Details-607241778" href="#a-607241778">16.3</a> &nbsp; Details</h2>
1032
+ <h2>Details</h2>
742
1033
 
743
1034
 
744
- <h3><a id="Automated_test_generator" href="#a-607242708">16.3.1</a> &nbsp; Automated test generator</h3>
1035
+ <h3>Automated test generator</h3>
745
1036
 
746
1037
 
747
1038
  <ul>
@@ -764,7 +1055,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
764
1055
  </ul>
765
1056
 
766
1057
 
767
- <h3><a id="User_manual" href="#a-607243908">16.3.2</a> &nbsp; User manual</h3>
1058
+ <h3>User manual</h3>
768
1059
 
769
1060
 
770
1061
  <ul>
@@ -781,13 +1072,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
781
1072
  <li>Moved installation information into a new &#8220;setup&#8221; chapter.</li>
782
1073
  </ul>
783
1074
 
1075
+ </div>
1076
+
1077
+ <hr style="display: none"/>
1078
+
1079
+ <div id="a9.0.0" class="section">
1080
+ <h1 class="title">
1081
+ <a href="#a-607409438">18</a>
1082
+
1083
+ &nbsp;
784
1084
 
785
- <h1 ><a id="a9.0.0" href="#a-607244998">17</a> &nbsp; Version 9.0.0 (2006-10-28)</h1>
1085
+ Version 9.0.0 (2006-10-28)
1086
+ </h1>
786
1087
 
787
- <p>This release improves the automated test generator and adds new content to the user manual.</p>
1088
+ This release improves the automated test generator and adds new content to the user manual.
788
1089
 
789
1090
 
790
- <h2><a id="Thanks-607245908" href="#a-607245908">17.1</a> &nbsp; Thanks</h2>
1091
+ <h2>Thanks</h2>
791
1092
 
792
1093
 
793
1094
  <ul>
@@ -795,7 +1096,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
795
1096
  </ul>
796
1097
 
797
1098
 
798
- <h2><a id="Caution-607246738" href="#a-607246738">17.2</a> &nbsp; Caution</h2>
1099
+ <h2>Caution</h2>
799
1100
 
800
1101
 
801
1102
  <ul>
@@ -803,7 +1104,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
803
1104
  </ul>
804
1105
 
805
1106
 
806
- <h2><a id="Details-607247598" href="#a-607247598">17.3</a> &nbsp; Details</h2>
1107
+ <h2>Details</h2>
807
1108
 
808
1109
 
809
1110
  <ul>
@@ -812,9 +1113,9 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
812
1113
 
813
1114
 
814
1115
  <ul>
815
- <li>Synopsys <span class="caps">VCS</span> is now used in a better way (via the <pre>-load</pre> option).
1116
+ <li>Synopsys VCS is now used in a better way (via the <pre>-load</pre> option).
816
1117
  <ul>
817
- <li>The old <span class="caps">PLI</span> table file (<tt>synopsys_vcs.tab</tt>) has been removed.</li>
1118
+ <li>The old PLI table file (<tt>synopsys_vcs.tab</tt>) has been removed.</li>
818
1119
  <li>The C extension has been revised accordingly.</li>
819
1120
  </ul></li>
820
1121
  </ul>
@@ -845,21 +1146,31 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
845
1146
  </ul></li>
846
1147
  </ul>
847
1148
 
1149
+ </div>
1150
+
1151
+ <hr style="display: none"/>
848
1152
 
849
- <h1 ><a id="a8.2.0" href="#a-607248608">18</a> &nbsp; Version 8.2.0 (2006-10-24)</h1>
1153
+ <div id="a8.2.0" class="section">
1154
+ <h1 class="title">
1155
+ <a href="#a-607412028">19</a>
850
1156
 
851
- <p>This release simplifies configuration of generated tests.</p>
1157
+ &nbsp;
852
1158
 
1159
+ Version 8.2.0 (2006-10-24)
1160
+ </h1>
853
1161
 
854
- <h2><a id="Thanks-607249508" href="#a-607249508">18.1</a> &nbsp; Thanks</h2>
1162
+ This release simplifies configuration of generated tests.
1163
+
1164
+
1165
+ <h2>Thanks</h2>
855
1166
 
856
1167
 
857
1168
  <ul>
858
- <li><a href="http://www.soe.ucsc.edu/classes/cmpe126/Fall06/">Students in the <span class="caps">CMPE</span>-126 class</a> for their comments and criticisms.</li>
1169
+ <li><a href="http://www.soe.ucsc.edu/classes/cmpe126/Fall06/">Students in the CMPE-126 class</a> for their comments and criticisms.</li>
859
1170
  </ul>
860
1171
 
861
1172
 
862
- <h2><a id="Caution-607250338" href="#a-607250338">18.2</a> &nbsp; Caution</h2>
1173
+ <h2>Caution</h2>
863
1174
 
864
1175
 
865
1176
  <ul>
@@ -867,7 +1178,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
867
1178
  </ul>
868
1179
 
869
1180
 
870
- <h2><a id="Details-607251218" href="#a-607251218">18.3</a> &nbsp; Details</h2>
1181
+ <h2>Details</h2>
871
1182
 
872
1183
 
873
1184
  <ul>
@@ -876,13 +1187,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
876
1187
  <li>The sample tests have been updated accordingly.</li>
877
1188
  </ul>
878
1189
 
1190
+ </div>
1191
+
1192
+ <hr style="display: none"/>
1193
+
1194
+ <div id="a8.1.0" class="section">
1195
+ <h1 class="title">
1196
+ <a href="#a-607414588">20</a>
879
1197
 
880
- <h1 ><a id="a8.1.0" href="#a-607252228">19</a> &nbsp; Version 8.1.0 (2006-10-21)</h1>
1198
+ &nbsp;
881
1199
 
882
- <p>This release adds an integer library and renames the vpi_util library.</p>
1200
+ Version 8.1.0 (2006-10-21)
1201
+ </h1>
883
1202
 
1203
+ This release adds an integer library and renames the vpi_util library.
884
1204
 
885
- <h2><a id="Caution-607253118" href="#a-607253118">19.1</a> &nbsp; Caution</h2>
1205
+
1206
+ <h2>Caution</h2>
886
1207
 
887
1208
 
888
1209
  <ul>
@@ -890,20 +1211,30 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
890
1211
  </ul>
891
1212
 
892
1213
 
893
- <h2><a id="Details-607253988" href="#a-607253988">19.2</a> &nbsp; Details</h2>
1214
+ <h2>Details</h2>
894
1215
 
895
1216
 
896
1217
  <ul>
897
1218
  <li>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 <code class="code">require <span style="background-color:#fff0f0"><span style="color:#710">'</span><span style="color:#D20">ruby-vpi/integer</span><span style="color:#710">'</span></span></code>.</li>
898
1219
  </ul>
899
1220
 
1221
+ </div>
1222
+
1223
+ <hr style="display: none"/>
1224
+
1225
+ <div id="a8.0.0" class="section">
1226
+ <h1 class="title">
1227
+ <a href="#a-607417278">21</a>
1228
+
1229
+ &nbsp;
900
1230
 
901
- <h1 ><a id="a8.0.0" href="#a-607254998">20</a> &nbsp; Version 8.0.0 (2006-10-13)</h1>
1231
+ Version 8.0.0 (2006-10-13)
1232
+ </h1>
902
1233
 
903
- <p>This release renames some identifiers for consistency, updates the documentation, and improves integration with RubyGems.</p>
1234
+ This release renames some identifiers for consistency, updates the documentation, and improves integration with RubyGems.
904
1235
 
905
1236
 
906
- <h2><a id="Caution-607255888" href="#a-607255888">20.1</a> &nbsp; Caution</h2>
1237
+ <h2>Caution</h2>
907
1238
 
908
1239
 
909
1240
  <ul>
@@ -919,7 +1250,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
919
1250
  </ul>
920
1251
 
921
1252
 
922
- <h2><a id="Details-607256748" href="#a-607256748">20.2</a> &nbsp; Details</h2>
1253
+ <h2>Details</h2>
923
1254
 
924
1255
 
925
1256
  <ul>
@@ -949,13 +1280,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
949
1280
  <li>The glossary and tutorial in the user manual have been revised.</li>
950
1281
  </ul>
951
1282
 
1283
+ </div>
1284
+
1285
+ <hr style="display: none"/>
952
1286
 
953
- <h1 ><a id="a7.3.0" href="#a-607257768">21</a> &nbsp; Version 7.3.0 (2006-09-30)</h1>
1287
+ <div id="a7.3.0" class="section">
1288
+ <h1 class="title">
1289
+ <a href="#a-607419868">22</a>
954
1290
 
955
- <p>This release fixes a bug in generated Verilog benches, includes parsed constants in generated tests, and adds new methods to handles.</p>
1291
+ &nbsp;
956
1292
 
1293
+ Version 7.3.0 (2006-09-30)
1294
+ </h1>
957
1295
 
958
- <h2><a id="Caution-607258658" href="#a-607258658">21.1</a> &nbsp; Caution</h2>
1296
+ This release fixes a bug in generated Verilog benches, includes parsed constants in generated tests, and adds new methods to handles.
1297
+
1298
+
1299
+ <h2>Caution</h2>
959
1300
 
960
1301
 
961
1302
  <ul>
@@ -967,7 +1308,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
967
1308
  </ul>
968
1309
 
969
1310
 
970
- <h2><a id="Details-607259528" href="#a-607259528">21.2</a> &nbsp; Details</h2>
1311
+ <h2>Details</h2>
971
1312
 
972
1313
 
973
1314
  <ul>
@@ -978,7 +1319,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
978
1319
  <ul>
979
1320
  <li>The test generator tool now provides parsed Verilog constants and include-directives in generated Verilog benches; and parsed Verilog constants in generated Ruby designs.
980
1321
  <ul>
981
- <li>The pipelined <span class="caps">ALU</span> example has been revised accordingly.</li>
1322
+ <li>The pipelined ALU example has been revised accordingly.</li>
982
1323
  </ul></li>
983
1324
  </ul>
984
1325
 
@@ -987,13 +1328,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
987
1328
  <li>A library for parsing Verilog source code has been added as <tt>lib/ruby-vpi/verilog_parser.rb</tt>.</li>
988
1329
  </ul>
989
1330
 
1331
+ </div>
1332
+
1333
+ <hr style="display: none"/>
1334
+
1335
+ <div id="a7.2.0" class="section">
1336
+ <h1 class="title">
1337
+ <a href="#a-607422378">23</a>
990
1338
 
991
- <h1 ><a id="a7.2.0" href="#a-607260548">22</a> &nbsp; Version 7.2.0 (2006-09-15)</h1>
1339
+ &nbsp;
992
1340
 
993
- <p>This release adds initial support for code coverage analysis via the <a href="http://eigenclass.org/hiki.rb?rcov">rcov library</a>.</p>
1341
+ Version 7.2.0 (2006-09-15)
1342
+ </h1>
994
1343
 
1344
+ This release adds initial support for code coverage analysis via the <a href="http://eigenclass.org/hiki.rb?rcov">rcov library</a>.
995
1345
 
996
- <h2><a id="Thanks-607261448" href="#a-607261448">22.1</a> &nbsp; Thanks</h2>
1346
+
1347
+ <h2>Thanks</h2>
997
1348
 
998
1349
 
999
1350
  <ul>
@@ -1001,28 +1352,38 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1001
1352
  </ul>
1002
1353
 
1003
1354
 
1004
- <h2><a id="Details-607262278" href="#a-607262278">22.2</a> &nbsp; Details</h2>
1355
+ <h2>Details</h2>
1005
1356
 
1006
1357
 
1007
1358
  <ul>
1008
1359
  <li>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 <code class="code"><span style="color:#036; font-weight:bold">COVERAGE</span></code> environment variable to a non-empty value before running a test.
1009
1360
  <ul>
1010
- <li>For example, you can run a test with the <span class="caps">GPL</span> Cver simulator while enabling the generation of code coverage reports as follows: <pre>export COVERAGE=1; rake cver</pre></li>
1361
+ <li>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></li>
1011
1362
  </ul></li>
1012
1363
  </ul>
1013
1364
 
1014
1365
 
1015
1366
  <ul>
1016
- <li>Coverage reports are generated in text and <span class="caps">HTML</span> formats.</li>
1367
+ <li>Coverage reports are generated in text and HTML formats.</li>
1017
1368
  </ul>
1018
1369
 
1370
+ </div>
1371
+
1372
+ <hr style="display: none"/>
1373
+
1374
+ <div id="a7.1.0" class="section">
1375
+ <h1 class="title">
1376
+ <a href="#a-607424888">24</a>
1377
+
1378
+ &nbsp;
1019
1379
 
1020
- <h1 ><a id="a7.1.0" href="#a-607263298">23</a> &nbsp; Version 7.1.0 (2006-08-29)</h1>
1380
+ Version 7.1.0 (2006-08-29)
1381
+ </h1>
1021
1382
 
1022
- <p>This release simplifies running of multiple tests, restores compatibility with Synopsys <span class="caps">VCS</span>, and better integrates with RubyGems.</p>
1383
+ This release simplifies running of multiple tests, restores compatibility with Synopsys VCS, and better integrates with RubyGems.
1023
1384
 
1024
1385
 
1025
- <h2><a id="Details-607264178" href="#a-607264178">23.1</a> &nbsp; Details</h2>
1386
+ <h2>Details</h2>
1026
1387
 
1027
1388
 
1028
1389
  <ul>
@@ -1031,7 +1392,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1031
1392
 
1032
1393
 
1033
1394
  <ul>
1034
- <li>Fixed a bug that prevented one from running tests with Synopsys <span class="caps">VCS</span>.</li>
1395
+ <li>Fixed a bug that prevented one from running tests with Synopsys VCS.</li>
1035
1396
  </ul>
1036
1397
 
1037
1398
 
@@ -1049,13 +1410,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1049
1410
  <li>The <tt>tpl/</tt> directory has been removed.</li>
1050
1411
  </ul>
1051
1412
 
1413
+ </div>
1414
+
1415
+ <hr style="display: none"/>
1052
1416
 
1053
- <h1 ><a id="a7.0.0" href="#a-607265198">24</a> &nbsp; Version 7.0.0 (2006-08-29)</h1>
1417
+ <div id="a7.0.0" class="section">
1418
+ <h1 class="title">
1419
+ <a href="#a-607427678">25</a>
1054
1420
 
1055
- <p>This release distributes Ruby-VPI as a gem, improves portability of generated tests, and fixes a bug.</p>
1421
+ &nbsp;
1056
1422
 
1423
+ Version 7.0.0 (2006-08-29)
1424
+ </h1>
1057
1425
 
1058
- <h2><a id="Caution-607266088" href="#a-607266088">24.1</a> &nbsp; Caution</h2>
1426
+ This release distributes Ruby-VPI as a gem, improves portability of generated tests, and fixes a bug.
1427
+
1428
+
1429
+ <h2>Caution</h2>
1059
1430
 
1060
1431
 
1061
1432
  <ul>
@@ -1082,7 +1453,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1082
1453
  </ul>
1083
1454
 
1084
1455
 
1085
- <h2><a id="Details-607266948" href="#a-607266948">24.2</a> &nbsp; Details</h2>
1456
+ <h2>Details</h2>
1086
1457
 
1087
1458
 
1088
1459
  <ul>
@@ -1099,12 +1470,12 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1099
1470
 
1100
1471
 
1101
1472
  <ul>
1102
- <li>Incorrect spelling of <span class="caps">GPL</span> Cver (v should be uncapitalized) has been fixed.</li>
1473
+ <li>Incorrect spelling of GPL Cver (v should be uncapitalized) has been fixed.</li>
1103
1474
  </ul>
1104
1475
 
1105
1476
 
1106
1477
  <ul>
1107
- <li>Incorrect link to <span class="caps">GPL</span> Cver website has been fixed.</li>
1478
+ <li>Incorrect link to GPL Cver website has been fixed.</li>
1108
1479
  </ul>
1109
1480
 
1110
1481
 
@@ -1112,13 +1483,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1112
1483
  <li>The user manual has been updated according to all of the above changes.</li>
1113
1484
  </ul>
1114
1485
 
1486
+ </div>
1487
+
1488
+ <hr style="display: none"/>
1489
+
1490
+ <div id="a6.3.0" class="section">
1491
+ <h1 class="title">
1492
+ <a href="#a-607430648">26</a>
1115
1493
 
1116
- <h1 ><a id="a6.3.0" href="#a-607267958">25</a> &nbsp; Version 6.3.0 (2006-08-27)</h1>
1494
+ &nbsp;
1117
1495
 
1118
- <p>This release adds support for the <span class="caps">GPL</span> Cver simulator, provides both binary and source packages, and explicitly defines the version numbering system.</p>
1496
+ Version 6.3.0 (2006-08-27)
1497
+ </h1>
1119
1498
 
1499
+ This release adds support for the GPL Cver simulator, provides both binary and source packages, and explicitly defines the version numbering system.
1120
1500
 
1121
- <h2><a id="Caution-607268858" href="#a-607268858">25.1</a> &nbsp; Caution</h2>
1501
+
1502
+ <h2>Caution</h2>
1122
1503
 
1123
1504
 
1124
1505
  <ul>
@@ -1129,11 +1510,11 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1129
1510
  </ul>
1130
1511
 
1131
1512
 
1132
- <h2><a id="Details-607269728" href="#a-607269728">25.2</a> &nbsp; Details</h2>
1513
+ <h2>Details</h2>
1133
1514
 
1134
1515
 
1135
1516
  <ul>
1136
- <li>The <span class="caps">GPL</span> Cver simulator is now supported.</li>
1517
+ <li>The GPL Cver simulator is now supported.</li>
1137
1518
  </ul>
1138
1519
 
1139
1520
 
@@ -1223,13 +1604,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1223
1604
  </table></li>
1224
1605
  </ul>
1225
1606
 
1607
+ </div>
1608
+
1609
+ <hr style="display: none"/>
1610
+
1611
+ <div id="a6.2.0" class="section">
1612
+ <h1 class="title">
1613
+ <a href="#a-607433258">27</a>
1614
+
1615
+ &nbsp;
1226
1616
 
1227
- <h1 ><a id="a6.2.0" href="#a-607270738">26</a> &nbsp; Version 6.2.0 (2006-08-26)</h1>
1617
+ Version 6.2.0 (2006-08-26)
1618
+ </h1>
1228
1619
 
1229
- <p>This release beautifies generated tests, adds checks to find signal width bugs, and includes a new tool.</p>
1620
+ This release beautifies generated tests, adds checks to find signal width bugs, and includes a new tool.
1230
1621
 
1231
1622
 
1232
- <h2><a id="Caution-607271638" href="#a-607271638">26.1</a> &nbsp; Caution</h2>
1623
+ <h2>Caution</h2>
1233
1624
 
1234
1625
 
1235
1626
  <ul>
@@ -1242,16 +1633,16 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1242
1633
  </ul>
1243
1634
 
1244
1635
 
1245
- <h2><a id="Details-607272498" href="#a-607272498">26.2</a> &nbsp; Details</h2>
1636
+ <h2>Details</h2>
1246
1637
 
1247
1638
 
1248
1639
  <ul>
1249
- <li>The test generator now uses <span class="caps">ERB</span> templates which ensures nice indentation of generated output.</li>
1640
+ <li>The test generator now uses ERB templates which ensures nice indentation of generated output.</li>
1250
1641
  </ul>
1251
1642
 
1252
1643
 
1253
1644
  <ul>
1254
- <li>The test generator now decouples Ruby-VPI paths from Verilog benches via the <span class="caps">RUBYLIB</span> environment variable.</li>
1645
+ <li>The test generator now decouples Ruby-VPI paths from Verilog benches via the RUBYLIB environment variable.</li>
1255
1646
  </ul>
1256
1647
 
1257
1648
 
@@ -1264,13 +1655,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1264
1655
  <li>The source code is now indented with two spaces instead of one tab character.</li>
1265
1656
  </ul>
1266
1657
 
1658
+ </div>
1659
+
1660
+ <hr style="display: none"/>
1267
1661
 
1268
- <h1 ><a id="a6.1.0" href="#a-607273508">27</a> &nbsp; Version 6.1.0 (2006-08-09)</h1>
1662
+ <div id="a6.1.0" class="section">
1663
+ <h1 class="title">
1664
+ <a href="#a-607435688">28</a>
1269
1665
 
1270
- <p>This release simplifies generated tests and fixes a bug.</p>
1666
+ &nbsp;
1271
1667
 
1668
+ Version 6.1.0 (2006-08-09)
1669
+ </h1>
1272
1670
 
1273
- <h2><a id="Details-607274398" href="#a-607274398">27.1</a> &nbsp; Details</h2>
1671
+ This release simplifies generated tests and fixes a bug.
1672
+
1673
+
1674
+ <h2>Details</h2>
1274
1675
 
1275
1676
 
1276
1677
  <ul>
@@ -1283,16 +1684,26 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1283
1684
 
1284
1685
 
1285
1686
  <ul>
1286
- <li>Boolean <span class="caps">VPI</span> property values are now correctly converted into Ruby truth values.</li>
1687
+ <li>Boolean VPI property values are now correctly converted into Ruby truth values.</li>
1287
1688
  </ul>
1288
1689
 
1690
+ </div>
1691
+
1692
+ <hr style="display: none"/>
1693
+
1694
+ <div id="a6.0.0" class="section">
1695
+ <h1 class="title">
1696
+ <a href="#a-607438338">29</a>
1289
1697
 
1290
- <h1 ><a id="a6.0.0" href="#a-607275418">28</a> &nbsp; Version 6.0.0 (2006-08-07)</h1>
1698
+ &nbsp;
1291
1699
 
1292
- <p>This release adds support and documentation for rapid prototyping of Verilog designs in Ruby.</p>
1700
+ Version 6.0.0 (2006-08-07)
1701
+ </h1>
1293
1702
 
1703
+ This release adds support and documentation for rapid prototyping of Verilog designs in Ruby.
1294
1704
 
1295
- <h2><a id="Caution-607276308" href="#a-607276308">28.1</a> &nbsp; Caution</h2>
1705
+
1706
+ <h2>Caution</h2>
1296
1707
 
1297
1708
 
1298
1709
  <ul>
@@ -1310,7 +1721,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1310
1721
  </ul>
1311
1722
 
1312
1723
 
1313
- <h2><a id="Details-607277168" href="#a-607277168">28.2</a> &nbsp; Details</h2>
1724
+ <h2>Details</h2>
1314
1725
 
1315
1726
 
1316
1727
  <ul>
@@ -1329,13 +1740,23 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1329
1740
  <li>The user manual has been revised for consistency.</li>
1330
1741
  </ul>
1331
1742
 
1743
+ </div>
1744
+
1745
+ <hr style="display: none"/>
1746
+
1747
+ <div id="a5.1.1" class="section">
1748
+ <h1 class="title">
1749
+ <a href="#a-607440828">30</a>
1750
+
1751
+ &nbsp;
1332
1752
 
1333
- <h1 ><a id="a5.1.1" href="#a-607278188">29</a> &nbsp; Version 5.1.1 (2006-08-04)</h1>
1753
+ Version 5.1.1 (2006-08-04)
1754
+ </h1>
1334
1755
 
1335
- <p>This release fixes unreadable syntax coloring in the user manual.</p>
1756
+ This release fixes unreadable syntax coloring in the user manual.
1336
1757
 
1337
1758
 
1338
- <h2><a id="Thanks-607279088" href="#a-607279088">29.1</a> &nbsp; Thanks</h2>
1759
+ <h2>Thanks</h2>
1339
1760
 
1340
1761
 
1341
1762
  <ul>
@@ -1343,7 +1764,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1343
1764
  </ul>
1344
1765
 
1345
1766
 
1346
- <h2><a id="Details-607279908" href="#a-607279908">29.2</a> &nbsp; Details</h2>
1767
+ <h2>Details</h2>
1347
1768
 
1348
1769
 
1349
1770
  <ul>
@@ -1355,24 +1776,34 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1355
1776
  <li>The <tt>README</tt> and <tt>HISTORY</tt> files have been converted to <a href="http://www.textism.com/tools/textile/">textile</a> format.</li>
1356
1777
  </ul>
1357
1778
 
1779
+ </div>
1780
+
1781
+ <hr style="display: none"/>
1358
1782
 
1359
- <h1 ><a id="a5.1.0" href="#a-607280928">30</a> &nbsp; Version 5.1.0 (2006-07-29)</h1>
1783
+ <div id="a5.1.0" class="section">
1784
+ <h1 class="title">
1785
+ <a href="#a-607443688">31</a>
1360
1786
 
1361
- <p>This release adds a tutorial to the user manual, and improves the tools and examples.</p>
1787
+ &nbsp;
1362
1788
 
1789
+ Version 5.1.0 (2006-07-29)
1790
+ </h1>
1363
1791
 
1364
- <h2><a id="Thanks-607281838" href="#a-607281838">30.1</a> &nbsp; Thanks</h2>
1792
+ This release adds a tutorial to the user manual, and improves the tools and examples.
1793
+
1794
+
1795
+ <h2>Thanks</h2>
1365
1796
 
1366
1797
 
1367
1798
  <ul>
1368
- <li>Phil Tomson corrected the <span class="caps">URL</span> of the <span class="caps">RHDL</span> website in the user manual.</li>
1799
+ <li>Phil Tomson corrected the URL of the RHDL website in the user manual.</li>
1369
1800
  </ul>
1370
1801
 
1371
1802
 
1372
- <h2><a id="Details-607282658" href="#a-607282658">30.2</a> &nbsp; Details</h2>
1803
+ <h2>Details</h2>
1373
1804
 
1374
1805
 
1375
- <h3><a id="User_manual-607283568" href="#a-607283568">30.2.1</a> &nbsp; User manual</h3>
1806
+ <h3>User manual</h3>
1376
1807
 
1377
1808
 
1378
1809
  <ul>
@@ -1385,7 +1816,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1385
1816
  </ul>
1386
1817
 
1387
1818
 
1388
- <h3><a id="Examples" href="#a-607284508">30.2.2</a> &nbsp; Examples</h3>
1819
+ <h3>Examples</h3>
1389
1820
 
1390
1821
 
1391
1822
  <ul>
@@ -1413,20 +1844,30 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1413
1844
  </ul>
1414
1845
 
1415
1846
 
1416
- <h3><a id="a_span_class__caps__VPI__span__utility_layer" href="#a-607285388">30.2.3</a> &nbsp; <span class="caps">VPI</span> utility layer</h3>
1847
+ <h3>VPI utility layer</h3>
1417
1848
 
1418
1849
 
1419
1850
  <ul>
1420
- <li>The value of a handle&#8217;s boolean <span class="caps">VPI</span> property is treated as <code class="code"><span style="color:#038; font-weight:bold">false</span></code> if it is zero, because zero is <code class="code"><span style="color:#038; font-weight:bold">false</span></code> in the C language.</li>
1851
+ <li>The value of a handle&#8217;s boolean VPI property is treated as <code class="code"><span style="color:#038; font-weight:bold">false</span></code> if it is zero, because zero is <code class="code"><span style="color:#038; font-weight:bold">false</span></code> in the C language.</li>
1421
1852
  </ul>
1422
1853
 
1854
+ </div>
1855
+
1856
+ <hr style="display: none"/>
1857
+
1858
+ <div id="a5.0.0" class="section">
1859
+ <h1 class="title">
1860
+ <a href="#a-607446538">32</a>
1423
1861
 
1424
- <h1 ><a id="a5.0.0" href="#a-607287108">31</a> &nbsp; Version 5.0.0 (2006-07-22)</h1>
1862
+ &nbsp;
1425
1863
 
1426
- <p>This release enhances the <span class="caps">VPI</span> utility layer and adds new content to the user manual.</p>
1864
+ Version 5.0.0 (2006-07-22)
1865
+ </h1>
1427
1866
 
1867
+ This release enhances the VPI utility layer and adds new content to the user manual.
1428
1868
 
1429
- <h2><a id="Thanks-607288008" href="#a-607288008">31.1</a> &nbsp; Thanks</h2>
1869
+
1870
+ <h2>Thanks</h2>
1430
1871
 
1431
1872
 
1432
1873
  <ul>
@@ -1434,11 +1875,11 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1434
1875
  </ul>
1435
1876
 
1436
1877
 
1437
- <h2><a id="Caution-607288858" href="#a-607288858">31.2</a> &nbsp; Caution</h2>
1878
+ <h2>Caution</h2>
1438
1879
 
1439
1880
 
1440
1881
  <ul>
1441
- <li><span class="caps">SWIG</span> is no longer required for users because its output is included in the release package.</li>
1882
+ <li>SWIG is no longer required for users because its output is included in the release package.</li>
1442
1883
  </ul>
1443
1884
 
1444
1885
 
@@ -1447,16 +1888,16 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1447
1888
  </ul>
1448
1889
 
1449
1890
 
1450
- <h2><a id="Details-607289718" href="#a-607289718">31.3</a> &nbsp; Details</h2>
1891
+ <h2>Details</h2>
1451
1892
 
1452
1893
 
1453
1894
  <ul>
1454
- <li>The <span class="caps">VPI</span> utility layer provides access to <span class="caps">VPI</span> properties of handles in a <a href="manual.html#background.org.vpi">simpler, more powerful way</a>.</li>
1895
+ <li>The VPI utility layer provides access to VPI properties of handles in a <a href="manual.html#background.org.vpi">simpler, more powerful way</a>.</li>
1455
1896
  </ul>
1456
1897
 
1457
1898
 
1458
1899
  <ul>
1459
- <li>All <span class="caps">VPI</span> properties, except delay values, are now accessible from a handle.</li>
1900
+ <li>All VPI properties, except delay values, are now accessible from a handle.</li>
1460
1901
  </ul>
1461
1902
 
1462
1903
 
@@ -1468,18 +1909,28 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1468
1909
  <ul>
1469
1910
  <li>This release was tested and developed using:
1470
1911
  <ul>
1471
- <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 <span class="caps">GNU</span>/Linux</li>
1472
- <li>Ruby 1.8.4 and Mentor Modelsim 6.1d on x86_64 <span class="caps">GNU</span>/Linux</li>
1912
+ <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 GNU/Linux</li>
1913
+ <li>Ruby 1.8.4 and Mentor Modelsim 6.1d on x86_64 GNU/Linux</li>
1473
1914
  </ul></li>
1474
1915
  </ul>
1475
1916
 
1917
+ </div>
1918
+
1919
+ <hr style="display: none"/>
1920
+
1921
+ <div id="a4.0.0" class="section">
1922
+ <h1 class="title">
1923
+ <a href="#a-607449268">33</a>
1924
+
1925
+ &nbsp;
1476
1926
 
1477
- <h1 ><a id="a4.0.0" href="#a-607290728">32</a> &nbsp; Version 4.0.0 (2006-05-25)</h1>
1927
+ Version 4.0.0 (2006-05-25)
1928
+ </h1>
1478
1929
 
1479
- <p>This release adds a comprehensive user manual, upgrades from make to <a href="http://rake.rubyforge.org">Rake</a>, and improves the test generation tool.</p>
1930
+ This release adds a comprehensive user manual, upgrades from make to <a href="http://rake.rubyforge.org">Rake</a>, and improves the test generation tool.
1480
1931
 
1481
1932
 
1482
- <h2><a id="Thanks-607291638" href="#a-607291638">32.1</a> &nbsp; Thanks</h2>
1933
+ <h2>Thanks</h2>
1483
1934
 
1484
1935
 
1485
1936
  <ul>
@@ -1487,7 +1938,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1487
1938
  </ul>
1488
1939
 
1489
1940
 
1490
- <h2><a id="Caution-607292468" href="#a-607292468">32.2</a> &nbsp; Caution</h2>
1941
+ <h2>Caution</h2>
1491
1942
 
1492
1943
 
1493
1944
  <ul>
@@ -1500,7 +1951,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1500
1951
  </ul>
1501
1952
 
1502
1953
 
1503
- <h2><a id="Details-607293338" href="#a-607293338">32.3</a> &nbsp; Details</h2>
1954
+ <h2>Details</h2>
1504
1955
 
1505
1956
 
1506
1957
  <ul>
@@ -1519,18 +1970,28 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1519
1970
  <ul>
1520
1971
  <li>This release was tested and developed using:
1521
1972
  <ul>
1522
- <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 <span class="caps">GNU</span>/Linux</li>
1523
- <li>Ruby 1.8.4 and Mentor Modelsim 6.1d on x86_64 <span class="caps">GNU</span>/Linux</li>
1973
+ <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 GNU/Linux</li>
1974
+ <li>Ruby 1.8.4 and Mentor Modelsim 6.1d on x86_64 GNU/Linux</li>
1524
1975
  </ul></li>
1525
1976
  </ul>
1526
1977
 
1978
+ </div>
1979
+
1980
+ <hr style="display: none"/>
1527
1981
 
1528
- <h1 ><a id="a3.2.0" href="#a-607294368">33</a> &nbsp; Version 3.2.0 (2006-05-13)</h1>
1982
+ <div id="a3.2.0" class="section">
1983
+ <h1 class="title">
1984
+ <a href="#a-607451888">34</a>
1529
1985
 
1530
- <p>This release adds a tool which generates test benches, and adds support for <a href="http://behaviour-driven.org">Behavior Driven Development</a> via the <a href="http://rspec.rubyforge.org">RSpec</a> library.</p>
1986
+ &nbsp;
1531
1987
 
1988
+ Version 3.2.0 (2006-05-13)
1989
+ </h1>
1532
1990
 
1533
- <h2><a id="Thanks-607295278" href="#a-607295278">33.1</a> &nbsp; Thanks</h2>
1991
+ This release adds a tool which generates test benches, and adds support for <a href="http://behaviour-driven.org">Behavior Driven Development</a> via the <a href="http://rspec.rubyforge.org">RSpec</a> library.
1992
+
1993
+
1994
+ <h2>Thanks</h2>
1534
1995
 
1535
1996
 
1536
1997
  <ul>
@@ -1538,7 +1999,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1538
1999
  </ul>
1539
2000
 
1540
2001
 
1541
- <h2><a id="Details-607296118" href="#a-607296118">33.2</a> &nbsp; Details</h2>
2002
+ <h2>Details</h2>
1542
2003
 
1543
2004
 
1544
2005
  <ul>
@@ -1559,18 +2020,28 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1559
2020
  <ul>
1560
2021
  <li>This release was tested and developed using:
1561
2022
  <ul>
1562
- <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 <span class="caps">GNU</span>/Linux</li>
1563
- <li>Ruby 1.8.4 and Mentor Modelsim 6.1d on x86_64 <span class="caps">GNU</span>/Linux</li>
2023
+ <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 GNU/Linux</li>
2024
+ <li>Ruby 1.8.4 and Mentor Modelsim 6.1d on x86_64 GNU/Linux</li>
1564
2025
  </ul></li>
1565
2026
  </ul>
1566
2027
 
2028
+ </div>
2029
+
2030
+ <hr style="display: none"/>
2031
+
2032
+ <div id="a3.1.0" class="section">
2033
+ <h1 class="title">
2034
+ <a href="#a-607454578">35</a>
1567
2035
 
1568
- <h1 ><a id="a3.1.0" href="#a-607297138">34</a> &nbsp; Version 3.1.0 (2006-04-28)</h1>
2036
+ &nbsp;
1569
2037
 
1570
- <p>This release adds simple ways of reading and writing values to <span class="caps">VPI</span> handles, adds documentation for the <span class="caps">VPI</span> utility layer, and fixes the pipelined <span class="caps">ALU</span> example.</p>
2038
+ Version 3.1.0 (2006-04-28)
2039
+ </h1>
1571
2040
 
2041
+ 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.
1572
2042
 
1573
- <h2><a id="Caution-607298038" href="#a-607298038">34.1</a> &nbsp; Caution</h2>
2043
+
2044
+ <h2>Caution</h2>
1574
2045
 
1575
2046
 
1576
2047
  <ul>
@@ -1578,11 +2049,11 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1578
2049
  </ul>
1579
2050
 
1580
2051
 
1581
- <h2><a id="Details-607298918" href="#a-607298918">34.2</a> &nbsp; Details</h2>
2052
+ <h2>Details</h2>
1582
2053
 
1583
2054
 
1584
2055
  <ul>
1585
- <li>Simple, consistent ways of reading and writing values to handles have been added to the <span class="caps">VPI</span> utility layer. These ways are described in the <code class="code"><span style="color:#036; font-weight:bold">SWIG</span>::<span style="color:#036; font-weight:bold">TYPE_p_unsigned_int</span></code> class&#8217; documentation.</li>
2056
+ <li>Simple, consistent ways of reading and writing values to handles have been added to the VPI utility layer. These ways are described in the <code class="code"><span style="color:#036; font-weight:bold">SWIG</span>::<span style="color:#036; font-weight:bold">TYPE_p_unsigned_int</span></code> class&#8217; documentation.</li>
1586
2057
  </ul>
1587
2058
 
1588
2059
 
@@ -1592,7 +2063,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1592
2063
 
1593
2064
 
1594
2065
  <ul>
1595
- <li>A race condition in the pipelined <span class="caps">ALU</span> example has been fixed. This example should now run successfully in all Verilog simulators.</li>
2066
+ <li>A race condition in the pipelined ALU example has been fixed. This example should now run successfully in all Verilog simulators.</li>
1596
2067
  </ul>
1597
2068
 
1598
2069
 
@@ -1609,26 +2080,36 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1609
2080
  <ul>
1610
2081
  <li>This release was tested and developed using:
1611
2082
  <ul>
1612
- <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 <span class="caps">GNU</span>/Linux</li>
1613
- <li>Ruby 1.8.4 and Mentor Modelsim 6.1d on x86_64 <span class="caps">GNU</span>/Linux</li>
2083
+ <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 GNU/Linux</li>
2084
+ <li>Ruby 1.8.4 and Mentor Modelsim 6.1d on x86_64 GNU/Linux</li>
1614
2085
  </ul></li>
1615
2086
  </ul>
1616
2087
 
2088
+ </div>
2089
+
2090
+ <hr style="display: none"/>
2091
+
2092
+ <div id="a3.0.0" class="section">
2093
+ <h1 class="title">
2094
+ <a href="#a-607457438">36</a>
2095
+
2096
+ &nbsp;
1617
2097
 
1618
- <h1 ><a id="a3.0.0" href="#a-607300288">35</a> &nbsp; Version 3.0.0 (2006-04-23)</h1>
2098
+ Version 3.0.0 (2006-04-23)
2099
+ </h1>
1619
2100
 
1620
- <p>This release adds support for 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 interface, and updates the examples into unit tests.</p>
2101
+ This release adds support for the <em>entire</em> <a href="http://ieeexplore.ieee.org/xpl/standardstoc.jsp?isnumber=33945">IEEE Std. 1364-2005</a> VPI interface, and updates the examples into unit tests.
1621
2102
 
1622
2103
 
1623
- <h2><a id="Thanks-607301458" href="#a-607301458">35.1</a> &nbsp; Thanks</h2>
2104
+ <h2>Thanks</h2>
1624
2105
 
1625
2106
 
1626
2107
  <ul>
1627
- <li>The <a href="http://www.swig.org/guilty.html"><span class="caps">SWIG</span> developers</a> made this project <em>much</em> easier! ;-)</li>
2108
+ <li>The <a href="http://www.swig.org/guilty.html">SWIG developers</a> made this project <em>much</em> easier! ;-)</li>
1628
2109
  </ul>
1629
2110
 
1630
2111
 
1631
- <h2><a id="Caution-607304218" href="#a-607304218">35.2</a> &nbsp; Caution</h2>
2112
+ <h2>Caution</h2>
1632
2113
 
1633
2114
 
1634
2115
  <ul>
@@ -1636,11 +2117,11 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1636
2117
  </ul>
1637
2118
 
1638
2119
 
1639
- <h2><a id="Details-607307438" href="#a-607307438">35.3</a> &nbsp; Details</h2>
2120
+ <h2>Details</h2>
1640
2121
 
1641
2122
 
1642
2123
  <ul>
1643
- <li>The Ruby interface to <span class="caps">VPI</span> is now generated by <a href="http://www.swig.org"><span class="caps">SWIG</span></a>.
2124
+ <li>The Ruby interface to VPI is now generated by <a href="http://www.swig.org">SWIG</a>.
1644
2125
  <ul>
1645
2126
  <li>The main <code class="code"><span style="color:#036; font-weight:bold">VPI</span></code> module has been renamed to <code class="code"><span style="color:#036; font-weight:bold">Vpi</span></code>.</li>
1646
2127
  <li>The <code class="code"><span style="color:#036; font-weight:bold">VPI</span>::<span style="color:#036; font-weight:bold">Handle</span></code> class has been removed.</li>
@@ -1655,7 +2136,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1655
2136
 
1656
2137
 
1657
2138
  <ul>
1658
- <li>The <span class="caps">VPI</span> module, its sub-classes, and its functionality have been replaced by the <span class="caps">VPI</span> utility layer (see <tt>src/vpi_util.rb</tt>).</li>
2139
+ <li>The VPI module, its sub-classes, and its functionality have been replaced by the VPI utility layer (see <tt>src/vpi_util.rb</tt>).</li>
1659
2140
  </ul>
1660
2141
 
1661
2142
 
@@ -1672,18 +2153,28 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1672
2153
  <ul>
1673
2154
  <li>This release was tested and developed using:
1674
2155
  <ul>
1675
- <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 <span class="caps">GNU</span>/Linux</li>
1676
- <li>Ruby 1.8.4 and Mentor Modelsim 6.1d on x86_64 <span class="caps">GNU</span>/Linux</li>
2156
+ <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 GNU/Linux</li>
2157
+ <li>Ruby 1.8.4 and Mentor Modelsim 6.1d on x86_64 GNU/Linux</li>
1677
2158
  </ul></li>
1678
2159
  </ul>
1679
2160
 
2161
+ </div>
2162
+
2163
+ <hr style="display: none"/>
1680
2164
 
1681
- <h1 ><a id="a2.0.0" href="#a-607308988">36</a> &nbsp; Version 2.0.0 (2006-04-17)</h1>
2165
+ <div id="a2.0.0" class="section">
2166
+ <h1 class="title">
2167
+ <a href="#a-607460198">37</a>
1682
2168
 
1683
- <p>This release fixes major bugs, adds support for Mentor Modelsim, and removes the <code class="code"><span style="color:#d70; font-weight:bold">$ruby_task</span></code> callback.</p>
2169
+ &nbsp;
1684
2170
 
2171
+ Version 2.0.0 (2006-04-17)
2172
+ </h1>
1685
2173
 
1686
- <h2><a id="Thanks-607309908" href="#a-607309908">36.1</a> &nbsp; Thanks</h2>
2174
+ This release fixes major bugs, adds support for Mentor Modelsim, and removes the <code class="code"><span style="color:#d70; font-weight:bold">$ruby_task</span></code> callback.
2175
+
2176
+
2177
+ <h2>Thanks</h2>
1687
2178
 
1688
2179
 
1689
2180
  <ul>
@@ -1691,7 +2182,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1691
2182
  </ul>
1692
2183
 
1693
2184
 
1694
- <h2><a id="Caution-607310738" href="#a-607310738">36.2</a> &nbsp; Caution</h2>
2185
+ <h2>Caution</h2>
1695
2186
 
1696
2187
 
1697
2188
  <ul>
@@ -1699,7 +2190,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1699
2190
  </ul>
1700
2191
 
1701
2192
 
1702
- <h2><a id="Details-607311598" href="#a-607311598">36.3</a> &nbsp; Details</h2>
2193
+ <h2>Details</h2>
1703
2194
 
1704
2195
 
1705
2196
  <ul>
@@ -1713,35 +2204,45 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
1713
2204
 
1714
2205
 
1715
2206
  <ul>
1716
- <li>Added piplelined <span class="caps">ALU</span> example.</li>
2207
+ <li>Added piplelined ALU example.</li>
1717
2208
  </ul>
1718
2209
 
1719
2210
 
1720
2211
  <ul>
1721
2212
  <li>This release was tested and developed using:
1722
2213
  <ul>
1723
- <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 <span class="caps">GNU</span>/Linux</li>
1724
- <li>Ruby 1.8.4 and Modelsim 6.1d on x86_64 <span class="caps">GNU</span>/Linux</li>
1725
- <li>Ruby 1.8.4 and Synopsys <span class="caps">VCS</span>-MX X-2005.06-SP1 on <span class="caps">SPARC4</span> SunOS 5.10</li>
2214
+ <li>Ruby 1.8.4 and Icarus Verilog 0.8 on i686 GNU/Linux</li>
2215
+ <li>Ruby 1.8.4 and Modelsim 6.1d on x86_64 GNU/Linux</li>
2216
+ <li>Ruby 1.8.4 and Synopsys VCS-MX X-2005.06-SP1 on SPARC4 SunOS 5.10</li>
1726
2217
  </ul></li>
1727
2218
  </ul>
1728
2219
 
2220
+ </div>
2221
+
2222
+ <hr style="display: none"/>
2223
+
2224
+ <div id="a1.0.0" class="section">
2225
+ <h1 class="title">
2226
+ <a href="#a-607463278">38</a>
1729
2227
 
1730
- <h1 ><a id="a1.0.0" href="#a-607312618">37</a> &nbsp; Version 1.0.0 (2006-02-26)</h1>
2228
+ &nbsp;
1731
2229
 
1732
- This release adds enough Verilog <span class="caps">VPI</span> functionality to make Ruby-VPI usable for simple test benches:
2230
+ Version 1.0.0 (2006-02-26)
2231
+ </h1>
2232
+
2233
+ This release adds enough Verilog VPI functionality to make Ruby-VPI usable for simple test benches:
1733
2234
  <ul>
1734
- <li>access Verilog objects through <span class="caps">VPI</span> handles</li>
1735
- <li>read and change <span class="caps">VPI</span> handle values</li>
2235
+ <li>access Verilog objects through VPI handles</li>
2236
+ <li>read and change VPI handle values</li>
1736
2237
  <li>stop, finish, restart the simulation</li>
1737
2238
  </ul>
1738
2239
 
1739
2240
 
1740
- <h2><a id="Thanks-607313518" href="#a-607313518">37.1</a> &nbsp; Thanks</h2>
2241
+ <h2>Thanks</h2>
1741
2242
 
1742
2243
 
1743
2244
  <ul>
1744
- <li>Jose Renau helped me debug how Synopsys <span class="caps">VCS</span> works with Verilog <span class="caps">VPI</span>. The problem was that <span class="caps">VCS</span> required calltf signatures to be <code class="code">void (*)(void)</code>, whereas the Verilog standard defines a calltf signature as <code class="code"><span style="color:#036; font-weight:bold">PLI_INT32</span> (*)(<span style="color:#036; font-weight:bold">PLI_BYTE8</span>*)</code>.</li>
2245
+ <li>Jose Renau helped me debug how Synopsys VCS works with Verilog VPI. The problem was that VCS required calltf signatures to be <code class="code">void (*)(void)</code>, whereas the Verilog standard defines a calltf signature as <code class="code"><span style="color:#036; font-weight:bold">PLI_INT32</span> (*)(<span style="color:#036; font-weight:bold">PLI_BYTE8</span>*)</code>.</li>
1745
2246
  </ul>
1746
2247
 
1747
2248
 
@@ -1750,11 +2251,11 @@ This release adds enough Verilog <span class="caps">VPI</span> functionality to
1750
2251
  </ul>
1751
2252
 
1752
2253
 
1753
- <h2><a id="Details-607314348" href="#a-607314348">37.2</a> &nbsp; Details</h2>
2254
+ <h2>Details</h2>
1754
2255
 
1755
2256
 
1756
2257
  <ul>
1757
- <li>Implemented some Verilog <span class="caps">VPI</span> functionality:
2258
+ <li>Implemented some Verilog VPI functionality:
1758
2259
  <ul>
1759
2260
  <li><code class="code"><span style="color:#036; font-weight:bold">VPI</span>::handle_by_name(string, <span style="color:#036; font-weight:bold">VPI</span>::<span style="color:#036; font-weight:bold">Handle</span>)</code> &rarr; <code class="code"><span style="color:#036; font-weight:bold">VPI</span>::<span style="color:#036; font-weight:bold">Handle</span></code></li>
1760
2261
  <li><code class="code"><span style="color:#036; font-weight:bold">VPI</span>::handle_by_name(string)</code> &rarr; <code class="code"><span style="color:#036; font-weight:bold">VPI</span>::<span style="color:#036; font-weight:bold">Handle</span></code></li>
@@ -1795,18 +2296,28 @@ This release adds enough Verilog <span class="caps">VPI</span> functionality to
1795
2296
  <ul>
1796
2297
  <li>This release was tested and developed using:
1797
2298
  <ul>
1798
- <li>Ruby 1.8.2 and Icarus Verilog 0.8 on i686 <span class="caps">GNU</span>/Linux</li>
1799
- <li>Ruby 1.8.4, Synopsys <span class="caps">VCS X</span>-2005.06, and Mentor Modelsim 6.1b on i686 <span class="caps">GNU</span>/Linux</li>
2299
+ <li>Ruby 1.8.2 and Icarus Verilog 0.8 on i686 GNU/Linux</li>
2300
+ <li>Ruby 1.8.4, Synopsys <span class="caps">VCS X</span>-2005.06, and Mentor Modelsim 6.1b on i686 GNU/Linux</li>
1800
2301
  </ul></li>
1801
2302
  </ul>
1802
2303
 
2304
+ </div>
2305
+
2306
+ <hr style="display: none"/>
2307
+
2308
+ <div id="a0.0.0" class="section">
2309
+ <h1 class="title">
2310
+ <a href="#a-607465668">39</a>
2311
+
2312
+ &nbsp;
1803
2313
 
1804
- <h1 ><a id="a0.0.0" href="#a-607315358">38</a> &nbsp; Version 0.0.0 (1999-10-31)</h1>
2314
+ Version 0.0.0 (1999-10-31)
2315
+ </h1>
1805
2316
 
1806
- <p>This is Kazuhiro <span class="caps">HIWADA</span>&#8217;s initial testing release of Ruby-VPI. See its <a href="http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/18193">original announcement</a> and <a href="http://rubyforge.org/frs/?group_id=1339&#38;release_id=8852">source code</a>.</p>
2317
+ This is Kazuhiro HIWADA&#8217;s initial testing release of Ruby-VPI. See its <a href="http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/18193">original announcement</a> and <a href="http://rubyforge.org/frs/?group_id=1339&#38;release_id=8852">source code</a>.
1807
2318
 
1808
2319
 
1809
- <h2><a id="Details-607316258" href="#a-607316258">38.1</a> &nbsp; Details</h2>
2320
+ <h2>Details</h2>
1810
2321
 
1811
2322
 
1812
2323
  <ul>
@@ -1815,7 +2326,17 @@ This release adds enough Verilog <span class="caps">VPI</span> functionality to
1815
2326
 
1816
2327
 
1817
2328
  <ul>
1818
- <li>Tested and developed using Ruby 1.4 and Verilog-XL from Cadence systems, on a <span class="caps">SPARC</span> machine running Solaris 2.6.</li>
2329
+ <li>Tested and developed using Ruby 1.4 and Verilog-XL from Cadence systems, on a SPARC machine running Solaris 2.6.</li>
1819
2330
  </ul>
1820
- </body>
2331
+
2332
+ </div>
2333
+ </div>
2334
+
2335
+ <hr style="display: none"/>
2336
+ <div id="toc">
2337
+ <h1 id="toc:contents">Contents</h1>
2338
+ <ul><li><span class="hide">1 </span><a id="a-607350668" href="#Release_history">Release history</a><ul><li><span class="hide">1.1 </span><a id="a-607346028" href="#Version_numbering_system">Version numbering system</a></li></ul></li><li><span class="hide">2 </span><a id="a-607354788" href="#a17.0.0">Version 17.0.0 (2007-07-22)</a></li><li><span class="hide">3 </span><a id="a-607357728" href="#a16.0.1">Version 16.0.1 (2007-05-27)</a></li><li><span class="hide">4 </span><a id="a-607363398" href="#a16.0.0">Version 16.0.0 (2007-05-02)</a></li><li><span class="hide">5 </span><a id="a-607366358" href="#a15.0.2">Version 15.0.2 (2007-01-22)</a></li><li><span class="hide">6 </span><a id="a-607369408" href="#a15.0.1">Version 15.0.1 (2007-01-15)</a></li><li><span class="hide">7 </span><a id="a-607372878" href="#a15.0.0">Version 15.0.0 (2007-01-13)</a></li><li><span class="hide">8 </span><a id="a-607376468" href="#a14.0.0">Version 14.0.0 (2006-12-30)</a></li><li><span class="hide">9 </span><a id="a-607379488" href="#a13.0.0">Version 13.0.0 (2006-12-27)</a></li><li><span class="hide">10 </span><a id="a-607384938" href="#a12.1.0">Version 12.1.0 (2006-12-22)</a></li><li><span class="hide">11 </span><a id="a-607387958" href="#a12.0.2">Version 12.0.2 (2006-12-18)</a></li><li><span class="hide">12 </span><a id="a-607390818" href="#a12.0.1">Version 12.0.1 (2006-12-18)</a></li><li><span class="hide">13 </span><a id="a-607394448" href="#a12.0.0">Version 12.0.0 (2006-12-07)</a></li><li><span class="hide">14 </span><a id="a-607397488" href="#a11.1.1">Version 11.1.1 (2006-11-15)</a></li><li><span class="hide">15 </span><a id="a-607400778" href="#a11.1.0">Version 11.1.0 (2006-11-08)</a></li><li><span class="hide">16 </span><a id="a-607403528" href="#a11.0.0">Version 11.0.0 (2006-11-05)</a></li><li><span class="hide">17 </span><a id="a-607406538" href="#a10.0.0">Version 10.0.0 (2006-11-05)</a></li><li><span class="hide">18 </span><a id="a-607409438" href="#a9.0.0">Version 9.0.0 (2006-10-28)</a></li><li><span class="hide">19 </span><a id="a-607412028" href="#a8.2.0">Version 8.2.0 (2006-10-24)</a></li><li><span class="hide">20 </span><a id="a-607414588" href="#a8.1.0">Version 8.1.0 (2006-10-21)</a></li><li><span class="hide">21 </span><a id="a-607417278" href="#a8.0.0">Version 8.0.0 (2006-10-13)</a></li><li><span class="hide">22 </span><a id="a-607419868" href="#a7.3.0">Version 7.3.0 (2006-09-30)</a></li><li><span class="hide">23 </span><a id="a-607422378" href="#a7.2.0">Version 7.2.0 (2006-09-15)</a></li><li><span class="hide">24 </span><a id="a-607424888" href="#a7.1.0">Version 7.1.0 (2006-08-29)</a></li><li><span class="hide">25 </span><a id="a-607427678" href="#a7.0.0">Version 7.0.0 (2006-08-29)</a></li><li><span class="hide">26 </span><a id="a-607430648" href="#a6.3.0">Version 6.3.0 (2006-08-27)</a></li><li><span class="hide">27 </span><a id="a-607433258" href="#a6.2.0">Version 6.2.0 (2006-08-26)</a></li><li><span class="hide">28 </span><a id="a-607435688" href="#a6.1.0">Version 6.1.0 (2006-08-09)</a></li><li><span class="hide">29 </span><a id="a-607438338" href="#a6.0.0">Version 6.0.0 (2006-08-07)</a></li><li><span class="hide">30 </span><a id="a-607440828" href="#a5.1.1">Version 5.1.1 (2006-08-04)</a></li><li><span class="hide">31 </span><a id="a-607443688" href="#a5.1.0">Version 5.1.0 (2006-07-29)</a></li><li><span class="hide">32 </span><a id="a-607446538" href="#a5.0.0">Version 5.0.0 (2006-07-22)</a></li><li><span class="hide">33 </span><a id="a-607449268" href="#a4.0.0">Version 4.0.0 (2006-05-25)</a></li><li><span class="hide">34 </span><a id="a-607451888" href="#a3.2.0">Version 3.2.0 (2006-05-13)</a></li><li><span class="hide">35 </span><a id="a-607454578" href="#a3.1.0">Version 3.1.0 (2006-04-28)</a></li><li><span class="hide">36 </span><a id="a-607457438" href="#a3.0.0">Version 3.0.0 (2006-04-23)</a></li><li><span class="hide">37 </span><a id="a-607460198" href="#a2.0.0">Version 2.0.0 (2006-04-17)</a></li><li><span class="hide">38 </span><a id="a-607463278" href="#a1.0.0">Version 1.0.0 (2006-02-26)</a></li><li><span class="hide">39 </span><a id="a-607465668" href="#a0.0.0">Version 0.0.0 (1999-10-31)</a></li></ul>
2339
+
2340
+ </div>
2341
+ </body>
1821
2342
  </html>