origen_testers 0.8.7 → 0.8.8

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.
@@ -1,97 +0,0 @@
1
- module OrigenTesters
2
- module Test
3
- class V93KInterface
4
- include OrigenTesters::V93K::Generator
5
-
6
- # Options passed to Flow.create and Library.create will be passed in here, use as
7
- # desired to configure your interface
8
- def initialize(options = {})
9
- end
10
-
11
- def log(msg)
12
- flow.log(msg)
13
- end
14
-
15
- def func(name, options = {})
16
- options = {
17
- duration: :static
18
- }.merge(options)
19
-
20
- block_loop(name, options) do |block, i|
21
- tm = test_methods.ac_tml.ac_test.functional_test
22
- ts = test_suites.run(name, options)
23
- ts.test_method = tm
24
- ts.levels = options.delete(:pin_levels) if options[:pin_levels]
25
- if block
26
- ts.pattern = "#{name}_b#{i}"
27
- else
28
- ts.pattern = name.to_s
29
- # if options[:cz_setup]
30
- # flow.cz(ins, options[:cz_setup], options)
31
- # else
32
- # end
33
- end
34
- flow.test ts, options
35
- end
36
- end
37
-
38
- def meas(name, options = {})
39
- options = {
40
- duration: :static
41
- }.merge(options)
42
-
43
- name = "meas_#{name}" unless name.to_s =~ /meas/
44
-
45
- tm = test_methods.dc_tml.dc_test.general_pmu
46
- ts = test_suites.run(name, options)
47
- ts.test_method = tm
48
- ts.levels = options.delete(:pin_levels) if options[:pin_levels]
49
- ts.lo_limit = options[:lo_limit] if options[:lo_limit]
50
- ts.hi_limit = options[:hi_limit] if options[:hi_limit]
51
- ts.pattern = name.to_s
52
- # if options[:cz_setup]
53
- # flow.cz(ins, options[:cz_setup], options)
54
- # else
55
- # use_limit_params = [:lo_limit, :hi_limit, :scale, :units] # define options to strip for flow.test
56
- # options_use_limit = options.dup # duplicate, as modifying options directly, even an assigned copy modifies original
57
- # flow.test(ins, options.reject! { |k, _| use_limit_params.include? k }) # set up test skipping use-limit options
58
- # flow.use_limit(name, options_use_limit) if options_use_limit[:hi_limit] || options_use_limit[:lo_limit] # Only use use-limit if limits present in flow
59
- # end
60
- flow.test ts, options
61
- end
62
-
63
- def group(name, options = {})
64
- flow.group name, options do |group|
65
- yield group
66
- end
67
- end
68
-
69
- def block_loop(name, options)
70
- if options[:by_block]
71
- flow.group name, options do
72
- $dut.blocks.each_with_index do |block, i|
73
- yield block, i
74
- end
75
- end
76
- else
77
- yield
78
- end
79
- end
80
-
81
- def por(options = {})
82
- options = {
83
- instance_not_available: true
84
- }.merge(options)
85
- func('por_ins', options)
86
- end
87
-
88
- def para(name, options = {})
89
- # print "UltraFLEX Parametric Test not yet supported for UltraFLEX!\n"
90
- end
91
-
92
- def mto_memory(name, options = {})
93
- # Seriously?!
94
- end
95
- end
96
- end
97
- end