ターゲットをEVA100とする.moduleで指定した"モジュール名_EVA100"ディレクトリに下記のファイルが生成される.
同じチップをDUT上に複数搭載して測定する場合には, -mオプションもしくは, multipleサブルーチンによりチップ数を指定する.その際には, channelfileにて指定するピンのテスタ側でのチャネル番号を与えるcsvファイルには,チップの数に対応したDUT番号を追加しておく.詳細は, 節[multipleサブルーチン]に記載しているのでそちらを参照する. -mオプションや,multipleサブルーチンを使っての複数のLSIの一括測定にも対応している.-mオプションを使って複数のLSIを同時に測定する場合は,sourceで設定する電源もコンマ区切りで複数チャネルにアサインする.4個の同時測定の場合は,次のとおりとする.一つの電源を複数のチップに供給する場合は,channelに同じ番号を書く.
if($ST::_multiple==4){ source "VCC1","channel=1,3,5,7","vh=$voltage","io"; channelfile "../eva100_testx4.csv"; }else{ source "VCC1","channel=1","vh=$voltage","io"; channelfile "../eva100_test.csv"; }
DCPMUとFunctional Test (DM64_FunctionalTest)の2つのシーケンスがFlow Editorを開くと出てくる.DCPMUはテスタのIOピンにDUTのピンが正常にコンタクトしているか確認するためのテストである.DM64_FunctionalTestはSTで作成したベクタを印加して正しい出力が出るかを確認するテストである.
ターゲットをmu300, em300とすると, MMS社のPower Medusa MU300EMの制御ソフトウエアであるEVA III用の各種設定ファイル,入力ベクタ,期待値を生成することができる. targetをmu300, em300とした場合の生成ファイルは次の通りである.
双方向ピンがない場合は,双方向制御パターン(io.txt)をMU300EMの制御ソフトウエア(EVAII)に読み込むとエラーとなる.双方向ピンがない場合は,io.txtは読み込んではならない.
ターゲットをhilevelもしくはhilevelprgとすると, Hilevel社Griffin用の各種設定ファイルを生成することができる. hilevelprgとすると,同じベクタが多数続く場合に, program機能を用いてベクタを短くするために, $LXが.vecファイルに出力される.ただし, $LXが使えるのは, Compatibleモードのみである. Nativeモード用には,うまく変換できない.
デフォルトの設定では,次の二つのファイルを生成する.
.vecファイルはASCII形式のベクターファイルであり,テスタに読み込む際には,バイナリデータに変換する必要がある.テスタが直接読み込めるバイナリ形式のデータも生成可能である.バイナリ形式でベクタを生成したい場合は,次の通りベクタ生成の際に, -bオプションをつける.
% ./test.st -t hilevel -b
生成されるベクターファイルは, "モジュール名".trnとなる.生成されるベクターファイルをしてしたい場合は, -vオプションを付加する.
% ./test.st -t hilevel -b -v testvec
とすると, testvec.trnが生成される.
sourceコマンドにより最低一つの電源を指定しなければならない.また, IOレベルを与える電源に必ず"io"オプションを付加しなければならない.
source "VDD","channel=1","io";
上記の設定により, VDDがテスタの電源1となり, VDDがIOを与える電圧となる. VDDの電圧は何も指定しなければ, levelコマンドで指定した値となる.電圧を指定する場合は, "vh"オプションにより指定する.
source "VDD","channel=1","vh=3","io";
Symphonyソフトウエアの都合上,外部電源を利用し,外部電源からIOの電圧を与える場合でも,内部電源の一つをIO電圧と同じに定義しなければならない.この場合は, pinlistを読み込み後, Symphony上で手動で電源電圧を切り替える.
起動時に-vオプションによりベクターファイルのヘッダ名を指定することができる. -v testとすると,ベクタファイル名はtest.vecとなる.
同じチップをDUT上に複数搭載して測定する場合には, -mオプションもしくは, multipleサブルーチンによりチップ数を指定する.その際には, channelfileにて指定するピンのテスタ側でのチャネル番号を与えるcsvファイルには,チップの数に対応したDUT番号を追加しておく.詳細は, 節[multipleサブルーチン]に記載しているのでそちらを参照する.
Aletra FPGAのパッケージのピン名を"loc="で記述することで,.qpfと.qsfファイルに記述するピン配置を生成することができる.さらに,MMS(三菱電機マイコン機器ソフトウェア)のPower Medusaの一部のボードに搭載されているFPGAでは,完全な.qsfを生成することができる.下記がその例である.mmsboardnameによりMMSのFPGAボード名を指定する.現在対応しているのはMU500と,MU200ECである.それ以外のFPGAも,ST_altera.pmを修正することで対応可能である.対応するFPGAの.qsfファイルから該当部分をコピーして貼り付けても構わない.
mmsboardname("MU500"); module "counter"; verilog_logfile "counter_st.log"; pin "CLK","clock","loc=B12"; pin "RSTB","input","defval=0","loc=AB20"; pin "OUT[5:0]","output","defval=X","loc=C8,F8,A9,B9,E9,F9";
例をexamples/counter_fpgaに置いている.
% make counter.qpf
とすると,counter.qpfとcounter.qsfを生成できる.Quarutus IIが導入されたコンピュータでは
# makeが導入されていない場合 % quartus_sh --flow compile counter.qpf # makeが導入されている場合 % make counter.sof
とすることで,SRAM Object File (SOF)ファイルを生成することができる.