Instruction Set Simulator

An instruction set simulator (ISS) is a simulation model, usually coded in a high-level programming language, which mimics the behavior of a mainframe or microprocessor by "reading" instructions and maintaining internal variables which represent the processor's registers.

Instruction simulation is a methodology employed for one of several possible reasons:

  • To simulate the machine code of another hardware device or entire computer for upward compatibility -- a full system simulator typically includes an instruction set simulator.
For example, the IBM 1401 was simulated on the later IBM/360 through use of microcode emulation.
  • To monitor and execute the machine code instructions (but treated as an input stream) on the same hardware for test and debugging purposes, e.g. with memory protection (which protects against accidental or deliberate Buffer overflow).
  • To improve the speed performance -- compared to a slower cycle-accurate simulator -- of simulations involving a processor core where the processor itself is not one of the elements being verified; in Hardware description language design using verilog where simulation with tools like ISS can be run faster by means of "PLI" (not to be confused with PL/1, which is a programming language).

Read more about Instruction Set Simulator:  Implementation, Criticism, Example

Famous quotes containing the words instruction and/or set:

    There is in general good reason to suppose that in several respects the gods could all benefit from instruction by us human beings. We humans are—more humane.
    Friedrich Nietzsche (1844–1900)

    Racism is when you have laws set up, systematically put in a way to keep people from advancing, to stop the advancement of a people. Black people have never had the power to enforce racism, and so this is something that white America is going to have to work out themselves. If they decide they want to stop it, curtail it, or to do the right thing ... then it will be done, but not until then.
    Spike Lee (b. 1956)