| Until this point, with a few exceptions that provided a limited amount of integration, behavioral synthesis and physical design have been two completely disconnected processes that had slow and generally meaningless conversations with one another. This lead to a highly iterative process that produced low quality results and was only usable on small design problems. This work brings the behavioral and physical domains together in a single box by placing behavioral synthesis into the inner loop of a physical design estimator. This tight integration allows physical design to drive the behavioral optimization process in a meaningful way and increases the capacity of behavioral synthesis algorithms.; This is accomplished by manipulating placement algorithms to allow them to provide meaningful physical information about incomplete behavioral designs that can then be used to intelligently drive the optimization process. The legalization phase of quadratic placement is used to perform clustering and allocation and then a slicing tree implicitly performs library binding and scheduling while it is determining the optimal orientations for the functional unit shapes in the placement. Throughout the design process, accurate area, delay and individual component location estimates ensure that behavioral optimizations are physically meaningful and that the final RTL will perform as expected after physical design. To bring about these major accomplishments, some minor contributions were required in the areas of detailed library analysis, bounded area and timing analysis, approximate bit level timing, and controller estimation.; The development of those techniques allow us to achieve a superior quality of results. Over a design space of almost 700 points, Blacksmith has proven itself to be superior to a commercial behavioral synthesis tool, creating designs that are an average 9% smaller and 10% faster. Through the use of quadratic placement to perform clustering and to drive allocation, we were able to synthesize designs that were almost an order of magnitude larger than what the commercial tool could handle. These results, and the discovery of some fundamental errors in the workings of behavioral synthesis optimizations indicate that this work can be used to relieve some of the functionality pressures being exerted on the design flow. The experiments also show that the behavioral level estimates of the physical nature of the design are highly accurate, which helps to relieve the physical pressures pushing up on the design flow. On average, Blacksmith predicted area to within 6% and delay to within 8% of the post-layout value, even when the interconnect delays consisted of up to half of the total cycle time. Blacksmith goes further than just the overall characteristics, and is able to predict the locations of individual components to within 22% of their actual locations in terms of center of gravity and sees 17% coverage of behavioral components by their physical counterparts. And this helps to relieve some of the physical pressures on the design flow. |