🎉 Gate.io动态 #创作者激励计划# 火热进行中!报名参与并发帖解锁 $2,000 创作大奖!
🌟 参与攻略:
1️⃣ 点击链接进入报名页面 👉️ https://www.gate.io/questionnaire/6550
2️⃣ 点击“是”按钮提交报名
3️⃣ 在动态完成发帖,提升发帖量和互动量,解锁获奖资格!
📌 只要是与加密相关内容均可参与发帖!
🎁 茶具套装、Gate x 国际米兰保温杯、Gate.io 纪念章、点卡等好礼等你来拿!获奖者还将获得专属社区流量扶持,助力您提升影响力,增长粉丝!
活动截止至:5月6日00:00 (UTC+8)
活动详情:https://www.gate.io/announcements/article/44513
ChatGPT 也能用来造芯,说说英语就可以了?!
整理 | 屠敏
出品 | CSDN(ID:CSDNnews)
ChatGPT 真的那么牛吗?
来自纽约大学 Tandon 工程学院的研究人员发布了一篇《Chip-Chat: Challenges and Opportunities in Conversational Hardware Design》论文,用实验回答道:是的,ChatGPT 确实比较厉害!
只用简单的自然语言之英语和 ChatGPT 聊聊天,便制作出了一款微处理芯片。更值得注意的是,在 ChatGPT 的助力下,这款芯片组件不仅是设计了出来的,也是经过了基础测试,可以制造出来。
所以说,全民”造芯“的时代真的要来临了吗?在此,我们不妨先看看研究人员到底是怎么做的。
AI 大模型的应用,硬件领域落后于软件
在论文中,研究人员指出,现代硬件设计始于自然语言提供的规范,如英文文档需求,然后再由硬件工程师使用硬件描述语言(HDL)如 Verilog,将需求用代码构建出来,完成芯片内部的设计,最终再合成为电路元件。
那么,在 AIGC 时代来临之际,如 OpenAI 的 ChatGPT 和 Google 的 Bard 号称可以生成代码,也有不少开发者使用过它们创建了一个又一个网站,但是当前在其应用范围主要聚焦在软件领域的情况,这些 AIGC 工具能否将硬件工程师的”翻译“(文档需求转换成代码)工作给取而代之。
基于此,研究人员使用了 8 种具有代表性的基准,研究了在生成硬件描述语言本身的编写时,最先进的 LLM 状态的能力和局限性。
实验环节,研究人员将 ChatGPT 作为一种模式识别器(充当人类的角色),可以在各种类型的语言(口头语、书面语)中转换自如,同时,ChatGPT 可以让硬件工程师们跳过 HDL 阶段。
整体验证流程如下图所示:
如果一个设计不符合规范,它会在相同的提示下再生成五次。倘若它仍然不符合规范,那么它就会失败。
一旦设计和测试用例已经写好了,它们就会被用 Icarus Verilog (iverilog,Verilog 硬件描述语言的实现工具之一) 编译。如果编译成功,则进行模拟。如果没有报告错误,则设计通过,不需要反馈 (NFN)。
如果这些操作中的任何一个报告了错误,它们就会被反馈到模型中,并被要求“请提供修正”,这被称为工具反馈 (TF)。如果相同的错误或错误类型出现三次,那么简单的人类反馈 (SHF) 是由用户给出的,通常通过说明 Verilog 中什么类型的问题会导致这个错误 (例如:声明中出现语法错误)。
如果错误持续存在,则会给出适度的人类反馈 (Moderate Human Feedback,MHF) ,并提供稍微更直接的信息给工具,以识别特定的错误。
如果错误持续存在,则会给出高级人类反馈 (Advanced HumanFeedback,AHF),它依赖于精确地指出错误所在和修复它的方法。
一旦设计编译和模拟,没有失败的测试用例,它就被认为是成功的。
但是如果高级反馈不能修复错误,或者用户需要编写任何 Verilog 代码来解决错误,则测试被认为是失败的。如果会话超过 25 条消息,符合每 3 小时 ChatGPT-4 消息的 OpenAI 速率限制,则该测试也被视为失败。
Bard和HuggingChat在首轮测试中折戟
具体实验环节,研究人员针对 8 位移位寄存器进行了基准测试。
他们要求大模型尝试为一个「测试名称」创建一个 Verilog 模型,然后提供规范,定义输入和输出端口以及任何需要的进一步细节,并进一步询问大模型“我将如何写一个设计,以满足这些规格?”
你能为这个设计编写一个 Verilog 测试台吗?测试台应该具备自检功能,并且能够与 iverilog 一起用于仿真和验证。如果测试用例失败,测试台应该能够提供足够的信息,以便找到并解决错误。
鉴于 Bard 和 HuggingChat 在初始挑战基准提示符上的性能较差,研究人员决定后续只针对 ChatGPT-4 和 ChatGPT-3.5 进行完整的测试。
ChatGPT-4 和ChatGPT-3.5 的角逐
下图显示了 ChatGPT-4 和 ChatGPT-3.5 的基准测试结果,明显可以看出,ChatGPT-3.5 的性能要比 ChatGPT-4 差一些,大多数对话导致基准测试失败,而大多数通过自己测试台的对话都是不兼容的。
反观 ChatGPT-4 的表现更胜一筹,大多数的基准测试都通过了,其中大部分只需要工具反馈。不过,在测试台设计中,仍然需要人类的反馈。
为了探索 LLM 的潜力,研究人员还让硬件设计工程师和 ChatGPT-4 配对,共同设计一种基于 8 位的累加器的微处理器。
对 ChatGPT-4 的初始提示如下所示:
让我们一起做一个全新的微处理器设计......我认为我们需要限制自己的累加器8位架构,没有多字节指令。既然如此,你觉得我们该怎么开始?
最终,ChatGPT-4 与硬件工程师共同设计了一种新颖的基于 8 位累加器的微处理器架构。该处理器采用 Skywater 130nm 工艺,这意味着这些“Chip-Chat”实现了我们认为是世界上第一个完全由人工智能编写的用于流片的 HDL。
在论文中,研究人员总结道,ChatGPT-4 产生了相对高质量的代码,这可以从短暂的验证周转中看出。考虑到 ChatGPT-4 每 3 小时 25 条消息的速率限制,此设计的总时间预算为 ChatGPT-4 的 22.8 小时(包括重新启动)。每条消息的实际生成平均约为 30 秒:如果没有速率限制,整个设计本可以在 <100 分钟内完成,具体取决于人类工程师。尽管 ChatGPT-4 相对容易地生成了 Python 汇编程序,但它很难编写为我们的设计编写的程序,而且ChatGPT也没有编写任何重要的测试程序。
总体上,研究人员完成了在模拟和 FPGA 仿真中评估了一系列全面的人工编写的汇编程序中的所有 24 条指令。
ChatGPT 能够节省芯片开发周期
“这项研究产生了我们认为是第一个完全由 AI 生成的 HDL,用于制造物理芯片,”纽约大学 Tandon 的研究助理教授兼研究团队成员 Hammond Pearce 博士说。“一些人工智能模型,如 OpenAI 的 ChatGPT 和谷歌的 Bard,可以生成不同编程语言的软件代码,但它们在硬件设计中的应用尚未得到广泛研究。这项研究表明 AI 也可以使硬件制造受益,尤其是当它被用于对话时,你可以通过一种来回的方式来完善设计。”
然而,在这个过程中,研究人员也需要进一步测试和解决将 AI 用于芯片设计所涉及的安全考虑因素。
整体而言,虽然 ChatGPT 不是一款专门面向硬件领域的自动化软件工具,但是它可以成为一款 EDA 辅助工具,而且帮助 EDA 设计师们大大降低了知识门槛。
研究人员也表示,如果在现实环境中实施,在芯片制造中使用 LLM 模型可以减少 HDL 转换过程中的人为错误,有助于提高生产力,缩短设计时间和上市时间,并允许进行更具创意的设计。其实,仅是这一点,ChatGPT 便值得被硬件工程师们拿来在硬件领域参与更多的尝试与探索。
更详细的测试流程见论文:
参考: