0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

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

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

wKgZomVgUiaAUehzAAOVaW22ZkU708.png

图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附近的路由资源。

wKgZomVgUieAAWCXAANEL32WgwI098.png

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

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

多合一

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

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

密切的合作

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

wKgZomVgUieAdZe8AANLDJGSRCw549.png

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

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

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

wKgZomVgUieAMdHLAABUdafP6GM765.jpg

精彩推荐 至芯科技FPGA就业培训班——助你步入成功之路、11月30号北京中心开课、欢迎咨询! 基于LVDS的高速串行数据传输系统设计 FPGA学习-异步FIFO原型设计与验证扫码加微信邀请您加入FPGA学习交流群

wKgZomVgUieAEM_jAABiq3a-ogY449.jpgwKgZomVgUieAaUndAAACXWrmhKE260.png

欢迎加入至芯科技FPGA微信学习交流群,这里有一群优秀的FPGA工程师、学生、老师、这里FPGA威廉希尔官方网站 交流学习氛围浓厚、相互分享、相互帮助、叫上小伙伴一起加入吧!

点个在看你最好看


原文标题:为你的AI芯片从FPGA走向ASIC?

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1629

    文章

    21735

    浏览量

    603172

原文标题:为你的AI芯片从FPGA走向ASIC?

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    大多数FPGA的程序存储器(FLASH)为什么都放在外面呢?FPGA的主要应用

    电子产品市场几乎难以看到FPGA的使用,几乎全是专用集成电路(ASIC芯片,就是我们常说的定制芯片,为什么FPGA的应用会这么的少,因为专
    的头像 发表于 12-24 11:04 110次阅读
    大多数<b class='flag-5'>FPGA</b>的程序存储器(FLASH)为什么都放在外面呢?<b class='flag-5'>FPGA</b>的主要应用

    FPGAASIC的区别 FPGA性能优化技巧

    编程来配置以实现特定的功能 特定应用定制设计的集成电路,需要根据特定的需求从头开始设计和制造 设计与制造 预先制造好,用户可以根据需要通过编程来定制其功能 设计和制造过程是一次性的,一旦制造完成,其功能就固定了 成本 包括购买FPGA
    的头像 发表于 12-02 09:51 188次阅读

    ASIC集成电路与FPGA的区别

    ASIC(专用集成电路)与FPGA(现场可编程门阵列)是两种不同的集成电路威廉希尔官方网站 ,它们在多个方面存在显著的区别。以下是两者的主要差异: 一、设计与制造 ASIC特定应用定制设计的集
    的头像 发表于 11-20 15:02 333次阅读

    FPGAASIC在大模型推理加速中的应用

    随着现在AI的快速发展,使用FPGAASIC进行推理加速的研究也越来越多,目前的市场来说,有些公司已经有了专门做推理的ASIC,像Gro
    的头像 发表于 10-29 14:12 427次阅读
    <b class='flag-5'>FPGA</b>和<b class='flag-5'>ASIC</b>在大模型推理加速中的应用

    FPGAASIC的优缺点比较

    FPGA(现场可编程门阵列)与ASIC(专用集成电路)是两种不同的硬件实现方式,各自具有独特的优缺点。以下是对两者优缺点的比较: FPGA的优点 可编程性强 :FPGA具有高度的可编程
    的头像 发表于 10-25 09:24 429次阅读

    低功耗FPGA、处理器和ASIC实施启用LVDS链路

    电子发烧友网站提供《低功耗FPGA、处理器和ASIC实施启用LVDS链路.pdf》资料免费下载
    发表于 08-29 09:59 0次下载
    <b class='flag-5'>为</b>低功耗<b class='flag-5'>FPGA</b>、处理器和<b class='flag-5'>ASIC</b>实施启用LVDS链路

    自动驾驶三大主流芯片架构分析

    当前主流的AI芯片主要分为三类,GPU、FPGAASIC。GPU、FPGA均是前期较为成熟的芯片
    的头像 发表于 08-19 17:11 1613次阅读
    自动驾驶三大主流<b class='flag-5'>芯片</b>架构分析

    ASIC IP核移植到FPGA上——更新概念并推动改变以完成充满挑战的任务!

    本系列文章数字芯片设计项目威廉希尔官方网站 总监的角度出发,介绍了如何将芯片的产品定义与设计和验证规划进行结合,详细讲述了在FPGA上使用IP核来开发ASIC
    的头像 发表于 08-10 17:13 831次阅读
    将<b class='flag-5'>ASIC</b> IP核移植到<b class='flag-5'>FPGA</b>上——更新概念并推动改变以完成充满挑战的任务!

    FPGA芯片了解多少?

    FPGA的市场规模在45.63亿美元左右,中国 FPGA 芯片市场规模持续上升,2016年的65.5亿元增长至2020年的 150.3 亿元,年复合增长率高达23.1%。 随着目前5
    发表于 04-17 11:13

    到底什么是ASICFPGA

    上一篇文章,小枣君给大家介绍了CPU和GPU。今天,我继续介绍计算芯片领域的另外两位主角——ASICFPGA。█ASIC(专用集成电路)上篇提到,GPU的并行算力能力很强,但是它也有
    的头像 发表于 04-16 08:05 210次阅读
    到底什么是<b class='flag-5'>ASIC</b>和<b class='flag-5'>FPGA</b>?

    fpgaasic在概念上有什么区别

    FPGA(现场可编程门阵列)和ASIC(应用特定集成电路)在概念上存在明显的区别。
    的头像 发表于 03-27 14:12 918次阅读

    fpgaasic的区别

    FPGA(现场可编程门阵列)和ASIC(专用集成电路)是两种不同类型的集成电路,它们在设计灵活性、制造成本、应用领域等方面有着显著的区别。
    的头像 发表于 03-26 15:29 1781次阅读

    汽车通信芯片汇总梳理

    一、CPU/GPU/FPGA/ASIC芯片CPU/GPU/FPGA/ASIC芯片是智能汽车的“大
    的头像 发表于 02-20 16:44 1621次阅读
    汽车通信<b class='flag-5'>芯片</b>汇总梳理

    到底什么是ASICFPGA

    2022年底,发布了AI ASIC芯片AIU。 三星早几年也搞过ASIC,当时做的是矿机专用芯片。没错,很多人认识
    发表于 01-23 19:08

    FPGAASIC、GPU谁是最合适的AI芯片

    CPU、GPU遵循的是冯·诺依曼体系结构,指令要经过存储、译码、执行等步骤,共享内存在使用时,要经历仲裁和缓存。 而FPGAASIC并不是冯·诺依曼架构(是哈佛架构)。以FPGA
    发表于 01-06 11:20 1645次阅读
    <b class='flag-5'>FPGA</b>、<b class='flag-5'>ASIC</b>、GPU谁是最合适的<b class='flag-5'>AI</b><b class='flag-5'>芯片</b>?