# VeriMoA: A Mixture-of-Agents Framework for Spec-to-HDL Generation
> [!info] Talk metadata
> - **会議:** [[MLSys2026]] Day 2 (May 19 / Tue)、Research Track Oral "Agentic AI 1 & Multimodal/Generative Models" セッション(13:15 - 13:30 PDT、第2発表)
> - **URL:** https://mlsys.org/virtual/2026/oral/3855 (arXiv: https://arxiv.org/abs/2510.27617 )
> - **登壇者:** Heng Ping(University of Southern California, PhD student, advised by Prof. Paul Bogdan)
> - **著者:** Heng Ping¹, Arijit Bhattacharjee², Peiyu Zhang¹, Shixuan Li¹, Wei Yang¹, Anzhe Cheng¹, Xiaole Zhang¹, Jesse Thomason¹, Ali Jannesari², Nesreen Ahmed³, Paul Bogdan¹
> - ¹University of Southern California, ²Iowa State University, ³Cisco AI Research
> - **正式タイトル:** "VeriMoA: A Mixture-of-Agents Framework for Spec-to-HDL Generation"(論文/スライド表紙)。論文サブタイトル相当の内部名は "Quality-guided Multi-path Mixture-of-Agents for HDL Generation"。
> [!abstract] 概要(論文 PDF アブストラクト 忠実訳)
> Register Transfer Level(RTL)設計の自動化は、増大する計算需要に開発者が応えるのを助ける。大規模言語モデル(LLM)はハードウェア記述言語(HDL)生成に有望だが、限られた parametric 知識とドメイン固有の制約のため課題に直面する。prompt engineering と fine-tuning は知識カバレッジと訓練コストに限界がある一方、multi-agent アーキテクチャは協調的推論を通じて推論を強化する訓練不要のパラダイムを提供する。しかし現行の multi-agent アプローチは2つの致命的欠陥を抱える: ノイズ伝播への脆弱性と、制約された推論空間探索である。本論文では、2つの相乗的なイノベーションを持つ訓練不要の mixture-of-agents(MoA)フレームワーク **VeriMoA** を提案する。第一に、全中間 HDL 出力を保持し、生成プロセス全体にわたる品質ベースのランキングと選択を可能にする **quality-guided caching mechanism**。これは推論層を越えた知識蓄積を促す。第二に、C++ と Python を中間表現として活用し、spec-to-HDL 変換を2段階プロセスへ分解する **multi-path generation strategy**。これは高リソース言語における LLM の流暢さを活かしつつ解の多様性を促進する。VerilogEval 2.0 と RTLLM 2.0 ベンチマークでの包括的実験は、VeriMoA が多様な LLM バックボーンにわたり Pass@1 で **15〜30% の改善**を達成し、特に小型モデルが大型モデルや fine-tuned 代替手法に匹敵することを、訓練を要さずに可能にすると示す。
## 背景・タスク: 自然言語仕様からの HDL 生成
- タスク: **自然言語仕様(spec)から HDL(Hardware Description Language)コードを自動生成し、EDA ツール+シミュレーションで検証する**(スライド「Background & Motivation」: Specification → LLMs → HDL Code → EDA Tools & Simulation)。
- HDL が LLM にとって難しい3つの理由(スライド「Why HDL is hard for LLMs?」):
1. **Sparse Pretraining Data**: HDL は LLM の事前学習コーパスで C++/Python に比べ遥かに希薄(HDL ≪ C++/Python)。
2. **Concurrent/Timing Semantics**: 通常のプログラミング言語のような逐次的でない並行/タイミング意味論を持つ。
3. **Synthesis Constraints**: HDL は機能的に正しいだけでなく合成可能(synthesizable)でなければならない。
- 帰結: **汎用 LLM は正しい HDL を生成するのに十分なドメイン固有知識を欠く**。
## 既存の3アプローチとその限界
スライド「Existing Approaches & Missing Gap」の比較表より:
| アプローチ | 代表的研究 | 限界 |
|---|---|---|
| Prompt Engineering | ParaHDL, AoT, HDLCoRe | LLM の希薄な HDL 知識に上限を縛られる |
| SFT / RL | RTLCoder, VeriRL, CodeV | 訓練・データキュレーションが高コスト |
| Multi-Agent Systems | MAGE, CoopetitiveV, VeriMaAS | error propagation または chaotic exploration |
- Multi-Agent の既存2パイプライン(スライド):
- **Sequential Pipeline**(Gen Agent → TB Agent → Debug Agent): error が累積(accumulated error)。
- **Debate Pipeline**: (1) 強いエージェントが支配する(stronger agent dominates)、(2) 収束保証がない(no convergence guarantee)。
## MoA とそのギャップ
- **MoA(Mixture-of-Agents)= 層状パラダイム**(スライド「Mixture-of-Agents (MoA)」)。複数層からなり、各層内で複数エージェントが並列に動作。proposer は先行出力をより良いものへ refine し、最終 Aggregator が合成して final output を出す。
- MoA が HDL に有望な理由: (1) 層+並列の structured information flow、(2) instruction-following/reasoning ベンチで superior、(3) training-free(任意の LLM バックボーンで動く)。
- 標準 MoA に残るギャップ(スライド):
- **Cascaded dependency**: 各層は直前の層しか見ない。
- **Information loss**: 早い層の有用解が忘却される。
- **Limited reasoning path**: 全 proposer が似た推論をし、解の多様性が制限される。
### Key Insight: MoA 性能を決めるもの
- 引用先行研究(Li et al., 2025b "Rethinking Mixture-of-Agents: Is Mixing Different Large Language Models Beneficial?"): **MoA 性能は MoA 層内のエージェントの quality と diversity に強く影響される**。
- 線形モデルで近似(論文 Eq.12 / スライド):
$ t = \alpha \cdot q + \beta \cdot d + \gamma $
- $q$ = proposer quality、$d$ = proposer diversity、回帰係数は $\alpha > \beta$(**quality が diversity より重要だが、両方とも本質的**)。
- 改善の2方針: quality 改善 → **Quality-Guided Caching**(全中間出力を層横断でキャッシュ・ランク付け)、diversity 増加 → **Multi-Path Generation**(C++ と Python の中間表現経由で生成)。
## Innovation 1: Quality-Guided Caching(品質ガイドキャッシュ)
- アーキテクチャ3要素: MoA 層、quality evaluator $\mathcal{Q}$、global cache(スライド「Framework Overview」「Innovation 1」、論文 §4.1)。
- 全中間 HDL 出力とその品質スコアを global cache に格納(論文 Eq.4):
$ \mathcal{C} = \{(H_{i,j}, q_{i,j}) \mid i \in \{1,\dots,L-1\}, j \in \{1,\dots,M\}\} $
- 各層のエージェントは、全先行層から品質上位 $n$ 件(TopN)を選び prompt に統合(論文 Eq.5/Eq.6)。第1 proposer 層は設計記述 $\mathcal{D}$ のみを受け取り、$i \ge 2$ では $\mathcal{P}_{i,j} = \mathcal{D} \oplus \mathcal{H}_i^{(n)}$。
- **Quality Evaluation(Algorithm 1)**: シミュレーションベースで HDL-specific な階層スコアリング。
- syntax と function を両方 pass → $q_{\text{perfect}}$(満点)。
- syntax のみ pass(function fail)→ severity-weighted penalty: $q = q_{\text{base}} - p_{\text{severe}} - p_{\text{moderate}} - p_{\text{minor}}$(logic errors / synthesis issues / style issues)。
- syntax fail → rule-based fallback: $q = q_{\text{structure}} + q_{\text{logic}} + q_{\text{format}}$(module/IO 構造、logic キーワード、formatting)。
- reset 信号要件・signal driving 衝突・timing 制約等のハードウェア設計原理を符号化し、汎用 LLM に欠けるドメイン専門性を feedback として注入。
- 標準 MoA との対比(スライド「Innovation 1」): 標準 MoA は低品質 HDL を後段へ流し汚染する。VeriMoA は (1) **errors が各層でフィルタされる**、(2) **top-quality 解が保存される**、(3) **深いエージェントが best so far の上に積み上げられる**。
- **Global caching + quality scoring → 層を越えた monotonic quality improvement**(単調品質改善)。理論解析(論文 §5.2)で最小品質非減少(Eq.14)・平均品質改善(Eq.15)を保証、$\mathbb{E}[q_{i+1,j}] \ge \mathbb{E}[q_{i,j}]$(Eq.16)。
## Innovation 2: Multi-Path Generation(マルチパス生成)
- C++/Python を中間表現として使う multi-path・2段階アプローチで、高リソース言語での LLM の強みを活用しつつ解の多様性を促進(スライド「Innovation 2」、論文 §4.2)。
- 各層 $M$ エージェントは3タイプ(論文 Eq.11、$\mathcal{A}_i = \{A_i^{t_j} \mid t_j \in \{\text{Base, Cpp, Py}\}\}$):
- **Base Agent**: 設計記述から HDL を直接生成。hardware-native thinking、HDL の慣習を捉える。
- **C++ Agent**: 設計記述 → 中間 C++(HLS) を生成・check & refine → HDL へ翻訳(2段階)。imperative/bit-level reasoning、HDL 挙動へ綺麗に対応。
- **Python Agent**: 同様に中間 Python(HLS) を経由。abstract/algorithmic reasoning、high-level intent を捉える。
- 2段階生成(論文 Eq.7-9): Stage 1 で中間コード $I_{i,j}^{\mathcal{L}}$ を生成・syntax 検証・self-refine、Stage 2 で refine 済み中間コードを参照に HDL $H_{i,j}^{\mathcal{L}}$ を生成。
- 効果: LLM は C++/Python に遥かに流暢 → その強みを活かす。3エージェントの **heterogeneous reasoning trajectories** で解空間探索を広げる。
- オプションで **Simulator-Based Self-Refinement**(シミュレータ $\mathcal{S}$ + testbench $\mathcal{T}$ の実行 feedback で refine)を proposer/aggregator 両方に一律適用可能。
## 実験設定
- **ベンチマーク**(スライド「Experimental Setup」): VerilogEval 2.0(156 problems)、RTLLM 2.0(50 complex designs)。
- **LLM バックボーン**:
- Open-Source: Qwen2.5(7B/14B/32B)、Qwen2.5-Coder(7B/14B/32B)。
- Closed-Source: GPT-4o-mini、GPT-4o。
- Open-Source Domain-Specific: VeriRL-CodeQwen2.5。
- **構成**: **L = 4 layers**、**M = 6 agents/layer**(2 Base + 2 C++ + 2 Python)、Simulator = **Icarus Verilog**、Metrics = Pass@1 / Pass@3 / Pass@5。
- **Research Questions**: RQ1 主性能、RQ2 コア要素の寄与、RQ3 推論コスト比較、RQ4 パラメータ感度、RQ5 manual testbench 不要時のロバスト性。
## 実験結果
### RQ1: vs Non-Training(agentic)ベースライン
スライド「Main Result — vs Non-Training Baselines (RQ1)」(VerilogEval 2.0 / RTLLM 2.0、各 Pass@1/3/5、Direct/CoT/HDLCoRe/VeriMaAS と比較):
- **+15〜33 Pass@1 ポイントの改善**を全バックボーンで達成。
- **小型モデルが大型ベースラインを上回る**: VeriMoA-Qwen2.5-7B(VerilogEval Pass@1 = 56.44%)> VeriMaAS-Qwen2.5-32B(53.6%)。
- **小型モデルほど boost が大きい**: Qwen2.5-7B は GPT-4o(Direct) に対し +33 ポイント、GPT-4o は +20 ポイント。代表値: GPT-4o + VeriMoA で VerilogEval Pass@1 = 84.97%(Direct 64.74% から +20.23)。
- takeaway: **アーキテクチャ設計が scale に勝る**(全バックボーンが改善し、小型ほど改善幅大)。
### RQ1 & RQ2: vs SFT/RL モデル + アブレーション
スライド「Main Result — vs SFT/RL Models + Ablation」:
- 訓練不要フレームワークが **fine-tuned モデルに匹敵/超過し、かつ相補的**:
- VeriRL-CodeQwen2.5(7B, fine-tune): VerilogEval Pass@1 = 66.28%。
- Qwen2.5-Coder-32B + VeriMoA = 73.31%(fine-tuned を超える、訓練不要)。
- **VeriRL-CodeQwen2.5 + VeriMoA = 82.47%**(fine-tuned モデルと組み合わせてさらに約 +16 ポイント)。
- アブレーション(スライド下段棒グラフ、base / MoA / +Two-stage / +Q-Cache / +Q-Cache+Two-stage / +SR の段階的寄与): **Q-Cache が基盤で、Two-stage のポテンシャルを解放する**(quality first, then diversity)。例: GPT-4o では base 64.7 → ... → 82/85.0 まで段階的に向上。
### RQ3: 推論コスト分析
スライド「Inference Cost Analysis (RQ3)」(Baseline / VeriMaAS / VeriMoA-Lite / VeriMoA、Pass@1 と Tokens):
- VeriMoA は **約 10x の baseline トークンコスト**で **+20〜25 Pass@1 ポイント**(例: VerilogEval, Qwen2.5-Coder-32B: baseline 46.93%/0.63k → VeriMoA 73.31%/6.95k(11.03×))。
- **VeriMoA-Lite**: VeriMaAS と同等コストで Pass@1 が **+11 ポイント高い**(例: VerilogEval GPT-4o-mini で VeriMaAS 57.24% vs VeriMoA-Lite 68.41%)。
- **Accuracy vs Tokens(agent 数を GPT-4o-mini で変化)**: トークンは線形に増えるが Pass@1 ゲインは飽和(VerilogEval で agents 2→6 のとき増分が +3.9 → +0.9 ポイントへ縮小)。**diminishing returns**: 少数エージェントで大半のゲインを獲得。
### RQ4 & RQ5: パラメータ感度・ロバスト性
スライド「Parameter Sensitivity & Robustness」:
- **Layer Depth × Layer Width**(VerilogEval 2.0, Qwen2.5:7b の 2D ヒートマップ、Pass@1 Rate %): depth も width も重要(1-layer または 1-agent 構成は <40% で頭打ち)。**等予算では Width > Depth**: 2L×6W(48.5%)が 4L×3W(46.4%)を上回る。
- **Manual Testbench vs LLM-Generated Testbench**(GPT-4o-mini、RQ5): 手動 TB を LLM 生成 TB に置換すると軽微な劣化のみ(VerilogEval Pass@1 −4.59、RTLLM Pass@1 −3.72 等、−2.8〜−4.6 ポイント)。それでも manual TB を使う VeriMaAS を上回る。
## 結論・将来計画
- **結論**(スライド「Conclusion & Future Plan」):
- Quality-Guided Caching: 層を越えた monotonic knowledge accumulation。
- Multi-Path Generation: LLM の C++/Python 流暢さ + 構造化された diversity を活用。
- 多様な LLM で **15〜30% Pass@1 ゲイン**、小型モデルが大型に匹敵、fine-tuning と相補的。
- **将来計画**:
- **Hierarchical Generation**: planner agent が大規模設計(RISC-V cores, NoC routers)をモジュールへ分解し VeriMoA へ。
- **Cross-Domain Transfer**: quality-guided multi-path MoA を他のコード生成タスク(CUDA, assembly, HLS)へ拡張。
## Q&A
- **Q(聴衆)— Claude Code 等の既存エージェントフレームワークとの長期的な位置づけ:** 昨今のエージェントフレームワークの速いペースを踏まえ、皆が Claude Code(※文字起こし不鮮明)のようなツールを使う中で、こうしたアーキテクチャ設計は長期的に既存ツールと比べてどう位置づけられるか。
- **A:** 現在多くのエージェントフレームワークがある。Claude Code は大規模なエンジニアリングプロジェクトなので、VeriMoA はその小さなコンポーネントとして Claude Code 等の別フレームワークに plug-in され、全体性能を改善できる。それが本フレームワークの core value である。