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