Some terminology:
- Simulation is recreating an environment in enough detail
that desired effects of a ``real'' system can be observed.
- Instruction-Set Simulation is simulating a processor at the
instruction-set level.
Instruction-set simulation is simulation that is detailed enough
to run executable programs intended for the machine being
simulated.
It is possible to do both a more-detailed simulation,
for example timing-accurate or RTL (register transfer level)
simulation are even more detailed, and bus architecture or cluster
simulation are less detailed.
- Emulation is simulation that uses special hardware
assistance
[RFD 72],
[Tucker 65],
[Wilkes 69].
- The target machine is the one being simulated;
the host machine is the one where the simulation runs.
This terminology parallels retargetable compiler terminology.
However, there is no standard terminology where the simulation
framework is produced on yet a third platform.
That is, a target simulator which runs on special
host hardware often has the simulation software
compiled on a general-purpose machine.
Some have suggested ``generation host'' or ``ghost''
for the machine where the software is created,
that suggests the place where the simulator runs is the
``runtime host'' or ``rhost'' (pronounced "roast").
See also the Glossary.
From instruction-set simulation and tracing