Testing Multiple Sites in Parallel

An ECU test program might need to test multiple DUTs at the same time in parallel to improve tester efficiency. An ECU test program can test one DUT at a time on a single test site or test multiple DUTs at a time on multiple test sites.

To implement multisite testing in a test program, the test engineer must consider the following requirements:

  • The test program must be able to evaluate limits on multiple DUTs.
  • The test program might execute individual test sites differently depending on previous test results specific to the individual test sites.
  • The test program must be able to test DUTs on multiple sites simultaneously, even when multiple sites must simultaneously communicate with the same instrument.

ECU Software Toolkit Implementation

The TestStand Batch and Parallel process models support multisite testing by creating a test socket for running a copy of the TestStand sequence in a new execution thread. However, the default TestStand behavior does not account for difficulties that a test engineer might encounter when programming for hardware shared among multiple test sites.

When you execute tests using the Batch process model, use the Multisite Option drop-down menu on the Options tab of the ECU Multi Test or the ECU Action step to configure the following multisite execution options for the test:

  • One thread per subsystem—Execute tests for each subsystem in a separate thread. A subsystem is a set of sites and system resources on the tester that operate independently of other sites and resources, typically because the sites share the same instrument, which requires the test program to test the sites together in a single thread. The ECU Multi Test step or the ECU Action step identifies subsystems by using the pin map and the pins and relays shown in the PinMapContext Pins and Relays control.
  • One thread only—Execute tests for all sites in a single thread.
  • One thread per site—Execute tests for each site in a separate thread. Use this option only when the code module does not use hardware shared among multiple sites.

The multisite option you select determines how many copies of a called sequence to execute. The more called sequences that execute, the fewer sites the ECU Software Toolkit tests in any one called sequence.

Multisite Programming Techniques

When you create test programs to run on multiple sites, you must account for certain subsystem considerations, such as instrument resources, the relationship between the subsystem and the pin map, and using switches to share a channel between the same DUT pin on multiple sites.

Note You cannot use multiple ECU Multi Test steps or ECU Action steps configured to use multiple threads in While loops, in Do While loops, or in For loops that use the Custom Loop option when performing multisite testing. The steps report a run-time error in these situations. Use other types of loops instead, such as For loops that use the Fixed Number of Iterations option.