ruby-vpi 18.0.2 → 19.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (232) hide show
  1. data/Rakefile +15 -19
  2. data/bin/generate/proto.rb +15 -10
  3. data/bin/ruby-vpi +2 -0
  4. data/doc/README +3 -5
  5. data/doc/Rakefile +3 -3
  6. data/doc/common.css +24 -136
  7. data/doc/common.tpl +48 -37
  8. data/doc/figures/figures.dia +19 -19
  9. data/doc/figures/ruby_relay.png +0 -0
  10. data/doc/history.html +252 -67
  11. data/doc/history.inc +98 -1
  12. data/doc/history.yaml +105 -0
  13. data/doc/intro.inc +43 -32
  14. data/doc/lib/doc_format.rb +19 -13
  15. data/doc/lib/doc_proxy.rb +7 -7
  16. data/doc/manual.doc +156 -117
  17. data/doc/manual.html +601 -560
  18. data/doc/memo.html +29 -25
  19. data/doc/print.css +63 -4
  20. data/doc/readme.doc +4 -6
  21. data/doc/readme.html +129 -111
  22. data/doc/rss.xml +168 -7
  23. data/doc/screen.css +146 -0
  24. data/doc/spacing.css +57 -0
  25. data/{samp → examples}/counter/RSpec/Rakefile +0 -0
  26. data/{samp → examples}/counter/RSpec/counter_design.rb +0 -0
  27. data/examples/counter/RSpec/counter_proto.rb +9 -0
  28. data/{samp → examples}/counter/RSpec/counter_runner.rake +0 -0
  29. data/{samp → examples}/counter/RSpec/counter_spec.rb +0 -0
  30. data/{samp → examples}/counter/Rakefile +0 -0
  31. data/{samp → examples}/counter/counter.v +0 -0
  32. data/{samp → examples}/counter/xUnit/Rakefile +0 -0
  33. data/{samp → examples}/counter/xUnit/counter_bench.rb +0 -0
  34. data/{samp → examples}/counter/xUnit/counter_bench.v +0 -0
  35. data/{samp → examples}/counter/xUnit/counter_design.rb +0 -0
  36. data/examples/counter/xUnit/counter_proto.rb +9 -0
  37. data/{samp → examples}/counter/xUnit/counter_runner.rake +0 -0
  38. data/{samp → examples}/counter/xUnit/counter_spec.rb +0 -0
  39. data/{samp → examples}/pipelined_alu/Hw5UnitModel.rb +0 -0
  40. data/{samp → examples}/pipelined_alu/README +0 -0
  41. data/{samp → examples}/pipelined_alu/Rakefile +0 -0
  42. data/{samp → examples}/pipelined_alu/TestHw5UnitModel.rb +0 -0
  43. data/{samp → examples}/pipelined_alu/hw5_unit.v +0 -0
  44. data/{samp → examples}/pipelined_alu/hw5_unit_design.rb +0 -7
  45. data/examples/pipelined_alu/hw5_unit_proto.rb +2 -0
  46. data/{samp → examples}/pipelined_alu/hw5_unit_runner.rake +0 -0
  47. data/{samp → examples}/pipelined_alu/hw5_unit_spec.rb +0 -0
  48. data/{samp → examples}/pipelined_alu/int_gen.rb +0 -0
  49. data/{samp → examples}/register_file/LICENSE +0 -0
  50. data/{samp → examples}/register_file/README +0 -0
  51. data/{samp → examples}/register_file/Rakefile +0 -0
  52. data/{samp → examples}/register_file/register_file.v +0 -0
  53. data/{samp → examples}/register_file/register_file_design.rb +0 -0
  54. data/examples/register_file/register_file_proto.rb +11 -0
  55. data/{samp → examples}/register_file/register_file_runner.rake +0 -0
  56. data/{samp → examples}/register_file/register_file_spec.rb +0 -0
  57. data/ext/main.c +5 -5
  58. data/ext/swig_vpi.i +6 -2
  59. data/lib/ruby-vpi/core/callback.rb +142 -0
  60. data/lib/ruby-vpi/core/edge.rb +128 -0
  61. data/lib/ruby-vpi/core/handle.rb +421 -0
  62. data/lib/ruby-vpi/core/scheduler.rb +244 -0
  63. data/lib/ruby-vpi/core/struct.rb +123 -0
  64. data/lib/ruby-vpi/core.rb +41 -0
  65. data/lib/ruby-vpi/rcov.rb +25 -12
  66. data/lib/ruby-vpi/runner.rb +30 -26
  67. data/lib/ruby-vpi/runner_boot_loader.rb +67 -37
  68. data/lib/ruby-vpi.rb +2 -2
  69. data/ref/c/annotated.html +1 -1
  70. data/ref/c/common_8h.html +1 -1
  71. data/ref/c/files.html +1 -1
  72. data/ref/c/functions.html +1 -1
  73. data/ref/c/functions_vars.html +1 -1
  74. data/ref/c/globals.html +1 -1
  75. data/ref/c/globals_0x63.html +1 -1
  76. data/ref/c/globals_0x65.html +1 -1
  77. data/ref/c/globals_0x66.html +1 -1
  78. data/ref/c/globals_0x6d.html +1 -1
  79. data/ref/c/globals_0x70.html +1 -1
  80. data/ref/c/globals_0x72.html +1 -1
  81. data/ref/c/globals_0x73.html +1 -1
  82. data/ref/c/globals_0x74.html +1 -1
  83. data/ref/c/globals_0x76.html +1 -1
  84. data/ref/c/globals_0x78.html +1 -1
  85. data/ref/c/globals_defs.html +1 -1
  86. data/ref/c/globals_defs_0x65.html +1 -1
  87. data/ref/c/globals_defs_0x70.html +1 -1
  88. data/ref/c/globals_defs_0x76.html +1 -1
  89. data/ref/c/globals_defs_0x78.html +1 -1
  90. data/ref/c/globals_enum.html +1 -1
  91. data/ref/c/globals_eval.html +1 -1
  92. data/ref/c/globals_func.html +1 -1
  93. data/ref/c/globals_type.html +1 -1
  94. data/ref/c/globals_vars.html +1 -1
  95. data/ref/c/index.html +1 -1
  96. data/ref/c/main_8c.html +1 -1
  97. data/ref/c/main_8h.html +1 -1
  98. data/ref/c/relay_8c.html +1 -1
  99. data/ref/c/relay_8h.html +1 -1
  100. data/ref/c/structt__cb__data.html +1 -1
  101. data/ref/c/structt__vpi__delay.html +1 -1
  102. data/ref/c/structt__vpi__error__info.html +1 -1
  103. data/ref/c/structt__vpi__strengthval.html +1 -1
  104. data/ref/c/structt__vpi__systf__data.html +1 -1
  105. data/ref/c/structt__vpi__time.html +1 -1
  106. data/ref/c/structt__vpi__value.html +1 -1
  107. data/ref/c/structt__vpi__vecval.html +1 -1
  108. data/ref/c/structt__vpi__vlog__info.html +1 -1
  109. data/ref/c/verilog_8h.html +1 -1
  110. data/ref/c/vlog_8c.html +1 -1
  111. data/ref/c/vlog_8h.html +1 -1
  112. data/ref/c/vpi__user_8h.html +1 -1
  113. data/ref/ruby/classes/ERB.html +7 -5
  114. data/ref/ruby/classes/ERB.src/{M000026.html → M000024.html} +0 -0
  115. data/ref/ruby/classes/FileUtils.html +11 -11
  116. data/ref/ruby/classes/FileUtils.src/{M000027.html → M000025.html} +0 -0
  117. data/ref/ruby/classes/FileUtils.src/{M000028.html → M000026.html} +0 -0
  118. data/ref/ruby/classes/Float.html +8 -6
  119. data/ref/ruby/classes/Float.src/{M000021.html → M000019.html} +0 -0
  120. data/ref/ruby/classes/Integer.html +67 -65
  121. data/ref/ruby/classes/Integer.src/M000007.html +25 -0
  122. data/ref/ruby/classes/Integer.src/{M000014.html → M000008.html} +5 -5
  123. data/ref/ruby/classes/Integer.src/M000009.html +5 -12
  124. data/ref/ruby/classes/Integer.src/M000010.html +5 -5
  125. data/ref/ruby/classes/Integer.src/M000011.html +5 -5
  126. data/ref/ruby/classes/Integer.src/M000012.html +5 -5
  127. data/ref/ruby/classes/Integer.src/M000015.html +25 -0
  128. data/ref/ruby/classes/Integer.src/M000016.html +31 -0
  129. data/ref/ruby/classes/Integer.src/M000017.html +12 -12
  130. data/ref/ruby/classes/Integer.src/M000018.html +17 -18
  131. data/ref/ruby/classes/Object.html +126 -0
  132. data/ref/ruby/classes/RDoc.html +5 -5
  133. data/ref/ruby/classes/RDoc.src/{M000061.html → M000081.html} +0 -0
  134. data/ref/ruby/classes/RubyVPI.html +50 -9
  135. data/ref/ruby/classes/String.html +22 -20
  136. data/ref/ruby/classes/String.src/M000020.html +36 -0
  137. data/ref/ruby/classes/String.src/M000021.html +41 -0
  138. data/ref/ruby/classes/String.src/M000022.html +5 -23
  139. data/ref/ruby/classes/String.src/M000023.html +5 -28
  140. data/ref/ruby/classes/{Vpi → VPI}/Handle.html +442 -140
  141. data/ref/ruby/classes/{Vpi/Handle.src/M000042.html → VPI/Handle.src/M000037.html} +4 -4
  142. data/ref/ruby/classes/VPI/Handle.src/M000038.html +21 -0
  143. data/ref/ruby/classes/VPI/Handle.src/M000039.html +18 -0
  144. data/ref/ruby/classes/{Vpi/Handle.src/M000036.html → VPI/Handle.src/M000040.html} +5 -5
  145. data/ref/ruby/classes/VPI/Handle.src/M000045.html +18 -0
  146. data/ref/ruby/classes/{Vpi/Handle.src/M000038.html → VPI/Handle.src/M000046.html} +5 -5
  147. data/ref/ruby/classes/VPI/Handle.src/M000057.html +18 -0
  148. data/ref/ruby/classes/{Vpi/Handle.src/M000040.html → VPI/Handle.src/M000058.html} +5 -5
  149. data/ref/ruby/classes/VPI/Handle.src/M000061.html +18 -0
  150. data/ref/ruby/classes/VPI/Handle.src/M000062.html +18 -0
  151. data/ref/ruby/classes/{Vpi/Handle.src/M000054.html → VPI/Handle.src/M000065.html} +11 -11
  152. data/ref/ruby/classes/VPI/Handle.src/M000067.html +21 -0
  153. data/ref/ruby/classes/VPI/Handle.src/M000068.html +28 -0
  154. data/ref/ruby/classes/VPI/Handle.src/M000069.html +50 -0
  155. data/ref/ruby/classes/{Vpi/Handle.src/M000048.html → VPI/Handle.src/M000070.html} +6 -6
  156. data/ref/ruby/classes/{Vpi/Handle.src/M000049.html → VPI/Handle.src/M000071.html} +6 -6
  157. data/ref/ruby/classes/{Vpi/Handle.src/M000050.html → VPI/Handle.src/M000072.html} +5 -5
  158. data/ref/ruby/classes/{Vpi/Handle.src/M000051.html → VPI/Handle.src/M000073.html} +17 -17
  159. data/ref/ruby/classes/VPI/Handle.src/M000075.html +18 -0
  160. data/ref/ruby/classes/VPI/Handle.src/M000076.html +40 -0
  161. data/ref/ruby/classes/{Vpi/Handle.src/M000056.html → VPI/Handle.src/M000077.html} +18 -18
  162. data/ref/ruby/classes/{Vpi → VPI}/S_vpi_time.html +22 -20
  163. data/ref/ruby/classes/VPI/S_vpi_time.src/M000078.html +18 -0
  164. data/ref/ruby/classes/VPI/S_vpi_time.src/M000079.html +19 -0
  165. data/ref/ruby/classes/{Vpi → VPI}/S_vpi_value.html +37 -23
  166. data/ref/ruby/classes/VPI/S_vpi_value.src/M000034.html +35 -0
  167. data/ref/ruby/classes/VPI/S_vpi_value.src/M000035.html +42 -0
  168. data/ref/ruby/classes/VPI/S_vpi_value.src/M000036.html +42 -0
  169. data/ref/ruby/classes/{Vpi.html → VPI.html} +129 -34
  170. data/ref/ruby/classes/VPI.src/M000027.html +19 -0
  171. data/ref/ruby/classes/VPI.src/M000028.html +18 -0
  172. data/ref/ruby/classes/VPI.src/M000029.html +19 -0
  173. data/ref/ruby/classes/VPI.src/M000031.html +25 -0
  174. data/ref/ruby/classes/VPI.src/M000032.html +26 -0
  175. data/ref/ruby/classes/VerilogParser/Module/Port.html +17 -15
  176. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000004.html +23 -0
  177. data/ref/ruby/classes/VerilogParser/Module/Port.src/{M000007.html → M000005.html} +0 -0
  178. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000006.html +5 -10
  179. data/ref/ruby/classes/VerilogParser/Module.html +7 -5
  180. data/ref/ruby/classes/VerilogParser/Module.src/{M000005.html → M000003.html} +0 -0
  181. data/ref/ruby/classes/VerilogParser.html +7 -5
  182. data/ref/ruby/classes/VerilogParser.src/{M000004.html → M000002.html} +0 -0
  183. data/ref/ruby/created.rid +1 -1
  184. data/ref/ruby/files/bin/generate_rb.html +2 -2
  185. data/ref/ruby/files/lib/ruby-vpi/{vpi_rb.html → core/callback_rb.html} +7 -8
  186. data/ref/ruby/files/lib/ruby-vpi/core/edge_rb.html +114 -0
  187. data/ref/ruby/files/lib/ruby-vpi/core/handle_rb.html +107 -0
  188. data/ref/ruby/files/lib/ruby-vpi/core/scheduler_rb.html +114 -0
  189. data/ref/ruby/files/lib/ruby-vpi/core/struct_rb.html +108 -0
  190. data/ref/ruby/files/lib/ruby-vpi/core_rb.html +121 -0
  191. data/ref/ruby/files/lib/ruby-vpi/rcov_rb.html +1 -1
  192. data/ref/ruby/files/lib/ruby-vpi/runner_boot_loader_rb.html +5 -41
  193. data/ref/ruby/files/lib/ruby-vpi/runner_boot_loader_rb.src/M000001.html +3 -3
  194. data/ref/ruby/files/lib/ruby-vpi/runner_rb.html +1 -1
  195. data/ref/ruby/files/lib/ruby-vpi_rb.html +1 -1
  196. data/ref/ruby/fr_class_index.html +5 -4
  197. data/ref/ruby/fr_file_index.html +6 -1
  198. data/ref/ruby/fr_method_index.html +80 -60
  199. metadata +126 -103
  200. data/ext/swig_vpi.h +0 -924
  201. data/ext/swig_wrap.cin +0 -7083
  202. data/lib/ruby-vpi/vpi.rb +0 -651
  203. data/ref/ruby/classes/Integer.src/M000013.html +0 -18
  204. data/ref/ruby/classes/Integer.src/M000019.html +0 -25
  205. data/ref/ruby/classes/Integer.src/M000020.html +0 -30
  206. data/ref/ruby/classes/String.src/M000024.html +0 -18
  207. data/ref/ruby/classes/String.src/M000025.html +0 -18
  208. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000008.html +0 -18
  209. data/ref/ruby/classes/Vpi/Handle.src/M000035.html +0 -18
  210. data/ref/ruby/classes/Vpi/Handle.src/M000037.html +0 -18
  211. data/ref/ruby/classes/Vpi/Handle.src/M000039.html +0 -18
  212. data/ref/ruby/classes/Vpi/Handle.src/M000041.html +0 -18
  213. data/ref/ruby/classes/Vpi/Handle.src/M000043.html +0 -21
  214. data/ref/ruby/classes/Vpi/Handle.src/M000044.html +0 -21
  215. data/ref/ruby/classes/Vpi/Handle.src/M000045.html +0 -22
  216. data/ref/ruby/classes/Vpi/Handle.src/M000046.html +0 -50
  217. data/ref/ruby/classes/Vpi/Handle.src/M000047.html +0 -91
  218. data/ref/ruby/classes/Vpi/Handle.src/M000053.html +0 -18
  219. data/ref/ruby/classes/Vpi/Handle.src/M000057.html +0 -40
  220. data/ref/ruby/classes/Vpi/S_vpi_time.src/M000058.html +0 -18
  221. data/ref/ruby/classes/Vpi/S_vpi_time.src/M000059.html +0 -19
  222. data/ref/ruby/classes/Vpi/S_vpi_value.src/M000032.html +0 -18
  223. data/ref/ruby/classes/Vpi/S_vpi_value.src/M000033.html +0 -18
  224. data/ref/ruby/classes/Vpi/S_vpi_value.src/M000034.html +0 -18
  225. data/ref/ruby/classes/Vpi.src/M000029.html +0 -28
  226. data/ref/ruby/classes/Vpi.src/M000030.html +0 -39
  227. data/ref/ruby/classes/Vpi.src/M000031.html +0 -20
  228. data/ref/ruby/files/lib/ruby-vpi/runner_boot_loader_rb.src/M000002.html +0 -18
  229. data/samp/counter/RSpec/counter_proto.rb +0 -10
  230. data/samp/counter/xUnit/counter_proto.rb +0 -10
  231. data/samp/pipelined_alu/hw5_unit_proto.rb +0 -4
  232. data/samp/register_file/register_file_proto.rb +0 -11
