origen_testers 0.15.0 → 0.16.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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 78c25a6e0ff1262cd8e89a7b50e82e727a75a37e
|
4
|
+
data.tar.gz: 3a1741ecf3f255e682ba78f6e35fde25cb119885
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bb6faaf0b27a99cf8bf5f3abb32a43b581ce48def266ff2e2931d0165bbe3bf8dd6ecb8f4b41b0a3e2b4fa347c27a66c40a5205be624e1f0ac3776ad2637d3ea
|
7
|
+
data.tar.gz: 58c299abbf1d1fc9cdcce9ac4ef571768d8948559bc51234703d7104d7d2bfd0b2544f065a233c413b2290b923ba04d9fc4bf17e9656ee69d38812e791962cfb
|
data/config/version.rb
CHANGED
@@ -206,7 +206,12 @@ module OrigenTesters
|
|
206
206
|
if current_flag
|
207
207
|
fail 'Not implemented yet!'
|
208
208
|
else
|
209
|
+
set_previously = !!set_flags[or_flag]
|
210
|
+
set_flags[or_flag] = context
|
209
211
|
self.current_flag = [f, state]
|
212
|
+
unless set_previously
|
213
|
+
completed_lines << platform::FlowLine.new(:defaults, flag_fail: or_flag)
|
214
|
+
end
|
210
215
|
completed_lines << new_line(:flag_true, parameter: or_flag)
|
211
216
|
self.current_flag = nil
|
212
217
|
end
|
@@ -224,9 +229,13 @@ module OrigenTesters
|
|
224
229
|
# If the AND flag has already been created and set in this context (for a previous test),
|
225
230
|
# no need to re-create it
|
226
231
|
if !set_flags[and_flag] || (set_flags[and_flag].hash != context.hash)
|
232
|
+
set_previously = !!set_flags[and_flag]
|
227
233
|
set_flags[and_flag] = context
|
228
234
|
existing_flag = current_flag
|
229
235
|
self.current_flag = nil
|
236
|
+
unless set_previously
|
237
|
+
completed_lines << platform::FlowLine.new(:defaults, flag_fail: and_flag)
|
238
|
+
end
|
230
239
|
completed_lines << new_line(:flag_true, parameter: and_flag)
|
231
240
|
self.current_flag = [flag, !state]
|
232
241
|
completed_lines << new_line(:flag_false, parameter: and_flag)
|
@@ -18,6 +18,8 @@ module OrigenTesters
|
|
18
18
|
# Internal method called by Origen
|
19
19
|
def pattern_header(options = {})
|
20
20
|
microcode 'file_format_version 1.0;'
|
21
|
+
start_label = "#{options[:pattern]}_st"
|
22
|
+
microcode "export #{start_label};"
|
21
23
|
@global_label_export.each { |label| microcode "export #{label};" }
|
22
24
|
@called_subroutines.each { |sub| microcode "import #{sub};" }
|
23
25
|
called_timesets.each do |timeset|
|
@@ -26,6 +28,14 @@ module OrigenTesters
|
|
26
28
|
pin_list = ordered_pins.map(&:name).join(',')
|
27
29
|
microcode "pattern #{options[:pattern]} (#{pin_list})"
|
28
30
|
microcode '{'
|
31
|
+
microcode "#{start_label}:"
|
32
|
+
# Remove any leading comments before first vector data
|
33
|
+
unless options[:subroutine_pat]
|
34
|
+
stage.with_bank(:body) do
|
35
|
+
# find the first vector
|
36
|
+
stage.bank.delete_at(0) until stage.bank[0].is_a?(OrigenTesters::Vector)
|
37
|
+
end
|
38
|
+
end
|
29
39
|
end
|
30
40
|
|
31
41
|
# Internal method called by Origen
|
@@ -72,6 +82,15 @@ module OrigenTesters
|
|
72
82
|
update_vector microcode: local_microcode, offset: options[:offset]
|
73
83
|
end
|
74
84
|
|
85
|
+
def start_subroutine(name, options = {})
|
86
|
+
options = { global: false }.merge(options)
|
87
|
+
label name, options[:global]
|
88
|
+
end
|
89
|
+
|
90
|
+
def end_subroutine
|
91
|
+
update_vector microcode: 'return'
|
92
|
+
end
|
93
|
+
|
75
94
|
# store/capture the state of the provided pins
|
76
95
|
def store(*pins)
|
77
96
|
options = pins.last.is_a?(Hash) ? pins.pop : {}
|
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.
|
4
|
+
version: 0.16.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stephen McGinty
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-01-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: origen
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '1'
|
47
|
+
version: '1.1'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '1'
|
54
|
+
version: '1.1'
|
55
55
|
description:
|
56
56
|
email:
|
57
57
|
- stephen.f.mcginty@gmail.com
|
@@ -348,15 +348,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
348
348
|
requirements:
|
349
349
|
- - ">="
|
350
350
|
- !ruby/object:Gem::Version
|
351
|
-
version:
|
351
|
+
version: '2'
|
352
352
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
353
353
|
requirements:
|
354
354
|
- - ">="
|
355
355
|
- !ruby/object:Gem::Version
|
356
|
-
version:
|
356
|
+
version: '0'
|
357
357
|
requirements: []
|
358
358
|
rubyforge_project:
|
359
|
-
rubygems_version: 2.6.
|
359
|
+
rubygems_version: 2.6.8
|
360
360
|
signing_key:
|
361
361
|
specification_version: 4
|
362
362
|
summary: This plugin provides Origen tester models to drive ATE type testers like
|