
ユニバーサル テスト仕様言語( UTSL ) は、テスト仕様を実行可能なテスト コードに自動的に変換する形式でASICテストを記述するために使用されるプログラミング言語です。UTSL はプラットフォームに依存せず、特定のプラットフォーム用のコード生成インターフェイスが利用できる場合は、UTSL コードを特定の自動テスト装置(ATE) のプログラミング言語に変換できます。
歴史
ASICの複雑さが増すと、より複雑なテスト プログラムが必要になり、開発期間が長くなります。テスト プログラムを自動生成することで、このプロセスを簡素化し、高速化できます。Teradyne Inc. は Robert Bosch GmbH と共同で、テストプログラムを自動生成するためのコンセプトとツール チェーンを開発することに合意しました。[1] [2] [3]これを実現するには、テスターに依存しないプログラミング言語が必要でした。そこで、ATE 固有のプログラミング言語に変換できるテストの詳細な記述を可能にするプログラミング言語である UTSL が開発されました。ATE メーカーは、UTSL テスト記述を入力として使用し、最適なリソース マッピングとより優れた実践的なプログラム コードを使用して ATE 固有のテスト コードを生成するテスト プログラム ジェネレーターを提供する必要があります。[4] [5] [6]
ATE メーカーが UTSL を入力として使用できるテスト プログラム ジェネレーターを提供する限り、テスト プログラムをあるプラットフォームから別のプラットフォームに変換する面倒な作業を大幅に簡素化できます。言い換えると、特定のプラットフォーム用にテスト プログラムを書き直す作業を、UTSL ベースのテスト仕様からコードを自動的に生成することで置き換えることができます。この前提条件は、テストの UTSL 記述が、テスト手法の定義と必要なすべての入力と出力の記述とともに十分に詳細であることです。[4] [5] [6]
UTSLはプラットフォームに依存しないプログラミング言語であるため、エンジニアは、 ASICのテストが実行されるATEに関係なく、テスト仕様のテストを読み取り、分析し、修正することができます。UTSLはC#に基づいており、手続き型プログラミングが可能で、クラス指向です。クラスにはサブクラスが含まれ、そのサブクラスにもサブクラスがあります。[7]

UTSLには大量のコマンドとテスト関数が含まれています。また、「if/then/else」などのよく知られている高水準プログラミング言語構文要素も使用できます。[4]

デザイン
UTSL は C# のような言語で、テストはコード ブロックとして定義されます。電流を強制して電圧を測定する、またはその逆などの単純なテストは UTSL で記述でき、ATE (自動テスト装置) 固有のコード ジェネレーターを使用してテスト可能なコードに変換されます (図 1 を参照)。
UTSL では、計測精度を保証し、計測値が計測器のクランプ値を超えないようにするために、計測器の範囲とクランプをユーザーが設定できます。現在の UTSL 機能は、ASICテストに必要なテスト仕様の約 70% をカバーできます。残りの 30% については、以前と同じように、非公式な形式でコメントを書き込むオプションを使用できます。[4]
UTSLは次のような言語機能をサポートしています: [8]
フロー制御- 「if/then/else、select/case」 ループ- 「for、while、for each」 データ型- 「int、double、bool、string」 数値演算子- 「=、+、-、*、/、%、**、--、&、|、<<、>>」 論理演算子- 「==、<、>、>=、<=、!=、^」 配列- 「declare、resize、[] 演算子」
さらに、テスト用の専門クラスが追加されました。
Pin および PinList クラス- 「テスト ボードの詳細用」 TestEnvironment クラス- 「ウェーハ レベルと最終テスト用」 SerialPort および SerialDataFrame クラス- 「デバイスのシリアル通信用」 Evaluate クラス- 「結果をデータ ログに記録し、結果を定義された制限と比較します」
UTSLは浮動小数点数が使用される場合の単位とスケールもサポートしています。これは、値が「V、mV、uV、A、mA、uA」などとして返されるテストプログラムを記述する言語にとって不可欠です。 [1]

また、レジスタへの書き込みやレジスタからの読み取りを必要とするASICとのシリアル通信などのより複雑なテストも、UTSL を使用して実装できます。以下の例は、特定のトリム コードがレジスタに書き込まれ、そのトリム コードに基づいて内部レギュレータが電圧をステップインし、それが読み戻されるテストを示しています (図 2 を参照)。

さらに、UTSL を使用すると、ユーザーは計測器の状態 (ピンに接続されているか、ピンから切断されているか) を定義できます。
参考文献
- ^ ab A. Drappa、J. Vollmar、P. Huber、「自動車機器向け自動テストプログラム生成」、International Test Conference (ITC)、米国テキサス州オースティン、2010 年、論文 17.1。
- ^ 「自動車機器の 自動テストプログラム生成 - IEEE カンファレンス出版物」。doi :10.1109/TEST.2010.5699253。S2CID 21650481 。
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です - ^ A. Drappa、P. Huber、J. Vollmar、「Automatic Test Program Generation for Automotive Devices」、23. GI/GMM/ITG-Workshop Universität Passau、2011、81 ページ。
- ^ abcd R. Baumann、N. Nebel、「Die automatische Generierung von Testprogrammen im täglichen Einsatz」、27。GI/GMM/ITG ワークショップ、Bad Urach 2015、59 ページ。
- ^ ab R. Baumann および N. Nebel、「自動車デバイスの自動テストプログラム生成」、Teradyne ユーザーグループ (TUG) カンファレンス、フォートワース、テキサス州、2013 年。
- ^ ab R. Baumann および N. Nebel、「自動テスト プログラム生成を日常のワークフローに統合すると時間が節約されます」、Teradyne ユーザー グループ (TUG) カンファレンス、カリフォルニア州アナハイム、2014 年。
- ^ 「UTSL ユニバーサルテスト仕様言語」(PDF) . Vde.com . 2018年6月8日閲覧。
- ^ 「UTSL - ユニバーサルテスト仕様言語」Vde.com 。 2018年6月8日閲覧。
