×
嵌入式 > 技术百科 > 详情

CPU、GPU、FPGA、ASSP、ASIC几种芯片产品扑面而来!

发布时间:2020-06-08 发布时间:
|

英伟达新推出的GeForce GTX 1080游戏显卡采用了该公司最新的帕斯卡架构,并且使用了采用16nm FinFET工艺制造的芯片。GTX 1080上的GP104图形处理单元包含72亿颗晶体管,运行速度可达1.6GHz,可以超频至1.733 GHz。这颗芯片的硅片尺寸为314平方毫米,比前一代GeForce GTX 980上采用28nm工艺生产制造的图形处理器小了21%。据称,开发这项技术花了英伟达20多亿美金。

GeForce GTX 1080使用了图形处理单元(GPU)架构,说是可以突破功耗/性能的平衡。但是,当把GPU和标准的中央处理单元(CPU)放在一起比较时,哪个表现更胜一筹呢?再或者与更类似GPU且成功进入高性能计算系统的现场可编程门阵列(FPGA)相比呢?

AMD公司的技术和工程高级副总裁Mark Papermaster在DAC的一次主题演讲中吹捧“摩尔定律+”时代的到来。他说,CPU、GPU和加速器可以带来沉浸式的计算体验。业界已经认识到,这种计算能力“需要采取系统设计方法才能达到”。

每种类型的计算引擎都有各自的优点。CPU能够在低延迟下实现高负载的运算,GPU能实现最高的单管脚带宽,而FPGA则可以用于多种通用设计。

但是同样,每种引擎也都有各自的局限性。CPU需要在先进的工艺节点下实现更高的整合,GPU则受限于能放在其上的内存大小的限制。

“FPGA能够连接到和CPU一样类型的存储器,”Rambus公司企业级解决方案技术副总裁兼杰出发明家Steven Woo称。“FPGA这种芯片的灵活性特别高,对于特定的应用或加速应用,他们能够改进性能,并实现更佳的能源效率。”

英特尔公司去年年底完成了以167亿美金收购Altera公司的交易,看中的就是FPGA能够提供的灵活计算加速能力。微软在其Bing搜索引擎中采用FPGA来提升性能,因为FPGA能够帮助其实现成本和功耗的平衡。不过,采用FPGA来设计低功率、高性能的设备却不是一件容易的事情。

“现在提供一个通用的解决方案越来越难了,”Woo表示。“一些设计团队开始设计时采用FPGA,然后把在FPGA中开发的逻辑固化成一颗ASIC,他们起步时采用FPGA,然后观察一下市场的增长情况,这可以帮助他们合理地评估开发ASIC的成本。”

除了在许多微处理器中使用的行业标准x86架构,ARM的架构主宰着移动器件市场,并正在针对数据中心和服务器进行细化调整。市场上有来自开源RISC-V的ARM架构开源内核、出自OpenPower的POWER CPU架构,在x86领域也有来自AMD的竞争。不过,最终选择哪种芯片取决于使用情况和具体应用。

“这种决策需要平衡考虑成本,性能和功耗,”Woo表示。“CPU仍然是非常好的中流砥柱,也很灵活。”当谈到CPU上运行的软件程序时,Woo表示,“不一定非要写成向量化代码。”

GPU能够实现更好的图形接口,他们比通用CPU更具有针对性。FPGA则能覆盖多个市场,最近它们甚至开始进入数据中心和超级计算机领域。

“人们编写的代码所涉及的领域每个月都会发生变化,而且这种变化以各自的方式在加速,”Woo表示。可重复编程和可重新配置的FPGA可以适配用于各种算法,“不用经历设计ASIC带来的痛苦。”

ARM公司CPU事业部技术总监Peter Greenhalgh表示,CPU代表着“芯片世界强大有力的一面。”在另一方面,他指出,对于高带宽的计算,“GPU的表现非常好。”

可编程能力虽好,但并非处处通吃

FPGA介于入CPU和GPU之间,这使得它们很适合用于工业、医疗和军事设备,在这些领域中FPGA发展势头良好,但即使在那里,FPGA也并非通吃。

莱迪思半导体公司的工业和汽车事业部产品营销总监Deepak Boppana指出,莱迪思历史上是一个FPGA公司。“今天,我们拥有更广泛的产品组合,”他说,并特别指出增加了专用标准器件(ASSP)这一产品品类。

