Virtual FPGA Instances in Distributed Execution Environments

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Students, hobbyists, and entrepreneurs often lack access to suitable field-programmable gate arrays (FPGAs) due to cost constraints or resource limitations, hindering their ability to engage in hardware prototyping and design projects.

Innovation Solution

A distributed execution environment provides on-demand access to field-programmable device resources, including FPGAs, through virtual machine instances that can be instantiated with varying configurations, allowing users to program and utilize FPGAs without the need for expensive hardware purchases, using a pay-per-use pricing model.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If users purchase expensive FPGA hardware, then they gain access to advanced FPGA resources, but the cost barrier prevents students, hobbyists, and entrepreneurs from accessing suitable devices

Engineering Contradiction:
Improveaccess to suitable FPGA resourcesVSAvoidcost
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent implements virtual FPGA instances that are software-based copies or abstractions of physical FPGA resources. These virtual instances can be provisioned on-demand through a distributed execution environment, allowing users to access FPGA functionality without purchasing expensive physical hardware. The virtual instances replicate the essential programming and execution capabilities of real FPGAs while eliminating the need for each user to own dedicated physical devices.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system creates a shared pool of FPGA resources that can be dynamically allocated to multiple users simultaneously. A single physical FPGA resource can serve multiple virtual instances and multiple users through time-multiplexing and resource virtualization. This universal access model allows the same hardware infrastructure to support students, hobbyists, and entrepreneurs alike, replacing the need for each user to purchase separate expensive FPGA boards.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Ease of operation

If FPGA resources are made available in University classrooms, then students can learn hardware prototyping, but the FPGAs become outdated or fall into poor functional order due to cost-cutting measures

Engineering Contradiction:
Improveaccess to FPGA for educationVSAvoidfunctional order of FPGA
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

Students interact with virtual FPGA instances rather than physical hardware. These virtual instances can be maintained and updated through software updates without requiring replacement of physical devices. The distributed execution environment can provision fresh virtual instances with up-to-date FPGA toolchains and configurations, ensuring students always have access to functionally sound environments even if physical classroom hardware becomes outdated.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system introduces a virtualization layer as an intermediary between students and physical FPGA hardware. This layer abstracts the physical device state and provides a stable, controllable interface. Even if the underlying physical hardware degrades or becomes outdated, the virtualization layer can compensate through software-based emulation or redirection to remote physical resources, maintaining functional reliability for educational purposes.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If hobbyists and entrepreneurs purchase FPGA hardware, then they can engage in hardware prototyping, but the high cost prevents them from acquiring suitable devices

Engineering Contradiction:
Improveability to engage in hardware prototypingVSAvoidfinancial resources
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system provides virtual FPGA instances that replicate the prototyping capabilities of expensive physical hardware. Hobbyists and entrepreneurs can access high-capability FPGA resources through virtual instances provisioned in the distributed execution environment, eliminating the need to purchase expensive development boards. This allows them to prototype complex hardware designs with access to advanced FPGA features that would otherwise be financially out of reach.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The platform enables on-demand self-provisioning of FPGA resources. Users can independently allocate virtual FPGA instances, configure them for their specific projects, and access them through web interfaces or API calls without requiring physical hardware procurement processes. This self-service model reduces financial barriers by converting capital expenditure (purchasing hardware) into operational expenditure (paying for cloud resource usage), making FPGA prototyping accessible to individuals and small teams with limited budgets.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10481929B1Providing field-programmable devices in a distributed execution environment
Publication Date: 2019.11.19 AMAZON TECH INC
  • US10481929B1 patent drawing
  • US10481929B1 patent drawing
  • US10481929B1 patent drawing

AI summary

A distributed execution environment can provide access to field-programmable device resources. The field-programmable device resources can be provided in association with one or more instances that are instantiated within the distributed execution environment upon request from a computing system. The computing system can be associated with a customer of the distributed execution environment. The customer can program the field-programmable device resources using designs created by or for the customer.