UCAgent: An End-to-End Agent for Block-Level Functional Verification
Junyue Wang, Zhicheng Yao, Yan Pi, Xiaolong Li, Fangyuan Song, Jinru Wang, Yunlong Xie, Sa Wang, Yungang Bao

TL;DR
UCAgent is an innovative end-to-end verification agent that automates block-level functional verification, overcoming LLM limitations and achieving high coverage and defect discovery in complex hardware modules.
Contribution
It introduces a Python-based verification environment, a structured multi-stage workflow, and a hierarchical labeling mechanism to enhance verification reliability and automation.
Findings
Achieves up to 98.5% code coverage and 100% functional coverage.
Successfully verifies multiple modules including UART, FPU, and divider.
Discovers new design defects in realistic hardware modules.
Abstract
Functional verification remains a critical bottleneck in modern IC development cycles, accounting for approximately 70% of total development time in many projects. However, traditional methods, including constrained-random and formal verification, struggle to keep pace with the growing complexity of modern semiconductor designs. While recent advances in Large Language Models (LLMs) have shown promise in code generation and task automation, significant challenges hinder the realization of end-to-end functional verification automation. These challenges include (i) limited accuracy in generating Verilog/SystemVerilog verification code, (ii) the fragility of LLMs when executing complex, multi-step verification workflows, and (iii) the difficulty of maintaining verification consistency across specifications, coverage models, and test cases throughout the workflow. To address these…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
