Minimizing the interconnection cost of electronically linked objects
First Claim
1. A method for operating a programmable computing apparatus to minimize the interconnection cost between ports of a plurality of models forming a logic design to be placed on a supporting structure having a plurality of placement slots;
- the method comprising the steps of;
a. bisecting an initial assignment of models to the plurality of placements slots on the supporting structure, to obtain a first and a second partition;
b. computing a partial gain for each of said models based upon the electrical properties of said models and the critical and noncritical delays associated with interconnections;
c. ordering said partial gains for the models in the first partition in a first data structure and the models in the second partition in a second data structure;
d. swapping a pair of said placement slots, one from each of the first and second data structures, to obtain a total maximum gain;
e. storing the swapped pair and a cumulative gain for the logic design in a third data structure and removing the swapped pair from their respective first and second data structures;
f. repeating steps (b)-(e) for a predetermined number of the placement slots; and
g. replaying the swaps stored in the third data structure to restore the logic design solution to its point of maximum cumulative gain.
3 Assignments
0 Petitions
Accused Products
Abstract
The interconnection costs of electronically linked objects is minimized by the successive partitioning of the initial logic design. The partitioning is based upon the electrical properties of the drivers and loads of the linked objects forming the design. Further, time critical connections are weighted so as to further minimize interconnection cost. A further method refines the result of the successive partitioning by calculating each linked object'"'"'s contribution to the overall delay of the design. Both the design of device function and timing and the physical realization of the electronically linked objects are solved jointly to make use of the information available from the logical and physical designs.
106 Citations
16 Claims
-
1. A method for operating a programmable computing apparatus to minimize the interconnection cost between ports of a plurality of models forming a logic design to be placed on a supporting structure having a plurality of placement slots;
- the method comprising the steps of;
a. bisecting an initial assignment of models to the plurality of placements slots on the supporting structure, to obtain a first and a second partition; b. computing a partial gain for each of said models based upon the electrical properties of said models and the critical and noncritical delays associated with interconnections; c. ordering said partial gains for the models in the first partition in a first data structure and the models in the second partition in a second data structure; d. swapping a pair of said placement slots, one from each of the first and second data structures, to obtain a total maximum gain; e. storing the swapped pair and a cumulative gain for the logic design in a third data structure and removing the swapped pair from their respective first and second data structures; f. repeating steps (b)-(e) for a predetermined number of the placement slots; and g. replaying the swaps stored in the third data structure to restore the logic design solution to its point of maximum cumulative gain. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
- the method comprising the steps of;
-
14. A method for operating a programmable computing apparatus to minimize interconnection cost among models in a partition, the method comprising the steps of:
-
a. locating a single port in a signal in said partition; b. determining the two nearest ports in said signal and calculating a signal delay for each connection between said single port and said two nearest ports; c. calculating the single port'"'"'s delay contribution as the sum of the two lesser signal delays minus the greater signal delay obtained from step (b); d. repeating steps (b) and (c) for a randomly different initial location of said single port; and e. placing said single port in the placement slot wherein said single port'"'"'s contribution to delay is a minimum. - View Dependent Claims (15, 16)
-
Specification