ruby-vpi 8.2.0 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (252) hide show
  1. data/HEADER +0 -19
  2. data/HISTORY +40 -0
  3. data/README +20 -2
  4. data/Rakefile +38 -42
  5. data/bin/generate_test.rb +50 -35
  6. data/bin/generate_test_tpl/bench.rb +3 -3
  7. data/bin/generate_test_tpl/bench.v +1 -1
  8. data/bin/generate_test_tpl/runner.rake +3 -2
  9. data/bin/generate_test_tpl/spec.rb +2 -2
  10. data/doc/background.organization.html +1 -1
  11. data/doc/glossary.html +1 -1
  12. data/doc/index.html +2 -2
  13. data/doc/manual.txt +163 -83
  14. data/doc/problems.html +1 -1
  15. data/doc/problems.ruby.html +1 -1
  16. data/doc/src/manual.xml +132 -49
  17. data/doc/usage.examples.html +1 -1
  18. data/doc/usage.html +1 -1
  19. data/doc/usage.installation.html +2 -2
  20. data/doc/usage.recommendations.html +3 -0
  21. data/doc/usage.requirements.html +1 -1
  22. data/doc/usage.tutorial.html +46 -42
  23. data/ext/extconf.rb +5 -2
  24. data/ext/relay.c +138 -0
  25. data/ext/{relay.hin → relay.h} +7 -7
  26. data/ext/{swig.cin → swig.c} +5 -7
  27. data/ext/{swig.hin → swig.h} +4 -4
  28. data/ext/verilog.h +1 -2
  29. data/ext/vlog.c +86 -0
  30. data/ext/{vlog.hin → vlog.h} +9 -12
  31. data/header.html +0 -31
  32. data/header.part.html +0 -31
  33. data/history.html +72 -31
  34. data/history.part.html +72 -0
  35. data/lib/ruby-vpi.rb +16 -0
  36. data/lib/ruby-vpi/runner.rb +34 -16
  37. data/memo.html +0 -31
  38. data/readme.html +33 -33
  39. data/readme.part.html +34 -3
  40. data/ref/c/annotated.html +1 -1
  41. data/ref/c/common_8h.html +1 -1
  42. data/ref/c/files.html +7 -8
  43. data/ref/c/functions.html +2 -2
  44. data/ref/c/functions_vars.html +2 -2
  45. data/ref/c/globals.html +1 -1
  46. data/ref/c/globals_0x63.html +1 -1
  47. data/ref/c/globals_0x65.html +1 -1
  48. data/ref/c/globals_0x66.html +1 -1
  49. data/ref/c/globals_0x70.html +1 -1
  50. data/ref/c/globals_0x72.html +9 -9
  51. data/ref/c/globals_0x73.html +3 -3
  52. data/ref/c/globals_0x74.html +1 -1
  53. data/ref/c/globals_0x76.html +5 -5
  54. data/ref/c/globals_0x78.html +1 -1
  55. data/ref/c/globals_defs.html +1 -1
  56. data/ref/c/globals_defs_0x65.html +1 -1
  57. data/ref/c/globals_defs_0x70.html +1 -1
  58. data/ref/c/globals_defs_0x76.html +2 -2
  59. data/ref/c/globals_defs_0x78.html +1 -1
  60. data/ref/c/globals_enum.html +1 -1
  61. data/ref/c/globals_eval.html +1 -1
  62. data/ref/c/globals_func.html +11 -11
  63. data/ref/c/globals_type.html +1 -1
  64. data/ref/c/globals_vars.html +5 -5
  65. data/ref/c/index.html +1 -1
  66. data/ref/c/relay_8c.html +214 -0
  67. data/ref/c/{relay_8hin.html → relay_8h.html} +23 -23
  68. data/ref/c/structrelay____RubyOptions____def.html +6 -6
  69. data/ref/c/structt__cb__data.html +1 -1
  70. data/ref/c/structt__vpi__delay.html +1 -1
  71. data/ref/c/structt__vpi__error__info.html +1 -1
  72. data/ref/c/structt__vpi__strengthval.html +1 -1
  73. data/ref/c/structt__vpi__systf__data.html +1 -1
  74. data/ref/c/structt__vpi__time.html +1 -1
  75. data/ref/c/structt__vpi__value.html +1 -1
  76. data/ref/c/structt__vpi__vecval.html +1 -1
  77. data/ref/c/structt__vpi__vlog__info.html +1 -1
  78. data/ref/c/swig_8c.html +80 -0
  79. data/ref/c/{swig_8hin.html → swig_8h.html} +13 -13
  80. data/ref/c/verilog_8h.html +3 -3
  81. data/ref/c/{vlog_8cin.html → vlog_8c.html} +30 -21
  82. data/ref/c/{vlog_8hin.html → vlog_8h.html} +12 -12
  83. data/ref/c/vpi__user_8h.html +1 -1
  84. data/ref/ruby/classes/ERB.html +5 -5
  85. data/ref/ruby/classes/ERB.src/{M000033.html → M000034.html} +0 -0
  86. data/ref/ruby/classes/FileUtils.html +10 -10
  87. data/ref/ruby/classes/FileUtils.src/M000089.html +5 -5
  88. data/ref/ruby/classes/FileUtils.src/M000090.html +18 -0
  89. data/ref/ruby/classes/Integer.html +68 -68
  90. data/ref/ruby/classes/Integer.src/M000012.html +12 -5
  91. data/ref/ruby/classes/Integer.src/M000013.html +5 -5
  92. data/ref/ruby/classes/Integer.src/M000014.html +5 -5
  93. data/ref/ruby/classes/Integer.src/M000015.html +5 -5
  94. data/ref/ruby/classes/Integer.src/M000016.html +5 -5
  95. data/ref/ruby/classes/Integer.src/M000017.html +18 -0
  96. data/ref/ruby/classes/Integer.src/M000020.html +9 -9
  97. data/ref/ruby/classes/Integer.src/M000021.html +9 -12
  98. data/ref/ruby/classes/Integer.src/M000022.html +12 -18
  99. data/ref/ruby/classes/Integer.src/M000023.html +18 -12
  100. data/ref/ruby/classes/Integer.src/M000024.html +12 -17
  101. data/ref/ruby/classes/Integer.src/M000025.html +30 -0
  102. data/ref/ruby/classes/OutputInfo.html +6 -6
  103. data/ref/ruby/classes/OutputInfo.src/{M000029.html → M000030.html} +37 -37
  104. data/ref/ruby/classes/RDoc.html +5 -5
  105. data/ref/ruby/classes/RDoc.src/{M000092.html → M000093.html} +0 -0
  106. data/ref/ruby/classes/RubyVpi.html +16 -10
  107. data/ref/ruby/classes/RubyVpi.src/M000091.html +37 -7
  108. data/ref/ruby/classes/RubyVpi.src/M000092.html +20 -0
  109. data/ref/ruby/classes/RubyVpi/Config.html +148 -0
  110. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.html +45 -45
  111. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000081.html +5 -5
  112. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000082.html +5 -9
  113. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000083.html +9 -31
  114. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000084.html +31 -69
  115. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000085.html +69 -114
  116. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000086.html +114 -13
  117. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000087.html +13 -5
  118. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000088.html +18 -0
  119. data/ref/ruby/classes/String.html +10 -10
  120. data/ref/ruby/classes/String.src/M000032.html +28 -5
  121. data/ref/ruby/classes/String.src/M000033.html +18 -0
  122. data/ref/ruby/classes/Table.html +20 -20
  123. data/ref/ruby/classes/Table.src/M000026.html +25 -5
  124. data/ref/ruby/classes/Table.src/M000027.html +5 -5
  125. data/ref/ruby/classes/Table.src/M000028.html +5 -5
  126. data/ref/ruby/classes/Table.src/M000029.html +18 -0
  127. data/ref/ruby/classes/Template.html +5 -5
  128. data/ref/ruby/classes/Template.src/{M000030.html → M000031.html} +4 -4
  129. data/ref/ruby/classes/VerilogParser.html +5 -5
  130. data/ref/ruby/classes/VerilogParser.src/{M000004.html → M000005.html} +0 -0
  131. data/ref/ruby/classes/VerilogParser/Module.html +5 -5
  132. data/ref/ruby/classes/VerilogParser/Module.src/{M000005.html → M000006.html} +0 -0
  133. data/ref/ruby/classes/VerilogParser/Module/Parameter.html +5 -5
  134. data/ref/ruby/classes/VerilogParser/Module/Parameter.src/{M000010.html → M000011.html} +0 -0
  135. data/ref/ruby/classes/VerilogParser/Module/Port.html +20 -20
  136. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000007.html +8 -5
  137. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000008.html +5 -5
  138. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000009.html +5 -5
  139. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000010.html +18 -0
  140. data/ref/ruby/classes/XX/Document.html +45 -45
  141. data/ref/ruby/classes/XX/Document.src/M000072.html +9 -7
  142. data/ref/ruby/classes/XX/Document.src/M000073.html +7 -7
  143. data/ref/ruby/classes/XX/Document.src/M000074.html +7 -7
  144. data/ref/ruby/classes/XX/Document.src/M000075.html +7 -9
  145. data/ref/ruby/classes/XX/Document.src/M000076.html +9 -8
  146. data/ref/ruby/classes/XX/Document.src/M000077.html +8 -8
  147. data/ref/ruby/classes/XX/Document.src/M000078.html +8 -21
  148. data/ref/ruby/classes/XX/Document.src/M000079.html +21 -85
  149. data/ref/ruby/classes/XX/Document.src/M000080.html +98 -0
  150. data/ref/ruby/classes/XX/HTML4.html +5 -5
  151. data/ref/ruby/classes/XX/HTML4.src/{M000035.html → M000036.html} +0 -0
  152. data/ref/ruby/classes/XX/HTML4/Strict.html +5 -5
  153. data/ref/ruby/classes/XX/HTML4/Strict.src/{M000037.html → M000038.html} +0 -0
  154. data/ref/ruby/classes/XX/HTML4/Transitional.html +5 -5
  155. data/ref/ruby/classes/XX/HTML4/Transitional.src/{M000036.html → M000037.html} +0 -0
  156. data/ref/ruby/classes/XX/Markup.html +5 -5
  157. data/ref/ruby/classes/XX/Markup.src/{M000042.html → M000043.html} +0 -0
  158. data/ref/ruby/classes/XX/Markup/ClassMethods.html +40 -40
  159. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000044.html +9 -7
  160. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000045.html +7 -12
  161. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000046.html +12 -7
  162. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000047.html +7 -14
  163. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000048.html +14 -7
  164. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000049.html +7 -14
  165. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000050.html +14 -9
  166. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000051.html +22 -0
  167. data/ref/ruby/classes/XX/Markup/InstanceMethods.html +100 -100
  168. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000052.html +43 -20
  169. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000053.html +20 -18
  170. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000054.html +18 -35
  171. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000055.html +35 -7
  172. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000056.html +7 -18
  173. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000057.html +18 -19
  174. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000058.html +19 -19
  175. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000059.html +19 -15
  176. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000060.html +15 -10
  177. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000061.html +10 -13
  178. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000062.html +13 -7
  179. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000063.html +7 -7
  180. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000064.html +7 -7
  181. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000065.html +7 -7
  182. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000066.html +7 -7
  183. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000067.html +7 -8
  184. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000068.html +8 -7
  185. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000069.html +7 -7
  186. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000070.html +7 -7
  187. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000071.html +20 -0
  188. data/ref/ruby/classes/XX/XHTML.html +5 -5
  189. data/ref/ruby/classes/XX/XHTML.src/{M000038.html → M000039.html} +0 -0
  190. data/ref/ruby/classes/XX/XHTML/Strict.html +5 -5
  191. data/ref/ruby/classes/XX/XHTML/Strict.src/{M000040.html → M000041.html} +0 -0
  192. data/ref/ruby/classes/XX/XHTML/Transitional.html +5 -5
  193. data/ref/ruby/classes/XX/XHTML/Transitional.src/{M000039.html → M000040.html} +0 -0
  194. data/ref/ruby/classes/XX/XML.html +5 -5
  195. data/ref/ruby/classes/XX/XML.src/{M000034.html → M000035.html} +0 -0
  196. data/ref/ruby/classes/XX/XMLish.html +5 -5
  197. data/ref/ruby/classes/XX/XMLish.src/{M000041.html → M000042.html} +0 -0
  198. data/ref/ruby/created.rid +1 -1
  199. data/ref/ruby/files/bin/generate_test_rb.html +49 -9
  200. data/ref/ruby/files/bin/generate_test_rb.src/M000001.html +5 -16
  201. data/ref/ruby/files/bin/generate_test_rb.src/M000002.html +39 -0
  202. data/ref/ruby/files/bin/header_to_ruby_rb.html +1 -1
  203. data/ref/ruby/files/lib/ruby-vpi/erb_rb.html +1 -1
  204. data/ref/ruby/files/lib/ruby-vpi/integer_rb.html +1 -1
  205. data/ref/ruby/files/lib/ruby-vpi/rake_rb.html +1 -1
  206. data/ref/ruby/files/lib/ruby-vpi/rcov_rb.html +1 -1
  207. data/ref/ruby/files/lib/ruby-vpi/rdoc_rb.html +1 -1
  208. data/ref/ruby/files/lib/ruby-vpi/rspec_rb.html +1 -1
  209. data/ref/ruby/files/lib/ruby-vpi/runner_proxy_rb.html +1 -1
  210. data/ref/ruby/files/lib/ruby-vpi/runner_rb.html +22 -21
  211. data/ref/ruby/files/lib/ruby-vpi/runner_rb.src/M000003.html +11 -13
  212. data/ref/ruby/files/lib/ruby-vpi/runner_rb.src/M000004.html +26 -0
  213. data/ref/ruby/files/lib/ruby-vpi/verilog_parser_rb.html +1 -1
  214. data/ref/ruby/files/lib/ruby-vpi/vpi_rb.html +1 -1
  215. data/ref/ruby/files/lib/ruby-vpi/xx_rb.html +1 -1
  216. data/ref/ruby/files/lib/ruby-vpi_rb.html +1 -1
  217. data/ref/ruby/fr_class_index.html +1 -0
  218. data/ref/ruby/fr_method_index.html +93 -92
  219. data/samp/counter/{counter_rspecTest_bench.rb → counter_rspec_bench.rb} +2 -2
  220. data/samp/counter/{counter_rspecTest_bench.v → counter_rspec_bench.v} +3 -3
  221. data/samp/counter/{counter_unitTest_design.rb → counter_rspec_design.rb} +3 -3
  222. data/samp/counter/{counter_rspecTest_proto.rb → counter_rspec_proto.rb} +0 -0
  223. data/samp/counter/{counter_unitTest_runner.rake → counter_rspec_runner.rake} +5 -4
  224. data/samp/counter/{counter_rspecTest_spec.rb → counter_rspec_spec.rb} +0 -0
  225. data/samp/counter/{counter_unitTest_bench.rb → counter_xunit_bench.rb} +2 -2
  226. data/samp/counter/{counter_unitTest_bench.v → counter_xunit_bench.v} +3 -3
  227. data/samp/counter/{counter_rspecTest_design.rb → counter_xunit_design.rb} +3 -3
  228. data/samp/counter/{counter_unitTest_proto.rb → counter_xunit_proto.rb} +0 -0
  229. data/samp/counter/{counter_rspecTest_runner.rake → counter_xunit_runner.rake} +5 -4
  230. data/samp/counter/{counter_unitTest_spec.rb → counter_xunit_spec.rb} +0 -0
  231. data/samp/pipelined_alu/hw5_unit_test_runner.rake +3 -2
  232. metadata +177 -177
  233. data/ext/README +0 -124
  234. data/ext/relay.cin +0 -146
  235. data/ext/ruby-vpi.c +0 -36
  236. data/ext/vlog.cin +0 -92
  237. data/lib/ruby-vpi/synopsys_vcs.tab +0 -2
  238. data/ref/c/relay_8cin.html +0 -204
  239. data/ref/c/ruby-vpi_8c.html +0 -34
  240. data/ref/c/swig_8cin.html +0 -75
  241. data/ref/ruby/classes/FileUtils.src/M000088.html +0 -18
  242. data/ref/ruby/classes/Integer.src/M000011.html +0 -25
  243. data/ref/ruby/classes/Integer.src/M000019.html +0 -22
  244. data/ref/ruby/classes/RubyVpi.src/M000090.html +0 -50
  245. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000080.html +0 -18
  246. data/ref/ruby/classes/String.src/M000031.html +0 -41
  247. data/ref/ruby/classes/Table.src/M000025.html +0 -38
  248. data/ref/ruby/classes/VerilogParser/Module/Port.src/M000006.html +0 -21
  249. data/ref/ruby/classes/XX/Document.src/M000071.html +0 -22
  250. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000043.html +0 -22
  251. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000051.html +0 -56
  252. data/ref/ruby/files/lib/ruby-vpi/runner_rb.src/M000002.html +0 -20
