为你的AI芯片从FPGA走向ASIC?

时间:2025-04-27  作者:Diven  阅读:0

也许你正在为边缘计算设计一个嵌入式推理引擎。或者您正在汽车视觉处理方面迈出下一步。又或许你有可以在数据中心挑战英伟达和谷歌的洞察力。在的性能需求、环境和应用中,人工智能加速器架构不仅在设计方面,而且在验证和实施方面都提出了独特的挑战。从架构转移到FPGA——这几乎是这个领域的一个强制性步骤——然后转移到生产ASIC是一个不平凡的旅程。但是如果你提前计划,这不一定是一次冒险。

为你的AI芯片从FPGA走向ASIC?

如果您选择——大多数团队都会选择——用FPGAs进行概念验证或验证平台,那么从一开始,您就会被同时拉向三个方向,如图1所示。架构师希望您的FPGA实现尽可能接近微架构。对来说,关键是看设计如何有效地实现算法。但是,软件团队会督促您针对性能优化FPGA设计。这意味着改变架构以适应所选FPGA芯片的优势和限制。你可以依靠营销来增加这种压力——主要是如果计划包括早期进入FPGAs市场。存在这样风险,即概念的证明会像科学怪人一样,有自己的生命。

图1:如果你选择在FPGAs中做一个概念验证或验证平台,你会被拉向三个方向:来自架构师、软件团队和生产需求。

第三,需要将设计移植到ASIC上进行批量生产。这将为您带来竞争力所需的性能、动力和面积。理想情况下,ASIC设计将准确反映最初的理论架构,并针对您选择的ASIC工艺和IP库进行优化。通过转换成熟的FPGA设计,您可以在多大程度上获得ASIC设计,这是一个非常重要的问题。答案将取决于架构师、FPGA和ASIC团队合作的紧密程度。

也许支持这种说法的最好方式是看看一些区分人工智能加速器的架构特征,并在设计过程中遵循。

并行处理是人工智能加速器的基础。可以通过大量小型专用处理核心来实现,如特定算法的GPU。或者可以以数据流的方式完成:专用处理器的流水线。这两种架构都给FPGA实现带来了挑战。

设计者可以在RTL对处理元件及其互连进行编码,并将RTL交给FPGA设计工具。但是,要获得具有足够设备利用率和性能的设计——获得接近100%的布线——通常至少需要在平面规划和布局方面进行人工干预。

这种规划必须关注FPGA中资源的可用性和位置,而不是加速器的原始架构。例如,该体系结构可能希望计算元素群集在本地组中。FPGA可能要求您将计算元素分散在整个芯片中,甚至将分成更小的模块,以确保足够的路由和RAM资源。这可能需要改变互连架构,例如改变总线结构。

还会出现其选择。例如,深度学习推理加速器的设计师经常使用精度降低的算法——比如8位而不是32位——来提高速度和节省能源。但出于性能和资源的原因,FPGA团队可能希望使用FPGA的32位乘累加硬宏,而不是由逻辑单元构造的8位乘法器。这种选择会使FPGA设计逐渐偏离原始架构,并影响转换过程。

ASIC转换

然后,是时候将实现转移到ASIC上了。在小型、简单的SOC中,FPGA到ASIC的转换意味着一个近乎机械的逐步过程。拿出任何特殊的FPGA功能,如乘法累加模块、高速串行接口、PCIe接口和DRAM控制器。用功能等同的ASIC IP替换,并对内部总线或接口进行任何必要的更改以连接。为了重新合成逻辑,插入新的时钟网和自测结构,分配功率,并进行验证。

这对于人工智能加速器来说仍然是可行的。在FPGA中工作的任何东西都可以通过这种方式转移到ASIC中。但是,您为优化FPGA设计所做的设计更改呢?由于ASIC中有基本上无限的逻辑和路由资源以及大量的第三方IP库,这些针对FPGA的更改将是不必要的,甚至可能适得其反。

进行转换的团队必须理解最初的设计意图,这样才能根据具体情况决定是使用FPGA设计还是恢复最初的架构。这对于确定合成哪个代码和选择如何最好地使用IP是正确的。

再举两个例子可能会有帮助。首先是记忆。由于并行架构,AI加速器通常在处理元件内部或之间采用许多不同形状、大小、类型和速度的小型RAM实例。这种做法完全符合ASIC设计的优势,但可能会对FPGA造成严重破坏。虽然可以将各组FPGA逻辑单元转换成逻辑结构中的小RAM,但设计人员通常会在FPGA中使用大型硬连线可配置RAM模块。这给FPGA团队留下了两个选择:要么修改原始架构,使用大的共享RAM块,而不是许多较小的块,要么设计一个包装FPGA的大块RAM的包装器,以仿真一组较小的实例,希望不会耗尽块RAM附近的路由资源。

