トピックハブ

低電力・小型FPGA

Lattice、Efinix、Gowin、Renesas、Microchipの小型FPGAファミリー、電力はどこへ消えるか、スリープとクロックゲーティングの効果、そして作る前に消費電力を見積もる方法を解説します。

更新 2026年11月13日 · iCE40 UltraPlus、CrossLink-NX、Trion、GW1N、ForgeFPGA、静的電力、動的電力、スリープモード

概要

FPGAに関する文章の大半は大型部品についてのものですが、販売されるFPGAの大半は小型です。1,000から20,000 LUTで1米ドルから10米ドルのデバイスが、カメラ、ウェアラブル、産業用センサー、グルーロジックの役割に収まっており、多くはバッテリーや厳しい熱予算の下で動いています。このハブは、そうしたデバイスを選び、使うエンジニアのためのページです。そこでの問いは「収まるか」であることはまれで、たいてい「どれだけ消費するか」です。FPGAの電力の計算はマイクロコントローラとは十分に異なるので、きちんと学ぶ価値があります。

FPGAは同じ仕事をするASICより多く消費します。配線マルチプレクサとコンフィギュレーションメモリが容量とリークを加えるからです。小型ファミリーはこれに対し、より古くリークの少ないプロセス(7 nmではなく40 nmや28 nm)、外部メモリを必要としないフラッシュやOTPのコンフィギュレーション、きめ細かなスリープモードで対抗しています。その結果、最良の部品では待機時に数十マイクロワット、有用な仕事をしているときに数ミリワットになります。

重要な考え方

静的電力対動的電力

静的電力は、コンフィギュレーション済みでアイドル状態のデバイスが消費するものです。トランジスタのリークに由来し、プロセス、温度、ダイサイズで決まります。古いプロセスでは、ジャンクション温度が10度から15度上がるごとにおよそ2倍になります。動的電力は、容量、電源電圧の2乗、スイッチング率に比例し、すべてのネットについて合計されます。FPGAでは配線が支配的なので、設計の動的電力はLUT数ではなく、何本の長い配線がどれだけ頻繁にトグルするかで決まります。実践的な帰結はこうです。部品が許す範囲でコア電圧を下げ、トグルの多いロジックを物理的にコンパクトに保ち、毎サイクル必要でないものはすべてクロックイネーブルまたはクロックゲーティングで止めることです。ブロックRAMとSerDesには独自の固定コストがあります。有効にしたブロックRAM 1個で、100個以上のLUTより多く消費することがあります。

静的(アイドル、コンフィギュレーション済み)コアリークプロセス、温度I/Oバンクバイアス規格、終端コンフィグメモリSRAM対フラッシュ/OTP動的(スイッチング)クロックツリー毎サイクルトグル配線最大の割合ロジック、RAM、DSP活性率 x 容量手段Vcoreを下げる、基板を冷やすスリープ / パワーダウンピンクロックイネーブル、PLL停止遅いクロック、広いデータ幅コンパクトな配置I/O規格を減らす40 nm小型FPGAの目安: 静的電力は数十から数百マイクロワット、動的電力はアクティブLUT 1,000個あたり1 MHzにつきおよそ50から150マイクロワット。活性率は設計によって大きく異なるので、開発ボードで測定すること。
小型FPGAでミリワットがどこへ消えるか、そして各部分を減らすための手段

スリープモードと復帰時間

バッテリーに優しい部品は、クロック停止以上のものを提供します。iCE40 UltraPlusはスタンバイ時に約75 µAのコア電流で状態を保持し(Latticeは電力ではなく電流で示しています)、ハードSPIとI2Cブロックはメッセージを受けてファブリックを起こせます。CrossLink-NXとCertus-NXは、未使用バンクのプログラマブルなパワーダウンを備えています。内蔵フラッシュをもつGowin GW1N部品は、電源を完全に切ってもコンフィギュレーションを保持し、ミリ秒で再コンフィギュレーションできます。Renesas ForgeFPGAは、数百から数千LUTと最小のクラスで、マイクロアンペア級のスタンバイを狙い、数個のディスクリートロジック部品の置き換えとして販売されています。確認すべき変数は復帰レイテンシです。外部フラッシュから再読み込みするSRAM部品は数十ミリ秒と電流のバーストを必要とし、フラッシュベースの部品はマイクロ秒で動作状態になります。間欠動作のセンサーノードでは、復帰ごとの再コンフィギュレーションのエネルギーが仕事そのものを上回ることがあります。

