ISSCC 2007レポート
IBMの次世代プロセッサ「POWER6」の全容会期:2月12日~14日(現地時間) 会場:米国カリフォルニア州サンフランシスコ 米IBMは、次世代サーバー用マイクロプロセッサ「POWER6」の技術内容をISSCC 2007で公表した。2007年半ばの出荷を目指して開発中のプロセッサである。 POWER6は、5GHz~6GHzを超える非常に高い動作周波数(前世代である「POWER5」の2倍)を狙う。このため、論理設計や回路設計、電源設計、タイミング設計、信頼性設計などに細心の注意を払って開発している。ISSCC 2007では、POWER6に盛り込まれたこれらの技術内容が、いくつかの講演に分けて発表された。なおPOWER6の内容は、2006年秋に開催されたFall Microprocessor Forum 2006(Fall MPF 2006)でも一部公表されている。ここではFall MPF 2006の資料も引用しながら、POWER6の全容を紹介したい。 ISSCC初日の12日には、POWER6の全体像を紹介する発表があった(講演番号5.1)。POWER6はPOWERアーキテクチャに基づくデュアルコアプロセッサである。CPUコアは2命令同時発行のスーパースカラ構成。オンチップの1次キャッシュは命令、データとも64KB/コアである。2次キャッシュは4MB/コアを内蔵する。3次キャッシュは外付けの共有キャッシュとなる。容量は32MBである。 POWER6とPOWER5の整数演算パイプラインの深さはあまり変わらない。一方で段数当たりの処理時間を半分に短縮し、動作周波数を高める。 チップ全体ではCPUコアと2次キャッシュのほか、高速のSMPバス、グラフィックスバス、外部メモリコントローラなどを実装した。 またサーバー用に信頼性を強化したことを特徴とする(IBMは「Bullet-proof computing:防弾コンピューティング」と命名していた)。エラー検出機能(パリティ符号)やエラー訂正機能、リスタート機能などで構成される。
POWER6プロセッサチップの製造技術は65nmのSOIウェハCMOS技術である。MOS FETにはデュアルストレスライナーによる歪みシリコン技術を導入した。MOSゲート長は35nm。配線技術は低誘電率(low-k)絶縁層と銅金属層の10層配線である。これらの製造技術により、90nm CMOSと同程度の消費電力で30%高い性能を実現するとしている。チップ面積は341平方mmである。 回路設計では、タイミング解析によってクリティカルな(タイミング余裕の少ない)パスを発見し、クロックエッジのタイミングを微妙にずらすといった対策によって動作周波数を高めている。 消費電力の抑制では、独自に消費電力解析ツールを開発した。RTL記述(論理設計レベル)から回路ブロックごとの消費電力を見積もれる。設計の早期に消費電力を考慮した修正が可能になる。クリティカルでないパスにはしきい電圧の高いトランジスタ(リーク電流が低いトランジスタ)を挿入したり、トランジスタのゲート幅を狭くしたりする。またラッチの寸法を小さくする、パルス入力のラッチを採用する、クロックゲーティングを導入するといった対策で消費電力を抑えた。 さらに、プロセッサチップの動作時にも動的に消費電力を管理するため、24個のデジタル温度センサーをチップに配置した。温度分布をモニターすることで電源電圧と動作周波数を動的に調整する。 なおISSCCではごく簡単にしか触れなかったが、POWER6の重要な機能に10進浮動小数点(DFP:Decimal Floating Point)演算ユニットがある。10進の浮動小数点演算を多く含むアプリケーションでは、既存の2進FPUを使ってソフトウエアで演算するよりも、ハードウエアでDFP演算ユニットを使った方が全体の計算時間が短くて済む。 ●クリティカルパスの遅延時間を監視
このほか、POWER6プロセッサにはクリティカルなパスの遅延時間をモニターする回路が積まれている。この回路(CPM:Critical Path Monitor)の内容をIBMはISSCC 2007で発表した(講演番号22.1)。 論理回路のレベルが遷移するときのエッジを捉えて遅延時間を計測する仕組みである。このCPMをCPUコアに8カ所(デュアルコアなので全部で16カ所)、CPUコア以外の回路に8カ所の、合計24カ所配置した。CPM回路の面積はCPUコア用が90×36平方μm、そのほかの回路用が90×48平方μmである。 CPMによって製造プロセスのばらつきや温度変動、トランジスタの劣化などを遅延時間の変化として検出できるとしている。
また、CPUコアへの電源供給方式を検討した結果も発表した(講演番号16.7)。高性能マイクロプロセッサの設計ではCPUコアごとに電源ドメインを設定し、CPUコア以外の回路とは完全に切り離すことを考えがちである。しかしIBMは、POWER6のようなデュアルコアでは、CPUコアとそのほかの回路とで電源ドメインは接続しておいた方が良いと主張した。 CPUコアは短い時間で大きな電流を出し入れすることが少なくない。このため電源容量が十分でないと、電源電圧が突発的に降下することになる。このとき電源がCPUコアだけで独立していると、電源電圧降下が悪化しやすい。逆に電源が独立していないと、周辺回路の電源容量が利用できるのでCPUコアの電源電圧降下を緩和できるとする。 ただしクアッドコアといったより多くのCPUコアを内蔵した場合は、電源ドメインをCPUコアごとに独立して設けた方が良いとする。あるCPUコアで発生した突発的な電源電圧降下が、別のCPUコアに伝わらないようにするためだ。POWER6プロセッサの場合は各CPUコアが離れてレイアウトされているため、この問題が起こりにくい。 □ISSCCのホームページ(英文) (2007年2月15日) [Reported by 福田昭]
【PC Watchホームページ】
|