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

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

3天内不再提示

为何CPU主频比FPGA快还要说可以帮助CPU加速?

FPGA开源工作室 来源:OpenIC 作者:温戈 2021-06-30 10:57 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

主频只是影响计算速度的一个因素,并不是全部。在执行一些计算密集型的任务场景中,FPGA的计算速度是更快的,目前FPGA作为CPU的协处理器已经广泛应用在IntelAMD等公司的产品中。

CPU、GPU、和FPGA的比较

桌面端的CPU为冯诺依曼结构,从上图可以看出,其基本组成为控制器,Cache,和ALU。而计算单元ALU在CPU中的占比不大,所以它的并行计算能力有限。

中间的为GPU,绿色的计算单元占了绝大部分,所以并行计算能力很强。

弱点是控制能力很弱,Cache小,为了保证计算能力,就需要大量的高速DDR保证数据吞吐率。

右侧为FPGA,包含可编程的I/O、DSP、memory、PCIE等,因为大量存储单元的存在,FPGA在做计算的时候可以直接从内部存储单元读取数据。

推荐一个国外的FPGA学习网站 -- fpga4fun,里边有FPGA的介绍及26个实战项目及实现代码,非常适合入门学习!

https://www.fpga4fun.com/

正因为CPU、GPU、和FPGA在结构上的不同,也让他们在实际应用层面有所侧重。

目前主流的方案是把CPU、GPU和FPGA都集成在一个SoC中,通过片内总线互联。在执行并行计算的时候,比如进行图像处理,FPGA的优势就体现出来了,通过协作分工,使芯片的工作效率最大化。

目前的3D封装以及chiplet等技术为这样的组合提供了可实现性。

为什么FPGA计算速度会比CPU更快?

在执行大量的运算场景中,FPGA相比GPU的核心优势在于低延迟。FPGA比CPU延迟低,在本质上是体系结构的区别。FPGA同时拥有流水线并行和数据并行,而CPU几乎只有数据并行,虽然也会才有流水线设计,但深度受限。因此,FPGA 更适合做需要低延迟的流式处理,GPU 更适合做大批量同构数据的处理。

举个例子:

我们有四个全加器,每一个的进为输出连接到下一个的进位输入,这样实现的加法器被称作行波进位加法器(Ripple-Carry Adder, RCA)。其特点为:

结构特点:低位全加器的Cout连接到高一位全加器Cin

优点:电路布局简单,设计方便

缺点:高位的运算必须等待低位的运算完成

我们来看一下其关键路径的延迟:

总延迟时间:(T + T)*4 + T = 9T,推广到n位,总时间为(2n + 1)*T。

每一个全加器计算的时候必须等待它的进位输入产生后才能计算,所以四个全加器并不是同时进行计算的,而是一个一个的串行计算。这样会造成较大的延迟。

我们把这个电路改进一下:提前计算出“进位信号”,对进位信号进行分析。

这样我们就得到了一个:超前进位加法器(Carry-Lookahead Adder, CLA)

其中,C1、C2、C3、C4都由下面的电路计算好,需要3级门延迟,然后在全加器中关键路径上还有1级延迟

所以,总共有4级门延迟。

如果采用这种完全的超前进位,理论上的门延迟都是4级门延迟。

实际电路过于复杂,难以实现(C31需要32位的与门和或门!)

通常的方法:采用多个小规模的超前进位加法器拼接而成,例如,用4个8-bit的超前进位加法器连接成32-bit加法器。

所以我们需要更多的计算位宽或者更大的数组,或者矩阵的运算的时候,我们使用FPGA的优势就体现出来。再多的计算,也就是放置更多的硬件逻辑资源。

FPGA对CPU加速场景

在一些特定的应用场景下,单独使用CPU和CPU+FPGA两种方案所需处理时间的对比,可见FPGA对CPU的加速效果非常明显,甚至比单独使用CPU高出1~2个数量级!

FPGA的缺点

