Design Space Exploration - The HAC Language
Description: The HAC Language

Next: Asynchrony, Previous: Design Automation, Up: Goals

### Design Space Exploration

The ultimate ambition for this project is to be able to automatically explore the design space of implementations of significantly complex functional specifications.

Program transformations.

Design choices fall into two major categories: 1) Quantitative (How many? How wide? How large?) and 2) Qualitative (What kind?).

Quantitative parameters are simply traits that can be described quantitatively: How many buffers? How wide a datapath?

Examples of qualitative parameters: What kind of buffer? What protocol or reshuffling? Which kind of adder? Whether or not to use a speculative path? Whether or not to introduce resource arbitration? Parallel or serial?

Objectives. Area, energy, performance, efficiency. How about aesthetics and simplicity (design time)?