2017年4月11日火曜日

半導体とお風呂の関係とは・・・?

はじめに

タイトルをご覧になって、何のこと?と思われる方も多いと思います。しかし半導体業界でデバイス開発寄りの仕事をしていた方なら、あー、なるほど、と思われるかも知れません。

後ほど種明かしをしますので、ちょっとお待ちを。

先日、「モニターバーンインの知見をお持ちですか?」というお問い合わせをいただきました。ありがとうございます。

モニターバーンインという言葉は、モニターという言葉とバーンインという言葉を繋げたものですが、モニターはいいとして、バーンインっていう単語、これは一体何ですか?というお話から、今回のエントリーを始めていこうと思います。

ちゃんとお風呂と話がつながりますからご安心を。

バーンインとは?


バーンインというのは、半導体製品の製造工程の中の一つの工程です。私が入った会社では、バーンインのことをエージングと呼んでいましたが、それは業界全体ではあまり一般的ではなくて、社内の方言のようなものでした。

何をするのかというと、組立が終わったあとの製品を、高温高電圧環境の中で一定時間通電動作させるのです。具体的にどのぐらいの温度でどのぐらいの電圧をかけるのかはすでに覚えていませんが、最大絶対定格程度の温度、電圧です。

ただし、実動作と同じスピードで動かすわけではなく、1MHzやそれ以下の遅いスピードで動かす場合が多いです。

なんでそんなことするの? バーンインの必要性


最大絶対定格周辺の温度雰囲気の中で高電圧をかけるなんて、なんでそんなことするの?壊れたらどうするの?っていう感覚をお持ちになると思います。

ここで出てくるのが、寿命加速の考え方です。

寿命加速とは、製品を通常動作条件よりも過酷な条件で使用することで、劣化を早める、時間的に劣化を加速するという考え方です。半導体製品に限ったものではないらしく、Wikipediaで加速劣化試験というキーワードを検索すると、色々な工業製品にこの考え方が応用されているようです。

なぜ半導体の製造工程で寿命加速を適用するのか?ということになりますが、それを理解するためには、半導体製品の故障発生率と時間軸の関係を知る必要があります。

半導体製品の故障発生率と時間軸の関係は、概ね図のようなグラフに表されると言われています。

この図の中の左側、時間的に故障発生率が大きく下がっていく領域を初期故障期間、真ん中の低く水平に近い部分を偶発故障期間、曲線が大きく右肩上がりに立ちあがっていく領域を摩耗故障期間と呼んでいます。

初期故障期間は、シリコン結晶の欠陥や製造プロセスで発生した様々な要因による故障で、本来なら製造テストで全て落としたい不良です。故障の中には、時間の推移によって発生する進行性の故障というものがあるので、このような右下がりの曲線になります。

偶発故障期間は、使っているうちに壊れちゃった、という性格の故障で、本当なら0であって欲しいものですが、何かの原因で壊れるということはどんな工業製品にもあるので、0にするのはなかなか難しいものです。

摩耗故障期間は、製品が摩耗劣化し、寿命を迎えて故障する期間です。チップ内の配線に電流が流れる(電子が移動する)ことで配線材料の原子が移動してしまい、配線が痩せて断線してしまう現象(エレクトロマイグレーション)などが摩耗の原因として有名です。

こうやって故障発生率と時間の関係を見ると、初期故障期間で発生する故障は全て取り除かれた、偶発故障期間に入った製品が、故障発生が最も少ない、品質の安定した製品ということになります。したがって、半導体メーカーとしては、そのような製品を出荷したいと考えます。

そこで、組立終わった製品に寿命加速を適用し、初期故障期間で発生する故障を出荷前に全て発生させ、発生した不良は製造テストで取り除いて、初期故障期間に故障が発生しなかった製品だけを出荷します。

この、寿命加速を行うための工程がバーンイン工程です。製品を高温高電圧で動作させることで寿命を加速し、製品を偶発故障期間の状態にして出荷するのです。

ところで、この故障率曲線、お風呂のバスタブの断面の形に似ていると思いませんか?

この形状から、この故障率曲線のことを、バスタブ・カーブと呼んでいます。ここでやっと半導体製品とお風呂の関係が明らかになりましたね。しかしながら、日本語でこの曲線を湯船曲線と言ったりはしませんので、念のため。