图2:从FPGA迁移到ASIC提供了更多选择。决策取决于对设计意图的清晰理解。

当从FPGA转移到ASIC时,有更多的选择,如图2所示。转换团队应该直接转换FPGA设计吗?经验丰富的转换供应商在ASIC设计中实现FPGA模块RAM的功能不会有任何问题。或者团队应该恢复到具有许多分散的RAM实例的原始架构?更小的ram将更快、更节能,并可能恢复原始架构的数据流,消除可能的内存瓶颈。决策取决于对设计意图的清晰理解。

多合一

还有多个FPGAs的问题。许多加速器设计对于单个FPGA来说太大,必须分布在多个芯片上。这些芯片如何相互通信将影响转换过程。

例如,如果FPGA通过诸如存储器总线的高速并行总线链接,设计者可以将所有FPGA的内容放入ASIC中,通过相同的并行总线排列链接。假设FPGAs通过类似PCIe的东西连接。在这种情况下,设计人员将不得不移除PCI接口,并根据模块间数据流的性质,用直接并行连接或可能的片上网络来取代。重要的是要回顾原始架构,看看是否被修改以适应芯片到芯片接口的插入——例如,通过插入大缓冲存储器或创建消息传递协议——并消除这些修改。

密切的合作

一旦功能设计完成,工作就可以进入时钟架构了。这里,ASIC也不受FPGAs的限制。转换团队可以研究原始架构的工作原理,并利用为本地时钟区域、门控和频移提供的所有机会,所有这些在ASIC领域都是现成的。

图3:该表列出了FPGA到ASIC转换过程中的每个步骤,并指明了负责执行该步骤的人员。

同样,经验丰富的转换团队可以利用对设计意图的理解和对测试供应商能力的了解,利用加速器的并行架构来实施并行内置自测。这种优化超越了ASIC设计,深入到供应链中。做得好的话,将大幅降低测试成本,显著节约整体单位成本,如图3所示。

我们已经看到,将AI加速器设计从中间FPGAs转换为ASIC几乎是一个机械的过程。但由于人工智能高度并行加速器的性质,理解原始设计意图和架构微妙之处、能够识别FPGA特定优化、拥有人工智能芯片经验、能够在客户和供应商专家之间自由分配任务的转换团队可以实现更好的结果。从一开始,具有出色功率、性能和面积的ASIC就是设计的全部内容。

审核编辑:黄飞

猜您喜欢

现代电子设备中,开关电源是很重要的配件,而OB2263则是市场上常见的开关电源IC。然而,与任何技术产品一样,OB2263在使用中也可能遇到一些常见问题,本文将...
2024-08-20 00:00:00

贴片电阻由于体积小,无法像传统电阻一样直接印上阻值,所以采用数字编码来表示。常用的编码方式有三位数和四位数两种。三位数编码:前两位数字表示有效数字,第三位数字表...
2024-11-26 11:30:02

电动汽车、手机、笔记本电脑等各种电子设备中,电池都是重要的配件。而电池管理系统(BMS),就像一位默默守护的幕后英雄,时刻监测着电池的各种参数,确保电池安全稳定...
2024-04-10 00:00:00

贴片电阻上的「01A」并不是直接表示阻值,而是采用一种特殊的编码方式。 「01」代表的是阻值,而「A」代表的是误差。具体来说,「01」对应的是100Ω的阻值。 ...
2024-11-26 11:29:40


电子设备越来越强大的今天,你是否注意到,手机或电脑长时间使用后会变得很烫?这是因为电子元件在工作时会产生热量,如果温度过高,就会影响设备的性能和寿命。这时,就需...
2024-05-02 00:00:00

贴片电阻R040,别看它身材小巧,却是电子电路中不可或缺的关键元件。它属于0402封装尺寸,即长0.4毫米,宽0.2毫米,如同细小的沙粒。但它的作用却不容小觑,...
2025-04-14 15:03:55

独石电容是电子元件中很重要的。在电路中主要用来储存电流。很多人对独石电容的价格很关心,下面我们来看看具体情况。独石电容的基本介绍独石电容,又称为单石电容,应用于...
2025-04-13 15:30:37

盖玻片和载玻片是显微镜实验中不可少的基本工具。载玻片通常是一个长方形的玻璃片,尺寸一般为76mm x 26mm,主要用于承载样本。表面光滑,能够有效地支持各种生...
2018-06-24 00:00:00

现代电子设备中,元件的选择非常重要。CERDIP14_19.94X7.87MM作为重要的封装形式,应用于各种电子产品中。本文将对CERDIP14_19.94X7...
2025-04-26 20:01:44