Base platforms customizable into ICs are designed by identifying a
plurality of macros for placement on the platform, each macro being
defined in part by a plurality of elements that perform respective
functions of the macro. Identical elements in a plurality of macros are
identified, and a common element is placed on the platform for an
identical element of at least two macros. All other elements of the
macros are placed at locations on the platform relative to the common
element as to satisfy macro placement rules for each macro. Identical
elements can be identified by identifying similar elements in a plurality
of macros, and creating a common element generic to the similar elements.
The user designs a metalization layer to select macros and configure
common elements to the selected macros.