イベントレポート

最先端プロセッサの信頼性技術をIBMとBroadcomが公表

会期:4月14日~18日(現地時間)

会場:米国カリフォルニア州モントレー Hyatt Regency Monterey

 プロセッサやメモリなどの半導体デバイスの信頼性に関する世界最大の国際会議「国際信頼性物理シンポジウム(IRPS:International Reliability Physics Symposium)」(IRPS 2013)が4月18日に無事、閉幕した。

 本レポートではプロセッサ関連で注目を集めた研究成果の発表をご紹介する。1件はIBMによる、メインフレーム「z196」用マイクロプロセッサの長期信頼性に関する研究(P-F Luほか、講演番号4A1)。もう1件はBroadcomによる、ネットワークプロセッサのソフトエラー対策に関する研究(B. Narasimhamほか、講演番号3D2)である。

メインフレーム用プロセッサの経年劣化を監視

 IBMが開発したメインフレーム「z196」用マイクロプロセッサは、4個のCPUコア、CPUコアごとの1次キャッシュSRAM(命令キャッシュ64KBとデータキャッシュ128KB)と2次キャッシュSRAM(1.5MB)、共有の3次キャッシュDRAM(24MB)、暗号化と復号化のコプロセッサコア、DDR RAIM(Redundant Array of Independent Memory)メモリコントローラ、入出力バスなどで構成される。トランジスタ数は14億個、シリコンダイ面積は512平方mm。製造技術は45nmのSOI CMOS、13層金属配線である。

メインフレーム「z196」用マイクロプロセッサの概要

 このマイクロプロセッサには、長期間動作させたときの性能劣化をモニターするための回路が埋め込まれていた。「BTI」(Bias Temperature Instability)と呼ばれる、電圧ストレスと温度ストレスによってトランジスタのオン電流が下がり、動作速度が低下する劣化をモニターする。劣化のモニターには、2種類のリング発振器回路が使われた。通常は電源を与えない(ストレスを与えない)参照用のリング発振器と、動作状態と同様のストレスを与えるリング発振器の2種類のリング発振器回路を埋め込んでおき、両者の動作周波数の違いを定期的に測定する。参照用のリング発振器に与えるストレスを最小限に留めるため、測定時間は極めて短い時間に抑えておく。

シリコンダイ上に、BTI(Bias Temperature Instability)劣化をモニターする回路を配置した。「NBTI」(Negative BTI)を白文字で記述してある。各CPUコアに1カ所、2次キャッシュに1カ所の合計5カ所にモニター回路を埋め込んだ

 2種類のリング発振器回路をモニターに使うのは、単独では動作周波数のばらつきが大きすぎて劣化の度合いを測れなくなるからだ。IBMは、顧客に納品したz196メインフレームのマイクロプロセッサから収集したデータを示し、2種類のリング発振器の動作周波数を比較することの意義を見せていた。

左は個々のリング発振器(RO)の発振周波数の経時変化。非常に変動が大きく、判断が難しいことが分かる。右は2つのリング発振器の周波数比率。時間経過とともに両者の差が縮まっていく(徐々にトランジスタが劣化していく)様子が分かる

 また動作条件の違う2種類のメインフレームで、経時劣化の様子が異なっていく様子を約500日間にわたって実際に測定して見せた。1台のシステムは500日後に1.25%ほど動作周波数が低下し、もう1台のシステムは0.7%ほど動作周波数が低下した。両者を比べると、動作温度が高く、電源電圧が高いシステムが、劣化の度合いが大きくなっていた。なおトランジスタの性能を劣化させる二大要因はBTIと「ホットキャリア」なのだが、ホットキャリアには温度依存性がない。このため、性能劣化の主要因はBTIだとIBMは結論付けていた。

経時劣化の様子。横軸は時間(日数)、縦軸は劣化の度合い(リング発振周波数の低下率)である。2台のシステム(System1とSystem2)で実測した結果
2台のシステム(System1とSystem2)におけるマイクロプロセッサの温度変化

28nm技術によるプロセッサのソフトエラー対策

 Broadcomは、28nm技術で製造するネットワークプロセッサのソフトエラー対策を発表した。

 ここで「ソフトエラー」とは主に、一過性の不良(エラー)を意味する。メモリではデータが変化したり、データの読み出しが不可能になったりする。ロジックでは出力が変化したり、動作が停止したりする。ただし半導体チップは壊れていない。このため、電源を再投入したり、データを書き直したりすれば、何事もなかったかのように正常に動作する。

 ソフトエラーはメモリ、特にキャッシュに使われるSRAMでは古くから問題となっていた。誤り訂正符号(ECC)の導入によるエラーの検出と訂正は、キャッシュでは標準装備に近い機能となっている。これに対してロジックでソフトエラーが問題になり始めたのは、宇宙用の半導体を除けば、最近のことだ。

 ロジックのソフトエラー対策ではメモリと違い、誤り訂正回路が使えない。そこで「TMR」(Triple Modular Redundancy)と呼ばれるロジックを三重化した回路や「DICE」(Dual Interlocked Storage Cell)と呼ばれるロジックを二重化した回路などが考案され、実際に宇宙用ロジックでは採用されてきた。

 ただし、TMRとDICEには大きな弱点がある。1つはシリコン面積が大きく増大すること、もう1つは動作周波数が低下すること、さらには消費電力が増加することである。高いソフトエラー耐性を得る代わりに、コストと速度と電力が犠牲になる。これらの対策は人工衛星や宇宙探査機などの特殊な半導体では導入されてきたものの、産業用や民生用などの一般的な半導体では、あまり望ましくない。

 そこでBroadcomが考案したのが、プロセッサのロジック全体にソフトエラー対策を施すのではなく、ごく一部の回路だけにソフトエラー対策を導入することで、シリコン面積の増大と動作周波数の低下を抑えるという手法である。

 ロジックの中でソフトエラーが起こりやすいのはフリップフロップなので、まずはフリップフロップでの対策を考えた。そしてフリップフロップでソフトエラーが発生しても、エラーが周囲の回路を伝搬して出力のエラーに至る確率は100%ではない。エラーが伝搬しにくい機能ブロックと、エラーが伝搬しやすい機能ブロックが存在する。Broadcomの調べでは、ネットワークプロセッサを構成する機能ブロックの中でエラーが伝搬しやすいブロックは命令ブロック(パイプラインとコントローラ)であり、プロセッサエレメントや検索エンジンなどはエラーが発生しても外部に伝搬する確率は非常に低かった。

 またフリップフロップ数が175万の回路を想定したのだが、その中で命令ブロックのフリップフロップ数は174,000と約10%に過ぎなかった。この10%に対策を施せば、ソフトエラーの発生確率は大幅に下げられることが分かった。

ネットワークプロセッサのブロック図(左)と各ブロックにおけるエラーの伝搬しやすさ(Unmaskedの確率)、フリップフロップの数

 さらに、ソフトエラー耐性の高いフリップフロップ回路として「ヒステリシス D-フリップフロップ」(ヒステリシスDFF)と呼ぶ回路を考案した。この回路は、アルファ線を原因とするソフトエラーの発生確率を14分の1に、中性子線を原因とするソフトエラーの発生確率を3分の1に減らせる。

 そこでヒステリシスDFFを命令ブロックだけに導入することで、シリコン面積の増加を7%に、動作速度の低下を8%に、消費電力の増大を3%に抑えながら、ソフトエラーの発生確率を半分に減らすことができた。

標準的なDFF、ヒステリシスDFFとDICE FFのペナルティの違い
標準的なDFF、ヒステリシスDFFとDICE FFのソフトエラー発生確率

 最先端ロジックのソフトエラー対策技術はまだ発展途上で、改良の余地が大きい。今後も数多くの研究成果が期待できる。

(福田 昭)