“万众一芯”是基于众包模式的芯片验证平台。支持使用 Python/Java/Go 等编写芯片单元测试UT(Unit Test)用例,同时兼容传统UVM验证框架,旨在让软件工程师也可以参与芯片验证。
“万众一芯”汇聚软硬件工程师、高校学生与极客的力量,让“一万个人共同参与验证一款芯片”。开源高性能 RISC-V 处理器核“香山”是首批“万众一芯”平台的开源芯片项目。期待您与我们一起,为开源芯片的发展贡献力量!
今天是10月24日开发者日,祝各位开发者们节日快乐!“万众一芯”准备了一份特别的礼物——刚刚开源的UCAgent,一个超好用的硬件验证AI助手!不管你是正在学习数字电路的学生,还是奋战在一线的工程师,这个新工具都能让你的验证工作变得更简单、更智能。
UCagent 介绍
UCAgent 是“万众一芯”推出的,一个基于大语言模型的自动化硬件验证 AI Agent。UCAgent 专注于芯片设计的单元测试(Unit Test)验证工作,可以自动分析硬件设计,生成测试用例,并执行验证任务生成测试报告,让单元级硬件验证进入智能化新阶段。
目前,UCAgent 已在GitHub上开源(仓库地址:https://github.com/XS-MLVP/UCAgent)
为了让大家更好的进行体验,我们将在10月30日(周四)晚上7:00-8:00,直播讲解《UCAgent实操指南》。此次直播将详细演示 UCAgent 的安装、配置和使用方法,帮助大家快速上手并体验其强大功能。点击下方卡片即可预约直播??
UCAgent 的能力与特点
UCAgent 提供了完整的 Agent 与 LLM 交互逻辑,并集成了丰富的文件操作工具,可通过标准化API与大语言模型进行直接交互。除此之外,UCAgent 还可以通过 MCP 协议与通用 Agent 进行深度协同。它具备以下三个特点:
简单模块100%自动验证
对于简单电路(约1000行Verilog代码以下),UCAgent 可以实现100%自动化验证,不需要人力参与;对于复杂电路,通过人机协同,也能够完成验证。
支持常见 Code Agent
现有编程类 AI Agent(如 OpenHands、Copilot、Claude Code、Gemini-CLI、Qwen-Code 等)可以通过 MCP 协议与 UCAgent 进行深度协同,实现更优的验证效果和更高的自动化程度。
工作流程可自由定制
UCAgent 采用了一套灵活的验证流程配置机制,整体工作流可由用户自行配置,增删包括主阶段,子阶段,checker在内的流程,支持用户根据不同的应用场景和验证来调整验证阶段。
(UCAgent 工作流)
UCagent 的安装与使用
关于 UCAgent 的完整使用手册,已经发布在“万众一芯”官网(地址:https://open-verify.cc/mlvp/docs/ucagent/)
UCagent 安装
系统要求:
① Python 版本: 3.11+
② 操作系统:Linux / macOS
③ API 需求:可访问 OpenAI 兼容 API
④ 内存:建议 4GB+
⑤ 依赖:picker(将 Verilog DUT 导出为 Python 包)
安装方式:(pip 安装)
pip install git+https://git@github.com/XS-MLVP/UCAgent@mainucagent --help# 确认安装成功
版本更新:
ucagent --upgradeUCAgent 使用
UCAgent有两种使用模式,一种是直接使用本地 cli 配合大模型的直接使用方式;另一种是 UCAgent 提供 MCP-server 和 code agent 组合使用的MCP模式。
相比之下,我们更推荐后者。因为目前 code agent 能力更加强大,能够更好地满足我们的需求和完成任务。
安装教程:MCP集成模式(推荐)
https://open-verify.cc/mlvp/docs/ucagent/usage/mcp/
安装教程:直接使用模式
https://open-verify.cc/mlvp/docs/ucagent/usage/direct/
UCagent 试用案例
目前,我们提供了8个例子,欢迎大家进行试用体验,其中包括7个全自动化验证的例子,1个人机协同的例子,包含了 verilog 和 chisel 模块。案例在持续增加中,欢迎大家贡献issue反馈和PR。(仓库地址:https://github.com/XS-MLVP/UCAgent)
案例地址:https://github.com/XS-MLVP/UCAgent/tree/main/examples
自动化验证模块:
Adder:16行Verilog
ALU754:657行Verilog
FSM:45行Verilog
HPerfCounter:285行Verilog
IntegerDivider:434行 (Scala源码) + 1024行 (生成的Verilog)
Mux:15行verilog
ShiftRegister:27行verilog
人机协同验证模块:
DualPort:115行Verilog
最后,欢迎各位参加10月30日(周四)晚上7:00-8:00的《UCAgent实操指南》直播。我们将深入演示工具配置、验证流程定制,以及如何与现有Code Agent进行MCP协议集成,帮助开发者们快速将这一创新工具应用到实际开发工作中。
点击下方图标,关注开芯院平台
▼