FPGA也是有缺点的,其中之一便是开发周期长。其需要对特定的应用编写特定的FPGA。只要干的事情稍有不同,一般来说FPGA代码就要重新写一遍或者是至少要修改很多东西。如果要做的事情复杂、重复性不强,就会占用大量的逻辑资源,其中的大部分处于闲置状态。

不过,Chiplet的应用对对FPGA的开发周期有一定的优化,以下是传统FPGA开发的周期和应用chiplet的开发周期对比:

未来的方向

在现在的SoC设计中,要充分考虑不同模块的特点,FPGA 和 CPU 协同工作,充分发挥各自的长处,局部性和重复性强的归 FPGA,复杂的归 CPU。从而达到整个系统算力的最优化。

在未来,FPGA会作为协处理器和CPU、GPU共存一段时间,其主要提供以下三方面的能力:

能够提供专门的硬件加速,实现各种应用中需要的关键处理功能。

FPGA设计在性能上非常灵活,使用流水线和并行结构,适应对性能的需求变化。

协处理器能为主处理器和系统存储器提供宽带,低延迟接口

目前,英特尔,AMD,赛灵思等公司都把FPGA作为协处理器集成在SoC中作为实际应用的硬件加速解决方案,这样的设计也使得CPU和FPGA在未来的一段时间内会共存,互相配合,赋能各种计算场景。

编辑:jq

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

    关注

    1665

    文章

    22608

    浏览量

    641897
  • cpu
    cpu
    +关注

    关注

    69

    文章

    11393

    浏览量

    226756
  • gpu
    gpu
    +关注

    关注

    28

    文章

    5352

    浏览量

    136358

原文标题:为什么CPU主频一般都比FPGA快,但是却说FPGA可以帮助CPU加速?

