Reconfigurable Array Dynamic Mode Switching for Loop Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Reconfigurable architectures face challenges in efficiently executing loops due to the inflexibility of hardware processing and the slower speed of software processing, necessitating a method to dynamically select between Very Long Instruction Word (VLIW) and Coarse-Grained Array (CGA) modes based on loop characteristics.

Innovation Solution

An apparatus and method that acquires performance information to estimate execution times in both VLIW and CGA modes, generates corresponding codes, and determines the optimal execution mode by comparing the number of iterations or execution time estimates with a threshold intersection, allowing for dynamic mode switching to optimize loop execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If hardware processing is used in reconfigurable architectures, then processing speed is improved, but flexibility and adaptability deteriorate

Engineering Contradiction:
Improveprocessing speedVSAvoidflexibility
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The reconfigurable architecture dynamically switches between VLIW mode and CGA mode based on loop characteristics. The system can reconfigure processing units and interconnect structures at runtime, allowing it to adapt its hardware configuration to match the specific requirements of different loop iterations, thus maintaining both high speed and flexibility

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes operational parameters by switching between two distinct execution modes: VLIW mode for loops with fewer iterations and CGA mode for loops with more iterations. This parameter change allows the architecture to optimize processing speed while maintaining adaptability to different computational workloads

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If software processing is used to provide flexibility, then adaptability is improved, but processing speed deteriorates

Engineering Contradiction:
ImproveflexibilityVSAvoidprocessing speed
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

Rather than using slow software processing for all tasks, the system dynamically configures hardware structures to match the computational requirements. The reconfigurable interconnect and processing units are adjusted at runtime to provide software-like flexibility while maintaining hardware-level processing speed

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The reconfigurable architecture serves multiple functions by being able to operate in both VLIW and CGA modes. The same hardware platform can handle different types of computational workloads efficiently, providing universal adaptability without sacrificing processing speed for any specific task type

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

3Productivity

If the reconfigurable architecture uses both VLIW and CGA modes, then loop execution efficiency is improved, but system complexity increases

Engineering Contradiction:
Improveloop execution efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments loop execution into two distinct operational modes with clear boundaries. A mode determination unit analyzes loop characteristics and selects the appropriate execution mode, creating a segmented approach that improves efficiency while managing complexity through clear separation of execution paths

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The mode determination unit performs preliminary analysis of loop characteristics before execution begins. By determining the appropriate mode (VLIW or CGA) in advance based on iteration count and other parameters, the system avoids runtime complexity while maximizing loop execution efficiency

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8850170B2Apparatus and method for dynamically determining execution mode of reconfigurable array
Publication Date: 2014.09.30 SAMSUNG ELECTRONICS CO LTD
  • US8850170B2 patent drawing
  • US8850170B2 patent drawing
  • US8850170B2 patent drawing

AI summary

An apparatus and method for dynamically determining the execution mode of a reconfigurable array are provided. Performance information of a loop may be obtained before and/or during the execution of the loop. The performance information may be used to determine whether to operate the apparatus in a very long instruction word (VLIW) mode or in a coarse grained array (CGA) mode.