What is a hardware breakpoint?

A hardware breakpoint watch an internal bus or the program counter, and if it matches a certain condition, it stops the processor, or do whatever the hardware implements for that condition.