Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Accelerating FPGA debug: Increasing visibility using a runtime reconfigurable observation and triggering network

Published: 28 March 2014 Publication History
  • Get Citation Alerts
  • Abstract

    FPGA technology is commonly used to prototype new digital designs before entering fabrication. Whilst these physical prototypes can operate many orders of magnitude faster than through a logic simulator, a fundamental limitation is their lack of on-chip visibility when debugging. To counter this, trace-buffer-based instrumentation can be installed into the prototype, allowing designers to capture a predetermined window of signal data during live operation for offline analysis. However, instead of requiring the designer to recompile their entire circuit every time the window is modified, this article proposes that an overlay network is constructed using only spare FPGA routing multiplexers to connect all circuit signals through to the trace instruments. Thus, during debugging, designers would only need to reconfigure this network instead of finding a new place-and-route solution. Furthermore, we describe how this network can deliver signals to both the trigger and trace units of these instruments, which are implemented simultaneously using dual-port RAMs. Our results show that new network configurations connecting any subset of signals to 80--90% of the available RAM capacity can be computed in less than 70 seconds, for a 100,000 LUT circuit, as many times as necessary. Our tool—QuickTrace—is available for download.

    References

    [1]
    Altera. 2012. Quartus II Handbook Version 12.1 Volume 3: Verification. http://www.altera.com/literature/hb/qts/qts\_qii5v3.pdf. (November 2012).
    [2]
    Sameh Asaad, Ralph Bellofatto, Bernard Brezzo, Chuck Haymes, Mohit Kapur, Benjamin Parker, Thomas Roewer, Proshanta Saha, Todd Takken, and José Tierno. 2012. A cycle-accurate, cycle-reproducible multi-FPGA system for accelerating multi-core processor simulation. In Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA'12). 153--162.
    [3]
    Bal´zs Dezs, Alpár Jüttner, and Péter Kovács. 2011. LEMON - an Open Source C++ Graph Template Library. Electron. Notes Theor. Comput. Sci. 264, 5 (July 2011), 23--45.
    [4]
    Free Software Foundation. 2013. GCC 4.8 Release Series: Changes, New Features, and Fixes. http://gcc.gnu.org/gcc-4.8/changes.html. (February 2013).
    [5]
    P. Graham, B. Nelson, and B. Hutchings. 2001. Instrumenting bitstreams for debugging FPGA circuits. In Proceedings of the 9th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, FCCM'01. 41--50.
    [6]
    Eddie Hung, Fatemeh Eslami, and Steven J. E. Wilton. 2013. Escaping the academic sandbox: Realizing VPR circuits on Xilinx devices. In Proceedings of the 21st IEEE International Symposium on Field-Programmable Custom Computing Machines. 45--52.
    [7]
    Eddie Hung and Steven J. E. Wilton. 2011. Speculative debug insertion for FPGAs. In Proceedings of the International Conference on Field-Programmable Logic and Applications. 524--531.
    [8]
    Eddie Hung and Steven J. E. Wilton. 2013. Towards simulator-like observability for FPGAs: A virtual overlay network for trace-buffers. In Proceedings of the 21st ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. 19--28.
    [9]
    Eddie Hung and Steven J. E. Wilton. 2012. Incremental trace-buffer insertion for FPGA debug. IEEE Trans. VLSI Syst. To appear. http://ieeexplore.ieee.org/xpls/abs\_all.jsp?arnumber=6510525.
    [10]
    Yousef S. Iskander, Cameron D. Patterson, and Stephen D. Craven. 2011. Improved abstractions and turnaround time for FPGA design validation and debug. In Proceedings of the 21st International Conference on Field Programmable Logic and Applications (FPL'11). 518--523.
    [11]
    Ho Fai Ko and Nicola Nicolici. 2009. Algorithms for state restoration and trace-signal selection for data acquisition in silicon debug. IEEE Trans. Comput.-Aid. Des. Integr. Circuits Syst. 28, 2 (February 2009), 285--297.
    [12]
    Xiao Liu and Qiang Xu. 2012. On signal selection for visibility enhancement in trace-based post-silicon validation. IEEE Trans. Comput.-Aid. Des. Integr. Circuits Syst. 31, 8 (August 2012), 1263--1274.
    [13]
    Larry McMurchie and Carl Ebeling. 1995. PathFinder: A negotiation-based performance-driven router for FPGAs. In Proceedings of the 3rd ACM International Symposium on Field-Programmable Gate Arrays (FPGA'95). 111--117.
    [14]
    Yehdhih Ould Mohammed Moctar, Nithin George, Hadi Parandeh-Afshar, Paolo Ienne, Guy G. F. Lemieux, and Philip Brisk. 2012. Reducing the cost of floating-point mantissa alignment and normalization in FPGAs. In Proceedings of the 20th ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA'12). 255--264.
    [15]
    B. Quinton and S. Wilton. 2005. Post-silicon debug using programmable logic cores. In Proceedings of the IEEE International Conference on Field Programmable Technology. 241--247.
    [16]
    Jonathan Rose, Jason Luu, Chi Wai Yu, Opal Densmore, Jeff Goeders, Andrew Somerville, Kenneth B. Kent, Peter Jamieson, and Jason Anderson. 2012. The VTR Project: Architecture and CAD for FPGAs from Verilog to routing. In Proceedings of the 20th ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. 77--86.
    [17]
    Synopsys. 2010. Identify: Simulator-like Visibility into Hardware Debug. http://www.synopsys.com/Tools/Implementation/FPGAImplementation/CapsuleModule/identify\_ds.pdf. (August 2010).
    [18]
    Steve Teig. 2012. Programmable logic devices in 2032? In Proceedings of the FPGA2012 Pre-Conference Workshop. http://tcfpga.org/fpga2012/SteveTeig.pdf. (February 2012).
    [19]
    Tektronix. 2012. Certus Debug Suite. http://www.tek.com/sites/tek.com/files/media/media/resources/Certus\_Debug\_Suite\_Datasheet\_54W-28030-1\_4.pdf. (July 2012).
    [20]
    Timothy Wheeler, Paul Graham, Brent E. Nelson, and Brad Hutchings. 2001. Using design-level scan to improve FPGA design observability and controllability for functional verification. In Proceedings of the 11th International Conference on Field Programmable Logic and Applications (FPL'01). 483--492.
    [21]
    Steven J. E. Wilton. 1998. SMAP: Heterogeneous technology mapping for area reduction in FPGAs with embedded memory arrays. In Proceedings of the ACM/SIGDA 6th International Symposium on Field-Programmable Gate Arrays (FPGA'98). 171--178.
    [22]
    Mike Wirthlin, Brent Nelson, Brad Hutchings, Peter Athanas, and Shawn Bohner. 2008. FPGA design productivity: Existing limitations and root causes. http://www.chrec.org/ftsw/FDP\_Session1\_Posted.pdf. (June 2008).
    [23]
    Xilinx. 2011. Virtex-6 FPGA Memory Resources: User Guide (UG363 v1.6). http://www.xilinx.com/support/documentation/user\_guides/ug363.pdf. (April 2011).
    [24]
    Xilinx. 2012. ChipScope Pro Software and Cores, User Guide UG029 (v14.3). http://www.xilinx.com/support/documentation/sw\_manuals/xilinx14\_4/chipscope\_pro\_sw\_cores\_ug029.pdf. (October 2012).

    Cited By

    View all
    • (2018)Rapid Triggering Capability Using an Adaptive Overlay during FPGA DebugACM Transactions on Design Automation of Electronic Systems10.1145/324104523:6(1-25)Online publication date: 6-Dec-2018
    • (2018)An Intrusive Dynamic Reconfigurable Cycle-Accurate Debugging System for Embedded ProcessorsApplied Reconfigurable Computing. Architectures, Tools, and Applications10.1007/978-3-319-78890-6_35(433-445)Online publication date: 8-Apr-2018
    • (2017)An Overview About Debugging and Verification Techniques for Embedded SoftwareEmbedded Software Verification and Debugging10.1007/978-1-4614-2266-2_1(1-18)Online publication date: 19-Apr-2017
    • Show More Cited By

    Index Terms

    1. Accelerating FPGA debug: Increasing visibility using a runtime reconfigurable observation and triggering network

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Transactions on Design Automation of Electronic Systems
      ACM Transactions on Design Automation of Electronic Systems  Volume 19, Issue 2
      March 2014
      314 pages
      ISSN:1084-4309
      EISSN:1557-7309
      DOI:10.1145/2597648
      Issue’s Table of Contents
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Journal Family

      Publication History

      Published: 28 March 2014
      Accepted: 01 December 2013
      Revised: 01 October 2013
      Received: 01 June 2013
      Published in TODAES Volume 19, Issue 2

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. FPGA debug
      2. FPGA prototyping
      3. overlay network
      4. trace buffers
      5. verification

      Qualifiers

      • Research-article
      • Research
      • Refereed

      Funding Sources

      • Altera

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)10
      • Downloads (Last 6 weeks)5

      Other Metrics

      Citations

      Cited By

      View all
      • (2018)Rapid Triggering Capability Using an Adaptive Overlay during FPGA DebugACM Transactions on Design Automation of Electronic Systems10.1145/324104523:6(1-25)Online publication date: 6-Dec-2018
      • (2018)An Intrusive Dynamic Reconfigurable Cycle-Accurate Debugging System for Embedded ProcessorsApplied Reconfigurable Computing. Architectures, Tools, and Applications10.1007/978-3-319-78890-6_35(433-445)Online publication date: 8-Apr-2018
      • (2017)An Overview About Debugging and Verification Techniques for Embedded SoftwareEmbedded Software Verification and Debugging10.1007/978-1-4614-2266-2_1(1-18)Online publication date: 19-Apr-2017
      • (2015)Reconfigurable Computing ArchitecturesProceedings of the IEEE10.1109/JPROC.2014.2386883103:3(332-354)Online publication date: Mar-2015
      • (2015)Data-triggered breakpoint for in-circuit debug without re-implementation2015 25th International Conference on Field Programmable Logic and Applications (FPL)10.1109/FPL.2015.7293997(1-4)Online publication date: Sep-2015

      View Options

      Get Access

      Login options

      Full Access

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Media

      Figures

      Other

      Tables

      Share

      Share

      Share this Publication link

      Share on social media