Table of Contents

Class Static

Namespace
CsraTestMethods.SupplyCurrent
Assembly
CsraTestMethods.dll
[TestClass(Creation.TestInstance)]
[Serializable]
public class Static : TestCodeBase

Overview

TestClass for all static supply current related TestMethods.

Platform Specifics

Uses per test-instance test class object persistence ([TestClass(Creation.TestInstance)] attribute).

Inheritance
TestCodeBase
Static
Inherited Members
TestCodeBase.AbortTest()
TestCodeBase.DebugBreak()
TestCodeBase.TheExec
TestCodeBase.TheHdw
TestCodeBase.TheProgram
TestCodeBase.FlowDomains
TestCodeBase.ShouldRunPreBody
TestCodeBase.ShouldRunBody
TestCodeBase.ShouldRunPostBody

Methods

Baseline(PinList, double, double, double, double, string)

Executes a supply current test with the specified parameters.

[TestMethod]
[Steppable]
[CustomValidation]
public void Baseline(PinList pinList, double forceValue, double measureRange, double clampValue, double waitTime, string setup = "")

Parameters

pinList PinList

List of pin or pin group names.

forceValue double

The value to force.

measureRange double

The range for measurement.

clampValue double

The value to clamp.

waitTime double

The wait time after forcing.

setup string

Optional. The name of the setup set to be applied through the setup service.

Details

Test Technique
  • to be added
Implementation

The PreBody section applies levels and timing from the test instance context. Optionally, applies the specified config. For all pins specified in the pinList it disconnects any pin electronics, connects the dc path and turns on the gate.

The Body section applies a forceVoltage condition on all pins, sets the measurement mode and performs a current measurement on all pins in parallel after the specified waitTime.

The PostBody section restores the pin electronics connection for digital pins after gating off and disconnecting the dc path. Finally, a parametric datalog is logged.

Platform Specifics

Supports stepping capability for PreBody/Body/PostBody.

Pre Conditions
  • none
Post Conditions
  • any dc paths from pins in pinListare disconnected
Limitations
  • support for non-uniform (mixed) instrument types in pinList not yet available
Code Reference
[TestMethod, Steppable, CustomValidation]
public void Baseline(PinList pinList, double forceValue, double measureRange, double clampValue, double waitTime, string setup = "") {

    if (TheExec.Flow.IsValidating) {
        TheLib.Validate.Pins(pinList, nameof(pinList), out _pins);
        TheLib.Validate.InRange(waitTime, 0, 600, nameof(waitTime));
        _containsDigitalPins = _pins.ContainsFeature(InstrumentFeature.Digital);
    }

    if (ShouldRunPreBody) {
        TheLib.Setup.LevelsAndTiming.Apply(true);
        Services.Setup.Apply(setup);
        if (_containsDigitalPins) TheLib.Setup.Digital.Disconnect(_pins);
        TheLib.Setup.Dc.Connect(_pins);
    }

    if (ShouldRunBody) {
        TheLib.Setup.Dc.SetForceAndMeter(_pins, DcOutputMode.ForceVoltage, forceValue, forceValue, clampValue, DcMeterMode.Current, measureRange);
        TheLib.Execute.Wait(waitTime);
        _meas = TheLib.Acquire.Dc.Measure(_pins);
    }

    if (ShouldRunPostBody) {
        TheLib.Setup.Dc.Disconnect(_pins);
        if (_containsDigitalPins) TheLib.Setup.Digital.Connect(_pins);
        TheLib.Datalog.TestParametric(_meas, forceValue, "V");
    }
}