origen_testers 0.5.1 → 0.5.2
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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8c5a15249f0bcd51157464a54eaf398f2fa230a4
|
4
|
+
data.tar.gz: 87645a3a61fa27a203a86a673ef6c4170da201d6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 89038414f5050a00feee7f45151321a1d9985a65c9abfb42bd630c8de96c51e0a6a40c3c6c43bcf982d3f1f7daa934e0a68674520db5b55def1b54b7c5ebfde1
|
7
|
+
data.tar.gz: d4f87a4092c221d1a912f8e1daeb0588e8aded4d625c1b6c6fc235195d32dd1584c7f7e59afc290959a5017944167195248c24574fe02a81abdcf4d12c29207c
|
data/config/version.rb
CHANGED
@@ -341,6 +341,7 @@ module OrigenTesters
|
|
341
341
|
manual_stop: false,
|
342
342
|
clr_fail_post_match: false
|
343
343
|
}.merge(options)
|
344
|
+
options[:on_block_match_goto] ||= options.delete(:on_pin_match_goto)
|
344
345
|
|
345
346
|
match_block(timeout, options) do |match_conditions, fail_conditions|
|
346
347
|
# Define match conditions
|
@@ -72,7 +72,8 @@ module OrigenTesters
|
|
72
72
|
# * :check_for_fails (false) - Flushes the pipeline and handshakes with the tester (passing readcode 100) prior to the match (to allow binout of fails encountered before the match)
|
73
73
|
# * :force_fail_on_timeout (true) - Force a vector mis-compare if the match loop times out
|
74
74
|
# * :on_timeout_goto ("") - Optionally supply a label to branch to on timeout, by default will continue from the end of the match loop
|
75
|
-
# * :on_block_match_goto ("") - Optionally supply a label to branch to when block condition is met, by default will continue from the end of the match loop
|
75
|
+
# * :on_block_match_goto ("") - Optionally supply a label to branch to when block condition is met, by default will continue from the end of the match loop.
|
76
|
+
# A hash will also be accepted for this argument to supply a specific label (or no label) for each block e.g. {0 => "on_block_0_fail"}
|
76
77
|
# * :multiple_entries (false) - Supply an integer to generate multiple entries into the match (each with a unique readcode), this can be useful when debugging patterns with multiple matches
|
77
78
|
# * :force_fail_on_timeout (true) - force pattern to fail if timeout occurs
|
78
79
|
# * :global_loops (false) - whether match loop loops should use global labels
|
@@ -200,9 +201,26 @@ module OrigenTesters
|
|
200
201
|
microcode "block_#{i}_matched_#{@unique_counter}:"
|
201
202
|
cycle(microcode: 'pop_loop icc')
|
202
203
|
cycle(microcode: 'clr_fail')
|
203
|
-
|
204
|
-
|
205
|
-
|
204
|
+
if options[:on_block_match_goto]
|
205
|
+
if options[:on_block_match_goto].is_a?(Hash)
|
206
|
+
if options[:on_block_match_goto][i]
|
207
|
+
custom_jump = options[:on_block_match_goto][i]
|
208
|
+
else
|
209
|
+
custom_jump = nil
|
210
|
+
end
|
211
|
+
else
|
212
|
+
custom_jump = options[:on_block_match_goto]
|
213
|
+
end
|
214
|
+
end
|
215
|
+
if custom_jump
|
216
|
+
cycle(microcode: "jump #{custom_jump}")
|
217
|
+
else
|
218
|
+
# Don't do a jump on the last match block as it will naturally fall through
|
219
|
+
# TODO: Update origen core to expose the size
|
220
|
+
unless match_conditions.instance_variable_get(:@block_args).size == i + 1
|
221
|
+
cycle(microcode: "jump match_loop_end_#{@unique_counter} icc")
|
222
|
+
end
|
223
|
+
end
|
206
224
|
end
|
207
225
|
microcode "match_loop_end_#{@unique_counter}:"
|
208
226
|
if options[:clr_fail_post_match]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: origen_testers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stephen McGinty
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-09-
|
11
|
+
date: 2015-09-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: origen
|