HDLFORGE: A Two-Stage Multi-Agent Framework for Efficient Verilog Code Generation with Adaptive Model Escalation

本論文は、コンパイルやテストなどの安価な診断に基づき軽量モデルから大規模モデルへ適応的にエスカレーションする 2 段階マルチエージェントフレームワーク「HDLFORGE」を提案し、Verilog 生成の精度と速度のトレードオフを最適化するとともに、形式検証に基づくマイクロテストの自動生成によりバグ検出と修正を効率化することを示しています。

Armin Abdollahi, Saeid Shokoufa, Negin Ashrafi, Mehdi Kamal, Massoud Pedram

公開日 2026-03-06
📖 1 分で読めます☕ さくっと読める

Each language version is independently generated for its own context, not a direct translation.

HDLFORGE:賢い「2 段階式」Verilog コード生成の秘密

この論文は、**「HDLFORGE(エッチディーエル・フォーグ)」**という新しいシステムを紹介しています。これは、人工知能(AI)を使って、電子回路を設計するための「Verilog(ベリログ)」というプログラミング言語を自動で作るための仕組みです。

一言で言うと、**「安くて速い AI をまず使い、ダメなときはだけ、高価で賢い AI に頼む」**という、とても効率的な「2 段階のチームワーク」を実現したものです。

以下に、専門用語を使わず、日常の例え話で解説します。


1. 従来の問題:「全員が超一流」だと高すぎる

以前までの AI による回路設計では、どんな小さな仕事でも「超一流の天才 AI(巨大なモデル)」を使っていたり、逆に「安価な AI」だけを使って失敗したりしていました。

  • 天才 AI だけを使うと: すごく正確ですが、お金も時間(計算リソース)もかかりすぎて、小さな仕事には不向きです。
  • 安価な AI だけを使うと: 速いですが、ミスが多く、結局やり直しで時間がかかってしまいます。

2. HDLFORGE のアイデア:「見習い」から「職人」へのエスカレーション

HDLFORGE は、このジレンマを解決するために、**「2 段階のチーム」**を作りました。

【第 1 段階:見習い職人(ステージ A)】

  • 役割: まず、**「中くらいの AI(7B モデルなど)」**が、指示された回路設計を一生懸命作ります。
  • 特徴: 安くて速いです。
  • チェック体制: 作られたコードは、すぐに「簡易検査(コンパイルや簡易テスト)」を受けます。
    • もし「文法ミス」があれば即座に直します。
    • もし「小さなテスト」で失敗すれば、その失敗原因をメモして、次の回に活かします。
  • 成功すれば: ここで終了です。安くて速く終わります。

【第 2 段階:超一流の職人(ステージ B)】

  • いつ呼ぶか? 見習い職人が何度やっても失敗し続けたり、難しすぎる問題だと判断されたときだけ呼び出します。
  • 役割: **「超巨大な AI(Claude 3.5 など)」**が、見習いが失敗した「失敗ノート」と「簡易テスト」を見ながら、最終的に完璧なコードを作ります。
  • 特徴: 高価ですが、一度きりしか使いません。

🍳 料理の例え:
夕食を作る際、まず**「安くて速い料理人(見習い)」**に頼みます。

  • 彼が「卵焼き」を作れれば、それで OK。
  • もし「難しいフレンチ料理」を頼んで失敗しそうになったら、**「ミシュラン星付きの天才シェフ(超一流)」**に「失敗した理由と材料」を渡して、最後に仕上げを頼みます。
    こうすれば、安くて速い料理は安く作れ、難しい料理だけ高価なシェフを使えばいいので、トータルのコストと時間を節約できます。

3. このシステムの「魔法」の 3 つの秘密

HDLFORGE が優れているのは、単に AI を 2 段階にしたことだけではありません。3 つの工夫があります。

① 「失敗の証拠」を「練習問題」に変える(マイクロテスト)

AI が回路設計でミスをしたとき、単に「直して」と言うだけでは、AI は同じミスを繰り返します。
HDLFORGE は、「なぜ失敗したか」を分析し、その失敗パターンを「小さな練習問題(マイクロテスト)」として作ります。

  • 例え: 料理人が「卵を焼きすぎた」失敗をしたとします。HDLFORGE は「次は 3 分間だけ加熱して、焦げないか確認する」という**「小さなチェックルール」**を作ります。
  • 次回から、見習い職人はこのルールに従って作るので、同じ失敗を繰り返さなくなります。これを「反例に基づく学習」と呼びます。

② 「診断スコア」で判断する

「いつ、天才シェフを呼ぶべきか?」を AI が直感で決めるのではなく、**「診断スコア」**という数値で判断します。

  • コンパイルは通ったか?
  • 警告は少ないか?
  • 簡易テストは合格したか?
    これらを総合して「この問題は自分たちで解決できるか?」を計算し、無理ならすぐに天才シェフに頼みます。

③ 既存のシステムにも乗せられる(ポータブル)

HDLFORGE の「判断システム(コントローラー)」は、他の AI システムの上に乗せられるように作られています。

  • 例え: 既存の料理店(他の AI システム)が「失敗しやすい」としても、HDLFORGE の「判断システム」をその店の前に置くだけで、**「失敗しそうなら天才シェフを呼ぶ」**というルールを適用できます。中身を変える必要はありません。

4. 結果:どう変わった?

実験結果は素晴らしいものでした。

  • 精度: 小さな AI を使っても、大きな AI を使うシステムに負けない、あるいはそれ以上の正解率を達成しました。
  • 速度: 多くの簡単な問題では、安価な AI で済むため、待ち時間が半分以下になりました。
  • バグ発見: 回路の「バグ(欠陥)」を見つけ、直すまでの時間が大幅に短縮されました。

まとめ

HDLFORGE は、**「安くて速い AI を基本にしつつ、本当に難しいときだけ高価な AI を呼ぶ」**という、賢いリソース配分の仕組みです。

さらに、**「失敗を練習問題に変えて、AI が同じミスを繰り返さないようにする」**という工夫を加えることで、より正確で、より速い回路設計を実現しました。これは、AI を使う際の「コストと性能のバランス」を完璧に取った新しいアプローチと言えます。