Powered by SmartDoc

測定器,FPGAボード,LSIテスタへの対応

Advantest社EVA100での利用法

ターゲットをEVA100とする.moduleで指定した"モジュール名_EVA100"ディレクトリに下記のファイルが生成される.

DM64_FunctionalTest.ateliertext
メインファイル
seq/DM64_FunctionalTest.seq
Functional TestとDCPMUを含むテストシーケンスファイル
cond/DM64_FunctionalTest.cond
電圧やタイミングを指定するファイル
connection/DM64_FunctionalTest_connection.csv
信号名とピンの対応を取るファイル
pattern/MainPattern.csv
波形ファイル

複数チップ同時測定への対応

同じチップを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で作成したベクタを印加して正しい出力が出るかを確認するテストである.

MU300EM(em300)での利用法

ターゲットをmu300, em300とすると, MMS社のPower Medusa MU300EMの制御ソフトウエアであるEVA III用の各種設定ファイル,入力ベクタ,期待値を生成することができる. targetをmu300, em300とした場合の生成ファイルは次の通りである.

"モジュール名".ini
一括設定用の設定ファイル
"モジュール名"_in.txt
テストパターン(入力値)
"モジュール名"_io.txt
双方向制御パターン
"モジュール名"_header.txt
保存用ヘッダ
"モジュール名"_out.txt
入力値と出力の期待値

双方向ピンがない場合は,双方向制御パターン(io.txt)をMU300EMの制御ソフトウエア(EVAII)に読み込むとエラーとなる.双方向ピンがない場合は,io.txtは読み込んではならない.

Hilevel社Griffinでの利用法

ターゲットをhilevelもしくはhilevelprgとすると, Hilevel社Griffin用の各種設定ファイルを生成することができる. hilevelprgとすると,同じベクタが多数続く場合に, program機能を用いてベクタを短くするために, $LXが.vecファイルに出力される.ただし, $LXが使えるのは, Compatibleモードのみである. Nativeモード用には,うまく変換できない.

デフォルトの設定では,次の二つのファイルを生成する.

"モジュール名"_pinlist.txt
pinlistファイル
"モジュール名".vec
ベクターファイル

.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サブルーチン]に記載しているのでそちらを参照する.

Altera FPGAへの対応

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)ファイルを生成することができる.