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.
- data/HEADER +0 -19
- data/HISTORY +40 -0
- data/README +20 -2
- data/Rakefile +38 -42
- data/bin/generate_test.rb +50 -35
- data/bin/generate_test_tpl/bench.rb +3 -3
- data/bin/generate_test_tpl/bench.v +1 -1
- data/bin/generate_test_tpl/runner.rake +3 -2
- data/bin/generate_test_tpl/spec.rb +2 -2
- data/doc/background.organization.html +1 -1
- data/doc/glossary.html +1 -1
- data/doc/index.html +2 -2
- data/doc/manual.txt +163 -83
- data/doc/problems.html +1 -1
- data/doc/problems.ruby.html +1 -1
- data/doc/src/manual.xml +132 -49
- data/doc/usage.examples.html +1 -1
- data/doc/usage.html +1 -1
- data/doc/usage.installation.html +2 -2
- data/doc/usage.recommendations.html +3 -0
- data/doc/usage.requirements.html +1 -1
- data/doc/usage.tutorial.html +46 -42
- data/ext/extconf.rb +5 -2
- data/ext/relay.c +138 -0
- data/ext/{relay.hin → relay.h} +7 -7
- data/ext/{swig.cin → swig.c} +5 -7
- data/ext/{swig.hin → swig.h} +4 -4
- data/ext/verilog.h +1 -2
- data/ext/vlog.c +86 -0
- data/ext/{vlog.hin → vlog.h} +9 -12
- data/header.html +0 -31
- data/header.part.html +0 -31
- data/history.html +72 -31
- data/history.part.html +72 -0
- data/lib/ruby-vpi.rb +16 -0
- data/lib/ruby-vpi/runner.rb +34 -16
- data/memo.html +0 -31
- data/readme.html +33 -33
- data/readme.part.html +34 -3
- data/ref/c/annotated.html +1 -1
- data/ref/c/common_8h.html +1 -1
- data/ref/c/files.html +7 -8
- data/ref/c/functions.html +2 -2
- data/ref/c/functions_vars.html +2 -2
- data/ref/c/globals.html +1 -1
- data/ref/c/globals_0x63.html +1 -1
- data/ref/c/globals_0x65.html +1 -1
- data/ref/c/globals_0x66.html +1 -1
- data/ref/c/globals_0x70.html +1 -1
- data/ref/c/globals_0x72.html +9 -9
- data/ref/c/globals_0x73.html +3 -3
- data/ref/c/globals_0x74.html +1 -1
- data/ref/c/globals_0x76.html +5 -5
- data/ref/c/globals_0x78.html +1 -1
- data/ref/c/globals_defs.html +1 -1
- data/ref/c/globals_defs_0x65.html +1 -1
- data/ref/c/globals_defs_0x70.html +1 -1
- data/ref/c/globals_defs_0x76.html +2 -2
- data/ref/c/globals_defs_0x78.html +1 -1
- data/ref/c/globals_enum.html +1 -1
- data/ref/c/globals_eval.html +1 -1
- data/ref/c/globals_func.html +11 -11
- data/ref/c/globals_type.html +1 -1
- data/ref/c/globals_vars.html +5 -5
- data/ref/c/index.html +1 -1
- data/ref/c/relay_8c.html +214 -0
- data/ref/c/{relay_8hin.html → relay_8h.html} +23 -23
- data/ref/c/structrelay____RubyOptions____def.html +6 -6
- data/ref/c/structt__cb__data.html +1 -1
- data/ref/c/structt__vpi__delay.html +1 -1
- data/ref/c/structt__vpi__error__info.html +1 -1
- data/ref/c/structt__vpi__strengthval.html +1 -1
- data/ref/c/structt__vpi__systf__data.html +1 -1
- data/ref/c/structt__vpi__time.html +1 -1
- data/ref/c/structt__vpi__value.html +1 -1
- data/ref/c/structt__vpi__vecval.html +1 -1
- data/ref/c/structt__vpi__vlog__info.html +1 -1
- data/ref/c/swig_8c.html +80 -0
- data/ref/c/{swig_8hin.html → swig_8h.html} +13 -13
- data/ref/c/verilog_8h.html +3 -3
- data/ref/c/{vlog_8cin.html → vlog_8c.html} +30 -21
- data/ref/c/{vlog_8hin.html → vlog_8h.html} +12 -12
- data/ref/c/vpi__user_8h.html +1 -1
- data/ref/ruby/classes/ERB.html +5 -5
- data/ref/ruby/classes/ERB.src/{M000033.html → M000034.html} +0 -0
- data/ref/ruby/classes/FileUtils.html +10 -10
- data/ref/ruby/classes/FileUtils.src/M000089.html +5 -5
- data/ref/ruby/classes/FileUtils.src/M000090.html +18 -0
- data/ref/ruby/classes/Integer.html +68 -68
- data/ref/ruby/classes/Integer.src/M000012.html +12 -5
- data/ref/ruby/classes/Integer.src/M000013.html +5 -5
- data/ref/ruby/classes/Integer.src/M000014.html +5 -5
- data/ref/ruby/classes/Integer.src/M000015.html +5 -5
- data/ref/ruby/classes/Integer.src/M000016.html +5 -5
- data/ref/ruby/classes/Integer.src/M000017.html +18 -0
- data/ref/ruby/classes/Integer.src/M000020.html +9 -9
- data/ref/ruby/classes/Integer.src/M000021.html +9 -12
- data/ref/ruby/classes/Integer.src/M000022.html +12 -18
- data/ref/ruby/classes/Integer.src/M000023.html +18 -12
- data/ref/ruby/classes/Integer.src/M000024.html +12 -17
- data/ref/ruby/classes/Integer.src/M000025.html +30 -0
- data/ref/ruby/classes/OutputInfo.html +6 -6
- data/ref/ruby/classes/OutputInfo.src/{M000029.html → M000030.html} +37 -37
- data/ref/ruby/classes/RDoc.html +5 -5
- data/ref/ruby/classes/RDoc.src/{M000092.html → M000093.html} +0 -0
- data/ref/ruby/classes/RubyVpi.html +16 -10
- data/ref/ruby/classes/RubyVpi.src/M000091.html +37 -7
- data/ref/ruby/classes/RubyVpi.src/M000092.html +20 -0
- data/ref/ruby/classes/RubyVpi/Config.html +148 -0
- data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.html +45 -45
- data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000081.html +5 -5
- data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000082.html +5 -9
- data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000083.html +9 -31
- data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000084.html +31 -69
- data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000085.html +69 -114
- data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000086.html +114 -13
- data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000087.html +13 -5
- data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000088.html +18 -0
- data/ref/ruby/classes/String.html +10 -10
- data/ref/ruby/classes/String.src/M000032.html +28 -5
- data/ref/ruby/classes/String.src/M000033.html +18 -0
- data/ref/ruby/classes/Table.html +20 -20
- data/ref/ruby/classes/Table.src/M000026.html +25 -5
- data/ref/ruby/classes/Table.src/M000027.html +5 -5
- data/ref/ruby/classes/Table.src/M000028.html +5 -5
- data/ref/ruby/classes/Table.src/M000029.html +18 -0
- data/ref/ruby/classes/Template.html +5 -5
- data/ref/ruby/classes/Template.src/{M000030.html → M000031.html} +4 -4
- data/ref/ruby/classes/VerilogParser.html +5 -5
- data/ref/ruby/classes/VerilogParser.src/{M000004.html → M000005.html} +0 -0
- data/ref/ruby/classes/VerilogParser/Module.html +5 -5
- data/ref/ruby/classes/VerilogParser/Module.src/{M000005.html → M000006.html} +0 -0
- data/ref/ruby/classes/VerilogParser/Module/Parameter.html +5 -5
- data/ref/ruby/classes/VerilogParser/Module/Parameter.src/{M000010.html → M000011.html} +0 -0
- data/ref/ruby/classes/VerilogParser/Module/Port.html +20 -20
- data/ref/ruby/classes/VerilogParser/Module/Port.src/M000007.html +8 -5
- data/ref/ruby/classes/VerilogParser/Module/Port.src/M000008.html +5 -5
- data/ref/ruby/classes/VerilogParser/Module/Port.src/M000009.html +5 -5
- data/ref/ruby/classes/VerilogParser/Module/Port.src/M000010.html +18 -0
- data/ref/ruby/classes/XX/Document.html +45 -45
- data/ref/ruby/classes/XX/Document.src/M000072.html +9 -7
- data/ref/ruby/classes/XX/Document.src/M000073.html +7 -7
- data/ref/ruby/classes/XX/Document.src/M000074.html +7 -7
- data/ref/ruby/classes/XX/Document.src/M000075.html +7 -9
- data/ref/ruby/classes/XX/Document.src/M000076.html +9 -8
- data/ref/ruby/classes/XX/Document.src/M000077.html +8 -8
- data/ref/ruby/classes/XX/Document.src/M000078.html +8 -21
- data/ref/ruby/classes/XX/Document.src/M000079.html +21 -85
- data/ref/ruby/classes/XX/Document.src/M000080.html +98 -0
- data/ref/ruby/classes/XX/HTML4.html +5 -5
- data/ref/ruby/classes/XX/HTML4.src/{M000035.html → M000036.html} +0 -0
- data/ref/ruby/classes/XX/HTML4/Strict.html +5 -5
- data/ref/ruby/classes/XX/HTML4/Strict.src/{M000037.html → M000038.html} +0 -0
- data/ref/ruby/classes/XX/HTML4/Transitional.html +5 -5
- data/ref/ruby/classes/XX/HTML4/Transitional.src/{M000036.html → M000037.html} +0 -0
- data/ref/ruby/classes/XX/Markup.html +5 -5
- data/ref/ruby/classes/XX/Markup.src/{M000042.html → M000043.html} +0 -0
- data/ref/ruby/classes/XX/Markup/ClassMethods.html +40 -40
- data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000044.html +9 -7
- data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000045.html +7 -12
- data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000046.html +12 -7
- data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000047.html +7 -14
- data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000048.html +14 -7
- data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000049.html +7 -14
- data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000050.html +14 -9
- data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000051.html +22 -0
- data/ref/ruby/classes/XX/Markup/InstanceMethods.html +100 -100
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000052.html +43 -20
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000053.html +20 -18
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000054.html +18 -35
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000055.html +35 -7
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000056.html +7 -18
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000057.html +18 -19
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000058.html +19 -19
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000059.html +19 -15
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000060.html +15 -10
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000061.html +10 -13
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000062.html +13 -7
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000063.html +7 -7
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000064.html +7 -7
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000065.html +7 -7
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000066.html +7 -7
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000067.html +7 -8
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000068.html +8 -7
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000069.html +7 -7
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000070.html +7 -7
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000071.html +20 -0
- data/ref/ruby/classes/XX/XHTML.html +5 -5
- data/ref/ruby/classes/XX/XHTML.src/{M000038.html → M000039.html} +0 -0
- data/ref/ruby/classes/XX/XHTML/Strict.html +5 -5
- data/ref/ruby/classes/XX/XHTML/Strict.src/{M000040.html → M000041.html} +0 -0
- data/ref/ruby/classes/XX/XHTML/Transitional.html +5 -5
- data/ref/ruby/classes/XX/XHTML/Transitional.src/{M000039.html → M000040.html} +0 -0
- data/ref/ruby/classes/XX/XML.html +5 -5
- data/ref/ruby/classes/XX/XML.src/{M000034.html → M000035.html} +0 -0
- data/ref/ruby/classes/XX/XMLish.html +5 -5
- data/ref/ruby/classes/XX/XMLish.src/{M000041.html → M000042.html} +0 -0
- data/ref/ruby/created.rid +1 -1
- data/ref/ruby/files/bin/generate_test_rb.html +49 -9
- data/ref/ruby/files/bin/generate_test_rb.src/M000001.html +5 -16
- data/ref/ruby/files/bin/generate_test_rb.src/M000002.html +39 -0
- data/ref/ruby/files/bin/header_to_ruby_rb.html +1 -1
- data/ref/ruby/files/lib/ruby-vpi/erb_rb.html +1 -1
- data/ref/ruby/files/lib/ruby-vpi/integer_rb.html +1 -1
- data/ref/ruby/files/lib/ruby-vpi/rake_rb.html +1 -1
- data/ref/ruby/files/lib/ruby-vpi/rcov_rb.html +1 -1
- data/ref/ruby/files/lib/ruby-vpi/rdoc_rb.html +1 -1
- data/ref/ruby/files/lib/ruby-vpi/rspec_rb.html +1 -1
- data/ref/ruby/files/lib/ruby-vpi/runner_proxy_rb.html +1 -1
- data/ref/ruby/files/lib/ruby-vpi/runner_rb.html +22 -21
- data/ref/ruby/files/lib/ruby-vpi/runner_rb.src/M000003.html +11 -13
- data/ref/ruby/files/lib/ruby-vpi/runner_rb.src/M000004.html +26 -0
- data/ref/ruby/files/lib/ruby-vpi/verilog_parser_rb.html +1 -1
- data/ref/ruby/files/lib/ruby-vpi/vpi_rb.html +1 -1
- data/ref/ruby/files/lib/ruby-vpi/xx_rb.html +1 -1
- data/ref/ruby/files/lib/ruby-vpi_rb.html +1 -1
- data/ref/ruby/fr_class_index.html +1 -0
- data/ref/ruby/fr_method_index.html +93 -92
- data/samp/counter/{counter_rspecTest_bench.rb → counter_rspec_bench.rb} +2 -2
- data/samp/counter/{counter_rspecTest_bench.v → counter_rspec_bench.v} +3 -3
- data/samp/counter/{counter_unitTest_design.rb → counter_rspec_design.rb} +3 -3
- data/samp/counter/{counter_rspecTest_proto.rb → counter_rspec_proto.rb} +0 -0
- data/samp/counter/{counter_unitTest_runner.rake → counter_rspec_runner.rake} +5 -4
- data/samp/counter/{counter_rspecTest_spec.rb → counter_rspec_spec.rb} +0 -0
- data/samp/counter/{counter_unitTest_bench.rb → counter_xunit_bench.rb} +2 -2
- data/samp/counter/{counter_unitTest_bench.v → counter_xunit_bench.v} +3 -3
- data/samp/counter/{counter_rspecTest_design.rb → counter_xunit_design.rb} +3 -3
- data/samp/counter/{counter_unitTest_proto.rb → counter_xunit_proto.rb} +0 -0
- data/samp/counter/{counter_rspecTest_runner.rake → counter_xunit_runner.rake} +5 -4
- data/samp/counter/{counter_unitTest_spec.rb → counter_xunit_spec.rb} +0 -0
- data/samp/pipelined_alu/hw5_unit_test_runner.rake +3 -2
- metadata +177 -177
- data/ext/README +0 -124
- data/ext/relay.cin +0 -146
- data/ext/ruby-vpi.c +0 -36
- data/ext/vlog.cin +0 -92
- data/lib/ruby-vpi/synopsys_vcs.tab +0 -2
- data/ref/c/relay_8cin.html +0 -204
- data/ref/c/ruby-vpi_8c.html +0 -34
- data/ref/c/swig_8cin.html +0 -75
- data/ref/ruby/classes/FileUtils.src/M000088.html +0 -18
- data/ref/ruby/classes/Integer.src/M000011.html +0 -25
- data/ref/ruby/classes/Integer.src/M000019.html +0 -22
- data/ref/ruby/classes/RubyVpi.src/M000090.html +0 -50
- data/ref/ruby/classes/SWIG/TYPE_p_unsigned_int.src/M000080.html +0 -18
- data/ref/ruby/classes/String.src/M000031.html +0 -41
- data/ref/ruby/classes/Table.src/M000025.html +0 -38
- data/ref/ruby/classes/VerilogParser/Module/Port.src/M000006.html +0 -21
- data/ref/ruby/classes/XX/Document.src/M000071.html +0 -22
- data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000043.html +0 -22
- data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000051.html +0 -56
- data/ref/ruby/files/lib/ruby-vpi/runner_rb.src/M000002.html +0 -20
data/ref/ruby/classes/RDoc.html
CHANGED
@@ -80,7 +80,7 @@
|
|
80
80
|
<h3 class="section-bar">Methods</h3>
|
81
81
|
|
82
82
|
<div class="name-list">
|
83
|
-
<a href="#
|
83
|
+
<a href="#M000093">usage_from_file</a>
|
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-
|
106
|
-
<a name="
|
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/
|
110
|
-
onclick="popupCode('RDoc.src/
|
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>
|
File without changes
|
@@ -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="#
|
94
|
-
<a href="#
|
93
|
+
<a href="#M000091">init_bench</a>
|
94
|
+
<a href="#M000092">with_coverage_analysis</a>
|
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-
|
135
|
-
<a name="
|
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/
|
139
|
-
onclick="popupCode('RubyVpi.src/
|
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-
|
152
|
-
<a name="
|
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/
|
156
|
-
onclick="popupCode('RubyVpi.src/
|
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>
|
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
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
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">></span> <span class="ruby-node">"#{aTestPrefix}_coverage"</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">"#{aTestPrefix}_design.rb"</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">"#{aTestPrefix}_proto.rb"</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">"#{aTestPrefix}: verifying prototype instead of design"</span>
|
45
|
+
55: <span class="ruby-keyword kw">end</span>
|
46
|
+
56:
|
47
|
+
57: <span class="ruby-identifier">require</span> <span class="ruby-node">"#{aTestPrefix}_spec.rb"</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">&</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"><<</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">"http://#{PROJECT_ID}.rubyforge.org"</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">"Ruby interface to Verilog VPI."</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">"#{PROJECT_NAME} is a #{PROJECT_SUMMARY}. It lets you create complex Verilog test benches easily and wholly in Ruby."</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#
|
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#
|
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#
|
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’s value as an integer:
|
157
157
|
</p>
|
158
158
|
<ul>
|
159
|
-
<li>handle.<a href="TYPE_p_unsigned_int.html#
|
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’s value as an integer:
|
|
167
167
|
To write a handle’s value as an integer:
|
168
168
|
</p>
|
169
169
|
<ul>
|
170
|
-
<li>handle.<a href="TYPE_p_unsigned_int.html#
|
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="#
|
189
|
-
<a href="#
|
190
|
-
<a href="#
|
191
|
-
<a href="#
|
192
|
-
<a href="#
|
193
|
-
<a href="#
|
194
|
-
<a href="#
|
195
|
-
<a href="#
|
188
|
+
<a href="#M000087">[]</a>
|
189
|
+
<a href="#M000088">each</a>
|
190
|
+
<a href="#M000084">get_value</a>
|
191
|
+
<a href="#M000083">get_value_wrapper</a>
|
192
|
+
<a href="#M000086">method_missing</a>
|
193
|
+
<a href="#M000085">put_value</a>
|
194
|
+
<a href="#M000081">x?</a>
|
195
|
+
<a href="#M000082">z?</a>
|
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-
|
253
|
-
<a name="
|
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/
|
257
|
-
onclick="popupCode('TYPE_p_unsigned_int.src/
|
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-
|
270
|
-
<a name="
|
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/
|
274
|
-
onclick="popupCode('TYPE_p_unsigned_int.src/
|
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-
|
288
|
-
<a name="
|
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/
|
292
|
-
onclick="popupCode('TYPE_p_unsigned_int.src/
|
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-
|
307
|
-
<a name="
|
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/
|
311
|
-
onclick="popupCode('TYPE_p_unsigned_int.src/
|
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-
|
325
|
-
<a name="
|
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/
|
329
|
-
onclick="popupCode('TYPE_p_unsigned_int.src/
|
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, &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-
|
342
|
-
<a name="
|
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/
|
346
|
-
onclick="popupCode('TYPE_p_unsigned_int.src/
|
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-
|
361
|
-
<a name="
|
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/
|
365
|
-
onclick="popupCode('TYPE_p_unsigned_int.src/
|
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 "don’t care"
|
|
375
375
|
</div>
|
376
376
|
</div>
|
377
377
|
|
378
|
-
<div id="method-
|
379
|
-
<a name="
|
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/
|
383
|
-
onclick="popupCode('TYPE_p_unsigned_int.src/
|
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>
|