シンセサイザ

veryl synth はプロジェクトに対して簡易的な論理合成を行い、概算の面積・タイミング・電力を報告します。これは設計検討中に素早くフィードバックを得るためのツールであり、本格的な合成フローの代替を意図したものではありません。設計は選択したライブラリ内の代表的なセル群へマッピングされますが、配置配線・負荷容量・駆動能力・Vth の選択は考慮されません。

$ veryl synth

トップモジュールは以下の優先順位で選択されます。

  1. 指定されている場合、CLI の --top <name>
  2. 設定されている場合、Veryl.tomlsynth.top
  3. プロジェクト内で最初に見つかったユーザーモジュール

セルライブラリ、クロック周波数、トグル率といった設定項目については [synth] を参照してください。

出力

デフォルトでは、veryl synth は1行のサマリと、面積/タイミング/電力の詳細ブロックを出力します。

synth: TopModule — 123 gates, 17 FFs
library: sky130_fd_sc_hd ...

summary:
  area:        1234.56 um²  (comb 1100.00, seq 134.56)
  timing:        2.345 ns      8 levels  in_dat → out_dat
  power:        0.1234 mW   (leak 0.0123 mW, dyn 0.1111 mW)
                            @ f_clk = 100 MHz, activity = 0.10

area:
  ...
timing:
  ...
power:
  ...

オプション

オプション説明
--top <name>トップモジュール名。Veryl.tomlsynth.top を上書きします。
--timing-paths <n>タイミングダンプで報告する最悪遅延エンドポイントの数。synth.timing_paths を上書きします。
--dump-irゲートレベル IR(ゲートとフリップフロップのネットリスト)をダンプします。
--dump-areaセル種別ごとの面積内訳をダンプします。
--dump-timingクリティカルパスのトレースをダンプします。
--dump-power電力見積もり(漏れ電力+動的電力の内訳)をダンプします。

--dump-* フラグが何も指定されない場合、面積/タイミング/電力の3つすべてがダンプされます。