ruby-vpi 7.1.0 → 7.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (232) hide show
  1. data/HEADER +101 -0
  2. data/HISTORY +57 -37
  3. data/README +1 -1
  4. data/Rakefile +21 -13
  5. data/doc/src/manual.xml +5 -5
  6. data/doc/txt/manual.txt +10 -6
  7. data/doc/xhtml/background.organization.html +1 -1
  8. data/doc/xhtml/index.html +2 -2
  9. data/doc/xhtml/usage.tutorial.html +4 -4
  10. data/header.html +114 -0
  11. data/header.part.html +114 -0
  12. data/history.html +217 -68
  13. data/history.part.html +880 -0
  14. data/lib/ruby-vpi/rcov.rb +62 -0
  15. data/lib/ruby-vpi/rspec.rb +1 -1
  16. data/lib/ruby-vpi/xx.rb +761 -0
  17. data/lib/ruby-vpi.rb +13 -2
  18. data/memo.html +116 -1
  19. data/memo.part.html +86 -0
  20. data/readme.html +116 -1
  21. data/readme.part.html +21 -0
  22. data/ref/c/annotated.html +1 -1
  23. data/ref/c/common_8h.html +1 -1
  24. data/ref/c/files.html +1 -1
  25. data/ref/c/functions.html +1 -1
  26. data/ref/c/functions_vars.html +1 -1
  27. data/ref/c/globals.html +1 -1
  28. data/ref/c/globals_0x63.html +1 -1
  29. data/ref/c/globals_0x65.html +1 -1
  30. data/ref/c/globals_0x66.html +1 -1
  31. data/ref/c/globals_0x70.html +1 -1
  32. data/ref/c/globals_0x72.html +1 -1
  33. data/ref/c/globals_0x73.html +1 -1
  34. data/ref/c/globals_0x74.html +1 -1
  35. data/ref/c/globals_0x76.html +1 -1
  36. data/ref/c/globals_0x78.html +1 -1
  37. data/ref/c/globals_defs.html +1 -1
  38. data/ref/c/globals_defs_0x65.html +1 -1
  39. data/ref/c/globals_defs_0x70.html +1 -1
  40. data/ref/c/globals_defs_0x76.html +1 -1
  41. data/ref/c/globals_defs_0x78.html +1 -1
  42. data/ref/c/globals_enum.html +1 -1
  43. data/ref/c/globals_eval.html +1 -1
  44. data/ref/c/globals_func.html +1 -1
  45. data/ref/c/globals_type.html +1 -1
  46. data/ref/c/globals_vars.html +1 -1
  47. data/ref/c/hierarchy.html +1 -1
  48. data/ref/c/index.html +1 -1
  49. data/ref/c/relay_8cin.html +1 -1
  50. data/ref/c/relay_8hin.html +1 -1
  51. data/ref/c/ruby-vpi_8c.html +1 -1
  52. data/ref/c/structrelay____RubyOptions____def.html +1 -1
  53. data/ref/c/structt__cb__data.html +1 -1
  54. data/ref/c/structt__vpi__delay.html +1 -1
  55. data/ref/c/structt__vpi__error__info.html +1 -1
  56. data/ref/c/structt__vpi__strengthval.html +1 -1
  57. data/ref/c/structt__vpi__systf__data.html +1 -1
  58. data/ref/c/structt__vpi__time.html +1 -1
  59. data/ref/c/structt__vpi__value.html +1 -1
  60. data/ref/c/structt__vpi__vecval.html +1 -1
  61. data/ref/c/structt__vpi__vlog__info.html +1 -1
  62. data/ref/c/swig_8cin.html +1 -1
  63. data/ref/c/swig_8hin.html +1 -1
  64. data/ref/c/verilog_8h.html +1 -1
  65. data/ref/c/vlog_8cin.html +1 -1
  66. data/ref/c/vlog_8hin.html +1 -1
  67. data/ref/c/vpi__user_8h.html +1 -1
  68. data/ref/ruby/classes/ERB.html +5 -5
  69. data/ref/ruby/classes/ERB.src/{M000035.html → M000011.html} +0 -0
  70. data/ref/ruby/classes/FileUtils.html +10 -10
  71. data/ref/ruby/classes/FileUtils.src/{M000048.html → M000065.html} +0 -0
  72. data/ref/ruby/classes/FileUtils.src/{M000049.html → M000066.html} +0 -0
  73. data/ref/ruby/classes/ModuleInfo.html +10 -10
  74. data/ref/ruby/classes/ModuleInfo.src/{M000019.html → M000008.html} +0 -0
  75. data/ref/ruby/classes/ModuleInfo.src/{M000020.html → M000009.html} +0 -0
  76. data/ref/ruby/classes/OutputInfo.html +5 -5
  77. data/ref/ruby/classes/OutputInfo.src/{M000018.html → M000007.html} +0 -0
  78. data/ref/ruby/classes/RDoc.html +5 -5
  79. data/ref/ruby/classes/RDoc.src/{M000051.html → M000069.html} +0 -0
  80. data/ref/ruby/classes/RubyVPI.html +45 -5
  81. data/ref/ruby/classes/RubyVPI.src/M000067.html +50 -0
  82. data/ref/ruby/classes/RubyVPI.src/M000068.html +20 -0
  83. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.html +35 -35
  84. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/{M000042.html → M000059.html} +0 -0
  85. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/{M000043.html → M000060.html} +0 -0
  86. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/{M000044.html → M000061.html} +0 -0
  87. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/{M000045.html → M000062.html} +1 -1
  88. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/{M000046.html → M000063.html} +0 -0
  89. data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/{M000047.html → M000064.html} +1 -1
  90. data/ref/ruby/classes/String.html +5 -5
  91. data/ref/ruby/classes/String.src/{M000034.html → M000012.html} +0 -0
  92. data/ref/ruby/classes/{ResettedCounterValue.html → Table.html} +41 -24
  93. data/ref/ruby/classes/Table.src/M000003.html +38 -0
  94. data/ref/ruby/classes/Table.src/M000004.html +18 -0
  95. data/ref/ruby/classes/Table.src/M000005.html +18 -0
  96. data/ref/ruby/classes/{InputGenerator.src/M000029.html → Table.src/M000006.html} +5 -5
  97. data/ref/ruby/classes/Template.html +5 -5
  98. data/ref/ruby/classes/Template.src/{M000027.html → M000010.html} +0 -0
  99. data/ref/ruby/classes/XX/Document.html +295 -0
  100. data/ref/ruby/classes/XX/Document.src/M000050.html +22 -0
  101. data/ref/ruby/classes/XX/Document.src/M000051.html +20 -0
  102. data/ref/ruby/classes/XX/Document.src/M000052.html +20 -0
  103. data/ref/ruby/classes/XX/Document.src/M000053.html +20 -0
  104. data/ref/ruby/classes/XX/Document.src/M000054.html +22 -0
  105. data/ref/ruby/classes/XX/Document.src/M000055.html +21 -0
  106. data/ref/ruby/classes/XX/Document.src/M000056.html +21 -0
  107. data/ref/ruby/classes/XX/Document.src/M000057.html +34 -0
  108. data/ref/ruby/classes/XX/Document.src/M000058.html +98 -0
  109. data/ref/ruby/{files/bin/generate_test_tpl/spec_rb.html → classes/XX/HTML4/Strict.html} +26 -28
  110. data/ref/ruby/classes/XX/HTML4/Strict.src/M000016.html +20 -0
  111. data/ref/ruby/classes/{CounterProto.html → XX/HTML4/Transitional.html} +19 -45
  112. data/ref/ruby/classes/XX/HTML4/Transitional.src/M000015.html +20 -0
  113. data/ref/ruby/classes/{MaximumCounterValue.html → XX/HTML4.html} +20 -34
  114. data/ref/ruby/classes/XX/HTML4.src/M000014.html +20 -0
  115. data/ref/ruby/classes/XX/Markup/ClassMethods.html +236 -0
  116. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000022.html +22 -0
  117. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000023.html +20 -0
  118. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000024.html +25 -0
  119. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000025.html +20 -0
  120. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000026.html +27 -0
  121. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000027.html +20 -0
  122. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000028.html +27 -0
  123. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000029.html +22 -0
  124. data/ref/ruby/{files/bin/generate_test_tpl/proto_rb.html → classes/XX/Markup/Error.html} +25 -21
  125. data/ref/ruby/classes/XX/Markup/InstanceMethods.html +474 -0
  126. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000030.html +56 -0
  127. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000031.html +33 -0
  128. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000032.html +31 -0
  129. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000033.html +48 -0
  130. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000034.html +20 -0
  131. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000035.html +31 -0
  132. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000036.html +32 -0
  133. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000037.html +32 -0
  134. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000038.html +28 -0
  135. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000039.html +23 -0
  136. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000040.html +26 -0
  137. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000041.html +20 -0
  138. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000042.html +20 -0
  139. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000043.html +20 -0
  140. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000044.html +20 -0
  141. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000045.html +20 -0
  142. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000046.html +21 -0
  143. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000047.html +20 -0
  144. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000048.html +20 -0
  145. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000049.html +20 -0
  146. data/ref/ruby/classes/{TestHw5UnitModel.html → XX/Markup.html} +29 -49
  147. data/ref/ruby/classes/XX/Markup.src/M000021.html +28 -0
  148. data/ref/ruby/{files/samp/counter/counter_rspecTest_spec_rb.html → classes/XX/XHTML/Strict.html} +46 -50
  149. data/ref/ruby/classes/XX/XHTML/Strict.src/M000020.html +20 -0
  150. data/ref/ruby/classes/XX/XHTML/Transitional.html +138 -0
  151. data/ref/ruby/classes/XX/XHTML/Transitional.src/M000019.html +20 -0
  152. data/ref/ruby/classes/XX/XHTML.html +145 -0
  153. data/ref/ruby/classes/XX/XHTML.src/M000018.html +36 -0
  154. data/ref/ruby/classes/XX/XML.html +138 -0
  155. data/ref/ruby/classes/XX/XML.src/M000013.html +20 -0
  156. data/ref/ruby/classes/XX/XMLish.html +138 -0
  157. data/ref/ruby/classes/XX/XMLish.src/M000017.html +18 -0
  158. data/ref/ruby/{files/samp/counter/counter_unitTest_spec_rb.html → classes/XX.html} +39 -36
  159. data/ref/ruby/created.rid +1 -1
  160. data/ref/ruby/files/bin/generate_test_rb.html +6 -6
  161. data/ref/ruby/files/bin/generate_test_rb.src/{M000002.html → M000001.html} +0 -0
  162. data/ref/ruby/files/bin/header_to_ruby_rb.html +1 -1
  163. data/ref/ruby/files/lib/ruby-vpi/erb_rb.html +1 -1
  164. data/ref/ruby/files/lib/ruby-vpi/rake_rb.html +1 -1
  165. data/ref/ruby/files/{samp/pipelined_alu/hw5_unit_bench_rb.html → lib/ruby-vpi/rcov_rb.html} +8 -5
  166. data/ref/ruby/files/lib/ruby-vpi/rdoc_rb.html +1 -1
  167. data/ref/ruby/files/lib/ruby-vpi/rspec_rb.html +1 -1
  168. data/ref/ruby/files/lib/ruby-vpi/runner_proxy_rb.html +1 -1
  169. data/ref/ruby/files/lib/ruby-vpi/runner_rb.html +6 -6
  170. data/ref/ruby/files/lib/ruby-vpi/runner_rb.src/{M000001.html → M000002.html} +0 -0
  171. data/ref/ruby/files/lib/ruby-vpi/vpi_util_rb.html +1 -1
  172. data/ref/ruby/files/lib/ruby-vpi/xx_rb.html +148 -0
  173. data/ref/ruby/files/lib/ruby-vpi_rb.html +2 -1
  174. data/ref/ruby/fr_class_index.html +15 -10
  175. data/ref/ruby/fr_file_index.html +2 -20
  176. data/ref/ruby/fr_method_index.html +69 -51
  177. data/ref/ruby/index.html +1 -1
  178. data/style.css +47 -0
  179. metadata +133 -109
  180. data/ref/ruby/classes/Counter.html +0 -258
  181. data/ref/ruby/classes/Counter.src/M000038.html +0 -20
  182. data/ref/ruby/classes/Counter.src/M000039.html +0 -22
  183. data/ref/ruby/classes/Counter.src/M000040.html +0 -20
  184. data/ref/ruby/classes/Counter.src/M000041.html +0 -22
  185. data/ref/ruby/classes/CounterProto.src/M000005.html +0 -22
  186. data/ref/ruby/classes/CounterProto.src/M000006.html +0 -22
  187. data/ref/ruby/classes/Hw5UnitModel/Operation.html +0 -216
  188. data/ref/ruby/classes/Hw5UnitModel/Operation.src/M000012.html +0 -25
  189. data/ref/ruby/classes/Hw5UnitModel/Operation.src/M000013.html +0 -33
  190. data/ref/ruby/classes/Hw5UnitModel/Operation.src/M000014.html +0 -18
  191. data/ref/ruby/classes/Hw5UnitModel.html +0 -256
  192. data/ref/ruby/classes/Hw5UnitModel.src/M000007.html +0 -24
  193. data/ref/ruby/classes/Hw5UnitModel.src/M000009.html +0 -20
  194. data/ref/ruby/classes/Hw5UnitModel.src/M000010.html +0 -38
  195. data/ref/ruby/classes/Hw5UnitModel.src/M000011.html +0 -22
  196. data/ref/ruby/classes/Hw5_unit.html +0 -196
  197. data/ref/ruby/classes/Hw5_unit.src/M000004.html +0 -27
  198. data/ref/ruby/classes/Hw5_unit_spec.html +0 -237
  199. data/ref/ruby/classes/Hw5_unit_spec.src/M000024.html +0 -21
  200. data/ref/ruby/classes/Hw5_unit_spec.src/M000025.html +0 -21
  201. data/ref/ruby/classes/Hw5_unit_spec.src/M000026.html +0 -67
  202. data/ref/ruby/classes/InputGenerator.html +0 -260
  203. data/ref/ruby/classes/InputGenerator.src/M000028.html +0 -18
  204. data/ref/ruby/classes/InputGenerator.src/M000030.html +0 -19
  205. data/ref/ruby/classes/InputGenerator.src/M000031.html +0 -38
  206. data/ref/ruby/classes/InputGenerator.src/M000032.html +0 -19
  207. data/ref/ruby/classes/InputGenerator.src/M000033.html +0 -19
  208. data/ref/ruby/classes/MaximumCounterValue.src/M000036.html +0 -23
  209. data/ref/ruby/classes/MaximumCounterValue.src/M000037.html +0 -21
  210. data/ref/ruby/classes/ResettedCounterValue.src/M000015.html +0 -19
  211. data/ref/ruby/classes/ResettedCounterValue.src/M000016.html +0 -18
  212. data/ref/ruby/classes/ResettedCounterValue.src/M000017.html +0 -23
  213. data/ref/ruby/classes/RubyVPI.src/M000050.html +0 -39
  214. data/ref/ruby/classes/TestHw5UnitModel.src/M000021.html +0 -19
  215. data/ref/ruby/classes/TestHw5UnitModel.src/M000022.html +0 -19
  216. data/ref/ruby/classes/TestHw5UnitModel.src/M000023.html +0 -64
  217. data/ref/ruby/files/bin/generate_test_tpl/bench_rb.html +0 -115
  218. data/ref/ruby/files/bin/generate_test_tpl/design_rb.html +0 -107
  219. data/ref/ruby/files/bin/generate_test_tpl/spec_rb.src/M000003.html +0 -22
  220. data/ref/ruby/files/ext/extconf_rb.html +0 -108
  221. data/ref/ruby/files/gem_extconf_rb.html +0 -114
  222. data/ref/ruby/files/samp/counter/counter_rspecTest_bench_rb.html +0 -115
  223. data/ref/ruby/files/samp/counter/counter_rspecTest_design_rb.html +0 -107
  224. data/ref/ruby/files/samp/counter/counter_rspecTest_proto_rb.html +0 -107
  225. data/ref/ruby/files/samp/counter/counter_unitTest_bench_rb.html +0 -115
  226. data/ref/ruby/files/samp/counter/counter_unitTest_design_rb.html +0 -107
  227. data/ref/ruby/files/samp/counter/counter_unitTest_proto_rb.html +0 -107
  228. data/ref/ruby/files/samp/pipelined_alu/Hw5UnitModel_rb.html +0 -101
  229. data/ref/ruby/files/samp/pipelined_alu/InputGenerator_rb.html +0 -101
  230. data/ref/ruby/files/samp/pipelined_alu/TestHw5UnitModel_rb.html +0 -111
  231. data/ref/ruby/files/samp/pipelined_alu/hw5_unit_design_rb.html +0 -107
  232. data/ref/ruby/files/samp/pipelined_alu/hw5_unit_spec_rb.html +0 -112
