In some embodiments, a computer-aided design system comprises a functional
regularity extraction component, a structural regularity extraction
component and a floorplanning component. The structural regularity
extraction component provides a method to extract regularity for circuits
(and in particular datapath circuits) based on the structural
characteristics of a logic design. Some embodiments of the structural
regularity extraction component automatically generate a set of vectors
for the logic design. A vector is a group of template instances that are
identical in function and in structure. The vectors generated by the
structural regularity extraction component are used by a floorplanning
component. The floorplanning component provides a method of generating a
circuit layout from the set of vectors. In some embodiments, each vectors
corresponds to a row in the circuit layout.