Unified Hardware Accelerator Language for Processor Integration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for integrating hardware accelerators with processors are limited by the need for separate design and validation of hardware accelerators, leading to increased time and complexity, and are restricted to simple instructions that require single-step execution, resulting in processor inefficiency due to micromanagement and communication delays.
Innovation Solution
The approach integrates hardware accelerators with extensible processors using a unified language for describing instructions and hardware execution, enabling state machine management and external register file interactions to facilitate multi-step instruction execution and improve processor utilization through smarter scheduling and latency handling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If hardware accelerator is integrated with processor using separate design methods, then hardware accelerator functionality is achieved, but design validation time and complexity increase
Solution Approach 1:
The patent combines hardware accelerator design and processor design into a unified language framework. The accelerator description language (ADL) allows both the processor and hardware accelerator to be described using the same language, enabling integrated simulation and validation. This merging eliminates the need for separate design methodologies and reduces validation time by allowing concurrent development and testing of both components together.
2Ease of manufacture
If hardware accelerator executes simple single-step instructions, then implementation is straightforward, but processor efficiency decreases due to micromanagement
Solution Approach 1:
The patent introduces dynamic instruction execution capability where hardware accelerators can execute multi-step instructions autonomously. The unified language framework enables the description of complex multi-cycle operations that the hardware accelerator can manage independently through built-in state machine logic. This dynamic capability allows the processor to issue high-level instructions without micromanaging each sub-step, thereby improving processor efficiency while maintaining implementation feasibility through systematic design methods.
3Reliability
If processor controls each sub-step of hardware accelerator execution, then precise control is achieved, but communication delays increase
Solution Approach 1:
The patent introduces an intermediary control mechanism where the hardware accelerator includes an internal state machine that autonomously manages sub-step execution. The processor communicates high-level instructions to the accelerator, and the accelerator's internal controller handles the detailed sub-step coordination. This intermediary layer reduces communication overhead between processor and accelerator, minimizing communication delays while maintaining precise control through the accelerator's internal state management system.
Data Source
AI summary
An approach includes the use of a description of instructions for invoking hardware accelerator and for a hardware accelerator to execute those instructions. In some embodiments, the instructions for invoking hardware accelerator and for a hardware accelerator to execute those instructions are described using a single language. These descriptions are then compiled into other languages for use in tool chains for generating simulators (a hardware and instruction set simulator and a hardware accelerator simulator). In some embodiments, the approach illustrated herein can be combined with state machine functionality to manage the execution of instructions that require multiple states. In some embodiments, the approach illustrated herein can be combined with an external register file for transferring information between a processor and a hardware accelerator.


