| Advertisement |
|
|
ソフトエラーやラッチアップなどのSEE(single-event effects:シングルイベントエラー)は1980年代初頭から、市販の電子機器に発生していたが、今やCMOS技術の信頼性を根本から揺るがす重大な要因になりつつある。ソフトエラーにより、米Sun Microsystems社は90年代末にワークステーションをリコールした。また、米Cisco Systems社のルーターのメモリーやASICに不良が生じたことがEDN誌の取材で明らかになった。
SEEの影響は、CMOSが65nm、45 nmプロセスと微細化するのに伴い、いっそう顕著になるのではないかと見られている。幸い、軍用および航空宇宙用の開発設計者はいくつかの解決策を提案している。SEE問題を解決するために新しい設計ツールを提供するEDAベンダーも多い。SEEは、電子機器を一時的に誤動作させるばかりか、最悪の場合はシステムを停止させる可能性がある。したがって、SEEの問題については、目的とするアプリケーションについて対策手法とコストのトレードオフを考慮しながら、確実に解決に取り組む必要がある。
1970年代の中頃の研究者達が、軌道衛星において初めてSEEを観測して以来、SEEの問題は高度の低い所でさえも深刻さを増してきた。LSIプロセスの微細化が進み、ますます動作電圧が下がり、クロック周波数が上がってきたからである。SEEは当初、宇宙用あるいは航空用のデバイスにおいて発生するものとされていたが、その後メモリーLSIやFPGA、組み合わせ論理を使うデバイスなどにおいても大きくとり立たされるようになってきた。
これまでは、高速化や低消費電力化、高集積化という点でメモリーがSEE問題の先頭に立っていた。メモリーは、まるで炭坑に入れるカナリアのような役割になっていた、と米Silvaco社の主任エンジニアであるChristpher Nicklaw氏は言う。しかし、カナリアはもう鳴かない。「この問題は、軍用電子機器と市販の電子機器の要求が共存した珍しい一時期に起きた。いずれの分野でも解決しなければならない問題だという認識があった」とNicklaw氏は言う。
米Texas Instruments社のシリコン技術開発部部品信頼性グループのRobert Baumann氏は「数年前に、あるロジックICのフリップフロップ回路を6トランジスタ方式のSRAMセルと比較していたら、SEEに対する感度において5〜6桁の相違が生じたはずだ」と言う。Baumann氏はSEE研究の第一人者であり、米Sematech(Semiconductor Manufacturing Technology's)のJEDEC(Joint Electron Device Engineering Council)Standard JESD89標準化委員会の委員長でもある。
「65nmに向かうと、SRAMとフリップフロップ回路の感度はほとんど変わらないものになってくる」と語っている。
Baumann氏と並びSEEの第一人者である米Sandia 国立研究所放射効果部門のPaul Dodd氏は、「SEEは民生機器において頻繁に発生しているが、それらを他の故障であると見逃しているか、または全く気づかない設計者が多い」と主張する。「SEEはすべての人のパソコンで起こる可能性があるが、それが起きた時にそれがSEEとは気づかず、Microsoftを非難しようとする人も多い。ソフトウエアのバグによってこれらの問題が起きることもありうるが、その中には放射線の影響によるものがある」と同氏は述べる。しかし、その問題の大きさを定量化することがいまだにできていない。「それは企業が公にしたがるような内容ではないからだ」とLSIおよびEDA設計コンサルタントであるPallab Chatterjee氏は指摘する。
米Sun Microsystems社のSEE問題が明らかになった時、同社は窮地に立たされた。Sunのサーバーワークステーションは頻繁にリセットの必要が生じ、1000台をリコールするという厄介な事態を招いた。SEE問題に直面したのはSunだけではなかった。米Cisco System社でも問題は起きた。およそ20万米ドルで販売されていた同社のルーター製品「12000シリーズ」のラインカードがSEE障害を起こし、メモリーとASICの動作に不具合のあることが報告された。そのルーターのソフトエラー対策のためにはデバッグが必要であった。後にカードの障害はメモリーのパリティビットエラーあるいはASICのエラーであることが判明した。回復するためには2〜3分間かかるが再ロードを行う必要がある。調査資料によると、再ロードを行なえば、データは正常に戻る。
「TI社がこの問題に積極的に取り組んでいるのは、同社が在庫しているDSPが非常に広い範囲のアプリケーションに使われているからだ」とBaumann氏は言う。「同じDSP製品でも顧客によって用途は大きく変わる。あるDSP製品を飛行時の衝突回避レーダーに使う顧客もいれば、携帯電話機に使う顧客もいる」と例を挙げた。「製品を改良するのはコストが高くつく。改良する必要がなければ、誰もしたくはない。しかし、誰がどのようなアプリケーションで使っても大丈夫なように、十分に安全をみなければならない。少なくとも、最小限の信頼性は必要となる」。
SEEの問題は、放射線耐性のあるデバイスの設計者や、米International Rectifier社のような、絶対的信頼性が必要になる航空宇宙アプリケーション向けに何年もの間SEE対策の設計を行ってきた企業にとっては、さんざん取り組んできた課題である。SEEは1970年代後半には航空機向けなど、地上を飛行するアプリケーションにおいて起きる問題とされていたが、1980年代頃から、市販の電子機器でも発生するようになった。パッケージ材料から発生するアルファ粒子がSEEを引き起こし、まずDRAMに悪影響を及ぼした。プロセスの最適化により少なくなったが、それでもなおアルファ粒子はSEE発生要因のおよそ30%を占める、とBaumann氏は推定する。エネルギーが15eV(電子ボルト)以下の宇宙線から派生した熱中性子、あるいは中性子や陽子、ミューオンなどの地上で高エネルギーを持つ放射性粒子もまたSEEの原因となる(図1)。
 |
| 図1 中性子密度とSEEに遭遇する可能性は高度5万フィートで最大となる。高度3万フィートは商用の航空機にとって標準的な巡航高度であるが、LSI がSEEに遭遇する可能性は海面レベルに比べて300倍高い。 |
これらの粒子は、シリコンおよび酸素の原子核と反応して、それらを分解してしまい、電荷をもった重イオンを生成する。これが悪影響を与えるのだ、とBaumann氏は説明する。
SEE発生率の単位には不良率を表すFIT(failures in time)が使われる。1FITは1個のデバイスあたり109時間に1回の割合でSEEが発生することを示す。エレクトロマイグレーションのような典型的なハードエラー(修復できない永久的な故障のこと)の発生率は1〜50FITで、また全体的な不良率は200FITである。しかし、確認されないソフトエラー発生率はLSI1個当たり5万FITにもなり得る。ソフトエラーをもたらす放射線イベントである中性子の飽和量は、地理的な高度が高くなるにつれ増加する。Baumann氏によると、標準的な飛行高度である3万フィートではSEEに遭遇する確率は300倍に増加するという。
米Los Alamos研究所Neutron Science Center試験施設のSteve Wender氏によると、厚さ6インチの鉄材でデバイスの周りをシールドしても、FIT値は2桁しか改善されないという。SEEには軽いものから重いものまで、少なくとも5つのクラスが存在する。例えばSEEがおもちゃや携帯電話機に起きたとしてもそれが深刻な事態を招くことはなく、購買意欲を削ぐほどではない。しかし、それが一時的な不良でも許されない装置、例えばペースメーカーや電子制御方式のブレーキシステムなどで起きると大変だ。携帯機器でさえ、銀行口座間の振り込み・引き落としを行なう場合、3秒も続くと大事態を招く可能性がある(囲み記事の「SEEはどれほど悪影響を及ぼすか?」を参照)。
EDAの新興企業である米iRoC Technologies社マーケティング部部長のMichael Buehler-Garcia氏は、「業界がSoC(system-on-chip)設計に移行するにつれて、SEE問題は複雑化する」と指摘する。SoCの設計は通常、チップ上のメモリーやロジック、IP(intellectual property)、およびソフトウエアなど担当部門がそれぞれ分かれており、すべての分野を把握しているグループが存在しないためである。Los Alamos 研究所の研究者のBruce Takala氏はこの意見に賛同する。「内蔵SRAMやプロセッサなど、より多くの機能が盛り込まれるようになるとSEE発生率も高くなる」と言う。
米International Rectifier社の高信頼度製品事業部門担当で副社長のBel Lazar氏は、「SEEを防ぐには、比較的単純な設計であっても、まずそのプロセス要素や設計自身がどの程度SEEに対して敏感なのかを理解する必要がある」と言う。「DC-DCコンバータを設計する際には、使用する部品がSEE耐性を持っているかどうか、また部品を回路に組み込んだ際に回路として、あるいは全体の動きとして十分なSEE耐性を備えているかどうかに気を使わなければならない」と主張する。
SEE検出ツールの出現
米国の3大EDAベンダーである米Cadence社、米Synopsys社、米Mentor Graphics社は、SEEを検出するためのSpiceシミュレーションとその解析技術を提供しているが、SEEを明確にターゲットとしたツールはまだ製品化していない。この理由は、SEEが現状ではまだ大問題となっていないためか、あるいはSEE対策品が大きな収入源につながらないためであろう。
Synopsys社の科学者であるRohit Kapur氏によると、ソフトエラーの問題はEDAベンダーの顧客が遭遇する問題にまで至っていないという。このため、ソフトエラー対策への要求はまだきていない。Sysnopsys社はSEE対策に特化したツールはないものの、International
Rectifier社は現在、Synopsis社の子会社であるISE(Integrated Systems Engineering) 社のツールを使ってデバイスレベルのSEEシミュレーションを行なっている。「放射線がどのように作用しているかについて学ぶ必要はあるものの、ISEツールを使うとSEEをある程度シミュレーションすることができる」とInternational
Rectifier社の耐放射線・高信頼性シリコンR&DディレクタのMilt Boden氏は言う。「Spiceモデルのレベルで、一つの回路中の異なる複数ノードに電流パルスを送り、異なるノードがそれぞれどのように振舞うか、タイミングサイクルのいろいろな部分で調べる。この方法の難しいところは、どのようなパルスを送り込むかを知ることである」という。同社は現在その課題に取り組んでいるところだ。
コンサルタントのChatterjee氏は、「軍や航空宇宙用途に対して、EDAベンダーは自身のモデルとパルス強度などの許容スペックを提示することが多い。ちょうど米iRoC社のような新興企業のEDAベンダーがこれらのモデルを提供し始めたところだ。同社は厳密な放射線照射テストを市販のLSI向けに始め、さらにスタンダードセルやカスタムLSIに向けたソフトエラー検出/解析ツールを開発した。同社は多くのLSIベンダーに対して行ったSEEテストの結果を元に、ソフトエラーモデルを作った。米iRoC社のCTO(チーフ技術オフィサ)で共同創設者であるMichael
Nicolaidis氏は「LSIのSEEテストは、放射線照射装置を使い実験室で加速試験を行うことができる」と述べる。この時使う放射装置は中性子ビーム発生装置であり、米Los
Alamos 研究所や、カナダのTRIUMF(Tri Universities Meson Facility)研究所、スウエーデンのTSL(The
Svedberg Laboratory)と同じものである。
別のテスト方法として、極限環境下でリアルタイムに行なう試験がある。そのようなリアルタイムの試験設備の1つに、アルプス山脈の標高1万1000フィート以上にあるスイスInternational
Foundation High Altitude Research Stationがあり、中性子の密度は海面付近のレベルに比べ11倍にも及ぶ。逆に地下方向には、フランスとイタリアの間のアルプス山脈をまたぐFrejusトンネルの地下6000フィートにあるUnderground
Laboratory of Modane で極限状態での試験を行なうことができる。中性子密度は海面下10万フィートと同じくらい低いレベルである。
デバイスメーカーは開発期間の短縮が求められるほとんどのデバイスを加速テストにかける。この時、タングステンをコーティングしたターゲットに陽子を直接照射する。Los
Alamos 研究所のWender氏によれば、実験室で得られたスペクトラムの結果は、宇宙線に起因する空気中のスペクトラムとほぼ一致しているという。「当研究所はさまざまなテスト結果を確認してきた。使い始める前から故障するデバイスや、使い続けても全く問題を起こさないデバイスなど、さまざまなデータがある」という。その詳細は企業秘密としている。そのような実績をふまえてiRoC社は、放射線照射をシミュレーションできるツールや基礎モデルを提供している。ユーザーはデバイスの部分に及ぼすさまざまな角度や照射強度を考慮にいれてシミュレーションできる。同社のSoCFITフルチップ解析ツールは設計のどの部分がソフトエラーに弱いかを判定する(図2)。
 |
図2 ロジックに対する一般的な保護技術には、冗長(aとb)、シールド(c)、およびスキャン(d)がある。
出典:米iRoC Thechnologies社 |
TFITツールはSoCFITが問題を発見した後、問題領域の詳細なSpiceレベルの解析をする。これらのモデルは軍用・航空宇宙、市販機器に使われる。
米Silvaco International社は民生機器向けにSEE解析機能を備えたツールを提供する数少ないベンダーの1つである。Silvaco社は数年前、SEE解析機能をもったSpiceモデルを収容するSmartSpice回路シミュレータ製品を拡充した。また、同社は最近DARPA(Defense
Advanced Research Projects Agency:国防総省高等研究計画局)と契約を結んだ。これにより、ソフトエラーレートなどの放射線効果の影響を解析できるHarmony
AMSミックストシグナルシミュレータの機能を強化する。そのツールは販売されているが、米Silvaco社の製品の中には契約した軍用ユーザーのみに提供しているものもある。
iRoC社とSilvaco社の他に、米Denali Software社もまた、ソフトエラー耐性があるCレベルのメモリーモデルを提供する。またEDAのベンチャー企業である米Alternative
System Concepts社はVirtual TMR(triple-modular-redundancy)ツールの開発に資金を投じて機能強化を図っている。
 |
| 表1 ロジック保護のトレードオフ |
また、プログラマブルロジックのベンダーも放射線耐性の高い設計を支援するツールを提供している。例えば、米Xilinx社はここ数年、TMRツールを提供している。それには、エラー検出/修正コードが装備されており、1ビットあるいは2ビットエラーに対してフラグを立て修正する。ただし、これ以上の多ビット修正はできない。
幸いなことに市販のツールも入手可能で、ユーザーの設計がSEE問題にあう危険にさらされているかどうか検出できる。SoC設計者は放射線対策技術やメモリー設計からいくつかの技術を持ってきて、それを修正できる。こういった技術には利害得失があり、ツール自体は高価である(表1)。
軍や航空宇宙の技術を転用
「ソフトエラーは速度の影響を受けやすい」と、米Sandia 国立研究所の Dodd氏は言う。速度が速いほど、ソフトエラーや過渡パルスの影響を受けやすくなる。SEE、特にソフトエラー問題の対策を打つために、軍事・航空宇宙事業に関わる設計者がこれまでによく使っていた手段は、LSIのクロックを十分遅くするというものだ。こうすると、SEEを起こす偽のパルスが入ってきてもクロックは対応できない。放射線耐性を持たせるために今でも使われている軍・宇宙航空用の主要な手段として、SRAM内部に相互結合したフィードバック抵抗を加える方法がある。この方法では、「標準の6トランジスタ方式SRAMのセルのソース間にRC遅延を追加する」とDodd氏はいう。「基本的には、フィードバックの速度を下げることになる。それを十分に遅くすると、システムは過渡的な偽のパルスによる誤動作から復帰する。これは、信号が他方のトランジスタにフィードバックされ、エラー状態にロックされるのに時間がかかるからである」(同氏)。この技術を採用すると、全体のシステム性能が下がるため、民生機器用アプリケーションには適用できない場合が多い。
軍事・航空宇宙産業用途における新しい傾向は、設計段階から対策を施すことである。「速度曲線から遅れれば遅れるほど、地上で使われているものを使用したいと考えるようになる」とDodd氏は言う。この技術を使えば従来の耐放射線技術の設計者は賞賛するであろう。「プロセス技術を使ってクロック速度を遅くするのではなく、回路自身の中に冗長回路を設けることで本質的に強くなる」と同氏は述べる。冗長回路を内蔵するということは、同じ機能を得るためにトランジスタ数を増やすという意味である。6トランジスタのSRAMセルは、10〜12個のトランジスタのセルになり、そのためコストが上がり、レイテンシもチップ面積も増えてしまう。
米TI社のBaumann氏は、航空宇宙用のLSIには、通常TMRを使うと言う。「TMRはほとんどの市販機器には使われていない。重要なことは、どのロジックデバイスによりSEE耐性を求めるか、またどのロジックがそれほどSEE耐性を気にしなくて良いかを判断することである」と言う。例えば、重要なアドレスを保持するレジスタファイルは強くしたいと思うだろう。更に、分岐命令は普通使いたくないだろう。もしSEEがヒットしたら、CPUサイクル数を上げなければならないからだ。「最先端の微細なLSIでは、SEE耐性の高い設計法を用いても、回路と冗長回路との間を十分に開ける必要がある。配線は恐ろしく大変になる。その間を広く離せば離すほど、いっそう長い配線が必要となり、動作速度は遅くなる」とDodd氏は言う。
設計者は高耐性の設計法を好む。ファンドリに放射線耐性を強く要求しなくても良いからである。ただし、回路自身の耐性を上げる必要がある。「設計に放射線耐性を作り込む技術には限界がある、デュアルノードの反転が起こり始めると、追加した冗長性が使えなくなってしまうからである」とDodd氏は言う。設計者がデュアルノードの冗長性技術を使えなくなるというわけではなく、システムが複雑化してしまうのだと同氏は説明する。耐放射線設計によりSEE耐性を高めようとする場合は、設計者は性能、面積、電力消費のトレードオフを考慮する必要がある。「我々にとって、20%クロック速度を高速化し、低価格化する次世代の製品を作り出す市販メーカーの言うことより、宇宙放射線効果で実績を上げてきたメーカーの言うことを聞く方が簡単だ」(同氏)。 信頼性と性能はトレードオフの関係にあり、設計者はどちらを優先すべきか困難な選択をせまられるであろうという。
市販チップで対策する
メモリーや市販LSIメーカーは異なった方法でSEE問題の対策、誤り検出訂正を施している。それは軍事・航空宇宙用途をターゲットとするメーカーから得た方法である。エラー検出の際に、ユーザーはパリティビットを追加し、符号化および復号化を行う。あるデータワードの中にエラーが起こると、パリティビットによってエラーが検出される。例えば、1ビットは1,1と読み取り、エラーが起こらない場合、エラー修正ビットは1,1と読み取る。もし、1ビット反転が起こると、1ビットの読取り値は0,1または1,0になる。そして、両方のビットが1,1から0,0に変化すると、ダブルエラーが起きてしまう。システムは、このダブルエラーを検出できない。それは0,0が正しいデータ状態であると認識されるためである。Baumann氏は、この方法には2つの欠点があると指摘する。それはまず、エラーの検出はできてもエラーを修正できないこと、そして2つの信号間にパリティが存在する場合はダブルエラーが起きているかどうかを検出できないことである。
欠点を克服するためにBaumann氏が指摘するのは、誤り訂正符号ECC(error-correction code)を使って修正能力を上げることである(図3)。
 |
図3 ECC(a、b、およびc)、シールディング(d)、およびエラー管理(e)がメモリをSEEから保護する。
出典:米iRoC Thechnologies社 |
この方法では、エラー検出のために、さらに余分のビットを追加する。標準的な方法では、合計3ビットを用いる。つまり1,1,1または0,0,0とする。エラーが起きると1,1,0や1,0,1など、どのように変化しても、不具合を検出できる。この方法は1ビットエラーを分離することができるので、ECCを使って修正できる。このシステムでは、2ビットエラーを修正できないが、検出はできる。ただし、ECCといえども0,0,0から1,1,1に変化するような多ビットエラーは検出できない(表2)。
 |
| 表2 ロジック保護のトレードオフ |
ハミングコードのようなECCもまた厄介である。それは、各情報ワードには余分の1バイト、つまり8ビットを追加しなければならないからである。もし設計者が大きいメモリーアレイを作るなら、この方法は受け入れられるとBaumann氏はいう。しかし、SoCに小さいSRAMブロックの集合体がある場合、面積が50%も増加してしまう。米iRoC社のNicolaidis氏は次のように述べる。「1個の中性子が衝突すると、複数の二次粒子、多くはイオンとして放射し、複数のメモリーセルに衝突する。衝突を受けたメモリーセルが同じメモリーワードに属しているとすると、修正用のコードでそれを修復することはできない」。Bauman氏によると、複数のビットエラーが起こる場合、メモリーセル同士の間隔を開けようとする設計者が多い。そうすることでエラービットをよく同定できるようになるという。しかし、より微細なプロセスの場合、複数のビット間のスペースが近すぎて、1つのエラーで同時に複数ビットエラーをもたらすことが起こり得る。最近では稀であるが、3ビットのスイッチは、メモリーやFPGAが採用しているほとんどのエラー訂正・検出コードで役に立たない場合があるとNicolaidis氏は言う。行や列の多重化には4、8、あるいは16ビットものスペーシングを使うことができる。したがって、ダブルビットやトリプルビット不良を、基本的には0に減らすことができる。
SEEに対して耐性設計を行なうには、材料の選択も重要であると専門家は指摘する。軍事・航空宇宙用のデバイスメーカーのほとんどは、SEEを防ぐプロセス技術を採用していると主張する。Baumann氏は、「市販の材料でもSEE耐性設計の役に立つものがある」と言う。例えば、伊仏合弁のSTMicroelectronics社はSEEに対する耐性を持たせるために、SRAMに大容量のキャパシタを使用する。「より多くの電荷を蓄えれば、より大きな信号となる。したがって、セルを反転させるためには、より多量の放射線が必要となる」とBaumann氏は言う。SOI(silicon-on-insulator)技術もまた、SEE耐性に貢献し、およそ5倍を超える耐性を作り出す。「もし他の理由からSOIを使っているのなら、付加価値が加わるが、ソフトエラーに対処するためだけにSOIに切り替えるのは、コストが掛かりすぎる。もしエラー訂正を適切に行えば、4桁もの改善を実現できる」とBaumann氏は言う。
|