Skip to main content
Log in

Deployment of Run-Time Reconfigurable Hardware Coprocessors Into Compute-Intensive Embedded Applications

  • Published:
Journal of Signal Processing Systems Aims and scope Submit manuscript

Abstract

Day after day, embedded systems add more compute-intensive applications inside their end products: cryptography or image and video processing are some examples found in leading markets like consumer electronics and automotive. To face up these ever-increasing computational demands, the use of hardware accelerators synthesized in field-programmable gate arrays (FPGA) lets achieve processing speedups of orders of magnitude versus their counterpart CPU-based software approaches. However, the inherent increment in physical resources penalizes in cost. To address this issue, dynamically reconfigurable hardware technology definitively reached its maturity. SRAM-based reconfigurable logic goes beyond the classical conception of static hardware resources distributed in space and held invariant for the entire application life cycle; it provides a new design abstraction featured by the temporal partitioning of such resources to promote their continuous reuse, reconfiguring them on the fly to play a different role in each instant. This new computing paradigm lets balance the design of embedded applications by partitioning their functionality in space and time—through a series of mutually-exclusive processing tasks synthesized multiplexed in time on the same set of resources—and achieving thus cost savings in both area and power metrics. However, the exploitation of this system versatility requires special attention to avoid performance degradation. Such technical aspects are addressed in this work intended to be a survey on reconfigurable hardware technology and aimed at defining an open, standard and cost-effective system architecture driven by flexible coprocessors instantiated on demand on reconfigurable resources of an FPGA. This concept fits well with the functional features demanded to many embedded applications today and its feasibility has been proved with a state-of-the-art commercial SRAM-based FPGA platform. The achieved results highlight dynamic partial reconfiguration as a potential technology to lead the next computing wave in the industry.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12

Similar content being viewed by others

