半導体ウェーハの欠陥/分類パターンのクラスターを決定するにはどうすればよいですか?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />やあ、
最近 JMP 12 をインストールしました。
そうする主な理由の 1 つは、JMP 12 で導入された「クラスタリングの改善」を使用してデータ マイニング機能を向上させることでした。
私の基本的なニーズは、変動の原因を見つける目的で共通性分析を実行するために、ウェーハ パターンをグループに分割することです。
JMP 12 リリースノートに記載されているとおり:
「半導体やその他の産業では、ウェーハ欠陥パターンのクラスターを特定することが重要です。 これは、以前は、XY 座標を作成するために 1 つの変数を作成し、次にこの次元で分割し、クラスタリングし、クラスタをマージすることを意味していました。 今では、JMP はこれをワンステップで実現します。」
私がやりたいことの例を示す図があります。

このような分析を頻繁に実行する必要があります。 今週の例を以下に示します。

類似のパターンがいくつ存在し、各パターンに属するウェーハが何枚あるかを判断する必要がありますか?
誰かがそのような分析を行ったことがありますか?
どこかに優れたチュートリアル/ガイドはありますか?
これは半導体および MEM デバイスのメーカーにとって大きな関心事であると確信しています。
このケースは、今後の JMP Discovery Summit の有力な候補となる可能性があります。
すべてのアドバイスとご意見をお待ちしております。
- フィリップ
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?最も簡単な方法は何ですか「適切な」ダイの位置を表に記入しますか?
これよりももっと簡単な方法があると思います...
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Wafer Stacked.jmp" );
dt << Select Where( :Defects == 0 ) << Delete Rows;
xmin = -21;
ymin = -21;
xmax = 21;
ymax = 21;
dx= xmax-xmin;
dy= ymax-ymin;
nItems= (dx +1)*(dy + 1)-1;
tmp = New Table();
tmp<< Add Rows( nItems );
tmp: column1 << Data Type( Character ) << set name("Lot");
tmp << new column("Wafer");
tmp << new column("x", Set Each Value(xmin + Floor((row()-1)/dx)));
tmp << new column("y", Set Each Value(ymin +Mod((row()-1),dy)));
label= new column("label",Character, Set Each Value(Char(:x)||" "||Char(:y)));
tmp << new column("missing");
myEntries = tmp:label << get values();
entriesAsCols = tmp << Split(
Split By( :x, :y ),
Split( :missing ),
Group( :lot, :wafer ),
OutPut Table("split")
);
myMatrix = entriesAsCols << Join(
With( dt ),
Merge Same Name Columns,
Match Flag(0),
By Matching Columns( :Lot = :Lot, :Wafer=:Wafer ),
Drop multiples( 0, 1 ),
Include Nonmatches( 0, 1 ),
OutputTable("Matrix")
);
// Stack data table
// → Data Table( "Untitled 26" )
cols = Transform each ({col},As List( myEntries),Column(myMatrix,Char(col)));
myMatrixStacked = myMatrix << Stack(
columns(cols),
Source Label Column( "label" ),
Stacked Data Column( "Data" ),
"Non-stacked columns"n( Keep( :Lot, :Wafer ) ),
Output Table("stacked")
);
myMatrixStacked << new Column ("Defects", Set Each Value(.));
colX = myMatrixStacked << new column ("X_Die",Set Each Value(Num(Word(1,:label," "))));
colY = myMatrixStacked << new column ("Y_Die",Set Each Value(Num(Word(2,:label," "))));
floodedTable = dt << Join(
With( myMatrixStacked ),
Match flag(0),
Merge Same Name Columns,
By Matching Columns(
:Lot = :Lot, :Wafer = :Wafer, :X_Die = :X_Die, : Y_Die = :Y_Die
),
Include Nonmatches( 1, 1 ),
OutputTable("flooded")
);
floodedTable << Recode Column(
dt:Defects,
{Map Value( _rcOrig, {., 0}, Unmatched( _rcNow ) )},
Target Column( :Defects )
);
CLose(dt,myMatrix,entriesAsCols,myMatrixStacked, noSave);Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?やあ@ジェリー・クーパー、
測定設定の「失敗時に停止」により、値が失われます。 つまり、欠損値があるということです。
この問題を解決するために「欠損値の代入」を使用します。 返信ありがとうございます!!
もう一つの質問: ヒートマップについてです。 どのように計算または正規化されますか?
列/変数の最小値/最大値 = 範囲?
そしてその範囲内で特定の値の色が割り当てられるのでしょうか?
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?やあ@グリーンホーン、
データを見ずに確実に知ることは困難ですが、発生しているエラーは、不完全なウェーハ マップをスタックしようとしたり、異なるレイアウトのウェーハをスタックしようとした結果である可能性があると考えられます。 データに欠陥のあるダイ (およびその位置) のみが含まれている場合は、各ウェーハの「良好な」ダイの位置をテーブルに記入し、それらが欠陥ではないことを示す、つまり、「欠陥」列に 0 を入力する必要があります。 これは難しく聞こえるかもしれませんが、ウェーハ マップの考えられるすべてのダイの位置を含むテーブルを作成した後、結合を使用して簡単に実行できます。このアプローチは、各ウェーハが同じレイアウトを持つことを前提としています。
このプラットフォームを使用して異なるレイアウトのウェーハを比較しようとすると、かなりのデータ操作と創造性が必要になります。
可能であれば、データを投稿していただくと、より最終的な方針を決定するのに役立ちます。
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?こんにちは、マイクさん
ウェハースタック方式を試してみたいと思います。 ただし、「非欠損データが足りない」という問題が発生します。
それは全く分かりません。 私のデータとサンプルデータ「wafer stacked.jmp」を比較してみました。
原則として何も違いはありません。
他に既知の問題はありますか?
@マーティンデメル
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?Michael さん、包括的な回答をありがとうございました。
空間探索を楽しみにしています。
このトピックに費やした時間と労力に感謝します。
よろしくお願いします、
フィリップ
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?フィリップ、
やあ!わかってもらえてよかったです!これら 2 つの新しい質問については、さまざまなフィッティング方法の詳細が、JMP のインストールに付属の書籍で詳しく説明されています。あなたが欲しいのは「多変量手法」の本です。これは、[ヘルプ] > [書籍] > [多変量メソッド] にあります。フィッティング方法の詳細については、75 ページ以降の「階層クラスタリングの統計の詳細」セクションを参照してください。
空間コンポーネントに関する 2 番目の質問です。 数値は、分析によって見つかった潜在的な空間コンポーネントの数です (この時点ですでにいくつかの予備作業が行われています)。
- 属性は、セットアップ ダイアログの属性フィールドで提供される変数の特定の組み合わせです。この場合、(X,Y) 座標ペアによって定義されるように、個々のダイが死にます。
- アングル、パイくさび形または半球形を探します(つまり、めっき電極などとの接続不良により、ウェーハの半分が Cu ノジュールで装飾されます)。
- 半径、円CMP でのリング スクラッチ、またはシャワー ヘッド蒸着をセットアップした CVD ベースのパターンなどを探します。
- スジ、角度同じ角度の線状の特徴 (つまり、欠陥のあるマランゴニ乾燥セットアップからの縞) に見えます。
- ストリーク、ポジション空間的に同様の位置を持つ縞を探します。
この「空間」ダイアログが表示されたときに提供されるデータ テーブルで、各フィーチャがどのように見えるかを確認できます。ダイアログ内の各変数のハフ変換が、各機能に関するその他の情報とともに表示されます。ダイアログ内の各特徴タイプの横にあるチェック ボックスをオンまたはオフにすることで、どれを含めるかを決定できます。つまり、この解析でリング スクラッチを心配しない場合は、ハフ変換に基づくそれらの特徴を持つ変数タイプのチェックを外します。情報 - おそらく半径、円。
空間ダイアログでの重み付けは、まさにその名の通り、クラスタリング分析における各変数タイプの重要性を重み付けします。考慮する必要があるものの、特定のフィーチャ タイプほど重要ではない場合は、その重要性を他のフィーチャ タイプよりも低くすることができます。
設定に関する最後の質問については、ハフ変換で表示される内容、ダイアログ (各特徴タイプの数)、およびラインについて知っていることに基づいて設定を行います。ラインに縞模様の問題の影響を受けている材料がまだあることがわかっている場合は、ステーキの重量を減らすことが賢明かもしれません。おそらく再発を監視したいと思っているでしょうが、すでに知っていることについて後を追ったくないでしょう。 縞模様がまったく気にならない場合は、縞模様を完全にオフにしてください。このタイプのことに関する私の基本的な推奨事項は、数値的または状況的なデータが得られるまでは、デフォルトを使用することです。
一番、
M
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?こんにちはマイケル、
ご返答ありがとうございます。 当時、私は Defect Count 列を 1 つだけ使用していました。
JMP を再起動すると、断続的なアラーム メッセージが表示されなくなりました。
ご指示に従って分析を実行することができました。 以下の例を参照してください。

