next up previous contents
Next: Completion Up: RSIM_EVENT and the Out-of-order Previous: Instruction issue

Instruction execution

Source files: src/Processor/funcs.cc, src/Processor/branchresolve.cc

The actual execution of instructions at their functional units is simulated through the functions in the file src/Processor/funcs.cc. These functions use the source register values previously set in the SendToFU function and fill in the destination register values of the instance structure correspondingly.

Two instruction classes are significant with regard to their execution: branches and memory instructions. For each branch instruction executed at the functional units, the branch-prediction buffer state is updated appropriately to indicate the actual result of the branch. For memory instructions, the GetMap function is used to map between the RSIM address of the reference to the corresponding address in the simulator's UNIX address space.

Some instructions are not currently supported in RSIM. These are tcc, flush, flushw, and tagged addition and subtraction instructions. These are considered illegal instructions and see the corresponding exception.



Vijay Sadananda Pai
Thu Aug 7 14:18:56 CDT 1997