@@ -80,7 +80,7 @@
80
80
  <h3 class="section-bar">Methods</h3>
81
81
 
82
82
  <div class="name-list">
83
- <a href="#M000092">usage_from_file</a>&nbsp;&nbsp;
83
+ <a href="#M000093">usage_from_file</a>&nbsp;&nbsp;
84
84
  </div>
85
85
  </div>
86
86
 
@@ -102,12 +102,12 @@
102
102
  <div id="methods">
103
103
  <h3 class="section-bar">Public Class methods</h3>
104
104
 
105
- <div id="method-M000092" class="method-detail">
106
- <a name="M000092"></a>
105
+ <div id="method-M000093" class="method-detail">
106
+ <a name="M000093"></a>
107
107
 
108
108
  <div class="method-heading">
109
- <a href="RDoc.src/M000092.html" target="Code" class="method-signature"
110
- onclick="popupCode('RDoc.src/M000092.html');return false;">
109
+ <a href="RDoc.src/M000093.html" target="Code" class="method-signature"
110
+ onclick="popupCode('RDoc.src/M000093.html');return false;">
111
111
  <span class="method-name">usage_from_file</span><span class="method-args">(input_file, *args)</span>
112
112
  </a>
113
113
  </div>
@@ -90,8 +90,8 @@ Provides configuration information of the Ruby-VPI project.
90
90
  <h3 class="section-bar">Methods</h3>
