1. A method of generating a library of blocks to be floorplanned, the steps comprising: assembling, by a computing device, a plurality of blocks comprising 2D implementations and 3D implementations; providing a first additional tier for at least one of the plurality of blocks and generating a first re-implementation of the at least one of the plurality of blocks that includes first additional tier; evaluating at least one performance objective of the first re-implementation to determine whether the at least one performance objective has improved; and adding the first re-implementation to the library of blocks to be floorplanned if a result of the evaluating step is that said at least one performance objective has improved, wherein the library of blocks to be floorplanned comprises a library of 3D monolithic blocks, wherein at least one 3D monolithic block includes one or more electronic components built sequentially in two or more layers on a single semiconductor wafer.