An apparatus comprising (i) one or more input/output cells, (ii) one or more
hard
macros and (iii) one or more input/output affinity regions. The one or more input/output
affinity regions may be disposed between the one or more input/output cells and
the one or more hard macros. Each of the one or more input/output affinity regions
may be customized as (i) circuitry in a first mode and (ii) routing between the
one or more input/output cells and the one or more hard macros in a second mode.