looks similar to the gdb-stub.
You know, EVERYTHING is going to "look like" gdb-stub, because gdb-stub is a fine example of how to get the information needed for debugging out of a chip. You can either do that in a software stub (exactly like gdb-stub), or you can implement some other communications mechanism to get similar data out of your chip and onto a host system (Like ARVAICE does for AVRs via various Atmel Debuggers, or mspdebug does for msp430 chips, or openOCD does for ARM's debug implementation.)
That assumes that you've implemented SOME sort of debugging capability on your FPGA design. Always a good idea, but not at all trivial!
Alternately, you can go back in time and look at some of the "debug monitors" and techniques used on ancient chips like the z80 (based on breakpoint and singlestep interrupts, and HW things like stopping the clock or freezing the instruction bus.) (actually, I sort-of miss singlestep interrupts...)