data/doc/history.html CHANGED
@@ -2,25 +2,32 @@
2
2
  <html>
3
3
  <head>
4
4
  <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
5
- <link rel="stylesheet" type="text/css" href="common.css" media="screen" />
5
+ <link rel="stylesheet" type="text/css" href="screen.css" media="screen" />
6
6
  <link rel="stylesheet" type="text/css" href="print.css" media="print" />
7
+ <link rel="alternate stylesheet" type="text/css" href="print.css" title="Print Preview" />
7
8
  <link rel="alternate" type="application/rss+xml" href="http://ruby-vpi.rubyforge.org/doc/rss.xml" title="RSS feed for this project." />
8
9
  <title>Release history</title>
9
10
  </head>
10
11
  <body>
11
- <div id="site-links">
12
- <a href="readme.html">Home</a>
13
- &middot; <a href="manual.html">Manual</a>
14
- &middot; <a href="memo.html">Memo</a>
15
- &middot; <a href="history.html">History</a>
16
- <hr style="display: none"/>
17
- </div>
12
+ <div id="menu">
13
+ <h1>Site navigation</h1>
14
+ <ul id="site-links">
15
+ <li><a href="readme.html">Home</a></li>
16
+ <li><a href="manual.html">Manual</a></li>
17
+ <li><a href="memo.html">Memo</a></li>
18
+ <li><a href="history.html">History</a></li>
19
+ </ul>
20
+
21
+
22
+ <div id="toc">
23
+ <h1 id="toc-contents">Contents</h1>
24
+ <ul><li>1 <a id="a-607976608" href="#Release_history" class="ref">Release history</a><ul><li>1.1 <a id="a-607973698" href="#Version_numbering_system" class="ref">Version numbering system</a></li></ul></li><li>2 <a id="a-607980708" href="#a19.0.0" class="ref">Version 19.0.0 (2007-08-27)</a></li><li>3 <a id="a-607982968" href="#a18.0.2" class="ref">Version 18.0.2 (2007-08-03)</a></li><li>4 <a id="a-607985358" href="#a18.0.1" class="ref">Version 18.0.1 (2007-08-02)</a></li><li>5 <a id="a-607988538" href="#a18.0.0" class="ref">Version 18.0.0 (2007-07-31)</a></li><li>6 <a id="a-607991888" href="#a17.0.0" class="ref">Version 17.0.0 (2007-07-22)</a></li><li>7 <a id="a-607994208" href="#a16.0.1" class="ref">Version 16.0.1 (2007-05-27)</a></li><li>8 <a id="a-607997158" href="#a16.0.0" class="ref">Version 16.0.0 (2007-05-02)</a></li><li>9 <a id="a-607999448" href="#a15.0.2" class="ref">Version 15.0.2 (2007-01-22)</a></li><li>10 <a id="a-608001898" href="#a15.0.1" class="ref">Version 15.0.1 (2007-01-15)</a></li><li>11 <a id="a-608004668" href="#a15.0.0" class="ref">Version 15.0.0 (2007-01-13)</a></li><li>12 <a id="a-608007518" href="#a14.0.0" class="ref">Version 14.0.0 (2006-12-30)</a></li><li>13 <a id="a-608010168" href="#a13.0.0" class="ref">Version 13.0.0 (2006-12-27)</a></li><li>14 <a id="a-608012818" href="#a12.1.0" class="ref">Version 12.1.0 (2006-12-22)</a></li><li>15 <a id="a-608014968" href="#a12.0.2" class="ref">Version 12.0.2 (2006-12-18)</a></li><li>16 <a id="a-608017358" href="#a12.0.1" class="ref">Version 12.0.1 (2006-12-18)</a></li><li>17 <a id="a-608020388" href="#a12.0.0" class="ref">Version 12.0.0 (2006-12-07)</a></li><li>18 <a id="a-608022878" href="#a11.1.1" class="ref">Version 11.1.1 (2006-11-15)</a></li><li>19 <a id="a-608025668" href="#a11.1.0" class="ref">Version 11.1.0 (2006-11-08)</a></li><li>20 <a id="a-606393968" href="#a11.0.0" class="ref">Version 11.0.0 (2006-11-05)</a></li><li>21 <a id="a-606406478" href="#a10.0.0" class="ref">Version 10.0.0 (2006-11-05)</a></li><li>22 <a id="a-606422038" href="#a9.0.0" class="ref">Version 9.0.0 (2006-10-28)</a></li><li>23 <a id="a-606446938" href="#a8.2.0" class="ref">Version 8.2.0 (2006-10-24)</a></li><li>24 <a id="a-606456588" href="#a8.1.0" class="ref">Version 8.1.0 (2006-10-21)</a></li><li>25 <a id="a-606460318" href="#a8.0.0" class="ref">Version 8.0.0 (2006-10-13)</a></li><li>26 <a id="a-606467158" href="#a7.3.0" class="ref">Version 7.3.0 (2006-09-30)</a></li><li>27 <a id="a-606978948" href="#a7.2.0" class="ref">Version 7.2.0 (2006-09-15)</a></li><li>28 <a id="a-606981378" href="#a7.1.0" class="ref">Version 7.1.0 (2006-08-29)</a></li><li>29 <a id="a-606984068" href="#a7.0.0" class="ref">Version 7.0.0 (2006-08-29)</a></li><li>30 <a id="a-606986838" href="#a6.3.0" class="ref">Version 6.3.0 (2006-08-27)</a></li><li>31 <a id="a-606989348" href="#a6.2.0" class="ref">Version 6.2.0 (2006-08-26)</a></li><li>32 <a id="a-606991678" href="#a6.1.0" class="ref">Version 6.1.0 (2006-08-09)</a></li><li>33 <a id="a-606994228" href="#a6.0.0" class="ref">Version 6.0.0 (2006-08-07)</a></li><li>34 <a id="a-606996618" href="#a5.1.1" class="ref">Version 5.1.1 (2006-08-04)</a></li><li>35 <a id="a-606999368" href="#a5.1.0" class="ref">Version 5.1.0 (2006-07-29)</a></li><li>36 <a id="a-607002018" href="#a5.0.0" class="ref">Version 5.0.0 (2006-07-22)</a></li><li>37 <a id="a-607004648" href="#a4.0.0" class="ref">Version 4.0.0 (2006-05-25)</a></li><li>38 <a id="a-607007158" href="#a3.2.0" class="ref">Version 3.2.0 (2006-05-13)</a></li><li>39 <a id="a-607009748" href="#a3.1.0" class="ref">Version 3.1.0 (2006-04-28)</a></li><li>40 <a id="a-607012498" href="#a3.0.0" class="ref">Version 3.0.0 (2006-04-23)</a></li><li>41 <a id="a-607015148" href="#a2.0.0" class="ref">Version 2.0.0 (2006-04-17)</a></li><li>42 <a id="a-607018038" href="#a1.0.0" class="ref">Version 1.0.0 (2006-02-26)</a></li><li>43 <a id="a-607020328" href="#a0.0.0" class="ref">Version 0.0.0 (1999-10-31)</a></li></ul>
25
+
26
+ </div>
27
+ </div>
18
28
 
