Isomorphic Subtree Enumeration for Hardware Resource Sharing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current systems for designing and implementing hardware systems face challenges in resource sharing, particularly in identifying and optimizing common patterns of resource usage across different parts of a system, which can lead to inefficiencies in terms of area, speed, and throughput.
Innovation Solution
The system employs a method to identify isomorphic subtrees in tree-based representations of resource usage patterns, allowing for the sharing of computational resources and optimizing hardware description language (HDL) code generation by converting resource use patterns into a key-based representation and using dynamic programming for maximal common prefix substring matching to locate sharable resources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Area of stationary object
If resource sharing is implemented in hardware design, then area requirements are reduced, but identifying common patterns becomes more complex
Solution Approach 1:
The patent segments the resource usage pattern identification problem into tree-based representations where computational resources are decomposed into hierarchical patterns. By dividing the complex identification task into manageable tree structures with nodes representing operations and edges representing data flow, the system can systematically identify isomorphic subtrees that represent shareable resources, thereby reducing hardware area while managing complexity through structured analysis
Solution Approach 2:
The patent uses copying by creating tree-based representations and keys that replicate resource usage patterns. Instead of directly analyzing complex hardware resource interactions, the system creates simplified copied representations (trees and keys) that preserve the essential pattern information. This allows efficient identification of common patterns through key matching without dealing with the full complexity of the original hardware resource usage
2Productivity
If resource sharing optimization is performed, then hardware implementation efficiency is improved, but the complexity of analyzing resource usage patterns increases
Solution Approach 1:
The patent introduces tree-based representations and key-based encodings as intermediary structures between the raw hardware resource usage data and the optimization analysis. These intermediaries transform complex resource interaction patterns into structured trees where isomorphic subtrees can be efficiently identified. The intermediaries preserve the essential information needed for optimization while presenting it in a form that is much easier to analyze and process
Solution Approach 2:
The patent changes the parameters of resource usage representation from detailed hardware interaction data to simplified tree structures characterized by keys. By transforming the representation parameters (from raw resource usage traces to hierarchical tree keys), the system enables efficient pattern matching and optimization analysis while maintaining the ability to identify shareable resources that improve hardware implementation efficiency
Data Source
AI summary
Embodiments relate to a system and method for identifying common patterns of use of resources. The resource usage patterns may be specified using a tree structure, and identifying common resource use patterns may involve identifying isomorphic subtrees between two or more trees. Isomorphic subtree identification may be accomplished by converting trees into key-based representation and analyzing the key-based representation to identify common patterns within the key-based representation.


