Edusemi-v4x

4.5 OpenLaneによる物理設計フロー

この節では、Verilogで記述された設計を物理チップとして実現するための一連のステップを、OpenLaneを使って実行する手順とともに解説します。RTL(論理設計)からGDS(製造データ)への変換には、多くの中間工程が存在しますが、それぞれに意味があり、設計者が理解しておくべき要点があります。


🔧 OpenLaneとは

OpenLaneは、Sky130プロセスを前提としたオープンソースの物理設計フロー自動化ツールです。以下の工程を統合的にサポートします:

すべてをMakefileやスクリプトを通じて自動化可能であり、教育用途にも優れています。


🔁 フロー全体のステップ概要

物理設計の典型的なステップは以下の通りです:

  1. 合成(Synthesis)
    • RTL → Gate-Level Netlist 変換(論理合成)
  2. Floorplan(フロアプラン)
    • チップサイズ、ピン配置、マージン設定
  3. Placement(配置)
    • 標準セルを最適な位置に配置
  4. Clock Tree Synthesis(CTS)
    • クロック配線とバッファ挿入
  5. Routing(配線)
    • 全ネットの配線処理
  6. DRC/LVSチェック
    • ルール違反、回路一致の検証
  7. GDS出力
    • 製造向け最終マスクデータ生成

🧪 実行の基本構成

各ブロックのRTLを配置したディレクトリ(例:designs/fsm/)に、以下のファイルが必要です:

▶ 例:fsm デザインの実行方法

cd OpenLane/
make DESIGN=fsm

実行後、runs/fsm/ 以下に結果が格納されます。


📦 出力ファイルと確認ポイント

GTKWaveやKLayoutで波形やレイアウトを確認することができます。


🧩 補足:Makefileとconfig.tclの要点


🎯 教材としての意義

物理設計は「見えない論理」から「形のあるチップ」を生成する工程です。OpenLaneはその過程を明示的に可視化し、試行錯誤を通じて設計理解を深めるための優れた教材環境です。


🔗 次節への接続

次節 4.6 では、OpenLaneを通じて得られた結果(レイアウト図、タイミングレポート、DRC状況など)を確認・比較し、設計改善のヒントを考察します。