ruby-vpi 11.0.0 → 11.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (260) hide show
  1. data/HEADER +15 -14
  2. data/HISTORY +36 -1
  3. data/MEMO +17 -14
  4. data/README +2 -19
  5. data/Rakefile +1 -2
  6. data/bin/generate_test.rb +4 -4
  7. data/bin/generate_test_tpl/bench.rb +1 -0
  8. data/bin/generate_test_tpl/bench.v +1 -1
  9. data/bin/header_to_ruby.rb +2 -2
  10. data/doc/background.organization.html +1 -1
  11. data/doc/hacking.html +3 -0
  12. data/doc/hacking.release-packages.html +7 -0
  13. data/doc/index.html +2 -2
  14. data/doc/manual.txt +69 -13
  15. data/doc/problem.ivl.html +3 -3
  16. data/doc/problems.html +1 -1
  17. data/doc/problems.ruby.html +1 -1
  18. data/doc/problems.vsim.html +1 -1
  19. data/doc/setup.installation.html +1 -1
  20. data/doc/src/manual.xml +130 -20
  21. data/doc/usage.examples.html +1 -1
  22. data/doc/usage.tutorial.html +1 -1
  23. data/header.html +15 -14
  24. data/header.part.html +15 -14
  25. data/history.html +88 -15
  26. data/history.part.html +73 -1
  27. data/lib/ruby-vpi.rb +5 -5
  28. data/lib/ruby-vpi/verilog_parser.rb +1 -1
  29. data/lib/ruby-vpi/vpi.rb +184 -169
  30. data/memo.html +44 -38
  31. data/memo.part.html +29 -24
  32. data/readme.html +17 -47
  33. data/readme.part.html +2 -33
  34. data/ref/c/annotated.html +40 -0
  35. data/ref/c/common_8h.html +146 -0
  36. data/ref/c/doxygen.css +358 -0
  37. data/ref/c/doxygen.png +0 -0
  38. data/ref/c/files.html +36 -0
  39. data/ref/c/functions.html +154 -0
  40. data/ref/c/functions_vars.html +154 -0
  41. data/ref/c/globals.html +261 -0
  42. data/ref/c/globals_0x62.html +62 -0
  43. data/ref/c/globals_0x63.html +103 -0
  44. data/ref/c/globals_0x65.html +62 -0
  45. data/ref/c/globals_0x66.html +72 -0
  46. data/ref/c/globals_0x67.html +64 -0
  47. data/ref/c/globals_0x69.html +62 -0
  48. data/ref/c/globals_0x6c.html +64 -0
  49. data/ref/c/globals_0x6d.html +62 -0
  50. data/ref/c/globals_0x6e.html +63 -0
  51. data/ref/c/globals_0x70.html +78 -0
  52. data/ref/c/globals_0x72.html +73 -0
  53. data/ref/c/globals_0x73.html +251 -0
  54. data/ref/c/globals_0x74.html +62 -0
  55. data/ref/c/globals_0x75.html +63 -0
  56. data/ref/c/globals_0x76.html +483 -0
  57. data/ref/c/globals_0x78.html +62 -0
  58. data/ref/c/globals_defs.html +86 -0
  59. data/ref/c/globals_defs_0x65.html +55 -0
  60. data/ref/c/globals_defs_0x6c.html +57 -0
  61. data/ref/c/globals_defs_0x6e.html +56 -0
  62. data/ref/c/globals_defs_0x70.html +56 -0
  63. data/ref/c/globals_defs_0x72.html +57 -0
  64. data/ref/c/globals_defs_0x73.html +164 -0
  65. data/ref/c/globals_defs_0x75.html +56 -0
  66. data/ref/c/globals_defs_0x76.html +470 -0
  67. data/ref/c/globals_defs_0x78.html +55 -0
  68. data/ref/c/globals_enum.html +39 -0
  69. data/ref/c/globals_eval.html +40 -0
  70. data/ref/c/globals_func.html +208 -0
  71. data/ref/c/globals_func_0x66.html +62 -0
  72. data/ref/c/globals_func_0x67.html +55 -0
  73. data/ref/c/globals_func_0x69.html +53 -0
  74. data/ref/c/globals_func_0x70.html +53 -0
  75. data/ref/c/globals_func_0x72.html +57 -0
  76. data/ref/c/globals_func_0x73.html +114 -0
  77. data/ref/c/globals_func_0x76.html +57 -0
  78. data/ref/c/globals_type.html +66 -0
  79. data/ref/c/globals_vars.html +126 -0
  80. data/ref/c/index.html +20 -0
  81. data/ref/c/relay_8c.html +214 -0
  82. data/ref/c/relay_8h.html +129 -0
  83. data/ref/c/structrelay____RubyOptions____def.html +67 -0
  84. data/ref/c/structswig__cast__info.html +98 -0
  85. data/ref/c/structswig__class.html +115 -0
  86. data/ref/c/structswig__module__info.html +132 -0
  87. data/ref/c/structswig__type__info.html +132 -0
  88. data/ref/c/structt__cb__data.html +168 -0
  89. data/ref/c/structt__vpi__delay.html +151 -0
  90. data/ref/c/structt__vpi__error__info.html +219 -0
  91. data/ref/c/structt__vpi__strengthval.html +83 -0
  92. data/ref/c/structt__vpi__systf__data.html +185 -0
  93. data/ref/c/structt__vpi__time.html +100 -0
  94. data/ref/c/structt__vpi__value.html +314 -0
  95. data/ref/c/structt__vpi__vecval.html +66 -0
  96. data/ref/c/structt__vpi__vlog__info.html +151 -0
  97. data/ref/c/swig_8c.html +80 -0
  98. data/ref/c/swig_8h.html +83 -0
  99. data/ref/c/swig__vpi_8h.html +8739 -0
  100. data/ref/c/swig__wrap_8cin.html +11556 -0
  101. data/ref/c/tab_b.gif +0 -0
  102. data/ref/c/tab_l.gif +0 -0
  103. data/ref/c/tab_r.gif +0 -0
  104. data/ref/c/tabs.css +102 -0
  105. data/ref/c/unions__vpi__value__value.html +166 -0
  106. data/ref/c/verilog_8h.html +117 -0
  107. data/ref/c/vlog_8c.html +168 -0
  108. data/ref/c/vlog_8h.html +128 -0
  109. data/ref/c/vpi__user_8h.html +8739 -0
  110. data/ref/ruby/classes/ERB.html +158 -0
  111. data/ref/ruby/classes/ERB.src/M000034.html +29 -0
  112. data/ref/ruby/classes/FileUtils.html +165 -0
  113. data/ref/ruby/classes/FileUtils.src/M000081.html +18 -0
  114. data/ref/ruby/classes/FileUtils.src/M000082.html +18 -0
  115. data/ref/ruby/classes/Integer.html +398 -0
  116. data/ref/ruby/classes/Integer.src/M000012.html +25 -0
  117. data/ref/ruby/classes/Integer.src/M000013.html +18 -0
  118. data/ref/ruby/classes/Integer.src/M000014.html +18 -0
  119. data/ref/ruby/classes/Integer.src/M000015.html +18 -0
  120. data/ref/ruby/classes/Integer.src/M000016.html +18 -0
  121. data/ref/ruby/classes/Integer.src/M000017.html +18 -0
  122. data/ref/ruby/classes/Integer.src/M000020.html +22 -0
  123. data/ref/ruby/classes/Integer.src/M000021.html +22 -0
  124. data/ref/ruby/classes/Integer.src/M000022.html +25 -0
  125. data/ref/ruby/classes/Integer.src/M000023.html +31 -0
  126. data/ref/ruby/classes/Integer.src/M000024.html +25 -0
  127. data/ref/ruby/classes/Integer.src/M000025.html +30 -0
  128. data/ref/ruby/classes/OutputInfo.html +294 -0
  129. data/ref/ruby/classes/OutputInfo.src/M000030.html +50 -0
  130. data/ref/ruby/classes/RDoc.html +135 -0
  131. data/ref/ruby/classes/RDoc.src/M000095.html +40 -0
  132. data/ref/ruby/classes/RubyVpi.html +206 -0
  133. data/ref/ruby/classes/RubyVpi.src/M000083.html +78 -0
  134. data/ref/ruby/classes/RubyVpi.src/M000084.html +20 -0
  135. data/ref/ruby/classes/RubyVpi/Config.html +159 -0
  136. data/ref/ruby/classes/String.html +159 -0
  137. data/ref/ruby/classes/String.src/M000032.html +41 -0
  138. data/ref/ruby/classes/String.src/M000033.html +18 -0
  139. data/ref/ruby/classes/Table.html +191 -0
  140. data/ref/ruby/classes/Table.src/M000026.html +38 -0
  141. data/ref/ruby/classes/Table.src/M000027.html +18 -0
  142. data/ref/ruby/classes/Table.src/M000028.html +18 -0
  143. data/ref/ruby/classes/Table.src/M000029.html +18 -0
  144. data/ref/ruby/classes/Template.html +158 -0
  145. data/ref/ruby/classes/Template.src/M000031.html +18 -0
  146. data/ref/ruby/classes/VerilogParser.html +187 -0
  147. data/ref/ruby/classes/VerilogParser.src/M000005.html +34 -0
  148. data/ref/ruby/classes/VerilogParser/Module.html +172 -0
  149. data/ref/ruby/classes/VerilogParser/Module.src/M000006.html +29 -0
  150. data/ref/ruby/classes/VerilogParser/Module/Parameter.html +160 -0
  151. data/ref/ruby/classes/VerilogParser/Module/Parameter.src/M000011.html +21 -0
  152. data/ref/ruby/classes/VerilogParser/Module/Port.html +207 -0
  153. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000007.html +21 -0
  154. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000008.html +18 -0
  155. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000009.html +18 -0
  156. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000010.html +18 -0
  157. data/ref/ruby/classes/Vpi.html +124 -0
  158. data/ref/ruby/classes/Vpi/Handle.html +383 -0
  159. data/ref/ruby/classes/Vpi/Handle.src/M000085.html +18 -0
  160. data/ref/ruby/classes/Vpi/Handle.src/M000086.html +18 -0
  161. data/ref/ruby/classes/Vpi/Handle.src/M000087.html +22 -0
  162. data/ref/ruby/classes/Vpi/Handle.src/M000088.html +44 -0
  163. data/ref/ruby/classes/Vpi/Handle.src/M000089.html +87 -0
  164. data/ref/ruby/classes/Vpi/Handle.src/M000090.html +30 -0
  165. data/ref/ruby/classes/Vpi/Handle.src/M000091.html +24 -0
  166. data/ref/ruby/classes/Vpi/Handle.src/M000093.html +68 -0
  167. data/ref/ruby/classes/Vpi/Handle/Property.html +130 -0
  168. data/ref/ruby/classes/Vpi/Handle/Property.src/M000094.html +80 -0
  169. data/ref/ruby/classes/XX.html +138 -0
  170. data/ref/ruby/classes/XX/Document.html +295 -0
  171. data/ref/ruby/classes/XX/Document.src/M000072.html +22 -0
  172. data/ref/ruby/classes/XX/Document.src/M000073.html +20 -0
  173. data/ref/ruby/classes/XX/Document.src/M000074.html +20 -0
  174. data/ref/ruby/classes/XX/Document.src/M000075.html +20 -0
  175. data/ref/ruby/classes/XX/Document.src/M000076.html +22 -0
  176. data/ref/ruby/classes/XX/Document.src/M000077.html +21 -0
  177. data/ref/ruby/classes/XX/Document.src/M000078.html +21 -0
  178. data/ref/ruby/classes/XX/Document.src/M000079.html +34 -0
  179. data/ref/ruby/classes/XX/Document.src/M000080.html +98 -0
  180. data/ref/ruby/classes/XX/HTML4.html +145 -0
  181. data/ref/ruby/classes/XX/HTML4.src/M000036.html +20 -0
  182. data/ref/ruby/classes/XX/HTML4/Strict.html +138 -0
  183. data/ref/ruby/classes/XX/HTML4/Strict.src/M000038.html +20 -0
  184. data/ref/ruby/classes/XX/HTML4/Transitional.html +138 -0
  185. data/ref/ruby/classes/XX/HTML4/Transitional.src/M000037.html +20 -0
  186. data/ref/ruby/classes/XX/Markup.html +160 -0
  187. data/ref/ruby/classes/XX/Markup.src/M000043.html +28 -0
  188. data/ref/ruby/classes/XX/Markup/ClassMethods.html +236 -0
  189. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000044.html +22 -0
  190. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000045.html +20 -0
  191. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000046.html +25 -0
  192. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000047.html +20 -0
  193. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000048.html +27 -0
  194. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000049.html +20 -0
  195. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000050.html +27 -0
  196. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000051.html +22 -0
  197. data/ref/ruby/classes/XX/Markup/Error.html +111 -0
  198. data/ref/ruby/classes/XX/Markup/InstanceMethods.html +474 -0
  199. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000052.html +56 -0
  200. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000053.html +33 -0
  201. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000054.html +31 -0
  202. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000055.html +48 -0
  203. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000056.html +20 -0
  204. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000057.html +31 -0
  205. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000058.html +32 -0
  206. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000059.html +32 -0
  207. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000060.html +28 -0
  208. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000061.html +23 -0
  209. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000062.html +26 -0
  210. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000063.html +20 -0
  211. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000064.html +20 -0
  212. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000065.html +20 -0
  213. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000066.html +20 -0
  214. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000067.html +20 -0
  215. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000068.html +21 -0
  216. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000069.html +20 -0
  217. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000070.html +20 -0
  218. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000071.html +20 -0
  219. data/ref/ruby/classes/XX/XHTML.html +145 -0
  220. data/ref/ruby/classes/XX/XHTML.src/M000039.html +36 -0
  221. data/ref/ruby/classes/XX/XHTML/Strict.html +138 -0
  222. data/ref/ruby/classes/XX/XHTML/Strict.src/M000041.html +20 -0
  223. data/ref/ruby/classes/XX/XHTML/Transitional.html +138 -0
  224. data/ref/ruby/classes/XX/XHTML/Transitional.src/M000040.html +20 -0
  225. data/ref/ruby/classes/XX/XML.html +138 -0
  226. data/ref/ruby/classes/XX/XML.src/M000035.html +20 -0
  227. data/ref/ruby/classes/XX/XMLish.html +138 -0
  228. data/ref/ruby/classes/XX/XMLish.src/M000042.html +18 -0
  229. data/ref/ruby/created.rid +1 -0
  230. data/ref/ruby/files/bin/generate_test_rb.html +248 -0
  231. data/ref/ruby/files/bin/generate_test_rb.src/M000001.html +18 -0
  232. data/ref/ruby/files/bin/generate_test_rb.src/M000002.html +40 -0
  233. data/ref/ruby/files/bin/header_to_ruby_rb.html +124 -0
  234. data/ref/ruby/files/lib/ruby-vpi/erb_rb.html +108 -0
  235. data/ref/ruby/files/lib/ruby-vpi/integer_rb.html +101 -0
  236. data/ref/ruby/files/lib/ruby-vpi/rake_rb.html +108 -0
  237. data/ref/ruby/files/lib/ruby-vpi/rcov_rb.html +111 -0
  238. data/ref/ruby/files/lib/ruby-vpi/rdoc_rb.html +108 -0
  239. data/ref/ruby/files/lib/ruby-vpi/rspec_rb.html +115 -0
  240. data/ref/ruby/files/lib/ruby-vpi/runner_proxy_rb.html +108 -0
  241. data/ref/ruby/files/lib/ruby-vpi/runner_rb.html +208 -0
  242. data/ref/ruby/files/lib/ruby-vpi/runner_rb.src/M000003.html +24 -0
  243. data/ref/ruby/files/lib/ruby-vpi/runner_rb.src/M000004.html +26 -0
  244. data/ref/ruby/files/lib/ruby-vpi/verilog_parser_rb.html +107 -0
  245. data/ref/ruby/files/lib/ruby-vpi/vpi_rb.html +108 -0
  246. data/ref/ruby/files/lib/ruby-vpi/xx_rb.html +148 -0
  247. data/ref/ruby/files/lib/ruby-vpi_rb.html +111 -0
  248. data/ref/ruby/fr_class_index.html +57 -0
  249. data/ref/ruby/fr_file_index.html +40 -0
  250. data/ref/ruby/fr_method_index.html +121 -0
  251. data/ref/ruby/index.html +24 -0
  252. data/ref/ruby/rdoc-style.css +208 -0
  253. data/samp/counter/counter_rspec_bench.rb +1 -0
  254. data/samp/counter/counter_rspec_bench.v +1 -1
  255. data/samp/counter/counter_xunit_bench.rb +1 -0
  256. data/samp/counter/counter_xunit_bench.v +1 -1
  257. data/samp/pipelined_alu/hw5_unit_test_bench.rb +1 -0
  258. data/samp/pipelined_alu/hw5_unit_test_bench.v +1 -1
  259. data/samp/pipelined_alu/int_gen.rb +6 -7
  260. metadata +269 -2
@@ -1,3 +1,3 @@
1
1
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
2
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Chapter 5. Known problems</title><link rel="stylesheet" href="styles/manual.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.68.1" /><link rel="start" href="index.html" title="Ruby-VPI user manual" /><link rel="up" href="index.html" title="Ruby-VPI user manual" /><link rel="prev" href="usage.examples.html" title="Examples" /><link rel="next" href="problems.ruby.html" title="Ruby" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 5. Known problems</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="usage.examples.html"><img src="images/prev.png" alt="Prev" /></a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="problems.ruby.html"><img src="images/next.png" alt="Next" /></a></td></tr></table><hr /></div><div class="chapter" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="problems"></a>Chapter 5. Known problems</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="problems.ruby.html">Ruby</a></span></dt><dd><dl><dt><span class="section"><a href="problems.ruby.html#problems.ruby.SystemStackError">SystemStackError</a></span></dt><dt><span class="section"><a href="problems.ruby.html#problems.ruby.xUnit">test/unit</a></span></dt></dl></dd><dt><span class="section"><a href="problem.ivl.html">Icarus Verilog</a></span></dt><dd><dl><dt><span class="section"><a href="problem.ivl.html#problems.ivl.vpi_handle_by_name">vpi_handle_by_name</a></span></dt><dt><span class="section"><a href="problem.ivl.html#problems.ivl.vpi_reset">Vpi::reset</a></span></dt></dl></dd><dt><span class="section"><a href="problems.vsim.html">Mentor Modelsim</a></span></dt><dd><dl><dt><span class="section"><a href="problems.vsim.html#problems.vsim.ruby_run">ruby_run()</a></span></dt></dl></dd></dl></div><p>This chapter presents known problems and possible solutions. In addition, previously solved problems have been retained for historical reference.</p></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="usage.examples.html"><img src="images/prev.png" alt="Prev" /></a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="problems.ruby.html"><img src="images/next.png" alt="Next" /></a></td></tr><tr><td width="40%" align="left" valign="top">Examples </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home" /></a></td><td width="40%" align="right" valign="top"> Ruby</td></tr></table></div></body></html>
3
+ <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Chapter 6. Known problems</title><link rel="stylesheet" href="styles/manual.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.68.1" /><link rel="start" href="index.html" title="Ruby-VPI user manual" /><link rel="up" href="index.html" title="Ruby-VPI user manual" /><link rel="prev" href="hacking.release-packages.html" title="Building release packages" /><link rel="next" href="problems.ruby.html" title="Ruby" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 6. Known problems</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="hacking.release-packages.html"><img src="images/prev.png" alt="Prev" /></a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="problems.ruby.html"><img src="images/next.png" alt="Next" /></a></td></tr></table><hr /></div><div class="chapter" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="problems"></a>Chapter 6. Known problems</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="problems.ruby.html">Ruby</a></span></dt><dd><dl><dt><span class="section"><a href="problems.ruby.html#problems.ruby.SystemStackError">SystemStackError</a></span></dt><dt><span class="section"><a href="problems.ruby.html#problems.ruby.xUnit">test/unit</a></span></dt></dl></dd><dt><span class="section"><a href="problem.ivl.html">Icarus Verilog</a></span></dt><dd><dl><dt><span class="section"><a href="problem.ivl.html#problems.ivl.vpi_handle_by_name">vpi_handle_by_name</a></span></dt><dt><span class="section"><a href="problem.ivl.html#problems.ivl.vpi_reset">Vpi::reset</a></span></dt></dl></dd><dt><span class="section"><a href="problems.vsim.html">Mentor Modelsim</a></span></dt><dd><dl><dt><span class="section"><a href="problems.vsim.html#problems.vsim.ruby_run">ruby_run()</a></span></dt></dl></dd></dl></div><p>This chapter presents known problems and possible solutions. In addition, previously solved problems have been retained for historical reference.</p></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="hacking.release-packages.html"><img src="images/prev.png" alt="Prev" /></a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="problems.ruby.html"><img src="images/next.png" alt="Next" /></a></td></tr><tr><td width="40%" align="left" valign="top">Building release packages </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home" /></a></td><td width="40%" align="right" valign="top"> Ruby</td></tr></table></div></body></html>
@@ -1,3 +1,3 @@
1
1
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
2
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ruby</title><link rel="stylesheet" href="styles/manual.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.68.1" /><link rel="start" href="index.html" title="Ruby-VPI user manual" /><link rel="up" href="problems.html" title="Chapter 5. Known problems" /><link rel="prev" href="problems.html" title="Chapter 5. Known problems" /><link rel="next" href="problem.ivl.html" title="Icarus Verilog" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Ruby</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="problems.html"><img src="images/prev.png" alt="Prev" /></a> </td><th width="60%" align="center">Chapter 5. Known problems</th><td width="20%" align="right"> <a accesskey="n" href="problem.ivl.html"><img src="images/next.png" alt="Next" /></a></td></tr></table><hr /></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="problems.ruby"></a>Ruby</h2></div></div></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="problems.ruby.SystemStackError"></a>SystemStackError</h3></div></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note: Problem solved"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png" /></td><th align="left">Problem solved</th></tr><tr><td align="left" valign="top"><p>This problem was fixed in release 2.0.0 (2006-04-17). If it still occurs, then <a href="introduction.resources.html" title="Resources">please report it</a>.</p></td></tr></table></div><p>If a “<span class="quote">stack level too deep (SystemStackError)</span>” error occurs during the simulation, then increase the system-resource limit for stack-size by running the command <span><strong class="command">ulimit <code class="option">-s</code> <em class="replaceable"><code>unlimited</code></em></strong></span> before starting the simulation.</p></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="problems.ruby.xUnit"></a>test/unit</h3></div></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note: Problem solved"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png" /></td><th align="left">Problem solved</th></tr><tr><td align="left" valign="top"><p>This problem was fixed in release 2.0.0 (2006-04-17). If it still occurs, then <a href="introduction.resources.html" title="Resources">please report it</a>.</p></td></tr></table></div><p>If your specification employs Ruby's unit testing framework, then you will encounter the error: “<span class="quote">[BUG] cross-thread violation on rb_gc()</span>”.</p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="problems.html"><img src="images/prev.png" alt="Prev" /></a> </td><td width="20%" align="center"><a accesskey="u" href="problems.html"><img src="images/up.png" alt="Up" /></a></td><td width="40%" align="right"> <a accesskey="n" href="problem.ivl.html"><img src="images/next.png" alt="Next" /></a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 5. Known problems </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home" /></a></td><td width="40%" align="right" valign="top"> Icarus Verilog</td></tr></table></div></body></html>
3
+ <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ruby</title><link rel="stylesheet" href="styles/manual.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.68.1" /><link rel="start" href="index.html" title="Ruby-VPI user manual" /><link rel="up" href="problems.html" title="Chapter 6. Known problems" /><link rel="prev" href="problems.html" title="Chapter 6. Known problems" /><link rel="next" href="problem.ivl.html" title="Icarus Verilog" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Ruby</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="problems.html"><img src="images/prev.png" alt="Prev" /></a> </td><th width="60%" align="center">Chapter 6. Known problems</th><td width="20%" align="right"> <a accesskey="n" href="problem.ivl.html"><img src="images/next.png" alt="Next" /></a></td></tr></table><hr /></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="problems.ruby"></a>Ruby</h2></div></div></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="problems.ruby.SystemStackError"></a>SystemStackError</h3></div></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note: Problem solved"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png" /></td><th align="left">Problem solved</th></tr><tr><td align="left" valign="top"><p>This problem was fixed in release 2.0.0 (2006-04-17). If it still occurs, then <a href="introduction.resources.html" title="Resources">please report it</a>.</p></td></tr></table></div><p>If a “<span class="quote">stack level too deep (SystemStackError)</span>” error occurs during the simulation, then increase the system-resource limit for stack-size by running the command <span><strong class="command">ulimit <code class="option">-s</code> <em class="replaceable"><code>unlimited</code></em></strong></span> before starting the simulation.</p></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="problems.ruby.xUnit"></a>test/unit</h3></div></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note: Problem solved"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png" /></td><th align="left">Problem solved</th></tr><tr><td align="left" valign="top"><p>This problem was fixed in release 2.0.0 (2006-04-17). If it still occurs, then <a href="introduction.resources.html" title="Resources">please report it</a>.</p></td></tr></table></div><p>If your specification employs Ruby's unit testing framework, then you will encounter the error: “<span class="quote">[BUG] cross-thread violation on rb_gc()</span>”.</p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="problems.html"><img src="images/prev.png" alt="Prev" /></a> </td><td width="20%" align="center"><a accesskey="u" href="problems.html"><img src="images/up.png" alt="Up" /></a></td><td width="40%" align="right"> <a accesskey="n" href="problem.ivl.html"><img src="images/next.png" alt="Next" /></a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 6. Known problems </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home" /></a></td><td width="40%" align="right" valign="top"> Icarus Verilog</td></tr></table></div></body></html>
@@ -1,3 +1,3 @@
1
1
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
2
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Mentor Modelsim</title><link rel="stylesheet" href="styles/manual.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.68.1" /><link rel="start" href="index.html" title="Ruby-VPI user manual" /><link rel="up" href="problems.html" title="Chapter 5. Known problems" /><link rel="prev" href="problem.ivl.html" title="Icarus Verilog" /><link rel="next" href="glossary.html" title="Glossary" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Mentor Modelsim</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="problem.ivl.html"><img src="images/prev.png" alt="Prev" /></a> </td><th width="60%" align="center">Chapter 5. Known problems</th><td width="20%" align="right"> <a accesskey="n" href="glossary.html"><img src="images/next.png" alt="Next" /></a></td></tr></table><hr /></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="problems.vsim"></a>Mentor Modelsim</h2></div></div></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="problems.vsim.ruby_run"></a>ruby_run()</h3></div></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note: Problem solved"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png" /></td><th align="left">Problem solved</th></tr><tr><td align="left" valign="top"><p>This problem was fixed in release 2.0.0 (2006-04-17). If it still occurs, then <a href="introduction.resources.html" title="Resources">please report it</a>.</p></td></tr></table></div><p>Version 6.1b of Mentor Modelsim doesn't play nicely with either an embedded Ruby interpreter or POSIX threads in a PLI application. When <span class="application">Ruby-VPI</span> invokes the <code class="function">ruby_run</code> function (which starts the Ruby interpreter), the simulator terminates immediately with an exit status of 0.</p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="problem.ivl.html"><img src="images/prev.png" alt="Prev" /></a> </td><td width="20%" align="center"><a accesskey="u" href="problems.html"><img src="images/up.png" alt="Up" /></a></td><td width="40%" align="right"> <a accesskey="n" href="glossary.html"><img src="images/next.png" alt="Next" /></a></td></tr><tr><td width="40%" align="left" valign="top">Icarus Verilog </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home" /></a></td><td width="40%" align="right" valign="top"> Glossary</td></tr></table></div></body></html>
3
+ <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Mentor Modelsim</title><link rel="stylesheet" href="styles/manual.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.68.1" /><link rel="start" href="index.html" title="Ruby-VPI user manual" /><link rel="up" href="problems.html" title="Chapter 6. Known problems" /><link rel="prev" href="problem.ivl.html" title="Icarus Verilog" /><link rel="next" href="glossary.html" title="Glossary" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Mentor Modelsim</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="problem.ivl.html"><img src="images/prev.png" alt="Prev" /></a> </td><th width="60%" align="center">Chapter 6. Known problems</th><td width="20%" align="right"> <a accesskey="n" href="glossary.html"><img src="images/next.png" alt="Next" /></a></td></tr></table><hr /></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="problems.vsim"></a>Mentor Modelsim</h2></div></div></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="problems.vsim.ruby_run"></a>ruby_run()</h3></div></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note: Problem solved"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png" /></td><th align="left">Problem solved</th></tr><tr><td align="left" valign="top"><p>This problem was fixed in release 2.0.0 (2006-04-17). If it still occurs, then <a href="introduction.resources.html" title="Resources">please report it</a>.</p></td></tr></table></div><p>Version 6.1b of Mentor Modelsim doesn't play nicely with either an embedded Ruby interpreter or POSIX threads in a PLI application. When <span class="application">Ruby-VPI</span> invokes the <code class="function">ruby_run</code> function (which starts the Ruby interpreter), the simulator terminates immediately with an exit status of 0.</p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="problem.ivl.html"><img src="images/prev.png" alt="Prev" /></a> </td><td width="20%" align="center"><a accesskey="u" href="problems.html"><img src="images/up.png" alt="Up" /></a></td><td width="40%" align="right"> <a accesskey="n" href="glossary.html"><img src="images/next.png" alt="Next" /></a></td></tr><tr><td width="40%" align="left" valign="top">Icarus Verilog </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home" /></a></td><td width="40%" align="right" valign="top"> Glossary</td></tr></table></div></body></html>
@@ -6,4 +6,4 @@
6
6
 
