topics: [“OpenLane”, “SKY130”, “EDA”, “半導体”, “VLSI”]
OpenLane を触っていると、こんな疑問が出てきます。
EDA フローの紹介記事を見ていると、
結果が出たあとで条件が調整されているケースも少なくありません。
そこで今回は、
最小限の自作 RTL を「事前に宣言」した状態で OpenLane superstable を流し、
RTL → GDS まで本当に完走するのか
を検証しました。
やったことは非常にシンプルです。
性能評価や最適化は、
今回の検証対象には含めていません。
今回のキーワードは 事前宣言 です。
これはツールの正式な用語ではなく、
結果を見る前に、
RTL・制約・成功条件を決めておくこと
を意味しています。
つまり、
といった 後出し解釈をしないための約束です。
設計は 本当に最小限です。
| 項目 | 内容 |
|---|---|
| 機能 | フリーランニング・カウンタ |
| FSM | なし |
| クロック | 単一 |
| リセット | なし(simulation-only 初期化) |
| マクロ | 使用しない |
RTL:
rtl/spm_min_counter.v
| 項目 | 値 |
|---|---|
| クロック周期 | 10ns(100MHz) |
| Core utilization | 30% |
| Aspect ratio | 1.0 |
設定ファイル:
openlane/config.tcl
spm_min_counter/
├─ README.md
├─ rtl/
├─ sim/
│ ├─ tb_spm_min_counter.v
│ ├─ run.sh
│ └─ wave/
├─ openlane/
├─ runs/
├─ results/
└─ run_log/
本検証により、OpenLane superstable は
最小 RTL でも、事前宣言条件下で RTL → GDS を完走可能
であることを確認しました。