1. An adaptive computing integrated circuit configurable to perform a plurality of functions, the integrated circuit comprising: a plurality of heterogeneous computational elements; and an interconnection network coupled to the plurality of heterogeneous computational elements, the interconnection network changing interconnections between the plurality of heterogeneous computational elements in response to configuration information; wherein a first group of computational elements of the plurality of heterogeneous computational elements is allocated to form a first version of a functional unit to perform a first function by changing interconnections in the interconnection network between the first group of heterogeneous computational elements; wherein a second group of computational elements of the plurality of heterogeneous computational elements is allocated to form a second version of a functional unit to perform the first function by changing interconnections in the interconnection network between the second group of heterogeneous computational elements; and wherein one or more of the first or second group of heterogeneous computational elements are reallocated to perform a second function by changing the interconnections between the one or more of the first or second group of heterogeneous computational elements.