Imperial College London
To implement complex designs quickly, designers increasingly turn to high-level design descriptions, which ease design capture and design space exploration, and allow rapid prototyping and fast time to market. This paper describes a scripting engine based on the python language and the ROSE compiler framework. The authors' scripting engine supports hardware design involving both syntax-directed transformations such as loop coalescing, and goal-directed transformations such as geometric programming. They show how customizing the composition and parameterization of design transformations can lead to designs with different trade-offs in performance and resource usage.