この機能に関するドキュメントが「少し軽い」ため、Ward をいつ使用するかを説明していただけないかと思いました。 平均、 .. オプションをすべて完了しますか?

また、空間コンポーネントの数と重みの重要性について説明できますか?

入手したウェハーマップのタイプを表示するとき (上記を参照)、これらのコンポーネント設定に関する推奨事項はありますか?
- フィリップ
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?フィリップ、
それは全く別の問題です。データセットについてもう少し詳しく教えていただけますか?匿名化されたデータを投稿してみてはいかがでしょうか?おそらく、データをサブグループに分割しすぎていることが考えられます。これは、非常に広い (列数が多い) ものの、浅い (数行) データ セットがある場合に起こりました。半導体欠陥データ(あなたが提供した非JMPマップなど)を作成している場合、表示されているエラーは、潜在的な原因となるクラスターが多すぎることによるものだと私は確信しています。詳細を教えていただけますか?
一番、
M
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?カールさん、ご意見ありがとうございます。
よろしくお願いします、
フィリップ
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?ありがとうケビン、
素晴らしくて有益な記事です。
まさに私がやりたいタイプの仕事です。
残念ながらテクニックは共有されていません
よろしくお願いします、
フィリップ
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?こんにちはマイケル、
ご意見いただきありがとうございました。
私はあなたが教えてくれた通りに分析をしようと試み、何度かうまくいきました。
ただし、以下のようなアラーム メッセージが頻繁に表示され、分析が突然中断されてしまいます。 。

