IT資格用語解説基本情報技術者試験・構成部品及び要素と実装
FPGA (Field Programmable Gate Array)
更新日:
用語解説
FPGA(Field Programmable Gate Array)は、製造後に利用者が内部の論理機能と配線接続を設定し、目的のデジタル回路を実現できるプログラマブルな集積回路です。
■ 試験で押さえるポイント
LUT(Look-Up Table)、フリップフロップ、プログラマブル配線、入出力ブロックを基本とし、製品によって乗算器、メモリ、CPUコア、高速通信回路も内蔵します。
VHDLやVerilogなどのHDLで回路を記述し、論理合成、配置配線、タイミング検証を経て構成データを生成します。通常のCPU命令を順番に実行するプログラムとは実装原理が異なります。
多数の回路を並列動作させられ、低遅延で決定的な処理に向きます。画像・信号処理、通信、試作、ハードウェアアクセラレータなどに使われます。
ASICより再構成と開発着手が容易ですが、同じ機能では一般に面積、消費電力、最高性能、量産単価で不利になる場合があります。SRAM型では起動時の構成読込みが必要です。
■ 選択肢での判断ポイント
FPGA=製造後に論理回路を再構成可能、ASIC=特定用途向けに製造時の回路が固定、と対比します。ソフトウェアを書き換えるだけの汎用CPUと同一ではありません。
例: 入力映像の各画素へ同じ演算を行う回路を多数並列に構成し、1クロックごとに連続処理します。仕様変更時は構成データを更新でき、ASIC製造前の試作にも使えます。