19
- <div id="toc-links">
20
- <a href="#toc:contents">Contents</a>
21
- </div>
22
-
23
29
  <div id="body">
30
+
24
31
  <hr style="display: none"/>
25
32
 
26
33
  <div id="Release_history" class="front_cover">
@@ -54,11 +61,195 @@
54
61
  </div>
55
62
 
56
63
 
64
+ <hr style="display: none"/>
65
+
66
+ <div id="a19.0.0" class="section">
67
+ <h1 class="title">
68
+ <a href="#a-607980708" class="ref">2</a>
69
+
70
+ &nbsp;
71
+
72
+ Version 19.0.0 (2007-08-27)
73
+ </h1>
74
+
75
+ <p>This release restores support for Cadence NC-Sim, breaks support for Mentor Modelsim, adds support for concurrent processes which simplify implementing Ruby prototypess, and offers numerous other improvements.</p>
76
+
77
+
78
+ <p><strong>Mentor Modelsim users, take note</strong>: this release does not work very well with Mentor Modelsim, so do not upgrade until compatibility is restored in a future release. In the mean time, consider using this release with another simulator, such as <a href="http://www.pragmatic-c.com/gpl-cver/">GPL Cver</a>.</p>
79
+
80
+
81
+ <h2>Thanks</h2>
82
+
83
+
84
+ <ul>
85
+ <li>Calvin Wong <a href="http://rubyforge.org/pipermail/ruby-vpi-discuss/2007-August/000046.html">requested the concurrent processes feature</a>, helped test it, and provided useful feedback.</li>
86
+ </ul>
87
+
88
+
89
+ <h2>Caution</h2>
90
+
91
+
92
+ <ul>
93
+ <li>Prototypes no longer have a <code class="code">feign!</code> method. Instead, they emulate the behavior of the real Verilog DUT using the new <a href="manual.html#usage.concurrency">concurrency model</a>.</li>
94
+ </ul>
95
+
96
+
97
+ <ul>
98
+ <li>All &#8220;initial&#8221; blocks in Verilog code are now evaluated <em>before</em> the specification begins executing. This allows you to set the initial value of registers in Verilog before the specification interacts with them.</li>
99
+ </ul>
100
+
101
+
102
+ <ul>
103
+ <li>The <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> for consistency with the project name.</li>
104
+ </ul>
105
+
106
+
107
+ <ul>
108
+ <li>The <code class="code"><span style="color:#036; font-weight:bold">VPI</span>::simulation_time</code> method has been renamed to <code class="code"><span style="color:#036; font-weight:bold">VPI</span>::current_time</code>.</li>
109
+ </ul>
110
+
111
+
112
+ <ul>
113
+ <li>The <code class="code"><span style="color:#036; font-weight:bold">VPI</span>::<span style="color:#036; font-weight:bold">Handle</span>.value_forced?</code> method has been renamed to <code class="code"><span style="color:#036; font-weight:bold">VPI</span>::<span style="color:#036; font-weight:bold">Handle</span>.force?</code></li>
114
+ </ul>
115
+
116
+
117
+ <ul>
118
+ <li>The <tt>samp/</tt> directory has been renamed to <tt>examples/</tt>.</li>
119
+ </ul>
120
+
121
+
122
+ <ul>
123
+ <li>Code coverage analysis results are now produced only in plain-text format.</li>
124
+ </ul>
125
+
126
+
127
+ <h2>Repairs</h2>
128
+
129
+
130
+ <ul>
131
+ <li>You can now access VPI constants using their original uncapitalized names. For example, you can now write &#8220;vpiIntVal&#8221; instead of having to write &#8220;VpiIntVal&#8221;. However, note that the capitalized names are still supported, so you are not required to change your code.</li>
132
+ </ul>
133
+
134
+
135
+ <ul>
136
+ <li>Value change / edge detection for VPI handles was previously incorrect: if you called the <code class="code"><span style="color:#036; font-weight:bold">VPI</span>::<span style="color:#036; font-weight:bold">Handle</span>.posedge?</code> function twice in the same time step, it would give you two different answers.</li>
137
+ </ul>
138
+
139
+
140
+ <ul>
141
+ <li>The problem of not being able to write values to nets in Cadence NC-Sim has been fixed.</li>
142
+ </ul>
143
+
144
+
145
+ <h2>Additions</h2>
146
+
147
+
148
+ <ul>
149
+ <li>Added support for <a href="manual.html#usage.concurrency">concurrent processes</a>, which make Ruby prototypes appear more like Verilog code and also give the ability to write parallel tests.</li>
150
+ </ul>
151
+
152
+
153
+ <ul>
154
+ <li>Added support for performance profiling using the <a href="http://ruby-prof.rubyforge.org">ruby-prof</a> project. The profiler can be enabled by setting the <code class="code"><span style="color:#036; font-weight:bold">PROFILER</span></code> environment variable to &#8220;1&#8221; before running a Ruby-VPI test.</li>
155
+ </ul>
156
+
157
+
158
+ <ul>
159
+ <li>Added new method aliases to <code class="code"><span style="color:#036; font-weight:bold">VPI</span>::<span style="color:#036; font-weight:bold">Handle</span></code> for value detection. The complete list of aliases is now:
160
+ <ul>
161
+ <li>Tests if the logic value of this handle is unknown (x).
162
+ <ul>
163
+ <li>x?</li>
164
+ <li>unknown?</li>
165
+ <li>dont_care?</li>
166
+ </ul>
167
+ </li>
168
+ <li>Sets the logic value of this handle to unknown (x).
169
+ <ul>
170
+ <li>x!</li>
171
+ <li>unknown!</li>
172
+ <li>dont_care!</li>
173
+ </ul>
174
+ </li>
175
+ <li>Tests if the logic value of this handle is high impedance (z).
176
+ <ul>
177
+ <li>z?</li>
178
+ <li>hi_z?</li>
179
+ <li>high_z?</li>
180
+ <li>high_impedance?</li>
181
+ <li>tri_state?</li>
182
+ <li>floating?</li>
183
+ </ul>
184
+ </li>
185
+ <li>Sets the logic value of this handle to high impedance (z).
186
+ <ul>
187
+ <li>z!</li>
188
+ <li>hi_z!</li>
189
+ <li>high_z!</li>
190
+ <li>high_impedance!</li>
191
+ <li>tri_state!</li>
192
+ <li>floating!</li>
193
+ </ul>
194
+ </li>
195
+ <li>Tests if the logic value of this handle is at &#8220;logic high&#8221; level.
196
+ <ul>
197
+ <li>high?</li>
198
+ <li>one?</li>
199
+ </ul>
200
+ </li>
201
+ <li>Sets the logic value of this handle to &#8220;logic high&#8221; level.
202
+ <ul>
203
+ <li>high!</li>
204
+ <li>one!</li>
205
+ </ul>
206
+ </li>
207
+ <li>Tests if the logic value of this handle is at &#8220;logic low&#8221; level.
208
+ <ul>
209
+ <li>low?</li>
210
+ <li>zero?</li>
211
+ </ul>
212
+ </li>
213
+ <li>Sets the logic value of this handle to &#8220;logic low&#8221; level.
214
+ <ul>
215
+ <li>low!</li>
216
+ <li>zero!</li>
217
+ </ul></li>
218
+ </ul></li>
219
+ </ul>
220
+
221
+
222
+ <ul>
223
+ <li>Added new methods to <code class="code"><span style="color:#036; font-weight:bold">VPI</span>::<span style="color:#036; font-weight:bold">Handle</span></code> for value change / edge detection:
224
+ <ul>
225
+ <li>edge? &#8211; detects positive and negative edges</li>
226
+ <li>change? &#8211; detects any kind of value change</li>
227
+ <li>change_00? &#8211; detects a value change from 0 to 0</li>
228
+ <li>change_01? &#8211; detects a value change from 0 to 1</li>
229
+ <li>change_0x? &#8211; detects a value change from 0 to unknown</li>
230
+ <li>change_0z? &#8211; detects a value change from 0 to high-Z</li>
231
+ <li>change_10? &#8211; detects a value change from 1 to 0</li>
232
+ <li>change_11? &#8211; detects a value change from 1 to 1</li>
233
+ <li>change_1x? &#8211; detects a value change from 1 to unknown</li>
234
+ <li>change_1z? &#8211; detects a value change from 1 to high-Z</li>
235
+ <li>change_x0? &#8211; detects a value change from unknown to 0</li>
236
+ <li>change_x1? &#8211; detects a value change from unknown to 1</li>
237
+ <li>change_xx? &#8211; detects a value change from unknown to unknown</li>
238
+ <li>change_xz? &#8211; detects a value change from unknown to high-Z</li>
239
+ <li>change_z0? &#8211; detects a value change from high-Z to 0</li>
240
+ <li>change_z1? &#8211; detects a value change from high-Z to 1</li>
241
+ <li>change_zx? &#8211; detects a value change from high-Z to unknown</li>
242
+ <li>change_zz? &#8211; detects a value change from high-Z to high-Z</li>
243
+ </ul></li>
244
+ </ul>
245
+
246
+ </div>
247
+
57
248
  <hr style="display: none"/>