@@ -1,67 +0,0 @@
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>test_pipeline (Hw5_unit_spec)</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 samp/pipelined_alu/hw5_unit_spec.rb, line 71</span>
14
- 71: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_pipeline</span>
15
- 72: <span class="ruby-identifier">operationQueue</span> = []
16
- 73: <span class="ruby-identifier">numOperations</span> = <span class="ruby-value">0</span>
17
- 74:
18
- 75: <span class="ruby-keyword kw">begin</span>
19
- 76: <span class="ruby-comment cmt"># start a new operation</span>
20
- 77: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">numOperations</span> <span class="ruby-operator">&lt;</span> <span class="ruby-constant">NUM_TESTS</span>
21
- 78: <span class="ruby-identifier">op</span> = <span class="ruby-constant">Hw5UnitModel</span><span class="ruby-operator">::</span><span class="ruby-constant">Operation</span>.<span class="ruby-identifier">new</span>(
22
- 79: <span class="ruby-constant">Hw5UnitModel</span><span class="ruby-operator">::</span><span class="ruby-constant">OPERATIONS</span>[<span class="ruby-identifier">rand</span>(<span class="ruby-constant">Hw5UnitModel</span><span class="ruby-operator">::</span><span class="ruby-constant">OPERATIONS</span>.<span class="ruby-identifier">size</span>)],
23
- 80: <span class="ruby-identifier">numOperations</span> <span class="ruby-operator">%</span> <span class="ruby-constant">OPERATION_TAG_LIMIT</span>,
24
- 81: <span class="ruby-ivar">@ig</span>.<span class="ruby-identifier">gen</span>.<span class="ruby-identifier">abs</span>,
25
- 82: <span class="ruby-ivar">@ig</span>.<span class="ruby-identifier">gen</span>.<span class="ruby-identifier">abs</span>
26
- 83: )
27
- 84:
28
- 85:
29
- 86: <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">a</span>.<span class="ruby-identifier">intVal</span> = <span class="ruby-identifier">op</span>.<span class="ruby-identifier">arg1</span>
30
- 87: <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">b</span>.<span class="ruby-identifier">intVal</span> = <span class="ruby-identifier">op</span>.<span class="ruby-identifier">arg2</span>
31
- 88: <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">in_op</span>.<span class="ruby-identifier">intVal</span> = <span class="ruby-constant">OPERATION_ENCODINGS</span>[<span class="ruby-identifier">op</span>.<span class="ruby-identifier">type</span>]
32
- 89: <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">in_databits</span>.<span class="ruby-identifier">intVal</span> = <span class="ruby-identifier">op</span>.<span class="ruby-identifier">tag</span>
33
- 90:
34
- 91:
35
- 92: <span class="ruby-identifier">operationQueue</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">op</span>
36
- 93: <span class="ruby-identifier">numOperations</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
37
- 94: <span class="ruby-keyword kw">end</span>
38
- 95:
39
- 96:
40
- 97: <span class="ruby-comment cmt"># simulate a clock cycle</span>
41
- 98: <span class="ruby-identifier">relay_verilog</span>
42
- 99:
43
- 100:
44
- 101: <span class="ruby-comment cmt"># verify the output when present</span>
45
- 102: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">out_databits</span>.<span class="ruby-identifier">hexStrVal</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/x/</span>
46
- 103: <span class="ruby-identifier">finishedOp</span> = <span class="ruby-constant">Hw5UnitModel</span><span class="ruby-operator">::</span><span class="ruby-constant">Operation</span>.<span class="ruby-identifier">new</span>(
47
- 104: <span class="ruby-constant">OPERATION_ENCODINGS</span>.<span class="ruby-identifier">index</span>(<span class="ruby-ivar">@design</span>.<span class="ruby-identifier">out_op</span>.<span class="ruby-identifier">intVal</span>),
48
- 105: <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">out_databits</span>.<span class="ruby-identifier">intVal</span>
49
- 106: )
50
- 107: <span class="ruby-identifier">finishedOp</span>.<span class="ruby-identifier">result</span> = <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">res</span>.<span class="ruby-identifier">intVal</span> <span class="ruby-operator">&amp;</span> <span class="ruby-constant">VPI_INTEGER_MASK</span>
51
- 108:
52
- 109: <span class="ruby-identifier">expectedOp</span> = <span class="ruby-identifier">operationQueue</span>.<span class="ruby-identifier">shift</span>
53
- 110:
54
- 111:
55
- 112: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">expectedOp</span>.<span class="ruby-identifier">type</span>, <span class="ruby-identifier">finishedOp</span>.<span class="ruby-identifier">type</span>, <span class="ruby-value str">&quot;incorrect operation&quot;</span>
56
- 113: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">expectedOp</span>.<span class="ruby-identifier">tag</span>, <span class="ruby-identifier">finishedOp</span>.<span class="ruby-identifier">tag</span>, <span class="ruby-value str">&quot;incorrect tag&quot;</span>
57
- 114:
58
- 115:
59
- 116: <span class="ruby-comment cmt"># ignore the result of a NOP operation</span>
60
- 117: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">finishedOp</span>.<span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:nop</span>
61
- 118: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">expectedOp</span>.<span class="ruby-identifier">compute</span> <span class="ruby-operator">&amp;</span> <span class="ruby-constant">VPI_INTEGER_MASK</span>, <span class="ruby-identifier">finishedOp</span>.<span class="ruby-identifier">result</span>, <span class="ruby-value str">&quot;incorrect result&quot;</span>
62
- 119: <span class="ruby-keyword kw">end</span>
63
- 120: <span class="ruby-keyword kw">end</span>
64
- 121: <span class="ruby-keyword kw">end</span> <span class="ruby-keyword kw">until</span> <span class="ruby-identifier">operationQueue</span>.<span class="ruby-identifier">empty?</span>
65
- 122: <span class="ruby-keyword kw">end</span></pre>
66
- </body>
67
- </html>
@@ -1,260 +0,0 @@
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>Class: InputGenerator</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>Class</strong></td>
53
- <td class="class-name-in-header">InputGenerator</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../files/samp/pipelined_alu/InputGenerator_rb.html">
59
- samp/pipelined_alu/InputGenerator.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- Object
69
- </td>
70
- </tr>
71
- </table>
72
- </div>
73
- <!-- banner header -->
74
-
75
- <div id="bodyContent">
76
-
77
-
78
-
79
- <div id="contextContent">
80
-
81
- <div id="description">
82
- <p>
83
- Generates random input sequences of configurable length.
84
- </p>
85
-
86
- </div>
87
-
88
-
89
- </div>
90
-
91
- <div id="method-list">
92
- <h3 class="section-bar">Methods</h3>
93
-
94
- <div class="name-list">
95
- <a href="#M000029">bits</a>&nbsp;&nbsp;
96
- <a href="#M000030">bits=</a>&nbsp;&nbsp;
97
- <a href="#M000031">gen</a>&nbsp;&nbsp;
98
- <a href="#M000033">genPowerOfTwo</a>&nbsp;&nbsp;
99
- <a href="#M000032">genPrime</a>&nbsp;&nbsp;
100
- <a href="#M000028">new</a>&nbsp;&nbsp;
101
- </div>
102
- </div>
103
-
104
- </div>
105
-
106
-
107
- <!-- if includes -->
108
-
109
- <div id="section">
110
-
111
-
112
- <div id="constants-list">
113
- <h3 class="section-bar">Constants</h3>
114
-
115
- <div class="name-list">
116
- <table summary="Constants">
117
- <tr class="top-aligned-row context-row">
118
- <td class="context-item-name">PrimeNums</td>
119
- <td>=</td>
120
- <td class="context-item-value">[ 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997, 1009, 1013, 1019, 1021, 1031, 1033, 1039, 1049, 1051, 1061, 1063, 1069, 1087, 1091, 1093, 1097, 1103, 1109, 1117, 1123, 1129, 1151, 1153, 1163, 1171, 1181, 1187, 1193, 1201, 1213, 1217, 1223, 1229, 1231, 1237, 1249, 1259, 1277, 1279, 1283, 1289, 1291, 1297, 1301, 1303, 1307, 1319, 1321, 1327, 1361, 1367, 1373, 1381, 1399, 1409, 1423, 1427, 1429, 1433, 1439, 1447, 1451, 1453, 1459, 1471, 1481, 1483, 1487, 1489, 1493, 1499, 1511, 1523, 1531, 1543, 1549, 1553, 1559, 1567, 1571, 1579, 1583, 1597, 1601, 1607, 1609, 1613, 1619, 1621, 1627, 1637, 1657, 1663, 1667, 1669, 1693, 1697, 1699, 1709, 1721, 1723, 1733, 1741, 1747, 1753, 1759, 1777, 1783, 1787, 1789, 1801, 1811, 1823, 1831, 1847, 1861, 1867, 1871, 1873, 1877, 1879, 1889, 1901, 1907, 1913, 1931, 1933, 1949, 1951, 1973, 1979, 1987, 1993, 1997, 1999, 2003, 2011, 2017, 2027, 2029, 2039, 2053, 2063, 2069, 2081, 2083, 2087, 2089, 2099, 2111, 2113, 2129, 2131, 2137, 2141, 2143, 2153, 2161, 2179, 2203, 2207, 2213, 2221, 2237, 2239, 2243, 2251, 2267, 2269, 2273, 2281, 2287, 2293, 2297, 2309, 2311, 2333, 2339, 2341, 2347, 2351, 2357, 2371, 2377, 2381, 2383, 2389, 2393, 2399, 2411, 2417, 2423, 2437, 2441, 2447, 2459, 2467, 2473, 2477, 2503, 2521, 2531, 2539, 2543, 2549, 2551, 2557, 2579, 2591, 2593, 2609, 2617, 2621, 2633, 2647, 2657, 2659, 2663, 2671, 2677, 2683, 2687, 2689, 2693, 2699, 2707, 2711, 2713, 2719, 2729, 2731, 2741, 2749, 2753, 2767, 2777, 2789, 2791, 2797, 2801, 2803, 2819, 2833, 2837, 2843, 2851, 2857, 2861, 2879, 2887, 2897, 2903, 2909, 2917, 2927, 2939, 2953, 2957, 2963, 2969, 2971, 2999, 3001, 3011, 3019, 3023, 3037, 3041, 3049, 3061, 3067, 3079, 3083, 3089, 3109, 3119, 3121, 3137, 3163, 3167, 3169, 3181, 3187, 3191, 3203, 3209, 3217, 3221, 3229, 3251, 3253, 3257, 3259, 3271, 3299, 3301, 3307, 3313, 3319, 3323, 3329, 3331, 3343, 3347, 3359, 3361, 3371, 3373, 3389, 3391, 3407, 3413, 3433, 3449, 3457, 3461, 3463, 3467, 3469, 3491, 3499, 3511, 3517, 3527, 3529, 3533, 3539, 3541, 3547, 3557, 3559, 3571, 3581, 3583, 3593, 3607, 3613, 3617, 3623, 3631, 3637, 3643, 3659, 3671, 3673, 3677, 3691, 3697, 3701, 3709, 3719, 3727, 3733, 3739, 3761, 3767, 3769, 3779, 3793, 3797, 3803, 3821, 3823, 3833, 3847, 3851, 3853, 3863, 3877, 3881, 3889, 3907, 3911, 3917, 3919, 3923, 3929, 3931, 3943, 3947, 3967, 3989, 4001, 4003, 4007, 4013, 4019, 4021, 4027, 4049, 4051, 4057, 4073, 4079, 4091, 4093, 4099, 4111, 4127, 4129, 4133, 4139, 4153, 4157, 4159, 4177, 4201, 4211, 4217, 4219, 4229, 4231, 4241, 4243, 4253, 4259, 4261, 4271, 4273, 4283, 4289, 4297, 4327, 4337, 4339, 4349, 4357, 4363, 4373, 4391, 4397, 4409, 4421, 4423, 4441, 4447, 4451, 4457, 4463, 4481, 4483, 4493, 4507, 4513, 4517, 4519, 4523, 4547, 4549, 4561, 4567, 4583, 4591, 4597, 4603, 4621, 4637, 4639, 4643, 4649, 4651, 4657, 4663, 4673, 4679, 4691, 4703, 4721, 4723, 4729, 4733, 4751, 4759, 4783, 4787, 4789, 4793, 4799, 4801, 4813, 4817, 4831, 4861, 4871, 4877, 4889, 4903, 4909, 4919, 4931, 4933, 4937, 4943, 4951, 4957, 4967, 4969, 4973, 4987, 4993, 4999, 5003, 5009, 5011, 5021, 5023, 5039, 5051, 5059, 5077, 5081, 5087, 5099, 5101, 5107, 5113, 5119, 5147, 5153, 5167, 5171, 5179, 5189, 5197, 5209, 5227, 5231, 5233, 5237, 5261, 5273, 5279, 5281, 5297, 5303, 5309, 5323, 5333, 5347, 5351, 5381, 5387, 5393, 5399, 5407, 5413, 5417, 5419, 5431, 5437, 5441, 5443, 5449, 5471, 5477, 5479, 5483, 5501, 5503, 5507, 5519, 5521, 5527, 5531, 5557, 5563, 5569, 5573, 5581, 5591, 5623, 5639, 5641, 5647, 5651, 5653, 5657, 5659, 5669, 5683, 5689, 5693, 5701, 5711, 5717, 5737, 5741, 5743, 5749, 5779, 5783, 5791, 5801, 5807, 5813, 5821, 5827, 5839, 5843, 5849, 5851, 5857, 5861, 5867, 5869, 5879, 5881, 5897, 5903, 5923, 5927, 5939, 5953, 5981, 5987, 6007, 6011, 6029, 6037, 6043, 6047, 6053, 6067, 6073, 6079, 6089, 6091, 6101, 6113, 6121, 6131, 6133, 6143, 6151, 6163, 6173, 6197, 6199, 6203, 6211, 6217, 6221, 6229, 6247, 6257, 6263, 6269, 6271, 6277, 6287, 6299, 6301, 6311, 6317, 6323, 6329, 6337, 6343, 6353, 6359, 6361, 6367, 6373, 6379, 6389, 6397, 6421, 6427, 6449, 6451, 6469, 6473, 6481, 6491, 6521, 6529, 6547, 6551, 6553, 6563, 6569, 6571, 6577, 6581, 6599, 6607, 6619, 6637, 6653, 6659, 6661, 6673, 6679, 6689, 6691, 6701, 6703, 6709, 6719, 6733, 6737, 6761, 6763, 6779, 6781, 6791, 6793, 6803, 6823, 6827, 6829, 6833, 6841, 6857, 6863, 6869, 6871, 6883, 6899, 6907, 6911, 6917, 6947, 6949, 6959, 6961, 6967, 6971, 6977, 6983, 6991, 6997, 7001, 7013, 7019, 7027, 7039, 7043, 7057, 7069, 7079, 7103, 7109, 7121, 7127, 7129, 7151, 7159, 7177, 7187, 7193, 7207, 7211, 7213, 7219, 7229, 7237, 7243, 7247, 7253, 7283, 7297, 7307, 7309, 7321, 7331, 7333, 7349, 7351, 7369, 7393, 7411, 7417, 7433, 7451, 7457, 7459, 7477, 7481, 7487, 7489, 7499, 7507, 7517, 7523, 7529, 7537, 7541, 7547, 7549, 7559, 7561, 7573, 7577, 7583, 7589, 7591, 7603, 7607, 7621, 7639, 7643, 7649, 7669, 7673, 7681, 7687, 7691, 7699, 7703, 7717, 7723, 7727, 7741, 7753, 7757, 7759, 7789, 7793, 7817, 7823, 7829, 7841, 7853, 7867, 7873, 7877, 7879, 7883, 7901, 7907, 7919</td>
121
- <td width="3em">&nbsp;</td>
122
- <td class="context-item-desc">
123
- the first 1000 prime numbers, gotten from &lt;<a
124
- href="http://en.wikipedia.org/wiki/List_of_prime_numbers#The_first_1000_prime_numbers">en.wikipedia.org/wiki/List_of_prime_numbers#The_first_1000_prime_numbers</a>&gt;
125
-
126
- </td>
127
- </tr>
128
- </table>
129
- </div>
130
- </div>
131
-
132
-
133
-
134
-
135
-
136
-
137
- <!-- if method_list -->
138
- <div id="methods">
139
- <h3 class="section-bar">Public Class methods</h3>
140
-
141
- <div id="method-M000028" class="method-detail">
142
- <a name="M000028"></a>
143
-
144
- <div class="method-heading">
145
- <a href="InputGenerator.src/M000028.html" target="Code" class="method-signature"
146
- onclick="popupCode('InputGenerator.src/M000028.html');return false;">
147
- <span class="method-name">new</span><span class="method-args">(bits)</span>
148
- </a>
149
- </div>
150
-
151
- <div class="method-description">
152
- <p>
153
- @param bits Number of bits that can be used to represent a generated input
154
- sequence
155
- </p>
156
- </div>
157
- </div>
158
-
159
- <h3 class="section-bar">Public Instance methods</h3>
160
-
161
- <div id="method-M000029" class="method-detail">
162
- <a name="M000029"></a>
163
-
164
- <div class="method-heading">
165
- <a href="InputGenerator.src/M000029.html" target="Code" class="method-signature"
166
- onclick="popupCode('InputGenerator.src/M000029.html');return false;">
167
- <span class="method-name">bits</span><span class="method-args">()</span>
168
- </a>
169
- </div>
170
-
171
- <div class="method-description">
172
- <p>
173
- gets the number of bits that can be used to represent a generated input
174
- sequence
175
- </p>
176
- </div>
177
- </div>
178
-
179
- <div id="method-M000030" class="method-detail">
180
- <a name="M000030"></a>
181
-
182
- <div class="method-heading">
183
- <a href="InputGenerator.src/M000030.html" target="Code" class="method-signature"
184
- onclick="popupCode('InputGenerator.src/M000030.html');return false;">
185
- <span class="method-name">bits=</span><span class="method-args">(num)</span>
186
- </a>
187
- </div>
188
-
189
- <div class="method-description">
190
- <p>
191
- sets the number of bits that can be used to represent a generated input
192
- sequence
193
- </p>
194
- </div>
195
- </div>
196
-
197
- <div id="method-M000031" class="method-detail">
198
- <a name="M000031"></a>
199
-
200
- <div class="method-heading">
201
- <a href="InputGenerator.src/M000031.html" target="Code" class="method-signature"
202
- onclick="popupCode('InputGenerator.src/M000031.html');return false;">
203
- <span class="method-name">gen</span><span class="method-args">()</span>
204
- </a>
205
- </div>
206
-
207
- <div class="method-description">
208
- <p>
209
- generates a random input sequence
210
- </p>
211
- </div>
212
- </div>
213
-
214
- <div id="method-M000033" class="method-detail">
215
- <a name="M000033"></a>
216
-
217
- <div class="method-heading">
218
- <a href="InputGenerator.src/M000033.html" target="Code" class="method-signature"
219
- onclick="popupCode('InputGenerator.src/M000033.html');return false;">
220
- <span class="method-name">genPowerOfTwo</span><span class="method-args">()</span>
221
- </a>
222
- </div>
223
-
224
- <div class="method-description">
225
- <p>
226
- generates a random power-of-two number
227
- </p>
228
- </div>
229
- </div>
230
-
231
- <div id="method-M000032" class="method-detail">
232
- <a name="M000032"></a>
233
-
234
- <div class="method-heading">
235
- <a href="InputGenerator.src/M000032.html" target="Code" class="method-signature"
236
- onclick="popupCode('InputGenerator.src/M000032.html');return false;">
237
- <span class="method-name">genPrime</span><span class="method-args">()</span>
238
- </a>
239
- </div>
240
-
241
- <div class="method-description">
242
- <p>
243
- generates a random prime number
244
- </p>
245
- </div>
246
- </div>
247
-
248
-
249
- </div>
250
-
251
-
252
- </div>
253
-
254
-
255
- <div id="validator-badges">
256
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
257
- </div>
258
-
259
- </body>
260
- </html>
@@ -1,18 +0,0 @@
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>new (InputGenerator)</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 samp/pipelined_alu/InputGenerator.rb, line 32</span>
14
- 32: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">bits</span>)
15
- 33: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">bits</span> = <span class="ruby-identifier">bits</span>
16
- 34: <span class="ruby-keyword kw">end</span></pre>
17
- </body>
18
- </html>
@@ -1,19 +0,0 @@
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>bits= (InputGenerator)</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 samp/pipelined_alu/InputGenerator.rb, line 46</span>
14
- 46: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">bits=</span>(<span class="ruby-identifier">num</span>)
15
- 47: <span class="ruby-ivar">@inputBits</span> = <span class="ruby-identifier">num</span>
16
- 48: <span class="ruby-ivar">@inputLimit</span> = <span class="ruby-value">2</span> <span class="ruby-operator">**</span> <span class="ruby-ivar">@inputBits</span>
17
- 49: <span class="ruby-keyword kw">end</span></pre>
18
- </body>
19
- </html>
@@ -1,38 +0,0 @@
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>gen (InputGenerator)</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 samp/pipelined_alu/InputGenerator.rb, line 54</span>
14
- 54: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">gen</span>
15
- 55: <span class="ruby-comment cmt"># randomly select a specific kind of integer to generate</span>
16
- 56: <span class="ruby-comment cmt"># @note param to rand() is number of situations in this 'case' block</span>
17
- 57: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">rand</span>(<span class="ruby-value">6</span>)
18
- 58: <span class="ruby-keyword kw">when</span> <span class="ruby-value">0</span> <span class="ruby-comment cmt"># positive numbers</span>
19
- 59: <span class="ruby-identifier">rand</span>(<span class="ruby-ivar">@inputLimit</span>)
20
- 60:
21
- 61: <span class="ruby-keyword kw">when</span> <span class="ruby-value">1</span> <span class="ruby-comment cmt"># negative numbers</span>
22
- 62: <span class="ruby-operator">-</span><span class="ruby-identifier">rand</span>(<span class="ruby-ivar">@inputLimit</span>)
23
- 63:
24
- 64: <span class="ruby-keyword kw">when</span> <span class="ruby-value">2</span> <span class="ruby-comment cmt"># zero</span>
25
- 65: <span class="ruby-value">0</span>
26
- 66:
27
- 67: <span class="ruby-keyword kw">when</span> <span class="ruby-value">3</span> <span class="ruby-comment cmt"># one</span>
28
- 68: <span class="ruby-value">1</span>
29
- 69:
30
- 70: <span class="ruby-keyword kw">when</span> <span class="ruby-value">4</span> <span class="ruby-comment cmt"># prime numbers</span>
31
- 71: <span class="ruby-identifier">genPrime</span>
32
- 72:
33
- 73: <span class="ruby-keyword kw">when</span> <span class="ruby-value">5</span> <span class="ruby-comment cmt"># power-of-two numbers</span>
34
- 74: <span class="ruby-identifier">genPowerOfTwo</span>
35
- 75: <span class="ruby-keyword kw">end</span>
36
- 76: <span class="ruby-keyword kw">end</span></pre>
37
- </body>
38
- </html>
@@ -1,19 +0,0 @@
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>genPrime (InputGenerator)</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 samp/pipelined_alu/InputGenerator.rb, line 81</span>
14
- 81: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">genPrime</span>
15
- 82: <span class="ruby-identifier">prime</span> = <span class="ruby-constant">PrimeNums</span>[<span class="ruby-identifier">rand</span>(<span class="ruby-constant">PrimeNums</span>.<span class="ruby-identifier">size</span>)]
16
- 83: <span class="ruby-identifier">prime</span> <span class="ruby-operator">&lt;</span> <span class="ruby-ivar">@inputLimit</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">prime</span> <span class="ruby-operator">:</span> <span class="ruby-value">2</span>
17
- 84: <span class="ruby-keyword kw">end</span></pre>
18
- </body>
19
- </html>
@@ -1,19 +0,0 @@
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>genPowerOfTwo (InputGenerator)</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 samp/pipelined_alu/InputGenerator.rb, line 89</span>
14
- 89: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">genPowerOfTwo</span>
15
- 90: <span class="ruby-identifier">power</span> = <span class="ruby-identifier">rand</span>(<span class="ruby-ivar">@inputBits</span>) <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
16
- 91: (<span class="ruby-value">2</span> <span class="ruby-operator">**</span> <span class="ruby-identifier">power</span>) <span class="ruby-operator">-</span> <span class="ruby-value">1</span>
17
- 92: <span class="ruby-keyword kw">end</span></pre>
18
- </body>
19
- </html>
@@ -1,23 +0,0 @@
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>setup (MaximumCounterValue)</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 samp/counter/counter_unitTest_spec.rb, line 34</span>
14
- 34: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setup</span>
15
- 35: <span class="ruby-ivar">@design</span> = <span class="ruby-constant">Counter</span>.<span class="ruby-identifier">new</span>
16
- 36: <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">reset!</span>
17
- 37:
18
- 38: <span class="ruby-comment cmt"># increment the counter to maximum value</span>
19
- 39: <span class="ruby-constant">MAX</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-identifier">relay_verilog</span> <span class="ruby-keyword kw">end</span>
20
- 40: <span class="ruby-identifier">assert_equal</span> <span class="ruby-constant">MAX</span>, <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">count</span>.<span class="ruby-identifier">intVal</span>
21
- 41: <span class="ruby-keyword kw">end</span></pre>
22
- </body>
23
- </html>
@@ -1,21 +0,0 @@
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>test_overflow (MaximumCounterValue)</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 samp/counter/counter_unitTest_spec.rb, line 43</span>
14
- 43: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_overflow</span>
15
- 44: <span class="ruby-comment cmt"># increment the counter</span>
16
- 45: <span class="ruby-identifier">relay_verilog</span>
17
- 46:
18
- 47: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">0</span>, <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">count</span>.<span class="ruby-identifier">intVal</span>
19
- 48: <span class="ruby-keyword kw">end</span></pre>
20
- </body>
21
- </html>
@@ -1,19 +0,0 @@
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>setup (ResettedCounterValue)</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 samp/counter/counter_unitTest_spec.rb, line 12</span>
14
- 12: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setup</span>
15
- 13: <span class="ruby-ivar">@design</span> = <span class="ruby-constant">Counter</span>.<span class="ruby-identifier">new</span>
16
- 14: <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">reset!</span>
17
- 15: <span class="ruby-keyword kw">end</span></pre>
18
- </body>
19
- </html>
@@ -1,18 +0,0 @@
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>test_zero (ResettedCounterValue)</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 samp/counter/counter_unitTest_spec.rb, line 17</span>
14
- 17: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_zero</span>
15
- 18: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">0</span>, <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">count</span>.<span class="ruby-identifier">intVal</span>
16
- 19: <span class="ruby-keyword kw">end</span></pre>
17
- </body>
18
- </html>
@@ -1,23 +0,0 @@
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>test_increment (ResettedCounterValue)</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 samp/counter/counter_unitTest_spec.rb, line 21</span>
14
- 21: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_increment</span>
15
- 22: <span class="ruby-constant">LIMIT</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
16
- 23: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">i</span>, <span class="ruby-ivar">@design</span>.<span class="ruby-identifier">count</span>.<span class="ruby-identifier">intVal</span>
17
- 24:
18
- 25: <span class="ruby-comment cmt"># advance the clock</span>
19
- 26: <span class="ruby-identifier">relay_verilog</span>
20
- 27: <span class="ruby-keyword kw">end</span>
21
- 28: <span class="ruby-keyword kw">end</span></pre>
22
- </body>
23
- </html>
@@ -1,39 +0,0 @@
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>init_bench (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.rb, line 24</span>
14
- 24: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</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-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>
16
- 26:
17
- 27: <span class="ruby-identifier">require</span> <span class="ruby-value str">'ruby-vpi/vpi_util'</span>
18
- 28:
19
- 29: <span class="ruby-comment cmt"># load the design under test</span>
20
- 30: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{aTestPrefix}_design.rb&quot;</span>
21
- 31:
22
- 32: <span class="ruby-keyword kw">if</span> <span class="ruby-constant">ENV</span>[<span class="ruby-value str">'PROTO'</span>]
23
- 33: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{aTestPrefix}_proto.rb&quot;</span>
24
- 34:
25
- 35: <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>
26
- 36:
27
- 37: <span class="ruby-constant">Vpi</span>.<span class="ruby-identifier">class_eval</span> <span class="ruby-keyword kw">do</span>
28
- 38: <span class="ruby-identifier">define_method</span> <span class="ruby-identifier">:relay_verilog</span> <span class="ruby-keyword kw">do</span>
29
- 39: <span class="ruby-identifier">proto</span>.<span class="ruby-identifier">simulate!</span>
30
- 40: <span class="ruby-keyword kw">end</span>
31
- 41: <span class="ruby-keyword kw">end</span>
32
- 42:
33
- 43: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;#{aTestPrefix}: verifying prototype instead of design&quot;</span>
34
- 44: <span class="ruby-keyword kw">end</span>
35
- 45:
36
- 46: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{aTestPrefix}_spec.rb&quot;</span>
37
- 47: <span class="ruby-keyword kw">end</span></pre>
38
- </body>
39
- </html>