平成30年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問20
テクノロジ/ハードウェアFPGA の設計フローとして,適切なものはどれか。
出典:平成30年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問20
- ア機能の記述 → 配置配線 → 論理合成
- イ機能の記述 → 論理合成 → 配置配線
- ウ配置配線 → 論理合成 → 機能の記述
- エ論理合成 → 機能の記述 → 配置配線
正解:イ
解説
FPGA(Field Programmable Gate Array)の一般的な設計フローは,まず設計したい回路の動作を HDL(ハードウェア記述言語)などによって「機能の記述」(論理設計)として表現し,次にその記述を実際の論理ゲート(AND,OR,フリップフロップなど)の組合せに変換する「論理合成」を行い,最後にその論理ゲートを FPGA 内部の実際の配置可能な場所に割り当て,ゲート間を配線でつなぐ「配置配線」を行う,という順序で進められます。
選択肢ごとの解説
- ア誤り。配置配線は,論理合成によって得られた回路をFPGA上の実際のリソースに割り当てて配線する最終段階の工程であり,機能の記述の直後に行われる工程ではありません。順序としては,機能の記述→論理合成→配置配線が正しい流れです。
- イ正しい。FPGAの設計フローは,まずHDLなどで回路の動作を「機能の記述」として表現し,それを論理ゲートの組合せに変換する「論理合成」を行い,最後にFPGA内部の実際のリソースへの「配置配線」を行うという順序で進められます。
- ウ誤り。配置配線は,論理合成された回路をFPGAの実デバイス上に割り当てる最終工程であり,最初に行う工程ではありません。設計はまず機能の記述から始まります。
- エ誤り。論理合成は,機能の記述(HDLなど)を基に行われる工程であり,機能の記述より前に行うことはできません。設計は,機能の記述→論理合成→配置配線の順に進みます。