Patent ID: 7725868

Claim:
A system for routing a signal within a programmable device, the system comprising: a processing unit having access to one or more storage devices; at least a portion of the one or more storage devices having topology data and routing resource data associated with the programmable device; and at least another portion of the one or more storage devices having a program product configured to: form routing resources of the routing resource data into groups where, for each of the groups, the routing resources are of a same type based at least in part on the topology data; form a global routing graph by relating pairs of groups by an association of at least one routing resource in one group of a pair of groups capable of being electrically connected to at least one other routing resource in another group of the pair of groups; form a detailed routing graph by relating individual ones of the routing resources; and reduce a search space within the detailed routing graph using the global routing graph to route a signal from a source routing resource to a destination routing resource, wherein the programmable device is divided into topology units, and wherein the routing resources of each of the groups traverse a same number of topology units, have a same orientation, and have a same source and destination within the programmable device.