ruby-vpi 8.2.0 → 9.0.0

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