首页 > 其他分享 >硬件设计LLM:AI辅助创建微处理芯片

硬件设计LLM:AI辅助创建微处理芯片

时间:2023-06-14 22:26:18浏览次数:30  
标签:研究 AI 硬件 芯片 对话 LLM 设计 HDL

图片
编辑 | 绿萝

通常,开发任何类型的硬件(包括芯片,作为电子设备大脑的微小电子元件),都是从用正常语言描述硬件应该做什么开始的。然后,经过专门训练的工程师将该描述翻译成硬件描述语言(HDL),例如 Verilog,以创建允许硬件执行其任务的实际电路元件。

自动化此翻译可以减少工程过程中的人为错误来源。但是,直到最近,AI 才展示了基于机器的端到端设计翻译的能力。一些大型语言模型(LLM),如 OpenAI 的 ChatGPT 和谷歌的 Bard,声称能够生成各种编程语言的代码;但它们在硬件设计中的应用尚未得到广泛研究。

近日,来自纽约大学和新南威尔士大学的研究团队使用简单的英语「对话」与 AI 模型制造了一个微处理芯片,这是一项史无前例的成就,可以加快芯片开发速度,并允许没有专业技术技能的个人设计芯片。

研究团队展示了两名硬件工程师如何用标准英语与 ChatGPT-4「交谈」,以设计一种新型微处理器架构。然后,研究人员将设计送去制造。

在该研究中,LLM 能够通过来回对话生成可行的 Verilog。随后将基准测试和处理器发送到 Skywater 130 纳米穿梭机上进行流片(tapeout)。

研究共同作者 Hammond Pearce 说:「我们认为这项研究产生了第一个完全由 AI 生成的 HDL,用于制造物理芯片。这项研究表明,AI 也可以使硬件制造受益,特别是当它被用于对话时,你可以来回地完善设计。」

该研究以「Chip-Chat: Challenges and Opportunities in Conversational Hardware Design」为题,于 2023 年 5 月 22 日发布在 arXiv 预印平台。

图片

研究背景

随着数字设计的能力和复杂性不断增长,集成电路 (IC) 计算机辅助设计 (CAD) 中的软件组件已在整个电子设计自动化流程中采用机器学习 (ML)。传统方法试图对每个过程进行正式建模,而基于 ML 的方法则侧重于识别和利用可概括的高级特征或模式——这意味着 ML 可以增强甚至取代某些工具。尽管如此,IC CAD 中的 ML 研究仍倾向于关注后端过程。

在此,研究团队探索了将新兴类型的 ML 模型应用于硬件设计过程的早期阶段时面临的挑战和机遇:硬件描述语言 (HDL) 本身的编写。

虽然硬件设计以 HDL 表示,但它们实际上以自然语言(例如英语需求文档)提供的规范开始设计 lifecycle。将这些转换为适当的 HDL(例如 Verilog)的过程必须由硬件工程师完成,这既耗时又容易出错。使用高级合成工具等替代途径可以让开发人员使用 C 语言等高级语言指定功能,但这些方法是以牺牲硬件效率为代价的。这激发了对 AI 或基于 ML 的工具的探索,将其作为将规范转换为 HDL 的替代途径。

最新的 LLM (如 OpenAI 的 ChatGPT 和 Google 的 Bard)为其功能提供了不同的「会话」聊天界面。

会话式 LLM 用于迭代设计硬件

受 LLM 发展的启发,研究人员提出以下问题:将这些工具集成到 HDL 开发过程中有哪些潜在优势和障碍?

为了理解这项新兴技术的重要性,进行像这样的观察性研究至关重要。对会话式 LLM 对硬件设计的影响的调查既相关又及时。

图片

图 1:会话式 LLM 能否用于迭代设计硬件?(来源:论文)

该研究的贡献如下:

  • 首次对对话式 LLM 在硬件设计中的使用进行了研究。

  • 开发基准以评估 LLM 在功能硬件开发和验证方面的能力。

  • 利用 ChatGPT-4,对硬件中复杂应用程序的端到端协同设计进行观察性研究。

  • 首次使用 AI 为流片编写完整的 HDL,实现了一个重要的里程碑。

  • 为在硬件相关任务中有效利用尖端会话 LLM 提供实用建议。

研究人员进行了两个对话实验。第一个实验涉及预定义的对话流程和一系列基准挑战,而第二个实验需要一个开放式的「自由聊天」方法,LLM 在一个更大的项目中担任联合设计师。

从本质上讲,有无数种方法可以与对话模型「聊天」。为了探索使用会话式 LLM 实现「标准化」和「自动化」流程的潜力,研究人员定义了一个严格的「脚本化」对话基于一系列基准。

然后,研究人员使用一致的指标评估一系列 LLM,根据通过附带测试平台所需的指令水平确定对话的相对成功或失败。然而,虽然对话流在结构上保持相同,但它在测试运行之间固有地存在一些差异,这取决于评估者需要决定 (a) 每个步骤中需要什么反馈,以及 (b) 如何格式化人类反馈。

下图详细说明了与 LLM 对话以创建硬件基准的一般流程。

图片

图 2:简化的 LLM 对话流程图。(来源:论文)

