1. A computer system comprising: one or more processors; one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising instructions to execute a method comprising: receiving a logic structure for a circuit; retrieving a logic template, the logic template comprising a wiring formula that defines an interconnection pattern for interconnecting cell stages; the logic template further comprising a topology formula that is datawidth dependent and defines a cell type and a cell quantity for a plurality of stages; determining whether the logic structure for the circuit matches the logic template; and routing the circuit using a routing recipe corresponding to the logic template in response to determining that the logic structure matches the logic template; wherein the routing recipe is dependent on a datawidth of the circuit and at least one of circuit speed, circuit power consumption, and circuit density; and wherein the routing recipe comprises one or more of a routing priority, a routing weight, a scenic ratio, a wirecode assignment, and a layer assignment.