Customized processors offer the system developer rapidly designed
logic specifically constructed to meet the performance and area demands of a
given application. Recently, there have been several major projects that
automate the process of transforming an optimal processor specification into an
efficient layout for manufacturing. Missing from these efforts, however, is an
automated approach to constructing the optimal specifications in the first
place. In this paper we introduce an efficient, fully automated methodology for
guiding the design and optimization of a custom processor. Our approach is to
decompose the overall problem of choosing an optimal architecture into a set of
sub-problems that are, to first order, independent. For each sub-problem, we
create a model that relates performance to area. From this, we build a
constraint system that can be solved using linear-integer programming
techniques, and arrive at an optimal parameter selection for all architectural
components. Using our approach, it takes only a few minutes to explore the
entire architecture design space of a custom processor. We show that the
expected performance using our model correlates strongly to detailed pipeline
simulations, and present results showing design tradeoffs for several different
benchmarks.
Pre-2018 CSE ID: CS2001-0688