skip to main content
research-article

The iDEA DSP Block-Based Soft Processor for FPGAs

Authors Info & Claims
Published:03 September 2014Publication History
Skip Abstract Section

Abstract

DSP blocks in modern FPGAs can be used for a wide range of arithmetic functions, offering increased performance while saving logic resources for other uses. They have evolved to better support a plethora of signal processing tasks, meaning that in other application domains they may be underutilised. The DSP48E1 primitives in new Xilinx devices support dynamic programmability that can help extend their usefulness; the specific function of a DSP block can be modified on a cycle-by-cycle basis. However, the standard synthesis flow does not leverage this flexibility in the vast majority of cases. The lean DSP Extension Architecture (iDEA) presented in this article builds around the dynamic programmability of a single DSP48E1 primitive, with minimal additional logic to create a general-purpose processor supporting a full instruction-set architecture. The result is a very compact, fast processor that can execute a full gamut of general machine instructions. We show a number of simple applications compiled using an MIPS compiler and translated to the iDEA instruction set, comparing with a Xilinx MicroBlaze to show estimated performance figures. Being based on the DSP48E1, this processor can be deployed across next-generation Xilinx Artix-7, Kintex-7, Virtex-7, and Zynq families.

References

  1. Aeroflex Gaisler. 2012. GRLIB ip library user's manual. http://aeroflex.bentech-taiwan.com/aeroflex/pdf/grlib.pdf.Google ScholarGoogle Scholar
  2. Altera Corpration. 2011. Nios II processor design. http://www.altera.com/literature/lit-nio2.jsp.Google ScholarGoogle Scholar
  3. Arm Ltd. 2011. Cortex-m1 processor. http://www.arm.com/products/processors/cortex-m/cortex-m1.php.Google ScholarGoogle Scholar
  4. L. Barthe, L. V. Cargnini, P. Benoit, and L. Torres. 2011. The secretblaze: A configurable and cost-effective open-source soft-core processor. In Proceedings of the International Symposium on Parallel and Distributed Processing Workshops (IPDPSW'11). 310--313. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. F. Brosser, H. Y. Cheah, and S. A. Fahmy. 2013. Iterative floating point computation using FPGA DSP blocks. In Proceedings of the International Conference on Field Programmable Logic and Applications (FPL'13).Google ScholarGoogle Scholar
  6. P. Buciak and J. Botwicz. 2007. Lightweight multi-threaded network processor core in FPGA. In Proceedings of the Design and Diagnostics of Electronic Circuits and Systems Conference (DDECS'07). 1--5.Google ScholarGoogle Scholar
  7. H. Y. Cheah, 2013. iDEA FPGA soft processor. https://github.com/archntu/idea.Google ScholarGoogle Scholar
  8. H. Y. Cheah, S. A. Fahmy, and D. L. Maskell. 2012a. iDEA: A DSP block based FPGA soft processor. In Proceedings of the International Conference on Field Programmable Technology (FPT'12). 151--158.Google ScholarGoogle Scholar
  9. H. Y. Cheah, S. A. Fahmy, D. L. Maskell, and C. Kulkarni. 2012b. A lean FPGA soft processor built using a DSP block. In Proceedings of ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA'12). 237--240. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. C. H. Chou, A. Severance, A. D. Brant, Z. Liu, S. Sant, and G. Lemieux. 2011. VEGAS: Soft vector processor with scratch-pad memory. In Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA'11). 15--24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. X. Chu and J. Mcallister. 2010. FPGA based soft-core SIMD processing: A MIMO-OFDM fixed-complexity sphere decoder case study. In Proceedings of the International Conference on Field Programmable Technology (FPT'10). 479--484.Google ScholarGoogle Scholar
  12. F. de Dinechin and B. Pasca. 2011. Designing custom arithmetic data paths with flopoco. IEEE Des. Test Comput. 28, 4, 18--27. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. R. Dimond, O. Mencer, and W. Luk. 2005. CUSTARD—A customisable threaded FPGA soft processor and tools. In Proceedings of the International Conference on Field Programmable Logic and Applications (FPL'05).Google ScholarGoogle Scholar
  14. J. Kathiara and M. Leeser. 2011. An autonomous vector/scalar floating point coprocessor for FPGAS. In Proceedings of the International Symposium on Field-Programmable Custom Computing Machines (FCCM'11). 33--36. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. T. Kranenburg and R. van Leuken. 2010. MB-LITE: A robust, light-weight soft-core implementation of the microblaze architecture. In Proceedings of the Design, Automation, and Test in Europe Conference (DATE'10). 997--1000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. C. E. Laforest and J. G. Steffan. 2010. Efficient multi-ported memories for FPGAs. In Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA'10). Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. C. E. Laforest, J. G. Steffan, and J. Gregory. 2012. OCTAVO: An FPGA-centric processor family. In Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA'12). 219--228. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Lattice Semiconductor Corp. 2009. LatticeMico32 processor reference manual. http://www.lattice.us/∼/Documents/UserManuals/JL/LatticeMico32HardwareDeveloperUserGuide.PDF?document_id=35467Google ScholarGoogle Scholar
  19. Y. Lei, Y. Dou, J. Zhou, and S. Wang. 2011. VPFPAP: A special-purpose VLIW processor for variable-precision floating-point arithmetic. In Proceedings of the International Conference on Field Programmable Logic and Applications (FPL'11). 252--257. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. J. Lotze, S. A. Fahmy, J. Noguera, B. Ozgul, L. Doyle, and R. Esser. 2009. Development framework for implementing FPGA-based cognitive network nodes. In Proceedings of the IEEE Global Communications Conference (GLOBECOM'09). Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. M. Milford and J. Mcallister. 2009. An ultra-fine processor for FPGA DSP chip multiprocessors. In Conference Record of the Asilomar Conference on Signals, Systems and Computers. 226--230. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. F. Plavec, B. Fort, Z. G. Vranesic, and S. D. Brown. 2005. Experiences with soft-core processor design. In Proceedings of the International Parallel and Distributed Processing Symposium (IPDPS'05). 167b. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. B. Ronak and S. A. Fahmy. 2012. Evaluating the efficiency of DSP block synthesis inference from flow graphs. In Proceedings of the International Conference on Field Programmable Logic and Applications (FPL'12). 727--730.Google ScholarGoogle Scholar
  24. A. Severance and G. Lemieux. 2012. VENICE: A compact vector processor for FPGA applications. In Proceedings of the Workshop on the Intersections of Computer Architecture and Reconfigurable Logic.Google ScholarGoogle Scholar
  25. K. Vipin and S. A. Fahmy. 2012. A high speed open source controller for FPGA partial reconfiguration. In Proceedings of the International Conference on Field-Programmable Technology (FPT'12). 61--66.Google ScholarGoogle Scholar
  26. Xilinx. 2010. Virtex-4 family overview. http://www.xilinx.com/support/documentation/data_sheets/ds112.pdf.Google ScholarGoogle Scholar
  27. Xilinx. 2011a. UG081: MicroBlaze processor reference guide. http://www.xilinx.com/support/documentation/sw_manuals/xilinx13_1/mb_ref_guide.pdf.Google ScholarGoogle Scholar
  28. Xilinx. 2011b. UG369: Virtex-6 FPGA DSP48E1 Slice user guide. http://www.xilinx.com/support/documentation/user_guides/ug369.pdf.Google ScholarGoogle Scholar
  29. Xilinx. 2011c. Virtex-II pro and Virtex-II Pro X platform FPGAs data sheet. http://www.xilinx.com/support/documentation/data_sheets/ds083.pdfGoogle ScholarGoogle Scholar
  30. S. Xu, S. A. Fahmy, and I. V. Mcloughlin. 2014. Square-rich fixed point polynomial evaluation on FPGAs. In Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA'14). 99--108. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. P. Yiannacouras, J. G. Steffan, and J. Rose. 2008. VESPA: Portable, scalable, and flexible FPGA-based vector processors. In Proceedings of the International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CASES'08). 61--70. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. J. Yu, G. Lemieux, and C. Eagleston. 2008. Vector processing as a soft-core CPU accelerator. In Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA'08). 222--232. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. The iDEA DSP Block-Based Soft Processor for FPGAs

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Published in

      cover image ACM Transactions on Reconfigurable Technology and Systems
      ACM Transactions on Reconfigurable Technology and Systems  Volume 7, Issue 3
      Special Issue on 11th International Conference on Field-Programmable Technology (FPT'12) and Special Issue on the 7th International Workshop on Reconfigurable Communication-Centric Systems-on-Chip (ReCoSoC'12)
      August 2014
      199 pages
      ISSN:1936-7406
      EISSN:1936-7414
      DOI:10.1145/2664590
      Issue’s Table of Contents

      Copyright © 2014 ACM

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 3 September 2014
      • Accepted: 1 December 2012
      • Revised: 1 October 2012
      • Received: 1 October 2011
      Published in trets Volume 7, Issue 3

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Research
      • Refereed

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader
    About Cookies On This Site

    We use cookies to ensure that we give you the best experience on our website.

    Learn more

    Got it!