FPGA Partition Reconfiguration Using Resource Isolation Masks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing programmable devices, such as FPGAs, face challenges in partial reconfiguration, particularly in multi-user scenarios where distinct portions of the device need to be modified without affecting adjacent regions, leading to issues with resource isolation and proprietary information security.

Innovation Solution

The implementation of a configuration controller that generates and uses masks to reconfigure specific partitions of a programmable device without altering adjacent regions, ensuring resource isolation through the creation of 'allowed' and 'not allowed' masks, allowing for partial reconfiguration without central authority intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If partial reconfiguration is implemented in multi-user scenarios, then resource utilization and adaptability are improved, but resource isolation and security are compromised

Engineering Contradiction:
Improvepartial reconfiguration capabilityVSAvoidresource isolation
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The programmable device is divided into multiple independent partitions, each assigned to different users or functions. Each partition has its own configuration memory and control logic, enabling independent reconfiguration while maintaining isolation boundaries. The configuration controller processes reconfiguration requests partition-by-partition, ensuring that changes in one partition do not affect others.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A configuration controller acts as an intermediary between users and the programmable device resources. It receives reconfiguration requests, validates them against security policies, and executes configuration changes only for authorized partitions. This mediator ensures that users can only modify their own partitions while preventing unauthorized access to other partitions' resources.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If centralized control is used for reconfiguration, then security and permission management are improved, but reconfiguration speed and operational efficiency are reduced

Engineering Contradiction:
Improvepermission managementVSAvoidreconfiguration speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Security policies and partition assignments are pre-configured before runtime operations. Users are pre-authenticated and their access permissions are established in advance. When reconfiguration requests occur, the configuration controller simply checks against pre-established policies rather than performing full authentication and authorization procedures, significantly reducing reconfiguration latency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The configuration control process is segmented into independent partition management units. Each partition can be reconfigured independently without waiting for other partitions to complete their operations. The configuration controller processes multiple partition reconfiguration requests in parallel, improving overall reconfiguration throughput while maintaining security checks for each partition.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If configuration changes are allowed during runtime, then system adaptability is improved, but configuration stability and reliability are reduced

Engineering Contradiction:
Improveruntime reconfigurationVSAvoidconfiguration stability
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The programmable device is divided into spatially separated partitions that can be reconfigured independently at runtime. Each partition's configuration changes are localized and do not propagate to other partitions. This segmentation allows the system to maintain overall configuration stability while enabling adaptive changes in specific regions where needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The configuration controller implements feedback mechanisms to monitor configuration changes and system state. Before applying runtime reconfiguration, the controller validates the requested changes against current system state and security policies. After reconfiguration, the controller verifies that the changes were applied correctly and that system operation remains stable, providing feedback loops that maintain configuration integrity.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10659052B2Regional partial reconfiguration of a programmable device
Publication Date: 2020.05.19 ALTERA CORP
  • US10659052B2 patent drawing
  • US10659052B2 patent drawing
  • US10659052B2 patent drawing

AI summary

Devices and methods for reconfiguring a programmable fabric include identifying resources in a programmable fabric of the programmable device as belonging to a partition. Reconfiguring the programmable fabric also includes creating a mask for the partition that indicates that the identified resources belong to the partition. Reconfiguring the partition also includes reconfiguring resources, via a configuration controller, in programmable fabric associated with the partition using the mask without changing resources associated with other partitions in the programmable fabric.