They seem exactly the same to me, but the wikipedia page on Superscalar CPU architectures says
While a superscalar CPU is typically also pipelined, pipelining and superscalar architecture are considered different performance enhancement techniques.
They seem exactly the same to me, but the wikipedia page on Superscalar CPU architectures says
While a superscalar CPU is typically also pipelined, pipelining and superscalar architecture are considered different performance enhancement techniques.
The Wikipedia articles for pipeline and superscalar explain these quite well.
Definition before we start: Functional Unit: Hardware device that performs a specific instruction
add/sub, Multiplier for mul, Shifter for sll/slr, Divider for div, etc.Simply put, a pipeline starts the execution of the next instruction before the first has completed - but all instructions are still executed in series and in order.
A superscalar architecture can start two or more instructions in parallel in a single core (using multiple, repeated Functional Units that each handle a specific type of instruction), and independent instructions may get executed out-of-order.
add instructions simultaneously, but you can't perform any extra multiplications, shifts, etc because you're missing the necessary hardware.Extra Note: If you're aware of Tomasulo's algorithm, note that the Issue stage is different than the Execution (and WriteBack) stage; above mentions specifically the Execution stage, not the entirety of Issue+Execution+WriteBack stages.