高层次综合(HLS)是一种不断扩大的趋势,具体表现为可以使用常规编程语言(例如 Open CL 或 C ++)和高层次抽象对 FPGA 进行编程操作。但撇开所有在编程方面取得的技术性进展与突破,FPGA 的编程至今仍是一项艰巨的工作。

除此之外,编译期也是现场可编程门阵列的一大缺点。举个例子,如果使用 Intel Open CL 编译器,则编译一个典型的 FPGA 程序需要 4 到 12 个小时。为了实现性能优化,程序员经常需要进行通宵编译。我们反过头来看看 GPU,对于数据上的传输,它更依赖于 OS 和标准化总线(例如 USB 和 PCI -Express)。FPGA 则不依赖于这些参数,它们的优势就在于能够使用户以较小的延迟获得更高的带宽。

实际上,FPGA 可直连数据源,例如网络接口和传感器。为了使用诸如深度学习之类的高性能计算功能,用户只能高度依赖具有出色浮点性能计算能力的 GPU,而 FPGA 在浮点算法上的效率则略显低下。在一般的浮点运算中,浮点单元需要大量资源并且必须由逻辑块组装而成。然而剧本到了 FPGA 上就变了,由于 FPGA 结构中已包含浮点单元,能效率可以因此得到显著提高。

虽然就目前的情况而言,先进的 GPU 比起 FPGA 具有更优能效,但在不久的将来,现场可编程门阵列肯定会在浮点计算方面赶超 GPU,获得这场能效计算之战的胜利。

      (责任编辑:fqj)

关于可编程逻辑就介绍完了,您有什么想法可以联系小编。