are deployed from the simplest to the most complex of applications today, thanks to their re-configurability and economic viability for low and medium volume designs. Debug
of FPGA based designs is different from ASIC based designs since a large number of "internal signals" of FPGAs are not accessible for debug.
FPGA designers can follow three different approaches for taking internal trace measurements depending on the complexity of the system. The first approach involves inserting a core into the FPGA design and using internal FPGA memory for trace storage and trace capture via JTAG. The second requires routing of internal signals to debug pins and using a logic analyser or mixed signal oscilloscope to capture traces. The third is FPGA dynamic probing by inserting JTAG controllable special multiplexer cores in FPGA design (figure). This article discusses the benefits and drawbacks of these methods to guide you in the selection of an approach for debugging and validating FPGA designs.
View the PDF document for more information.