91
91
 
92
92
  <div class="name-list">
93
- <a href="#M000090">init_bench</a>&nbsp;&nbsp;
94
- <a href="#M000091">with_coverage_analysis</a>&nbsp;&nbsp;
93
+ <a href="#M000091">init_bench</a>&nbsp;&nbsp;
94
+ <a href="#M000092">with_coverage_analysis</a>&nbsp;&nbsp;
95
95
  </div>
96
96
  </div>
97
97
 
@@ -102,6 +102,12 @@ Provides configuration information of the Ruby-VPI project.
102
102
 
103
103
  <div id="section">
104
104
 
105
+ <div id="class-list">
106
+ <h3 class="section-bar">Classes and Modules</h3>
107
+
108
+ Module <a href="RubyVpi/Config.html" class="link">RubyVpi::Config</a><br />
109
+
110
+ </div>
105
111
 
106
112
  <div id="constants-list">
107
113
  <h3 class="section-bar">Constants</h3>
@@ -131,12 +137,12 @@ Provides configuration information of the Ruby-VPI project.
131
137
  <div id="methods">
132
138
  <h3 class="section-bar">Public Class methods</h3>
133
139
 
134
- <div id="method-M000090" class="method-detail">
135
- <a name="M000090"></a>
140
+ <div id="method-M000091" class="method-detail">
141
+ <a name="M000091"></a>
136
142
 
