Ahmed Faraz 1Fall 2008ELEC6200-001. Definition and Characteristics Superscalar processing is the...

9
Ahmed Faraz 1 Fall 2008 ELEC6200-001

Transcript of Ahmed Faraz 1Fall 2008ELEC6200-001. Definition and Characteristics Superscalar processing is the...

Page 1: Ahmed Faraz 1Fall 2008ELEC6200-001. Definition and Characteristics Superscalar processing is the ability to initiate multiple instructions during the.

Ahmed Faraz

1Fall 2008 ELEC6200-001

Page 2: Ahmed Faraz 1Fall 2008ELEC6200-001. Definition and Characteristics Superscalar processing is the ability to initiate multiple instructions during the.

Definition and CharacteristicsSuperscalar processing is the ability to

initiate multiple instructions during the same clock cycle.

A typical Superscalar processor fetches and decodes the incoming instruction stream several instructions at a time.

Superscalar architecture exploit the potential of ILP(Instruction Level Parallelism).

2Fall 2008 ELEC6200-001

Page 3: Ahmed Faraz 1Fall 2008ELEC6200-001. Definition and Characteristics Superscalar processing is the ability to initiate multiple instructions during the.

Fetching and dispatching two instructions per cycle

3Fall 2008 ELEC6200-001

Page 4: Ahmed Faraz 1Fall 2008ELEC6200-001. Definition and Characteristics Superscalar processing is the ability to initiate multiple instructions during the.

Uninterrupted stream of instructionsThe outcomes of conditional branch

instructions are usually predicted in advance to ensure uninterrupted stream of instructions

Instructions are initiated for execution in parallel based on the availability of operand data, rather than their original program sequence. This is referred to as dynamic instruction scheduling.

Upon completion instruction results are resequenced in the original order.

4Fall 2008 ELEC6200-001

Page 5: Ahmed Faraz 1Fall 2008ELEC6200-001. Definition and Characteristics Superscalar processing is the ability to initiate multiple instructions during the.

Superscalar Execution Example

5

- With Register Renaming for WAR and WAW dependencies.

Fall 2008 ELEC6200-001

Page 6: Ahmed Faraz 1Fall 2008ELEC6200-001. Definition and Characteristics Superscalar processing is the ability to initiate multiple instructions during the.

. Register Renaming Example

6

WAR dependency exist between LD r7,(r3) and SUB r3, r12,r11 instructions

With Register Renaming, the first write to r3 maps to hw3,while the second writemaps to hw20.This converts four instruction dependency chain into 2 two instructions chains, which can then be executed in parallel if the processor allows out of order execution.

Fall 2008 ELEC6200-001

Page 7: Ahmed Faraz 1Fall 2008ELEC6200-001. Definition and Characteristics Superscalar processing is the ability to initiate multiple instructions during the.

Hardware Organization of a superscalar processor

7Fall 2008 ELEC6200-001

Page 8: Ahmed Faraz 1Fall 2008ELEC6200-001. Definition and Characteristics Superscalar processing is the ability to initiate multiple instructions during the.

CONCLUSIONIt thereby allows faster CPU throughput than

would otherwise be possible at the same clock rate.

All general-purpose CPUs developed since about 1998 are superscalar.

The major problem of executing multiple instructions in a scalar program is the handling of data dependencies. If data dependencies are not effectively handled, it is difficult to achieve an execution rate of more than one instruction per clock cycle.

8Fall 2008 ELEC6200-001

Page 9: Ahmed Faraz 1Fall 2008ELEC6200-001. Definition and Characteristics Superscalar processing is the ability to initiate multiple instructions during the.

References THE MICRO ARCHITECTURE OF SUPERSCALAR PROCESSORS BY

• JAMES E. SMITH, MEMBER, IEEE, AND GURINDAR S. SOHI, SENIOR MEMBER, IEEE

http://en.wikipedia.org/wiki/Superscalar http://www.seas.gwu.edu/~bhagiweb/cs211/lectures/superscalar.pdf LIMITATION OF SUPERSCALAR MICROPROCESSOR

PERFORMANCE• THANG TRAN ,ADVANCED MICRO DEVICES, INC. AUSTIN, TEXAS 78741 AND CHUAN-LIN WU,DEPARTMENT

OF ELECTRICAL AND COMPUTER ENGINEERING

9Fall 2008 ELEC6200-001