Debug methods for hybrid CPU/FPGA systems

The combining of one or more CPU's and an FPGA fabric on the same die is growing in popularity. Such programmable system-on-chip (PSOC) systems promise performance and development time advantages over conventional technology. In a PSOC design, design errors may occur in many different places - the design of the CPU, the embedded software, the FPGA-based parts of the design, or the interfaces between these various parts. This paper presents a flexible tool that allows the user to dynamically adapt the CAD tool's behavior to the level of detail needed to track down design errors in PSOC designs. It provides for the creation of and coexistence of software source debuggers and gate level debug tools, all incorporated into the same debugging environment. A prototype PSOC debugging system based on a derivative of the JHDL CAD tool is presented which illustrates the range of debug support in both simulation and hardware execution modes that can be provided for PSOC debug. Extensions to the tool to support a wider range of embedded processors and GNU compiler tools are discussed along with conclusions and future work.

[1]  Paul S. Graham,et al.  Logical hardware debuggers for fpga-based systems , 2001 .

[2]  Christopher W. Fraser,et al.  A Retargetable C Compiler: Design and Implementation , 1995 .

[3]  Russell Klein Executing an RTOS on Simulated Hardware using Co-verification , 2000 .

[4]  Michael J. Wirthlin,et al.  IMPROVING DESIGN OBSERVABILITY AND CONTROLLABILITY FOR FUNCTIONAL VERIFICATION OF FPGA-BASED CIRCUITS USING DESIGN-LEVEL SCAN TECHNIQUES by , 2001 .

[5]  Brent Nelson,et al.  Designing and Debugging Custom Computing Applications , 2000, IEEE Des. Test Comput..

[6]  Brad L. Hutchings,et al.  JHDL-an HDL for reconfigurable systems , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[7]  Karl S. Hemmert,et al.  A CAD suite for high-performance FPGA design , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[8]  Heinrich Meyr,et al.  A framework for fast hardware-software co-simulation , 2001, Proceedings Design, Automation and Test in Europe. Conference and Exhibition 2001.

[9]  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).

[10]  Greg Ward,et al.  Accelerating concurrent hardware design with behavioural modelling and system simulation , 1995, DAC '95.

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