Abstract
Application-Specific Instruction Set Processors (ASIPs) provide the adequate performance/efficiency tradeoff for their particular application domain. Nevertheless, their design methodologies have stagnated during the past decade and are still based on a series of manual and time-consuming iterative steps. Furthermore, there exists a productivity gap between the point where an application is given as the target for processor customization and the time a customized architecture is available. Therefore, new tools are required that reduce the number of design iterations and bridge the aforementioned productivity gap. This can be achieved by (1) profiling technologies that, by adapting to the designer’s needs, help to gain insight into application specifications, and (2) prearchitectural design technologies that give early yet accurate feedback on the impact of algorithmic/architectural design decisions. The first requirement is addressed in this article by proposing the multigrained profiling approach, which identifies the profiling needs at each step of ASIP design and lets the designer tailor the level of detail for application inspection. CoEx, a practical implementation of the approach, is also introduced. The second requirement is addressed by creating a prearchitectural estimation engine. This engine couples CoEx reports for an application with an abstract processor model and generates an estimate of the achievable performance. Both CoEx and the performance estimation engine are respectively evaluated for instrumentation-induced execution overhead and accuracy. Finally, the development of an ASIP architecture for an augmented reality computer vision application is presented. The ASIP achieves a gain of six times compared to the original application performance, after being developed in only 2 days.
- Christian Bachmann, Andreas Genser, Jos Hulzink, Mladen Berekovic, and Christian Steger. 2009. A low-power ASIP for IEEE 802.15.4a ultra-wideband impulse radio baseband processing. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE’09). European Design and Automation Association, Belgium, 1614--1619. Google ScholarDigital Library
- Jeronimo Castrillon-Mazo. 2013. Programming Heterogeneous MPSoCs: Tool Flows to Close the Software Productivity Gap. Ph.D. Dissertation. Faculty of Electrical Engineering and Information Technology, RWTH Aachen University.Google Scholar
- Clang. 2007. Clang: A C Language Family Frontend for LLVM. Retrieved September 27, 2013, from http://clang.llvm.org.Google Scholar
- EEMBC. 2013. The Embedded Microprocessor Benchmark Consortium. Retrieved from http://www.eembc.org/.Google Scholar
- Free Software Foundation Inc. 2013. Gcov - A Test Coverage Program. Retrieved September 27, 2013, from http://gcc.gnu.org/onlinedocs/gcc/Gcov.html.Google Scholar
- Carlo Galuzzi and Koen Bertels. 2011. The instruction-set extension problem: A survey. ACM Trans. Reconfigurable Technol. Syst. 4, 2, Article 18 (May 2011), 28 pages. DOI:http://dx.doi.org/10.1145/1968502.1968509 Google ScholarDigital Library
- Lei Gao, Jia Huang, Jianjiang Ceng, Rainer Leupers, Gerd Ascheid, and Heinrich Meyr. 2009. TotalProf: A fast and accurate retargetable source code profiler. In Proceedings of the 7th IEEE/ACM International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS’09). 305--314. DOI:http://dx.doi.org/10.1145/1629435.1629477 Google ScholarDigital Library
- Susan L. Graham, Peter B. Kessler, and Marshall K. McKusick. 2004. Gprof: A call graph execution profiler. SIGPLAN Not. 39, 4 (April 2004), 49--57. DOI:http://dx.doi.org/10.1145/989393.989401 Google ScholarDigital Library
- Lifeng He, Yuyan Chao, Kenji Suzuki, and Kesheng Wu. 2009. Fast connected-component labeling. Pattern Recognit. 42, 9 (2009), 1977--1987. DOI:http://dx.doi.org/10.1016/j.patcog.2008.10.013 Google ScholarDigital Library
- Yonghyun Hwang, Samar Abdi, and Daniel Gajski. 2008. Cycle-approximate retargetable performance estimation at the transaction level. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE’08). 3--8. DOI:http://dx.doi.org/10.1145/1403375.1403380 Google ScholarDigital Library
- Paolo Ienne and Rainer Leupers. 2006. Customizable Embedded Processors: Design Technologies and Applications. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA. Google ScholarDigital Library
- Infi. 2010. Marker Detection for Augmented Reality Applications. (2010). Retrieved September 27, 2013, from http://www.infi.nl/blog/view/id/56/Marker_Detection_for_Augmented_Reality_Applications.Google Scholar
- Lech Jówiak, Nadia Nedjah, and Miguel Figueroa. 2010. Modern development methods and tools for embedded reconfigurable systems: A survey. Integr. VLSI J. 43, 1 (Jan. 2010), 1--33. DOI:http://dx.doi.org/10.1016/j.vlsi.2009.06.002 Google ScholarDigital Library
- Kingshuk Karuri and Rainer Leupers. 2011. Application Analysis Tools for ASIP Design: Application Profiling and Instruction-set Customization. Springer. Google ScholarDigital Library
- Rainer Kolisch and Snke Hartmann. 1999. Heuristic algorithms for the resource-constrained project scheduling problem: Classification and computational analysis. In Project Scheduling, Jan Weglarz (Ed.). International Series in Operations Research & Management Science, Vol. 14. Springer, 147--178.Google Scholar
- Jari Kreku, Kari Tiensyrj, Andreas Wieferink, and Bart Vanthournout. 2012. ASIP exploration and design. In Scalable Multi-core Architectures, Dimitrios Soudris and Axel Jantsch (Eds.). Springer, New York, 81--103.Google Scholar
- Chris Lattner and Vikram Adve. 2004. LLVM: A compilation framework for lifelong program analysis & transformation. In Proceedings of the International Symposium on Code Generation and Optimization: Feedback-Directed and Runtime Optimization (CGO’04). IEEE Computer Society, Washington, DC, USA, 75--88. Google ScholarDigital Library
- Nicholas Nethercote and Julian Seward. 2007. Valgrind: A framework for heavyweight dynamic binary instrumentation. SIGPLAN Not. 42, 6 (June 2007), 89--100. DOI:http://dx.doi.org/10.1145/1273442.1250746 Google ScholarDigital Library
- Timo Stripf, Oliver Oey, Thomas Bruckschlögl, Ralf König, Michael Hübner, Jürgen Becker, Gerard K. Rauwerda, Kim Sunesen, Nikolaos Kavvadias, Grigoris Dimitroulakos, Kostas Masselos, Dimitrios Kritharidis, Nikolaos Mitas, George Goulas, Panayiotis Alefragis, Nikolaos S. Voros, Steven Derrien, Daniel Menard, Olivier Sentieys, Diana Göhringer, and Thomas Perschke. 2012. A flexible approach for compiling scilab to reconfigurable multi-core embedded systems. In Proceedings of the 2012 7th International Workshop on Reconfigurable Communication-Centric Systems-on-Chip (ReCoSoC’12). 1--8.Google ScholarCross Ref
- Fei Sun, Srivaths Ravi, Anand Raghunathan, and Niraj K. Jha. 2002. Synthesis of custom processors based on extensible platforms. In Proceedings of the 2002 IEEE/ACM International Conference on Computer-Aided Design (ICCAD’02). ACM, New York, NY, 641--648. DOI:http://dx.doi.org/10.1145/774572.774667 Google ScholarDigital Library
- Synopsys Inc. 2013. Synopsys Processor Designer. Retrieved September 27, 2013, from http://www.synopsys.com/Systems/BlockDesign/ProcessorDev/.Google Scholar
- Vojin Živojnović, Juan M. Velarde, Christian Schläger, and Heinrich Meyr. 1994. DSPSTONE: A DSP-oriented benchmarking methodology. In Proceedings of the International Conference on Signal Processing and Technology (ICSPAT’94). Dallas, TX, USA. Miller Freeman, 715--720.Google Scholar
Index Terms
- CoEx: A Novel Profiling-Based Algorithm/Architecture Co-Exploration for ASIP Design
Recommendations
Performance estimation in a simultaneous multithreading processor
MASCOTS '96: Proceedings of the 4th International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunications SystemsWe present a model to estimate the performance of dynamically interleaving instruction streams in super-scalar architectures. Instructions executed per cycle (IPC) are calculated from simple descriptions of the workload and hardware. We compare ...
Code Size Reduction in Heterogeneous-Connectivity-Based DSPs Using Instruction Set Extensions
Existing trend of processors shows a progress toward customizable and reconfigurable architectures. In this paper, we study the benefit of combining the architectural design of a VLIW DSP and the concepts of modern customizable processors like ASIPs (...
Utilizing custom registers in application-specific instruction set processors for register spills elimination
GLSVLSI '07: Proceedings of the 17th ACM Great Lakes symposium on VLSIApplication-specific instruction set processor (ASIP) has become an important design choice for embedded systems. It can achieve both high flexibility offered by the base processor core and high performance and energy efficiency offered by the dedicated ...
Comments