58
249
 
59
250
  <div id="a18.0.2" class="section">
60
251
  <h1 class="title">
61
- <a href="#a-608128238">2</a>
252
+ <a href="#a-607982968" class="ref">3</a>
62
253
 
63
254
  &nbsp;
64
255
 
@@ -81,7 +272,7 @@
81
272
 
82
273
  <div id="a18.0.1" class="section">
83
274
  <h1 class="title">
84
- <a href="#a-608130628">3</a>
275
+ <a href="#a-607985358" class="ref">4</a>
85
276
 
86
277
  &nbsp;
87
278
 
@@ -117,7 +308,7 @@
117
308
 
118
309
  <div id="a18.0.0" class="section">
119
310
  <h1 class="title">
120
- <a href="#a-608133798">4</a>
311
+ <a href="#a-607988538" class="ref">5</a>
121
312
 
122
313
  &nbsp;
123
314
 
@@ -165,8 +356,7 @@ obj/vcs: undefined symbol: vpi_put_data
165
356
  <pre class="code">
166
357
  your_wire.intVal = <span style="color:#00D; font-weight:bold">15</span>
167
358
  your_wire.release_value
168
- advance_time <span style="color:#888"># let the Verilog DUT modify your_wire</span>
169
- </pre>
359
+ advance_time <span style="color:#888"># let the Verilog DUT modify your_wire</span></pre>
170
360
 
