芯片领域未来的主角——FPGA

发布日期:2020-11-26 13:56:58 发表者:admin 浏览次数:108次

最近几年,FPGA这个概念越来越多地出现。例如,比特币挖矿,就有使用基于FPGA的矿机。


还有,之前微软表示,将在数据中心里,使用FPGA“代替”CPU,等等。


国际上很多大的芯片厂商如英特尔、紫光、浪潮等企业均已开始布局FPGA。


QQ截图20201126140808.png

那么FPGA究竟是什么,它又有着怎样的魔力?


FPGA即现场可编程门阵列,又称为“万能芯片”,它是在PLA、PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。


它如同一张白纸或是一堆积木,工程师可以通过传统的原理图输入法,或是硬件描述语言自由的设计一个数字系统。


相对于 CPU、GPU、ASIC(专用芯片)等传统的芯片来讲,FPGA有着怎样的优势呢?


自诞生以来,FPGA就与 ASIC 纠缠不清,我们首先来看看他们两个的对比。


FPGA 相比 ASIC 的优势:硬件可编程


来看看什么是ASIC?


QQ截图20201126140813.png

早期要实现一个收音机的功能,需要电容、电阻、三极管等等一系列分立的元器件来搭建一个复杂的电路,这种集成电路,不仅占用面积大,分立的元器件使用量也比较多。


如果把这些分立的元器件集成到一个芯片中,在这个芯片的外围只需要少量的电阻、电容等配合就能实现完整的收音机功能,这就是ASIC芯片。


ASIC芯片将数量庞大的分立元器件集成到芯片内部,电路板面积更小,集成度更高,电路的可靠性也变强。


ASIC在研发的过程中可能会存在这样的问题,如果其中某些功能设计得不是很合理,就需要更改设计并提交给芯片制造厂家制造样片,可能需要几个月的时间。整个过程耗时长、费用高。


FPGA是一大堆预制的门和触发器,具有可编程互连的特性。可以使用这些基本模块配置成你想要的任何逻辑功能。如果有错误,可以在几秒钟内重新编程,而不需要数月才能知道结果。


再看看FPGA 相比 CPU、GPU 的优势:高吞吐、低延迟


高吞吐


FPGA 上的收发器可以直接接上 40 Gbps 甚至 100 Gbps 的网线,以线速处理任意大小的数据包;而 CPU 需要从网卡把数据包收上来才能处理,很多网卡是不能线速处理 64 字节的小数据包的。


QQ截图20201126140822.png

例如FPGA云服务,利用云服务的方式将只有大型公司才能长期支付使用的FPGA服务推广到了更多企业。


企业可以通过FPGA云服务器进行FPGA硬件编程,可将性能提升至通用CPU服务器的30倍以上。


低延迟


网卡把数据包收到 CPU,CPU 再发给网卡,即使使用 DPDK 这样高性能的数据包处理框架,延迟也有 4~5 微秒。


更严重的问题是,通用 CPU 的延迟不够稳定,例如当负载较高时,转发延迟可能升到几十微秒甚至更高。


这对其他的硬件设备来说很难实现,即使是高质量的 CPU 也会有 50 微秒的延迟,但到了 FPGA 身上,这个时间会被缩短到 1 微秒。


比如,这个优势在喷气式战斗机的自动操作和高频算法交易中将会大放异彩。


QQ截图20201126140830.png

当 FPGA 变得易于编程、缩短编译期且提高浮点计算能效时,GPU 很有可能被取代。


因其得天独厚的优势,随着人工智能时代的到来,FPGA 将在芯片领域大展身手。


马云曾说过在人工智能时代,通信将只占20%,物联网占80%,所有东西都会带芯片,由此可见,芯片的需求量将会大大增加


未来,FPGA有望成为芯片领域的主角。