將Per-Site Data發送到TestStand Semiconductor Module中的Code Modules

更新 Jan 20, 2025

環境

軟體

  • TestStand
  • TestStand Semiconductor Module

此文件介紹如何使用 Semiconductor Action 或 Semiconductor Multi Test steps中的 Per-Site Inputs tab,或使用 TSM Per-Site Data 將per-site data發送到使用 TestStand Semiconductor Module 的code modules。

在Semiconductor Action 或是 Semiconductor Multi Test steps中的Per-Site Inputs tab可用於界定per-site Input Parameters給code module。

TSM Per-Site Data可用於share data across code modules,無需涉及TestStand。

Per-Site Inputs Tab

  1. 在需要指定per-site data的 code module中選擇Per-Site Inputs tab。
  2. 將Pin 或Input Data Id(無需同時指定兩者)指定到要關聯到的per-site input。雖然Input Data Id是任意的,但它必須在 TestStand 和code module裡保持一致。
  3. 提供Data Source expression 以決定numeric, boolean 或是string值(arrays是不兼容的)。
  4. 使用 Get Input Data VI I檢索 code module 中的per-site value。Pin 或Input Data Id 將呈現相同的結果。
 

TSM Per-Site Data

  1. 創建一個code module並添加一個Set Site Data VI。
  2. 去定義有關聯到數據的Data Id 。Data Id 是任意的,但它必須在要存取特定 per-site data的任何code module中維持一致。
  3. 編寫一個一維array,使每個site都有一個值,或者編寫一個二維array,使每個site都有一列數值。per-site data被編寫為variant,因此您還可以根據需要來使用其他復雜的數據類型。
  4. 在需要存取數據的code module 上添加Get Site Data VI。
  5. 指定Data Id並讀取variant data。
  6. 將variant data轉換為步驟 3 中使用的類型。

兩種方法都允許將唯一的per-site data 發送到code modules

Per-Site Inputs tab方法更易於使用,但擴充性不太好,因為它僅適用於您配置的特定step。 TSM Per-Site Data則更複雜,但數據源不一定由 TestStand 提供,因此它可以保持封裝在 TestStand Semiconductor Module Context 中,並允許任何code modules只要接收到 TestStand Semiconductor Module Context 作為輸入即可存取數據。

Per-Site Inputs Tab

下圖顯示了Test step中的Per-Site Inputs tab,該TestStand tab中在Data Source表達式中使用TestSockets.MyIndex屬性按per-site 配置發送來自TestValues array local variable的值。在本範例中,擁有4個值的array被指定成4 sites 系統上的數據來源。這邊在Pin 和Input Data Id 裡寫入相同的數據只是為了確認結果相同。

每個站點輸入選項卡.png


下圖展示了用Pin和Input Data Id方法來使用Get Input Data VI,兩者都將呈現相同的結果。  ID Data Out 在Semiconductor Module Context 中的每個site都有一個值。

獲取輸入數據VI.png


如果 code module per site 執行一次,則只有一個值,但如果它在由 two sites 組成的子系統上執行,則它將有兩個值,每個site一個。

TSM Per-Site Data

下圖顯示如何使用Set Site Data VI將 scalar value寫入任意PerSiteParam Data Id。如果連接2D array, Set Site Data VI 將為每個site寫入一列數據。

設置站點數據 VI.png



下圖顯示了Get Site Data VI 以及用於檢索數據的PerSiteParam Data Id 

獲取站點數據VI.png


如果是在每個site上獨立運行的step中執行code,則code module 的每個物件上的Site Data array將具有與相應site的數據相對應的單一個值。如果code是在由兩個site組成子系統的code module中執行,則Site Data array 將有兩個值,每個site一個。

如果您不知道site數量,可以使用 Get Site Numbers VI
來檢索系統中的site數量以及executing thread上的site編號。