References

  1. Wirthlin, M. J., & Hutchings, B. L. (1998). Improving functional density using run-time circuit reconfiguration. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 6(2), 247–256.

    Article  Google Scholar 

  2. Delahaye, J. -P., Gogniat, G., Roland, C., & Bomel, P. (2004). Software radio and dynamic reconfiguration on a DSP/FPGA platform. Frequenz, Journal of RF-Engineering and Telecommunications, 58.

  3. Nezami, K. G., Stephens, P. W., & Walker, S. D. (2008). Handel-C implementation of early-access partial-reconfiguration for software defined radio, WCNC 2008 proceedings, IEEE, pp. 1103–1108.

  4. Cormier, A. R., Dietrich, C. B., Price, J., & Reed, J. H. (2010). Dynamic reconfiguration of software defined radios using standard architectures. Physical Communication, 3, 73–80.

    Article  Google Scholar 

  5. Rauwerda, G. K., Heysters, P. M., & Smit, G. J. M. (2008). Towards software defined radios using coarse-grained reconfigurable hardware. IEEE Transactions of Very Large Scale Integration (VLSI) Systems, 16(1), 3–13.

    Article  Google Scholar 

  6. Granado, J. M., Vega-Rodríguez, M. A., Sánchez-Pérez, J. M., & Gómez-Pulido, J. A. (2009). IDEA and AES, two cryptographic algorithms implemented using partial and dynamic reconfiguration. Microelectronics Journal, 40, 1032–1040.

    Article  Google Scholar 

  7. Granado, J. M., Vega-Rodríguez, M. A., Sánchez-Pérez, J. M., & Gómez-Pulido, J. A. (2010). A new methodology to implement the AES algorithm using partial and dynamic reconfiguration. Integration, the VLSI Journal, 43, 72–80.

    Article  Google Scholar 

  8. Gonzalez, I., Lopez-Buedo, S., Gomez, F. J., & Martinez, J. (2003). Using partial reconfiguration in cryptographic applications: an implementation of the IDEA algorithm, FPL 2003, LNCS 2778, pp. 194–203, Springer.

  9. Hori, Y., Satoh, A., Sakane, H., & Toda, K. (2008). Bitstream encryption and authentication with AES-GCM in dynamically reconfigurable systems. Proceedings of the International Conference on Field Programmable Logic and Applications, pp. 23–28.

  10. Hori, Y., Yokoyamay, H., Sakane, H., & Toda, K. (2008). A secure content delivery system based on a partially reconfigurable FPGA. IEICE Transactions on Information and Systems, E91-D(5), 1398–1407.

    Article  Google Scholar 

  11. Osterloh, B., Michalik, H., Fiethe, B., & Bubenhagen, F. (2010). Architecture verification of the SoCWire NoC approach for safe dynamic partial reconfiguration in space applications. NASA/ESA Conference on Adaptive Hardware and Systems.

  12. Murgan, T., Petrov, M., Majer, M., Zipf, P., Glesner, M., Heinkel, U, et al. (2004). Adaptive architectures for an OTN processor: Reducing design costs through reconfigurability and multiprocessing. Conf. Computing Frontiers, pp. 404–418.

  13. Guindani, G., Ferlini, F., Oliveira, J., Calazans, N., Pigatto, D., & Moraes, F. (2009). A 10 Gbps OTN framer implementation targeting FPGA devices. Proceedings of the International Conference on Reconfigurable Computing and FPGAs, pp. 30–35.

  14. Fons, F., & Fons, M. (2010). Making biometrics the killer app of FPGA dynamic partial reconfiguration. Xcell Journal, Xilinx, (72), 24–31.

  15. Sony Corp., CX-NEWS Sony Semiconductor & LCD News (web magazine), vol.42, November 2005, http://www.sony.net/Products/SC-HP/cx_news/vol42/sideview.html.

  16. Lewis, S. (2009). Virtex-5 powers reconfigurable, Rugged PC. Xilinx Xcell Journal, (68), 28–31.

  17. http://www.sgi.com/company_info/newsroom/press_releases/2005/september/rasc.html.

  18. Flatley, T. (2010). Advanced hybrid on-board science data processor - SpaceCube 2.0, NASA Earth Science Technology Forum.

  19. Flatley, T. P. (2009). What would you rather have: more data or perfect data? Goddard Tech Trends, 5(3), 7–7.

    Google Scholar 

  20. Abel, N., Manz, S., Grüll, F., & Kebschull, U. (2010). Increasing design changeability using dynamic partial reconfiguration. IEEE Transactions on Nuclear Science, 57(2), 602–209.

    Article  Google Scholar 

  21. Jara-Berrocal, A., & Gordon-Ross, A. (2010). VAPRES: A virtual architecture for partially reconfigurable embedded systems. Proceedings of Design, Automation, and Test in Europe Conference.

  22. Garcia, R., Gordon-Ross, A., & George, A. (2009). Exploiting partially reconfigurable FPGAs for situation-based reconfiguration in wireless sensor networks. Proceedings of IEEE Symposium on Field-Programmable Custom Computing Machines.

  23. Jara-Berrocal, A., & Gordon-Ross, A. (2009). SCORES: A scalable and parametric streams-based communication architecture for modular reconfigurable systems. Proceedings of Design, Automation, and Test in Europe Conference.

  24. Jara-Berrocal, A., & Gordon-Ross, A. (2009). Runtime temporal partitioning assembly to reduce FPGA reconfiguration time. Proceedings of International Conference on Reconfigurable Computing and FPGAs.

  25. Huebner, M., Ullmann, M., Braun, L., Klausmann, A., Becker, J. (2004). Scalable application-dependent network on chip adaptivity for dynamical reconfigurable real-time systems. Proceedings of the International Conference on Field Programmable Logic and Applications (FPL), LNCS 3203, pp. 1037–1041.

  26. Ullmann, M., Hübner, M., Grimm, B., & Becker, J. (2004). On-demand FPGA run-time system for dynamical reconfiguration with adaptive priorities. Proceedings of the International Conference on Field Programmable Logic and Applications, LNCS 3203, pp. 454–463.

  27. Huebner, M., & Becker, J. (2006). Dynamic and partial FPGA self-reconfiguration using real-time LUT-based network-on-chip adaptive topologies for Xilinx FPGAs. Journal Integrated Circuits and Systems, 1(4).

  28. Ullmann, M., Hübner, M., Grimm, B., & Becker, J. (2004). An FPGA run-time system for dynamic on-demand reconfiguration. Proceedings of the International Parallel and Distributed Processing Symposium.

  29. Becker, J., Hübner, M., Hettich, G., Constapel, R., Eisenmann, J., & Luka, J. (2007). Dynamic and partial FPGA exploitation. Proceedings of the IEEE, 95(2), 438–452.

    Article  Google Scholar 

  30. Bobda, C., Majer, A., Ahmadinia, A., Haller, T., Linarth, A., & Teich, J. (2005). The Erlangen slot machine: increasing flexibility in FPGA-based reconfigurable platforms. Proceeding of the IEEE International Conference on Field-Programmable Technology, pp. 37–42.

  31. Majer, M., Teich, J., Ahmadinia, A., & Bobda, C. (2007). The Erlangen slot machine: a dynamically reconfigurable FPGA-based computer. The Journal of VLSI Signal Processing, 47(1), 15–31.

    Article  Google Scholar 

  32. Vassiliadis, S., Gaydadjiev, G., & Kuzmanov, G. (2004). The MOLEN polymorphic processor. IEEE Transactions on Computers, 53(11), 1363–1375.

    Article  Google Scholar 

  33. Kuzmanov, G. K., Gaydadjiev, G. N., & Vassiliadis, S. (2004). The Virtex II Pro™ MOLEN processor. Proceedings of the International Workshop on Computer Systems: Architectures, Modelling, and Simulation, LNCS 3133, 192–202.

    Article  Google Scholar 

  34. Panainte, E. M., Bertels, K., & Vassiliadis, S. (2007). The Molen compiler for reconfigurable processors. ACM Transactions in Embedded Computing Systems, 6(1).

  35. Kuzmanov, G., Gaydadjiev, G. N., & Vassiliadis, S. (2003). Loading rm-code: design considerations. Proceedings of the International Workshop on Computer Systems: Architectures, Modeling, and Simulation, LNCS 3133, pp. 11–19.

    Article  Google Scholar 

  36. Altera Corp. (2003). Reconfiguring Excalibur devices under processor control. Application Note 298.

  37. Altera Corp. (2002). Excalibur devices hardware reference manual. Reference Manual.

  38. Atmel Corp. (2001). AT94K series configuration. Application Note 2313.

  39. Atmel Corp. (2001). AT94K series Cache Logic™ (mode 4) configuration. Application Note 2323.

  40. Paulsson, K., Hübner, M., Auer, G., Dreschmann, M., Chen, L., & Becker, J. (2007) Implementation of a virtual internal configuration access port (JCAP) for enabling partial self-reconfiguration on Xilinx Spartan III FPGAs. Proceedings of the international conference on field programmable logic and applications, pp. 351–356.

  41. Gonzalez, I., Aguayo, E., & Lopez-Buedo, S. (2007). Self-reconfigurable embedded systems on low-cost FPGAs. IEEE MICRO, 49–57.

  42. Bayar, S., & Yurdakul, A. (2008). Dynamic partial self-reconfiguration on Spartan-III FPGAs via a parallel configuration access port (PCAP). Proceedings of HiPEAC workshop on reconfigurable computing, pp. 1–10.

  43. Möller, L., Grehs, I., Carvalho, E., Soares, R., Calazans, N., & Moraes, F. (2007). A NoC-based infrastructure to enable dynamic self reconfigurable system. Proceedings of the 3rd workshop on reconfigurable communication-centric systems-on-chip, pp. 23–30.

  44. Van der Bok, K., Chaves, R., Kuzmanov, G., Sousa, L., & Van Genderen, A. (2007). Dynamic FPGA reconfigurations with run-time region delimitation. Proceedings of the 18th annual workshop on circuits, systems and signal processing, pp. 201–207.

  45. Claus, C., Müller, F. H., Zeppenfeld, J., & Stechele, W. (2007). A new framework to accelerate Virtex-II Pro dynamic partial self-reconfiguration. IEEE Parallel and Distributed Processing Symposium.

  46. Xilinx Inc. (2004). OPB HWICAP, Datasheet 280.

  47. Xilinx Inc. (2010). LogiCORE IP XPS HWICAP (v5.00a), Datasheet 586.

  48. Hübner, M., Göhringer, D., Noguera, J, & Becker, J. (2010). Fast dynamic and partial reconfiguration data path with low hardware overhead on Xilinx FPGAs. Proceedings of the IPDPS Reconfigurable Architectures Workshop, pp. 1–8.

  49. Claus, C., Zhang, B., Stechele, W., Braun, L., Hübner, M., & Becker, J., (2008). A multi-platform controller allowing for maximum dynamic partial reconfiguration throughput. Proceedings of the International Conference on Field Programmable Logic and Applications, pp. 535–538.

  50. Liu, M., Kuehn, W., Lu, Z., & Jantsch, A. (2009). Run-time partial reconfiguration speed investigation and architectural design space exploration. Proceedings of the International Conference on Field Programmable Logic and Applications, pp. 498−502.

  51. Manet, P., Maufroid, D., Tosi, L., Gailliard, G., Mulertt, O., Di Ciano, M., et al. (2008). An evaluation of dynamic partial reconfiguration for signal and image processing in professional electronics applications. EURASIP Journal on Embedded Systems, 1–11.

  52. Nabina, A., & Nuñez-Yañez, J. L. (2010). Dynamic reconfiguration optimisation with streaming data decompression. Proceedings of the International Conference on Field Programmable Logic and Applications, pp. 602–607.

  53. Liu, S., Pittman, R. N., Forin, A. (2009). Minimizing partial reconfiguration overhead with fully streaming DMA engines and intelligent ICAP controller, Microsoft Research, Technical Report MSR-TR-2009-150, pp. 1–33.

  54. Delorme, J., Nafkha, A., Leray, P., & Moy, C. (2009). New OPBHWICAP interface for realtime partial reconfiguration of FPGA, Proceedings of the International Conference on Reconfigurable Computing and FPGAs, pp. 386–391.

  55. Shelburne, M., Patterson, C., Athanas, P., Jones, M., Martin, B., Fong, R. (2008). MetaWire: using FPGA configuration circuitry to emulate a network-on-chip. Proceedings of the International Conference on Field Programmable Logic and Applications, pp. 257–262.

  56. Claus, C., Ahmed, R., Altenried, F., Stechele, W. (2010). Towards rapid dynamic partial reconfiguration in video-based driver assistance systems, Proceedings of the International Symposium on Applied Reconfigurable Computing, LNCS 5992, Springer, pp. 55–67.

  57. Claus, C., Altenried, F., Stechele, W. (2010). Dynamic partial reconfiguration of Xilinx FPGAs lets system adapt on the fly. Xcell Journal, (70), 18–23.

  58. Claus, C., Zeppenfeld, J., Müller, F., Stechele, W. (2007). Using partial-run-time reconfigurable hardware to accelerate video processing in driver assistance systems. Processings of Design, Automation, and Test in Europe Conference, pp. 498–503.

  59. Claus, C., Stechele, W., & Herkersdorf, A. (2007). Autovision—a run-time reconfigurable MPSoC architecture for future driver assistance systems. Information Technology Journal, 49(3), 181–187.

    Google Scholar 

  60. Platzner, M., Teich, J., Wehn, N. (eds.) (2010). Dynamically reconfigurable systems - Architectures, design methods and applications, Springer, pp. 375–394.

  61. Fons, M., Fons, F., & Cantó, E. (2010). Fingerprint image processing acceleration through run-time reconfigurable hardware. IEEE Transactions on Circuits and Systems II: Express Briefs, 57(12), 991–995.

    Article  Google Scholar 

  62. Fons, M., Fons, F., Cantó, E. (2010). Biometrics-based consumer applications driven by reconfigurable hardware architectures. Future Generation Computer Systems, doi:10.1016/j.future.2010.11.007.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mariano Fons.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Fons, F., Fons, M., Cantó, E. et al. Deployment of Run-Time Reconfigurable Hardware Coprocessors Into Compute-Intensive Embedded Applications. J Sign Process Syst 66, 191–221 (2012). https://doi.org/10.1007/s11265-011-0607-9

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11265-011-0607-9

Keywords

Navigation