文章出处:【微信号:leezym0317,微信公众号:FPGA开源工作室】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    西门子主板(CPU)与接口板维修故障整理

    根据技术案例和维修手册,西门子CPU主板与接口板的故障通常遵循 “电源-总线-通信” 的排查逻辑,同时部分老型号设备可通过 指示灯状态 进行快速诊断。 一、 CPU主板核心故障与诊断 CPU板是系统
    的头像 发表于 05-13 12:12 260次阅读
    西门子主板(<b class='flag-5'>CPU</b>)与接口板维修故障整理

    Arm AGI CPU加速新一代基础设施建设

    近期,Arm 推出 Arm AGI CPU,一款由 Arm 自主设计、面向人工智能 (AI) 数据中心的 CPU,旨在满足日益增长的代理式 AI (Agentic AI) 工作负载需求。这标志着 Arm 计算平台进入新的发展阶段,首次将产品矩阵延伸至量产芯片产品领域。
    的头像 发表于 04-09 15:55 463次阅读

    基于openEuler平台的CPU、GPU与FPGA异构加速实战

    随着 AI、视频处理、加密和高性能计算需求的增长,单一 CPU 已无法满足低延迟、高吞吐量的计算需求。openEuler 作为面向企业和云端的开源操作系统,在 多样算力支持 方面表现出色,能够高效调度 CPU、GPU、FPGA
    的头像 发表于 04-08 11:02 1534次阅读
    基于openEuler平台的<b class='flag-5'>CPU</b>、GPU与<b class='flag-5'>FPGA</b>异构<b class='flag-5'>加速</b>实战

    为何CPU是AI基础设施的核心

    人工智能 (AI) 并非一种具有单一理想基础设施的单一工作负载。AI 涵盖了多样化的工作负载,需要系统层面的协同策略,才能高效且可扩展地提供性能。而在这一策略中,CPU 扮演着核心角色,它作为系统的智能层,统筹协调云端、数据中心、边缘乃至新兴物理 AI 系统中的各类计算资源。
    的头像 发表于 03-11 10:35 1497次阅读

    Linux服务器CPU飙高怎么排查

    线上 CPU 飙高最怕两件事:一是盯着 top 看了半小时,最后还是不知道是谁打满了核;二是误把负载高当成 CPU 高,处理动作做反了,越处理越抖。生产环境里,CPU 问题通常不是单一指标异常,而是
    的头像 发表于 03-11 09:48 535次阅读

    MangoTree新品剧透:全新PXI形态+最强CPU #PXI #PXIe #测控 #CPU

    cpu
    芒果树数字
    发布于 :2026年01月30日 11:36:11

    那么龙芯CPU性能如何呢?

    龙芯系列CPU的最新动态 以下是龙芯系列CPU的最新动态(截至2025年10月): 龙芯CPU的性能如何? 以下是龙芯CPU性能的详细分析,结合最新产品与技术动态: 一、桌面处理器性能
    的头像 发表于 12-03 13:42 1827次阅读

    E203软核提高CPU时钟频率方法

    本文将分享我们团队提高E203软核主频的办法。 查阅芯来科技官方出版的《手把手教你设计CPU——RISC-V处理器篇》教材,我们发现,原本设计的E203主时钟域应该是100MHZ
    发表于 10-29 06:19

    CPU 到 GPU,渲染技术如何重塑游戏、影视与设计?

    渲染技术是计算机图形学的核心内容之一,它是将三维场景转换为二维图像的过程。渲染技术一直在不断演进,从最初的CPU渲染到后来的GPU渲染,性能和质量都有了显著提升。从CPU到GPU:技术特点和优缺点
    的头像 发表于 09-01 12:16 1239次阅读
    从 <b class='flag-5'>CPU</b> 到 GPU,渲染技术如何重塑游戏、影视与设计?

    CPU里真的有黄金:看完秒懂

    在大家的印象中,黄金是珠宝、投资品和工业原料,但很少有人知道,我们每天使用的电脑CPU里竟然也隐藏着这种贵金属。那为什么芯片会用到黄金,一颗CPU中能有多少纯金呢?不依靠专业设备能提取出来吗?
    的头像 发表于 08-30 15:41 6842次阅读

    探索CPU架构的奥秘,揭秘高性能计算的隐形引擎

    本文转自:绿算技术CPU的内部工作原理:指令周期的精密舞蹈CPU,这颗无形的“心脏”,默默地驱动着每一台智能设备的脉动。它不仅是数据的处理中心,更是智慧与效率的源泉。今天与大家一同潜入CPU架构
    的头像 发表于 08-13 11:58 1062次阅读
    探索<b class='flag-5'>CPU</b>架构的奥秘,揭秘高性能计算的隐形引擎

    开源的e203rtl 可以FPGA板子(DDRt)跑50M主频吗?

    开源的e203rtl 可以FPGA板子(DDRt)跑50M主频吗? 跑25M时,可以通过spi打印出来数数据,但是跑50M主频时候,看似下
    发表于 07-11 07:58

    单核CPU网关和双核CPU网关有什么区别

    单核CPU网关与双核CPU网关的核心区别在于处理能力、多任务效率、性能表现及适用场景,双核CPU网关在多任务处理、复杂计算和响应速度上具有显著优势,而单核CPU网关则更适合轻量级、低负
    的头像 发表于 07-05 14:37 1457次阅读

    主控CPU全能选手,英特尔至强6助力AI系统高效运转

    有什么特殊之处呢? AI加速系统为何看重CPU主控能力? 作为造价极高的AI加速系统,DGX B300可以不计成本地选任何
    的头像 发表于 06-27 11:44 1169次阅读
    主控<b class='flag-5'>CPU</b>全能选手,英特尔至强6助力AI系统高效运转

    一片主板可以有多少路CPU

    CPU是计算机的中央处理器,可以直接影响到服务器的并行处理能力。CPU路数越多,服务器可以同时处理的任务数量就越多,从而提高了整体的处理效率和性能,特别是在处理大量并发任务时,多路服务
    的头像 发表于 06-13 09:14 953次阅读
    一片主板<b class='flag-5'>可以</b>有多少路<b class='flag-5'>CPU</b>?