後藤弘茂のWeekly海外ニュース

超低消費電力を達成するSilverthorneの秘密




●45nmプロセスのIntelのPC向けCPUとLPIAを比較

 Intelは来年(2008年)前半、超低消費電力のCPU「Silverthorne(シルバーソーン)」を投入する。これは、Intelの携帯機器向けIA-32系CPU「LPIA(Low Power Intel Architecture)」ラインとして、新規設計された最初のCPUとなる。

 前回のレポートで説明したように、Silverthorneは非常に小さい。ダイサイズ(半導体本体の面積)は約26平方mmと推測される。同じ45nmプロセスのCore Microarchitecture(Core MA)CPU「Penryn 6M」は107.6平方mmなので、デュアルコアのCore MAの4分の1程度のダイサイズとなる。下は、IntelのスライドのPenryn 6MとSilverthorneを、同スケールになるように修正したものだ。

IDFで示されたPenrynとSilverthorneのスライドの正確な比率版

 このスライドをベースに、両CPUをダイを大きなブロック単位に分解して比較してみると、Silverthorneの秘密が見えてくる。

●PenrynとSilverthorneでほぼ同サイズのI/O

 まず、PenrynのI/Oブロックについては、ダイ上の位置は明確に分かっている。Penrynでは、CPUコアの左、上のスライドのダイ写真上ではダイの上エッジに、「I/Oアドレス」のPHYが位置する。その逆サイド、CPUコアの右、上のスライドではダイの下エッジに、「I/Oデータ」のPHYがある。2つのI/Oエリアの帯がCPUの両サイドに位置する。

 I/OのPHYブロックは、信号線の引き出しのためにダイのエッジに配置する必要がある。そして、インターフェイス幅の広いパラレルバスである現在のIntel CPUのFSB(フロントサイドバス)は、ある程度のエッジが必要になる。CPUの場合、通常、4つのエッジのある程度をI/Oエリアに使い、その他のエッジから電力線を引き込む構造を採る。

 Silverthorneのダイを見ると、こちらにも上下にI/Oブロックとおぼしき帯がある。このサイズを測ってみると、ちょうどPenrynの上下のI/O PHYブロックと同程度となる。PenrynもSilverthorneも、同程度のダイ面積をI/Oに割いているように見える。

 もっとも、これは不思議ではない。両CPUのFSB(フロントサイドバス)は、基本的に同じアーキテクチャだからだ。SilverthorneもPentium 4以来のFSBを使っている。このI/Oブロックを見ると、長方形のSilverthorneのダイの形がどうして決まったのかよくわかる。

 CPUの場合、ダイの形は正方形に近づけるのがセオリーだ。それに対して、Silverthorneは異例に縦横比が大きく、長方形となっている。これは、長方形の方が、同じダイ面積でもエッジが長くなるためだと推測される。長方形なら、パッドのためにエッジに一定の幅を確保する必要があるI/Oブロックに、長いエッジ長を確保できる。逆に、Silverthorneの場合は、電力消費が少ないから、電力線の引き込み部分は少なくて済む。

 ちなみに、現在提供されている第1世代のLPIA「A100/A110(Stealey)」は、400MHz FSBだが、Silverthorneは533MHz FSBになると言われている。

SilverthorneとPenrynの比較:I/O(※別ウィンドウで開きます)
PDF版はこちら

●Silverthorneのキャッシュサイズは512KB

 PenrynとSilverthorneのL2キャッシュには、サイズに大きな違いがある。Penryn 6Mは6MBの共有キャッシュSRAMを搭載している。キャッシュSRAMアレイはPenryn全体の3割以上に当たる。それに対して、SilverthorneのL2キャッシュは、明確にSRAMアレイと分かる部分だけなら、Penrynの10分の1程度のサイズに見える。

 ここからSilverthorneのL2キャッシュは、512KBと推測できる。単純計算でのサイズよりちょっと大きいが、1MB分のキャッシュSRAMがあるようには見えない。SilverthorneのL2キャッシュが512KBだとすると、第1世代のLPIAである「A100/A110(Stealey)」と同量、6MBのデュアルコアPenrynの12分の1となる。Core MAとはL2キャッシュの量にはかなりの違いがある。

 しかし、L2キャッシュの量はパフォーマンスにリニアに反映されるわけではない。通常は、一定量を超えるとキャッシュの効果は飽和し始める。特に、Silverthorneの狙う市場のように、比較的小さいアプリケーションが主体で、並列に走るソフトウェアも限られる場合、キャッシュの量が少なくても影響は低いと推測される。

 キャッシュはトランジスタ数が多いため、リーク電流(Leakage)が多い。通常、CPUトータルの消費電力の中でキャッシュの電力が占める割合は大きくないが、リーク電流だけを見るとキャッシュの比率は高い。携帯機器を狙うならキャッシュ量を抑えることは意味がある。

SilverthorneとPenrynの比較:キャッシュ(※別ウィンドウで開きます)
PDF版はこちら

●CPUコアはCore MAの半分のサイズ

 SilverthorneとPenrynの比較でもっとも興味深いのはCPUコアのサイズだ。下の図のCPUコアの欄の左側がPenrynのCPUコアの1個分。右が、SilverthorneのCPUコアと推測される部分。単純比較ではSilverthorneの方が半分強程度の面積に見える。