作る前に見積もる

どのベンダーも、LUT数、クロック周波数、活性率、I/Oリストを入力するとミリワットの数値を返すスプレッドシートやツールを提供しています。LatticeにはRadiant内のPower Calculator、EfinixにはEfinity Power Estimator、MicrochipにはPolarFire power estimator、AMDとAlteraには大型部品向けのPower Design ManagerとEarly Power Estimatorがあります。いずれも入力する活性率の精度次第であり、通常のデフォルトである12.5%はほとんどの設計で間違っています。信頼できる方法は、代表的なワークロードのゲートレベルシミュレーションを実行し、スイッチング活性(SAIFまたはVCD)を書き出し、それをベンダーの配線後解析ツールに与えることです。それから測定します。LatticeとEfinixの開発ボードは、まさにこの目的のためにコアレールをジャンパに引き出しています。

どこから始めるか

小型FPGAは学習に自然な場所であり、入門トラックはこれらの上で動きます。/learn/beginner/01-what-is-an-fpga/はFPGAがなぜその電力を消費するのかを説明し、/learn/beginner/04-registers-clocks-and-state/は最初の省電力ツールであるクロックイネーブルを紹介し、/learn/beginner/08-counters-timers-and-debouncing/は測定に適した最初の設計です。iCE40ボードのコアレールに電流計をつなぎ、同じLED点滅設計を1 MHzと48 MHzで試してみてください。その差はデータシートより多くを教えてくれます。電力を意識した設計に関する中級トラックは準備中です。

ツールとベンダー

ファミリー ベンダー プロセス ロジック規模 コンフィギュレーション 位置づけ
iCE40 UltraPlus Lattice 40 nm 2.8kから5.3k LUT SRAM、外部またはNVCM 常時稼働センシング、オープンソースフロー
CrossLink-NX、Certus-NX Lattice 28 nm FD-SOI 17kから40k LUT SRAM、高速ブート MIPIブリッジ、低リーク
Trion Efinix 40 nm 4kから120k LE SRAM、外部フラッシュ 小型パッケージ、安価、大型品にハードMIPI
Titanium Efinix 16 nm ロードマップ上は35kから2M LE、出荷中は最大370k SRAM 低電力で高性能
GW1N、GW1NR Gowin 55 nm 1kから9k LUT 内蔵フラッシュとSRAM 最安、R品種はパッケージ内PSRAM
GW2A、GW5A Gowin 55 nm、22 nm 18kから138k LUT SRAM ミドルレンジ、Apiculaサポート拡大中
ForgeFPGA Renesas 非公開 数百から数千LUT OTP ディスクリートロジック置き換え、無料のGo Configureツール
IGLOO2、PolarFire Microchip 65 nm、28 nm 6kから481k LE フラッシュ、電源投入時に即動作 ミドルレンジで最低の静的電力、セキュリティ、信頼性

Microchipは、PolarFireの静的電力は同規模のSRAMベース競合品のおよそ半分だと主張しています。フラッシュコンフィギュレーションとプロセスを考えればもっともらしい話ですが、推定ツールで自分の数値を比較してください。

よくある間違い

  • データシートの25度での典型的な静的電力値を読んで、70度の筐体向けに設計する。
  • コンフィギュレーションフラッシュ、レギュレータ、発振器を忘れる。小さな設計では、これらがFPGAより多く消費することがあります。
  • 1ミリ秒に1サンプル処理する設計に、フリーランの100 MHzクロックを使う。遅く動かすか、バーストで速く動かしてスリープしてください。
  • 未使用のI/Oバンクに電源を入れたままにし、未使用の入力をフローティングにする。
  • 再コンフィギュレーションのエネルギーを見積もらずに、間欠動作の用途にSRAMベースの部品を選ぶ。
  • 推定ツールのデフォルト活性率を信頼する。

さらに深く