To add to Cliffords answer, there are some pictures here:
http://www.fpga4fun.com/JTAG2.html
The tap controller state machine is something you will see published ad nauseum. It is really the key to JTAG. As Clifford said you access on chip debug registers. The tap controller state machine is generic to all JTAG supported devices, but the address, length, etc of the registers you can get to through JTAG. And the sequence of things you have to read or write in order to do something useful varies widely from vendor to vendor. Some ARM Technical Reference Manuals (for various cores) for example have a Debug TAP controller chapter, with this picture and with the gory details on the procedure for reading and writing a register or memory or halting the processor, etc.