そして、Silverthorneの目玉の新技術は、新たに設けられたC6ステートである。次の図はSilverthorneの消費電力を示しており、C0はフルに最高クロックで、Power Virusと呼ばれる電力を最大に食うプログラムを実行した状態で、C1/2はコアと一次キャッシュのクロックを止める。C4はスリープ状態で、PLLを止め、二次キャッシュも不要な部分はオフする。
そして、C6ステートでは、CPUのアーキテクチャステートを専用の10.6KBのメモリに記憶し、コアの電源をオフにすることにより大幅にリーク電力を低減する。このC6ステートから通常の動作状態には100μsという短い時間で復帰できるので、MIDなどでは、キー操作待ちの時間をC6ステートとして消費電力を削減できる。C6ステートは、従来のC4ステートと比較して1/10近い省電力を実現できる素晴らしい技術で、C6ステートなどと言う無味乾燥なネーミングではなく、ウルトラCステートと呼びたいくらいである。
Silverthorneの消費電力 |
なお、Intelの論文では、消費電力はC0状態を1.0として、その他の状態の電力は比率で書かれているが、この図では、C0状態を2Wとしてスケールを書き直している。
また、Silverthorneは、動作時の消費電力の削減にも工夫を凝らしている。その一つがクロック分配系の改善で、クロックの向上を主眼とする場合は、クロックスキューを減少させるために分配の最終段の出力をメタルグリッドで接続するという手法が採用されるのが一般的であるが、Silverthorneでは最終段より2段前でグリッドを作り、その後は個別の分配を行うという方法で、スキューと消費電力のバランスを取っている。これにより、クロック分配電力が1/10以下に減少したという。
もう一つの新技術が、CMOSレベルのFSBである。IntelプロセサのFSBは、伝統的にGTLが用いられている。GTLは色々な改良が加えられ、Aがついたり+がついたりしているが、送信データでオン/オフされる25オームのプルダウンN-Trとプルアップ終端用の55オームのP-Trで構成されており、FSB上のデータが"0"の状態では、1本の信号あたりコンスタントに40mA近い電流が流れてしまう。
一方、FSBの信号伝送をCMOSレベルにすると、FSB上のデータが"0"でも"1"でもドライバ側のP-TrかN-Trのどちらか一方はオフであり、直流電流は流れず、大きく消費電力を削減できる。しかし、CMOSドライバでP-Trのプルアップ終端なしの回路をドライブすると、反射による信号波形の乱れが大きくなる。このため、SilverthorneではFSB信号の状態をサンプリングするタイミングを知らせるストローブ信号だけは電気を食うGTLとして残して、乱れた信号波形の最適なポイントの電圧を読み取ることで、CMOSレベルの伝送を可能にしてFSBの消費電力を削減している。但し、Core 2プロセサのような高速の伝送はできず、FSBの転送速度は533MT/sとなっている。
また、2スレッドのマルチスレッドにより、性能は30%アップするが、消費電力は15%増と発表されており、これも性能向上と、同一性能でのアクティブな消費電力の削減に貢献している。
これらの技術のあわせ技で、Silverthorneは、TDP 2Wで、実質的な動作状態では1W以下、そしてC6状態では32mWという画期的な省電力を実現している。なお、チャネル長を長くしてリークを減らすとオン電流も減少し、クロック周波数が低下する。この影響からか、Silverthorneのクロック周波数は2.0GHzとなっている。
なお、Silverthorneのチップは7.8mm×3.1mmという横長のチップであるが、この7.8mmの横幅はFSBのドライバ、レシーバで決まっている。チップ外の負荷を駆動するのに必要なエネルギーは、使用する半導体テクノロジにかかわらずおおよそ一定であり、半導体技術が進歩してもドライバ面積はあまり縮小しない。従って、FSBを採用する限り、将来のチップの横幅はあまり縮小しないと考えられる。このため、32nmプロセスを使用するSilverthorneの後継チップでは、この横幅を維持するのか、何とか回路を頑張ってこのFSB部分の面積を縮小するのか、あるいは、FSBではない新インタフェースに換えて横幅を小さくするのか、面白いところである。