Virtual Function Interrupt Routing in Multi-Die CGRA Processors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Reconfigurable processors, particularly coarse-grained reconfigurable architectures (CGRAs), are optimized for single-task and static-workload scenarios, conflicting with the multi-tenancy and dynamic resource allocation requirements of cloud computing, leading to hardware underutilization due to the lack of practical virtualization support for accelerators.

Innovation Solution

A system is developed that enables the execution of multiple applications on a reconfigurable processor with two dies, ensuring isolation and efficient resource sharing by supporting virtual functions, utilizing a compiler to map operations to CGR units across dies and managing data flow and synchronization in parallel and pipelined computation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If reconfigurable processors are optimized for single-task and static-workload scenarios, then execution efficiency for specific tasks is improved, but hardware utilization deteriorates when multi-tenancy and dynamic resource allocation are required

Engineering Contradiction:
Improveexecution efficiencyVSAvoidhardware utilization
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The reconfigurable processor is divided into multiple independent CGR arrays that can be individually allocated to different virtual functions. Each CGR array operates as an independent execution unit, allowing the system to segment hardware resources and assign them to multiple tenants simultaneously, thereby improving hardware utilization while maintaining execution efficiency for each task

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The reconfigurable processor is designed to support multiple virtual functions on a single device, enabling one physical processor to serve multiple roles and tenants. The CGR arrays can be dynamically reconfigured to handle different workloads, making the hardware universal and adaptable to various computing tasks while maintaining high utilization rates

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

2Adaptability or versatility

If virtualization support is added to reconfigurable processors, then multi-tenancy capability is improved, but device complexity increases

Engineering Contradiction:
Improvemulti-tenancy capabilityVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

A runtime processor is introduced as an intermediary component to manage virtualization functions, configuration loading, and resource allocation. This mediator handles the complexity of virtualization support, allowing the main reconfigurable processor to focus on execution while the runtime processor manages the overhead of multi-tenancy, thus reducing the complexity burden on the core processing units

Inventive Principle:
Principle #24Intermediary (Mediator)

3Quantity of substance

If multiple CGR arrays are distributed across two dies, then resource capacity is improved, but interrupt handling complexity increases

Engineering Contradiction:
Improveresource capacityVSAvoidinterrupt handling complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

Multiple CGR arrays distributed across two different dies are merged into a single unified reconfigurable processor through the runtime processor. The runtime processor aggregates the arrays and presents them as a cohesive resource pool to virtual functions, simplifying interrupt handling by providing a centralized management point rather than requiring each die to independently manage its own interrupts

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12554473B2Handling interrupts from a virtual function in a system with a Multi-Die reconfigurable processor
Publication Date: 2026.02.17 SAMBANOVA SYSTEMS INC
  • US12554473B2 patent drawing
  • US12554473B2 patent drawing
  • US12554473B2 patent drawing

AI summary

A system is presented that includes a communication link, a runtime processor, and a reconfigurable processor. The reconfigurable processor is adapted for generating an interrupt to the runtime processor in response to a predetermined event and includes first and second dies arranged in a package, having respective first and second arrays of coarse-grained reconfigurable (CGR) units, and respective first and second communication link interfaces coupled to the communication link. The runtime processor is adapted for configuring the first and second communication link interfaces to provide access to the first and second arrays of coarse-grained reconfigurable units from first and second physical function drivers and from at least one virtual function driver, and the reconfigurable processor is adapted for sending the interrupt to the first or to the second physical function driver and for sending the interrupt to a virtual function driver of the at least one virtual function driver.