Routing graph 600 may be represented as GD(V,E), where V is a set of nodes 602 and pins 603, respectively, representing the routing resources 504 and pins 506, and E is a set of edges 604 representing programmable routing switches 502 that connect the routing resources 504.