FPGA-accelerated instances are instances that are equipped with field-programmable gate arrays (FPGAs). FPGA hardware and acceleration applications can be re-configured to obtain low-latency hardware and elastic resources.

FaaS platform

Conventional FPGA hardware is time-consuming and difficult to develop. Additionally, high-level protection is required for the release and deployment of hardware acceleration algorithms. The FPGA as a Service (FaaS) platform provides a unified hardware platform and middleware in the cloud to reduce the costs for developing and deploying accelerators. You can develop and deploy your own accelerators without the need to understand the underlying hardware. You can also use the acceleration services provided by accelerator providers.

The FaaS platform consists of the following components:
  • Hardware infrastructure: FPGA-accelerated instances, and hardware acceleration development and deployment platforms such as Intel and Xilinx.
  • Cloud-based development environment: software from providers such as Quartus and Vivado, and third-party electronic design automation (EDA) software for emulation and simulation.
  • FPGA-accelerated Intellectual Property (IP) development ecosystem: image transcoding, genetic computation, data encryption, video compression, hardware emulation design, and deep learning (prediction or training).

Alibaba Cloud provides FPGA-accelerated instances based on the FaaS platform to offer FPGA acceleration capabilities and maintain the same user experience as that provided by common Elastic Compute Service (ECS) instances. To create an FPGA-accelerated instance in the ECS console, you can select Heterogeneous Computing and then select the Compute Optimized Type with FPGA category. For more information about instance types, see Instance families.

Features

  • Unity

    FPGA-accelerated instances are more reliable and easier to transplant and develop. FPGA-accelerated instances are compatible with a variety of FPGA devices (Intel and Xilinx) and support the Multiboot feature that implements hardware burning by using Shell scripts.

  • FPGA virtualization

    The FPGA software and hardware virtualization solution developed by Alibaba Cloud can meet the requirements for security isolation in the cloud. Hot upgrades are supported to allow online re-configuration of user logic without interrupting services.

  • Joint simulation platform

    Intel and Xilinx devices are supported so that you can perform joint simulation of software and hardware to provide cost-efficient computing capabilities without the need to change original designs.

  • Dynamically configurable interconnection topology

    FPGA-accelerated instances support interconnection topologies of one, two, or four FPGAs. These topologies can be dynamically configured to provide the optimal cost efficiency. Express Connect is used between FPGAs of the same accelerator card to implement real-time transfer of a large amount of data without a bandwidth bottleneck.

Toolkits

The FaaS platform provides hardware development kits (HDKs) and SDKs to build a more efficient and unified development and deployment platform. FaaS platform architecture
  • An HDK uses the combination of Shell and Role to ensure the lightweightness and stability of Shell without compromising convenience and flexibility.
  • An SDK consists of the following components:
    • Host drivers and libraries that correspond to HDK Shell and Role, and provide unified and flexible software support.
    • faascmd, the FPGA management toolkit that provides cloud-based FPGA management services. faascmd offers features such as security verification of BIT or DCP files, FPGA image generation, download, and management, and FPGA accelerator card status query.

    FaaS-based image operations are dependent on Alibaba Cloud Object Storage Service (OSS). Therefore, you must activate OSS before you can use FPGA-accelerated instances. For more information about how to activate OSS, see Activate OSS.