171
361
 
172
362
  <p>In addition, you can check if a wire has a forced value using the <code class="code"><span style="color:#036; font-weight:bold">Vpi</span>::<span style="color:#036; font-weight:bold">Handle</span>.value_forced?</code> method.</p></li>
@@ -219,7 +409,7 @@ advance_time <span style="color:#888"># let the Verilog DUT modify your_wire</sp
219
409
 
220
410
  <div id="a17.0.0" class="section">
221
411
  <h1 class="title">
222
- <a href="#a-608137468">5</a>
412
+ <a href="#a-607991888" class="ref">6</a>
223
413
 
224
414
  &nbsp;
225
415
 
@@ -361,7 +551,7 @@ advance_time <span style="color:#888"># let the Verilog DUT modify your_wire</sp
361
551
 
362
552
  <div id="a16.0.1" class="section">
363
553
  <h1 class="title">
364
- <a href="#a-608139778">6</a>
554
+ <a href="#a-607994208" class="ref">7</a>
365
555
 
366
556
  &nbsp;
367
557
 
@@ -392,7 +582,7 @@ advance_time <span style="color:#888"># let the Verilog DUT modify your_wire</sp
392
582
 
393
583
  <div id="a16.0.0" class="section">
394
584
  <h1 class="title">
395
- <a href="#a-608142738">7</a>
585
+ <a href="#a-607997158" class="ref">8</a>
396
586
 
