【レポート】

Fall Processor Forum 2005 - IBMとFreescale、2種類のデュアルコア

1 PowerPC 970 MPは970FXのデュアルコア版

  • <<
  • <

1/3

次は、IBMとFreescaleの、2つのデュアルコア製品に関してご紹介したい。IBMはG5、FreescaleはG4をそれぞれデュアルで集積した製品だが、狙っている方向性も違えば実装の仕方も違い、発表の仕方も違うという、なかなか対照的な構図を見せてくれた。

IBM PowerPC 970 MP

Photo01:IBMのNorman Rohrer氏(Senior technical stuff menber in the PowerPC microprocessor group)

IBMの発表はPOWERとPowerPCの進化を示しながら、デュアルコアが自然な流れであると示唆しつつ(Photo02)、具体的なコアの紹介に入った。そのコアであるが、要するに従来のPowerPC 970 FXのL2キャッシュを増量し、デュアルを集積したという方法である(Photo03)。ただ面白いのは、PowerPC 970MPではPOWER4の様な共有L2キャッシュの構成を取っていない事だ。これはダイを見ても明白(Photo04)で、割と手間を掛けずに設計が出来た模様だ。内部レイアウトは従来のPowerPC 970FXとほとんど変わっておらず、L2キャッシュが1MBになったのが明確な違い程度である(Photo05)。

Photo03:後で「なぜ共有キャッシュにしなかったのか?」と聞かれて、Rohrer氏はあっさり「開発の手間を最小限にするために、非共有とした。この方式ならBIUの再設計を行うだけで済む」と率直に答えていた。

Photo02:G5(970)コアはG3(750)からの継承ではなく、POWER4をシングルコア化したという経緯があるので、流れとしてはPOWER4/POWER5のファミリーという扱いになる。

Photo04:CPUコアは鏡対象にレイアウトされ、中央にBIUが配される格好。

Photo05:PowerPC 970FXは基本的にはPowerPC 970と同一で、低消費電力版という扱い。970MPはこの970FXのデュアルコア版なので、内部構造は3者とも同一ということになる。

異なる点としては、まずI/O周辺が挙げられるわけだが、基本的に2つのコアは完全に同列に扱われる。外部からのバス入力は両方のコアに同時に渡され、一方両方のコアの出力はマルチプレクサに入力されて1本化された上で出力される(Photo06)。

Photo06:出力の調停は新設されたアービタで行うが、見て判るとおりアービタはあくまで出力の調停しか行わない。つまり本質的にこのコアはSymetric MultiProcessorしか考慮していない。

Photo07:C0コアとC1コアで別々にサーマルダイオードが埋め込まれている、というのも面白い話である。

また電力管理もちょっと異なる部分だ。970FXは低消費電力版ということで電力管理はこまめに行える様になっているが、この部分は970MPも継承している。ただデュアルコアということで、2つのコアでの協調動作が必要である。ここで面白いのは、C0コアとC1コアで異なる電圧を与えることができ、必要ならC1コアは非同期にシャットダウンが可能なことである。また動作周波数に関してはC0とC1で同一であり、NAP/Deep NAPといった待機モードは両方のコアで同期して入る必要があるとしている。この結果、パワーモードはPhoto08のような遷移図で示される事になる。F/2、F/4は周波数で、例えば2.5GHz動作のハイエンド製品の場合、1.25GHz動作と625MHz動作が用意されることになる。加えて言えば、定格動作の中にHigh VoltageとLow Voltageの両方が用意されるため、例えば周波数をF/2まで落とせばLow Voltage Modeで動作し、消費電力は半分以下に減らせるといったオプションもある。この結果、消費電力のトランジションはPhoto09で示すようになかなか複雑である。High Voltage Modeのままだと36Wから100Wまで、Low Voltage Modeだと18Wから29Wまで消費電力が変わるという仕組みだ。

Photo08:縦軸(Full・F/2・F/4)はC0/C1で同期する必要があるが、横軸(Full~F/4・Doze)はコア毎に独立して設定可能。

Photo09:消費電力の変わり方も凄いが、最大で100Wという消費電力もちょっとものすごい。