なお、寿命加速の詳しい考え方については、サンケン電気様のホームページや東芝様のホームページに記載を見つけました。ご興味をお持ちの方はご覧になって下さい。

サンケン電気様:温度加速に関する説明
東芝様:温度加速に関する説明
東芝様:電圧加速に関する説明

実際のバーンイン条件は、これらの加速係数と製造プロセスの実力を元に定めるのだろうと思います。初期故障期間をどのぐらいに見るかが鍵ですよね。

どうやってやるの? バーンインの手法について


バーンインを適切に実施するには、高温、高電圧で内部の素子をできるだけ多く動かすことが必要です。特にCMOS回路では、定常状態ではMOSにリーク電流以外の動作電流が流れないので、動作させないと寿命加速ができません。

その動かし方は製品ごとに一品一様で、CPU搭載製品であれば内部を動かすためのプログラムが入ったROMをボード上に置き、定期的にリセットがかかるようにしてプログラムを動作させ続けるようなボードを作るのでしょうし、CPUのないロジック品ではLSI外部からLSIをなるべく沢山動かすような信号を入力できるボードを作ってあげることになると思います。

筆者が担当していたASIC分野では、少量多品種生産、しかも品種ごとに仕様が全く異なる、というビジネスモデルでした。これらの製品群に対して製品ごとにバーンインのためのボードを作っていたのでは、開発期間は長くなってしまいますし、コスト高になってしまいます。

そこで、パッケージごとに共通で使えるバーンインボードを作って、バーンインを実施していました。バーンインボードの回路は概ね概念図に示すような回路になっていて、1枚のボードに20〜40個のLSIを装着できるようになっていました。

バーンインの効果を確認する

試作では、バーンインを何段階か実施して、バーンイン前後で同じ選別条件による選別を行って、不良率の増加がなくなるバーンイン時間(寿命加速を行って、偶発故障期間となるのに要する時間)の評価を行います。

この評価によって、バーンイン工程が終わった時点で、初期故障期間に発生する故障は全て取り除くことが出来る、ということを確認することができます。

工場から出荷されたあとの信頼性を確保するために、今回書いたような考え方に基づいて初期故障を早い時点で取り除く、ということをしていますが、その考え方の基本となるのがバスタブ・カーブ、つまり「お風呂」の形をした曲線ということでした。

モニターバーンインとは?


最初に出て来たモニターバーンインと言う言葉にもどります。モニターバーンインとは、バーンイン中のデバイスの状態を知るために、デバイスの出力をモニターしながらバーンインを行うバーンイン方法です。

デバイスの出力をモニターする、と簡単に書きましたが、これが実は意外に難しいのです。

最近のモニター機能付きバーンイン装置を使えば、バーンインをしながらデバイスの出力を出力期待値と比較して、正しく動作しているかどうかを判定できるようですが、それにしてもLSIテスターでテストするように入力信号をたくさん入力したり、期待値比較を行うピンをたくさん使ったりすることはできないと思います。

そのような条件の中でどうやってモニターバーンインをやるか、ということになりますが、私自身、自分の製品でモニターバーンインをやったことはないので、思いつくことを少し書こうと思います。

CPU搭載製品で、外部バスにメモリーを置ける仕様の製品であれば、外部にプログラムROMを置いて内部の回路を動かすようなプログラムを入れて動かす、ということが、方式論としては一番手っ取り早いと思います。

プログラムが動き続けているうちは、どこかの汎用ポートが0/1とトグルし続けるようにして、CPUが暴走したら汎用ポートのトグルが止まって暴走がわかる、といった具合です。

CPUを搭載しない製品や、外部バスにメモリーを置けないような製品の場合は、スキャンテストモードを使ってスキャンで内部回路を強制的に動作させることが考えられると思います。

もしもBuild-In Self Test機能を持つ製品であれば、バーンインではSelf Testを実施すれば良いので、考え方としては一番簡単です。

具体的な方法論は、バーンインの設備や製品仕様によって変わってくるので、製品ごとに一品一様で検討することになると思います。

0 件のコメント:

コメントを投稿