写代码这件事已经被彻底改变了。GitHub Copilot、Cursor,随便打几个字,代码就出来了。但芯片设计那边呢?EDA工具还是老样子,工程师该熬夜还是熬夜。


先说软件这边为什么这么顺

软件代码,本质上是文本。Python、JavaScript,写出来就是一串字符。大模型训练吃的就是文本,GitHub上几十亿行开源代码,全部喂进去,模型自然就学会了。

软件的反馈周期极短。写错了,运行一下,报错信息马上出来,大模型可以立刻改。这种”写→跑→改”的循环,一分钟可以转好几圈。

举个具体的例子:让大模型写一个排序函数——

def bubble_sort(arr):
    n = len(arr)
    for i in range(n):
        for j in range(0, n-i-1):
            if arr[j] > arr[j+1]:
                arr[j], arr[j+1] = arr[j+1], arr[j]
    return arr

写完直接跑,对不对,一秒钟见分晓。这种即时反馈,对大模型训练和推理都极度友好。


芯片这边,问题出在哪

数字芯片设计,表面上看也是在写代码——Verilog、VHDL,也是文本。但这里有一个根本性的差异:芯片代码描述的是硬件行为,验证的代价完全不同。

一个模块写完,要跑仿真,少则几小时,复杂的跑几天。流片之后发现问题,那就是几百万美元打水漂,重新来过至少半年。

芯片设计的正确性标准极其苛刻。时序收敛、功耗、面积、信号完整性,每一项都是硬指标。大模型擅长”大概率正确”,但芯片设计要求的是100%正确。99.9%不够用。

还有一个问题:芯片设计的高质量训练数据太少了。开源的RTL代码,和GitHub上的软件代码相比,量级差了好几个数量级。模型没见过足够多的例子,自然学不好。


软件错了能改,芯片错了要命。这个根本差异,决定了大模型进入两个领域的速度。

不过这个局面不会一直持续。大模型在芯片领域最先突破的,大概率会是验证和仿真用例生成,而不是RTL设计本身。因为验证这块,容错空间稍大一点,也更适合大模型的工作方式。

但要让大模型真正参与到RTL核心设计里,还需要两件事:更大规模的高质量芯片设计数据集,以及能与EDA工具深度集成的推理-验证闭环。

技术的扩散路径,从来都是顺着阻力最小的方向走。 程序领域阻力小,所以先进去了。芯片领域阻力大,但不代表进不去,只是需要更多时间和更专门的工程投入。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