- 第3章 FPGAの仕組み
章トップ(目次)
3-1 FPGAとは何か
3-2 論理回路の基本構成(LUT / FF)
3-3 配線資源とスイッチ構造
3-4 クロックと同期設計
3-5 FPGAの設計方法(HDL)
3-6 CPU・GPU・FPGAの違い
3-7 構成データと再構成
3-8 タイミング設計と制約(STA)
3-9 配置配線(Place & Route)
3-10 I/Oとピン制約
3-11 CPU・GPU・FPGAの本質的違い
▶ 第2章 GPUの仕組み
3-2 論理回路の基本構成(LUT / FF)
FPGAは、無数の小さな論理回路ブロックの集合体として構成されています。
それぞれのブロックは、
LUT(Look-Up Table) と
FF(フリップフロップ)
を中心に構成されています。
LUT(Look-Up Table)とは
LUTとは、入力信号の組み合わせに対する出力を
あらかじめ表として保持する回路です。
論理式を逐次計算するのではなく、
入力値をアドレスとしてメモリを参照することで、
即座に出力が得られます。
入力(A,B,C) → アドレス → 出力 000 → 0 001 → 1 010 → 0 011 → 1 100 → 1 101 → 0 110 → 1 111 → 0
この仕組みにより、AND、OR、XOR といった基本論理回路だけでなく、
任意の組み合わせ論理を柔軟に実装できます。
フリップフロップ(FF)とは
フリップフロップは、
クロック信号に同期して状態を保持する回路です。
1ビットの記憶素子として動作し、
回路に「時間」の概念を導入します。
- 状態を保持する
- 処理を段階的に進める
- パイプライン構造を構成する
LUTとFFの関係
FPGAでは、
LUTで演算を行い、FFで結果を保持する
という構成が基本単位になります。
入力信号 ↓ +-------+ | LUT | ← 組み合わせ論理 +-------+ ↓ +-------+ | FF | ← クロック同期 +-------+ ↓ 出力信号
この構造を大量に並べることで、
FPGAは高度な並列処理や専用回路を実現します。