さらにここにNAP/Deep NAPが加わる。NAPは動作周波数を変えずに待機状態とするが、Deep NAPはさらに周波数を64分の1(つまり2.5GHz動作なら、40MHzそこそこ)まで落とす動作となり、さらに積極的に消費電力低減が可能である(Photo10)。実際デュアルコアの場合、Deep NAPだと17W(High Voltage)/5W(Low Voltage)まで消費電力を下げることが出来る。Photo11に各ステートでの消費電力一覧を示すが、やはり2.5GHz駆動での消費電力が突出して大きい。Photo10をもう一度眺めてみると、動作ステートとして定義はされていないが、Low Voltage Modeでも2GHzまでは到達可能で、その際の消費電力は40W台(少なくとも2.5GHz動作のNAPでの52Wよりは小さい)事が判る。「なら2GHzでLow Voltage Mode駆動するのが一番効率よいのでは?」と思うのだが。この2GHz→2.5GHzの500MHzのアップで消費電力が倍増するというのは、ちょっと無理して駆動しているのではないかという気がする。大体、3W~100Wまで変化する熱源をサポートするクーリングシステムというのも中々に大変である。空冷だとPentium 4/Pentium D並みの巨大ヒートシンク+アクティブファンは必須であるが(実際これを搭載するG5 Macには、恒例の巨大なヒートシンク+アクティブファン構成である)、これを3WのCPUに付けたらどう考えてもオーバークールである。ファンの回転数制御は従って必須だろう。

Photo10:遷移を見ていると、さすがにフルスピードからいきなりDeep NAPという訳には行かないようだ。例えば2.5GHz駆動の場合、まずNAPに落とし(これで100W→54Wまで落ちる)、そこからDeep NAP(17W)に遷移するという形になる。

Photo11:つまるところ、このCPUの場合Sweet Spotは2GHz近辺ということは間違いなさそうで、これを無理やり外して2.5GHzまで引っ張った感が強い。

つまるところ、PowerPC 970MPは「とりあえずDualにしてみました」という以上の話はなく、PC向けとしてはともかく、Embedded向けとしては余程高い処理能力を必要とする用途以外には向かない構成となる。ただ、低消費電力のデュアルコアはPower.orgに加盟する他のベンダー(例えば先にレポートしたP.A.Semiや、この後説明するFreescale)が既にリリースしているから、別にIBMが提供しなくても事足りるという事なのかもしれず、それよりはピーク性能を誇るいわばフラグシップCPUが(IBMとAppleにとって)必要だったのだと考えればよいだろう。実際この性能はEmbeddedとしては論外なほど高い。これに匹敵するといえば、PMC-SierraのRM9200系が該当するが、このアーキテクチャが大体2.3 DMIPS@MHzといったところなので、1GHz駆動で2300DMIPS相当。対してPowerPC 970MPは2.5GHzで9250DMIPSだから4倍近い性能差がある(Photo12)。こんな性能のプロセッサを何のために必要とするのか? というと非常に考えにくい(ネットワーク系は、メモリコントローラや高速I/Oなどを集積したものが好まれる。CPU単体だけ、というこの970MPは使いにくいだろう)あたり、実はEmbedded向けは全然考えてないのかもしれない。まぁこれを搭載したG5 Macも既に発表されている事だし、これはそういうものだと考えるべきなのだろう。それにしても最上位のPower Mac G5 Quad 2.5GHzの場合、CPUだけで最大200Wの消費電力になるわけで、さぞかし熱いだろうなぁ...というのが率直な感想である。

Photo12:ハイエンドG5 Macにも使われているほどだから、演算性能は異様に高い。それにしても、同じ製造プロセスを使ったXBox 360のCPUはここまで消費電力が多くないわけで、やはりClock Gatingなどの省電力メカニズムの有無が大きく利いていると考えるべきだろう。

  • <<
  • <

1/3

インデックス

目次
(1) PowerPC 970 MPは970FXのデュアルコア版
(2) 非対称構成もとれるFreescale MPC8641D
(3) ASMP構成をどのように実現するのか?


人気記事

一覧

イチオシ記事

新着記事