Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

Design-Space Exploration for Block-Processing Based Temporal Partitioning of Run-Time Reconfigurable Systems

  • Chapter
Field-Programmable Custom Computing Technology: Architectures, Tools, and Applications

Abstract

The reconfiguration capability of modern FPGA devices can be utilized to execute an application by partitioning it into multiple segments such that each segment is executed one after the other on the device. This division of an application into multiple reconfigurable segments is called temporal partitioning. We present an automated temporal partitioning technique for acyclic behavior level task graphs. To be effective, any behavior-level partitioning method should ensure that each temporal partition meets the underlying resource constraints. For this, a knowledge of the implementation cost of each task on the hardware should be known. Since multiple implementations of a task that differ in area and delay are possible, we perform design-space exploration to choose the best implementation of a task from among the available implementations.

To overcome the high reconfiguration overhead of the current day FPGA devices, we propose integration of the temporal partitioning and design space exploration methodology with block-processing. Block-processing is used to process multiple blocks of data on each temporal partition so as to amortize the reconfiguration time. We focus on applications that can be represented as task graphs that have to be executed many times over a large set of input data. We have integrated block-processing in the temporal partitioning framework so that it also influences the design point selection for each task. However, this does not exclude usage of our system for designs for which block-processing is not possible. For both block-processing and non block-processing designs our algorithm selects the best possible design point to minimize the execution time of the design.

We present an ILP-based methodology for the integrated temporal partitioning, design space exploration and block-processing technique that is solved to optimality for small sized design problems and in an iterative constraint satisfaction approach for large sized design problems. We demonstrate with extensive experimental results for the Discrete Cosine Transform (DCT) and random graphs the validity of our approach.

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

Access this chapter

Subscribe and save

Springer+ Basic
EUR 32.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or Ebook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