397
587
  &nbsp;
398
588
 
@@ -436,8 +626,7 @@ advance_time <span style="color:#888"># let the Verilog DUT modify your_wire</sp
436
626
  <ul>
437
627
  <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">
438
628
  time = <span style="color:#036; font-weight:bold">S_vpi_time</span>.new
439
- time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
440
- </pre></li>
629
+ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span></pre></li>
441
630
  </ul>
442
631
 
443
632
 
@@ -445,8 +634,7 @@ time.type = <span style="color:#036; font-weight:bold">VpiSuppressTime</span>
445
634
  <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">
446
635
  <span style="color:#036; font-weight:bold">Counter</span>.count.cbValueChange <span style="color:#080; font-weight:bold">do</span> |s_cb_data|
447
636
  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>
448
- <span style="color:#080; font-weight:bold">end</span>
449
- </pre></li>
637
+ <span style="color:#080; font-weight:bold">end</span></pre></li>
450
638
  </ul>
451
639
 
452
640
 
@@ -468,7 +656,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
468
656
 
469
657
  <div id="a15.0.2" class="section">
470
658
  <h1 class="title">
471
- <a href="#a-608145028">8</a>
659
+ <a href="#a-607999448" class="ref">9</a>
472
660
 
473
661
  &nbsp;
474
662
 
@@ -496,7 +684,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
496
684
 
497
685
  <div id="a15.0.1" class="section">
498
686
  <h1 class="title">
499
- <a href="#a-608147468">9</a>
687
+ <a href="#a-608001898" class="ref">10</a>
500
688
 
501
689
  &nbsp;
502
690
 
@@ -537,7 +725,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
537
725
 
538
726
  <div id="a15.0.0" class="section">
539
727
  <h1 class="title">
540
- <a href="#a-608150248">10</a>
728
+ <a href="#a-608004668" class="ref">11</a>
541
729
 
542
730
  &nbsp;
543
731
 
@@ -609,7 +797,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
609
797
 
610
798
  <div id="a14.0.0" class="section">
611
799
  <h1 class="title">
612
- <a href="#a-608153098">11</a>
800
+ <a href="#a-608007518" class="ref">12</a>
613
801
 
614
802
  &nbsp;
615
803
 
@@ -691,7 +879,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
691
879
 
692
880
  <div id="a13.0.0" class="section">
693
881
  <h1 class="title">
694
- <a href="#a-608155708">12</a>
882
+ <a href="#a-608010168" class="ref">13</a>
695
883
 
696
884
  &nbsp;
697
885
 
@@ -750,7 +938,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
750
938
 
751
939
  <div id="a12.1.0" class="section">
752
940
  <h1 class="title">
753
- <a href="#a-608158358">13</a>
941
+ <a href="#a-608012818" class="ref">14</a>
754
942
 
755
943
  &nbsp;
756
944
 
@@ -817,7 +1005,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
817
1005
 
818
1006
  <div id="a12.0.2" class="section">
819
1007
  <h1 class="title">
820
- <a href="#a-608160518">14</a>
1008
+ <a href="#a-608014968" class="ref">15</a>
821
1009
 
822
1010
  &nbsp;
823
1011
 
@@ -832,7 +1020,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
832
1020
 
833
1021
  <div id="a12.0.1" class="section">
834
1022
  <h1 class="title">
835
- <a href="#a-608162918">15</a>
1023
+ <a href="#a-608017358" class="ref">16</a>
836
1024
 
837
1025
  &nbsp;
838
1026
 
@@ -864,7 +1052,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
864
1052
 
865
1053
  <div id="a12.0.0" class="section">
866
1054
  <h1 class="title">
867
- <a href="#a-608165958">16</a>
1055
+ <a href="#a-608020388" class="ref">17</a>
868
1056
 
869
1057
  &nbsp;
870
1058
 
@@ -971,7 +1159,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
971
1159
 
972
1160
  <div id="a11.1.1" class="section">
973
1161
  <h1 class="title">
974
- <a href="#a-608168448">17</a>
1162
+ <a href="#a-608022878" class="ref">18</a>
975
1163
 
976
1164
  &nbsp;
977
1165
 
@@ -1015,7 +1203,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
1015
1203
 
1016
1204
  <div id="a11.1.0" class="section">
1017
1205
  <h1 class="title">
1018
- <a href="#a-608171248">18</a>
1206
+ <a href="#a-608025668" class="ref">19</a>
1019
1207
 
1020
1208
  &nbsp;
1021
1209
 
@@ -1097,7 +1285,7 @@ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</spa
1097
1285
 
1098
1286
  <div id="a11.0.0" class="section">
1099
1287
  <h1 class="title">
1100
- <a href="#a-608173898">19</a>
1288
+ <a href="#a-606393968" class="ref">20</a>
1101
1289
 
1102
1290
  &nbsp;
1103
1291
 
@@ -1157,7 +1345,7 @@ do_stuff
1157
1345
 
1158
1346
  <div id="a10.0.0" class="section">
1159
1347
  <h1 class="title">
1160
- <a href="#a-608176818">20</a>
1348
+ <a href="#a-606406478" class="ref">21</a>
1161
1349
 
1162
1350
  &nbsp;
1163
1351
 
@@ -1245,7 +1433,7 @@ do_stuff
1245
1433
 
1246
1434
  <div id="a9.0.0" class="section">
1247
1435
  <h1 class="title">
1248
- <a href="#a-608179618">21</a>
1436
+ <a href="#a-606422038" class="ref">22</a>
1249
1437
 
