Table of Contents

Class CommonSteps

Namespace
NationalInstruments.SemiconductorTestLibrary.TestStandSteps
Assembly
NationalInstruments.SemiconductorTestLibrary.TestStandSteps.dll

Defines entry points for semiconductor common steps.

public static class CommonSteps
Inheritance
CommonSteps
Inherited Members

Methods

AcquireAnalogInputWaveforms(ISemiconductorModuleContext, string[], int)

Acquires an analog waveform for each of the specified pins and pin groups. This step performs a simple acquisition of an analog signal, computes the minimums and maximums of the acquired waveforms, and then publishes the results. Only pins mapped to an analog input channel of a NI-DAQmx instrument are supported.

BurstPattern(ISemiconductorModuleContext, string[], string)

Bursts a pattern and publishes the pass/fail results as well as the fail count.

ContinuityTest(ISemiconductorModuleContext, string[], double[], string[], double[], double[], double[], double, double)

Performs a basic continuity test. It serially checks either upper or lower protection diodes DUT pins, regardless of if they are mapped to digital or SMU instruments. The test will first set 0V on all the pins and then source a small amount of current on the targeted continuity pins to validate the voltage drop across the protection diode. After current is applied, the targeted pin(s) will be forced back to 0V before continuing on to the next pin. Note that each continuity pin will be tested one pin at a time. Pins mapped to either an NI SMU or NI PPMU(s) instrument channel are supported.

DutPowerDown(ISemiconductorModuleContext, string[], double, bool, bool)

Forces DC voltage to Zero on the specified DUT supply pins. If the powerDownSuppliesSerially Boolean is set to True, the DUT supplies will be powered down sequentially in the order provided, and the settlingTime input will be used after power down each pin. If forceLowestCurrentLimit is set to false, the dutSupplyPinsOrPinGroups will be configured to force 0V at the currently programmed current limit and range, which may not be desirable. Otherwise, it will default to true, which will ensure the pins are configured to force 0V at the lowest possible current limit to mimic high-impedance. The actual current limit selected is dependent on the mapped hardware channel. Both DCPower and Digital PPMU pins are supported.

DutPowerUp(ISemiconductorModuleContext, string[], double[], double[], double, bool)

Forces DC voltage on the specified DUT supply pins. Must provide voltages and current limit values for each of the DUT supply pins. If the powerUpSuppliesSerially Boolean is set to True, the DUT supplies will be powered up sequentially in the order provided, and the settlingTime input will be used after power up each pin. Both DCPower and Digital PPMU pins are supported.

ForceCurrentMeasureVoltage(ISemiconductorModuleContext, string[], double, double, double, double)

Forces the specified DC current on all pins and/or pin groups specified, waits the specified amount of settling time, and then measures the voltage on those pins and publishes the results to TestStand. Both DCPower and Digital PPMU pins are supported. Both the settlingTime and apertureTime inputs are expected to be provided in Seconds. By default the apertureTime input is set to -1, which will cause this input to be ignored and the device will use any pre-configured aperture time set by a proceeding set, such as the Setup NI-DCPower Instrumentation step.

ForceDcCurrent(ISemiconductorModuleContext, string[], double, double, double)

Forces the specified DC current on all pins and/or pin groups specified. Both DCPower and Digital PPMU pins are supported. If a value is provided to the settlingTimeInSeconds input, the method will wait the specified amount of settling time before continuing.

ForceDcVoltage(ISemiconductorModuleContext, string[], double, double, double)

Forces the specified DC voltage on all pins and/or pin groups specified. Both DCPower and Digital PPMU pins are supported. If a value is provided to the settlingTimeInSeconds input, the method will wait the specified amount of settling time before continuing.

ForceVoltageMeasureCurrent(ISemiconductorModuleContext, string[], double, double, double, double)

Forces the specified DC voltage on all pins and/or pin groups specified, waits the specified amount of settling time, and then measures the current on those pins and publishes the results to TestStand. Both DCPower and Digital PPMU pins are supported. Both the settlingTime and apertureTime inputs are expected to be provided in Seconds. By default the apertureTime input is set to -1, which will cause this input to be ignored and the device will use any pre-configured aperture time set by a proceeding set, such as the Setup NI-DCPower Instrumentation step.

LeakageTest(ISemiconductorModuleContext, string[], double, double, double, double, bool)

Performs a single leakage measurement. The test configures the instruments connected to the pins specified, sources voltage on each pin, and then measures the current on all pins simultaneously. Provide input values to the method to specify the voltage to source and the current limit for the leakage measurement. The leakage current measurements are published separately for each pin, regardless of if a pin group is provided. Configure test evaluations on the Tests tab of the Step Settings pane in TestStand to evaluate the results of these measurements. If the forced voltage cannot be applied to pins simultaneously, you can set the serialOperationEnabled Boolean input to true (false by default). When the serialOperationEnabled Boolean input is set to true and a pin group is provided, this will still perform parallel operations across all pins in the pin group. Take advantage of this functionality for when leakage can be performed on some DUT pins in parallel, but not others, and define those pins within separate pin groups (i.e. LeakageOddPins and LeakageEvenPins). Pins mapped to either an NI SMU or NI PPMU(s) instrument channel are supported.