1. A method to design a system, the method comprising: receiving a first design of a system having a plurality of first instances of a logical block to perform logical operations, wherein the first instances have internal states; and automatically transforming the system to generate a second design having a time-shared second instance of the logical block.