The invention relates to layout of circuit components, including
determining the interconnections, buffers, or path nets between circuit
blocks or circuit components and input/output bonding pads. This is
accomplished by a method and program product that optimizes timing
comprising. Wiring layout and buffer insertion is accomplished by setting
all wires in the design to an initial best possible value, inserting
buffers in longest nets of wires of the design, and degrading the
resulting nets. This is accomplished by a wire sizing routine which takes
the nets and degrades them accordingly. This degrading is done through a
combination of one or more of knocking the wires down to lower levels and
reducing their thickness. The amount of degradation is dependent on the
final slack.