1. A method for routing a circuit having an hierarchical interconnect architecture, one or more routing resources, and one or more drivers, wherein each driver having one or more targets, and that a tree having one or more nodes at one or more levels and one or more edges connecting said nodes is used, comprising the steps of: mapping said routing resources to the nodes and edges of the tree; mapping each target to a node of said tree as a target node; mapping each driver to a node of said tree as a driver node; and routing said targets and said drivers, wherein routes are generated by routing from the targets to one or more of the drivers.