Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
First Claim
1. An adaptive computing integrated circuit configurable to perform a plurality of functions, comprising:
- a plurality of heterogeneous computational elements; and
an interconnection network coupled to the plurality of heterogeneous computational elements, the interconnection network operative to configure the plurality of heterogeneous computational elements by changing interconnections between the plurality of heterogeneous computational elements;
wherein a first group of heterogeneous computational elements is configurable by changing the interconnections of the interconnection network to form a first functional unit to implement a first function;
wherein a second group of heterogeneous computational elements is configurable by changing interconnections of the interconnection network to form a second functional unit to implement a second function; and
wherein if the second function is not currently used, one or more of the second group of heterogeneous computational elements are reconfigurable by changing the interconnections of the interconnection network to implement the first function.
5 Assignments
0 Petitions
Accused Products
Abstract
The present invention concerns a new category of integrated circuitry and a new methodology for adaptive or reconfigurable computing. The exemplary IC embodiment includes a plurality of heterogeneous computational elements coupled to an interconnection network. The plurality of heterogeneous computational elements include corresponding computational elements having fixed and differing architectures, such as fixed architectures for different functions such as memory, addition, multiplication, complex multiplication, subtraction, configuration, reconfiguration, control, input, output, and field programmability. In response to configuration information, the interconnection network is operative in real-time to configure and reconfigure the plurality of heterogeneous computational elements for a plurality of different functional modes, including linear algorithmic operations, non-linear algorithmic operations, finite state machine operations, memory operations, and bit-level manipulations. The various fixed architectures are selected to comparatively minimize power consumption and increase performance of the adaptive computing integrated circuit, particularly suitable for mobile, hand-held or other battery-powered computing applications. In an exemplary embodiment, some or all of the computational elements are alternately configured to implement two or more functions.
-
Citations
25 Claims
-
1. An adaptive computing integrated circuit configurable to perform a plurality of functions, comprising:
-
a plurality of heterogeneous computational elements; and an interconnection network coupled to the plurality of heterogeneous computational elements, the interconnection network operative to configure the plurality of heterogeneous computational elements by changing interconnections between the plurality of heterogeneous computational elements; wherein a first group of heterogeneous computational elements is configurable by changing the interconnections of the interconnection network to form a first functional unit to implement a first function; wherein a second group of heterogeneous computational elements is configurable by changing interconnections of the interconnection network to form a second functional unit to implement a second function; and wherein if the second function is not currently used, one or more of the second group of heterogeneous computational elements are reconfigurable by changing the interconnections of the interconnection network to implement the first function. - View Dependent Claims (2, 3, 4, 5)
-
-
6. An adaptive computing integrated circuit, comprising:
-
a plurality of reconfigurable matrices, the plurality of reconfigurable matrices including a plurality of heterogeneous computational units, each heterogeneous computational unit having a plurality of fixed computational elements, the plurality of fixed computational elements including a first computational element having a first architecture and a second computational element having a second architecture, the first architecture distinct from the second architecture, the plurality of heterogeneous computational units coupled to an interconnect network and reconfigurable in response to configuration information; and a matrix interconnection network coupled to the plurality of reconfigurable matrices, the matrix interconnection network operative to reconfigure the plurality of reconfigurable matrices in response to the configuration information for a plurality of operating modes;
wherein a first group of heterogeneous computational units is reconfigurable to form a first functional unit to implement a first operating mode by changing interconnections of the matrix interconnection network;wherein a second group of heterogeneous computational units is reconfigurable to form a second functional unit to implement a second operating mode by changing interconnections of the matrix interconnection network; wherein if the second operating mode is not currently used, one or more of the second group of heterogeneous computational units are reconfigurable to implement the first operating mode by changing interconnections of the matrix interconnection network. - View Dependent Claims (7, 8, 9, 10)
-
-
11. An adaptive computing integrated circuit, comprising:
-
a plurality of heterogeneous computational elements, the plurality of heterogeneous computational elements including a first computational element and a second computational element, the first computational element having a first fixed architecture of a plurality of fixed architecture and the second computational element having a second fixed architecture of the plurality of fixed architectures, the first fixed architecture being different than the second fixed architecture, and the plurality of fixed architectures including functions for memory, addition, multiplication, complex multiplication, subtraction, configuration, reconfiguration, control, input, output, and field programmability; and an interconnection network coupled to the plurality of heterogeneous computational elements, the interconnection network operative to configure the plurality of heterogeneous computational elements by changing interconnections of the interconnection network; wherein a first group of heterogeneous computational elements is reconfigurable to form a first functional unit to implement a first function by changing interconnections of the interconnection network between the first group of computational elements; wherein a second group of heterogeneous computational elements is reconfigurable to form a second functional unit to implement a second function by changing interconnections of the interconnection network between the second group of computational elements; and wherein if the second function is not currently used, one or more of the second group of heterogeneous computational elements are reconfigurable by the interconnection network to implement the first function by changing interconnections of the interconnection network. - View Dependent Claims (12, 13, 14, 15)
-
-
16. An adaptive computing integrated circuit, comprising:
-
a plurality of heterogeneous computational elements, the plurality of heterogeneous computational elements including a first computational element and a second computational element, the first computational element having a first fixed architecture and the second computational element having a second fixed architecture, the first fixed architecture being different than the second fixed architecture; and an interconnection network coupled to the plurality of heterogeneous computational elements, the interconnection network operative to configure a first group of heterogeneous computational elements to form a first functional unit for a first functional mode of a plurality of functional modes, by changing interconnections of the interconnection network between the first group of computational elements in response to first configuration information, and the interconnection network further operative to reconfigure a second group of heterogeneous computational elements to form a second functional unit for a second functional mode of the plurality of functional modes, by changing interconnections of the interconnection network between the second group of computational elements in response to second configuration information, the first functional mode being different than the second functional mode, and the plurality of functional modes including linear algorithmic operations, non-linear algorithmic operations, finite state machine operations, memory operations, and bit-level manipulations; wherein if the second functional mode is not currently used, one or more of the second group of heterogeneous computational units are reconfigurable by changing interconnections of the interconnection network to implement the first functional mode. - View Dependent Claims (17, 18, 19, 20)
-
-
21. A method for allocating hardware resources within an adaptive computing integrated circuit, comprising:
-
in response to first configuration information, configuring a first group of heterogeneous computational elements by changing interconnections between the first group of heterogeneous computational elements to form a first functional unit to implement a first function and configuring a second group of heterogeneous computational elements by changing interconnections between the second group of heterogeneous computational elements to form a second functional unit to implement a second function; and in response to second configuration information, reconfiguring one or more of the second group of heterogeneous computational elements by changing interconnections between the one or more computational elements of the second group of heterogeneous computational elements to implement the first function. - View Dependent Claims (22, 23, 24, 25)
-
Specification