FISH: Fast instruction synthesis for custom processors


Atasu K., Luk W., Mencer O., ÖZTURAN C., DÜNDAR G.

IEEE Transactions on Very Large Scale Integration (VLSI) Systems, cilt.20, sa.1, ss.52-65, 2012 (SCI-Expanded, Scopus) identifier identifier

  • Yayın Türü: Makale / Tam Makale
  • Cilt numarası: 20 Sayı: 1
  • Basım Tarihi: 2012
  • Doi Numarası: 10.1109/tvlsi.2010.2090543
  • Dergi Adı: IEEE Transactions on Very Large Scale Integration (VLSI) Systems
  • Derginin Tarandığı İndeksler: Science Citation Index Expanded (SCI-EXPANDED), Scopus
  • Sayfa Sayıları: ss.52-65
  • Anahtar Kelimeler: Custom processors, Design automation, Design optimization, Graph theory, Mathematical programming, Subgraph enumeration, System-on-chip (SoC)
  • Boğaziçi Üniversitesi Adresli: Evet

Özet

This paper presents Fast Instruction SyntHesis (FISH), a system that supports automatic generation of custom instruction processors from high-level application descriptions to enable fast design space exploration. FISH is based on novel methods for automatically adapting the instruction set to match an application in a high-level language such as C or C++. FISH identifies custom instruction candidates using two approaches: 1) by enumerating maximal convex subgraphs of application data flow graphs and 2) by integer linear programming (ILP). The experiments, involving ten multimedia and cryptography benchmarks, show that our contributed algorithms are the fastest among the state-of-the-art techniques. In most cases, enumeration takes only milliseconds to execute. The longest enumeration run-time observed is less than six seconds. ILP is usually slower than enumeration, but provides us with a complementary solution technique. Both enumeration and ILP allow the use of multiple different merit functions in the evaluation of data-flow subgraphs. The experiments demonstrate that, using only modest additional hardware resources, up to 30-fold performance improvement can be obtained with respect to a single-issue base processor. © 2006 IEEE.