Yeah, there's probably a good article or two in that.
Cliff notes:
It's basically an extension of the Dual CPU setup mentioned in http://www.gtoal.com/sbt/
In that article, Graham Toal discusses a hack where you can bootstrap a new emulator core from an existing one by making a custom emulator that drives both cores at the same time.
After each clock tick, you check the states of both processors for divergence and halt with the diff if there is one.