Computer architectureLesson 3 of 4 in the course Pipelining and parallelism

Superscalar Execution: Instruction-Level Parallelism, Limits, and Alternatives

5 flashcards · 5 quiz questions · 5 match pairs · 5 fill-in sentences · English

Lesson progress
0 / 5

Your progress is kept in this browser only.Sign up to save it

Summary

This lesson introduces superscalar processors and explains how they improve instruction throughput by executing multiple instructions at once within a single CPU.

A scalar processor can execute at most one instruction per clock cycle. A superscalar processor, also called a multiple-issue processor, can issue or begin executing more than one instruction during a clock cycle. It does this by dispatching instructions to multiple execution units within a single CPU.

All flashcards

What is a superscalar processor?
A CPU that can issue or begin executing multiple instructions in a clock cycle by dispatching them to multiple execution units within the same processor.
What is instruction-level parallelism?
Instruction-level parallelism (ILP) is the processing of independent instructions from an instruction stream at the same time.
What does the dispatcher do?
It examines instructions, identifies which may run in parallel, and sends them to suitable execution units.
How are superscalar execution and pipelining different?
Superscalar execution uses multiple execution units to process instructions in parallel. Pipelining overlaps different stages of multiple instructions, often within the same execution unit.
What is an execution unit?
An execution unit is a processing resource inside a CPU, such as an ALU or FPU. It is not itself a separate processor or core.

Quiz questions

  1. Which statement accurately describes the CDC 6600's relation to superscalar execution?Answer: It used multiple functional units simultaneously but did not issue multiple instructions per cycle.
  2. Which processor was the first superscalar x86 processor?Answer: The P5 Pentium.
  3. In a VLIW design, where is much of the work of identifying parallel operations performed?Answer: By the compiler, which groups operations for parallel execution.
  4. How does simultaneous multithreading (SMT) help use processor resources?Answer: It allows instructions from multiple threads to use a processor's resources.
  5. What does vector processing do?Answer: It applies one instruction to multiple data items at once.

Based on the Wikipedia article Superscalar processor, licensed CC BY-SA 4.0. Adapted into a summary, flashcards and quizzes.

All Computer architecture lessons