Recurrence-Aware Instruction Set Selection for Extensible Embedded Processors

P. Bonzini, L. Pozzi
2008 IEEE Transactions on Very Large Scale Integration (vlsi) Systems  
Automatic generation of a customized instruction set, starting from an input application code, is a complex problem that has received considerable attention in the past few years. Because of its complexity, only simplified versions of the problem have been solved exactly so far. For example, exact algorithms have been proposed for custom instruction identification, but that do not consider recurrence; or methods exist that can indeed handle recurrence, but are limited in how complex an
more » ... on they can identify. However, an exact solution that can handle identification and recurrence simultaneously has been missing. We divide the problem into several parts, and concentrate on covering, that is selecting a set of non-overlapping and possibly recurrent custom instructions to be implemented and used. We then propose a range of novel algorithms, both exact and approximate, to solve the covering problem in conjunction with the recurrence of candidate extensions. We propose an optimal search technique that uses branchand-bound to improve an existing solution, in conjunction with a greedy search to help the algorithm out of any local optima, and achieve a tangible improvement over non-recurrency-aware covering.
doi:10.1109/tvlsi.2008.2001863 fatcat:kyoj7ddzgvet7psnqkqmiiokcq