|
はじめに
|
FPGAとはFPGA (Field Programmable Gate Array) は,後から中身の回路構造を書き換えられる電子部品です.一般的な電子回路では,部品を一度作ると動作は固定されますが,FPGAではその制約がありません.プログラムを書き込むことで,ハードウェアそのものの動作を変更できる点が大きな特徴です. FPGAの内部には,LUT(論理テーブル),フリップフロップ,そしてそれらを結ぶ可変配線が大量に配置されています.設計者は「どの論理をどの配線で接続するか」を記述し,その情報をコンフィグレーションデータとして書き込みます.書き込み後,FPGA内部は実際にその回路構成へと変化します. この点でFPGAは,ソフトウェアを実行する装置ではなく,書き換え可能なハードウェアと考えるのが正しいです.内部では命令を順番に解釈・実行するCPUは存在せず,信号は回路網をそのまま流れます.そのため,多数の処理を同時に並列実行でき,遅延も小さくなります. 一方,マイコンはCPUを内蔵した小さなコンピュータであり,C言語などで書かれた命令を順次実行します.制御や通信などの汎用用途ではマイコンが扱いやすいですが,高速処理や厳密なタイミング制御ではFPGAが有利です.用途に応じて両者を使い分けることが重要です. 仕組みFPGAは,内部の回路構造を後から書き換えられる「書き換え可能なハードウェア」です.その仕組みの中心にあるのは,SRAM (静的RAM) による回路制御です. FPGAの内部には,論理を実現するLUT,状態を保持するフリップフロップ,そしてそれらを結ぶ大量の配線とスイッチが配置されています.これらの配線の接続・切断は,MOSトランジスタで構成されたスイッチによって行われます.スイッチのON/OFFは,SRAMに記憶された1ビットの情報で制御されます.SRAM の値が「1」であればトランジスタがONになり,配線が接続されます.「0」であればOFFとなり,配線は切断されます.LUTも本質的には小さなSRAMで構成されています.入力信号がアドレスとなり,対応するSRAMビットが出力されます.これにより,ANDやORなどの論理回路を自由に構成できます.多くのFPGAはSRAM方式のため,電源を切ると回路構成は消えます.電源投入時に外部メモリから設定データを読み込み,回路が再構成されます. FPGAではCPUの命令実行は行われません.信号は構成された回路網をそのまま流れるため,多数の処理を同時に並列で実行できます. このようにFPGAは,メモリの内容によってハードウェアの形そのものを決めるデバイスです.これがFPGAを理解するための最も重要な基礎概念です. 主なメーカーと特徴表1 に FPGA の主なメーカーと特徴を示します.
ページ作成情報参考資料更新履歴
|