【电子技术】【2014】FPGA增强的数据处理系统

在这里插入图片描述

大约十年前,功耗和散热问题迫使半导体行业从顺序计算模式转向并行计算模式。然而,在多核CPU和GPGPU等通用并行设备中实现并行性往往很困难。此外,在暗硅前景中,不久的将来,单个程序是否可以在数千个CPU核(同一个芯片上)上执行还值得怀疑。因此,由于更新的通用硬件,软件性能的提高速度正在减慢,这也影响到数据库和其他数据处理应用程序。

这一趋势导致了所谓的数据设备(data appliances)的兴起,这些设备是专门的数据处理引擎,其中的软件和硬件被封装在一个封闭的盒子里,并为特定的应用领域定制硬件组件。

对于此类设备,定制硬件是以节能方式进一步提高性能的一种很有前途的方法。考虑到研制可扩展到通用并行硬件上的软件变得越来越困难,问题是使硬件设备适应特定问题域在多大程度上是值得的,其意义是什么。

本论文旨在探讨如何使用可定制的硬件来提升资料处理应用程式与系统。我们构建和测试专用硬件组件的平台是现场可编程门阵列(FPGA)。FPGA是一种通用器件,它允许在FPGA制造和装运后将电路加载到FPGA上。通过使用FPGA,硬件方法可以很容易地实现和验证,而无需为每一次设计更改实际制造的新的硅芯片。

虽然FPGA是实现定制硬件的方便工具,但专用集成电路(ASIC)与为FPGA设计的电路之间存在根本区别。因此,本文的第一部分在讨论利用FPGA改善数据驱动应用和系统的机会之前,先讨论FPGA的关键特性。在这个过程中,给出了一个很好地映射到FPGA的应用实例,讨论了运行时参数化与FPGA重编程,并举例说明了有效的片上通信模式。此外,还介绍了开发FPGA电路的工具和设计模式,以一种简单但可扩展的方式利用这些大规模并行设备的固有并行性。

本文的第二部分重点研究了用FPGA增强的成熟的数据处理系统。本文第一部分的许多概念将被重新讨论并应用于构建完整的系统,如实时复杂事件检测系统、FPGA加速的XQuery引擎或关系数据库的智能存储引擎,这些都可以在提高性能的同时降低能耗。第二部分的重点是基于FPGA的加速器的物理和逻辑系统集成,以及在共同设计的混合系统中定制硬件和软件之间的相互作用。此外,我们给出了在每个系统上运行实验时测量的端到端结果。

It is roughly a decade ago that power consumption and heat dissipation problemsforced the semiconductor industry to shift from a sequential to a parallel computingparadigm. However, exploiting parallelism in general-purpose parallel devices suchas multi-core CPUs and GPGPUs is often difficult. Furthermore, in the prospectof dark silicon, it is questionable whether single programs can be executed onthousands of CPU cores (on the same die) in the near future. As a consequence, theperformance increase of software due to newer general-purpose hardware is slowingdown, which is also affecting databases and other data processing applications.

This trend has led to the rise of so-called data appliances, which are specializeddata processing engines, where software and hardware are shipped together in aclosed box with tailor-made hardware components for specific application domains.

For such appliances, customized hardware is a promising approach to furtherincrease performance in an energy-efficient manner. Given that it is becomingincreasingly difficult to produce software that scales on general-purpose parallelhardware, the question is to what degree it is worthwhile to adapt hardware devices to particular problem domains, and what the implications thereof are. Thisdissertation explores enhancing data processing applications and systems with customized hardware. Our platform to build and test specialized hardware components is a field-programmable gate array (FPGA). An FPGA is a generic devicethat allows circuits to be loaded onto it after the FPGA has been manufacturedand shipped. Using FPGAs, hardware approaches can be easily implemented andverified without actually fabricating a new silicon chip for every design change.

While FPGAs are a convenient tool to implement customized hardware, thereare fundamental differences between application-specific integrated circuits (ASICs)and circuits designed for FPGAs. Hence, the first part of this dissertation covers key characteristics of FPGAs before discussing opportunities of using FPGAsto improve data-driven applications and systems. In the process, examples ofapplications that map well to FPGAs are presented, runtime-parameterizationversus FPGA reprogramming is discussed, and effective on-chip communicationpatterns are illustrated. Moreover, tools and design patterns are presented todevelop FPGA circuits that leverage the inherent parallelism of these massivelyparallel devices in a simple yet scalable way.

The second part of this dissertation focuses on full-fledged data processingsystems that are enhanced with FPGAs. Many of the concepts of the first part ofthe dissertation will be revisited and applied to build complete systems such as areal-time complex event detection system, an FPGA-accelerated XQuery engine, oran intelligent storage engine for a relational database that increases performanceand reduces energy consumption at the same time. Key topics of this secondpart are physical and logical system integration of FPGA-based accelerators andthe interplay between customized hardware and software in co-designed hybridsystems. Furthermore, we present selected end-to-end results that we measuredwhile running experiments on each of these systems.

  1. 引言
  2. FPGA
  3. 基于有限状态自动机的设计
  4. Shifter Lists
  5. 复杂事件检测系统
  6. FPGA加速的XQuery引擎
  7. 智能数据库存储引擎
  8. 总结与结论
    附录A.1 FPGA芯片
    附录A.2 FPGA板卡

更多精彩文章请关注公众号:在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值