Moorestownの低消費電力化技術を読み解く
IntelのRajesh Patel氏は2009年8月23日から25日にかけて開催された「Hot Chips 21」で同社の次期モバイルプラットフォームであるMoorestownについて発表した。
Moorestown自体は、すでにあちこちで発表されており目新しくないので、今回の発表では、どのようにして消費電力を削減しながら性能を向上させたかが発表の主題である。
簡単におさらいをしておくと、第一世代のモバイルプラットフォームであるMenlowではAtomのCPUチップにグラフィックス、メモリコントローラ、ディスプレイコントローラ、サウスブリッジ機能を集積したIOHチップを接続していたが、Moorestownでは、I/Oとの接続機能を除いたこれらの機能はLincroft CPUチップに一体化され、I/Oの接続機能はLangwellチップに集約される。
SilverthorneのAtomプロセサコアとLincroftのAtomプロセサコアは機能的には同じであるが、その実装は同じではない。何故かというと、Menlowでは1.6mWのスタンバイパワーが許されたが、Moorestownではこれを大幅に削減することが求められたからである。このためにSilverthorneではCPU用のHigh-K/Metal Gate(HKMG)プロセスが使用されたが、Moorestownでは45nm High-K SoCプロセスを使っている。このプロセスの詳細は不明であるが、一般的にはトランジスタのスレッショルド電圧を引き上げ、リーク電流を大幅に削減するLow Standby Power系のプロセスであると考えられる。このような低リークのプロセスではCPU用の高性能プロセスと比較するとトランジスタスピードは3割~4割低下するのが普通であり、Lincroftが同じクロック周波数を保っているとすると、クロックアップのために相当なチューニングが必要になったはずである。
一方、Lincroftに集積されるグラフィックスなどの機能は、Menlowでは130nmという現行CPUの45nmから比べると3世代前のプロセスで作られており、CPUと同じ45nmプロセスで作れば面積はほぼ1/8で済んでしまう。このため、全体のチップ面積は大きく縮小し、コスト的にも有利になると思われる。ただし、Intelは古くなった世代の半導体工場をI/O系のチップの製造に廻して有効利用するという作戦をとっていたが、このようにI/OがCPUと一体で先端プロセスで作られることになると、古いFabが余ることになるが、減価償却は済んでいるはずであり大きな問題ではないのであろう。
Lincroftでは、消費電力あたりの性能の改善という点でHyper-threading(HT)を採用しており、これにより組み込み系のベンチマークであるMT-EEMBCでは36%の性能向上を19%の電力増で実現し、整数系のベンチマークであるSPECint2Krateでは39%の性能向上を17%の消費電力増で実現し、性能/電力を約20%改善している。
そして、チップの全域にわたって必要に応じてきめ細かくクロック周波数を変えるという方法で、低電力で高性能を達成している。このため、Lincroftでは、Busclock、DDRclock、DDRclock1、Gfxclock、VideoDclock、VideoEclock、Display_clockとマルチメディア関係のユニットだけでも7系統のクロックを持ち、各ユニットでその時々に必要とされる性能を実現する最低限のクロック周波数で動作させ、消費電力を削減している。
当然、CPUのクロックも負荷に応じて可変しているが、CPUのクロックを上げた場合にバスのスピードがそのままでは持たなくなる。このため、バスのクロックもCPUのクロックに追随して階段状に引き上げる「Bus Turbo mode」という技術を導入している。CPUとの関係だけを見るとCPUクロックに比例してバスクロックを可変しても良いが、DDRメモリやビデオなど別の固定クロックで動くユニットがあるので、それらの関係を保つためにバスクロックは階段状の変化にしていると思われる。また、このような階段状の切り替えであればバスクロック用のPLLを再ロックさせる必要はなく、即時にバスクロックを変更できるというメリットがある。
そして、ソフトウェアが有効な仕事が無いと判断した場合に、従来のSpeed Step(Geyserville)よりもさらにCPUクロックを落とした低電力ステートに移行することができるEnhanced Geyservilleや、使用していない部分の電源を切る分散パワーゲーティングも採用して低消費電力化している。
一方、チップ温度に余裕がある場合は、忙しくなると短時間の間は定格よりクロックを上げて性能を上げるバーストモードの採用と、考えられる限りの省電力と高速化が盛り込まれている。