• Single-threaded scalar: This is the simple pipeline found in traditional RISC
and CISC machines, with no multithreading.
• Interleaved multithreaded scalar: This is the easiest multithreading approach
to implement. By switching from one thread to another at each clock cycle, the
pipeline stages can be kept fully occupied, or close to fully occupied. The
hardware must be capable of switching from one thread context to another
between cycles.