7
7
  <code class="prompt">$</code> <strong class="userinput"><code><span><strong class="command">ls <code class="option">-d</code> <em class="replaceable"><code>/usr/lib/ruby/gems/1.8</code></em>/gems/ruby-vpi-*</strong></span></code></strong>
8
8
  <code class="computeroutput">/usr/lib/ruby/gems/1.8/gems/ruby-vpi-7.0.0/</code>
9
- </pre><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="setup.installation.windows"></a>Installing on Windows</h3></div></div></div><div class="procedure"><ol type="1"><li><p>Install <a href="http://www.cygwin.com" target="_top">Cygwin</a>, the Linux-like environment for Windows.</p></li><li><p>Search for object files whose names end with <code class="filename">.so</code>, <code class="filename">.o</code>, or <code class="filename">.dll</code> in your Verilog simulator's installation directory.</p></li><li><p>Determine which object files, among those found in the previous step, contain symbols whose names begin with <span class="symbol">_vpi</span><sup>[<a id="id2528227" href="#ftn.id2528227">1</a>]</sup> by running the command <span><strong class="command">for x in *.{o,so,dll}; do nm $x | grep -q '[Tt] _vpi' &gt; /dev/null &amp;&amp; echo $x; done</strong></span> in Cygwin.</p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.png" /></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>If you are using Mentor Modelsim, the desired object file can be found at a path similar to <code class="filename">C:\Modeltech\win32\libvsim.dll</code>.</p></td></tr></table></div><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.png" /></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>If you are using GPL Cver, the desired object file can be found at a path similar to <code class="filename">C:\gplcver\objs\v_vpi.o</code>.</p></td></tr></table></div></li><li><p>Assign the path of the object file (determined in the previous step) to the <code class="varname">LDFLAGS</code> environment variable. For example, if the object file's path is <em class="replaceable"><code>/foo/bar/vpi.so</code></em>, then you would run the command <span><strong class="command">export <code class="varname">LDFLAGS</code>=<em class="replaceable"><code>/foo/bar/vpi.so</code></em></strong></span> in Cygwin.</p></li><li><p>You may now install <span class="application">Ruby-VPI</span> by running the command <span><strong class="command">gem <span class="action">install</span> <em class="replaceable"><code>ruby-vpi</code></em></strong></span> in Cygwin.</p></li></ol></div></div><div class="footnotes"><br /><hr width="100" align="left" /><div class="footnote"><p><sup>[<a id="ftn.id2528227" href="#id2528227">1</a>] </sup>Because <span class="application">Ruby-VPI</span> makes use of the <span class="acronym">VPI</span> C-language interface, it links to symbols whose names begin with <span class="symbol">_vpi</span>. It is possible for these symbols to be undefined when <span class="application">Ruby-VPI</span> is compiled under GNU/Linux and similar operating systems. In contrast, one <a href="http://sourceware.org/ml/cygwin/2001-12/msg01293.html" target="_top">cannot compile a shared object file with references to undefined symbols under Windows</a>. Thus, we must find a Verilog simulator's shared object file, which contains definitions of all <span class="acronym">VPI</span> symbols, and give this file to the linker when compiling <span class="application">Ruby-VPI</span>.</p></div></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="setup.reqs.html"><img src="images/prev.png" alt="Prev" /></a> </td><td width="20%" align="center"><a accesskey="u" href="setup.html"><img src="images/up.png" alt="Up" /></a></td><td width="40%" align="right"> <a accesskey="n" href="setup.maintenance.html"><img src="images/next.png" alt="Next" /></a></td></tr><tr><td width="40%" align="left" valign="top">Requirements </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home" /></a></td><td width="40%" align="right" valign="top"> Maintenance</td></tr></table></div></body></html>
9
+ </pre><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="setup.installation.windows"></a>Installing on Windows</h3></div></div></div><div class="procedure"><ol type="1"><li><p>Install <a href="http://www.cygwin.com" target="_top">Cygwin</a>, the Linux-like environment for Windows.</p></li><li><p>Search for object files whose names end with <code class="filename">.so</code>, <code class="filename">.o</code>, or <code class="filename">.dll</code> in your Verilog simulator's installation directory.</p></li><li><p>Determine which object files, among those found in the previous step, contain symbols whose names begin with <span class="symbol">_vpi</span><sup>[<a id="id2528554" href="#ftn.id2528554">1</a>]</sup> by running the command <span><strong class="command">for x in *.{o,so,dll}; do nm $x | grep -q '[Tt] _vpi' &gt; /dev/null &amp;&amp; echo $x; done</strong></span> in Cygwin.</p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.png" /></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>If you are using Mentor Modelsim, the desired object file can be found at a path similar to <code class="filename">C:\Modeltech\win32\libvsim.dll</code>.</p></td></tr></table></div><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.png" /></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>If you are using GPL Cver, the desired object file can be found at a path similar to <code class="filename">C:\gplcver\objs\v_vpi.o</code>.</p></td></tr></table></div></li><li><p>Assign the path of the object file (determined in the previous step) to the <code class="varname">LDFLAGS</code> environment variable. For example, if the object file's path is <em class="replaceable"><code>/foo/bar/vpi.so</code></em>, then you would run the command <span><strong class="command">export <code class="varname">LDFLAGS</code>=<em class="replaceable"><code>/foo/bar/vpi.so</code></em></strong></span> in Cygwin.</p></li><li><p>You may now install <span class="application">Ruby-VPI</span> by running the command <span><strong class="command">gem <span class="action">install</span> <em class="replaceable"><code>ruby-vpi</code></em></strong></span> in Cygwin.</p></li></ol></div></div><div class="footnotes"><br /><hr width="100" align="left" /><div class="footnote"><p><sup>[<a id="ftn.id2528554" href="#id2528554">1</a>] </sup>Because <span class="application">Ruby-VPI</span> makes use of the <span class="acronym">VPI</span> C-language interface, it links to symbols whose names begin with <span class="symbol">_vpi</span>. It is possible for these symbols to be undefined when <span class="application">Ruby-VPI</span> is compiled under GNU/Linux and similar operating systems. In contrast, one <a href="http://sourceware.org/ml/cygwin/2001-12/msg01293.html" target="_top">cannot compile a shared object file with references to undefined symbols under Windows</a>. Thus, we must find a Verilog simulator's shared object file, which contains definitions of all <span class="acronym">VPI</span> symbols, and give this file to the linker when compiling <span class="application">Ruby-VPI</span>.</p></div></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="setup.reqs.html"><img src="images/prev.png" alt="Prev" /></a> </td><td width="20%" align="center"><a accesskey="u" href="setup.html"><img src="images/up.png" alt="Up" /></a></td><td width="40%" align="right"> <a accesskey="n" href="setup.maintenance.html"><img src="images/next.png" alt="Next" /></a></td></tr><tr><td width="40%" align="left" valign="top">Requirements </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home" /></a></td><td width="40%" align="right" valign="top"> Maintenance</td></tr></table></div></body></html>
@@ -381,7 +381,7 @@
381
381
  <varlistentry>