SilverthorneとPenrynの比較:CPUコア(※別ウィンドウで開きます)
PDF版はこちら

 ちなみに、65nm版のCore MAである「Core 2 Duo(Merom:メロン)の、CPU実行コア1個のトランジスタ数は19M(1,900万)。これは、HotchipsとISSCC(IEEE International Solid-State Circuits Conference)での発表数字だ。実は、Core MAもCPUコアはかなりトランジスタ数を抑えた、コンパクト設計になっている。

 45nmのPenrynでは、Radix-16のようなトランジスタを食う拡張が加わったため、Meromよりトランジスタ数は多くなるはずだ。しかし、それでも20M(2,000万)を大きく超えるとは思えない。CPUコアの見かけ上のレイアウトが劇的に変わっているように見えないからだ。SilverthorneのCPUコアが、Penrynの半分強で、Penrynのコアが20M程度だとしたら、単純な比較ではSilverthorneのCPUコアは10M(1,000万)トランジスタ程度の規模という推測ができる。

 Silverthorneを10Mトランジスタと仮定して、過去のx86 CPUコアと比較すると、L2キャッシュレスのPentium III(Katmai:カトマイ)が9.5M(950万)で近い。つまり、Silverthorneは、P6マイクロアーキテクチャ(Pentium Pro)に、SSE拡張版を加えた程度の規模のCPUコアということになる。CPUコア的には、Core MAと比べると1世代分小さい。Meromと命令セット互換(SSE3まで実装)のCPUを作るには、かなり窮屈なトランジスタ数のように見える。

●CPU設計のセオリーからは論理的なSilverthorneの設計

 Silverthorneの小さなCPUコアは何を意味しているのか。

 CPU設計の有名な経験則に、同じプロセス技術でシングルコアCPUのダイサイズ(=トランジスタ数)を2~3倍に増やしても、整数演算パフォーマンスはその平方根(約1.4~1.7倍)程度にしか伸びないというものがある。Intelが『ポラックの法則(Pollack's Rule)』と呼んでいる法則(LawではなくRule)だが、Intelが名付ける以前からCPU業界では知られていた。

マイクロアーキテクチャのパフォーマンス効率

 この経験則のポイントは消費電力だ。トランジスタ数を2倍にすると、消費電力は理論上2倍になる。2倍の消費電力で1.4倍の性能アップとなると、消費電力当たりの性能は70%に落ちてしまう。PC向けCPUコアは、こうした非効率な性能向上を続けてきた。つまり、パフォーマンスのために効率(パフォーマンス/消費電力、パフォーマンス/トランジスタ)を犠牲にしてきたのだ。

 そのため、CPUコアの電力効率を上げる方法は、理論上は比較的簡単だ。CPU進化を逆戻しにして、進化の度に増やしてきた機能を削り、CPUコアをシンプルにすればいい。

 IntelがSilverthorneで行なったのは、まさにこれだ。Penrynの2分の1の規模のCPUコアのSilverthorneは、ポラックの法則での理論値では整数演算パフォーマンスは0.7倍に下がる。しかし、CPUコア部分の消費電力は半分の0.5倍に下がる。そのため、パフォーマンス/消費電力とパフォーマンス/ダイは1.4倍に上がることになる。

ポラックの法則(※別ウィンドウで開きます)
PDF版はこちら

●消費電力は半分で性能レベルは70%に

 もっともCPUコアだけを比較したのでは正確とは言えない。L2キャッシュシステムやI/Oも含めたCPU全体を、同じシングルコアCPUと比較しなければならない。Penrynには、もともとシングルコアのPenryn-2Mのプロジェクトがある。シングルコアで2MB L2キャッシュのバージョンで、Penryn-Lとも呼ばれる。このコアが製品化されるかどうかはわからないが、設計上のダイサイズは判明している。1年前の計画でのダイサイズは58平方mmだが、Penrynコアはプレシリコンの段階より数%大きくなっているので、実際には60平方mm程度になると推定される。

 それに対してSilverthorneのダイは30平方mmをかなり下回る。しかし、大まかには2分の1と言ってよさそうだ。そうするとCPUコア単体を比較した場合と、ポラックの法則の効果はほぼ同じだと推測される。そう仮定すると、Silverthorneの性能の理論値は次のようになる。

 3W TDP時のPenryn-2Mの性能に対して、1.5W TDPのSilverthorneの整数性能は0.7倍。同じLPIA同士で比較するなら、現在のLPIA系コアであるDothanコアよりPenrynの方が性能が1.x倍であることを加味する必要がある。またLPIA DothanはL2キャッシュも512KBに抑えられている。ラフに言って3WのLPIA Dothan 512KBに対して、1.5WのSilverthorneは、そこそこ近い性能レンジを達成できると考えてよさそうだ。

 もちろん、これは理論上の話だが、CPU設計はマジックではなく、物理法則に支配されている。1命令を実行するために、必要なロジックや電力はある程度決まっている。そのため、大まかに言えば、この比較が当てはまるはずだ。では、Silverthorneでは、具体的にどんな仕様を取り込み、どんなアーキテクチャを採るのだろう。次回はそれをレポートしたい。


TDP低下の変遷

□関連記事
【4月25日】【海外】もう1つの超低消費電力CPU「Silverthorne」
http://pc.watch.impress.co.jp/docs/2007/0425/kaigai355.htm
【4月20日】【元麻布】Ultra MobileにWindows有無の2つの道
http://pc.watch.impress.co.jp/docs/2007/0420/hot479.htm
【4月18日】【IDF】「Intel Ultra Mobile Platform 2007」正式発表
http://pc.watch.impress.co.jp/docs/2007/0418/idf05.htm

バックナンバー

(2007年4月26日)

[Reported by 後藤 弘茂(Hiroshige Goto)]


【PC Watchホームページ】


PC Watch編集部 pc-watch-info@impress.co.jp ご質問に対して、個別にご回答はいたしません

Copyright (c) 2007 Impress Watch Corporation, an Impress Group company. All rights reserved.