Patent ID: 8146039

Claim:
A computer-implemented method comprising: selecting a source component included in a device design layout; identifying a plurality of sink components that depend upon the source component, the plurality of sink components included in the device design layout; computing, by a processor, a first level center of gravity for the plurality of sink components; computing, by the processor, an X distance and a Y distance from the source component to the first level center of gravity, the X distance corresponding to an X-axis of the device design layout and the Y distance corresponding to a Y-axis of the device design layout; determining whether the X distance is greater than the Y distance; in response to determining that the X distance is greater than the Y distance, dividing the plurality of sink components into two first level sets by computing an X-axis line through the first level center of gravity, the X-axis line parallel to the X-axis; in response to determining that the Y distance is greater than the X distance, dividing the plurality of sink components into the two first level sets by computing a Y-axis line through the first level center of gravity, the Y-axis line parallel to the Y-axis; and placing a plurality of buffers in the device design layout based upon locations of a plurality of second level center of gravities of the two first level sets, wherein the placement of the plurality of buffers optimizes one or more critical paths between the source component and one or more of the plurality of sink components.