Skip to main content

Hardware APIs: A Software-Centric Approach for Automated Derivation of MPSoC Hardware Structures Based on Static Code Analysis

  • Conference paper
  • 1557 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 8350))

Abstract

Multiprocessor systems on a chip (MPSoCs) are a popular class of course-grained parallel computer architectures, which are very useful, because they support re-use of legacy software components and application-specific tailoring of hardware structures at the same time. Furthermore, model-driven design frameworks for MPSoCs such as Xilinx’ EDK or our own LavA-framework facilitate very fast system development. However, in this paper we argue that these design frameworks are not ideal from the development process perspective. Instead, we propose a software-centric approach that is based on the hardware API concept. The API is a representation of hardware components on the software level, which is generated from a hardware meta-model. It allows us to automatically derive a hardware structure based on access patterns in software, revealed by a static code analysis. This trick reduces the number of hardware details the developer needs to deal with and avoids configuration inconsistencies between the hardware and software levels by design.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Arpinen, T., Kukkala, P., Salminen, E., Hännikäinen, M., Hämäläinen, T.D.: Configurable multiprocessor platform with RTOS for distributed execution of UML 2.0 designed applications. In: Proceedings of the Conference on Design, Automation and Test in Europe (DATE 2006), Washington, D.C., USA (2006)

    Google Scholar 

  2. Carara, E., de Oliveira, R., Calazans, N.L.V., Moraes, F.: Hemps - a framework for noc-based mpsoc generation. In: IEEE International Symposium on Circuits and Systems (ISCAS 2009), pp. 1345–1348 (2009)

    Google Scholar 

  3. Honda, S., Wakabayashi, T., Tomiyama, H., Takada, H.: Rtos-centric hardware/software cosimulator for embedded system design. In: Int. Conf. on Hardware/Software Codesign and System Synthesis (CODES+ISSS 2004), pp. 158–163 (2004)

    Google Scholar 

  4. Kahn, G.: The semantics of a simple language for parallel programming. In: Rosenfeld, J.L. (ed.) Information Processing, Stockholm, Sweden, pp. 471–475. North Holland, Amsterdam (1974)

    Google Scholar 

  5. Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S.: Feature-oriented domain analysis (FODA) feasibility study. Technical report, Carnegie Mellon University, Software Engineering Institute, Pittsburgh, PA (November 1990)

    Google Scholar 

  6. Kangas, T., Kukkala, P., Orsila, H., Salminen, E., Hännikäinen, M., Hämäläinen, T.D., Riihimäki, J., Kuusilinna, K.: Uml-based multiprocessor soc design framework. ACM Trans. Embed. Comput. Syst. 5(2), 281–320 (2006)

    Article  Google Scholar 

  7. Kumar, S., Aylor, J., Johnson, B., Wulf, W.: Object-oriented techniques in hardware design. Computer 27(6), 64–70 (1994)

    Article  Google Scholar 

  8. Lukovic, S., Fiorin, L.: An automated design flow for NoC-based MPSoCs on FPGA. In: 19th IEEE/IFIP Intl. Symposium on Rapid System Prototyping (RSP 2008), pp. 58–64 (June 2008)

    Google Scholar 

  9. Lyonnard, D., Yoo, S., Baghdadi, A., Jerraya, A.: Automatic generation of application-specific architectures for heterogeneous multiprocessor system-on-chip. In: Design Automation Conference (DAC 2001), pp. 518–523 (2001)

    Google Scholar 

  10. Meier, M., Engel, M., Steinkamp, M., Spinczyk, O.: LavA: An open platform for rapid prototyping of MPSoCs. In: 2010 Int. Conf. on Field Programmable Logic and Applications (FPL 2010), Milano, Italy, pp. 452–457. IEEE Computer Society Press (2010)

    Google Scholar 

  11. Roth, R., Ramanathan, D.: A high-level hardware design methodology using c++. In: 4th High Level Design Validation and Test Workshop, pp. 73–80 (1999)

    Google Scholar 

  12. Schirmeier, H., Spinczyk, O.: Tailoring infrastructure software product lines by static application analysis. In: 11th Int. Software Product Line Conference (SPLC 2007), pp. 255–260. IEEE Computer Society Press (2007)

    Google Scholar 

  13. Schirmeier, H., Spinczyk, O.: Challenges in software product line composition. In: 42nd Hawaii Int. Conf. on System Sciences (HICSS 2009), pp. 1–7. IEEE Computer Society Press, Waikoloa (January 2009)

    Google Scholar 

  14. Tanenbaum, A.S.: Structured Computer Organization, 5th edn. Prentice-Hall, Inc., Upper Saddle River (2005)

    Google Scholar 

  15. Thiele, L., Bacivarov, I., Haid, W., Huang, K.: Mapping applications to tiled multiprocessor embedded systems. In: 7th Int. Conf. on Application of Concurrency to System Design (ACSD 2007), pp. 29–40 (2007)

    Google Scholar 

  16. Thompson, M., Nikolov, H., Stefanov, T., Pimentel, A.D., Erbas, C., Polstra, S., Deprettere, E.F.: A framework for rapid system-level exploration, synthesis, and programming of multimedia mp-socs. In: 5th Int. Conf. on Hardware/software Codesign and System Synthesis (CODES+ISSS 2007), pp. 9–14. ACM (2007)

    Google Scholar 

  17. Urban, M., Lohmann, D., Spinczyk, O.: Puma: An aspect-oriented code analysis and manipulation framework for C and C++. In: Katz, S. (ed.) Transactions on AOSD VIII. LNCS, vol. 6580, pp. 144–165. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  18. Wallentowitz, S., Lankes, A., Zaib, A., Wild, T., Herkersdorf, A.: A framework for open tiled manycore system-on-chip. In: 22nd Int. Conf. on Field Programmable Logic and Applications (FPL 2012), pp. 535–538 (2012)

    Google Scholar 

  19. Xiong, Z., Zhang, M., Li, S., Liu, S., Chao, Y.: Virtual embedded operating system for hardware/software co-design. In: 6th Int. Conf. on ASIC. ASICON, vol. 2, pp. 939–943 (2005)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

Meier, M., Breddemann, M., Spinczyk, O. (2014). Hardware APIs: A Software-Centric Approach for Automated Derivation of MPSoC Hardware Structures Based on Static Code Analysis. In: Maehle, E., Römer, K., Karl, W., Tovar, E. (eds) Architecture of Computing Systems – ARCS 2014. ARCS 2014. Lecture Notes in Computer Science, vol 8350. Springer, Cham. https://doi.org/10.1007/978-3-319-04891-8_10

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-04891-8_10

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-04890-1

  • Online ISBN: 978-3-319-04891-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics