Skip to main content

Custom Multi-cache Architectures

  • Chapter
  • First Online:
Separation Logic for High-level Synthesis

Part of the book series: Springer Theses ((Springer Theses))

  • 561 Accesses

Abstract

FPGAs allow the implementor to tailor the interface to off-chip memory and the on-chip/off-chip memory hierarchy according to the requirements of the application. This chapter presents a high-level synthesis design aid that leverages a memory access analysis of the application to automatically synthesise an application-specific high-performance memory hierarchy.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover 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

Institutional subscriptions

Notes

  1. 1.

    We focus on integer or fixed-point systems and ignore non-associativity caused by floating-point representations.

  2. 2.

    We use 32 kbits in a Xilinx 36K-RAM block to store user data.

References

  1. M. Adler, K.E. Fleming, A. Parashar, M. Pellauer, J. Emer, Leap scratchpads: automatic memory and cache management for reconfigurable logic, in Proceedings of the International Symposium on Field Programmable Gate Arrays (FPGA) (2011), pp. 25–28

    Google Scholar 

  2. H.-J. Yang, K. Fleming, M. Adler, J. Emer, LEAP shared memories: automating the construction of FPGA coherent memories, in Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM) (2014), pp. 117–124

    Google Scholar 

  3. K. Fleming, H.-J. Yang, M. Adler, J. Emer, The LEAP FPGA operating system, in Proceedings of the International Symposium on Field Programmable Logic and Applications (FPL) (2014), pp. 1–8

    Google Scholar 

  4. M.C. Rinard, P.C. Diniz, Commutativity analysis: a new analysis technique for parallelizing compilers. ACM Trans. Program. Lang. Syst. 19(6), 942–991 (1997)

    Article  Google Scholar 

  5. Z3: An Efficient SMT Solver. http://z3.codeplex.com/documentation/. Accessed 04 Sep 2014

  6. A. Charlesworth, The undecidability of associativity and commutativity analysis. ACM Trans. Program. Lang. Syst. 24(5), 554–565 (2002)

    Article  Google Scholar 

  7. E.S. Chung, J.C. Hoe, K. Mai, CoRAM: an in-fabric memory architecture for FPGA-based computing, in Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (2011), pp. 97–106

    Google Scholar 

  8. B. Cook, A. Gupta, S. Magill, A. Rybalchenko, J. Simsa, S. Singh, V. Vafeiadis, Finding Heap-Bounds for Hardware Synthesis, in Formal Methods in Computer-Aided Design (IEEE, New York, 2009), pp. 205–212

    Google Scholar 

  9. H.-J. Yang, K. Fleming, M. Adler, F. Winterstein, J. Emer, Scavenger: automating the construction of application-optimized memory hierarchies, in Proceedings of the International Conference on Field Programmable Logic and Applications (FPL) (2015), pp. 1–8

    Google Scholar 

  10. E.G. Coffman, P.J. Denning, Operating Systems Theory (Prentice Hall, Englewood Cliffs, 1973)

    Google Scholar 

  11. M. Hill, A. Smith, Evaluating associativity in CPU caches. IEEE Trans. Comput. 38(12), 1612–1630 (1989)

    Article  Google Scholar 

  12. M. Brehob, R. Enbody, An Analytical Model of Locality and Caching Department of Computer Science, Michigan State University, Technical report (1996)

    Google Scholar 

  13. K. Beyls, E.H. DHollander, Reuse distance as a metric for cache behavior, in Proceedings of the IASTED Conference on Parallel and Distributed Computing and Systems (2001), pp. 617–662

    Google Scholar 

  14. D. Pisinger, A minimal algorithm for the 0–1 Knapsack problem. Oper. Res. 45, 758–767 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  15. F. Winterstein, K. Fleming, H.-J. Yang, J. Wickerson, G. Constantinides, Custom-sized caches in application-specific memory hierarchies, in Proceedings of the International Conference on Field Programmable Technology (ICFPT) (2015), pp. 144–151

    Google Scholar 

  16. F. Winterstein, K. Fleming, H.-J. Yang, S. Bayliss, G. Constantinides, MATCHUP: memory abstractions for heap manipulating programs, in Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA) (2015), pp. 136–145

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Felix Winterstein .

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this chapter

Cite this chapter

Winterstein, F. (2017). Custom Multi-cache Architectures. In: Separation Logic for High-level Synthesis. Springer Theses. Springer, Cham. https://doi.org/10.1007/978-3-319-53222-6_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-53222-6_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-53221-9

  • Online ISBN: 978-3-319-53222-6

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics