Skip to main content
QUICK REVIEW

[论文解读] A Survey of System Architectures and Techniques for FPGA Virtualization

Masudul Hassan Quraishi, Erfan Bank Tavakoli|arXiv (Cornell University)|Nov 18, 2020
Physical Unclonable Functions (PUFs) and Hardware Security参考文献 71被引用 4
一句话总结

本综述对FPGA虚拟化系统架构与技术进行了全面分析,重点探讨了通过抽象硬件复杂性、实现资源共享以及确保隔离,从而在云和边缘计算中实现多租户支持。文章识别出可扩展性、安全性和隔离方面的关键挑战,并提出了多FPGA虚拟化及增强隔离机制的未来研究方向。

ABSTRACT

FPGA accelerators are gaining increasing attention in both cloud and edge computing because of their hardware flexibility, high computational throughput, and low power consumption. However, the design flow of FPGAs often requires specific knowledge of the underlying hardware, which hinders the wide adoption of FPGAs by application developers. Therefore, the virtualization of FPGAs becomes extremely important to create a useful abstraction of the hardware suitable for application developers. Such abstraction also enables the sharing of FPGA resources among multiple users and accelerator applications, which is important because, traditionally, FPGAs have been mostly used in single-user, single-embedded-application scenarios. There are many works in the field of FPGA virtualization covering different aspects and targeting different application areas. In this survey, we review the system architectures used in the literature for FPGA virtualization. In addition, we identify the primary objectives of FPGA virtualization, based on which we summarize the techniques for realizing FPGA virtualization. This survey helps researchers to efficiently learn about FPGA virtualization research by providing a comprehensive review of the existing literature.

研究动机与目标

  • 解决软件开发者因底层硬件复杂性及缺乏抽象而难以采用FPGA的问题。
  • 在多租户环境中实现FPGA资源在空间和时间上的高效共享,支持多用户和多应用。
  • 通过硬件抽象和标准化接口,简化应用开发者对FPGA的访问。
  • 确保强性能、功能和故障隔离,以在共享FPGA环境中维持安全性和弹性。
  • 识别当前研究中的空白,特别是多FPGA虚拟化和全面隔离机制方面的不足。

提出的方法

  • 根据抽象层次对FPGA虚拟化技术进行分类:资源级、节点级和多节点级虚拟化。
  • 分析使用FPGA外壳、动态部分重配置(DPR)和基于PCIe的通信机制的系统架构,用于虚拟化FPGA管理。
  • 研究虚拟FPGA(vFPGA)创建技术,包括硬件分区和使用物理可重配置区域(PRR)的资源池化。
  • 评估利用硬件PCIe控制器和DPR实现的故障隔离机制,以及用于故障恢复和服务重映射的协议。
  • 研究电源侧信道攻击等安全威胁,并提出基于片上电源监控以检测恶意资源消耗行为。
  • 回顾现有用于AI/ML加速的框架,重点关注基于指令集的方法,以避免完整的FPGA编译开销。

实验结果

研究问题

  • RQ1如何通过FPGA虚拟化抽象底层硬件细节,以实现软件开发者无缝访问?
  • RQ2哪些系统架构和技术能够支持在云和边缘环境中跨多个租户高效共享FPGA资源?
  • RQ3在多租户FPGA虚拟化系统中,如何实现功能、性能和故障隔离?
  • RQ4当前FPGA虚拟化方法在扩展至多个物理FPGA或网络化集群时存在哪些局限性?
  • RQ5如何在共享FPGA环境中缓解如电源侧信道攻击等安全威胁?

主要发现

  • 大多数现有FPGA虚拟化方法局限于单个FPGA,且将物理可重配置区域(PRR)视为vFPGA的边界,限制了可扩展性。
  • 多FPGA虚拟化——即多个物理FPGA被抽象为单个逻辑vFPGA——仍研究不足,是未来关键研究方向。
  • 故障隔离通过PCIe控制器和DPR等硬件特性支持,但需系统级恢复协议以实现稳健的故障处理。
  • 共享FPGA环境中存在如电源侧信道攻击等安全漏洞,片上电源监控可帮助检测恶意行为。
  • 现有FPGA的AI/ML加速框架通常缺乏对多FPGA部署的支持,且忽略隔离问题,限制了其在多租户环境中的实用性。
  • 功能隔离通过分配独立硬件资源池部分实现,但需更深入研究以确保在共享物理资源时实现强隔离。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。