FPGAとは
FPGAとは「Field Programmable Gate Array」の略で、設計者がフィールドで論理回路の構成をプログラムできる論理回路を集積したデバイスのことです。
専用ロジックICは回路が固定されていて、一部を変更する際もマスクなどの再設計/再製作が必要になりますが、FPGAは設計者が自由に回路を変更できる論理回路であることが特徴として挙げられます。
従来よりその目的に合致したデバイスとしてPLDがありましたが、そのPLDを大規模化しかつ回路構成をSRAMに書き込むことで、何度でも回路変更が可能としたのがFPGAです。FPGAは米国ザイリンク社によって開発されました。
FPGAの使用用途
FPGAは、車載用機器やデータ・センサー、ディープ・ラーニングなどに使用されています。CPUによるプログラム処理では間に合わない高速論理演算を実行する場合、大規模な論理回路が採用されます。その為に専用LSI (ASIC等) を設計/製造することが対応策の一つですが、専用LSIは回路変更が困難です。
一方、FPGAでは回路設計者がアプリケーション回路を自由に設計できるとともに回路変更も容易なので、論理回路の開発コストを大幅に低減できます。この特徴によりFPGAは多様な分野で広く使われるようになりました。
1. 車載用機器
車載用機器に採用される理由として、開発サイクルの短縮、変更に対する柔軟性、要求品質に適合したデバイスの登場などがあります。その具体例として、運転支援システムの映像解析が挙げられます。
運転支援システムでは、車載カメラから得られるリアルタイムの映像信号を瞬時に解析してドライバーの運転操作を支援する必要があり、低遅延かつ高精度なアルゴリズムが必要とされています。これに対応するには高速な演算処理が必要ですが、それを満足しかつデバイス内の電子制御機能を必要に応じて変更できるFPGAが適しています。
2. データ・センター
データ・センターの分野でもFPGAの採用事例が増えています。特にCPUに代わって、AI、セキュリティ、認証、リアルタイム解析、ディープラーニング等の処理を担います。また、大規模データシステムのパフォーマンスを向上させるためにFPGAを採用するケースもあります。ネットワーク/ストレージシステムに対して広帯域幅かつ低遅延の接続性を提供することで、データ処理の高速化を実現します。さらにデータ圧縮、フィル処理などにも対応します。
3. ディープ・ラーニング
ディープ・ラーニングの世界では、日進月歩で最適モデリングが変わっていくために、FPGAの回路変更の柔軟さが極めて有効です。この用途の様にシステムを頻繁に向上させる使い方には最適なデバイスです。
FPGAの原理
FPGAはプログラム可能な比較的小規模の論理ブロックを格子状に配置し、その間に縦方向と横方向に配線路を設けた構造を基本としたLSIです。一つの論理ブロックは小規模ですが、多くのブロックを組み合わせることで大規模な回路を実現しています。
基本的な論理ブロックは、LUT (Look Up Table) とフリップフロップ、更に付加回路を追加して基本論理ブロックが構成されます。また、論理ブロックは、配線路に設けられたスイッチ・マトリックス (トランスファ・ゲート) によって任意に接続できます。
LUTはSRAMを利用します。スイッチ・マトリックスのON/OFFも、SRAMに書き込まれたデータにより制御されます。尚、SRAMは電源が切れるとデータが消えてしまうため、FPGAは電源を投入する際に外部から回路情報 (コンフィグレーション・データ) を読み込みます。
FPGAの内部構成は、基本要素である論理ブロックの他、内部配線路、クロック専用配線、乗算器 (DSP) 、I/O部、PLL、ブロックRAMなどです。これらはどのような回路パターンであっても配線しやすいように、網の目状に並んでいます。
FPGAのその他情報
1. 設計ツール
従来FPGAの設計には、RTL (Register Transfer Level) が設計言語として使用されてきました。設計者のRTLをもとに、FPGAベンダーが用意しているツールからFPGAに書き込むダウンロードファイルが生成されていました。
しかし、最近は高位合成コンパイラといわれるツールがFPGAベンダーからリリースされています。この高位合成コンパイラを利用することで、効率的な設計が可能になると同時に、回路の検証時間も減少するようになりました。其の結果製品開発の期間を短縮することに貢献しています。
現在、FPGAベンダーが提供している高位合成コンパイラは下記の3つです。
- モデルベース (DSP) コンパイラ
- HLSコンパイラ
- OpenCLコンパイラ
FPGAを用いて回路検討する際には、通常評価ボードを使用します。その評価ボードは、半導体ベンダー、評価ボードのメーカー、受託設計業者など、様々な会社から販売されています。そのため、評価ボードの種類も非常に多く、技術レベルや目的に応じたものを選択することが必要です。代表的なメーカーとして下記の6つが挙げられます。
- HiTech Global
- BittWare
- TUL
- IOxOS
- ポートウェルジャパン
- ANVENT
2. 市場
グローバルインフォメーション社の2020年4月のレポートでは、FPGA市場は2020年の59億米ドルに対し、2025年は86億米ドルと予測しました。年平均成長率 (CAGR) は7.6%となる見込みです。詳細な数値は明らかにされていませんが、FPGA市場をテクノロジー・ノードで分類すると、2019年は28nm未満の製品構成比率が最大になったようです。
更に、低消費電力製品の登場などにより、2025年に向けても28nm未満の製品が高い伸びを示すとの予測を示しています尚、2020~2025年のFPGA市場を牽引する用途としては、クラウド・コンピューティングに向けたハイパフォーマンス・コンピュータや5Gネットワーキングなどが挙げられます。
参考文献
https://www.sbbit.jp/article/cont1/37659
https://www.fsi-embedded.jp/kumico/column/45/
https://www.atmarkit.co.jp/ait/articles/1710/11/news002.html
https://jp.mathworks.com/discovery/fpga.html
https://www.intel.co.jp/content/dam/altera-www/global/ja_JP/pdfs/literature/wp/mcu_to_fpga_design_guide.pdf
https://qiita.com/kannkyo/items/0927114c3fa2545e9d76
https://www.gii.co.jp/report/mama930818-fpga-market-by-configuration-low-end-fpga-mid.html