Arbitration Logic Placement in Multi-Master FPGA Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing FPGA systems face resource inefficiencies due to the limitations of shared bus arbitration, which restricts bandwidth and increases latency, while point-to-point interconnection schemes consume more logic resources, necessitating a flexible approach to locate arbitration logic.

Innovation Solution

The system uses design constraints to automatically determine whether arbitration logic should be placed at the bus or within slave modules, optimizing resource usage based on area, throughput, and latency considerations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Area of stationary object

If arbitration logic is placed in the bus (centrally arbitrated shared bus), then area requirements are reduced, but system throughput is limited and latency increases

Engineering Contradiction:
Improvearea requirementsVSAvoidsystem throughput
Core Design Contradiction:
Area of stationary objectVSProductivity

Solution Approach 1:

The patent applies dynamics by making the arbitration logic location configurable rather than fixed. The system can dynamically select between centralized bus arbitration and distributed slave-side arbitration based on design constraints, allowing the architecture to adapt to different performance and area requirements.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies local quality by allowing different parts of the system to have different arbitration characteristics. Some slaves can implement arbitration logic while others use bus arbitration, enabling optimization of specific high-bandwidth paths without affecting the entire system uniformly.

Inventive Principle:
Principle #3Local quality

2Productivity

If arbitration logic is placed in slave modules (point-to-point interconnection), then system throughput and bandwidth are enhanced, but logic resources and area consumption increase

Engineering Contradiction:
Improvesystem throughputVSAvoidlogic resources
Core Design Contradiction:
ProductivityVSArea of stationary object

Solution Approach 1:

The system dynamically configures arbitration logic placement based on design constraints. Slaves can be configured to include or exclude arbitration logic depending on whether high throughput is prioritized over area consumption, making the system adaptable to different operational requirements.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent segments the arbitration function by allowing individual slaves to independently implement arbitration logic only when needed. This segmentation enables selective distribution of arbitration capabilities to specific slaves that require high bandwidth, rather than requiring all slaves to have arbitration logic.

Inventive Principle:
Principle #1Segmentation

3Device complexity

If shared bus connection is used, then arbitration logic is reduced to a single instance, but total bandwidth is limited to bus bandwidth

Engineering Contradiction:
Improvearbitration logic instancesVSAvoidtotal bandwidth
Core Design Contradiction:
Device complexityVSQuantity of substance

Solution Approach 1:

The patent segments the arbitration function across multiple slaves, allowing each slave to have its own arbitration logic. This segmentation enables parallel arbitration operations, where multiple masters can simultaneously transfer data to different slaves, thereby increasing total system bandwidth while maintaining a reasonable number of arbitration logic instances.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a single-dimension centralized arbitration model to a multi-dimensional distributed arbitration model. By distributing arbitration logic across multiple slaves in different locations within the system, the architecture enables parallel data paths and increases total bandwidth beyond the limitations of a single shared bus.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

4Productivity

If point-to-point interconnection is used with slave-side arbitration, then parallelism of transfers is enabled, but area requirements increase significantly

Engineering Contradiction:
Improveparallelism of transfersVSAvoidarea requirements
Core Design Contradiction:
ProductivityVSArea of stationary object

Solution Approach 1:

The system dynamically configures which slaves implement arbitration logic based on design constraints and operational requirements. This dynamic configuration allows the system to achieve parallelism when needed while minimizing area consumption when parallelism is not required, making the architecture adaptable to different performance and resource constraints.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies local quality by enabling arbitration logic in specific slaves that require high-speed parallel transfers, while other slaves can use simpler bus arbitration. This selective approach allows parallelism to be achieved in critical paths without requiring all slaves to have complex arbitration logic, thereby controlling overall area requirements.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS7426709B1Auto-generation and placement of arbitration logic in a multi-master multi-slave embedded system
Publication Date: 2008.09.16 XILINX INC
  • US7426709B1 patent drawing
  • US7426709B1 patent drawing
  • US7426709B1 patent drawing

AI summary

An FPGA design system includes the use of constraints in order to determine whether to associate arbitration logic with a bus or in slave modules. In one embodiment, area constraints can be used to determine whether a smaller design using arbitration logic at the bus should be used. In one embodiment, a latency constraint is used to determine whether a lower latency design with arbitration logic at the slave modules is to be used. In one embodiment, throughput constraints are used to determine whether a higher throughput design with arbitration logic at the slave modules is to be used.