“我们和其它FPGA公司不同,”Boppana继续说道。莱迪思的FPGA可以提供“更低的功耗、更低的成本,以及不同形式的外形。”

根据Boppana的说辞,莱迪思特别重视将可连接性加入到其产品线中。通过收购Silicon Image公司,莱迪思现在拥有针对HDMI应用和其他用途的ASSP。该公司目前提供用于摄像头和显示器的CrossLink桥接芯片,该芯片是一颗可编程ASSP,可在低于10毫瓦的功耗下运行,同时以每秒12Gbits的速度支持4K超高清视频。

Boppana表示,该芯片集成了很多硬IP,并拥有FPGA的灵活性。CPU和GPU通常不具备正确类型的接口。“CPU能很好地实现多路控制,但一般都不具备多路数据接口。”

英特尔收购Altera的行为表明了“采用FPGA对CPU进行加速的趋势”,他说。目前的趋势是将CPU和FPGA搭配或集成在一起用于高性能计算应用。

Lattice则另辟蹊径,“不针对高负荷计算加速,”Boppana说。“我们做的是用于低端市场的更小的东西。”该公司的FPGA主要针对消费电子和物联网,正好是云计算等大型重度计算的反方向。对客户来说,选择芯片类型时会“归结到他们的具体要求”,Boppana总结道。因此,他们可以选择CPU以获得最佳性能。“当需要满足多种性能水平,并具备广泛的接口时,FPGA开始变得更具吸引力。很多客户都会同时使用FPGA和CPU。”

Cadence公司IP事业部首席技术官Chris Rowen说道,许多现成的硅解决方案,如ASSP和SoC,被应用到了很多硬件平台上。“一般是用在低市场容量和高附加值这些情形中,”他指出。“现成的硅方案比你能想到或负担得起的更通用。”

Rowen补充说。“对很多这些应用,有多种针对特定应用的产品,这样的手机应用处理器或那样的手机应用处理器。”

所以,设计者应该选择CPU、GPU还是FPGA呢?“正确的答案是,在很多情况下,一样也不选,要选ASSP。”Rowen说道。“你需要一种混合芯片或聚合器件。”

业界已经习惯于在板级进行集成,Rowen说。“板级集成在一些情形下是必须的,”他说。这种选择的缺点是“成本相对高价、功耗也较高。”

FPGA可以填补对小批量ASSP的需求,CPU架构则可以与FPGA互补。对于GPU,“则取决于你想要进入哪个细分市场。”这方面主要包括两大类显卡:用于游戏和其它应用的高性能显卡,以及更多更倾向于嵌入式类型的产品,比如汽车和消费级产品,功率预算介于5瓦和10瓦时间。“10到20年前存在CPU市场,然后它也发生了变化,现在主要针对服务器或Windows PC。已经不是很久之前我可以使用通用芯片的时代了,现在已经不存在通用CPU芯片了。”

简单来说,处理器市场都已经被定向了,这反映在不同的应用上。在高性能计算或超级计算应用中,GPU通常被用在基础设施的配置上,IO则用于系统的扩展,他说。

Rowen提到了英特尔和Altera的合并。“加速器绑定到基础设施上,这是FPGA可以发挥作用的地方,”他说,“英特尔和Altera的团队正在通力协作,我肯定能够看到英特尔服务器处理器芯片的优化越来越好,并且和FPGA一起在服务器中服役。”

在英特尔的高性能计算战略中,Knights Landing处理器是非常关键的一个因素。

“在大批量的应用中,使用ASIC是个非常常见的选择,而在一些产量要求并不高但需要一些特定功能的应用中,ASIC也有用武之地。”他说。在这种应用中选用ASIC的缺点是,为了满足特定需求而不得不承受ASIC的高成本。公司始终都需要计算盈亏平衡点。Rowen指出,有一些可以替代FPGA的方案,比如由eASIC公司提供的金属可编程芯片。“也许,你可以转用一次性工程费用低且出货量大的ASIC。”

从Rowen的角度来看,设计路线为从FPGA到中低批量ASIC,再到大批量ASIC,最后到客户自有工具

那么,到底该选择什么呢:CPU,GPU,FPGA,ASSP,ASIC?最好的答案依然是:这要看情况。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
嵌入式设备网络安全的实际解决方案