FPGA emulation - using a multitude of look-up tables and other basic logic elements embedded in a programmable integrated circuit to implement high-level logic algorithms.
* parallel by nature, real-time processing of input & output
* compact, most bus connections are internal
* recompilation needed for use on a different host platform
* host platform can be expensive
Just a couple clarifications there:
it's not real-time processing of inputs & outputs, it's real-time propogation. There's no "processing" going on.
You don't recompile, you resynthesize to another FPGA architecture, or to another "size" of the "same architecture".
I'm not sure about compactness. The way an FPGA is made to be generic, and (re)configurable, makes it kindof big compared to the ASIC equivalent die space for the given user logic circuit. I'm not sure what you're comparing with.