today's lecture: pipelining
previously we've learned how microprocessors work.
modern microprocessors are pipelined
note:
- we always have a fetch cycle
- we always have at least one execute cycle
without pipelining, different parts of the CPU are accessed during
each of these, e.g. during the fetch, the ALU is not in use:
instruction fetch
decode (sets up input registers)
memory access
register write (writeback output)
we can increase the utilization of silicon by overlapping some instructions
with pipelining.