The basic execution cycle consists of three steps:
|
To prepare for executing the next instruction, we must also increment the program counter so that it points at the next instruction, 4 bytes later. The figure shows a portion of the datapath that fetches instructions and increments the PC to obtain the address of the next sequential instruction. |
The above architecture can be improved after noticing the least significant 2 bits of the PC are always “00” since it is a multiple of 4. So instead of adding 4 to the PC, the improved datapath can simply increment upper 30 bits of PC by 1. |