Skip to content

Releases: ni/semi-test-library-dotnet

v24.5.1

31 Oct 10:11
e945645
Compare
Choose a tag to compare

Added

  • Data Abstraction
    • New Bitwise Math Operations Added PinSiteData<T>
      • ShiftLeft(int count)
        • Return Type: PinSiteData<T>
        • Description: Shifts the value to the left (<<) by the specified bit count, for each element, per site. The count must be positive. This method is supported only when the underlying data type of the PinSiteData<T> object, T, is an integer type.
      • ShiftRight(int count)
        • Return Type: PinSiteData<T>
        • Description: Shifts the value to the right (>>) by the specified bit count, for each element, per site. The count must be positive. This method is supported only when the underlying data type of the PinSiteData<T> object, T, is an integer type.
      • BitwiseAnd(TOther other | SiteData<TOther> other | PinSiteData<TOther> other)
        • Return Type: PinSiteData<T>
        • Description: Performs a bitwise AND (&) operation with either a scalar value, a SiteData object, another PinSiteData object, for each element across each site. This method is supported only when the underlying data type of the PinSiteData<T> object, T, is an integer type. Additionally, the type of the input value, TOther, can be either a scalar or an array, but the underlying type of the array must match that of the PinSiteData<T> object, T, and it cannot be of a greater number of dimension (i.e. TOther cannot be 2D when T is 1D).
      • BitwiseOr(TOther other | SiteData<TOther> other | PinSiteData<TOther> other)
        • Return Type: PinSiteData<T>
        • Description: Performs a bitwise OR (|) operation with either a scalar value, a SiteData object, another PinSiteData object, for each element across each site. This method is supported only when the underlying data type of the PinSiteData<T> object, T, is an integer type. Additionally, the type of the input value, TOther, can be either a scalar or an array, but the underlying type of the array must match that of the PinSiteData<T> object, T, and it cannot be of a greater number of dimension (i.e. TOther cannot be 2D when T is 1D).
      • BitwiseXor(TOther other | SiteData<TOther> other | PinSiteData<TOther> other)
        • Return Type: PinSiteData<T>
        • Description: Performs a bitwise XOR (^) operation with either a scalar value, a SiteData object, another PinSiteData object, for each element across each site. This method is supported only when the underlying data type of the PinSiteData<T> object, T, is an integer type. Additionally, the type of the input value, TOther, can be either a scalar or an array, but the underlying type of the array must match that of the PinSiteData<T> object, T, and it cannot be of a greater number of dimension (i.e. TOther cannot be 2D when T is 1D).
      • BitwiseComplement()
        • Return Type: PinSiteData<T>
        • Description: Gets the bitwise complement (~) of the original PinSiteData<T> object. This method is supported only when the underlying data type of the PinSiteData<T> object, T, is an integer type.
    • New Bitwise Math Operations Added SiteData<T>
      • ShiftLeft(int count)
        • Return Type: SiteData<T>
        • Description: Shifts the value to the left (<<) by the specified bit count, for each element, per site. The count must be positive. This method is supported only when the underlying data type of the SiteData<T> object, T, is an integer type.
      • ShiftRight(int count)
        • Return Type: SiteData<T>
        • Description: Shifts the value to the right (>>) by the specified bit count, for each element, per site. The count must be positive. This method is supported only when the underlying data type of the SiteData<T> object, T, is an integer type.
      • BitwiseAnd(TOther other | SiteData<TOther> other)
        • Return Type: SiteData<T>
        • Description: Performs a bitwise AND (&) operation with either a scalar value or another SiteData object, for each element across each site. This method is supported only when the underlying data type of the SiteData<T> object, T, is an integer type. Additionally, the type of the input value, TOther, can be either a scalar or an array, but the underlying type of the array must match that of the SiteData<T> object, T, and it cannot be of a greater number of dimension (i.e. TOther cannot be 2D when T is 1D).
      • BitwiseOr(TOther other | SiteData<TOther> other)
        • Return Type: SiteData<T>
        • Description: Performs a bitwise OR (|) operation with either a scalar value or another SiteData object, for each element across each site. This method is supported only when the underlying data type of the SiteData<T> object, T, is an integer type. Additionally, the type of the input value, TOther, can be either a scalar or an array, but the underlying type of the array must match that of the SiteData<T> object, T, and it cannot be of a greater number of dimension (i.e. TOther cannot be 2D when T is 1D).
      • BitwiseXor(TOther other | SiteData<TOther> other)
        • Return Type: SiteData<T>
        • Description: Performs a bitwise XOR (^) operation with either a scalar value or another SiteData object, for each element across each site. This method is supported only when the underlying data type of the SiteData<T> object, T, is an integer type. Additionally, the type of the input value, TOther, can be either a scalar or an array, but the underlying type of the array must match that of the SiteData<T> object, T, and it cannot be of a greater number of dimension (i.e. TOther cannot be 2D when T is 1D).
      • BitwiseComplement()
        • Return Type: SiteData<T>
        • Description: Gets the bitwise complement (~) of the original SiteData<T> object. This method is supported only when the underlying data type of the SiteData<T> object, T, is an integer type.
    • New Unary Math Operations added to PinSiteData<T>:
      • Max()
        • Return Type: SiteData<double>
        • Description: Gets the maximum value across pins for each site. Note that the maximum value may be repeated across multiple pins, use the MaxByPin method if this level of detail is required. Alternatively, you can use the MaxBySite method to calculate the maximum value across sites for each pin.
      • MaxByPin()
        • Return Type: Dictionary<int, (double, string[])>
          • Keys represent each site (int)
          • Values represent a tuple of max value (double) across pins, and an array of which pins have that max value (which could be one or more, string[]).
        • Description: Gets the maximum value across pins for each site, and returns both the maximum value and which pin(s) the maximum value was found on for each site. Note that the maximum value may be repeated across multiple pins.
      • MaxBySite()
        • Return Type: Dictionary<string, (double, int[])>
          • Keys represent each pin (string)
          • Values represent a tuple of max value (double) across sites, and an array of which sites have that max value (which could be one or more, int[]).
        • Description: Gets the maximum value across sites for each pin, and returns both the maximum value and which site(s) the maximum value was found on for each pin. Note that the maximum value may be repeated across multiple sites.
      • Min()
        • Return Type: SiteData<double>
        • Description: Gets the minimum value across pins for each site. Note that the minimum value may be repeated across multiple pins, use the MinByPin method if this level of detail is required. Alternatively, you can use the MinBySite method to calculate the minimum value across sites for each pin.
      • MinByPin()
        • Return Type: Dictionary<int, (double, string[])>
          • Keys represent each site (int)
          • Values represent a tuple of max value (double) across pins, and an array of which pins have that max value (which could be one or more, string[]).
        • Description: Gets the minimum value across pins for each site, and returns both the minimum value and which pin(s) the minimum value was found on for each site. Note that the minimum value may be repeated across multiple pins.
      • MinBySite()
        • Return Type: Dictionary<string, (double, int[])>
          • Keys represent each pin (string)
          • Values represent a tuple of max value (double) across sites, and an array of which sites have that max value (which could be one or more, int[]).
        • Description: Gets the minimum value across sites for each pin, and returns both the minimum value and which site(s) the minimum value was found on for each pin. Note that the minimum value may be repeated across multiple sites.
      • Mean()
        • Return Type: SiteData<double>
        • Description: Calculates the mean value across pins for each site, and returns the mean value for each site. Alternatively, you can use the MeanBySite method to calculate the mean value across sites for each pin.
      • MeanBySite()
        • Return Type: Dictionary<string, double>
          • Keys represent each pin (string)
          • Values represent the max value (double) across sites.
        • Description: Calculates the mean value across sites for each pin, and returns the site-to-site mean value for each pin.
    • New Unary Math Operations added to SiteData<T>:
      • Max()
        • Return Type: double
        • Description: Calculates the maximum value across sites.
      • Max(out int[] siteNumbers)
        • Return Type: double
        • Description: Gets the maximum value across sites and additionally passes out an array of which site(s) the maximum value was found. Note that the maximum val...
