Implementation Set Abstraction for FPGA Design Complexity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of modern circuit designs, particularly for Field Programmable Gate Arrays (FPGAs), is exacerbated by heterogeneous design tools with multiple flows that lack uniformity, leading to inefficiencies and increased maintenance overhead due to different notions of partial net-lists and design entities.

Innovation Solution

The introduction of an Implementation Set (I-Set) abstraction provides a unified paradigm for specifying partial net-lists, simplifying client applications' interface to net-list information and allowing for flow-independent operation, reducing the need to distinguish between various net-list entities like user floor-planned partitioning, modules, and flat designs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple separate flows are used to address different design needs, then specific customer needs are met, but tool complexity and maintenance overhead increase

Engineering Contradiction:
Improveability to address specific customer needsVSAvoidtool complexity and maintenance overhead
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a unified implementation set data model that serves as a universal foundation for multiple design flows. This single data model structure can represent different design entities (Area Groups, Modules, PIMs, Hard Macros, Soft IP Cores) and support various flows (Incremental, Modular, Partial Reconfiguration, Normal Guide) without requiring separate data structures for each flow, thereby reducing tool complexity while maintaining versatility

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

Solution Approach 2:

The patent segments the design representation into hierarchical implementation sets that can be independently manipulated. The implementation set data model divides the overall design into manageable components (blocks and signals) that can be processed separately by different flows, allowing each flow to work with appropriate granularity levels while sharing a common underlying structure

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If different notions of partial net-lists are used in different flows, then specific flow requirements are met, but software overhead increases

Engineering Contradiction:
Improveflow-specific design representationVSAvoidsoftware overhead
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The implementation set data model provides a universal representation that can serve multiple flow-specific requirements. The same data model structure supports Area Groups for Incremental Design, Modules for Modular Design, and PIMs for Partial Reconfiguration, eliminating the need for separate data structures and reducing software overhead while maintaining flow-specific capabilities

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

Solution Approach 2:

The patent uses parameter changes within the unified implementation set data model to accommodate different flow requirements. By modifying parameters such as the scope of blocks and signals included, the same data model can represent different notions of partial net-lists appropriate for each flow without requiring structural changes

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If each interactive flow is implemented separately, then specific flow functionality is achieved, but ease of operation decreases

Engineering Contradiction:
Improveflow-specific functionalityVSAvoidease of use
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The unified implementation set data model provides a consistent interface for all interactive flows, improving ease of operation. Users work with the same data model structure regardless of which flow they are using, reducing the learning curve and operational complexity while maintaining the specialized functionality of each flow

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

Data Source

PatentUS8296690B1Method and arrangement providing for implementation granularity using implementation sets
Publication Date: 2012.10.23 XILINX INC
  • US8296690B1 patent drawing
  • US8296690B1 patent drawing
  • US8296690B1 patent drawing

AI summary

A design hierarchy based on an implementation set abstraction of a user design for an integrated circuit design includes a plurality of nodes and a definition for each of the nodes in the plurality of nodes that describes the type of elements contained in each node and the hierarchy defined by each of the nodes. Each node can include at least one implementation element of the design and the at least one implementation element can be selected among the group including a set of logical elements, a set of placed elements, and a set of placed and routed elements.