ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

LLM与智能体如何重塑芯片设计?从业者的实践与踩坑指南

LLM与智能体如何重塑芯片设计?从业者的实践与踩坑指南 芯片行业这两年最常被问的一句话不是“你的设计几纳米”而是“AI到底能不能帮我写RTL”。我入行做数字IC设计和验证已经十几年早期也做过EDA工具开发看着LLM从一个聊天玩具变成能正经生成Verilog的写手再到智能体开始在仿真、综合、物理设计流程里当“调度员”这个变化比想象中快得多。CNCC2026把“LLM与智能体重塑芯片设计”作为热点方向放出来我觉得很有代表性——它说明业界已经不满足于讨论“AI能不能用”而是开始认真探讨“AI怎么组织起一条完整的设计链路”。这篇文章我不打算复述会议PPT而是从一个从业者的角度把我在这两年里实际折腾LLM和智能体做芯片设计工具的摸索、踩坑和判断系统整理一遍顺便聊聊在2026年这个时间点哪些是真趋势哪些还只是Demo。1. 为什么芯片设计会成为LLM和智能体的主战场1.1 芯片设计流程里的“三座大山”先说清楚芯片设计为什么需要AI。数字芯片从想法到流片大体要经过架构定义、RTL编码、功能验证、逻辑综合、物理实现、签核这六大段。每一段之间的衔接都特别“吃人”规格文档要转成微架构设计微架构要写成RTLRTL要翻译成验证用例版图要靠布线工程师一版一版调。这里面的核心矛盾是三座大山人力密集、周期漫长、知识沉淀严重依赖个人经验。我自己的感受是RTL编码和验证用例生成这两块占了整个设计周期里大约40%到50%的工作量。而这两块恰恰是LLM最擅长的事情——把自然语言或伪代码转成结构化代码把接口协议转成测试序列。过去我们说的传统AI在芯片里用的最多的是ML预测比如用机器学习做时序预测、拥塞预测、IR drop预测那是“算得更快”的路子。而LLM和智能体不一样它们是“接手任务”的路子。1.2 LLM和智能体不是之前那拨ML这里必须分清楚一个概念。很多做EDA的老同事一听到AI就说“我们早就用了ML”。是EDA的AI应用从2000年初就有做布局布线优化、做功耗分析都是拿模型去拟合物理量。但LLM和智能体的逻辑完全不同传统ML解决的是“给定输入预测输出”的回归问题而LLM解决的是“给定意图生成产物”的生成问题智能体更进一步它把“读文档、写代码、跑仿真、看报错、改代码”这一整串动作串成了闭环。我举个生活中的类比。传统ML像一个特别会看诊的医生你给他化验单他能预测病情LLM像一个能开药方的医生你描述症状他给你开方子而智能体是一个全科诊所你自己不用跑上跑下它帮你挂号、问诊、开药、复查如果病情不对它会自己调整方向。芯片设计恰恰就需要这种全科诊所式的协作因为设计和验证之间本来就是反复迭代、不断回环的。我之前在自己团队里做过一个很小的试验把一份APB slave接口的规格文档扔给一个由LLM驱动的智能体让它完成“生成RTL→生成testbench→跑仿真→修bug”的循环。第一次跑完说实话效果没有宣传片里那么惊艳但方向是对的——它真的能自己根据仿真报错去改代码而不是傻傻停在原地。这让我意识到这个技术的价值不在单点而在闭环。2. LLM和智能体在芯片设计里的三个层次芯片设计场景里的LLM和智能体不是一蹴而就的。我一般会把它们的应用分成三个递进层次这样也方便判断一个团队应该从哪起步。2.1 第一层代码级助手最接地气第一层是代码级助手也就是用LLM直接生成或补全RTL、UVM testbench、脚本。这一层是目前落地最多、见效最快的。具体来说常见用途有这么几块根据接口时序描述生成Verilog/SystemVerilog模块比如FIFO、寄存器堆、APB/UART/I2C的slave模型。根据验证计划生成UVM组件骨架包括driver、monitor、sequence、scoreboard。生成tcl/perl/python脚本跑综合、跑仿真回归、批量改文件名。给已有代码写注释、做review意见整理。我在实测中发现对于中等复杂度的模块几百行RTL通用LLM生成的第一版代码通常能达到“可仿真但不可直接交付”的水平。什么叫可仿真但不可交付代码语法能通过仿真能跑但时序边界、异步处理、跨时钟域约束这些工程细节经常是“看起来对实际上有隐患”。这一层最大的价值不是帮你把代码一次写对而是帮你在30分钟内搭出70分的骨架剩下的30分靠人来修。对工程师来说这其实是把“从0到1”变成了“从1到100”提速非常明显。2.2 第二层把EDA工具变成“能对话的专家”第二层是工具增强层核心是把自然语言接进EDA工具。传统上我们要用命令行敲一大堆参数要查手册才知道某个信号是什么意思。现在很多商业EDA工具和大厂内部工具开始内置LLM接口让你用自然语言问问题、发指令。举个例子跑完综合之后时序报告里有一句“slack violation at path xxx”。以前工程师要看报告、找路径、分析逻辑级数、看毛估电容。现在可以在工具面板里直接输入“为什么这条路径时序违例怎么优化”LLM会调出路径详情比对约束给出“这里逻辑级数太高建议插入流水寄存器”之类的建议。这一层另一个典型功能是设计规则解释。DRC/LVS跑完出一堆报错码每一条都要人工去查PDK文档LLM可以直接把它翻译成人话并且结合设计上下文给修改建议。这一层的价值是把“专家知识库”真正搬到了工具旁边大大提高诊断速度。我个人的判断是第二层是接下来两年最值得押注的方向因为它不改变设计流程的稳定性只是把人对工具的操纵界面从命令行升级为对话式。对大型EDA公司来说这正是把LLM能力销售给存量用户最安全的切口。2.3 第三层流程级智能体真正开始重构流程第三层才是真正意义上“重塑芯片设计”的层次。在这个层次一个或多个智能体接管的不再是单个任务而是跨工具、跨阶段的一串任务。这个层次里我看到了切实价值的场景有三个第一个是回归收敛。验证回归跑挂了两百个用例智能体把每个失败用例归因自动判断是RTL bug还是testbench bug如果是RTL bug就尝试给出修复补丁并重新跑回归。以前这个工作消耗验证工程师大半天现在可以压缩到几十分钟。第二个是覆盖率收敛。仿真覆盖率不达标智能体自动分析未覆盖代码生成定向用例跑完再看覆盖率增量再迭代。这需要智能体能够读取覆盖率数据库、理解未覆盖分支的语义、构造激励。这个方向难度高但价值极大。第三个是设计空间探索。在微架构层面面对“FIFO深度取多少”“流水线级数取几级”这类问题智能体自动配置参数、跑综合、跑仿真、收集PPA数据然后给出帕累托曲线。以前这是一个研究生做一星期的任务现在智能体可以陪你一个下午跑出十几个方案。表格对比一下三个层次层次核心能力改造对象复杂度当前成熟度代码助手生成/补全/解释代码工程师个人效率低较高工具增强自然语言交互EDA工具人机交互界面中快速增长流程智能体跨工具自动化决策闭环整个设计流程高早期探索坦白讲第三层现在还没有谁能拍胸脯说全面可用但它代表着行业最关心的方向。CNCC2026把标题定成“LLM与智能体重塑芯片设计”我想重点指的也是这个层次。3. 支撑智能体落地的关键技术拆解既然智能体要做的是一个闭环那就不能只靠一个LLM在那“自由发挥”。我现在搭智能体做芯片设计任务通常会围绕五个技术板块来设计缺一个都会在真实任务里掉链子。3.1 工具调用与EDA的API化智能体和普通聊天机器人的最大区别是它能“动手”。在芯片设计里“动手”意味着调仿真器、调综合工具、调覆盖率工具。所以第一步是必须把EDA工具封装成可被程序调用的API。以开源生态为例用Verilator做仿真回归用Yosys做逻辑综合用OpenROAD做布局布线这些工具都可以写成命令行调用。而商业EDA工具大多有tcl接口或者Python接口——比如在vcs、dc、pt里执行tcl命令然后从log文件里解析结果。智能体的“行动执行器”层要做的事情就是标准化这些命令调用把工具的返回结果log、报告、数据库统一成结构化格式。我在项目里用的是一个小型任务调度器每个EDA命令都定义成一个“工具卡”包含输入参数schema、命令模板、输出解析规则。智能体拿到一个目标后先通过LLM规划出“先编译再仿真再查覆盖率”的动作序列然后调度器依次执行把每一步的输出反馈给LLMLLM再决定下一步动作。这个过程跟人操作工具的逻辑是一样的只是机器替你做。3.2 RAG、记忆与上下文管理第二个关键技术是让智能体拥有足够的“领域知识”。通用LLM训练数据里虽然有大量Verilog代码但它并不懂你的PDK、不懂你公司的设计规范、不懂某个IP的使用限制。这些恰恰是芯片设计中最要命的信息。我的做法是做一套领域RAG检索增强生成。把三类东西向量化存进知识库一是设计文档包括架构文档、接口时序图描述、寄存器定义表二是约束文件以及相关说明比如SDC文件里每条约束的注释三是历史经验比如之前修过的bug记录、和工具使用FAQ。智能体每次行动前先根据当前任务从知识库里检索相关片段加入上下文窗口。上下文管理是另一个大坑。一个智能体连续跑10轮“仿真→报错→修码→再仿真”很容易把上下文塞满导致后面的推理质量急剧下降甚至丢失关键信息。我现在会在每次行动后做一次“状态压缩”把仿真结果总结成一两句话的关键结论而不是把整个log塞回去把修改过的代码diff也压缩成变更摘要。这相当于给智能体做“短时记忆管理”实际效果提升非常明显在线索长任务里尤其重要。3.3 多智能体协作和审计追踪复杂芯片设计任务我不建议只用一个智能体从头干到尾。更好的做法是拆成多智能体协作每个智能体有明确的角色。我常用的角色拆分是四类规划者是项目经理把大目标拆成小任务编码者是RTL工程师负责写代码验证者是验证工程师负责生成用例并判断失败原因分析者是质量员负责汇总lint、综合、覆盖率结果做最终判断。每个智能体共享一个工作记忆区域编码者改了哪个文件、验证者看到了什么报错都在共享状态区更新。多智能体带来的好处是职责清晰但也带来了新问题很难判断一个结果到底是被哪个环节的错误带偏的。所以我在每个关键节点都会要求智能体写审计记录——做了什么决策、依据是什么、改了哪些文件。这不是为了事后甩锅而是为了复盘整个推理链条。芯片设计是一个对安全性要求极高的领域如果最后交付了一个错误设计你用AI生成一句“它是这么说的”是交不了差的必须有可回溯的决策链。4. 一次完整的实操让LLM智能体从自然语言规格到RTL再到仿真闭环光谈概念没用我分享一次可复现的实操。任务目标让一个LLM智能体根据一段APB slave寄存器模块的规格描述自动生成RTL代码、自动生成定向testbench、自动跑仿真并迭代修复bug最终交出通过仿真回归的代码。这个任务我反复做过很多轮流程已经比较稳定拆开说明一下。4.1 目标任务与准备我选的模块是一个简单的APB slave带3个寄存器ID寄存器、控制寄存器、状态寄存器。它要从APB总线接口读写这些寄存器。这个模块足够小能完整跑通闭环但又有典型的读写逻辑、地址译码和时序问题方便展示智能体的能力边界。环境准备很简单Verilator或Icarus Verilog做仿真器两者都开源随装随用。一个LLM大模型API通用的也可以代码模型更佳。一个任务工作目录约定好RTL文件放哪、testbench放哪、log放哪。一段初始的规格描述文本。4.2 输入规格与prompt设计给智能体的初始输入可以写成这样任务实现一个APB slave寄存器模块 接口 - PCLK, PRESETn - PSEL, PENABLE, PWRITE, PADDR[7:0], PWDATA[31:0] - PRDATA[31:0], PREADY 寄存器 - 0x00 ID_REG只读复位值为0x12345678 - 0x04 CTRL_REG可读写bit0为enable复位为0 - 0x08 STATUS_REG只读bit0为busy 要求 1. 使用标准APB协议正确产生PREADY单周期访问 2. 生成SystemVerilog文件 apb_slave_regs.sv 3. 生成testbench apb_slave_regs_tb.sv验证读写和复位行为 4. 用verilator编译仿真保证回归通过这个prompt已经足够智能体开工。关键是任务要量化为动词不只是“帮我看一下”而是“启动仿真并把pass/fail结果告诉我”。智能体会把任务分解为“写RTL→写TB→编译→仿真→看结果”的动作链。4.3 自动化反馈循环智能体完成任务分解后交给调度器执行。以下是一个简化的内部决策循环伪代码while not task.completed and round max_rounds: result run_tool(verilator, compile_and_run, rtl, tb) if result.exit_code 0 and testcase.status pass: task.completed True else: analysis llm.analyze_failure(result.logs) code_changes llm.suggest_fix(rtl, tb, analysis) apply_code_changes(code_changes)这短短几行就是整个智能体闭环的核心思想。在真实运行中常见的问题在第一轮就会暴露比如testbench里APB时序写错了PENABLE和PWRITE拉起的时序不对或者ID寄存器的复位值写错。智能体会读日志发现问题描述然后回到代码段修改再跑。通常一个简单模块三轮之内能跑通复杂一点的会到十轮以上。这里有三个我自己调试出来的参数经验最大轮次建议设到10不要设太多。超过10轮还在原地打转基本是初始方向就错了继续烧钱没有意义。每次反馈给LLM的仿真日志要控制长度。我在调度器里把仿真日志的尾部500行截出来给LLM有时还会让LLM先对日志做摘要确保重要错误信息不被淹没。保存每一轮代码快照。这个习惯帮我躲过很多次“越改越烂”的情况一旦连续三轮没有改善直接回滚到上一轮状态重新规划。4.4 结果分析跑完这个闭环之后我一般会做一次质量评审。用RTL lint工具查代码风格、用覆盖率工具跑一次基础覆盖率、再用形式化等价性检查确认RTL与规格一致。这里要泼一盆冷水智能体自己跑出来的“回归通过”只能说明功能仿真通过离交付还差得远。我见过智能体为了修一个仿真bug把代码改成“只针对这个testbench有效”的写法比如硬编码了某个寄存器值。所以自动化闭环之外一定要有人或者另一个验证智能体做“反作弊”检查——确保代码不是过度拟合到测试用例上。不过即使有这个限制这个闭环也已经很有价值。以我自己的团队为例这种自动化流程让验证工程师从“写用例、跑回归、看失败”的重复循环里解放出来把精力放到更重要的覆盖率规划和跨场景审查上。效率提升不是简单的一倍两倍而是把人的时间从机械劳动里抽离出来。5. 工程化落地躲不开的四个坑智能体做芯片设计听起来很美但真金白银投入之前下面这四个坑是我都踩过或者见过别人踩的提前写出来供各位参考。5.1 幻觉它给出的不是“错”是“看起来对”LLM最大的风险不是告诉你“我不知道”而是给出一个结构完整、注释清晰、看起来非常有道理的RTL实际上在异步逻辑里埋了一颗雷。比如跨时钟域信号没有同步比如读清寄存器时序错了比如状态机缺了default态。这种“看起来对”的错代码检测成本比人工写错还高因为你天然信任它。我的对策是“双人复核制”LLM输出的代码必须经过另外两个环节验证一个是权威编译器和仿真器的强校验另一个是人的设计评审会。简而言之你可以让AI写代码但不要让AI独自为代码负责。5.2 数据和版权训练集的灰色地带第二个坑是数据合规。很多开源RTL仓库的license并不允许拿来训练商业模型。GitHub上大量的Verilog代码本身就是从各家公司流出来的有的是教学代码有的是真实IP的片段。如果训练出来的模型在某一天“想起来”一段跟你公司IP高度相似的代码那就很麻烦了。我建议的做法是内部搭建基于开源模型微调的代码助手只用公司自有IP和公开教学代码做训练和平调并且在知识库里对敏感信息做脱敏处理。商业大模型API用于通用文案、测试脚本生成问题不大但涉及核心架构细节时还是谨慎为上。5.3 可复现性同一个任务跑两遍答案不一样芯片设计对可复现性的要求极高。今天跑出一版时序违例的代码明天重新跑一遍说没问题了这种事情在LLM场景下不是笑话。LLM的温度参数导致随机性再加上不同版本的模型权重更新都可能让输出产生差异。我的解决方法是把所有关键参数固化成“设计运行档案”记录模型版本、temperature、seed、prompt模板版本、知识库版本。每次跑任务都带着这组指纹信息这样才能在出问题的时候追溯到是哪个环节变了。有些人觉得这样做很繁琐但在工程化的世界里不能复现的能力等于没有能力。5.4 验证工程师的信任问题最后一个坑是人的问题。验证工程师对AI生成的代码天然不信任这种不信任在初期是有道理的但如果不主动管理会变成团队内部的对立。我们有工程师一开始会偷偷把LLM生成的所有代码重写一遍那样AI不仅没有提效反而成了负资产。我后来做了一件事设立“AI代码试用期”。规定AI生成的模块只有连续通过三周回归、覆盖率达标、code review通过的情况下才允许合入正式分支。合入之后AI代码和人类代码就一视同仁。这个政策执行两个月后团队对AI代码的接受度明显提高因为大家看到的是“经过同等质量门槛的代码”而不是“AI写的特招生”。6. 工具选型建议和个人避坑心得6.1 LLM模型选择的现实很多人一上来就纠结“哪个模型最适合写RTL”。我的看法是2026年这个时间点通用旗舰模型和专用代码模型在RTL生成这个中等级任务上的差距已经拉不大了。真正的差距在三个地方上下文长度、工具调用稳定性、接入私有知识的便利性。上下文长度决定了你能不能把一个大型模块的整个代码框架塞进去。我建议选至少128K上下文的模型否则复杂任务容易“失忆”。工具调用稳定性决定了智能体能不能靠谱地执行动作序列。有些模型的function calling做得很差经常输出非法JSON格式导致调度器不断重试。这块要实测不能只看宣传指标。私有知识接入看的是生态RAG扩展是否容易、fine-tune成本高不高。开源模型的好处是可控性强可以本地部署数据不出内网。缺点是本身对SystemVerilog的理解往往不如通用旗舰模型。如果是涉密项目我建议选择开源模型加本地微调如果不是涉密项目直接调用商业模型API效率更高。6.2 优先做局部闭环别一上来就搞全流程我在很多团队看到同一个错误一上来就规划一个巨大的“自动驾驶版EDA流水线”想从架构文档直接产生GDSII。这个目标短期不现实也很容易把团队士气拖垮。我的建议是优先做两个局部闭环一个是RTL生成加仿真回归闭环一个是覆盖率驱动验证闭环。这两个闭环切得小、见效快、价值可量化而且不改变既有流程的稳定性。等这两个闭环跑稳了再考虑把它们串起来形成一个更大的智能体。6.3 我现在会怎么做如果现在我接到一个“用LLM和智能体改造芯片设计流程”的任务我的动作顺序会是先花两周建一个内部RTL代码知识库把我们团队过去三年的RTL和验证代码脱敏、切分、向量化。搭一个最小的回归闭环规格输入→RTL生成→仿真→结果反馈先跑十个历史模块做准确率基线。根据基线结果挑选模型。如果通用模型在验证场景通过率低于70%就需要微调或者换专用模型。用两个真实在研模块做并行试验对照组是人工流程观察周期、人力、质量三项指标。逐步把验证者智能体、覆盖率分析智能体加进来形成多角色协作。这套打法不一定最酷但是每一步都有明确交付物适合资源有限的团队慢慢推进。7. 2026之后设计团队的交互方式会发生什么变化7.1 混合团队人类定标准智能体跑循环接下来两三年我判断芯片设计团队会逐步演化成“人类专家加智能体执行”的混合团队。人类专家负责定义规格、画架构、定约束、做最终裁决智能体负责把规格翻译成代码、把代码验证闭环、把数据整理成决策依据。在这个模型下工程师的核心竞争力也会悄然变化。过去我们比的是谁能写出更精巧的RTL未来比的是谁能更准确地描述问题、谁能更快地判断AI产出是否符合设计意图。简单说写代码的能力要求会降低而系统思维、架构判断、验证设计的能力要求会提高。7.2 未来2-3年该关注的信号我会特别关注几个信号判断这个趋势是不是真的在兑现一是商业EDA大厂是否开始把智能体作为标准组件打包进流程而不只是单独卖一个AI工具。二是是否出现面向芯片设计的专用智能体框架能够内置仿真器、综合工具的API。三是覆盖率收敛和设计空间探索这类高级场景能不能在公开benchmark上稳定跑出可复现的结果。四是整个行业是否形成关于“AI生成IP版权”的清晰共识这是大规模商业应用的前提。如果这四个信号在2026年内都有明确进展那“LLM与智能体重塑芯片设计”就不是一个宣传口号而是实际的生产力变革。我个人的体会是芯片设计和AI的结合并不存在某个一夜之间颠覆一切的拐点它更像是一个从单点工具到局部闭环再到全局协同的持续演进过程。现在最值得做的事情不是焦虑被替代而是亲手打开一个仿真器把一个规格描述丢给智能体亲眼看看闭环是怎么跑的、坑在哪里、数据说明了什么。踩过一轮坑之后你对这个领域的判断会瞬间就具体起来。
返回列表