A semiconductor test program can include a pin map file, a main sequence file, subordinate sequence files, code modules, specifications, timing files, levels files, pattern files, source and capture waveforms, test limits files, a bin definitions file, and configurations.

Use the Test Program Editor to complete the following tasks:
  • Specify the pin map, bin definitions, specifications, digital pattern project, and test limits files
  • Create and edit test program configurations
  • Configure other settings for the test program

Select Semiconductor Module » Edit Test Program: <filename> or click the Edit Test Program: <filename> button on the TSM toolbar to launch the Test Program Editor for the sequence file.

Use the TestStand Sequence Editor to complete test program development, configuration, debugging, and execution tasks.

Use the following figure and table to learn about the components of test programs and test stations.



Component Description
TestStand Sequence Editor The TestStand Sequence Editor is the development environment in which you create, edit, execute, and debug sequences and the tests sequences call.

Complete the following steps to launch the sequence editor.

  1. (Windows 8.1/8) Click the NI Launcher tile on the Start screen and select TestStand » TestStand Sequence Editor.

    (Windows 7) Select Start » All Programs » National Instruments » TestStand » TestStand Sequence Editor.

    (Windows 10) Select Start » NI TestStand.

    The sequence editor launches the main window and the Login dialog box.

  2. Use the default user name, administrator, in the User Name ring control. Leave the Password field empty. You can use the TestStand User Manager to customize user setting and permissions.
  3. Click OK.
Pin Map A pin map defines the instrumentation on the tester, defines the pins on the DUT, and defines how the DUT pins are connected to the tester instrumentation for each test site. Use the Pin Map Editor to view, create, modify, and save pin map files. The pin map file also serves as the channel map file.

Select Semiconductor Module » Edit Pin Map File or click the Edit Pin Map File button on the TSM toolbar to launch the Pin Map Editor. Alternatively, you can select Semiconductor Module » Edit Test Program and then select Pin Map in the Test Program Editor to launch the Pin Map panel. Click the Open file for edit button to launch the Pin Map Editor.

Bin Definitions File A bin definitions file defines the hardware bins and software bins, defines how the software bins relate to hardware bins, and defines the default software bins for the test program main sequence file. Use the Bin Definitions Editor to view, create, modify, and save bin definitions files.

Select Semiconductor Module » Edit Bin Definitions File or click the Edit Bin Definitions File button on the TSM toolbar to launch the Bin Definitions Editor. Alternatively, you can select Semiconductor Module » Edit Test Program and then select Bin Definitions in the Test Program Editor to launch the Bin Definitions panel. Click the Open file for edit button to launch the Bin Definitions Editor.

Specifications Files Specifications files define a set of symbols, or variables, and associated numeric values of DUT attributes that you can reference in test program code modules instead of using constants to set testing specifications. You can modify specifications files to set new values without changing test program files.

Select Semiconductor Module » Edit Test Program and select Specifications Files in the Test Program Editor to specify one or more specifications files to load in the test program.

Digital Pattern Project Use the Digital Pattern Editor with a Digital Pattern Instrument and the NI-Digital Pattern Driver software for digital testing of semiconductors, or devices under test (DUTs). Use digital pattern project files to organize and access pattern files and the following types of digital configuration files:
  • Pin and channel maps (.pinmap)
  • Specifications (.specs)
  • Digital timing (.digitiming)
  • Digital levels (.digilevels)
  • Digital patterns (.digipat)
  • Source waveforms (.tdms)
  • Capture waveform configurations (.digicapture)
Timing Files Timing files contain configuration components of digital pattern time sets, which define the behavior of a digital signal on a pin for a particular cycle. Timing files also include the format and edge placement that shape the digital waveform on a per-pin basis for a digital pattern instrument. Edit timing files in the Digital Pattern Editor.
Levels Files Levels files contain voltage and current levels to drive and compare for digital pins and pin groups connected to an NI digital pattern instrument and for pins and pin groups connected to an NI-DCPower instrument. Edit levels files in the Digital Pattern Editor.
Pattern Files Pattern files contain a collection of vectors, or instructions, to execute on an NI digital pattern instrument. Components of the binary pattern file include time sets, labels, opcodes, vector numbers, pin state data that indicates drives and compares, and comments for each vector. Edit pattern files in the Digital Pattern Editor.
Source and Capture Waveforms You can source or capture a variable waveform that is not defined at compile time on an NI digital pattern instrument. Edit source waveform and capture waveform configuration files in the Digital Pattern Editor.
Correlation Offsets File You can apply correlation offset values to test results on a per-site basis at run time before evaluating the test result data against limits. Use the Load Correlation Offsets Step and associated edit tab to load and apply a correlation offset file.
Test Program Configurations Test program configurations define values for conditions that a test program can reference at run time and the test limits file that loads before running a test lot. A test program can use multiple configurations to implement multiple test flows using the same sequences and code modules. For example, you can create configurations for Hot and Cold flows or for QA and Production lots.

Select Semiconductor Module » Edit Test Program and then select Configuration Definition in the Test Program Editor to define configuration settings.

Test Limits Files Test limits files define test limits the test program loads before running a test lot. The test program replaces test limits in test steps in the sequence file with those specified in the test limits file. You can embed test limits in the sequence file to prevent viewing or tampering with the limits.

Select Semiconductor Module » Edit Test Program and select Test Limits Files in the Test Program Editor to specify one or more test limits files to make available to the test program configurations. The test program configuration specifies the test limits file that loads before running a test lot.

You can create a test limits file by selecting Semiconductor Module » Export Test Limits from or by clicking the Export Test Limits from button on the TSM toolbar to export test limits from a sequence file into a tab-delimited test limits text file. You can import a test limits file by selecting Semiconductor Module » Import Test Limits to or by clicking the Import Test Limits to button on the TSM toolbar to import test limits from a tab-delimited test limits text file into a sequence file. When you import test limits from a text file, you can update limits in matching tests or replace all tests in matching steps.

Test Conditions Test conditions specify historical information, descriptive information, such as DUT numbers or package types, and conditions under which to test the DUTs, such as temperature or voltage. The test program can use test conditions to determine how to execute tests. For example, test conditions might dictate which steps execute, what temperature to apply to a DUT, what voltage to use, and so on.

Select Semiconductor Module » Edit Test Program and select an option in the Configurations list of the Test Program Editor to edit configuration settings.

Main Sequence File The main sequence file contains the sequences that define the test flow by specifying the test steps to execute and the order in which to execute them. The sequence file contains one main sequence named MainSequence and can optionally include one or more subsequences with corresponding test steps. You can use multiple sequences in a test program to keep the test code modular and organized.

The ProcessSetup and ProcessCleanup sequences are special sequences that TestStand calls at certain times. TestStand calls ProcessSetup once before starting execution and calls ProcessCleanup after execution completes. Initialization and cleanup of instrumentation typically occurs within these sequences.

Test Steps Test steps call test code in code modules that control the instrumentation on the tester. The test steps perform tests by comparing measurement values obtained by the code modules to test limits stored on the step and assign a bin to the DUT if the comparison fails. You can also assign a bin to the DUT when the comparison fails. Test steps are instances of the Semiconductor Multi Test step type, in which you also define test numbers and names.
OnSiteTestingComplete Use the OnSiteTestingComplete callback sequence to perform actions on a DUT or on instruments after all DUT tests have completed and TSM has assigned a bin to the DUT.

To use the OnSiteTestingComplete callback, add a sequence with no parameters to the test program sequence file and name the new sequence OnSiteTestingComplete. TSM calls the sequence after the MainSequence sequence, after all PAT tests complete, and after TSM assigns a bin to the DUT. Use the Get Test Information step in the callback sequence to determine the bin assigned to the DUT.

You cannot use Semiconductor Multi Test steps in the OnSiteTestingComplete callback because all tests must execute before TSM assigns a bin to the DUT and before TSM calls the callback. Use the Semiconductor Action step to perform operations with the instruments and DUT.

You cannot change the bin assigned to a DUT in the OnSiteTestingComplete callback. You cannot use the Set and Lock Bin step in the OnSiteTestingComplete callback.

You can use the Cleanup step group of the MainSequence sequence to perform similar actions as the OnSiteTestingComplete callback if you do not need to know the bin assigned to the DUT to perform the actions. If your test program uses part average testing, you should precede those actions with a Perform Part Average Testing step, so that you can ensure that they run after all part average testing is completed. If you don't use a Perform Part Average Testing step, TSM performs part average testing after executing all step groups of the MainSequence sequence.

Code Modules Use LabVIEW or .NET to create, edit, and debug test code in code modules to control the instrumentation on the tester, take measurements from the DUT, and pass the measurement values back to the test step. Code modules are program modules, such as a LabVIEW VI or a Microsoft Windows DLL, that contain one or more functions that perform a specific test or other action.
Station Settings You can specify test station configuration options for the tester, such as handler configuration or data logging preferences, that apply to all test lots and that persist during restart and shutdown operations. The test program can use station information to determine how to execute tests. For example, station settings might specify the type of handler to use with the test program, which reports to generate, or whether the test station performs inline quality assurance testing. When a test station is reconfigured, such as to specify a different handler or to change the functionality of the tester, the station settings must be updated to account for the changes. You can customize how TSM obtains and processes the settings.

Select Semiconductor Module » Configure Station in the TestStand Sequence Editor or click the Configure Station button in the default TSM operator interface to launch the Configure Station Settings dialog box.

Lot Settings The test program can use lot information to determine how to execute tests. For example, lot settings might dictate which steps execute, what temperature to apply to a DUT, what voltage to use, and so on. You can customize how TSM obtains the settings.

Select Semiconductor Module » Configure Lot in the TestStand Sequence Editor or click the Configure Lot button in the default TSM operator interface to launch the Configure Lot Settings dialog box.

