このコラムでは「意外と知られていないけど、知っていると差がつく FPGA の技術情報 」をご紹介します。
FPGA初心者の方からベテランの方まで、幅広くご活用いただける内容ですので、ぜひ最後までお付き合いください。

【第 10 回】 DC 電力とリーク電力を低減する方法

消費電力計算式の中からリーク電力のパラメータの1つである DC 電流(Idc)とリーク電流(Ileak)を低減する方法を検討してみます。 

Idc を下げる方法

(a)DC 電力が流れない論理状態の保持
第 3 回のコラムに記載したように、Pull-up/down バッファで DC 電流が流れない論理状態を長く保ちます。

(b)信号のコンフリクトを避ける
Bi-directional バッファの信号がコンフリクトする(L信号とH信号がぶつかる)と、VccとGNDが繋がるのでかなり大きな電力を消費します。
コンフリクトしないようにするか、コンフリクト時間は短くします。

(c)Pull-up/down バッファの抵抗値を上げる
抵抗値を上げると波形はナマリますが、抵抗を通る電流は低減します。

(d)パワーダウン・モードの活用
パワーダウン・モードをサポートするブロックでは、動作不要時はこまめにパワーダウン・モードにします。

Ileak を下げる方法

リークを下げるために一番有効な方法は、Vt (しきい値電圧)を上げる方法とパワー・ゲーティングです。
インテルはこの両方の低消費電力手法をサポートします。 

(a)Vt (しきい値電圧)を上げる方法
Vt (しきい値電圧)とは、論理の Low と High を区別するための仕切りとなる電圧です。
例えば、しきいの高さを上げると電荷がしきいを乗り越えるのが大変なので、漏れ電流は減りますが、正常動作の電荷も乗り越えるのが大変になるので速度が落ちます。
このように、Vt を上げるとリーク電流は非常に下がりますが、速度が落ちる欠点があります。ハードル走に似ていますね。

インテルの「プログラマブル・パワー・テクノロジ」は、Quartus®Prime が自動的にクリティカル・パス部分は Vt を低くして高速化し、その他の部分は Vt を高くし低電力化します。
回路全体でクリティカル・パス部分は少ないので効果の高い手法です。 

 

将来、Quartus Prime のタイミング精度がもっと高まり Vt の上げ幅が大きくなり、動的に Vt を制御できるようになれば更に効果が上がるので、今後が期待できる低消費電力技術です。

競合の FPGA ベンダーは、このプログラマブル・パワー・テクノロジをダイナミックパワーだけで評価して効果が低いと言っていますが、リークパワーをメインに削減する技術ですのでご注意ください。

(b)パワー・ゲーティング
パワー・ゲーティングとは、使用しない回路の電源をカットする機能です。
インテルは DSP やメモリセルなどでパワー・ゲーティングのサポートを始めました。

今後ロジック部分の動的なパワー・ゲーティングが可能になると、大幅にリーク電力を下げることができるため、期待できる低消費電力技術です。

(c)小チップ面積
チップ面積を小さくするには、回路を小さくする方法と微細化したプロセスを使う方法があります。
微細化した FPGA のリーク電力は高いですが、回路規模が大きくなるためにチップ面積は小さくなります。
最新プロセスの FPGA を使用して消費電力が上がるのは、回路規模の増大と高速化が原因です。
FPGA ベンダーが発表している消費電力値は、同じ回路規模と速度で比較するので消費電力が低く見えています。

(d)パーシャル・リコンフィグレーション
パーシャル・リコンフィグレーションは動作中に一部のブロックの回路構成を変える機能です。
使用しない回路を消すので、その回路分のリーク電力を削減できます。 

(e)温度を下げる
現在問題のサブスレッショルドリーク電流は温度依存性が高く、温度が 50℃ 上がると値が 10 倍にもなると言われています。
ダイナミック電力を下げたり、冷却方法や基板レイアウトを検討してチップの温度を下げるとリーク電力が下がります。 
シーメンス EDA の HyperLynx Thermal は厳密に基板の熱解析はできませんが、安価で誰でも簡単にFPGAの発熱を分散できるのでお勧めです。 

(f)Vcc を下げる
第 7 回でも紹介した方法ですが、Vcc を下げるのでリーク電力も下がります。
  -SmartVID
    “SmartVID” は Vcc を下げるのでリーク電力が削減されます。
  -VCC PowerManager
    “VCC PowerManager” は Vcc を下げるのでリーク電力が削減されます。 

(g)低スタティック電力デバイス・グレード
インテルは、性能を維持しながらも標準的な消費電力のデバイスよりもスタティック電力の消費が少ない「低スタティック電力デバイス・グレード」の FPGA を提供しています。
本デバイスを採用するだけでリーク電力を削減できます。