Hybrid FPGA debug approach

In the modern verification environment an FPGA-based prototyping has become an important part of the whole verification flow. The ability to simulate real time application in more realistic speeds allows much higher coverage than traditional HDL logic simulators. The main disadvantage of FPGA prototyping is inability to inspect and observe internal FPGA signals. Currently there are two traditional solutions for this problem. The first solution is using embedded trace-buffers to record a subset of internal signals and the second solution captures a snapshot of the current FPGA state. Both of these techniques have certain benefits and shortcomings. In this paper, we present an idea of merging these two techniques into a new hybrid approach. Using this idea we created a hybrid circuit and during our experiments showed that it preserves all good sides from both traditional approaches.

[1]  Steven J. E. Wilton,et al.  Concentrator access networks for programmable logic cores on SoCs , 2005, 2005 IEEE International Symposium on Circuits and Systems.

[2]  Bernard Brezzo,et al.  A cycle-accurate, cycle-reproducible multi-FPGA system for accelerating multi-core processor simulation , 2012, FPGA '12.

[3]  Anna Slobodová,et al.  Replacing Testing with Formal Verification in Intel CoreTM i7 Processor Execution Engine Validation , 2009, CAV.

[4]  Tianlun Liu,et al.  OCP2XI Bridge: An OCP to AXI Protocol Bridge , 2014, ARC.

[5]  Wayne Luk,et al.  An Analytical Model Relating FPGA Architecture to Logic Density and Depth , 2011, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[6]  Brent E. Nelson,et al.  Using Design-Level Scan to Improve FPGA Design Observability and Controllability for Functional Verification , 2001, FPL.

[7]  Steven J. E. Wilton,et al.  Towards simulator-like observability for FPGAs: a virtual overlay network for trace-buffers , 2013, FPGA '13.

[8]  Nicola Nicolici,et al.  Algorithms for State Restoration and Trace-Signal Selection for Data Acquisition in Silicon Debug , 2009, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[9]  Steven J. E. Wilton,et al.  Speculative Debug Insertion for FPGAs , 2011, 2011 21st International Conference on Field Programmable Logic and Applications.

[10]  Brent E. Nelson,et al.  Instrumenting Bitstreams for Debugging FPGA Circuits , 2001, The 9th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM'01).

[11]  Steven J. E. Wilton,et al.  Post-silicon debug using programmable logic cores , 2005, Proceedings. 2005 IEEE International Conference on Field-Programmable Technology, 2005..

[12]  Steven J. E. Wilton,et al.  Limitations of incremental signal-tracing for FPGA debug , 2012, 22nd International Conference on Field Programmable Logic and Applications (FPL).

[13]  Cameron D. Patterson,et al.  Improved Abstractions and Turnaround Time for FPGA Design Validation and Debug , 2011, 2011 21st International Conference on Field Programmable Logic and Applications.

[14]  Qiang Xu,et al.  On Signal Selection for Visibility Enhancement in Trace-Based Post-Silicon Validation , 2012, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.