1250
1438
  &nbsp;
1251
1439
 
@@ -1319,7 +1507,7 @@ do_stuff
1319
1507
 
1320
1508
  <div id="a8.2.0" class="section">
1321
1509
  <h1 class="title">
1322
- <a href="#a-608182128">22</a>
1510
+ <a href="#a-606446938" class="ref">23</a>
1323
1511
 
1324
1512
  &nbsp;
1325
1513
 
@@ -1360,7 +1548,7 @@ do_stuff
1360
1548
 
1361
1549
  <div id="a8.1.0" class="section">
1362
1550
  <h1 class="title">
1363
- <a href="#a-608184478">23</a>
1551
+ <a href="#a-606456588" class="ref">24</a>
1364
1552
 
1365
1553
  &nbsp;
1366
1554
 
@@ -1391,7 +1579,7 @@ do_stuff
1391
1579
 
1392
1580
  <div id="a8.0.0" class="section">
1393
1581
  <h1 class="title">
1394
- <a href="#a-608187068">24</a>
1582
+ <a href="#a-606460318" class="ref">25</a>
1395
1583
 
1396
1584
  &nbsp;
1397
1585
 
@@ -1453,7 +1641,7 @@ do_stuff
1453
1641
 
1454
1642
  <div id="a7.3.0" class="section">
1455
1643
  <h1 class="title">
1456
- <a href="#a-608189578">25</a>
1644
+ <a href="#a-606467158" class="ref">26</a>
1457
1645
 
1458
1646
  &nbsp;
1459
1647
 
@@ -1501,7 +1689,7 @@ do_stuff
1501
1689
 
1502
1690
  <div id="a7.2.0" class="section">
1503
1691
  <h1 class="title">
1504
- <a href="#a-608191998">26</a>
1692
+ <a href="#a-606978948" class="ref">27</a>
1505
1693
 
1506
1694
  &nbsp;
1507
1695
 
@@ -1540,7 +1728,7 @@ do_stuff
1540
1728
 
1541
1729
  <div id="a7.1.0" class="section">
1542
1730
  <h1 class="title">
1543
- <a href="#a-608194408">27</a>
1731
+ <a href="#a-606981378" class="ref">28</a>
1544
1732
 
1545
1733
  &nbsp;
1546
1734
 
@@ -1583,7 +1771,7 @@ do_stuff
1583
1771
 
1584
1772
  <div id="a7.0.0" class="section">
1585
1773
  <h1 class="title">
1586
- <a href="#a-608197098">28</a>
1774
+ <a href="#a-606984068" class="ref">29</a>
1587
1775
 
1588
1776
  &nbsp;
1589
1777
 
@@ -1656,7 +1844,7 @@ do_stuff
1656
1844
 
1657
1845
  <div id="a6.3.0" class="section">
1658
1846
  <h1 class="title">
1659
- <a href="#a-608199878">29</a>
1847
+ <a href="#a-606986838" class="ref">30</a>
1660
1848
 
1661
1849
  &nbsp;
1662
1850
 
@@ -1777,7 +1965,7 @@ do_stuff
1777
1965
 
1778
1966
  <div id="a6.2.0" class="section">
1779
1967
  <h1 class="title">
1780
- <a href="#a-608202388">30</a>
1968
+ <a href="#a-606989348" class="ref">31</a>
1781
1969
 
1782
1970
  &nbsp;
1783
1971
 
@@ -1828,7 +2016,7 @@ do_stuff
1828
2016
 
1829
2017
  <div id="a6.1.0" class="section">
1830
2018
  <h1 class="title">
1831
- <a href="#a-607221908">31</a>
2019
+ <a href="#a-606991678" class="ref">32</a>
1832
2020
 
1833
2021
  &nbsp;
1834
2022
 
@@ -1860,7 +2048,7 @@ do_stuff
1860
2048
 
1861
2049
  <div id="a6.0.0" class="section">
1862
2050
  <h1 class="title">
1863
- <a href="#a-607224458">32</a>
2051
+ <a href="#a-606994228" class="ref">33</a>
1864
2052
 
1865
2053
  &nbsp;
1866
2054
 
@@ -1913,7 +2101,7 @@ do_stuff
1913
2101
 
1914
2102
  <div id="a5.1.1" class="section">
1915
2103
  <h1 class="title">
1916
- <a href="#a-607226848">33</a>
2104
+ <a href="#a-606996618" class="ref">34</a>
1917
2105
 
1918
2106
  &nbsp;
1919
2107
 
@@ -1949,7 +2137,7 @@ do_stuff
1949
2137
 
1950
2138
  <div id="a5.1.0" class="section">
1951
2139
  <h1 class="title">
1952
- <a href="#a-607229598">34</a>
2140
+ <a href="#a-606999368" class="ref">35</a>
1953
2141
 
1954
2142
  &nbsp;
1955
2143
 
@@ -2024,7 +2212,7 @@ do_stuff
2024
2212
 
2025
2213
  <div id="a5.0.0" class="section">
2026
2214
  <h1 class="title">
2027
- <a href="#a-607232248">35</a>
2215
+ <a href="#a-607002018" class="ref">36</a>
2028
2216
 
2029
2217
  &nbsp;
2030
2218
 
@@ -2087,7 +2275,7 @@ do_stuff
2087
2275
 
2088
2276
  <div id="a4.0.0" class="section">
2089
2277
  <h1 class="title">
2090
- <a href="#a-607234878">36</a>
2278
+ <a href="#a-607004648" class="ref">37</a>
2091
2279
 
2092
2280
  &nbsp;
2093
2281
 
@@ -2148,7 +2336,7 @@ do_stuff
2148
2336
 
2149
2337
  <div id="a3.2.0" class="section">
2150
2338
  <h1 class="title">
2151
- <a href="#a-607237388">37</a>
2339
+ <a href="#a-607007158" class="ref">38</a>
2152
2340
 
2153
2341
  &nbsp;
2154
2342
 
@@ -2198,7 +2386,7 @@ do_stuff
2198
2386
 
2199
2387
  <div id="a3.1.0" class="section">
2200
2388
  <h1 class="title">
2201
- <a href="#a-607239978">38</a>
2389
+ <a href="#a-607009748" class="ref">39</a>
2202
2390
 
2203
2391
  &nbsp;
2204
2392
 
@@ -2258,7 +2446,7 @@ do_stuff
2258
2446
 
2259
2447
  <div id="a3.0.0" class="section">
2260
2448
  <h1 class="title">
2261
- <a href="#a-607242728">39</a>
2449
+ <a href="#a-607012498" class="ref">40</a>
2262
2450
 
2263
2451
  &nbsp;
2264
2452
 
@@ -2331,7 +2519,7 @@ do_stuff
2331
2519
 
2332
2520
  <div id="a2.0.0" class="section">
2333
2521
  <h1 class="title">
2334
- <a href="#a-607245378">40</a>
2522
+ <a href="#a-607015148" class="ref">41</a>
2335
2523
 
2336
2524
  &nbsp;
2337
2525
 
@@ -2390,7 +2578,7 @@ do_stuff
2390
2578
 
