origen_std_lib 0.9.0 → 0.13.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 +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
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
#include "testmethod.hpp"
|
|
2
|
-
|
|
3
|
-
//for test method API interfaces
|
|
4
|
-
#include "mapi.hpp"
|
|
5
|
-
using namespace std;
|
|
6
|
-
#include "origen/test_method/dc_measurement.hpp"
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Test method class.
|
|
10
|
-
*
|
|
11
|
-
* For each testsuite using this test method, one object of this
|
|
12
|
-
* class is created.
|
|
13
|
-
*/
|
|
14
|
-
class DCMeasurement: public testmethod::TestMethod, public Origen::TestMethod::DCMeasurement {
|
|
15
|
-
protected:
|
|
16
|
-
int mApplyShutdown;
|
|
17
|
-
string mShutdownPattern;
|
|
18
|
-
string mMeasure;
|
|
19
|
-
double mSettlingTime;
|
|
20
|
-
string mPin;
|
|
21
|
-
double mForceValue;
|
|
22
|
-
double mIRange;
|
|
23
|
-
int mCheckShutdown;
|
|
24
|
-
int mBadc;
|
|
25
|
-
|
|
26
|
-
protected:
|
|
27
|
-
/**
|
|
28
|
-
*Initialize the parameter interface to the testflow.
|
|
29
|
-
*This method is called just once after a testsuite is created.
|
|
30
|
-
*/
|
|
31
|
-
virtual void initialize()
|
|
32
|
-
{
|
|
33
|
-
//Add your initialization code here
|
|
34
|
-
//Note: Test Method API should not be used in this method!
|
|
35
|
-
addParameter("applyShutdown",
|
|
36
|
-
"int",
|
|
37
|
-
&mApplyShutdown,
|
|
38
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
39
|
-
.setDefault("1")
|
|
40
|
-
.setComment("Apply a shutdown pattern after taking the measurement");
|
|
41
|
-
addParameter("shutdownPattern",
|
|
42
|
-
"string",
|
|
43
|
-
&mShutdownPattern,
|
|
44
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
45
|
-
.setComment("The name of the shutdown pattern, by default it will be the main pattern name appended with '_part1'");
|
|
46
|
-
addParameter("checkShutdown",
|
|
47
|
-
"int",
|
|
48
|
-
&mCheckShutdown,
|
|
49
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
50
|
-
.setDefault("1")
|
|
51
|
-
.setComment("Check that the shutdown pattern passed (and fail if not)");
|
|
52
|
-
addParameter("measure",
|
|
53
|
-
"string",
|
|
54
|
-
&mMeasure,
|
|
55
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
56
|
-
.setDefault("VOLT")
|
|
57
|
-
.setComment("Measure 'CURR' or 'VOLT' (the default)");
|
|
58
|
-
addParameter("settlingTime",
|
|
59
|
-
"double",
|
|
60
|
-
&mSettlingTime,
|
|
61
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
62
|
-
.setDefault("0")
|
|
63
|
-
.setComment("Time to wait between running the pattern and taking the measurement, expressed in ms");
|
|
64
|
-
addParameter("pin",
|
|
65
|
-
"PinString",
|
|
66
|
-
&mPin,
|
|
67
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
68
|
-
.setComment("Pin to be measured");
|
|
69
|
-
addParameter("forceValue",
|
|
70
|
-
"double",
|
|
71
|
-
&mForceValue,
|
|
72
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
73
|
-
.setDefault("0")
|
|
74
|
-
.setComment("Value to be forced on the pin during the measurement");
|
|
75
|
-
addParameter("iRange",
|
|
76
|
-
"double",
|
|
77
|
-
&mIRange,
|
|
78
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
79
|
-
.setDefault("0")
|
|
80
|
-
.setComment("The current range to apply to the measurement (in A), will be calculated if not supplied (set to 0)");
|
|
81
|
-
addParameter("badc",
|
|
82
|
-
"int",
|
|
83
|
-
&mBadc,
|
|
84
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
85
|
-
.setDefault("0")
|
|
86
|
-
.setComment("Perform the measurement using the Board ADC (rather than the PPMU)");
|
|
87
|
-
addLimit("Functional");
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
/**
|
|
91
|
-
*This test is invoked per site.
|
|
92
|
-
*/
|
|
93
|
-
virtual void run()
|
|
94
|
-
{
|
|
95
|
-
RDI_INIT();
|
|
96
|
-
|
|
97
|
-
origen.applyShutdown(mApplyShutdown)
|
|
98
|
-
.forceValue(mForceValue)
|
|
99
|
-
.shutdownPattern(mShutdownPattern)
|
|
100
|
-
.checkShutdown(mCheckShutdown)
|
|
101
|
-
.measure(mMeasure)
|
|
102
|
-
.settlingTime(mSettlingTime)
|
|
103
|
-
.pin(mPin)
|
|
104
|
-
.iRange(mIRange)
|
|
105
|
-
.badc(mBadc)
|
|
106
|
-
.execute();
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
/**
|
|
110
|
-
*This function will be invoked once the specified parameter's value is changed.
|
|
111
|
-
*@param parameterIdentifier
|
|
112
|
-
*/
|
|
113
|
-
virtual void postParameterChange(const string& parameterIdentifier)
|
|
114
|
-
{
|
|
115
|
-
//Add your code
|
|
116
|
-
//Note: Test Method API should not be used in this method!
|
|
117
|
-
return;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
/**
|
|
121
|
-
*This function will be invoked once the Select Test Method Dialog is opened.
|
|
122
|
-
*/
|
|
123
|
-
virtual const string getComment() const
|
|
124
|
-
{
|
|
125
|
-
string comment = " please add your comment for this method.";
|
|
126
|
-
return comment;
|
|
127
|
-
}
|
|
128
|
-
};
|
|
129
|
-
REGISTER_TESTMETHOD("DCMeasurement", DCMeasurement);
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
#include "testmethod.hpp"
|
|
2
|
-
|
|
3
|
-
//for test method API interfaces
|
|
4
|
-
#include "mapi.hpp"
|
|
5
|
-
using namespace std;
|
|
6
|
-
#include "../origen/test_method/frequency_measurement.hpp"
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Test method class.
|
|
10
|
-
*
|
|
11
|
-
* For each testsuite using this test method, one object of this
|
|
12
|
-
* class is created.
|
|
13
|
-
*/
|
|
14
|
-
class FrequencyMeasurement: public testmethod::TestMethod,
|
|
15
|
-
public Origen::TestMethod::FrequencyMeasurement {
|
|
16
|
-
|
|
17
|
-
protected:
|
|
18
|
-
int mPeriodBased;
|
|
19
|
-
string mPin;
|
|
20
|
-
int mSamples;
|
|
21
|
-
int mPeriodInNs;
|
|
22
|
-
|
|
23
|
-
protected:
|
|
24
|
-
/**
|
|
25
|
-
*Initialize the parameter interface to the testflow.
|
|
26
|
-
*This method is called just once after a testsuite is created.
|
|
27
|
-
*/
|
|
28
|
-
virtual void initialize()
|
|
29
|
-
{
|
|
30
|
-
addParameter("periodBased",
|
|
31
|
-
"int",
|
|
32
|
-
&mPeriodBased,
|
|
33
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
34
|
-
.setDefault("0")
|
|
35
|
-
.setComment("Set to 1 if the limits are expressed as a period instead of a frequency (the default)");
|
|
36
|
-
addParameter("pin",
|
|
37
|
-
"PinString",
|
|
38
|
-
&mPin,
|
|
39
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
40
|
-
.setComment("Pin to be measured");
|
|
41
|
-
addParameter("samples",
|
|
42
|
-
"int",
|
|
43
|
-
&mSamples,
|
|
44
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
45
|
-
.setDefault("2000")
|
|
46
|
-
.setComment("The number of captures made by the pattern, defaults to 2000");
|
|
47
|
-
addParameter("periodInNs",
|
|
48
|
-
"int",
|
|
49
|
-
&mPeriodInNs,
|
|
50
|
-
testmethod::TM_PARAMETER_INPUT)
|
|
51
|
-
.setComment("The period of the capture vectors");
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
//Add your initialization code here
|
|
55
|
-
//Note: Test Method API should not be used in this method!
|
|
56
|
-
addLimit("Functional");
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
*This test is invoked per site.
|
|
61
|
-
*/
|
|
62
|
-
virtual void run()
|
|
63
|
-
{
|
|
64
|
-
RDI_INIT();
|
|
65
|
-
|
|
66
|
-
origen.periodBased(mPeriodBased)
|
|
67
|
-
.pin(mPin)
|
|
68
|
-
.samples(mSamples)
|
|
69
|
-
.periodInNs(mPeriodInNs)
|
|
70
|
-
.execute();
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
/**
|
|
74
|
-
*This function will be invoked once the specified parameter's value is changed.
|
|
75
|
-
*@param parameterIdentifier
|
|
76
|
-
*/
|
|
77
|
-
virtual void postParameterChange(const string& parameterIdentifier)
|
|
78
|
-
{
|
|
79
|
-
//Add your code
|
|
80
|
-
//Note: Test Method API should not be used in this method!
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
/**
|
|
85
|
-
*This function will be invoked once the Select Test Method Dialog is opened.
|
|
86
|
-
*/
|
|
87
|
-
virtual const string getComment() const
|
|
88
|
-
{
|
|
89
|
-
string comment = " please add your comment for this method.";
|
|
90
|
-
return comment;
|
|
91
|
-
}
|
|
92
|
-
};
|
|
93
|
-
REGISTER_TESTMETHOD("FrequencyMeasurement", FrequencyMeasurement);
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
#include "testmethod.hpp"
|
|
2
|
-
|
|
3
|
-
//for test method API interfaces
|
|
4
|
-
#include "mapi.hpp"
|
|
5
|
-
#include "rdi.hpp"
|
|
6
|
-
using namespace std;
|
|
7
|
-
#include "origen/test_method/functional_test.hpp"
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Test method class.
|
|
11
|
-
*
|
|
12
|
-
* For each testsuite using this test method, one object of this
|
|
13
|
-
* class is created.
|
|
14
|
-
*/
|
|
15
|
-
class FunctionalTest: public testmethod::TestMethod,
|
|
16
|
-
public Origen::TestMethod::FunctionalTest {
|
|
17
|
-
|
|
18
|
-
protected:
|
|
19
|
-
/**
|
|
20
|
-
*Initialize the parameter interface to the testflow.
|
|
21
|
-
*This method is called just once after a testsuite is created.
|
|
22
|
-
*/
|
|
23
|
-
virtual void initialize() {
|
|
24
|
-
//Add your initialization code here
|
|
25
|
-
//Note: Test Method API should not be used in this method!
|
|
26
|
-
// addLimit("testlimit");
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
*This test is invoked per site.
|
|
31
|
-
*/
|
|
32
|
-
virtual void run() {
|
|
33
|
-
RDI_INIT();
|
|
34
|
-
|
|
35
|
-
origen.execute();
|
|
36
|
-
|
|
37
|
-
// string label = Primary.getLabel();
|
|
38
|
-
// string testSuiteName;
|
|
39
|
-
// GET_TESTSUITE_NAME(testSuiteName);
|
|
40
|
-
//
|
|
41
|
-
// RDI_INIT();
|
|
42
|
-
// ON_FIRST_INVOCATION_BEGIN();
|
|
43
|
-
// RDI_BEGIN();
|
|
44
|
-
// rdi.func(testSuiteName).label(label).execute();
|
|
45
|
-
//
|
|
46
|
-
//// cout << testSuiteName << endl;
|
|
47
|
-
//// cout << label << endl;
|
|
48
|
-
// RDI_END();
|
|
49
|
-
// cout << "-----------------" << endl;
|
|
50
|
-
// ON_FIRST_INVOCATION_END();
|
|
51
|
-
//
|
|
52
|
-
// int site = CURRENT_SITE_NUMBER();
|
|
53
|
-
// int res = rdi.id(testSuiteName).getPassFail();
|
|
54
|
-
// cout << CURRENT_SITE_NUMBER() << ":" << res << endl;
|
|
55
|
-
// Origen::logFunctionalTest(testSuiteName, site, res == 1, label);
|
|
56
|
-
// // TESTSET().judgeAndLog_FunctionalTest(CURRENT_SITE_NUMBER() != 2);
|
|
57
|
-
|
|
58
|
-
/*
|
|
59
|
-
string name;
|
|
60
|
-
GET_TESTSUITE_NAME(name);
|
|
61
|
-
RDI_INIT();
|
|
62
|
-
ON_FIRST_INVOCATION_BEGIN();
|
|
63
|
-
FUNCTIONAL_TEST();
|
|
64
|
-
// RDI_BEGIN();
|
|
65
|
-
// rdi.func(name).label(Primary.getLabel()).execute();
|
|
66
|
-
// RDI_END();
|
|
67
|
-
ON_FIRST_INVOCATION_END();
|
|
68
|
-
|
|
69
|
-
cout << "Result is " << GET_FUNCTIONAL_RESULT("@") << endl;
|
|
70
|
-
// cout << "Result is " << rdi.id(name).getPassFail() << endl;
|
|
71
|
-
// TESTSET().cont(true).judgeAndLog_FunctionalTest();
|
|
72
|
-
// TESTSET().cont(true).judgeAndLog_ParametricTest("@","testlimit",GET_FUNCTIONAL_RESULT("@"));
|
|
73
|
-
*/
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
*This function will be invoked once the specified parameter's value is changed.
|
|
78
|
-
*@param parameterIdentifier
|
|
79
|
-
*/
|
|
80
|
-
virtual void postParameterChange(const string& parameterIdentifier) {
|
|
81
|
-
//Add your code
|
|
82
|
-
//Note: Test Method API should not be used in this method!
|
|
83
|
-
return;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
/**
|
|
87
|
-
*This function will be invoked once the Select Test Method Dialog is opened.
|
|
88
|
-
*/
|
|
89
|
-
virtual const string getComment() const {
|
|
90
|
-
string comment = " please add your comment for this method.";
|
|
91
|
-
return comment;
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
REGISTER_TESTMETHOD("FunctionalTest", FunctionalTest);
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
#include "testmethod.hpp"
|
|
2
|
-
|
|
3
|
-
//for test method API interfaces
|
|
4
|
-
#include "mapi.hpp"
|
|
5
|
-
using namespace std;
|
|
6
|
-
#include "origen.hpp"
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Test method class.
|
|
10
|
-
*
|
|
11
|
-
* For each testsuite using this test method, one object of this
|
|
12
|
-
* class is created.
|
|
13
|
-
*/
|
|
14
|
-
class RecordBin: public testmethod::TestMethod {
|
|
15
|
-
protected:
|
|
16
|
-
int mBin;
|
|
17
|
-
int mSoftbin;
|
|
18
|
-
|
|
19
|
-
protected:
|
|
20
|
-
/**
|
|
21
|
-
*Initialize the parameter interface to the testflow.
|
|
22
|
-
*This method is called just once after a testsuite is created.
|
|
23
|
-
*/
|
|
24
|
-
virtual void initialize()
|
|
25
|
-
{
|
|
26
|
-
//Add your initialization code here
|
|
27
|
-
//Note: Test Method API should not be used in this method!
|
|
28
|
-
addParameter("bin",
|
|
29
|
-
"int",
|
|
30
|
-
&mBin,
|
|
31
|
-
testmethod::TM_PARAMETER_INPUT);
|
|
32
|
-
addParameter("softbin",
|
|
33
|
-
"int",
|
|
34
|
-
&mSoftbin,
|
|
35
|
-
testmethod::TM_PARAMETER_INPUT);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
*This test is invoked per site.
|
|
40
|
-
*/
|
|
41
|
-
virtual void run()
|
|
42
|
-
{
|
|
43
|
-
Origen::site().bin(mBin);
|
|
44
|
-
Origen::site().softbin(mSoftbin);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
};
|
|
48
|
-
REGISTER_TESTMETHOD("RecordBin", RecordBin);
|