/
鲍勃体育下载
鲍勃体育下载
芯片小白零基础入门芯片设计两周设计出CPU
来源:鲍勃体育下载   上传时间:2024-04-15 01:02:06

  据Tomshardware报道,一位名为Adam Majmuda软件工程师最近在X平台上分享了他在“没有一点经验”的情况下,只用了两周内就从头开始设计 CPU 的经验。

  在这段短暂的时间内,Adam声称他已经了解了芯片架构的基础知识,吸收了芯片制造的细节,并使用EDA 工具准备了他的第一个完整芯片布局。他的“speed-running the chip stack”任务清单中的下一步是从头开始设计 GPU,接下来他将把这个设计流片出来。

  这位初出茅庐的芯片设计师自称是一家 web3 研发企业的创始工程师之一,概述了他迄今为止在探索中所采取的步骤。在下文中,我们列出了他迄今为止已完成的步骤:

  用 Verilog 创建我的第一个完整电路——“我第一次使用软件对硬件进行编程的经验。”;

  设计我的第一个完整芯片布局 - 使用 OpenLane(一种开源 EDA 工具)进行设计和优化;

  正如前文所说,Majmudar 现在面临的重要一步是从头开始设计 GPU。他知道这将是一项艰巨的任务。他同时承认,经过初步调查,这比预想的要困难。这位初出茅庐的芯片设计师解释说,根本就没有用于构建 GPU 的在线学习资源。“由于 GPU 公司都试图保守彼此的秘密,因此大多数 GPU 架构数据都是专有且闭源的,”该工程师发现。

  尽管存在这一障碍,Majmudar 表示,大型 GPU 制造商的保密性使得该项目的这一部分对他来说更加有趣。Majmudar强调,Anthropic 的 Claude Opus AI 工具在 GPU 设计阶段非常有用。

  “我一直向 Claude 提出每个单元必须如何工作的想法,然后它将以某种方式引导我找到正确的实施方法,然后我能够最终靠开源存储库进行确认,”该工程师解释道。然而,他观察到,“如果我公开搜索一些内容,什么也没再次出现,这证明了实施细节的隐藏程度。”

  仅用了两周左右的时间就完成了清单中的五分之三任务,上述有关 GPU 的担忧可能会让读者担心 Majmudar 可能遇到了障碍,甚至是难以逾越的墙。但事实似乎并非如此,因为他乐观地预测他的 GPU 设计将在“未来几天内”完成,并且会发送精简版本进行流片。

  以下是Adam Majmuda计划如何加快芯片设计和制造的整个学习过程(欢迎各位提出建议)

  我首先学习了芯片如何从二进制到C的工作,这部分很关键。为了设计芯片,您需要对所有架构基础知识有深刻的了解,因为您要一直处理逻辑、门、存储器等。

  芯片设计工具都是围绕特定的制造工艺(称为工艺节点)构建的,所以我有必要了解这一点才能完全掌握芯片设计流程。

  材料 - 半导体制造需要大量的材料,包括半导体、蚀刻剂、溶剂等,每种材料都有特定的品质,值得使用。

  这里最重要的直觉是,芯片是通过定义不同层的布局来生产的。这些层的设计是芯片设计 (EDA) 过程的输出。

  在计算机体系结构中,对晶体管的常见解释实际上过于简单化,而逐层设计实际的晶体管迫使我更多地研究实际的实现细节。

  查看单个nMOS晶体管的电压和电流图(右图)与等效图的比较,也使CMOS的功率效率提升更加明显。

  在下图中,每种不同的颜色都指定了不同的层,每层都由不同的材料/离子/等制成,并在制作的完整过程的不同步骤中创建 - 例如,红色多晶硅层是顶部nMOS和底部pMOS晶体管的实际GATE,浅蓝色metal 1层是输入和输出的实际连接。

  这部分对我来说是一个很酷的解锁,我第一次使用软件对硬件进行编程。我使用硬件描述语言 (HDL) Verilog 制作了我的第一个电路。

  您可以使用HDL来指定单个门,但很谢谢大多数晶圆代工厂都提供标准单元库供客户使用。

  标准单元只是常见用途的晶体管排列(如 AND gate),它针对效率进行了大量优化,并专为特定的代工厂制造工艺而设计。

  这些标准单元库几乎包含大多数设计实际需要的所有逻辑单元,因此您无需过多地关注 gate level。

  我使用 Skywater 130nm 工艺节点的标准单元库创建了这个电路(来自一家名为 Skywater 的代工厂的特定制造工艺)。

  我知道代码大多是无用的,但我想把它包括给任何好奇的人。时序图显示 3 个不同的旋钮被转动,相应的 LED 被打开。

  由于硬件中的错误成本远高于软件(因为一旦你的设计被制造出来,你就无法改变东西),使用广泛的测试和形式验证是设计过程的关键部分。

  这是迄今为止最酷的部分。我使用 OpenLane(一种开源 EDA 工具)对我的设计执行整个综合、优化和布局过程,并提出了一个完整的芯片设计。

  只是看到我的Verilog代码变成了实际的芯片布局,还可以进入并玩弄所有层并点击这里可以进入每个门,这真是一个病态的解锁。

  我的项目的最初目标是构建一个最小的 GPU。我没意识到这将有多难。我的期望是,构建 GPU 将类似于构建 CPU,在线上有大量学习资源来弄清楚怎么样才能做到这一点。

  由于 GPU 公司都试图相互保密,因此大多数 GPU 架构数据都是专有和闭源的。

  NVIDIA 和 AMD 发布了高级架构概述,但绝对没记录其 GPU 如何在低级别工作的所有细节。这让我的事情变得更有趣了——我基本上有一些高级架构文档+一些开源 GPU 设计的尝试,以及关于 GPU 架构的公共学习资源为零。

  从这一点开始,我一直在尝试根据我所知道的 GPU 架构的工作方式 + 必须是真实的内容,对 GPU 架构如何工作的细节进行逆向工程(当然在更简单的层面上)。

  Claude Opus 在这里提供了巨大的帮助——我一直在向 Claude 提出我的想法,即每个单元必须如何工作,然后以某种方式(通过从它所知道的推断,或对专有数据的训练)它将引导我走向正确的实现方法,然后我可以去用开源存储库确认 然而,如果我公开搜索一些东西, 没有显示任何内容,这证明了实现细节的隐藏程度。

  所以知道现在,我仍在构建一个最小的 GPU 设计。我还将记录一切是如何运作的,并发布一篇关于它的帖子,以便其他任何好奇的人都能更清楚地了解它。

  这将在未来几天内发货,并且可能会发送一个精简版本,以便在 Skywater 130nm 工艺节点上流片。

  *免责声明:本文由作者原创。文章的主要内容系作者本人观点,半导体行业观察转载仅为了传达一种不同的观点,不代表半导体行业观察对该观点赞同或支持,如果有任何异议,欢迎联系半导体行业观察。

  以上内容与证券之星立场无关。证券之星发布此内容的目的是传播更多详细的信息,证券之星对其观点、判断保持中立,不保证该内容(包括但不限于文字、数据及图表)全部或者部分内容的准确性、真实性、完整性、有效性、及时性、原创性等。相关联的内容不对各位读者构成任何投资建议,据此操作,风险自担。股市有风险,投资需谨慎。如对该内容存在异议,或发现违法及不良信息,请发送邮件至,我们将安排核实处理。

鲍勃体育下载ios
鲍勃体育下载