System and method for reducing reconfiguration power usage
AssigneeTabula, Inc.
InventorsRandy R. Huang, Martin Voogel, Jingcao Hu, Steven Teig
Life of this patent
Estimating the term…
Abstract
A system and method for reducing power consumption in a reconfigurable integrated circuit. Some embodiments provide placement and routing programs that reduce the number of bits to be reconfigured. Some embodiments provide placement and routing programs that increase the number of groups of circuits that do not need reconfiguration at some times. Some embodiments include circuits that selectively block reconfiguration.
Claims20
A non-transitory machine readable medium storing a program which when executed by at least one processing unit generates a layout for an integrated circuit (IC) with reconfigurable circuits the program comprising sets of instructions for:
- receiving a plurality of sets of configuration values for configuring the reconfigurable circuits in a plurality of reconfiguration cycles;
- to reduce power consumption of the IC, modifying the sets of configuration values by preferentially re-assigns at least a subset of the sets of configuration values so that identical or similar sets of configuration values for each particular reconfigurable circuit in at least a subset of the reconfigurable circuits are assigned to adjacent reconfiguration cycles of the particular reconfigurable circuit;
- and
- storing the modified sets of configuration values as the layout for configuring the IC.
A non-transitory machine readable medium that stores a program which when executed by at least one processor generates a layout for implementing a user design on an integrated circuit (IC) that comprises a plurality of reconfigurable circuits, the program comprises sets of instructions for:
- assigning a first set of configuration values to a reconfigurable circuit in a first reconfiguration cycle;
- computing a first cost for assigning a second set of configuration values, to the reconfigurable circuit in a second reconfiguration cycle, wherein the second set of configuration values is different from the first set of configuration values, wherein the first cost is computed based on how many values of the second set of configuration values are different from corresponding values of the first set of configuration values;
- computing a second cost for assigning a third set of configuration values to the reconfigurable circuit in the second reconfiguration cycle, wherein the third set of configuration values is different from the first set of configuration values and the second set of configuration values, wherein the second cost is computed based on how many values of the third set of configuration values are different from corresponding values of the first set of configuration values;
- selecting a set of configuration values to assign to the reconfigurable circuit in the second reconfiguration cycle based at least partly on the computed first and second costs;
- and
- assigning the selected set of configuration values to the reconfigurable circuit in the second reconfiguration cycle.
A non-transitory machine readable medium storing a program which when executed by at least one processing unit generates a layout for implementing a user design on an integrated circuit (IC) that comprises a plurality of reconfigurable circuits, the program comprising sets of instructions for:
- assigning a first set of configuration values to a reconfigurable circuit in a first reconfiguration cycle;
- for each of a plurality of other sets of configuration values that differ from the first set of configuration values, computing a cost for assigning that other set of configuration values to the reconfigurable circuit in a second reconfiguration cycle, wherein the cost for assigning each of the other sets of configuration values depends on an amount of difference the other set of configuration values has from the first set of configuration values;
- from the plurality of other sets of configuration values, selecting a second set of configuration values to assign to the reconfigurable circuit in the second reconfiguration cycle based at least partly on the computed costs of the selected second set of configuration values;
- and
- assigning the second set of configuration values to the reconfigurable circuit in the second reconfiguration cycle.
Dependencies are inferred from the claim text.