137
143
  <div class="method-heading">
138
- <a href="RubyVpi.src/M000090.html" target="Code" class="method-signature"
139
- onclick="popupCode('RubyVpi.src/M000090.html');return false;">
144
+ <a href="RubyVpi.src/M000091.html" target="Code" class="method-signature"
145
+ onclick="popupCode('RubyVpi.src/M000091.html');return false;">
140
146
  <span class="method-name">init_bench</span><span class="method-args">(aTestPrefix, aProtoClassId)</span>
141
147
  </a>
142
148
  </div>
@@ -148,12 +154,12 @@ Initializes the current bench using the given parameters.
148
154
  </div>
149
155
  </div>
150
156
 
151
- <div id="method-M000091" class="method-detail">
152
- <a name="M000091"></a>
157
+ <div id="method-M000092" class="method-detail">
158
+ <a name="M000092"></a>
153
159
 
154
160
  <div class="method-heading">
155
- <a href="RubyVpi.src/M000091.html" target="Code" class="method-signature"
156
- onclick="popupCode('RubyVpi.src/M000091.html');return false;">
161
+ <a href="RubyVpi.src/M000092.html" target="Code" class="method-signature"
162
+ onclick="popupCode('RubyVpi.src/M000092.html');return false;">
157
163
  <span class="method-name">with_coverage_analysis</span><span class="method-args">( {|Rcov::CodeCoverageAnalyzer| ...}</span>
158
164
  </a>
159
165
  </div>
@@ -5,16 +5,46 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>with_coverage_analysis (RubyVpi)</title>
8
+ <title>init_bench (RubyVpi)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
10
10
  <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre> <span class="ruby-comment cmt"># File lib/ruby-vpi/rcov.rb, line 57</span>
14
- 57: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">RubyVpi</span>.<span class="ruby-identifier">with_coverage_analysis</span> <span class="ruby-operator">&amp;</span><span class="ruby-identifier">aBlock</span> <span class="ruby-comment cmt"># :yields: Rcov::CodeCoverageAnalyzer</span>
15
- 58: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">aBlock</span>
16
- 59: <span class="ruby-constant">COVERAGE_ANALYSIS_HANDLERS</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">aBlock</span>
17
- 60: <span class="ruby-keyword kw">end</span>
18
- 61: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/ruby-vpi.rb, line 24</span>
14
+ 24: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">RubyVpi</span>.<span class="ruby-identifier">init_bench</span> <span class="ruby-identifier">aTestPrefix</span>, <span class="ruby-identifier">aProtoClassId</span>
15
+ 25: <span class="ruby-identifier">require</span> <span class="ruby-value str">'ruby-vpi/vpi'</span>
16
+ 26: <span class="ruby-constant">Vpi</span><span class="ruby-operator">::</span><span class="ruby-identifier">relay_verilog</span> <span class="ruby-comment cmt"># service the $ruby_init() callback</span>
17
+ 27:
18
+ 28: <span class="ruby-comment cmt"># set up code coverage analysis</span>
19
+ 29: <span class="ruby-keyword kw">unless</span> (<span class="ruby-constant">ENV</span>[<span class="ruby-value str">'COVERAGE'</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>).<span class="ruby-identifier">empty?</span>
20
+ 30: <span class="ruby-identifier">require</span> <span class="ruby-value str">'ruby-vpi/rcov'</span>
21
+ 31:
22
+ 32: <span class="ruby-constant">RubyVpi</span>.<span class="ruby-identifier">with_coverage_analysis</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span>
23
+ 33: <span class="ruby-identifier">a</span>.<span class="ruby-identifier">dump_coverage_info</span> [
24
+ 34: <span class="ruby-constant">Rcov</span><span class="ruby-operator">::</span><span class="ruby-constant">TextReport</span>.<span class="ruby-identifier">new</span>,
25
+ 35: <span class="ruby-constant">Rcov</span><span class="ruby-operator">::</span><span class="ruby-constant">HTMLCoverage</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:destdir</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;#{aTestPrefix}_coverage&quot;</span>)
26
+ 36: ]
27
+ 37: <span class="ruby-keyword kw">end</span>
28
+ 38: <span class="ruby-keyword kw">end</span>
29
+ 39:
30
+ 40: <span class="ruby-comment cmt"># load the design under test</span>
31
+ 41: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{aTestPrefix}_design.rb&quot;</span>
32
+ 42:
33
+ 43: <span class="ruby-keyword kw">unless</span> (<span class="ruby-constant">ENV</span>[<span class="ruby-value str">'PROTOTYPE'</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>).<span class="ruby-identifier">empty?</span>
34
+ 44: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{aTestPrefix}_proto.rb&quot;</span>
35
+ 45:
36
+ 46: <span class="ruby-identifier">proto</span> = <span class="ruby-constant">Kernel</span>.<span class="ruby-identifier">const_get</span>(<span class="ruby-identifier">aProtoClassId</span>).<span class="ruby-identifier">new</span>
37
+ 47:
38
+ 48: <span class="ruby-constant">Vpi</span>.<span class="ruby-identifier">class_eval</span> <span class="ruby-keyword kw">do</span>
39
+ 49: <span class="ruby-identifier">define_method</span> <span class="ruby-identifier">:relay_verilog</span> <span class="ruby-keyword kw">do</span>
40
+ 50: <span class="ruby-identifier">proto</span>.<span class="ruby-identifier">simulate!</span>
41
+ 51: <span class="ruby-keyword kw">end</span>
42
+ 52: <span class="ruby-keyword kw">end</span>
43
+ 53:
44
+ 54: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;#{aTestPrefix}: verifying prototype instead of design&quot;</span>
45
+ 55: <span class="ruby-keyword kw">end</span>
46
+ 56:
47
+ 57: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{aTestPrefix}_spec.rb&quot;</span>
48
+ 58: <span class="ruby-keyword kw">end</span></pre>
19
49
  </body>
20
50
  </html>
@@ -0,0 +1,20 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>with_coverage_analysis (RubyVpi)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre> <span class="ruby-comment cmt"># File lib/ruby-vpi/rcov.rb, line 57</span>
14
+ 57: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">RubyVpi</span>.<span class="ruby-identifier">with_coverage_analysis</span> <span class="ruby-operator">&amp;</span><span class="ruby-identifier">aBlock</span> <span class="ruby-comment cmt"># :yields: Rcov::CodeCoverageAnalyzer</span>
15
+ 58: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">aBlock</span>
16
+ 59: <span class="ruby-constant">COVERAGE_ANALYSIS_HANDLERS</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">aBlock</span>
17
+ 60: <span class="ruby-keyword kw">end</span>
18
+ 61: <span class="ruby-keyword kw">end</span></pre>
19
+ </body>
20
+ </html>
@@ -0,0 +1,148 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
+ <head>
8
+ <title>Module: RubyVpi::Config</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
10
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
+ <script type="text/javascript">
13
+ // <![CDATA[
14
+
15
+ function popupCode( url ) {
16
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
+ }
18
+
19
+ function toggleCode( id ) {
20
+ if ( document.getElementById )
21
+ elem = document.getElementById( id );
22
+ else if ( document.all )
23
+ elem = eval( "document.all." + id );
24
+ else
25
+ return false;
26
+
27
+ elemStyle = elem.style;
28
+
29
+ if ( elemStyle.display != "block" ) {
30
+ elemStyle.display = "block"
31
+ } else {
32
+ elemStyle.display = "none"
33
+ }
34
+
35
+ return true;
36
+ }
37
+
38
+ // Make codeblocks hidden by default
39
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
+
41
+ // ]]>
42
+ </script>
43
+
44
+ </head>
45
+ <body>
46
+
47
+
48
+
49
+ <div id="classHeader">
50
+ <table class="header-table">
51
+ <tr class="top-aligned-row">
52
+ <td><strong>Module</strong></td>
53
+ <td class="class-name-in-header">RubyVpi::Config</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../../files/lib/ruby-vpi_rb.html">
59
+ lib/ruby-vpi.rb
60
+ </a>
61
+ <br />
62
+ </td>
63
+ </tr>
64
+
65
+ </table>
66
+ </div>
67
+ <!-- banner header -->
68
+
69
+ <div id="bodyContent">
70
+
71
+
72
+
73
+ <div id="contextContent">
74
+
75
+
76
+
77
+ </div>
78
+
79
+
80
+ </div>
81
+
82
+
83
+ <!-- if includes -->
84
+
85
+ <div id="section">
86
+
87
+
88
+ <div id="constants-list">
89
+ <h3 class="section-bar">Constants</h3>
90
+
91
+ <div class="name-list">
92
+ <table summary="Constants">
93
+ <tr class="top-aligned-row context-row">
94
+ <td class="context-item-name">PROJECT_ID</td>
95
+ <td>=</td>
96
+ <td class="context-item-value">'ruby-vpi'</td>
97
+ </tr>
98
+ <tr class="top-aligned-row context-row">
99
+ <td class="context-item-name">PROJECT_NAME</td>
100
+ <td>=</td>
101
+ <td class="context-item-value">'Ruby-VPI'</td>
102
+ </tr>
103
+ <tr class="top-aligned-row context-row">
104
+ <td class="context-item-name">PROJECT_URL</td>
105
+ <td>=</td>
106
+ <td class="context-item-value">&quot;http://#{PROJECT_ID}.rubyforge.org&quot;</td>
107
+ </tr>
108
+ <tr class="top-aligned-row context-row">
109
+ <td class="context-item-name">PROJECT_SUMMARY</td>
110
+ <td>=</td>
111
+ <td class="context-item-value">&quot;Ruby interface to Verilog VPI.&quot;</td>
112
+ </tr>
113
+ <tr class="top-aligned-row context-row">
114
+ <td class="context-item-name">PROJECT_DETAIL</td>
115
+ <td>=</td>
116
+ <td class="context-item-value">&quot;#{PROJECT_NAME} is a #{PROJECT_SUMMARY}. It lets you create complex Verilog test benches easily and wholly in Ruby.&quot;</td>
117
+ </tr>
118
+ <tr class="top-aligned-row context-row">
119
+ <td class="context-item-name">Simulator</td>
120
+ <td>=</td>
121
+ <td class="context-item-value">Struct.new(:id, :name, :compiler_args, :linker_args)</td>
122
+ </tr>
123
+ <tr class="top-aligned-row context-row">
124
+ <td class="context-item-name">SIMULATORS</td>
125
+ <td>=</td>
126
+ <td class="context-item-value">[ Simulator.new(:cver, 'GPL Cver', '-DPRAGMATIC_CVER', ''), Simulator.new(:ivl, 'Icarus Verilog', '-DICARUS_VERILOG', ''), Simulator.new(:vcs, 'Synopsys VCS', '-DSYNOPSYS_VCS', ''), Simulator.new(:vsim, 'Mentor Modelsim', '-DMENTOR_MODELSIM', ''), ]</td>
127
+ </tr>
128
+ </table>
129
+ </div>
130
+ </div>
131
+
132
+
133
+
134
+
135
+
136
+
137
+ <!-- if method_list -->
138
+
139
+
140
+ </div>
141
+
142
+
143
+ <div id="validator-badges">
144
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
145
+ </div>
146
+
147
+ </body>
148
+ </html>
@@ -95,7 +95,7 @@ You can read and write values using <tt>S_vpi_value</tt> objects through
95
95
  the following methods.
96
96
  </p>
97
97
  <ul>
98
- <li><a href="TYPE_p_unsigned_int.html#M000082">get_value_wrapper</a>
98
+ <li><a href="TYPE_p_unsigned_int.html#M000083">get_value_wrapper</a>
99
99
 
100
100
  </li>
101
101
  <li>Vpi::vpi_get_value
@@ -112,10 +112,10 @@ following methods.
112
112
  </p>
113
113
  <ul>
114
114
  <li>value = handle.<a
115
- href="TYPE_p_unsigned_int.html#M000083">get_value</a>(format)
115
+ href="TYPE_p_unsigned_int.html#M000084">get_value</a>(format)
116
116
 
117
117
  </li>
118
- <li>handle.<a href="TYPE_p_unsigned_int.html#M000084">put_value</a>(value,
118
+ <li>handle.<a href="TYPE_p_unsigned_int.html#M000085">put_value</a>(value,
119
119
  format)
120
120
 
121
121
  </li>
@@ -156,7 +156,7 @@ The methods shown above can be used like so:
156
156
  To read a handle&#8217;s value as an integer:
157
157
  </p>
158
158
  <ul>
159
- <li>handle.<a href="TYPE_p_unsigned_int.html#M000083">get_value</a>(VpiIntVal)
159
+ <li>handle.<a href="TYPE_p_unsigned_int.html#M000084">get_value</a>(VpiIntVal)
160
160
 
161
161
  </li>
162
162
  <li>handle.intVal
@@ -167,7 +167,7 @@ To read a handle&#8217;s value as an integer:
167
167
  To write a handle&#8217;s value as an integer:
168
168
  </p>
169
169
  <ul>
170
- <li>handle.<a href="TYPE_p_unsigned_int.html#M000084">put_value</a>(15,
170
+ <li>handle.<a href="TYPE_p_unsigned_int.html#M000085">put_value</a>(15,
171
171
  VpiIntVal)
172
172
 
173
173
  </li>
@@ -185,14 +185,14 @@ VpiIntVal)
185
185
  <h3 class="section-bar">Methods</h3>
186
186
 
187
187
  <div class="name-list">
188
- <a href="#M000086">[]</a>&nbsp;&nbsp;
189
- <a href="#M000087">each</a>&nbsp;&nbsp;
190
- <a href="#M000083">get_value</a>&nbsp;&nbsp;
191
- <a href="#M000082">get_value_wrapper</a>&nbsp;&nbsp;
192
- <a href="#M000085">method_missing</a>&nbsp;&nbsp;
193
- <a href="#M000084">put_value</a>&nbsp;&nbsp;
194
- <a href="#M000080">x?</a>&nbsp;&nbsp;
195
- <a href="#M000081">z?</a>&nbsp;&nbsp;
188
+ <a href="#M000087">[]</a>&nbsp;&nbsp;
189
+ <a href="#M000088">each</a>&nbsp;&nbsp;
190
+ <a href="#M000084">get_value</a>&nbsp;&nbsp;
191
+ <a href="#M000083">get_value_wrapper</a>&nbsp;&nbsp;
192
+ <a href="#M000086">method_missing</a>&nbsp;&nbsp;
193
+ <a href="#M000085">put_value</a>&nbsp;&nbsp;
194
+ <a href="#M000081">x?</a>&nbsp;&nbsp;
195
+ <a href="#M000082">z?</a>&nbsp;&nbsp;
196
196
  </div>
197
197
  </div>
198
198
 
@@ -249,12 +249,12 @@ VpiIntVal)
249
249
  <div id="methods">
250
250
  <h3 class="section-bar">Public Instance methods</h3>
251
251
 
252
- <div id="method-M000086" class="method-detail">
253
- <a name="M000086"></a>
252
+ <div id="method-M000087" class="method-detail">
253
+ <a name="M000087"></a>
254
254
 
255
255
  <div class="method-heading">
256
- <a href="TYPE_p_unsigned_int.src/M000086.html" target="Code" class="method-signature"
257
- onclick="popupCode('TYPE_p_unsigned_int.src/M000086.html');return false;">
256
+ <a href="TYPE_p_unsigned_int.src/M000087.html" target="Code" class="method-signature"
257
+ onclick="popupCode('TYPE_p_unsigned_int.src/M000087.html');return false;">
258
258
  <span class="method-name">[]</span><span class="method-args">(aType)</span>
259
259
  </a>
260
260
  </div>
@@ -266,12 +266,12 @@ Returns an array of handles of the given type.
266
266
  </div>
267
267
  </div>
268
268
 
269
- <div id="method-M000087" class="method-detail">
270
- <a name="M000087"></a>
269
+ <div id="method-M000088" class="method-detail">
270
+ <a name="M000088"></a>
271
271
 
272
272
  <div class="method-heading">
273
- <a href="TYPE_p_unsigned_int.src/M000087.html" target="Code" class="method-signature"
274
- onclick="popupCode('TYPE_p_unsigned_int.src/M000087.html');return false;">
273
+ <a href="TYPE_p_unsigned_int.src/M000088.html" target="Code" class="method-signature"
274
+ onclick="popupCode('TYPE_p_unsigned_int.src/M000088.html');return false;">
275
275
  <span class="method-name">each</span><span class="method-args">(aType {|handle| ...}</span>
276
276
  </a>
277
277
  </div>
@@ -284,12 +284,12 @@ once for each handle.
284
284
  </div>
285
285
  </div>
286
286
 
287
- <div id="method-M000083" class="method-detail">
288
- <a name="M000083"></a>
287
+ <div id="method-M000084" class="method-detail">
288
+ <a name="M000084"></a>
289
289
 
290
290
  <div class="method-heading">
291
- <a href="TYPE_p_unsigned_int.src/M000083.html" target="Code" class="method-signature"
292
- onclick="popupCode('TYPE_p_unsigned_int.src/M000083.html');return false;">
291
+ <a href="TYPE_p_unsigned_int.src/M000084.html" target="Code" class="method-signature"
292
+ onclick="popupCode('TYPE_p_unsigned_int.src/M000084.html');return false;">
293
293
  <span class="method-name">get_value</span><span class="method-args">(aFormat = VpiObjTypeVal)</span>
294
294
  </a>
295
295
  </div>
@@ -303,12 +303,12 @@ format.
303
303
  </div>
304
304
  </div>
305
305
 
306
- <div id="method-M000082" class="method-detail">
307
- <a name="M000082"></a>
306
+ <div id="method-M000083" class="method-detail">
307
+ <a name="M000083"></a>
308
308
 
309
309
  <div class="method-heading">
310
- <a href="TYPE_p_unsigned_int.src/M000082.html" target="Code" class="method-signature"
311
- onclick="popupCode('TYPE_p_unsigned_int.src/M000082.html');return false;">
310
+ <a href="TYPE_p_unsigned_int.src/M000083.html" target="Code" class="method-signature"
311
+ onclick="popupCode('TYPE_p_unsigned_int.src/M000083.html');return false;">
312
312
  <span class="method-name">get_value_wrapper</span><span class="method-args">(aFormat)</span>
313
313
  </a>
314
314
  </div>
@@ -321,12 +321,12 @@ object.
321
321
  </div>
322
322
  </div>
323
323
 
324
- <div id="method-M000085" class="method-detail">
325
- <a name="M000085"></a>
324
+ <div id="method-M000086" class="method-detail">
325
+ <a name="M000086"></a>
326
326
 
327
327
  <div class="method-heading">
328
- <a href="TYPE_p_unsigned_int.src/M000085.html" target="Code" class="method-signature"
329
- onclick="popupCode('TYPE_p_unsigned_int.src/M000085.html');return false;">
328
+ <a href="TYPE_p_unsigned_int.src/M000086.html" target="Code" class="method-signature"
329
+ onclick="popupCode('TYPE_p_unsigned_int.src/M000086.html');return false;">
330
330
  <span class="method-name">method_missing</span><span class="method-args">(aMsg, *aArgs, &amp;aBlockArg)</span>
331
331
  </a>
332
332
  </div>
@@ -338,12 +338,12 @@ Enables read and write access to VPI properties of this handle.
338
338
  </div>
339
339
  </div>
340
340
 
341
- <div id="method-M000084" class="method-detail">
342
- <a name="M000084"></a>
341
+ <div id="method-M000085" class="method-detail">
342
+ <a name="M000085"></a>
343
343
 
344
344
  <div class="method-heading">
345
- <a href="TYPE_p_unsigned_int.src/M000084.html" target="Code" class="method-signature"
346
- onclick="popupCode('TYPE_p_unsigned_int.src/M000084.html');return false;">
345
+ <a href="TYPE_p_unsigned_int.src/M000085.html" target="Code" class="method-signature"
346
+ onclick="popupCode('TYPE_p_unsigned_int.src/M000085.html');return false;">
347
347
  <span class="method-name">put_value</span><span class="method-args">(aValue, aFormat = nil, aTime = nil, aDelay = VpiNoDelay)</span>
348
348
  </a>
349
349
  </div>
@@ -357,12 +357,12 @@ simulator will attempt to determine the correct format.
357
357
  </div>
358
358
  </div>
359
359
 
360
- <div id="method-M000080" class="method-detail">
361
- <a name="M000080"></a>
360
+ <div id="method-M000081" class="method-detail">
361
+ <a name="M000081"></a>
362
362
 
363
363
  <div class="method-heading">
364
- <a href="TYPE_p_unsigned_int.src/M000080.html" target="Code" class="method-signature"
365
- onclick="popupCode('TYPE_p_unsigned_int.src/M000080.html');return false;">
364
+ <a href="TYPE_p_unsigned_int.src/M000081.html" target="Code" class="method-signature"
365
+ onclick="popupCode('TYPE_p_unsigned_int.src/M000081.html');return false;">
366
366
  <span class="method-name">x?</span><span class="method-args">()</span>
367
367
  </a>
368
368
  </div>
@@ -375,12 +375,12 @@ Tests if the logic value of this handle is &quot;don&#8217;t care&quot;
375
375
  </div>
376
376
  </div>
377
377
 
378
- <div id="method-M000081" class="method-detail">
379
- <a name="M000081"></a>
378
+ <div id="method-M000082" class="method-detail">
379
+ <a name="M000082"></a>
380
380
 
381
381
  <div class="method-heading">
382
- <a href="TYPE_p_unsigned_int.src/M000081.html" target="Code" class="method-signature"
383
- onclick="popupCode('TYPE_p_unsigned_int.src/M000081.html');return false;">
382
+ <a href="TYPE_p_unsigned_int.src/M000082.html" target="Code" class="method-signature"
383
+ onclick="popupCode('TYPE_p_unsigned_int.src/M000082.html');return false;">
384
384
  <span class="method-name">z?</span><span class="method-args">()</span>
385
385
  </a>
386
386
  </div>