Automatic Shared Processor Datapath Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Designers face challenges in manually determining the number of datapaths and logic sharing for efficient processor implementation, as introducing new operations requires reconsidering existing datapaths and logic sharing, and existing systems fail to automatically generate shared processor datapaths that satisfy designer-specified constraints like clock period and latency.

Innovation Solution

A system that automatically generates shared processor datapaths by building data-flow operand graphs, canonicalizing them, assigning pipeline schedules, collecting resource shareability data, merging seed datapaths, and identifying shareable resources to achieve efficient hardware logic implementation while adhering to constraints.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If manual methods are used to determine datapath configuration, then designer control over specific implementation details is maintained, but the design process becomes time-consuming and difficult

Engineering Contradiction:
Improveease of datapath configurationVSAvoiddesign time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system performs automatic datapath generation where the computer automatically determines datapath configuration, logic sharing, and hardware resource allocation based on operation behaviors, eliminating the need for manual designer intervention in these complex decisions

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The manual mechanical process of datapath design is replaced with an automated computer-based system that uses algorithms to analyze operation behaviors and generate optimized datapath configurations automatically

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Area of stationary object

If existing datapaths are reused for new operations, then hardware area is reduced, but the designer must reconsider and potentially redesign existing datapath configurations

Engineering Contradiction:
Improvehardware areaVSAvoiddatapath configuration complexity
Core Design Contradiction:
Area of stationary objectVSDevice complexity

Solution Approach 1:

The system identifies hardware resources that can perform multiple functions by analyzing the behavioral requirements of different operations, enabling a single hardware resource to serve multiple operations when appropriate

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

Solution Approach 2:

The system merges multiple operation requirements into unified datapath configurations by automatically identifying common hardware resources and combining their functionality through logical sharing mechanisms

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If manual identification of shareable hardware resources is performed, then resource allocation can be optimized, but the process becomes difficult and time-consuming

Engineering Contradiction:
Improvehardware utilization efficiencyVSAvoidresource identification complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The computer system automatically performs resource shareability analysis by examining operation behaviors and identifying which hardware resources can be shared, eliminating the need for manual resource identification and optimization

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system uses feedback from operation behavior analysis to automatically adjust and optimize resource allocation decisions, continuously improving datapath configuration based on the specific requirements of the operations being implemented

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8156464B2Method and system for automatic generation of processor datapaths
Publication Date: 2012.04.10 TENSILICA INC
  • US8156464B2 patent drawing
  • US8156464B2 patent drawing
  • US8156464B2 patent drawing

AI summary

Systems and method for automatically generating a set of shared processor datapaths from the description of the behavior of one or more ISA operations is presented. The operations may include, for example, the standard operations of a processor necessary to support an application language such as C or C++ on the ISA. Such operations, for example, may represent a configurable processor ISA. The operations may also include one or more extension operations defined by one or more designers. Thus, a description of the behaviors of the various standard and/or extension operations that compose the ISA of an instance of a standard or configurable processor is used to automatically generate a set of shared processor datapaths that implement the behavior of those operations. In addition, certain aspects may take one or more operations as well as one or more input semantics and either re-implement the input semantics automatically, or combine the input semantics with each other or with one or more other operations to automatically generate a new set of shared processor datapaths.