支持的cpu + fpga(第1部分)

专家表,第1部分:今天工具链的样子,不同的心态在这些流动。

受欢迎程度

虽然它可能对一个CPU和FPGA在很长一段时间,最近两件事情发生了变化。第一,产业减少了它们之间的延迟连接的第二,我们现在似乎这种组合的杀手级应用。半导体工程坐下来讨论这些变化和工具链的状态来支持这个组合,与肯特Orthner系统架构师Achronix高级组主任弗兰克Schirrmeister,产品管理系统中&验证小组节奏,艾莉烧伤、HLS营销总监和低权力和戈登•艾伦,产品经理,从导师图形。以下是摘录对话。

SE:直到最近,CPU和FPGA视为两个不同的应用领域,有两个不同的流,两个不同的团队,几乎不同的思维过程。现在我们看到的许多应用程序,这两个设备在一起。什么种类的应用程序,我们看到这种情况的发生?

Orthner:我们看到一个巨大的加速度。考虑亚马逊云,和微软Azure。我看到很多人越来越感兴趣卷积神经网络(CNN)。一次又一次的出现。在最近的FPGA在蒙特雷会议,可能一半的会议。我看到应用程序SQL加速度等人做的数据库应用程序,当你运行SQL通过FPGA的硬盘,你可以做各种各样的过滤。有很多的加速,大量的PCI Express应用人们挣扎在延迟和吞吐量在这些链接。

艾伦重叠:FPGA和ASIC技术越来越多的在他们的设计流程。有越来越少地依赖地流在一边对fpga和传统的ASIC流。我们正在接近市场的方式是通过查看终端市场的客户基础。有些是使用FPGA技术在新的和有趣的方式,如SQL查询加速度和加速度高频交易算法。我们看到这些新的快速回车线技术是可取的和一个伟大的适合ASIC和FPGA相结合的流。

伯恩斯:我们也看到。我们看到很多实验,人们寻找性能很高,非常低权力。他们会衡量权力的CPU、GPU,他们可能需要搬到FPGA和ASIC。深入学习,机器视觉——所有这些事情需要改进的性能每焦耳和正在寻找最有效的方法。在FPGA上你有更低的功率比GPU和CPU,所以你可以问如果你需要去一个ASIC和是什么样子。我们看到一个驱动器来理解如何做软件有效地加速。从一个基于c的流我们开始看到有人问,“可能我们还有什么要做的,提前知道每焦耳的性能是什么?对机器学习的CNN——你不能,在你的车里放液体冷却的系统。不去上班,所以他们想出了功耗更低的解决方案。焦耳被一个NVIDIA盒子大约40瓦。

Orthner:它确实下来每焦耳。

伯恩斯:这是一个关键的测量。该算法消耗多少每焦耳吉拍呢?它需要多少?我的预算是什么?

Schirrmeister:有两个组件。一个是平衡的概念软件性能与硬件性能。权力是一个重要因素。另一个司机是延迟和多快能给我一定的任务。我可以将我的一些算法在FPGA加速度的目的吗?这工作适当的软件。我们来到这些类型的情况当人们问我们远程访问一个FPGA原型。他们问如果足够快将我的数据通道,加速,结果返回。如果,这取决于应用程序。比如视频算法往往会让自己很好,功率组件。 But other applications require low latency. They may be able to do a specific compute function 10X faster, but for applications such as Accelerated Financial Trading, it is all about latency. Another aspect is the notion of what happens within the chips.

SE:这个组合设计问题?

Schirrmeister:当你放在一起一个FPGA设计问题表面,其余的SoC基本上,这可能是一个数组的处理器。你有两个问题。首先,如何设计本身,这是我们的工具集中的一个领域。第二,如果你有一个整体的所有芯片,你如何平衡函数你放入处理器系统和FPGA织物你投入多少?你能做任何特定设备的IP和你有足够可用的附近地区,我的地图吗知识产权加速的手臂的子系统?我怎么模型,如何做决定?在最高的层次上,它可能是董事会/ CPU、或全部在一个芯片上。我发现有趣的是,在历史上有很多研究硬件/软件合作设计,现在成为现实,因为硬件是灵活的,软件是灵活的。我们正步入找出新的设计流的东西我们认为我们可以做在90年代。现在我们有片上。

伯恩斯:一方面,有趣的是说硬件软件co-verification都是有趣的东西,但我们看到为了真正做某种工具链的加速度是必须改变。我们不能有建模,然后分离,不同路径。亚马逊云的想法,能够立即加速算法,有人在软件自动工具链必须能够做到这一点。他们需要一个快速的方法来实现。他们需要一种方法来快速验证它,确保它工作,确保它是安全的。

SchirrmeisterFPGA的一面:它是一个问题的时候都是集成的,因为你面临不同的心态。现在一切都是灵活的。如果我犯错误是可以解决的。如果我进入tapeout犯错误,这是一个关键的职业选择ASIC。但是现在我可以修复它在硬件或软件。

伯恩斯:你可以修复,但…

Schirrmeister:它改变了心态。你没有挂在你这样一个巨大的负担。你不是在方法论上干净了。

艾伦:但是我们要避免回到实验室验证。

Orthner:我希望人们不只是它并把它映射。

艾伦:我们是重新定义SoC。在90年代的中期,我们定义了一个SoC芯片处理器+外围设备。然后我们重新定义了SoC添加固件组件。能力改变和升级也增加了复杂性,所以我们在定义包括固件。90年代末-,我们尝试用FPGA + CPU在同一硅,和我们的时间。我们失败了,因为没有使用正确的FPGA,架构,该行业不准备接受这个作为他们的上市时间的解决方案。现在我们在一个地方,我们有成熟的FPGA技术嵌入CPU到FPGA或FPGA与CPU ASIC共存。我们定义的灵活性的SoC包括逻辑,和工具链成为适合的目的。这些设备的市场是针对低功率问题,安全性、可靠性、投入市场的时间。工具链来对付他们。

伯恩斯:他们正在改变所有的时间。你不能解决“诱导多能性”了。

Orthner的局限性与以前的工作方式是FPGA是单独的在黑板上。你被锁在这粗粒度的决策过程的进入。

伯恩斯:因为你有一个固定的和已知的带宽和延迟。

Orthner:你可以越接近FPGA核心,像放在相同的死,现在你有真的低延迟,你可以细粒度的决策。你可以把一个算法,只需要几微秒,搬到FPGA的加速度。

伯恩斯如果我看的最新设备赛灵思公司英特尔,他们照顾的延迟和带宽和突然,它几乎是没有的。它不可能没有,但它不再是作为PCIe事务了。很低延迟、高带宽。

Orthner:它不再是问题。

伯恩斯:现在问题已经成为,你的硬件,你没有适当的工具链。

Schirrmeister:根据经验,我想相信发生在90年代。我想相信我们,我们有干净的流,你提前验证一切。当我看着我们其中的一些设计经验,他们的虚拟平台。有能力把事务级模型(TLMs)和处理器模式。最近的fpga,流是外国的开发人员。这是一个有趣的组织思维模式的差异。

伯恩斯:对于一个FPGA设计师,我不知道他们这样做。

Schirrmeister:这是我的观点。如果有一个流,允许他们评估的性能/力量权衡容易得多,他们可能采用它。然后还有map-it-and-try或实验室验证的心态,因为它可以很容易改变。价值是巨大的,人们采用流。有一定的市场,…

Orthner:…你不想要花几个月的时间在一个验证周期。

Schirrmeister:没错。你会做,如果投资的成本和体积将合法化,但它可能不是FPGA设计人员所从事的工作。

有关的故事
支持的cpu + fpga第2部分
专家在餐桌上,第2部分:谁才是真正的用户和他们将如何计划这种类型的解决方案?
系统级验证处理的新角色
专家在餐桌上,两个部分:小组成员讨论混合不同类型的系统,要求模型不连续和共同刺激和调试的需要。
软件建模成为主流
更多的芯片制造商转向software-hardw新利体育在线完整版are交互性能、电力、安全。
CPU、GPU或FPGA吗?
需要一个低功耗设备设计?你应该选择什么类型的处理器?
嵌入式fpga来的年龄
这些设备正在日渐普及的更多关键功能芯片和系统设计变得更加异构。
异构系统挑战成长
如何确保不同类型的处理器将SoC工作。



3评论

马克西米利安Odendahl 说:

伯恩斯说:“现在的问题已经成为,你的硬件没有适当的工具链。”

这正是Silexica问题是解决基金工具链,权衡性能与权力,采取两种异构处理器/ fpga和通信架构考虑!乐意深入讨论我们的技术。

艾莉烧伤 说:

是的,那将会是很有趣的。

卡尔·史蒂文斯 说:

有引用FPGA设计者在做什么暗示的工具需要应对当前设计方法——这是“错误的”资本“W”。

设计师们别无选择,只能用可怜的工具链,扔掉一切,从头开始通过合成和放置每个附近地区,FF和线。

数据流和测序是至关重要的,大多数错误存在,所以工具链和设计师必须采用一种方法来实现一个灵活的数据流算法和排序。

一切不会发生“一次”,常说,会有不需要时钟和没有很好的理由使用什么看起来像一个定义控制逻辑编程语言的if / else和赋值语句。

fpga使用附近地区评估控制和计算的布尔代数。每个是一个宽一点记忆,每一个细胞都使用它是否包含一个“1”或“0”所以合成不是至关重要的,因为它的目的是最小化盖茨不存在于fpga。

如果有必要执行C代码,然后把一个C加速器在FPGA上而不是试图合成C代码。

如果可以加速计算算法,那么应用程序代码也可以加速w / o CPU。

留下一个回复


(注意:这个名字会显示公开)

Baidu