FPGA(Field Programmable Gate Array)は,ユーザが所望の処理をハードウェア・ロジックとして構築できる,プログラム可能なハードウェア・デバイス(LSIチップ)です.大規模LSIの機能検証や高速伝送装置のデータ転送処理,画像処理機器のフロントエンド処理など,特定の演算処理を高速化するハードウェア・コンポーネントとして活用されています. しかし近年,半導体プロセスの微細化に伴って,一つのFPGAチップ上に実装可能な回路規模が増大し(図1),また最高動作周波数も上昇しています.そのため,従来はOS上で動作するソフトウェア・プログラムとして記述されてきたアプリケーション処理を,まるごとFPGA上に実装することが可能となってきました. 図1 FPGAの回路規模の増大 編集部注:「Xilinx Virtex-8?」の部分は,あくまでも筆者の推測です. FPGAはプログラム