Read more

v24.5.0

08 Aug 15:07
9b0e746
Compare
Choose a tag to compare

About

This is the initial release of the Semiconductor Test Library. The attached release assets below include the Semiconductor Test Library NuGet package, the standalone output assembly files, and source code.

The Semiconductor Test Library simplifies programming on the NI Semiconductor Test System (STS) and enables users to develop test programs efficiently using C#/.NET.

Features

The Semiconductor Test Library includes the following high-level features:

  • Interfaces and classes—Abstract instrument sessions and encapsulate the necessary pin and site awareness.
  • Pin- and site-aware data types— Simplify instrument configuration and measurement results processing.
  • Extension methods—Abstract common, high-level instrument operations.
  • Parallelization methods—Abstract parallel for loops required to iterate over multiple instrument sessions regardless of how sessions map to pins or sites.
  • Publishing methods—Simplify results publishing and add support for the SiteData and PinSiteData types.
  • Utilities methods—Provide utility methods commonly required for writing test code.
  • TestStand steps—Perform common operations, such as setting up and closing instruments, powering up a DUT, or executing common tests.

Documentation

A complete set of documentation for the Semiconductor Test Library, including features and support instrument types, can be found here: https://ni.github.io/semi-test-library-dotnet

Software Requirements

The Semiconductor Test Library requires STS Software 24.5 or later and .NET Framework 4.8 or later.