ruby-vpi 16.0.1 → 17.0.0

Sign up to get free protection for your applications and to get access to all the features.
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>