OpenOCD provides on-chip programming and debugging support with a\\ layered architecture of JTAG interface and TAP support including:\\ \\ - (X)SVF playback to facilitate automated boundary scan and FPGA/CPLD\\ programming; \\ - debug target support (e.g. ARM, MIPS): single-stepping,\\ breakpoints/watchpoints, gprof profiling, etc;\\ - flash chip drivers (e.g. CFI, NAND, internal flash);\\ - embedded TCL interpreter for easy scripting.\\ \\ Several network interfaces are available for interacting with OpenOCD:\\ telnet, TCL, and GDB. The GDB server enables OpenOCD to function as a\\ "remote target" for source-level debugging of embedded systems using\\ the GNU GDB program (and the others who talk GDB protocol, e.g. IDA\\ Pro). \\ \\