origen_std_lib 0.9.0 → 0.13.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/config/application.rb +7 -19
- data/config/commands.rb +9 -0
- data/config/version.rb +1 -2
- data/lib/origen_std_lib/v93k.rb +17 -1
- data/{stdlib/v93k → src/advantest/smt7}/origen/.cproject +0 -0
- data/{stdlib/v93k → src/advantest/smt7}/origen/.project +0 -0
- data/src/advantest/smt7/origen/origen.cpp +18 -0
- data/{stdlib/v93k → src/advantest/smt7}/origen/origen.hpp +3 -3
- data/{stdlib/v93k → src/advantest/smt7}/origen/origen/helpers.hpp +25 -8
- data/src/advantest/smt7/origen/origen/helpers/console.cpp +94 -0
- data/src/advantest/smt7/origen/origen/helpers/misc.cpp +456 -0
- data/src/advantest/smt7/origen/origen/helpers/time.cpp +64 -0
- data/src/advantest/smt7/origen/origen/site.cpp +237 -0
- data/src/advantest/smt7/origen/origen/site.hpp +49 -0
- data/{stdlib/v93k → src/advantest/smt7}/origen/origen/test_method.hpp +1 -3
- data/src/advantest/smt7/origen/origen/test_method/base.cpp +231 -0
- data/src/advantest/smt7/origen/origen/test_method/base.hpp +155 -0
- data/src/advantest/smt7/origen/origen/test_method/dc_measurement.cpp +266 -0
- data/src/advantest/smt7/origen/origen/test_method/dc_measurement.hpp +58 -0
- data/src/advantest/smt7/origen/origen/test_method/empty.cpp +13 -0
- data/src/advantest/smt7/origen/origen/test_method/empty.hpp +24 -0
- data/src/advantest/smt7/origen/origen/test_method/frequency_measurement.cpp +133 -0
- data/src/advantest/smt7/origen/origen/test_method/frequency_measurement.hpp +46 -0
- data/src/advantest/smt7/origen/origen/test_method/functional_test.cpp +168 -0
- data/src/advantest/smt7/origen/origen/test_method/functional_test.hpp +53 -0
- data/{stdlib/v93k → src/advantest/smt7}/origen/origen/utils.hpp +1 -3
- data/src/advantest/smt7/origen/origen/utils/version.cpp +72 -0
- data/{stdlib/v93k → src/advantest/smt7}/origen/origen/utils/version.hpp +20 -21
- data/src/advantest/smt7/origen/test_methods/ApplyBin.cpp +37 -0
- data/src/advantest/smt7/origen/test_methods/DCMeasurement.cpp +90 -0
- data/src/advantest/smt7/origen/test_methods/FrequencyMeasurement.cpp +50 -0
- data/src/advantest/smt7/origen/test_methods/FunctionalTest.cpp +24 -0
- data/src/advantest/smt7/origen/test_methods/RecordBin.cpp +39 -0
- data/src/advantest/smt8/origen/common/Origen.java +334 -0
- data/src/advantest/smt8/origen/common/OrigenData.java +391 -0
- data/src/advantest/smt8/origen/common/OrigenHelpers.java +170 -0
- data/src/advantest/smt8/origen/test_methods/Base.java +265 -0
- data/src/advantest/smt8/origen/test_methods/DC_Measurement.java +302 -0
- data/src/advantest/smt8/origen/test_methods/Empty.java +12 -0
- data/src/advantest/smt8/origen/test_methods/Functional_test.java +474 -0
- data/templates/web/faq.md.erb +1 -52
- data/templates/web/guides/intro.md.erb +8 -0
- data/templates/web/guides/{v93k/intro.md.erb → v93ksmt7/capture.md.erb} +0 -2
- data/templates/web/guides/v93ksmt7/complete.md.erb +68 -0
- data/templates/web/guides/v93ksmt7/customizable.md.erb +139 -0
- data/templates/web/guides/v93ksmt7/helpers.md.erb +3 -0
- data/templates/web/guides/{v93k → v93ksmt7}/install.md.erb +1 -1
- data/templates/web/guides/v93ksmt7/integration.md.erb +3 -0
- data/templates/web/guides/v93ksmt7/intro.md.erb +8 -0
- data/templates/web/guides/v93ksmt7/patching.md.erb +3 -0
- data/templates/web/guides/v93ksmt8/intro.md.erb +9 -0
- data/templates/web/index.md.erb +23 -6
- data/templates/web/layouts/_guides.html.erb +15 -3
- data/templates/web/partials/_common_args.md.erb +13 -0
- data/templates/web/partials/_navbar.html.erb +2 -2
- metadata +52 -33
- data/stdlib/v93k/origen/origen.cpp +0 -22
- data/stdlib/v93k/origen/origen/helpers/console.cpp +0 -105
- data/stdlib/v93k/origen/origen/helpers/misc.cpp +0 -311
- data/stdlib/v93k/origen/origen/site.cpp +0 -220
- data/stdlib/v93k/origen/origen/site.hpp +0 -51
- data/stdlib/v93k/origen/origen/test_method/base.hpp +0 -156
- data/stdlib/v93k/origen/origen/test_method/dc_measurement.cpp +0 -182
- data/stdlib/v93k/origen/origen/test_method/dc_measurement.hpp +0 -59
- data/stdlib/v93k/origen/origen/test_method/frequency_measurement.cpp +0 -107
- data/stdlib/v93k/origen/origen/test_method/frequency_measurement.hpp +0 -48
- data/stdlib/v93k/origen/origen/test_method/functional_test.cpp +0 -118
- data/stdlib/v93k/origen/origen/test_method/functional_test.hpp +0 -51
- data/stdlib/v93k/origen/origen/utils/version.cpp +0 -79
- data/stdlib/v93k/origen/test_methods/ApplyBin.cpp +0 -41
- data/stdlib/v93k/origen/test_methods/DCMeasurement.cpp +0 -129
- data/stdlib/v93k/origen/test_methods/FrequencyMeasurement.cpp +0 -93
- data/stdlib/v93k/origen/test_methods/FunctionalTest.cpp +0 -94
- data/stdlib/v93k/origen/test_methods/RecordBin.cpp +0 -48
data/templates/web/faq.md.erb
CHANGED
@@ -54,7 +54,7 @@ Not officially. It is open source and comes with no guarantees.
|
|
54
54
|
|
55
55
|
#### So who does support it then?
|
56
56
|
|
57
|
-
Right now the Origen core team (
|
57
|
+
Right now the Origen core team (comprising engineers from NXP and AMD)
|
58
58
|
are the primary
|
59
59
|
maintainers and we will consider feature requests and address bug reports that are submitted by users
|
60
60
|
of the library.
|
@@ -63,55 +63,4 @@ However anyone is more then welcome to contribute bug fixes, feature additions,
|
|
63
63
|
documentation, etc. and ultimately we hope to see a self-sustaining community grow around
|
64
64
|
this project.
|
65
65
|
|
66
|
-
#### What platforms do you intend to support?
|
67
|
-
|
68
|
-
Initially we are developing this as an offshoot of some new test programs we are making for
|
69
|
-
the Advantest V93K platform.
|
70
|
-
|
71
|
-
We do expect to start to adding similar features for Teradyne platforms (likely J570 and UltraFLEX)
|
72
|
-
next year.
|
73
|
-
|
74
|
-
## V93K Specific
|
75
|
-
|
76
|
-
#### Why do we need this?
|
77
|
-
|
78
|
-
The standard test method library that comes with SmarTest for AC and DC tests, is no longer
|
79
|
-
recommended by Advantest.
|
80
|
-
|
81
|
-
However, while its replacement (RDI) is a high-level API in terms of the tester hardware, it is
|
82
|
-
still a low level
|
83
|
-
API in terms of a complete test. Anyone who wants to implement even a basic test, has
|
84
|
-
to write a custom test method from scratch instead of just picking up an existing test
|
85
|
-
method off the shelf.
|
86
|
-
|
87
|
-
This project aims to fill that void and provide a modern library of off-the-shelf test
|
88
|
-
methods that adhere to the latest Advantest guidelines.
|
89
|
-
|
90
|
-
#### I will probably still need some custom tests, can this help with those?
|
91
|
-
|
92
|
-
Yes. The off-the-shelf test methods provided by this library are very thin wrappers around
|
93
|
-
a high level Origen API, which implements high level functions such as "run a functional test",
|
94
|
-
"run a pattern and take a DC measurement", etc.
|
95
|
-
Each of these functions provides a standard set of callback points so that your test program can easily
|
96
|
-
hook into their execution in order to add your own customizations.
|
97
|
-
|
98
|
-
Additionally, as well as complete test methods, this project also aims to provide a rich
|
99
|
-
library of helper functions
|
100
|
-
that can be used when writing your own tests.
|
101
|
-
|
102
|
-
#### Does it perform well?
|
103
|
-
|
104
|
-
Yes. It uses the latest RDI APIs recommended by Advantest under the hood and it will in future
|
105
|
-
fully support background data-processing using the SmartCalc framework.
|
106
|
-
|
107
|
-
#### Why is the library not installed at system level?
|
108
|
-
|
109
|
-
We want to encourage the users of the library to look inside it, so that they can begin to understand
|
110
|
-
it, be empowered to do front line debug, and be able to experiment with adding new features.
|
111
|
-
Distributing it as a binary for installation at system level would add a significant barrier
|
112
|
-
to the open and inclusive way of working that we want to encourage.
|
113
|
-
|
114
|
-
Installing it within the test program itself also makes the test programs self contained and
|
115
|
-
therefore more portable between test systems.
|
116
|
-
|
117
66
|
% end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
% render "templates/web/layouts/guides.html" do
|
2
|
+
|
3
|
+
These guides are organized by ATE platform, select the one you are interested in:
|
4
|
+
|
5
|
+
* [Advantest V93K SMT7](<%= path 'guides/v93ksmt7/intro' %>)
|
6
|
+
* [Advantest V93K SMT8](<%= path 'guides/v93ksmt8/intro' %>)
|
7
|
+
|
8
|
+
% end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
% render "templates/web/layouts/guides.html" do
|
2
|
+
|
3
|
+
The following complete test methods are provided to be directly called from a test suite:
|
4
|
+
|
5
|
+
* [FunctionalTest](#Functional_Test)
|
6
|
+
* [DCMeasurement](#DCMeasurement)
|
7
|
+
* [FrequencyMeasurement](#FrequencyMeasurement)
|
8
|
+
|
9
|
+
### FunctionalTest
|
10
|
+
|
11
|
+
This test will simply execute the pattern (label) defined by the test suite and will set pass/fail
|
12
|
+
depending on whether any mis-compares occur during the pattern execution.
|
13
|
+
|
14
|
+
#### Arguments
|
15
|
+
|
16
|
+
<%= render "partials/common_args.md.erb", preserve_target: true %>
|
17
|
+
|
18
|
+
### DCMeasurement
|
19
|
+
|
20
|
+
This test will execute the pattern (label) defined by the test suite and then perform a voltage or
|
21
|
+
current measurement on the given pin.
|
22
|
+
|
23
|
+
Options exist to configure the measurement and to select whether or not to run a shutdown pattern
|
24
|
+
after the measurement has been taken.
|
25
|
+
|
26
|
+
|
27
|
+
#### Arguments
|
28
|
+
|
29
|
+
* **pin (string)** - (**Required**) The name of the pin to be measured.
|
30
|
+
* **measure (string)** - (Optional, Default="VOLT") Define whether to measure current or voltage (the default).
|
31
|
+
Set to "CURR" to measure current.
|
32
|
+
* **settlingTime (double)** - (Optional, Default=0) Specify the time to wait after running the pattern before
|
33
|
+
taking the measurement, expressed in ms.
|
34
|
+
* **forceValue (double)** - (Optional, Default=0) The value to be forced on the pin during the measurement.
|
35
|
+
* **iRange (double)** - (Optional, Default=0) The current range to apply to the measurement in amps, it will
|
36
|
+
be calculated if not supplied (set to 0).
|
37
|
+
* **badc (integer)** - (Optional, Default=0) When set to 1 the measurement will be made using the board ADC
|
38
|
+
rather than the PPMU (the default)
|
39
|
+
* **applyShutdown (integer)** - (Optional, Default=1) Set to 1 to execute the pattern (label) defined
|
40
|
+
by the `shutdownPattern` argument after the measurement.
|
41
|
+
* **shutdownPattern (string)** - (Optional, Default="<PATTERN>_part1") The name of the pattern (label) to be executed after taking
|
42
|
+
the measurement, this argument is required if `applyShutdown` is set to 1. By default it will look for a pattern
|
43
|
+
named after the main pattern (label) with "_part1" appended.
|
44
|
+
* **checkShutdown (integer)** - (Optional, Default=1) When set to 1 the executing of the shutdown pattern
|
45
|
+
will be cared and the overall test will fail if any miscompares occur during the shutdown patten execution.
|
46
|
+
<%= render "partials/common_args.md.erb", preserve_target: true %>
|
47
|
+
|
48
|
+
### FrequencyMeasurement
|
49
|
+
|
50
|
+
Measure the frequency of a clock being output on the given pin.
|
51
|
+
|
52
|
+
The pattern run by this test must setup the device to output the clock on the given pin
|
53
|
+
and then run additional cycles where the data on the pin under test is digitally captured.
|
54
|
+
|
55
|
+
The period of the capture cycles must be less than that of the clock being measured.
|
56
|
+
The effect of different settings of the capture period and the number of capture cycles should be
|
57
|
+
characterized to determine the optimal settings to meet the application's particular accuracy and
|
58
|
+
test time goals.
|
59
|
+
|
60
|
+
* **pin (string)** - (**Required**) The name of the pin to be measured.
|
61
|
+
* **periodInNs (integer)** - (**Required**) The period of the pattern's capture vectors.
|
62
|
+
* **samples (integer)** - (Optional, Default=2000) The number of digital capture cycles made by the
|
63
|
+
pattern.
|
64
|
+
* **periodBased (integer)** - (Optional, Default=0) Set to 1 if the test limits are expressed as a
|
65
|
+
period instead of a frequency (the default).
|
66
|
+
<%= render "partials/common_args.md.erb", preserve_target: true %>
|
67
|
+
|
68
|
+
% end
|
@@ -0,0 +1,139 @@
|
|
1
|
+
% render "templates/web/layouts/guides.html" do
|
2
|
+
|
3
|
+
The [Complete Tests](<%= path "guides/v93ksm7/complete" %>) provide a way to rapidly build a test program using
|
4
|
+
off-the-shelf building blocks, however in many cases it will be desired to run a slightly customized version of these
|
5
|
+
tests that is tweaked in some way to suit a particular application domain or for a few specific tests.
|
6
|
+
|
7
|
+
This is where the customizable test template system should be used to get an easy way to create the
|
8
|
+
following types of test methods:
|
9
|
+
|
10
|
+
* Application-specific test primitives, for example a functional test method which calls an applications-specific
|
11
|
+
power up function at the start, or which enforces the use of a particular test port.
|
12
|
+
* Test-specific variations on the primitive test methods, for example a functional test which will patch/overlay
|
13
|
+
the pattern with some data before running and/or capture and process some data at the end.
|
14
|
+
|
15
|
+
The key goal of this system is to give test engineers the ability to implement common customization scenarios
|
16
|
+
while writing an absolute minimum of application-specific code.
|
17
|
+
|
18
|
+
## Concept
|
19
|
+
|
20
|
+
To create a custom test based on a template, create a test method class that inherits from one of the template classes
|
21
|
+
[defined in `Origen::TestMethod`](<%= path "/v93k_smt7/html/namespace_origen_1_1_test_method.html" %>), such as
|
22
|
+
[`FunctionalTest`](<%= path "/v93k_smt7/html/class_origen_1_1_test_method_1_1_functional_test.html" %>):
|
23
|
+
|
24
|
+
~~~cpp
|
25
|
+
#include "origen/test_method/functional_test.hpp"
|
26
|
+
|
27
|
+
class Functional: public Origen::TestMethod::FunctionalTest {
|
28
|
+
|
29
|
+
}
|
30
|
+
~~~
|
31
|
+
|
32
|
+
The test template will take care of many of the low-level details of how to create test methods in SMT7,
|
33
|
+
such as having to remember to call `RDI_INIT()` and the use of `ON_FIRST_INVOCATION` and friends.
|
34
|
+
|
35
|
+
To achieve this, the template takes control of the conventional SMT7 integration functions `initialize()`,
|
36
|
+
`run()` and `SMC_backgroundProcessing()`, which means that you should not use these within your application code.
|
37
|
+
Instead, use the functions that are described here and these will allow you to hook into the test's
|
38
|
+
lifecycle at various points during execution of the test.
|
39
|
+
**Note that you do not have do define all of these, only the ones that you want to use.**
|
40
|
+
|
41
|
+
#### Common Lifecycle Functions
|
42
|
+
|
43
|
+
Here is a summary of the available lifecycle functions that should be supported by a majority of the
|
44
|
+
templates (exceptions will be noted in the documentation for each template below):
|
45
|
+
|
46
|
+
~~~cpp
|
47
|
+
// This should be used to define any test methods parameters/arguments, it is a direct equivalent of the standard
|
48
|
+
// initialize() function.
|
49
|
+
function init() {
|
50
|
+
}
|
51
|
+
|
52
|
+
// This will be invoked once (applied to all sites) before executing the main body of the test.
|
53
|
+
// It should be used to do any setup that you wish to apply to all sites.
|
54
|
+
function preBody() {
|
55
|
+
}
|
56
|
+
|
57
|
+
// This will be invoked once for each active site and the current site number will be passed in.
|
58
|
+
// It should be used to do any site-specific setup.
|
59
|
+
function preBody(int site) {
|
60
|
+
}
|
61
|
+
|
62
|
+
// This is invoked once per site and can be thought of as roughly equivalent to the standard run() function.
|
63
|
+
function body() {
|
64
|
+
// By default it calls the test methods execute() method (more on this below), and this will internally apply
|
65
|
+
// ON_FIRST_INVOCATION wrappers as required so you should not add these around the call to origen.
|
66
|
+
origen.execute();
|
67
|
+
}
|
68
|
+
|
69
|
+
// This will be invoked once (applied to all sites) after executing the main body of the test.
|
70
|
+
// It should be used to do any teardown that you wish to apply to all sites.
|
71
|
+
// Note that this function is called synchronously, i.e. it will block execution of the test flow until it
|
72
|
+
// has completed.
|
73
|
+
function postBody() {
|
74
|
+
}
|
75
|
+
|
76
|
+
// This will be invoked once for each active site and the current site number will be passed in.
|
77
|
+
// It should be used to do any site-specific teardown.
|
78
|
+
// Note that this function is called synchronously, i.e. it will block execution of the test flow until it
|
79
|
+
// has completed.
|
80
|
+
function postBody(int site) {
|
81
|
+
}
|
82
|
+
|
83
|
+
|
84
|
+
// This will be invoked once for each active site and is intended to be the place where any processing of the
|
85
|
+
// test result or captured data is performed.
|
86
|
+
// If async is enabled then it will be called asynchronously and will not block execution of the test flow.
|
87
|
+
// If async is not enabled then it will be called after postBody(int site), but is otherwise equivalent.
|
88
|
+
function process(int site) {
|
89
|
+
}
|
90
|
+
~~~
|
91
|
+
|
92
|
+
#### Common Configuration and Execute API
|
93
|
+
|
94
|
+
All test templates expose their core functionality via an API that is launched through an object called `origen`.
|
95
|
+
This is intended to provide a similar look and feel to the native SMT7 RDI API which is exposed through the `rdi` object.
|
96
|
+
|
97
|
+
As mentioned above, the default `body()` function implementation will call `origen.execute()` which as the name
|
98
|
+
suggests will execute the test.
|
99
|
+
|
100
|
+
Configuration can be done ahead of calling `execute()`, for example a majority of test templates support the concept
|
101
|
+
of selecting a port to execute the pattern on, that can be done like this:
|
102
|
+
|
103
|
+
~~~cpp
|
104
|
+
origen.port("MY_PORT_NAME");
|
105
|
+
origen.execute();
|
106
|
+
~~~
|
107
|
+
|
108
|
+
Or, if you prefer, these can be chained together similar to the RDI API:
|
109
|
+
|
110
|
+
~~~cpp
|
111
|
+
origen.port("MY_PORT_NAME").execute();
|
112
|
+
~~~
|
113
|
+
|
114
|
+
To see what configuration options are available from a given test
|
115
|
+
[defined in `Origen::TestMethod`](<%= path "/v93k_smt7/html/namespace_origen_1_1_test_method.html" %>), such as
|
116
|
+
|
117
|
+
#### Asynchronous Processing
|
118
|
+
|
119
|
+
Asynchronous processing of test results is not supported yet, how to enable it will be described here when it
|
120
|
+
is available.
|
121
|
+
|
122
|
+
The plan is to provide a global switch that will enable/disable asynchronous processing and then an
|
123
|
+
individual test-level switch to allow the global setting to be overridden.
|
124
|
+
|
125
|
+
In the meantime, do all processing that could be done asynchronously within the `process(int site)` function
|
126
|
+
described above. Your tests will then be ready to take advantage of the asynchronous feature when it becomes available.
|
127
|
+
|
128
|
+
|
129
|
+
### Available Templates
|
130
|
+
|
131
|
+
There now follows some template-specific guidance, which includes some usage examples:
|
132
|
+
|
133
|
+
* [FunctionalTest](#Functional_Test)
|
134
|
+
* [DCMeasurement](#DCMeasurement)
|
135
|
+
* [FrequencyMeasurement](#FrequencyMeasurement)
|
136
|
+
* [Empty](#Empty)
|
137
|
+
|
138
|
+
|
139
|
+
% end
|
@@ -0,0 +1,9 @@
|
|
1
|
+
% render "templates/web/layouts/guides.html" do
|
2
|
+
|
3
|
+
<div class="alert alert-danger" role="alert">
|
4
|
+
<strong>Sorry, Documentation Fail</strong>
|
5
|
+
</div>
|
6
|
+
|
7
|
+
Unfortunately this guide has not been written yet, the SMT8 library is still in initial development.
|
8
|
+
|
9
|
+
% end
|
data/templates/web/index.md.erb
CHANGED
@@ -4,18 +4,35 @@
|
|
4
4
|
%# formatting like this, but in most cases that is not required.
|
5
5
|
<h1><%= Origen.app.namespace %> <span style="font-size: 14px">(<%= Origen.app.version %>)</span></h1>
|
6
6
|
|
7
|
-
###
|
7
|
+
### Introduction
|
8
8
|
|
9
|
-
|
10
|
-
Advantest V93000 tester that is freely available for anyone to use.
|
9
|
+
OrigenStdLib aims to provide a standard ATE library with the following goals:
|
11
10
|
|
12
|
-
|
11
|
+
* Be agnostic to any particular company or business so that anyone can use this
|
12
|
+
* Be higher level than the native functionality provided by the ATE vendors - reducing the amount of low-level knowledge required by test engineers and the footprint of custom code required to be written for a particular test program application
|
13
|
+
* Complement the Origen test program and test pattern generators (although it can still be used standalone with flows and patterns originating from any backend flow)
|
14
|
+
|
15
|
+
It should be noted that this library does not aim to provide a common API across different ATE platforms. Instead, the goal is to provide
|
16
|
+
a library which has a natural look and feel on each platform, while still providing a feature set which is broadly similar
|
17
|
+
across all platforms.
|
18
|
+
|
19
|
+
If abstraction of the test platform is required then that is expected to be done by higher level program generators, such
|
20
|
+
as Origen, which can provide a common API that compiles to tests which target different ATE implementations of
|
21
|
+
this library.
|
13
22
|
|
14
|
-
|
23
|
+
Generally, this library provides three main components:
|
15
24
|
|
25
|
+
* Helper functions for general use in custom application code
|
26
|
+
* Complete tests for use off-the-shelf
|
27
|
+
* Customizable test templates that provide core functionality with the ability to customize around the edges
|
28
|
+
|
29
|
+
[See the FAQ](<%= path "faq" %>) for more background.
|
16
30
|
|
17
|
-
###
|
31
|
+
### Supported Platforms
|
18
32
|
|
33
|
+
OrigenStdLib currently provides libraries for the following platforms:
|
19
34
|
|
35
|
+
* [Advantest V93K SMT7](<%= path 'guides/v93ksmt7/intro' %>)
|
36
|
+
* [Advantest V93K SMT8](<%= path 'guides/v93ksmt8/intro' %>)
|
20
37
|
|
21
38
|
% end
|
@@ -4,9 +4,21 @@ title: Origen Std Lib
|
|
4
4
|
<%= render "partials/navbar.html", tab: :guides %>
|
5
5
|
|
6
6
|
% index = {}
|
7
|
-
% index[
|
8
|
-
%
|
9
|
-
%
|
7
|
+
% index[nil] = {
|
8
|
+
% intro: "Introduction",
|
9
|
+
% }
|
10
|
+
% index["V93K SMT7"] = {
|
11
|
+
% v93ksmt7_intro: "Introduction",
|
12
|
+
% v93ksmt7_install: "How to Install",
|
13
|
+
% v93ksmt7_helpers: "Helper Functions",
|
14
|
+
% v93ksmt7_complete: "Complete Tests",
|
15
|
+
% v93ksmt7_customizable: "Customizable Tests",
|
16
|
+
% v93ksmt7_patching: "Patching Patterns (Overlay)",
|
17
|
+
% v93ksmt7_capture: "Data Capture",
|
18
|
+
% v93ksmt7_integration: "Origen Integration",
|
19
|
+
% }
|
20
|
+
% index["V93K SMT8"] = {
|
21
|
+
% v93ksmt8_intro: "Introduction",
|
10
22
|
% }
|
11
23
|
|
12
24
|
% opts = options.merge(index: index, root: "guides", prompt: "Search the guides...")
|
@@ -0,0 +1,13 @@
|
|
1
|
+
* **port (string)** - (Optional, Default="") The name of a port to execute the pattern on, will be
|
2
|
+
run on all pins ('@') if a port name is not supplied.
|
3
|
+
* **testName (string)** - (Optional) An explicit name to be used when logging the result of this
|
4
|
+
test, if not given the test suite name will be used
|
5
|
+
* **forcePass (int)** - (Optional, Default=0) When set to 1, the test will appear to always pass in the flow (produce
|
6
|
+
a green box), although the actual pass/fail result value will be logged to STDF. Normally this would be
|
7
|
+
used for tests in the flow which are for data collection only.
|
8
|
+
* **onPassFlag (string)** - (Optional) The name of a test flow variable to be set if the test fails, e.g.
|
9
|
+
setting this to "MY_FLAG" would cause "@MY_FLAG" to be set to 1 in the event of the test passing.
|
10
|
+
No modification will be made to the variable if the test fails.
|
11
|
+
* **onFailFlag (string)** - (Optional) The name of a test flow variable to be set if the test fails, e.g.
|
12
|
+
setting this to "MY_FLAG" would cause "@MY_FLAG" to be set to 1 in the event of the test failing.
|
13
|
+
No modification will be made to the variable if the test passes.
|
@@ -11,14 +11,14 @@
|
|
11
11
|
</div>
|
12
12
|
<div id="navbar" class="collapse navbar-collapse">
|
13
13
|
<ul class="nav navbar-nav">
|
14
|
-
<li class="<%= options[:tab] == :guides ? 'active' : '' %>"><a href="<%= path "/guides/
|
14
|
+
<li class="<%= options[:tab] == :guides ? 'active' : '' %>"><a href="<%= path "/guides/intro" %>">Guides</a></li>
|
15
15
|
|
16
16
|
<li class="<%= options[:tab] == :faq ? 'active' : '' %>"><a href="<%= path "/faq" %>">FAQ</a></li>
|
17
17
|
|
18
18
|
<li class="dropdown">
|
19
19
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">API <span class="caret"></span></a>
|
20
20
|
<ul class="dropdown-menu">
|
21
|
-
<li><a href="<%= path "/
|
21
|
+
<li><a href="<%= path "/v93k_smt7/html/annotated.html" %>">V93K SMT7</a></li>
|
22
22
|
</ul>
|
23
23
|
</li>
|
24
24
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: origen_std_lib
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.13.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: 2020-07-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: origen
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.
|
33
|
+
version: 0.31.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0.
|
40
|
+
version: 0.31.0
|
41
41
|
description:
|
42
42
|
email:
|
43
43
|
- stephen.mcginty@nxp.com
|
@@ -55,34 +55,53 @@ files:
|
|
55
55
|
- lib/origen_std_lib_dev/interface.rb
|
56
56
|
- lib/tasks/origen_std_lib.rake
|
57
57
|
- program/prb1.rb
|
58
|
-
-
|
59
|
-
-
|
60
|
-
-
|
61
|
-
-
|
62
|
-
-
|
63
|
-
-
|
64
|
-
-
|
65
|
-
-
|
66
|
-
-
|
67
|
-
-
|
68
|
-
-
|
69
|
-
-
|
70
|
-
-
|
71
|
-
-
|
72
|
-
-
|
73
|
-
-
|
74
|
-
-
|
75
|
-
-
|
76
|
-
-
|
77
|
-
-
|
78
|
-
-
|
79
|
-
-
|
80
|
-
-
|
81
|
-
-
|
82
|
-
-
|
58
|
+
- src/advantest/smt7/origen/.cproject
|
59
|
+
- src/advantest/smt7/origen/.project
|
60
|
+
- src/advantest/smt7/origen/origen.cpp
|
61
|
+
- src/advantest/smt7/origen/origen.hpp
|
62
|
+
- src/advantest/smt7/origen/origen/helpers.hpp
|
63
|
+
- src/advantest/smt7/origen/origen/helpers/console.cpp
|
64
|
+
- src/advantest/smt7/origen/origen/helpers/misc.cpp
|
65
|
+
- src/advantest/smt7/origen/origen/helpers/time.cpp
|
66
|
+
- src/advantest/smt7/origen/origen/site.cpp
|
67
|
+
- src/advantest/smt7/origen/origen/site.hpp
|
68
|
+
- src/advantest/smt7/origen/origen/test_method.hpp
|
69
|
+
- src/advantest/smt7/origen/origen/test_method/base.cpp
|
70
|
+
- src/advantest/smt7/origen/origen/test_method/base.hpp
|
71
|
+
- src/advantest/smt7/origen/origen/test_method/dc_measurement.cpp
|
72
|
+
- src/advantest/smt7/origen/origen/test_method/dc_measurement.hpp
|
73
|
+
- src/advantest/smt7/origen/origen/test_method/empty.cpp
|
74
|
+
- src/advantest/smt7/origen/origen/test_method/empty.hpp
|
75
|
+
- src/advantest/smt7/origen/origen/test_method/frequency_measurement.cpp
|
76
|
+
- src/advantest/smt7/origen/origen/test_method/frequency_measurement.hpp
|
77
|
+
- src/advantest/smt7/origen/origen/test_method/functional_test.cpp
|
78
|
+
- src/advantest/smt7/origen/origen/test_method/functional_test.hpp
|
79
|
+
- src/advantest/smt7/origen/origen/utils.hpp
|
80
|
+
- src/advantest/smt7/origen/origen/utils/version.cpp
|
81
|
+
- src/advantest/smt7/origen/origen/utils/version.hpp
|
82
|
+
- src/advantest/smt7/origen/test_methods/ApplyBin.cpp
|
83
|
+
- src/advantest/smt7/origen/test_methods/DCMeasurement.cpp
|
84
|
+
- src/advantest/smt7/origen/test_methods/FrequencyMeasurement.cpp
|
85
|
+
- src/advantest/smt7/origen/test_methods/FunctionalTest.cpp
|
86
|
+
- src/advantest/smt7/origen/test_methods/RecordBin.cpp
|
87
|
+
- src/advantest/smt8/origen/common/Origen.java
|
88
|
+
- src/advantest/smt8/origen/common/OrigenData.java
|
89
|
+
- src/advantest/smt8/origen/common/OrigenHelpers.java
|
90
|
+
- src/advantest/smt8/origen/test_methods/Base.java
|
91
|
+
- src/advantest/smt8/origen/test_methods/DC_Measurement.java
|
92
|
+
- src/advantest/smt8/origen/test_methods/Empty.java
|
93
|
+
- src/advantest/smt8/origen/test_methods/Functional_test.java
|
83
94
|
- templates/web/faq.md.erb
|
84
|
-
- templates/web/guides/
|
85
|
-
- templates/web/guides/
|
95
|
+
- templates/web/guides/intro.md.erb
|
96
|
+
- templates/web/guides/v93ksmt7/capture.md.erb
|
97
|
+
- templates/web/guides/v93ksmt7/complete.md.erb
|
98
|
+
- templates/web/guides/v93ksmt7/customizable.md.erb
|
99
|
+
- templates/web/guides/v93ksmt7/helpers.md.erb
|
100
|
+
- templates/web/guides/v93ksmt7/install.md.erb
|
101
|
+
- templates/web/guides/v93ksmt7/integration.md.erb
|
102
|
+
- templates/web/guides/v93ksmt7/intro.md.erb
|
103
|
+
- templates/web/guides/v93ksmt7/patching.md.erb
|
104
|
+
- templates/web/guides/v93ksmt8/intro.md.erb
|
86
105
|
- templates/web/img/install1.png
|
87
106
|
- templates/web/img/install2.png
|
88
107
|
- templates/web/img/install3.png
|
@@ -91,6 +110,7 @@ files:
|
|
91
110
|
- templates/web/index.md.erb
|
92
111
|
- templates/web/layouts/_basic.html.erb
|
93
112
|
- templates/web/layouts/_guides.html.erb
|
113
|
+
- templates/web/partials/_common_args.md.erb
|
94
114
|
- templates/web/partials/_navbar.html.erb
|
95
115
|
- templates/web/release_notes.md.erb
|
96
116
|
homepage:
|
@@ -111,8 +131,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
111
131
|
- !ruby/object:Gem::Version
|
112
132
|
version: 1.8.11
|
113
133
|
requirements: []
|
114
|
-
|
115
|
-
rubygems_version: 2.6.7
|
134
|
+
rubygems_version: 3.1.4
|
116
135
|
signing_key:
|
117
136
|
specification_version: 4
|
118
137
|
summary: Test program interface drivers for the Origen tester standard library
|