真实世界的硬件设计具有更广泛和更复杂的要求。考虑到以前使用的方法时,这是一个挑战,该方法编写并限制了人类与 LLM 交互的方式。然而,鉴于不同层次的人类反馈相对成功,研究人员试图研究非结构化对话是否可以带来更高水平的表现和相互创造力。对此进行调查通常会通过大规模的用户研究来完成,硬件工程师在开发过程中会与该工具配对。研究目标是通过执行概念验证实验来推动硬件领域的此类研究,将 ChatGPT-4 与经验丰富的硬件设计工程师(论文作者之一)配对, 并在执行更复杂的设计任务时定性地检查结果。

挑战与机会

挑战:虽然很明显,使用对话式 LLM 来协助设计和实现硬件设备总体上是有益的,但该技术尚不能仅通过验证工具的反馈来一致地设计硬件。当前最先进的模型在理解和修复这些工具出现的错误方面表现不够好,无法仅通过初始人机交互来创建完整的设计和测试平台。

机会:尽管如此,当人类反馈被提供给功能更强大的 ChatGPT-4 模型,或者用于协同设计时,语言模型似乎是一个「力量倍增器」,允许快速设计空间探索和迭代。总的来说,ChatGPT-4 可以生成功能正确的代码,这可以在实现通用模块时节省设计人员的时间。

未来可能的工作可能涉及更大规模的用户研究以调查这种潜力,以及开发特定于硬件设计的会话式 LLM 以改进结果。

论文链接:https://arxiv.org/abs/2305.13243

参考内容:https://techxplore.com/news/2023-06-conversations-ai-microprocessing-chips.html

标签:研究,AI,硬件,芯片,对话,LLM,设计,HDL
From: https://www.cnblogs.com/botai/p/hardware-design.html

相关文章

  • Docker CLI docker container export 常用命令
    Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。Docker是内核虚拟化,不使用Hypervisor是不完全虚拟化,依赖内核的特性实现资源隔离。本文主要介绍DockerCLI中d......
  • 会模仿笔迹的AI,为你创造专属字体
    笔迹模仿AI的研究背景 俗话说,见字如面,字如其人。相比呆板的打印字体,手写体更能体现书写者的个人特点。相信很多人都曾设想过,拥有一套属于自己的手写字体,用在社交软件中,更好的展示自己的个人风格。 然而,不同于英文字母,汉字数量是极其庞大的,想要创造一套自己的专属字体代价......
  • 【Azure 应用服务】Azure Function App在部署时候遇见 503 ServiceUnavailable
    问题描述在VSCode中编写好AzureFunctionApp代码后,通过 funcazurefunctionapppublish部署失败,抛出503ServiceUnavailable错误。Gettingsitepublishinginfo...Creatingarchiveforcurrentdirectory...Performingremotebuildforfunctionsproject.Dele......
  • MONAI(4)—一文看懂各种Transform用法(下)
    6裁剪&填充【SpatialCropd,CenterSpatialCropd,CropForegroundd,RandCropByPosNegLabeld,SpatialPadd】对于CT或者MRI图像来讲,图像是非常大的,又是一个三维图像,不可能全部输入网络中训练。要么把图像直接Resize到固定的尺寸,要么就是裁剪图像。monai提供了非常多的裁剪模式,包括......
  • MONAI(3)—一文看懂各种Transform用法(上)
    在上一次分享中,我们在Dataset方法里,已经使用了transform函数,这节课对transform做一个详细的介绍。上一次视频连接:MONAI中,一定要学会的三种Datasettransform大致可以分为以下几个类别想要什么样类别的变换,就在该类别下去找。目录普通变换和字典变换的联系与区别1.数据准备2.加载NIf......
  • MONAI中,一定要学会的三种Dataset使用方法
    在正式学习MONAI功能函数前,以下的网址必须要收藏。1.MONAIAPI: https://docs.monai.io/en/latest/index.html作用:查询功能函数的用法,主要分为以下几类2.MONAIGitHub项目地址: https://github.com/Project-MONAI   作用:如果上述API介绍的不够完整,可以去项目里面找一些例子......
  • 理解linux的IOWait
    看到许多Linux性能工程师将CPU使用的"IOWait"部分视为系统何时处于I/O瓶颈的标识。本文将解释为什么这种方法是不可靠的,以及你可以使用哪些更好的指标。从运行一个小实验开始——在系统上产生大量的I/O使用:sysbench--threads=8--time=0--max-requests=0fileio--file-nu......
  • ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效(oracle 锁表)(转载
    1、查看数据库内产生了哪些锁selectt2.username,t2.sid,t2.serial#,t2.logon_timefromv$locked_objectt1,v$sessiont2wheret1.session_id=t2.sidorderbyt2.logon_time;如:   USERNAMESIDSERIAL#LOGON_TIMElurou851241832013/7/3011:44:45知道被锁的用户l......
  • GPT:Generative Pre-Training
    1.概述随着深度学习在NLP领域的发展,产生很多深度网络模型用于求解各类的NLP问题,从word2vec词向量工具的提出后,预训练的词向量成了众多NLP深度模型中的重要组成部分。然而传统的word2vec生成的词向量都是上下文无关的,其生成的词向量式固定,不会随着上下文的改变而改变,这种固定的词向......
  • waibao
    感觉纯粹写代码的地位越来越低了,除了大公司就是农民工就很底层就要很奴性貌似外包化劳务派遣是大的趋势网友把二线城市说了一遍看到了一条脉脉语录,说是外包化  有点感触外包就外包呗  有份工资就可以没人权就换家  待的不舒服就换家  长远来看,应该不太可能一家工......