Method, system and program for developing and scheduling adaptive integrated circuity and corresponding control or configuration information
First Claim
1. A computer implemented method for development of configuration information for an adaptive computing integrated circuit that includes a plurality of heterogeneous computing elements, the plurality of heterogeneous computing elements adapted to being coupled to each other by a reconfigurable interconnection network, the configuration information configuring or reconfiguring the interconnection network to interconnect one or more of the plurality of the heterogeneous computing elements to perform at least a part of an algorithm, the method comprising:
- (a) selecting the algorithm for performance by the adaptive computing integrated circuit;
(b) determining, using a computing system, a plurality of adaptive computing descriptive objects for functions of the selected algorithm;
(c) scheduling, using the computing system, the selected algorithm with the plurality of adaptive computing descriptive objects to produce a scheduled algorithm; and
(d) from the scheduled algorithm and the plurality of adaptive computing descriptive objects, generating, using the computing system, the configuration information for the performance of the algorithm by the adaptive computing integrated circuit, the configuration information used to configure or reconfigure the interconnection network to interconnect the one or more of the plurality of the heterogeneous computing elements to perform the at least part of the algorithm, each of the one or more of the plurality of the heterogeneous computing elements performing a corresponding computational task of the at least part of the algorithm.
4 Assignments
0 Petitions
Accused Products
Abstract
A method, system and program are provided for development of an adaptive computing integrated circuit and corresponding configuration information, in which the configuration information provides an operating mode to the adaptive computing integrated circuit. The exemplary system includes a scheduler, a memory, and a compiler. The scheduler is capable of scheduling a selected algorithm with a plurality of adaptive computing descriptive objects to produce a scheduled algorithm and a selected adaptive computing circuit version. The memory is utilized to store the plurality of adaptive computing descriptive objects and a plurality of adaptive computing circuit versions generated during the scheduling process. The selected adaptive computing circuit version is converted into a hardware description language, for fabrication into the adaptive computing integrated circuit. The compiler generates the configuration information, from the scheduled algorithm and the selected adaptive computing circuit version, for the performance of the algorithm by the adaptive computing integrated circuit. In the exemplary embodiments, multiple versions of configuration information may be generated, for different circuit versions, different feature sets, different operating conditions, and different operating modes.
480 Citations
71 Claims
-
1. A computer implemented method for development of configuration information for an adaptive computing integrated circuit that includes a plurality of heterogeneous computing elements, the plurality of heterogeneous computing elements adapted to being coupled to each other by a reconfigurable interconnection network, the configuration information configuring or reconfiguring the interconnection network to interconnect one or more of the plurality of the heterogeneous computing elements to perform at least a part of an algorithm, the method comprising:
-
(a) selecting the algorithm for performance by the adaptive computing integrated circuit; (b) determining, using a computing system, a plurality of adaptive computing descriptive objects for functions of the selected algorithm; (c) scheduling, using the computing system, the selected algorithm with the plurality of adaptive computing descriptive objects to produce a scheduled algorithm; and (d) from the scheduled algorithm and the plurality of adaptive computing descriptive objects, generating, using the computing system, the configuration information for the performance of the algorithm by the adaptive computing integrated circuit, the configuration information used to configure or reconfigure the interconnection network to interconnect the one or more of the plurality of the heterogeneous computing elements to perform the at least part of the algorithm, each of the one or more of the plurality of the heterogeneous computing elements performing a corresponding computational task of the at least part of the algorithm. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computing system for development of configuration information for an adaptive computing integrated circuit having a plurality of heterogeneous computing elements, each of the plurality of heterogeneous computing elements coupled to a reconfigurable interconnection network, the configuration information for configuring or reconfiguring the interconnection network to interconnect one or more of the plurality of the heterogeneous computing elements to perform at least a part of a selected algorithm, the system comprising:
-
a computer with one or more processors; a scheduler implemented in the computer, and adapted to schedule the selected algorithm with a plurality of adaptive computing descriptive objects to produce a scheduled algorithm; a memory coupled to the scheduler, the memory storing the plurality of adaptive computing descriptive objects; and a compiler implemented in the computer, and coupled to the scheduler, the compiler generating the configuration information, from the scheduled algorithm and the plurality of adaptive computing descriptive objects, the configuration information used to configure or reconfigure the interconnection network to interconnect the one or more of the plurality of the heterogeneous computing elements for the performance of the at least part of the algorithm, each of the one or more of the plurality of the heterogeneous computing elements performing a corresponding computational task of the at least part of the algorithm. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
-
-
40. A storage medium storing machine executable software instructions which when executed on a computer develops configuration information for an adaptive computing integrated circuit having a plurality of heterogeneous computing elements, each of the plurality of heterogeneous computing elements adapted to being coupled to each other through a reconfigurable interconnection network, the configuration information for configuring or reconfiguring the interconnection network to interconnect one or more heterogeneous computing elements to perform at least a part of an algorithm, the medium storing instructions for:
-
selecting an algorithm for performance by the adaptive computing integrated circuit; determining a plurality of adaptive computing descriptive objects for functions of the selected algorithm; scheduling the selected algorithm with the plurality of adaptive computing descriptive objects to produce a scheduled algorithm; and generating the configuration information, from the scheduled algorithm and the adaptive computing descriptive objects, for the performance of at least a part of the algorithm by the one or more of the plurality of heterogeneous computing elements. - View Dependent Claims (41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59)
-
-
60. A computer implemented method for development of corresponding configuration information for an adaptive computing integrated circuit having a plurality of heterogeneous computing elements, each of which is adapted to being coupled to each other through a reconfigurable interconnection network, the configuration information configuring or reconfiguring the interconnection network to interconnect one or more of the plurality of the heterogeneous computing elements to perform at least a part of an algorithm, the method comprising
selecting the algorithm for performance by the adaptive computing integrated circuit; -
profiling, using a computing system, the algorithm for performance on the adaptive computing integrated circuit; determining, using the computing system, a plurality of adaptive computing descriptive objects, each adaptive computing descriptive object of the plurality of adaptive computing descriptive objects including a description of a function to be performed by one or more of the heterogeneous computing elements, an input for the function, and an output for the function; scheduling, using the computing system, the algorithm with the plurality of adaptive computing descriptive objects; and from the selected scheduled algorithm generating, using the computing system, the configuration information and compiling the configuration information into an adaptive computing integrated circuit bit file for the performance of a corresponding computational task of the algorithm by one or more of the heterogeneous computing elements of the adaptive computing integrated circuit.
-
-
61. A computer implemented method for developing an adaptive computing integrated circuit to perform at least part of an algorithm, the adaptive computing integrated circuit including a plurality of heterogeneous computing elements being coupled to each other by a reconfigurable interconnection network, the method comprising:
-
determining, using a computing system, a plurality of adaptive computing descriptive objects associated with functions of the algorithm; determining, using the computing system, a plurality of adaptive computing integrated circuit versions having a description of heterogeneous computing elements, each performing a function corresponding with at least one of the plurality of adaptive computing descriptive objects; scheduling, using the computing system, the algorithm with the plurality of adaptive computing descriptive objects to produce a scheduled algorithm; selecting, using the computing system, an adaptive computing integrated circuit version from the plurality of adaptive computing integrated circuit versions using a circuit version selection parameter of a plurality of circuit version selection parameters; and converting, using the computing system, the selected adaptive computing integrated circuit version to the adaptive computing integrated circuit. - View Dependent Claims (62, 63, 64, 65, 66, 67, 68, 69, 70, 71)
-
Specification