382
382
  <term>Accessor</term>
383
383
  <listitem>
384
- <para>This parameter suggests which &vpi; function should be used to access the &vpi; property. When this parameter is not specified, the &vpi; utility layer will attempt to <emphasis>guess</emphasis> the value of this parameter (<ulink url="../../ref/ruby/classes/SWIG/TYPE_p_unsigned_int.html">see the source code</ulink> of the <code><constant>SWIG</constant>::<constant>TYPE_p_unsigned_int</constant>#<function>method_missing</function></code> method for details).</para>
384
+ <para>This parameter suggests which &vpi; function should be used to access the &vpi; property. When this parameter is not specified, the &vpi; utility layer will attempt to <emphasis>guess</emphasis> the value of this parameter (<ulink url="../ref/ruby/classes/Vpi/Handle/Property.html">see the source code</ulink> of the <code><constant>Property</constant>.<function>resolve</function></code> method for details).</para>
385
385
 
386
386
  <table frame='all'>
387
387
  <title>Possible accessors and their implications</title>
@@ -468,25 +468,100 @@
468
468
  </row>
469
469
  </thead>
470
470
  <tbody>
471
- <row>
472
- <entry><code><varname>handle</varname>.<function>each_vpiNet</function> {|<varname>net</varname>| <function>puts</function> <varname>net</varname>.<function>fullName</function>}</code></entry>
473
- <entry>each</entry>
474
- <entry>_</entry>
475
- <entry>vpiNet</entry>
476
- <entry></entry>
477
- <entry></entry>
478
- <entry></entry>
479
- <entry morerows="1">These expressions print the full name of each <constant>vpiNet</constant> object associated with the handle.</entry>
480
- </row>
481
- <row>
482
- <entry><code><varname>handle</varname>.<function>each_net</function> {|<varname>net</varname>| <function>puts</function> <varname>net</varname>.<function>fullName</function>}</code></entry>
483
- <entry>each</entry>
484
- <entry>_</entry>
485
- <entry>net</entry>
486
- <entry></entry>
487
- <entry></entry>
488
- <entry></entry>
489
- </row>
471
+ <!-- each -->
472
+ <row>
473
+ <entry><code><varname>handle</varname>.<function>each_vpiNet</function> {|<varname>net</varname>| <function>puts</function> <varname>net</varname>.<function>fullName</function>}</code></entry>
474
+ <entry>each</entry>
475
+ <entry>_</entry>
476
+ <entry>vpiNet</entry>
477
+ <entry></entry>
478
+ <entry></entry>
479
+ <entry></entry>
480
+ <entry morerows="1">These expressions print the full name of each <constant>vpiNet</constant> object associated with the handle.</entry>
481
+ </row>
482
+ <row>
483
+ <entry><code><varname>handle</varname>.<function>each_net</function> {|<varname>net</varname>| <function>puts</function> <varname>net</varname>.<function>fullName</function>}</code></entry>
484
+ <entry>each</entry>
485
+ <entry>_</entry>
486
+ <entry>net</entry>
487
+ <entry></entry>
488
+ <entry></entry>
489
+ <entry></entry>
490
+ </row>
491
+
492
+ <!-- all? -->
493
+ <row>
494
+ <entry><code><varname>handle</varname>.<function>all_reg?</function> {|<varname>reg</varname>| <varname>reg</varname>.<function>size</function> == <literal>1</literal>}</code></entry>
495
+ <entry>all?</entry>
496
+ <entry>_</entry>
497
+ <entry>vpiReg</entry>
498
+ <entry></entry>
499
+ <entry></entry>
500
+ <entry></entry>
501
+ <entry morerows="1">These expressions check if all registers associated with the handle are capable of storing only one bit.</entry>
502
+ </row>
503
+
504
+ <row>
505
+ <entry><code><varname>handle</varname>.<function>all_reg?</function> {|<varname>reg</varname>| <varname>reg</varname>.<function>size</function> == <literal>1</literal>}</code></entry>
506
+ <entry>all?</entry>
507
+ <entry>_</entry>
508
+ <entry>reg</entry>
509
+ <entry></entry>
510
+ <entry></entry>
511
+ <entry></entry>
512
+ </row>
513
+
514
+ <!-- select -->
515
+ <row>
516
+ <entry><code><varname>handle</varname>.<function>select_vpiNet</function> {|<varname>net</varname>| <varname>net</varname>.<function>x?</function>}</code></entry>
517
+ <entry>select</entry>
518
+ <entry>_</entry>
519
+ <entry>vpiReg</entry>
520
+ <entry></entry>
521
+ <entry></entry>
522
+ <entry></entry>
523
+ <entry morerows="4">These expressions return a list of nets whose logic value is <quote>don't care</quote>.</entry>
524
+ </row>
525
+
526
+ <row>
527
+ <entry><code><varname>handle</varname>.<function>select_net</function> {|<varname>net</varname>| <varname>net</varname>.<function>x?</function>}</code></entry>
528
+ <entry>select</entry>
529
+ <entry>_</entry>
530
+ <entry>net</entry>
531
+ <entry></entry>
532
+ <entry></entry>
533
+ <entry></entry>
534
+ </row>
535
+
536
+ <row>
537
+ <entry><code><varname>handle</varname>.<function>select</function>(<constant>VpiNet</constant>) {|<varname>net</varname>| <varname>net</varname>.<function>x?</function>}</code></entry>
538
+ <entry>select</entry>
539
+ <entry>_</entry>
540
+ <entry></entry>
541
+ <entry></entry>
542
+ <entry></entry>
543
+ <entry></entry>
544
+ </row>
545
+
546
+ <row>
547
+ <entry><code><varname>handle</varname>.<function>select</function>(<literal>:VpiNet</literal>) {|<varname>net</varname>| <varname>net</varname>.<function>x?</function>}</code></entry>
548
+ <entry>select</entry>
549
+ <entry>_</entry>
550
+ <entry></entry>
551
+ <entry></entry>
552
+ <entry></entry>
553
+ <entry></entry>
554
+ </row>
555
+
556
+ <row>
557
+ <entry><code><varname>handle</varname>.<function>select</function>(<literal>:net</literal>) {|<varname>net</varname>| <varname>net</varname>.<function>x?</function>}</code></entry>
558
+ <entry>select</entry>
559
+ <entry>_</entry>
560
+ <entry></entry>
561
+ <entry></entry>
562
+ <entry></entry>
563
+ <entry></entry>
564
+ </row>
490
565
 
491
566
  <row>
492
567
  <entry><code><varname>handle</varname>.<function>vpiIntVal</function></code></entry>
@@ -1477,6 +1552,41 @@ Finished in 0.006766 seconds.
1477
1552
  </section>
1478
1553
  </chapter>
1479
1554
 
1555
+ <chapter id="hacking">
1556
+ <title>Hacking</title>
1557
+
1558
+ <section id="hacking.release-packages">
1559
+ <title>Building release packages</title>
1560
+ <para>In addition to the "normal requirements":./doc/usage.requirements.html, you need the following software to build release packages:
1561
+
1562
+ <variablelist>
1563
+ <varlistentry>
1564
+ <term><ulink url="http://www.docbook.org/">DocBook-XML</ulink></term>
1565
+ <listitem><para/></listitem>
1566
+ </varlistentry>
1567
+ <varlistentry>
1568
+ <term>xsltproc</term>
1569
+ <listitem><para/></listitem>
1570
+ </varlistentry>
1571
+ <varlistentry>
1572
+ <term>xmlto</term>
1573
+ <listitem><para/></listitem>
1574
+ </varlistentry>
1575
+ <varlistentry>
1576
+ <term><ulink url="http://rubyforge.org/projects/redcloth/">RedCloth</ulink></term>
1577
+ <listitem><para/></listitem>
1578
+ </varlistentry>
1579
+ <varlistentry>
1580
+ <term><ulink url="http://www.swig.org/">SWIG</ulink></term>
1581
+ <listitem><para/></listitem>
1582
+ </varlistentry>
1583
+ </variablelist>
1584
+
1585
+ Once you have satisfied these requirements, you can run <command>rake <action>release</action></command> to build the release packages. Also, see the output of <command>rake <option>-T</option></command> for more build options.</para>
1586
+ </section>
1587
+
1588
+ </chapter>
1589
+
1480
1590
  <chapter id="problems">
1481
1591
  <title>Known problems</title>
1482
1592
 
@@ -1,3 +1,3 @@
1
1
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
2
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Examples</title><link rel="stylesheet" href="styles/manual.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.68.1" /><link rel="start" href="index.html" title="Ruby-VPI user manual" /><link rel="up" href="usage.html" title="Chapter 4. Usage" /><link rel="prev" href="usage.tutorial.html" title="Tutorial" /><link rel="next" href="problems.html" title="Chapter 5. Known problems" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Examples</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="usage.tutorial.html"><img src="images/prev.png" alt="Prev" /></a> </td><th width="60%" align="center">Chapter 4. Usage</th><td width="20%" align="right"> <a accesskey="n" href="problems.html"><img src="images/next.png" alt="Next" /></a></td></tr></table><hr /></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="usage.examples"></a>Examples</h2></div></div></div><p>The <code class="filename">samp</code> directory contains several example tests which illustrate how <span class="application">Ruby-VPI</span> can be used. Each example has an associated <code class="filename">Rakefile</code> which simplifies the process of running it. Therefore, simply navigate into an example directory and run the command <span><strong class="command">rake</strong></span> to get started.</p><p>Also, some example specifications make use of BDD through the <span class="application">rSpec</span> library. See the <a href="background.methodology.html" title="Methodology">the section called “Methodology”</a> for a discussion of <span class="application">rSpec</span>.</p></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="usage.tutorial.html"><img src="images/prev.png" alt="Prev" /></a> </td><td width="20%" align="center"><a accesskey="u" href="usage.html"><img src="images/up.png" alt="Up" /></a></td><td width="40%" align="right"> <a accesskey="n" href="problems.html"><img src="images/next.png" alt="Next" /></a></td></tr><tr><td width="40%" align="left" valign="top">Tutorial </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home" /></a></td><td width="40%" align="right" valign="top"> Chapter 5. Known problems</td></tr></table></div></body></html>
3
+ <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Examples</title><link rel="stylesheet" href="styles/manual.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.68.1" /><link rel="start" href="index.html" title="Ruby-VPI user manual" /><link rel="up" href="usage.html" title="Chapter 4. Usage" /><link rel="prev" href="usage.tutorial.html" title="Tutorial" /><link rel="next" href="hacking.html" title="Chapter 5. Hacking" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Examples</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="usage.tutorial.html"><img src="images/prev.png" alt="Prev" /></a> </td><th width="60%" align="center">Chapter 4. Usage</th><td width="20%" align="right"> <a accesskey="n" href="hacking.html"><img src="images/next.png" alt="Next" /></a></td></tr></table><hr /></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="usage.examples"></a>Examples</h2></div></div></div><p>The <code class="filename">samp</code> directory contains several example tests which illustrate how <span class="application">Ruby-VPI</span> can be used. Each example has an associated <code class="filename">Rakefile</code> which simplifies the process of running it. Therefore, simply navigate into an example directory and run the command <span><strong class="command">rake</strong></span> to get started.</p><p>Also, some example specifications make use of BDD through the <span class="application">rSpec</span> library. See the <a href="background.methodology.html" title="Methodology">the section called “Methodology”</a> for a discussion of <span class="application">rSpec</span>.</p></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="usage.tutorial.html"><img src="images/prev.png" alt="Prev" /></a> </td><td width="20%" align="center"><a accesskey="u" href="usage.html"><img src="images/up.png" alt="Up" /></a></td><td width="40%" align="right"> <a accesskey="n" href="hacking.html"><img src="images/next.png" alt="Next" /></a></td></tr><tr><td width="40%" align="left" valign="top">Tutorial </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home" /></a></td><td width="40%" align="right" valign="top"> Chapter 5. Hacking</td></tr></table></div></body></html>
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
2
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Tutorial</title><link rel="stylesheet" href="styles/manual.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.68.1" /><link rel="start" href="index.html" title="Ruby-VPI user manual" /><link rel="up" href="usage.html" title="Chapter 4. Usage" /><link rel="prev" href="usage.tools.html" title="Tools" /><link rel="next" href="usage.examples.html" title="Examples" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Tutorial</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="usage.tools.html"><img src="images/prev.png" alt="Prev" /></a> </td><th width="60%" align="center">Chapter 4. Usage</th><td width="20%" align="right"> <a accesskey="n" href="usage.examples.html"><img src="images/next.png" alt="Next" /></a></td></tr></table><hr /></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="usage.tutorial"></a>Tutorial</h2></div></div></div><div class="procedure"><a id="id2528673"></a><p class="title"><b>Procedure 4.1. Typical way of using <span class="application">Ruby-VPI</span></b></p><ol type="1"><li><p><a href="usage.tutorial.html#usage.tutorial.declare-design" title="Start with a design">Declare the design</a>, which is a Verilog module, using Verilog 2001 syntax.</p></li><li><p><a href="usage.tutorial.html#usage.tutorial.generate-test" title="Generate a test">Generate a test</a> for the design using the <a href="usage.tools.html#usage.tools.generate-test" title="Automated test generation">automated test generator</a> tool.</p></li><li><p><a href="usage.tutorial.html#usage.tutorial.specification" title="Specify your expectations">Identify your expectations</a> for the design and implement them in the specification.</p></li><li><p>(Optional) <a href="usage.tutorial.html#usage.tutorial.implement-proto" title="Implement the prototype">Implement the prototype</a> of the design in Ruby.</p></li><li><p>(Optional) <a href="usage.tutorial.html#usage.tutorial.test-proto" title="Verify the prototype">Verify the prototype</a> against the specification.</p></li><li><p><a href="usage.tutorial.html#usage.tutorial.implement-design" title="Implement the design">Implement the design</a> in Verilog once the prototype has been verified.</p></li><li><p><a href="usage.tutorial.html#usage.tutorial.test-design" title="Verify the design">Verify the design</a> against the specification.</p></li></ol></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="usage.tutorial.declare-design"></a>Start with a design</h3></div></div></div><p>First, we need a <a href="glossary.html#term..design">Design</a> to verify. In this tutorial, <a href="usage.tutorial.html#fig..counter.v_decl" title="Figure 4.1. Declaration of a simple up-counter with synchronous reset">Figure 4.1, “Declaration of a simple up-counter with synchronous reset”</a> will serve as our design. Its interface is composed of the following parts:
3
+ <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Tutorial</title><link rel="stylesheet" href="styles/manual.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.68.1" /><link rel="start" href="index.html" title="Ruby-VPI user manual" /><link rel="up" href="usage.html" title="Chapter 4. Usage" /><link rel="prev" href="usage.tools.html" title="Tools" /><link rel="next" href="usage.examples.html" title="Examples" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Tutorial</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="usage.tools.html"><img src="images/prev.png" alt="Prev" /></a> </td><th width="60%" align="center">Chapter 4. Usage</th><td width="20%" align="right"> <a accesskey="n" href="usage.examples.html"><img src="images/next.png" alt="Next" /></a></td></tr></table><hr /></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="usage.tutorial"></a>Tutorial</h2></div></div></div><div class="procedure"><a id="id2529000"></a><p class="title"><b>Procedure 4.1. Typical way of using <span class="application">Ruby-VPI</span></b></p><ol type="1"><li><p><a href="usage.tutorial.html#usage.tutorial.declare-design" title="Start with a design">Declare the design</a>, which is a Verilog module, using Verilog 2001 syntax.</p></li><li><p><a href="usage.tutorial.html#usage.tutorial.generate-test" title="Generate a test">Generate a test</a> for the design using the <a href="usage.tools.html#usage.tools.generate-test" title="Automated test generation">automated test generator</a> tool.</p></li><li><p><a href="usage.tutorial.html#usage.tutorial.specification" title="Specify your expectations">Identify your expectations</a> for the design and implement them in the specification.</p></li><li><p>(Optional) <a href="usage.tutorial.html#usage.tutorial.implement-proto" title="Implement the prototype">Implement the prototype</a> of the design in Ruby.</p></li><li><p>(Optional) <a href="usage.tutorial.html#usage.tutorial.test-proto" title="Verify the prototype">Verify the prototype</a> against the specification.</p></li><li><p><a href="usage.tutorial.html#usage.tutorial.implement-design" title="Implement the design">Implement the design</a> in Verilog once the prototype has been verified.</p></li><li><p><a href="usage.tutorial.html#usage.tutorial.test-design" title="Verify the design">Verify the design</a> against the specification.</p></li></ol></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="usage.tutorial.declare-design"></a>Start with a design</h3></div></div></div><p>First, we need a <a href="glossary.html#term..design">Design</a> to verify. In this tutorial, <a href="usage.tutorial.html#fig..counter.v_decl" title="Figure 4.1. Declaration of a simple up-counter with synchronous reset">Figure 4.1, “Declaration of a simple up-counter with synchronous reset”</a> will serve as our design. Its interface is composed of the following parts:
4
4
  </p><div class="variablelist"><dl><dt><span class="term"><code class="constant">Size</code></span></dt><dd><p>This parameter defines the number of bits used to represent the counter's value.</p></dd><dt><span class="term"><code class="varname">clock</code></span></dt><dd><p>Each positive edge of this signal causes the <code class="varname">count</code> register to increment.</p></dd><dt><span class="term"><code class="varname">reset</code></span></dt><dd><p>Assertion of this signal causes the <code class="varname">count</code> register to become zero.</p></dd><dt><span class="term"><code class="varname">count</code></span></dt><dd><p>This register contains the counter's value.</p></dd></dl></div><p>
5
5
  </p><div class="figure"><a id="fig..counter.v_decl"></a><p class="title"><b>Figure 4.1. Declaration of a simple up-counter with synchronous reset</b></p><pre class="programlisting">
6
6
  <span class="token">module</span> counter #(<span class="token">parameter</span> <code class="constant">Size</code> = <code class="literal">5</code>) (
@@ -35,58 +35,59 @@
35
35
  <dt>
36
36
  <span class="term">
37
37
  <a href="http://rubyforge.org/projects/ruby-vpi" target="_top">
38
- Project</a>
38
+ Facilities</a>
39
39
  </span>
40
40
  </dt>
41
41
  <dd>
42
42
  <p>
43
- Access project facilities, hosted generously by <a href="http://rubyforge.org" target="_top">
43
+ Access the issue tracker, file downloads, support requests, discussion forums, and more at <a href="http://rubyforge.org" target="_top">
44
44
  RubyForge</a>.
45
45
  </p>
46
46
  </dd>
47
47
 
48
48
  <dt>
49
49
  <span class="term">
50
- <a href="http://rubyforge.org/tracker/?group_id=1339" target="_top">
51
- Tracker</a>
50
+ <a href="http://ruby-vpi.rubyforge.org" target="_top">
51
+ Project</a>
52
52
  </span>
53
53
  </dt>
54
54
  <dd>
55
55
  <p>
56
- Report problems, contribute patches, and more.</p>
56
+ Access more information at the project&#8217;s home page.
57
+ </p>
57
58
  </dd>
58
59
 
59
60
  <dt>
60
61
  <span class="term">
61
- <a href="http://rubyforge.org/frs/?group_id=1339" target="_top">
62
- Releases</a>
62
+ <a href="http://ruby-vpi.rubyforge.org/src/ruby-vpi" target="_top">
63
+ Sources</a>
63
64
  </span>
64
65
  </dt>
65
66
  <dd>
66
67
  <p>
67
- Download the newest releases.</p>
68
+ Browse or access the source code repository.</p>
68
69
  </dd>
69
70
 
70
71
  <dt>
71
72
  <span class="term">
72
- <a href="http://ruby-vpi.rubyforge.org/src/ruby-vpi" target="_top">
73
- Sources</a>
73
+ <a href="http://ruby-vpi.rubyforge.org/talks" target="_top">
74
+ Talks</a>
74
75
  </span>
75
76
  </dt>
76
77
  <dd>
77
78
  <p>
78
- Browse or access the source code repository.</p>
79
+ Access public presentations about Ruby-VPI.</p>
79
80
  </dd>
80
81
 
81
82
  <dt>
82
83
  <span class="term">
83
- <a href="http://rubyforge.org/forum/?group_id=1339" target="_top">
84
- Forums</a>
84
+ <a href="http://ruby-vpi.rubyforge.org/blog" target="_top">
85
+ News</a>
85
86
  </span>
86
87
  </dt>
87
88
  <dd>
88
89
  <p>
89
- Ask for help, give feedback, or discuss.</p>
90
+ See what the developers are cooking up.</p>
90
91
  </dd>
91
92
 
92
93
  </dl>
@@ -35,58 +35,59 @@
35
35
  <dt>
36
36
  <span class="term">
37
37
  <a href="http://rubyforge.org/projects/ruby-vpi" target="_top">
38
- Project</a>
38
+ Facilities</a>
39
39
  </span>
40
40
  </dt>
41
41
  <dd>
42
42
  <p>
43
- Access project facilities, hosted generously by <a href="http://rubyforge.org" target="_top">
43
+ Access the issue tracker, file downloads, support requests, discussion forums, and more at <a href="http://rubyforge.org" target="_top">
44
44
  RubyForge</a>.
45
45
  </p>
46
46
  </dd>
47
47
 
48
48
  <dt>
49
49
  <span class="term">
50
- <a href="http://rubyforge.org/tracker/?group_id=1339" target="_top">
51
- Tracker</a>
50
+ <a href="http://ruby-vpi.rubyforge.org" target="_top">
51
+ Project</a>
52
52
  </span>
53
53
  </dt>
54
54
  <dd>
55
55
  <p>
56
- Report problems, contribute patches, and more.</p>
56
+ Access more information at the project&#8217;s home page.
57
+ </p>
57
58
  </dd>
58
59
 
59
60
  <dt>
60
61
  <span class="term">
61
- <a href="http://rubyforge.org/frs/?group_id=1339" target="_top">
62
- Releases</a>
62
+ <a href="http://ruby-vpi.rubyforge.org/src/ruby-vpi" target="_top">
63
+ Sources</a>
63
64
  </span>
64
65
  </dt>
65
66
  <dd>
66
67
  <p>
67
- Download the newest releases.</p>
68
+ Browse or access the source code repository.</p>
68
69
  </dd>
69
70
 
70
71
  <dt>
71
72
  <span class="term">
72
- <a href="http://ruby-vpi.rubyforge.org/src/ruby-vpi" target="_top">
73
- Sources</a>
73
+ <a href="http://ruby-vpi.rubyforge.org/talks" target="_top">
74
+ Talks</a>
74
75
  </span>
75
76
  </dt>
76
77
  <dd>
77
78
  <p>
78
- Browse or access the source code repository.</p>
79
+ Access public presentations about Ruby-VPI.</p>
79
80
  </dd>
80
81
 
81
82
  <dt>
82
83
  <span class="term">
83
- <a href="http://rubyforge.org/forum/?group_id=1339" target="_top">
84
- Forums</a>
84
+ <a href="http://ruby-vpi.rubyforge.org/blog" target="_top">
85
+ News</a>
85
86
  </span>
86
87
  </dt>
87
88
  <dd>
88
89
  <p>
89
- Ask for help, give feedback, or discuss.</p>
90
+ See what the developers are cooking up.</p>
90
91
  </dd>
91
92
 
92
93
  </dl>
@@ -35,58 +35,59 @@
35
35
  <dt>
36
36
  <span class="term">
37
37
  <a href="http://rubyforge.org/projects/ruby-vpi" target="_top">
38
- Project</a>
38
+ Facilities</a>
39
39
  </span>
40
40
  </dt>
41
41
  <dd>
42
42
  <p>
43
- Access project facilities, hosted generously by <a href="http://rubyforge.org" target="_top">
43
+ Access the issue tracker, file downloads, support requests, discussion forums, and more at <a href="http://rubyforge.org" target="_top">
44
44
  RubyForge</a>.
45
45
  </p>
46
46
  </dd>
47
47
 
48
48
  <dt>
49
49
  <span class="term">
50
- <a href="http://rubyforge.org/tracker/?group_id=1339" target="_top">
51
- Tracker</a>
50
+ <a href="http://ruby-vpi.rubyforge.org" target="_top">
51
+ Project</a>
52
52
  </span>
53
53
  </dt>
54
54
  <dd>
55
55
  <p>
56
- Report problems, contribute patches, and more.</p>
56
+ Access more information at the project&#8217;s home page.
57
+ </p>
57
58
  </dd>
58
59
 
59
60
  <dt>
60
61
  <span class="term">
61
- <a href="http://rubyforge.org/frs/?group_id=1339" target="_top">
62
- Releases</a>
62
+ <a href="http://ruby-vpi.rubyforge.org/src/ruby-vpi" target="_top">
63
+ Sources</a>
63
64
  </span>
64
65
  </dt>
65
66
  <dd>
66
67
  <p>
67
- Download the newest releases.</p>
68
+ Browse or access the source code repository.</p>
68
69
  </dd>
69
70
 
70
71
  <dt>
71
72
  <span class="term">
72
- <a href="http://ruby-vpi.rubyforge.org/src/ruby-vpi" target="_top">
73
- Sources</a>
73
+ <a href="http://ruby-vpi.rubyforge.org/talks" target="_top">
74
+ Talks</a>
74
75
  </span>
75
76
  </dt>
76
77
  <dd>
77
78
  <p>
78
- Browse or access the source code repository.</p>
79
+ Access public presentations about Ruby-VPI.</p>
79
80
  </dd>
80
81
 
81
82
  <dt>
82
83
  <span class="term">
83
- <a href="http://rubyforge.org/forum/?group_id=1339" target="_top">
84
- Forums</a>
84
+ <a href="http://ruby-vpi.rubyforge.org/blog" target="_top">
85
+ News</a>
85
86
  </span>
86
87
  </dt>
87
88
  <dd>
88
89
  <p>
89
- Ask for help, give feedback, or discuss.</p>
90
+ See what the developers are cooking up.</p>
90
91
  </dd>
91
92
 
92
93
  </dl>
@@ -113,6 +114,78 @@ We <em>strictly</em> follow the RubyGems project&#8217;s <a href="http://www.rub
113
114
  <p id="fn1"><sup>1</sup> C. Gross, &#8220;Explaining Open Source Version Numbers&#8221;, [Online document], 2005 Nov 28, [cited 2006 Aug 27], Available <span class="caps">HTTP</span>: <a href="http://ablog.apress.com/?p=738">http://ablog.apress.com/?p=738</a></p>
114
115
 
115
116
 
117
+ <h1>Version 11.1.0 (2006-11-08)</h1>
118
+
119
+
120
+ <h2>Summary</h2>
121
+
122
+
123
+ <p>This release fixes a bug in generated benches, improves the <a href="./ref/ruby/classes/Vpi/Handle.html">the <code>Vpi::Handle</code> class</a>, and improves performance by roughly 20%.</p>
124
+
125
+
126
+ <h2>Acknowledgment</h2>
127
+
128
+
129
+ <p>Thanks to Matt Fischler for finding the bug in generated benches (see below).</p>
130
+
131
+
132
+ <h2>Notice</h2>
133
+
134
+
135
+ <ul>
136
+ <li>A bug in generated Verilog and Ruby benches, which caused this error <pre>ruby: no such file to load -- ruby-vpi (LoadError)</pre> has been fixed.
137
+ <ul>
138
+ <li>Please regenerate your tests to apply this bug fix to your tests.</li>
139
+ </ul></li>
140
+ </ul>
141
+
142
+
143
+ <h2>Detail</h2>
144
+
145
+
146
+ <ul>
147
+ <li>The class <code>SWIG::TYPE_p_unsigned_int</code> has been aliased as <code>Vpi::Handle</code> for easier access.</li>
148
+ </ul>
149
+
150
+
151
+ <ul>
152
+ <li><code>Vpi::Handle#to_s</code> and <code>Vpi::Handle#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.
153
+ <ul>
154
+ <li>You can also provide a list of <span class="caps">VPI</span> property/type names or integer constants to those methods to see additional information in the output.</li>
155
+ </ul></li>
156
+ </ul>
157
+
158
+
159
+ <ul>
160
+ <li><code>Vpi::Handle</code> now implements all methods from <code>Enumerable</code>, such as <code>map</code>, <code>each</code>, <code>select</code>, and so on. However, unlike their counterparts in <code>Enumerable</code>, these methods also accept a list of <span class="caps">VPI</span> property/type names or integer constants. Thus, you are now able to write <code>handle.select(:reg, :net) {|h| h.size &gt; 5}</code> to obtain a list of child handles to registers and nets whose capacity is greater than 5 bits.</li>
161
+ </ul>
162
+
163
+
164
+ <ul>
165
+ <li>The <code>Vpi::Handle#[]</code>, <code>Vpi::Handle#get_value</code>, and <code>Vpi::Handle#put_value</code> methods now accept names of <span class="caps">VPI</span> types/properties as well as their integer constants. Thus, you are now able to write <code>handle[:reg, :net]</code> to obtain a list of handles to all child registers and nets.</li>
166
+ </ul>
167
+
168
+
169
+ <ul>
170
+ <li><code>Vpi::Handle#method_missing</code> has been refactored to cache queries. There is now, approximately, 20% improvement in performance.</li>
171
+ </ul>
172
+
173
+
174
+ <ul>
175
+ <li><code>Vpi::Handle#method_missing</code> has been fixed to accept operations with multiple underscores. For example, before this release, you could not write <code>handle.find_all_reg {|r| r.name =~ /foo/}</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>
176
+ </ul>
177
+
178
+
179
+ <ul>
180
+ <li>The <code>IntegerGenerator</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>
181
+ </ul>
182
+
183
+
184
+ <ul>
185
+ <li>Due to a bug in the <code>Rakefile</code>, the reference documentation was not included in the previous few releases. This has been fixed.</li>
186
+ </ul>
187
+
188
+
116
189
  <h1>Version 11.0.0 (2006-11-05)</h1>
117
190
 
118
191
 
@@ -233,7 +306,7 @@ end</pre> notation.
233
306
 
234
307
 
235
308
  <ul>
236
- <li>Revised the stylesheet to make disjoint sections readily distinguishable from eachother, through generous spacing and minor coloring.</li>
309
+ <li>Revised the stylesheet to make disjoint sections readily distinguishable from each other, through generous spacing and minor coloring.</li>
237
310
  </ul>
238
311
 
239
312