2391
2579
  <div id="a1.0.0" class="section">
2392
2580
  <h1 class="title">
2393
- <a href="#a-607248268">41</a>
2581
+ <a href="#a-607018038" class="ref">42</a>
2394
2582
 
2395
2583
  &nbsp;
2396
2584
 
@@ -2474,7 +2662,7 @@ do_stuff
2474
2662
 
2475
2663
  <div id="a0.0.0" class="section">
2476
2664
  <h1 class="title">
2477
- <a href="#a-607250568">42</a>
2665
+ <a href="#a-607020328" class="ref">43</a>
2478
2666
 
2479
2667
  &nbsp;
2480
2668
 
@@ -2497,13 +2685,10 @@ do_stuff
2497
2685
  </ul>
2498
2686
 
2499
2687
  </div>
2688
+
2689
+ <br/>
2690
+ <hr/>
2691
+ This website is maintained by Suraj N. Kurapati (SNK at GNA dot ORG). This particular webpage was last updated on Mon Aug 27 19:26:45 -0700 2007.
2500
2692
  </div>
2501
-
2502
- <hr style="display: none"/>
2503
- <div id="toc">
2504
- <h1 id="toc:contents">Contents</h1>
2505
- <ul><li><span class="hide">1 </span><a id="a-608125968" href="#Release_history">Release history</a><ul><li><span class="hide">1.1 </span><a id="a-608123068" href="#Version_numbering_system">Version numbering system</a></li></ul></li><li><span class="hide">2 </span><a id="a-608128238" href="#a18.0.2">Version 18.0.2 (2007-08-03)</a></li><li><span class="hide">3 </span><a id="a-608130628" href="#a18.0.1">Version 18.0.1 (2007-08-02)</a></li><li><span class="hide">4 </span><a id="a-608133798" href="#a18.0.0">Version 18.0.0 (2007-07-31)</a></li><li><span class="hide">5 </span><a id="a-608137468" href="#a17.0.0">Version 17.0.0 (2007-07-22)</a></li><li><span class="hide">6 </span><a id="a-608139778" href="#a16.0.1">Version 16.0.1 (2007-05-27)</a></li><li><span class="hide">7 </span><a id="a-608142738" href="#a16.0.0">Version 16.0.0 (2007-05-02)</a></li><li><span class="hide">8 </span><a id="a-608145028" href="#a15.0.2">Version 15.0.2 (2007-01-22)</a></li><li><span class="hide">9 </span><a id="a-608147468" href="#a15.0.1">Version 15.0.1 (2007-01-15)</a></li><li><span class="hide">10 </span><a id="a-608150248" href="#a15.0.0">Version 15.0.0 (2007-01-13)</a></li><li><span class="hide">11 </span><a id="a-608153098" href="#a14.0.0">Version 14.0.0 (2006-12-30)</a></li><li><span class="hide">12 </span><a id="a-608155708" href="#a13.0.0">Version 13.0.0 (2006-12-27)</a></li><li><span class="hide">13 </span><a id="a-608158358" href="#a12.1.0">Version 12.1.0 (2006-12-22)</a></li><li><span class="hide">14 </span><a id="a-608160518" href="#a12.0.2">Version 12.0.2 (2006-12-18)</a></li><li><span class="hide">15 </span><a id="a-608162918" href="#a12.0.1">Version 12.0.1 (2006-12-18)</a></li><li><span class="hide">16 </span><a id="a-608165958" href="#a12.0.0">Version 12.0.0 (2006-12-07)</a></li><li><span class="hide">17 </span><a id="a-608168448" href="#a11.1.1">Version 11.1.1 (2006-11-15)</a></li><li><span class="hide">18 </span><a id="a-608171248" href="#a11.1.0">Version 11.1.0 (2006-11-08)</a></li><li><span class="hide">19 </span><a id="a-608173898" href="#a11.0.0">Version 11.0.0 (2006-11-05)</a></li><li><span class="hide">20 </span><a id="a-608176818" href="#a10.0.0">Version 10.0.0 (2006-11-05)</a></li><li><span class="hide">21 </span><a id="a-608179618" href="#a9.0.0">Version 9.0.0 (2006-10-28)</a></li><li><span class="hide">22 </span><a id="a-608182128" href="#a8.2.0">Version 8.2.0 (2006-10-24)</a></li><li><span class="hide">23 </span><a id="a-608184478" href="#a8.1.0">Version 8.1.0 (2006-10-21)</a></li><li><span class="hide">24 </span><a id="a-608187068" href="#a8.0.0">Version 8.0.0 (2006-10-13)</a></li><li><span class="hide">25 </span><a id="a-608189578" href="#a7.3.0">Version 7.3.0 (2006-09-30)</a></li><li><span class="hide">26 </span><a id="a-608191998" href="#a7.2.0">Version 7.2.0 (2006-09-15)</a></li><li><span class="hide">27 </span><a id="a-608194408" href="#a7.1.0">Version 7.1.0 (2006-08-29)</a></li><li><span class="hide">28 </span><a id="a-608197098" href="#a7.0.0">Version 7.0.0 (2006-08-29)</a></li><li><span class="hide">29 </span><a id="a-608199878" href="#a6.3.0">Version 6.3.0 (2006-08-27)</a></li><li><span class="hide">30 </span><a id="a-608202388" href="#a6.2.0">Version 6.2.0 (2006-08-26)</a></li><li><span class="hide">31 </span><a id="a-607221908" href="#a6.1.0">Version 6.1.0 (2006-08-09)</a></li><li><span class="hide">32 </span><a id="a-607224458" href="#a6.0.0">Version 6.0.0 (2006-08-07)</a></li><li><span class="hide">33 </span><a id="a-607226848" href="#a5.1.1">Version 5.1.1 (2006-08-04)</a></li><li><span class="hide">34 </span><a id="a-607229598" href="#a5.1.0">Version 5.1.0 (2006-07-29)</a></li><li><span class="hide">35 </span><a id="a-607232248" href="#a5.0.0">Version 5.0.0 (2006-07-22)</a></li><li><span class="hide">36 </span><a id="a-607234878" href="#a4.0.0">Version 4.0.0 (2006-05-25)</a></li><li><span class="hide">37 </span><a id="a-607237388" href="#a3.2.0">Version 3.2.0 (2006-05-13)</a></li><li><span class="hide">38 </span><a id="a-607239978" href="#a3.1.0">Version 3.1.0 (2006-04-28)</a></li><li><span class="hide">39 </span><a id="a-607242728" href="#a3.0.0">Version 3.0.0 (2006-04-23)</a></li><li><span class="hide">40 </span><a id="a-607245378" href="#a2.0.0">Version 2.0.0 (2006-04-17)</a></li><li><span class="hide">41 </span><a id="a-607248268" href="#a1.0.0">Version 1.0.0 (2006-02-26)</a></li><li><span class="hide">42 </span><a id="a-607250568" href="#a0.0.0">Version 0.0.0 (1999-10-31)</a></li></ul>
2506
-
2507
- </div>
2508
- </body>
2693
+ </body>
2509
2694
  </html>