Reporting and Data Logging You can generate TSM reports and data logs, such as Standard Test Data Format (STDF) log files, Lot Summary Reports, and Test Results Logs. Enable and configure the corresponding TSM result processing plug-in to generate the report or data log. You can customize the destination directory and filename of the report or data log file.
Lot Statistics Viewer The Lot Statistics Viewer window provides a way to view lot statistics, including per-site bin counts, while running or debugging a sequence in the sequence editor. You can also control test program execution in the Lot Statistics Viewer.

Select Semiconductor Module » Show Lot Statistics Viewer or click the Show Lot Statistics Viewer button on the TSM toolbar to launch the Lot Statistics Viewer window.

Test Code Debugging Tools TestStand includes several tools for debugging sequences and related components in a TestStand test program and in TSM test programs. Additionally, the TestStand Sequence Editor integrates with supported application development environments to debug code modules.
TestStand Execution Profiler Use the Execution Profiler to view and record duration of steps, code modules, and other resources a multithreaded TestStand system uses over a period of time.

In an effort to improve test time performance, you can optimize test time by identifying parts of the test program that take longest to execute or by identifying what shared tester resources cause throughput bottlenecks.

Test Program Performance Analyzer Use the Test Program Performance Analyzer to view data TSM generates when you measure the performance of a test program. You can filter, graph, compare, and save the data in various ways to identify performance issues in a test program.
Operator Interfaces Use TSM default operator interface applications to execute test sequences on a test station. The operator interface source code is available in LabVIEW and C#. You can fully customize them to meet specific needs.
Instrument Drivers NI provides instrument drivers to configure, customize, and implement your instrument control applications. TSM has native support for multiple NI instrument drivers. You can integrate other NI or third-party drivers into the multisite pin map by using custom instruments. You can download TSM custom instruments for more drivers from the NI STS Technical Support Community on ni.com. You can work directly with NI services personnel contracted on your project or contact stssupport@ni.com to request to be added to the NI STS Technical Support Community.
Note The NI TestStand 2016 Semiconductor Module natively supports NI digital pattern instruments that use the NI-Digital Pattern Driver and legacy digital waveform instruments that use the NI-HSDIO driver, such as the PXIe-6556. Use the TSM Code Module API that corresponds to the type of digital instrument the test system includes.
Soft Front Panels Most NI modular instruments include soft front panels (SFP) to allow you to quickly configure, troubleshoot, or debug your instrument or DUT. Launch the soft front panels from MAX by selecting Tools » Soft Front Panels. TSM also provides tools to create custom debug panels in LabVIEW or C#. You can launch custom debug panels when debugging a test program, and you can use them to configure and control multiple instrument drivers.

You can also use InstrumentStudio, a software-based front panel application, to monitor, control, and record measurements from supported devices.

Before you create a custom debug panel, search the NI STS Technical Support Community on ni.com for an existing one. You can work directly with NI services personnel contracted on your project or contact stssupport@ni.com to request to be added to the NI STS Technical Support Community.

Offline Mode System Configuration File The Offline Mode system configuration file defines the instruments on a specific STS.
Instrument Model Library The Instrument Model Library is a collection of XML files that describe instruments. Instrument model description files include general information, details for connection components (channels, ports, resources), and configuration properties of the instrument and its resources.
Measurement and Automation Explorer The TSM pin map defines the instruments required for a test. Measurement & Automation Explorer (MAX) helps you configure the instrument connected to the system. For a test program to execute properly, the instrument names in the pin map must correspond with instrument names configured in the system.
MAX helps you complete the following tasks:
  • Configure NI hardware and software and third-party IVI hardware and software
  • View and edit instruments names in the system
  • Create and edit channels, tasks, interfaces, scales, and virtual instruments
  • Execute system diagnostics and run soft front panels
  • Update NI software

(Windows 8.1/8) Click the NI Launcher tile on the Start screen and select NI MAX to launch MAX. (Windows 7) Select Start » NI MAX to launch MAX.

Handler or Prober Integration The TSM handler/prober driver plug-in architecture enables you to write and enable handler/prober drivers. A handler/prober driver contains entry point sequences that TSM calls during execution to accomplish handler-related or prober-related tasks.

Use the NI Built-in Simulated Handler Driver to simulate handler functionality without requiring access to a real handler.

Custom handler/prober drivers are available from the NI STS Technical Support Community on ni.com. You can work directly with NI services personnel contracted on your project or contact stssupport@ni.com to request to be added to the NI STS Technical Support Community.

Part Average Testing Support Part average testing (PAT) is a method based on statistical analysis to identify and fail parts that have characteristics significantly outside the normal distribution of other parts in the same lot. TSM does not install a default implementation of part average testing. You must use the TSM PAT plug-in architecture to customize and perform part average testing with TSM. TSM PAT plug-ins include a required PAT callback sequence file and corresponding code modules. The PAT callback sequence file contains PAT entry point sequences that TSM calls during execution to accomplish part average testing.