これの原因は何か考えられますか?
データ型に制限はありますか?
しかし、それは非常に有望に見えるので、評価/調査を続けます。
このテクニックに関するさらなるドキュメントはありますか?
よろしくお願いします、
フィリップ
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?うん... これは 12 の素晴らしい機能ですが、ドキュメントでは少し説明が足りません。(クラスターのウェーハマップを使用した) 基本的な使用方法は次のとおりです (これを行うには、カウント列 (つまり、ダイ内の欠陥) と、対象の構造 (つまり、ダイの位置) の xy 座標が必要であることに注意してください。仕事。):
- JMP12 では、[分析] > [多変量手法] > [クラスタリング] に移動します。
- 欠陥数を含むデータの列を Y に入力します。
- ダイアログの左下隅にある「通常どおりデータ」というドロップダウンを選択します。このドロップダウン メニューから [データはスタックされている] を選択します。
- ドロップダウン リストの下にある [空間メジャーの追加] をオンにします ([データはスタックされている] を選択すると表示されます)。
- 対象の構造の x 座標と y 座標をダイアログの属性 ID 領域に追加します。
- オブジェクト ID 領域にウェーハ ID を追加します (つまり、ロット ID、ウェーハ ID、スロット ID など、またはこれらの組み合わせ)。
- 「OK」をクリックします。
- 次のダイアログでは、分析内のさまざまな空間コンポーネントの重み付けを調整できます。(今のところはデフォルトのままでいいと思います)
- 「OK」をクリックします。
- レポートにはダンドログラムが表示され、考慮するクラスターの数を調整できます。 これは、樹状図の X 軸にある小さなひし形を使用して調整できます。
- クラスターをウェーハ マップとして表示するには、レポート上部の赤い矢印の下から「Cluster Summary」を選択します。レポートでは、式列の画像としてクラスターを含むデータ テーブルも出力されます。
お役に立てば幸いです!
一番、
M
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?2014 年にも同様のテーマに関するプレゼンテーションが行われました。これをチェックしてみると、役立つことがわかります。完全な答えはありませんが、正しい道に進むことができるかどうかを確認できます。これは、並べ替えの空間パターンを調べるように設計されています。
JSLによる半導体ウェーハの空間パターン分類
-カール
Re: 半導体ウェーハの欠陥/ソートパターンのクラスターを決定するにはどうすればよいですか?こんにちは、フィリップ!
あなたは正しいです;この問題は、これまでも、現在も、そして今後も半導体デバイスメーカーにとって大きな関心事です。たとえば、SEMATECH は 1999 年に空間統計に関する統計手法シンポジウム全体を後援しました。私は、半導体の空間統計に特化した優れたチュートリアルやガイドを知りません。これは、理論的に正当化され、適切に機能するシステムが所有者に与える競争上の優位性が部分的に原因であると推測しています。その業界では知的財産が高く評価されています。
おそらく、この JMP Discovery 2014 プレゼンテーションに興味があるでしょう。 https://community.jmp.com/servlet/JiveServlet/download/6695-5-69366/Semiconductor%20Wafer%20Spatial%20Pattern%20Classification%20With%20JSL%20%E2%80%93%20JMP%20Discovery%20Summit% 202014.pdf
スタートレックの各エピソードの冒頭でこう言われます: 宇宙は本当には最後の辺境!幸運を!