eBook
USD 9.99
Price excludes VAT (USA)
  • Available as 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Xilinx Inc., http://www.xilinx.com. “Data Book and Application Notes.

  2. Altera Inc., http://www.altera.com. “Data Book and Application Notes.

  3. Atmel Inc., http://www.atmel.com. “Data Book and Application Notes.

  4. B.L. Hutchings and M.J. Wirthlin, “Implementation Approaches for Reconfigurable Logic Applications,” International Workshop on Field-Programmable Logic and Applications, FPL, Springer, 1995, pp. 419–428.

    Google Scholar 

  5. M. Dorfel and R. Hofmann, “A Prototyping System for High Performance Communication Systems,” IEEE Workshop on Rapid System Prototyping, RSP, IEEE Computer Society Press, 1998, pp. 84–88.

    Google Scholar 

  6. J. Babb, R. Tessier, M. Dahl, S. Hanono, D. Hoki, and A. Agarwal, “Logic Emulation with Virtual Wires,” IEEE Transactions on Computer Aided Design of Integrated Circuits and Systems, vol. 16, no. 6, 1997, pp. 609–626.

    Article  Google Scholar 

  7. M. Vasilko and D. Ait-Boudaoud, “Architectural Synthesis for Dynamically Reconfigurable Logic,” International Workshop on Field-Programmable Logic and Applications, FPL, Springer, 1996, pp. 290–296.

    Google Scholar 

  8. K.M. Gajjala Purna and D. Bhatia, “Temporal Partitioning and Scheduling for Reconfigurable Computing,” FPGAs for Custom Computing Machines, FCCM, IEEE Computer Society Press, 1998, pp..

    Google Scholar 

  9. J. Spillane and H. Owen, “Temporal Partitioning for Partially-Reconfigurable-Field-Programmable Gate,” Reconfigurable Architectures Workshop, RAW in IPPS/SPDP, Springer, 1998, pp. 37–42.

    Google Scholar 

  10. M. Kaul and R. Vemuri, “Optimal Temporal Partitioning and Synthesis for Reconfigurable Architectures,” Design, Automation and Test in Europe, DATE, IEEE Computer Society Press, 1998, pp. 389–396.

    Google Scholar 

  11. S. Trimberger, “Scheduling Designs into a Time-Multiplexed FPGA,” ACM/SIGDA International Symposium on Field Programmable Gate Arrays, FPGA, ACM Press, 1998, pp. 153–160.

    Google Scholar 

  12. M. Kaul, R. Vemuri, S. Govindarajan, and I. Ouaiss, “An Automated Temporal Partitioning and Loop Fission Approach for FPGA Based Reconfigurable Synthesis of DSP Applications,” Design Automation Conference, DAC, IEEE Computer Society Press, 1999, pp. 616–622.

    Google Scholar 

  13. D.S. Rao and F. Kurdahi, “Hierarchical Design Space Exploration for a Class of Digital Systems,” IEEE transactions on Very Large Scale Integration (VLSI) Systems, vol. 1, no. 3, 1993, pp. 282–294.

    Article  Google Scholar 

  14. G.D. Micheli, Synthesis and Optimization of Digital Circuits, McGraw-Hill, 1994.

    Google Scholar 

  15. I. Ouaiss, S. Govindarajan, V. Srinivasan, M. Kaul, and R. Vemuri, “An Integrated Partitioning and Synthesis System for Dynamically Reconfigurable Multi-FPGA Architectures,” Reconfigurable Architectures Workshop, RAW in IPPS/SPDP, Springer, 1998, pp. 31–36.

    Google Scholar 

  16. M. Xu and F. Kurdahi, “Layout Driven High Level Synthesis for FPGA Based Architectures,” Design Automation and Test in Europe, DATE, IEEE Computer Society Press, 1998, pp. 446–450.

    Google Scholar 

  17. M. Wolf, High Performance Compilers for Parallel Computing, Addison-Wesley Publishers, 1996.

    Google Scholar 

  18. S.Y. Kung, VLSI Array Processors, Prentice Hall, 1988.

    Google Scholar 

  19. K. Roy-Neogi and C. Sechen, “Multiple FPGA partitioning with performance optimization,” ACM/SIGDA International Symposium on Field Programmable Gate Arrays, FPGA, ACM Press, 1995, pp. 146–152.

    Google Scholar 

  20. P. Chan, M. Schlag, and J. Zien, “Spectral-Based Multi-Way FPGA Partitioning,” ACM/SIGDA International Symposium on Field Programmable Gate Arrays, FPGA, ACM Press, 1995, pp. 133–139.

    Google Scholar 

  21. W. Fang and A. Wu, “A Hierarchical Functional Structuring and Partitioning Approach for Multiple-FPGA Implementations,” IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 16, no. 10, 1997, pp. 1188–1195.

    Article  Google Scholar 

  22. H. Schmit, L. Arnstein, D. Thomas, and E. Lagnese, “Behavioral Synthesis for FPGA-Based Computing,” FPGAs for Custom Computing Machines, FCCM, IEEE Computer Society Press, 1994, pp. 125–132.

    Google Scholar 

  23. R.D. Hudson, D.I. Lehn, and P.M. Athanas, “A Run-Time Reconfigurable Engine for Image Interpolation,” FPGAs for Custom Computing Machines, FCCM, IEEE Computer Society Press, 1998, pp. 88–95.

    Google Scholar 

  24. M.J. Wirthlin and B.L. Hutchings, “Sequencing Run-Time Reconfigured Hardware with Software,” ACM/SIGDA International Symposium on Field Programmable Gate Arrays, FPGA, ACM Press, 1996, pp. 122–128.

    Google Scholar 

  25. M. Gokhale and J.M. Stone, “NAPA C: Compiling for Hybrid RISC/FPGA Architectures,” FPGAs for Custom Computing Machines, FCCM, IEEE Computer Society Press, 1998, pp. 126–135.

    Google Scholar 

  26. W. Luk, N. Shirazi, and P. Cheung, “Automating Production of Run-Time Reconfigurable Designs,” FPGAs for Custom Computing Machines, FCCM, IEEE Computer Society Press, 1998, pp. 147–156.

    Google Scholar 

  27. M. Chu, N. Weaver, K. Sulimma, A. DeHon, and J. Wawrzynek, “Object Oriented Circuit-Generators in Java,” FPGAs for Custom Computing Machines, FCCM, IEEE Computer Society Press, 1998, pp. 158–166.

    Google Scholar 

  28. M. Kaul and R. Vemuri, “Temporal Partitioning Combined with Design Space Exploration for Latency Minimization of Run-Time Reconfigured Designs,” Design Automation and Test in Europe, DATE, IEEE Computer Society Press, 1999, pp. 202–209.

    Google Scholar 

  29. M.J. Wirthlin and B.L. Hutchings, “A Dynamic Instruction Set Computer,” FPGAs for Custom Computing Machines, FCCM, IEEE Computer Society Press, 1995, pp. 99–106.

    Google Scholar 

  30. A. Kalavade, “System-Level Codesign of Mixed Hardware-Software Systems,” Ph.D. Thesis, University of California, Berkeley, 1995.

    Google Scholar 

  31. C.H. Gebotys, “Optimal Synthesis of Multichip Architectures,” IEEE ICCAD, IEEE Computer Society Press, 1992, pp. 238–241.

    Google Scholar 

  32. R. Niemann and P. Marwedel, “An Algorithm for Hardware/Software Partitioning Using Mixed Integer Linear Programming,” European Design and Test Conference, ED&TC, 1996, pp. 473–479.

    Google Scholar 

  33. C.H. Gebotys and M.I. Elmasry, Optimal VLSI Architectural Synthesis, Kluwer Academic Publishers, 1992.

    Google Scholar 

  34. P. Hansen, B. Jaumard, and V. Mathon, “Constrained Nonlinear 0-1 Programming,” ORSA Journal of Computing, vol. 5, no. 2, 1993, pp. 97–119.

    Article  MathSciNet  MATH  Google Scholar 

  35. F. Glover and E. Woolsey, “Converting the 0-1 Polynomial Programming Problem to a 0-1 Linear Program,” Operations Research, vol. 21, no. 1, 1974, pp. 156–161.

    Article  MathSciNet  Google Scholar 

  36. G.K. Wallace, “The JPEG Still Picture Compression Standard,” ACM Communications, 1991.

    Google Scholar 

  37. S. Trimberger, D. Carberry, A. Johnson, and J. Wong, “A Time-Multiplexed FPGA,” FPGAs for Custom Computing Machines, FCCM, IEEE Computer Society Press, 1997, pp. 22–28.

    Google Scholar 

  38. S.M. Scalera and J.R. Vazquez, “The Design and Implementation of a Context Switching FPGA,” FPGAs for Custom Computing Machines, FCCM, IEEE Computer Society Press, 1998, pp. 78–85.

    Google Scholar 

  39. Annapolis Micro Systems, Inc., WILDFORCE Reference Manual, Document #1189—Release Notes.

    Google Scholar 

  40. Y. Hung and A.C. Parker, “High-Level Synthesis with Pin Constraints for Multiple-Chip Designs,” Design Automation Conference, DAC, IEEE Computer Society Press, 1992, pp. 231–234.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer Science+Business Media New York

About this chapter

Cite this chapter

Kaul, M., Vemuri, R. (2000). Design-Space Exploration for Block-Processing Based Temporal Partitioning of Run-Time Reconfigurable Systems. In: Arnold, J., Luk, W., Pocek, K. (eds) Field-Programmable Custom Computing Technology: Architectures, Tools, and Applications. Springer, Boston, MA. https://doi.org/10.1007/978-1-4615-4417-3_5

Download citation

  • DOI: https://doi.org/10.1007/978-1-4615-4417-3_5

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-1-4613-6988-2

  • Online ISBN: 978-1-4615-4417-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics