論理合成とは?ろんりごうせい
論理合成とは、HDLで書いたレジスタ転送レベルの機能記述を、対象デバイスのセルライブラリに含まれるゲートの接続、すなわちネットリストへ自動変換する処理。面積・動作周波数・消費電力を制約として与えると、ツールがその範囲で回路構造を選び直して最適化する。
最終更新:2026-10-06
この語が出る過去問を解く →背景
同じ機能でも、速度を取るか面積を取るかで最適なゲート構成は変わり、しかもその答えは対象プロセスのセルライブラリごとに違う。人手で最適解を探していては、デバイスを変えるたびに設計をやり直すはめになる。機能の記述と実装の最適化を分離し、設計者の意図は制約という形で渡す仕組みにしたことで、同一のRTLをFPGAにもASICにも載せられるようになった。
具体例
SynopsysのDesign CompilerやAMDのVivadoでは、create_clockで目標周期を、set_max_areaで面積上限を制約として与える。同じRTLでも周期の制約を厳しくすると、加算器がリプルキャリーから桁上げ先見の構造へ置き換わり、面積が増える形で結果が変わる。
試験での引っ掛け
この段階の遅延はライブラリ由来の見積りにすぎず、実配線を含む検証は配置配線の後にSTAで行う。合成では制約を満たしたのにP&R後にタイミングが破綻するのはこのためで、工程の順序を入れ替えた選択肢に注意する。C記述からRTLを起こす高位合成は一段上の工程、記述の意味を確かめるシミュレーションは横に並ぶ別作業で、いずれもこの処理そのものではない。
関連用語
出た過去問
出典:平成30年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問20(IPA)
FPGAの設計フローとして、適切なものはどれか。
正解:機能の記述 → 論理合成 → 配置配線
要点:FPGA設計は機能記述→論理合成→配置配線の順に進む
FPGAの開発では、まずHDLなどで回路の機能を記述し、次に論理合成によってその記述をルックアップテーブルやフリップフロップといった内部素子のネットリストへ変換する。続く配置配線で、そのネットリストを実チップ上のどの素子に割り当て、どの配線資源でつなぐかを決め、書込み用のデータを生成する。この「記述→論理合成→配置配線」の順序は逆転しない。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。