origen_testers 0.51.3 → 0.51.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/config/version.rb +1 -1
- data/lib/origen_testers/decompiler/nodes.rb +1 -1
- data/lib/origen_testers/igxl_based_tester/decompiler/atp.rb +2 -0
- data/lib/origen_testers/igxl_based_tester/decompiler.rb +1 -1
- data/lib/origen_testers/stil_based_tester/base.rb +35 -10
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '09276262e65db795a4ffe2fe26e6836607fd2c75bf279d652baacc35c3fdcdf4'
|
4
|
+
data.tar.gz: 3216437c32107ef156b639005c153529ee19d53871a2330f62c0a2816f17caa2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5bdb430e032bdf00efb5f4c67b9b18c5c4f3fae20d5413c48f31052d99560f42a9d18bcabe291bf3223f067abb34eeb857813f73c05fa40a2180e3ef2c728ed6
|
7
|
+
data.tar.gz: 17d7dbe630c36fba16baa9154d976a628899587632ad8d3b4ecd7edcb4283e127c09e82cd9cb5891ce7b4a2e939a82a1c18bafc82dd98e6a9ebcfca0f3b3e69d
|
data/config/version.rb
CHANGED
@@ -33,6 +33,8 @@ module OrigenTesters
|
|
33
33
|
imports[val.gsub(';', '')] = type
|
34
34
|
elsif l.strip.empty?
|
35
35
|
# Just whitespace. Ignore this, but don't throw an error
|
36
|
+
elsif !(l =~ Regexp.new(/vector/)).nil?
|
37
|
+
# line break between vector keyword and pinlist, ignore
|
36
38
|
else
|
37
39
|
Origen.app!.fail!("Unable to parse pattern frontmatter, at line: #{i}")
|
38
40
|
end
|
@@ -30,6 +30,32 @@ module OrigenTesters
|
|
30
30
|
true
|
31
31
|
end
|
32
32
|
|
33
|
+
# returns the orderd pins with groups decomposed into individual pins
|
34
|
+
def flattened_ordered_pins
|
35
|
+
if @flattened_ordered_pins.nil?
|
36
|
+
@flattened_ordered_pins = []
|
37
|
+
ordered_pins.each do |p|
|
38
|
+
if p.is_a?(Origen::Pins::PinCollection)
|
39
|
+
p.each { |ip| @flattened_ordered_pins << ip }
|
40
|
+
else
|
41
|
+
@flattened_ordered_pins << p
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
@flattened_ordered_pins
|
46
|
+
end
|
47
|
+
|
48
|
+
def output_group_definition(grp, grp_name)
|
49
|
+
line = "\"#{grp_name}\" = '"
|
50
|
+
grp.each_with_index do |pin, i|
|
51
|
+
unless i == 0
|
52
|
+
line << '+'
|
53
|
+
end
|
54
|
+
line << pin.name.to_s
|
55
|
+
end
|
56
|
+
microcode " #{line}';"
|
57
|
+
end
|
58
|
+
|
33
59
|
# An internal method called by Origen to create the pattern header
|
34
60
|
def pattern_header(options = {})
|
35
61
|
options = {
|
@@ -42,7 +68,7 @@ module OrigenTesters
|
|
42
68
|
|
43
69
|
microcode ''
|
44
70
|
microcode 'Signals {'
|
45
|
-
|
71
|
+
flattened_ordered_pins.each do |pin|
|
46
72
|
line = ''
|
47
73
|
line << "#{pin.name} "
|
48
74
|
if pin.direction == :input
|
@@ -58,14 +84,13 @@ module OrigenTesters
|
|
58
84
|
|
59
85
|
microcode ''
|
60
86
|
microcode 'SignalGroups {'
|
61
|
-
|
62
|
-
ordered_pins.
|
63
|
-
|
64
|
-
line << '+'
|
65
|
-
end
|
66
|
-
line << pin.name.to_s
|
87
|
+
# output pin group definitions used in this pattern
|
88
|
+
ordered_pins.each do |p|
|
89
|
+
output_group_definition(p, p.name.to_s) if p.is_a?(Origen::Pins::PinCollection)
|
67
90
|
end
|
68
|
-
|
91
|
+
|
92
|
+
# output the all pin group
|
93
|
+
output_group_definition(flattened_ordered_pins, "#{ordered_pins_name || 'ALL'}")
|
69
94
|
microcode '}'
|
70
95
|
|
71
96
|
microcode ''
|
@@ -120,7 +145,7 @@ module OrigenTesters
|
|
120
145
|
end
|
121
146
|
unless wave_number
|
122
147
|
lines = []
|
123
|
-
|
148
|
+
flattened_ordered_pins.each do |pin|
|
124
149
|
if pin.direction == :input || pin.direction == :io
|
125
150
|
line = "#{pin.name} { 01 { "
|
126
151
|
wave = pin.drive_wave if tester.timeset.dut_timeset
|
@@ -128,7 +153,7 @@ module OrigenTesters
|
|
128
153
|
line << "'#{t}ns' "
|
129
154
|
if v == 0
|
130
155
|
line << 'D'
|
131
|
-
elsif v ==
|
156
|
+
elsif v == 1
|
132
157
|
line << 'U'
|
133
158
|
else
|
134
159
|
line << 'D/U'
|
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.51.
|
4
|
+
version: 0.51.4
|
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: 2024-02-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: origen
|
@@ -601,7 +601,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
601
601
|
- !ruby/object:Gem::Version
|
602
602
|
version: '0'
|
603
603
|
requirements: []
|
604
|
-
rubygems_version: 3.
|
604
|
+
rubygems_version: 3.1.6
|
605
605
|
signing_key:
|
606
606
|
specification_version: 4
|
607
607
|
summary: This plugin provides Origen tester models to drive ATE type testers like
|