プログラマ、テスター、SE、PMなど、いろいろやってるオヤジです。

Excel VBA マスターへの道(2) -数学の公式って仕事で使えるじゃん!

»

 「こんな公式、覚えて何の役に立つんだよっ!」

 学生のころ、こう言ったことがある人は少なくないだろう。私もたぶん言ったことがある。ところが。

半導体の計算をExcel VBA で

前回のコラムの続きです)

 高さ検査装置用の変換プログラムを作ったあと、電子デバイスの工場で新たな課題をキツネ課長から与えられた。

「半導体ウェハ内にチップをいくつ配置できるか計算するプログラムを作れ」

 半導体ウェハというのはシリコンでできた円盤。当時は直径12cmや15cmが主流だった。その上にスパッタリング、露光、エッチング、メッキなどの工程を繰り返して細か~い電子回路を作る。最後に切って10mmX10mmとか7mmX20mmとかの四角いチップにする。

 さて、直径Lmmの半導体ウェハから縦Xmm横Ymmの四角いチップがいくつ取れるだろうか?

 そこで必要になるのは円の方程式。xの二乗+yの二乗=半径の二乗という式。高校の数学で習った以来、学生を卒業してからは使うこともないだろうと思っていた数学の公式を仕事で使うこととなった。

chip_counter2_640.jpg

 円の中に四角形がいくつ入るか。それを求めるには円の座標を方程式で書く。そこに四角形を方眼紙のように並べていって、4つの頂点が全部円内に入れば有効としてカウントする。もっとも、全部の円と頂点に対して計算しなくても、円の右上1/4に対して四角形の右上の頂点が入るかを調べて4倍すればいいのであるが。まるで数学の応用問題を解くみたいだ。

Excel ならではの遊び心も

 これもExcel VBA でプログラミングした。Excel で作ってよかったことがある。算出したチップ数を表示するだけでなく、入力したチップサイズに合わせてExcel のセルのサイズを変更して絵を描いて見せたこと。絵が必要だったわけではないけど、ただの数字だけの出力じゃあ面白味が無いので遊び心で描かせてみたのだった。

chip_counter1_640.jpg

キノコ=球 の体積計算も

 次に、メッキ液の体積を求めるプログラムも作った。半導体ウェハ上にレジストという膜を塗ってから電極部分に穴を開ける。そこに半田をメッキでつけてからレジスト膜を剥がすと半田がキノコ上に残る。そして熱をかけると半田は一度溶けて球状になって固まる。直径Lミクロンの球にするにはキノコの大きさをどれくらいにしておけばいいのか? それをシミュレーションしろというものだ。

 まずは球の体積の公式や積分で体積を計算しなくてはいけない。これも高校の数学だ。私は実家に戻ったついでに押し入れから数学の参考書を引っ張り出してきた。

 やっぱり高校の数学ってエンジニアには必要なのね、と実感したのであった。ExcelVBAに限った話ではなかったけれど。Excel VBAマスターへの道はまだ始まったばかりであった。(第3話につづく)

 あべっかんでした。

 関連記事:「数学の公式が役に立った -勉強は仕事に役立つ」

Comment(3)

コメント

仲澤@失業者

円の公式より三角関数の方が個人的には好みかもしれません。
ところで、チップ形状にもよりますが、
「円の中心にチップの端が来なくてよい」
という条件が許されれば、とれるチップ数が増える可能性がありますね、
もちっと複雑な計算になりますが(笑い)。

abekkan

>仲澤さん

おっしゃる通り、円の中心にチップの端が来なくてもよいので、取れるチップ数が増える可能性があります。さすが仲澤さん、よく気づきましたね!

実は下の方の図の上の方に「レイアウト1:ウェハ中心にチップの角を置く場合」と書いてあります。このほかに、ウェハ中心にチップの中心を置く場合と、ウェア中心にチップの縦辺の中心を置く場合、と同横辺の4種類で計算して最大値を取るプログラムにしていました。

こういったプログラミングはパズルみたいで楽しいですね!

abekkan

>仲澤さん

おっしゃる通り、円の中心にチップの端が来なくてもよいので、取れるチップ数が増える可能性があります。さすが仲澤さん、よく気づきましたね!

実は下の方の図の上の方に「レイアウト1:ウェハ中心にチップの角を置く場合」と書いてあります。このほかに、ウェハ中心にチップの中心を置く場合と、ウェア中心にチップの縦辺の中心を置く場合、と同横辺の4種類で計算して最大値を取るプログラムにしていました。

こういったプログラミングはパズルみたいで楽しいですね!

コメントを投稿する